Using latest version of HSL (2024.05.15) breaks setup.sh script

I followed the instructions in the quad-sdk wiki, using the devel branch, and using the most recent version of Coin-HSL (2024.05.15).
However, doing this leads to a ThirdParty HSL build error in the setup script, which later leads to an NPMC solving fail when running the simulator.
I was able to solve it by installing an earlier version of CoinHSL (2022.11.09).

Hi @DanielChaseButterfield,
In the coming weeks I'll review the setup scripts and make sure they reflect the updates to CoinHSL. Thanks for bringing this to our attention!
Best,
David Ologan

I was curious as to whether this issue was related to ThirdParty-HSL itself, and it looks like it might be as their code also fails to build HSL on its own with the newest version. Therefore, this issue might be resolved when they update their code.
Here's the corresponding issue on ThirdParty-HSL for reference (https://github.com/coin-or-tools/ThirdParty-HSL/issues/24).


Avoid nil Allocator in controlapi

At the point at which the controlapi server is created the allocator has not yet been created, and hence is nil.
Since CNM is currently the only actual choice do as with PredefinedNetworks and hardcode the use of the CNM backend, this will be reworked once there is a second choice.
Fixes #2230. Add a call to NetworkCreate in TestManager and a test to controlapi specifically to trigger this code path. The latter tests controlapi in isolation, while the former would catch e.g. a race or initialisation order issue in a manager.
Also, in controlapi tests, change a testnet2 into a 3 in TestRemoveNetwork to avoid (harmless) duplication.
Signed-off-by: Ian Campbell<EMAIL_ADDRESS>Also, only call IsBuiltInNetworkDriver for Network plugin type.
Replaces #2231.

LGTM


Statamic

https://statamic.com/vs/wordpress

Hey @MavropaliasG   . I want to add technology but can't find good examples for that. Could you send some links where this technology is used

Hey @MavropaliasG . I want to add technology but can't find good examples for that. Could you send some links where this technology is used

I am not affiliated with them, I just stumbled upon this CMS. Here's some examples https://builtwithstatamic.com/

Added, thanks!


Jump to def on references of a given symbol whose def we are in doesn't jump you to def

From @uforic on October 17, 2016 1:3

VSCode Version: Version 1.6.1 (1.6.1)
OS Version: OSX 10.11.6 (15G31)

Steps to Reproduce:

Create a file called "foo.js" with this code inside it:

function foo() {
  foo();
}

Right click on foo(), and select "Go To Definition"

The editor's cursor is not moved to the line "function foo()," but instead remains on the line with foo() . If the foo() call were in another function called bar, it would be.

Some digging into the internals reveals that this is because the definition range for foo contains the line we are currently on, and in this case the cursor is left as is and not moved to function foo()

Why is this a bug, and not desired behavior? Imagine foo had 1000 lines, and we were looking at a call to foo on line 999. The expected behavior here seems like it would be to jump to the first line of the foo definition, not to have a no-op (current behavior).

gif: https://cl.ly/0c3s2d0d3K0b
Copied from original issue: Microsoft/vscode#13837

@uforic thank you for opening this issue. I hear you and see the merit in what you propose. This behavior is defined in the JavaScript language service. I am going to migrate the issue to the JavaScript language service repo to get their feedback. We should consider your approach.

looks like a duplicate of https://github.com/Microsoft/TypeScript/issues/11657. @waderyan https://github.com/Microsoft/TypeScript/issues/11657 seems to be caused by a VSCode issue. can you take a look at porting that one back?

Yes will do.


Reusing existing connection

Hello,
first of all, I would like to thank you for your work writing this module I was looking for something like connect-mongo. It is not exactly what I was expected, but it does the trick ;) So, thank you again.
I saw one thing that was missing and that I have found really good in connect-mongo: the fact that you can do the same thing by reusing an existing connection instead of passing over & over the database string.
In a real world app, you might have already instantiated the db by the time you start writing sessions.
app.use(session({
    store: new CouchbaseStore({ db: dbInstance })
}));

Your default implementation will still work, this is just another feature that will prevent repetition.

Hi. Thanks for the PR.
The issue you are describing, I don't believe that occurs. This method is
only called once, on app startup. As such, there will only be one DB
instance / bucket connection instance created on app startup.
Have you done some debugging or logging to determine if this is otherwise?
Thanks
Chris
On Monday, May 9, 2016, Martin-Luther Etouman<EMAIL_ADDRESS>wrote:

Hello,
first of all, I would like to thank you for your work writing this module
I was looking for something like connect-mongo. It is not exactly what I
was expected, but it does the trick ;) So, thank you again.
I saw one thing that was missing and that I have found really good in
connect-mongo: the fact that you can do the same thing by reusing an
existing connection instead of passing over & over the database string.
In a real world app, you might have already instantiated the db by the
time you start writing sessions.
app.use(session({
store: new CouchbaseStore({ db: dbInstance })
}));
Your default implementation will still work, this is just another feature
that will prevent repetition.
You can view, comment on, or merge this pull request online at:
https://github.com/christophermina/connect-couchbase/pull/10
Commit Summary

reusing existing connection

File Changes

M lib/connect-couchbase.js
https://github.com/christophermina/connect-couchbase/pull/10/files#diff-0
(29)

Patch Links:

https://github.com/christophermina/connect-couchbase/pull/10.patch
https://github.com/christophermina/connect-couchbase/pull/10.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/christophermina/connect-couchbase/pull/10

--
Christopher Mina
Live Healthy. Work Hard. Be Kind. Gain Success.

Of course, the session middleware is only called once, but you can connect to your database earlier, and from another script: why not reuse the existing instance instead trying to reconnect using the same database string ? To answer your question, yes, new Couchbase(...) is called earlier in my code already, and when I am using a single bucket for my app & my sessions, it does make sense to reuse an existing connection in this exact case.
Also, I don't know about you, but depending on the project & the needs, you might have to isolate the sessions from the application datas: let's say you want to backup your database without session because you think it is useless to you. You will have more than one bucket connections in this case for the same app, but this was not my point.
Regards,
Martin-Luther


Reduce noise from inner host in AppHost console logs

From David's logs:
warn: Microsoft.AspNetCore.Server.Kestrel[0]
      Overriding address(es) '
http://localhost:15085'.
Binding to endpoints defined via IConfiguration and/or UseKestrel() instead.
info: Microsoft.Hosting.Lifetime[14]
      Now listening on:
http://<IP_ADDRESS>:62049/
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Development
info: Microsoft.Hosting.Lifetime[0]
      Content root path: C:\Users\davifowl\source\repos\AppHost2\AppHost2
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Development
info: Microsoft.Hosting.Lifetime[0]
      Content root path: C:\Users\davifowl\source\repos\AppHost2\AppHost2

The kestrel warning shouldn't be here and we should only have content root once.

... we also need to clearly print out the dashboard URL and the OTLP URL.

This also breaks dotnet watch. Running it on the apphost launches the resource server URL 😄


Make font size consistent across panes

Currently the font size is different for each pane.

I checked CodePen and they're using 15 px for all of their editors. JSBin is using 14px. I think 15 px is a good tradeoff between readability and compactness. So we should make all non-header text 15px.

@QuincyLarson I agree that 15px if a good size. If you allow, i'd like to do this.

@prateekgoel OK - great! I think you were also working on the "help" button for production, right? That is a higher priority.

@QuincyLarson Thanks. Yes, I'm working on the "help" button for production and it's at the top on my list.

Can i work on this issue ?
i am a first timer

@AbdelghaniTassi Sure - I think most of what will need to be changed will be in the main.css file. You may be able to figure out what classes the different text elements are using by inspecting them in your browser.

@AbdelghaniTassi As @QuincyLarson mentioned, you work on this then. All the best.

@QuincyLarson @prateekgoel  Ok thank you i'll get started on this.

@AbdelghaniTassi Did you get a chance to work on this?

May I contribute?

@prateekgoel i was busy lately i looked in the code and i identified the css classes that should be modified
i will finish it this weekend

@AbdelghaniTassi Awesome - thanks for the update.
@SavSE We would love your help with some of these other help-wanted issues here: https://github.com/FreeCodeCamp/freecodecamp/issues?q=is%3Aissue+is%3Aopen+label%3A"help+wanted"

15px font size should be applied to tasks desriptions also ?
tasks description font size is by default equal to 1.5nomal text size so i don't know if that should also have the same font size as the other panes
below the difference between a 15px task description and 151.5

@AbdelghaniTassi Excellent question. My inclination is to leave those descriptions the size that they are currently (we could specify a specific font size instead of using the 1.5x multiplier). What do you think about the current text size?

@QuincyLarson I think that the current text size is ok it's big and catchy for the small descriptions.
and as you said maybe we should specify a fixed size for the descriptions later so they don"t get bigger or smaller when we change the text size of other panes

@AbdelghaniTassi OK - we can leave the "slide" style challenge text the current size, but I think we should change it for all the other challenge views.
Regarding your suggestion of fixing the size of text, I'm not sure if I correctly understand what you're proposing. We still want for people who have visual impairments or bad eyesight to be able to make text larger, right?

@QuincyLarson Of course will always be able to adjust text in the browser. what i meant by fixed text size is removing the 1.5 multiplier (maybe later).
I set text size to 15px, now it looks consistent.

@AbdelghaniTassi Great Work!


feat(asset): return id of asset for iOS and Android

Thanks for submitting a PR! Please read these instructions carefully:

[x] Explain the motivation for making this change.
[x] Provide a test plan demonstrating that the code is solid.
[x] Match the code formatting of the rest of the codebase.
[x] Target the master branch, NOT a "stable" branch.

Motivation (required)
ID can be used to detect if the user has selected the image or video again, useful when app supports multiple images or videos to be uploaded
Test Plan (required)
Android:

iOS:

:tada: This PR is included in version 4.6.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

@Johan-dutoit @lukebrandonfarrell thanks both! Will be able to upgrade now to the latest library version 😎

@Johan-dutoit @lukebrandonfarrell thanks both! Will be able to upgrade now to the latest library version 😎

Thanks for this, but I'm running 4.6.0, and I don't get an id back. Might there be anything I missed? I'm using launchImageLibrary data. Maybe because I'm on simulator?
I get
{
   "fileName":"DE029C1F-51F5-48D7-9129-3F951FD3A515.jpg",
   "fileSize":845465,
   "height":667,
   "type":"image/jpg",
   "uri":"file:///Users/seanclements/Library/Developer/CoreSimulator/Devices/E50F3981-2254-427A-950D-3022C5583F08/data/Containers/Data/Application/D6CC86C7-EC03-485C-A9B8-DDD321145FB8/tmp/DE029C1F-51F5-48D7-9129-3F951FD3A515.jpg",
   "width":1000
}

@Seanmclem you need to pass the includeExtra flag


fix: social image url using gatsby image

Did the minimal changes to get this to work, hope it's helpful.

Hahaha its okay, thank you for the help


fix: Nomination message now checks historic and new style nominations

Previously nomination messages had role pings in them, now they don't as we moved them into a thread.
Due to this, we need to detect both styles of message in the interim of historic nominations existing.
A 'proper' fix for this is to store the nomination message IDs when we post them against the
nomination object in the site api. We are planing to work on this soon, this commit is a
short term fix.

Ran into a bug where it would delete all messages in the channel under some circumstances...investigating a fix

Ok, false alarm. The issue was caused due to me copying the text from another nomination to test, rather than using post_review or get_review. Due to this, the message contained a bunch of spaces that caused the regex to fail. This would also happen with the current system, so the proper fix is to upgrade to storing the message IDs, rather than use regex. This will do for now though.


[ZEPPELIN-4568] Fix can not update output when the data is empty

What is this PR for?
Fix can not update output when the data is empty
What type of PR is it?
[Bug Fix]
What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-4568
How should this be tested?
Try the following code:
import sys
import time
from IPython.display import display, clear_output
for i in range(10):
    time.sleep(0.25)
    clear_output(wait=True)
    print(i)
    sys.stdout.flush()

Should be updated instead of append the output
Screenshots (if appropriate)

Questions:

Does the licenses files need update? No
Is there breaking changes for older versions? No
Does this needs documentation? No

Thanks @hsuanxyz. LGTM

Merge to master


Add srcset support to the logo image for topical events

Draft for this https://trello.com/c/uW5kvqga/1961-using-srcset-functionality-to-make-images-less-blurry-on-govuk to demonstrate the concept
⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠

[ ] This application is owned by the publishing platform team. Please let us know in #govuk-publishing-platform when you raise any PRs.

Hey interesting stuff here @KludgeKML, I've been talking about this with Kuba about this in the lead-up to this work.
An early bit of feedback is that I think it's likely overly prescriptive that the content item is tailored towards the srcset attribute. I imagine it'll be more friendly to use if we have an array of images each with URL and dimensions. Then we could potentially replace concepts like "high_resolution_url" with just plucking the item with greatest dimensions from the list.
The other thing, which harks back to my chats with Kuba, is that to experiment with fixing this for the coronation page we don't need to have this data flow through the full stack. All the filenames are predictable so we can prove the srcset is a good approach without needing to change the rest of the stack. As we already have a custom hack for the coronation (bunting) it didn't seem a net increase in tech debt and would be faster to get a public version (and would likely inform which of the file sizes we'd want to use in srcset)

Yeah, it should probably be providing the image sizes/urls in a more generic array that doesn't directly reference srcset.
Given that this is on publishing's radar to do properly and we already have hacks in place for the coronation logo, I'll use the predictable image sizes in the frontend to simulate the data coming through: https://github.com/alphagov/collections/pull/3237
Closing this PR.

Thanks @KludgeKML

Given that this is on publishing's radar to do properly and we already have hacks in place for the coronation logo, I'll use the predictable image sizes in the frontend to simulate the data coming through: alphagov/collections#3237

Just to add some clarity here, this isn't currently on publishing's radar to do properly. I think once we've got a good proof of concept for Topical Events we'll want to get it through the stack properly and I'm expecting this to be initiated by your team (as it's not on a backlog anywhere). Happy to chat over Slack if this isn't clear.


Compatibility with .NET 4.6 on Unity 2017?

I'm getting reference errors with .NET 4.6 on Unity 2017:

ASsets/UnityGLTF/Scripts/UniformMaps/MetalRoughMap.cs(3,31): error CS0012: The type 'System.Enum' is defined in an assembly that is not referenced. Consider adding a reference to assembly 'System.Runtime, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

Seems like it's looking for a lower runtime version of .NET.
Not sure how to "add a reference" to it on Unity or VS.
Could someone help me out?

When are you getting these errors? I just generated a build with .NET 4.6 on Unity 2017.2, and everything worked as expected. This is probably a local project bug.


add fog metric

Fog metric with (0, 1] bound and related example were added by https://github.com/advboxes/perceptron-benchmark/pull/2


tools/run-fbp-tests: support python 2 and 3

With a few changes and imports it seems to be working fine.
Signed-off-by: Bruno Dilly<EMAIL_ADDRESS>

@bdilly interesting, I didn't know about it.
But, what about the line 1 which refers to python3?

+1
Probably we should refer to "#!/usr/bin/env python" only?

@cmarcelo yep, this should work, I think.

@cmarcelo @anselmolsm you're right.
change done
merged


Quagga not working anymore on Galaxy S10 / Android 10 / Chrome 86.0.4240.198

Quagga seems not to suddenly no longer work on the Galaxy S10, running latest Android 10 (QP1A.190711.020) and Chrome 86.0.4240.198 (seems like this could be the likely culprit).
Quaga.init completes successfully, the video stream is displayed, but no codes can be scanned. All I see in the log is an Invalid asm.js: unexpected token error message in the console, which I know from other projects is mostly harmless.

I tried with the latest 1.2.6 release, and tried also downgrading to 1.2.5, neither of which helped.
Any advice on how to debug this?

I have Chrome 86.0.4240.185 on Android 9, and everything seems to be working fine for me.  Blaming it on Android or Chrome seems a bit crazy at first, but, we do have a confirmed problem in Android 11 with the most recent Chrome https://github.com/ericblade/quagga2/issues/266 and the person at the tail end of this https://github.com/serratus/quaggaJS/issues/161 also indicates that going back a version of Chrome fixed whatever their issue was.
I've noticed the invalid asm a lot recently, and i'm wondering if webpack is doing something that damages the asm.js section, or if it's literally been broken the entire time since the fork.  Invalid asm though will just run as regular javascript, and i'm not sure if chrome even really supports the asm feature.  so it shouldn't be the problem either.
With zero code errors showing up in your console, i'm not getting much of any ideas there.  If it's displaying the stream, I'd expect at some point, you'd get it to trigger onDetected somewhere.
My first thought to see if it's actually doing anything would be to set a breakpoint somewhere in Quagga, and see if it's doing anything at all.  I'm not sure right off where a good point to do that would be, and it does look like you've got some custom webpack or similar work going on in there that i wouldn't be able to easily advise on.
You might also try registering a onProcessed handler if you're not using one currently, and see if that's being called.  That should be called every frame.

@suzukieng please respond, i'm trying to clean up these repos :-) thanks!

Hi @ericblade. Sorry, i was too to try out your suggestions. Will do so in the next couple of days. Please leave it open, I will get back to you as soon as I can.

Hi @ericblade.
The onProcessed callback is being called, and frequently. So it looks like Quagga is processing frames. I have removed my area restriction in the init call, but that didn't do anything. I'm using only the code_128_reader with multiple set to false, code location is disabled as well. I am integrating Quagga in an Angular app, hence the webpack bundling.
Interestingly, the exact same code works just fine on a Galaxy A8, running the same version of Chrome, but on Android 9.
What is also noteworthy is that I have some code that determines if the 'torch' capability is present. This fails too on the S10, and works as intended on the A8. Specifically, the method below returns false because capabilitites.torch is falsy.

Am I for some reason running in a crippled environment? I am thinking of performing a factory reset of the device.

This leads me to think of one of my first experiences with my LG G6 -- on my G6 there are multiple cameras, one of which is a wide-angle lens, which doesn't work at all to try to locate barcodes with, because everything is fish-eyed.
Before just resetting everything, I would check to see if there are any other logical camera devices with Quagga.CameraAccess.enumerateVideoDevices and try those out to see if your results are any better?

Hi @ericblade
Your comment brought me on the right track. Indeed the S10 has two back-facing cameras, and it seems that Quagga selects the "wrong" one. If I manually add contraints deviceId/groupId to select "camera2 0, facing back", everything works as expected.

Any pointers on how to intelligently select a camera?
(by the way, have one on my, the PP donation from yesterday is for this ticket)
Kind Regards
Alex

In my app, I currently just use a drop-down selector that I have the user tell me which one works.  I suspect that intelligently selecting would be down to providing some constraints to the quagga config object (and i have a note here somewhere that we need to be able to pass constraints to the enumerateVideoDevices function if possible)..  if you can figure out what the aspect ratio is for the wide-angle that we don't want to select, we could try to eliminate that range from the aspect { min, max } parameters in constraints.  I'd like to know the answer to that one too :-D  so we could provide that as a sane default, and it would catch more error cases.
and thank you so much for the contribution.  You might have no idea how much that is appreciated right now.

Yeah, I guess the problem is that enumerateDevices (https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/enumerateDevices) does not support passing in constraints.

ugh! i hadn't even looked up if that was possible, because i thought it was.  so, i guess there's not really any obvious way to make enumerateVideoDevices do that.  So I guess you're limited to either giving the user a choice, or providing something that resembles a sane default.
So, I guess, the next question is... what's the aspect ratio of these wideangle setups?  if we can figure that one out, we can at least default the parameters better

good news re: Asm.js error, sort of: asm.js error is basically a warning.  It just runs the code as javascript since it can't interpret it properly into what it's looking for.  bad news, although i can fix the one in this code, after i fix up several of them, i end up with one that the original author wrote which is also invalid, and i don't have any idea how to fix it, and information about asm.js is pretty sparse these days.


I 15:36:26.2783 2021-06-28 22:36:26.278 [  a] 5 BlueZDeviceManager:onMediaStreamPropertyChanged:mediaStreamUuid=0000110b-0000-1000-8000-00805f9b34fb
I 15:36:26.2783 2021-06-28 22:36:26.278 [  a] 5 BlueZDeviceManager:mediaTransportStateUnchanged:action=ignoringCallback
I 15:36:26.2784 2021-06-28 22:36:26.278 [  a] 7 BlueZUtils:~DBusProxy
I 15:36:26.4198 2021-06-28 22:36:26.419 [  a] 5 BlueZDeviceManager:propertiesChangedCallback
I 15:36:26.4199 2021-06-28 22:36:26.419 [  a] 7 BlueZDeviceManager:Properties changed:objectPath=/org/bluez/hci0/dev_74_9E_F5_1A_2B_A4/player0
I 15:36:26.4200 2021-06-28 22:36:26.419 [  a] 9 BlueZDeviceManager:Details:=('org.bluez.MediaPlayer1', {'Track': <{'Title': <'Not Provided'>, 'Duration': <uint32 0>, 'Album': <''>, 'TrackNumber': <uint32 1>, 'Artist': <''>, 'NumberOfTracks': <uint32 1>, 'Genre': <''>}>}, @as [])
I 15:36:26.4882 2021-06-28 22:36:26.488 [  a] 5 BlueZDeviceManager:propertiesChangedCallback
I 15:36:26.4882 2021-06-28 22:36:26.488 [  a] 7 BlueZDeviceManager:Properties changed:objectPath=/org/bluez/hci0/dev_74_9E_F5_1A_2B_A4/player0
I 15:36:26.4882 2021-06-28 22:36:26.488 [  a] 9 BlueZDeviceManager:Details:=('org.bluez.MediaPlayer1', {'Position': <uint32 0>}, @as [])
I 15:36:26.6320 2021-06-28 22:36:26.631 [  a] 5 BlueZDeviceManager:propertiesChangedCallback
I 15:36:26.6321 2021-06-28 22:36:26.632 [  a] 7 BlueZDeviceManager:Properties changed:objectPath=/org/bluez/hci0/dev_74_9E_F5_1A_2B_A4/player0
I 15:36:26.6321 2021-06-28 22:36:26.632 [  a] 9 BlueZDeviceManager:Details:=('org.bluez.MediaPlayer1', {'Position': <uint32 0>}, @as [])

This is still an issue on v1.24 of the SDK and an unmodified BlueZ implementation stack on Ubuntu using PortAudio. Basically, if you connect an android phone it takes the ability to process the profile "00001108-0000-1000-8000-00805f9b34fb" to mean that the phone is connected to a device for Call Audio. This causes the microphone input to get attached to the phone (which is not actually streaming microphone data) and wakeword/audio input from the linux system microphones no longer function. If I go into my Bluetooth menu on the phone and unselect the "Calls" (leaving Audio) it functions as expected. I have solved this previously by implementing my own PairingAgent.cpp with a filter in authorizeService which rejects that profile. I would very much like to remove that hack going forward.


Improve performance of set_expiration

Fixes #118 and #121
Array.bsearch is in ruby 2.0.
The difference with #121 is that here we manually build the index search using plain bsearch item on the array of (item, index) pairs, and then extract the index from it.
Before:
> bundle exec ruby performance.rb
setex
21.502102999947965
set
0.09983500000089407

After:
> bundle exec ruby performance.rb
setex
7.995712999952957
set
0.08754800003953278

Test file:
require 'mock_redis'
require 'benchmark'

VALS = Array.new(10_000) do |i|
  ["some_key:#{i}", 3000 + rand(10)]
end

mr = MockRedis.new

puts 'setex', (
  Benchmark.realtime do
    VALS.each do |key, exp|
      mr.setex(key, exp, 'some value')
    end
  end
)

puts 'set', (
  Benchmark.realtime do
    VALS.each do |key, exp|
      mr.set(key, 'some value')
    end
  end
)

Thanks for the fix, @saverio-kantox.
Now that Ruby 2.2 is EOL, we'd be open to accepting a fix that uses bsearch_index if it faster. However, if the difference is negligible this will totally suffice!


Spike artifacts when zoomed out over GeoJSON datasource

When zoomed out over the attached GeoJSON data source there are spike-like artifacts everywhere.
To reproduce:

Load GeoJSON data source onto then map.
Zoom out high over the data source.

OS: Windows 10 (64-bit)
Browser: Brave Browser - Version 1.5.123 Chromium: 80.0.3987.163 (Official Build) (64-bit)
Version: 0.14

Here is the geojson.
countours.zip
Here is the style used.
style.txt

Thanks for creating the issue. Can you please also attach the style that you used for the geojson?

@ninok Updated the original

@ninok Where you see 'this.fillColor.hex' & 'this.strokeColor.hex' it is just a random hex colour for the moment.

Still cannot reproduce on Chrome 81 Ubuntu 20.04.
@HHammerite Can you try to load your file in this example: https://www.harp.gl/docs/master/examples/#geojson-viewer.html

Interesting. I can't reproduce it either on that example. Here is a screenshot of me zoomed out at a similar distance.

I do see it when zoomed in a bit more.

But when zoomed, even more, the whole layer disappears.

I think I might record a video and post it here because the experience is so inconsistent.

Here is a video I recorded https://www.youtube.com/watch?v=5E9MdB9JHjc

Removing the wontfix label, it seems to be a genuine problem. Could be related to the issue reported internally: HARP-10866

This is still a valid issue. I managed to recreate it, so will reopen.

@nzjony Awesome! Are there any initial thoughts on what could be causing this?

@harrycollin , basically we don't handle rendering MultiPolygon's correctly when styled using solid-line.
It seems it is an issue with the way we use geojson-vt to do the subdivision, we need to know if the edge added is part of the original data or whether it is synthentic.
@robertoraggi created the internal ticket and can perhaps give some more info than I can describe.

@nzjony thanks for the insight. I look forward to hearing more on this :)

@harrycollin , no worries. All going well, we plan to start fixing it in 1-2 weeks.

@harrycollin , sorry no update on our side.

No problem!


Error: Maximum length of function name

Error: Function name can not be longer than 64 characters but has 65 characters.

closed by #2

Closed by #2


Modeling of Kore

In the file theory/kore.mm, someone can read:
kore-bottom-is-pattern $a #Pattern ( \kore-bottom ph0 ) $.
kore-bottom-is-sugar $a #Notation ( \kore-bottom ph0 ) \bot $.

kore-top-is-pattern $a #Pattern ( \kore-top ph0 ) $.
kore-top-is-sugar $a #Notation ( \kore-top ph0 ) ( \inh ph0 ) $.

kore-not-is-pattern $a #Pattern ( \kore-not ph0 ph1 ) $.
kore-not-is-sugar $a #Notation ( \kore-not ph0 ph1 ) ( \and ( \not ph1 ) ( \kore-top ph0 ) ) $.

kore-and-is-pattern $a #Pattern ( \kore-and ph0 ph1 ph2 ) $.
kore-and-is-sugar $a #Notation ( \kore-and ph0 ph1 ph2 ) ( \and ph1 ph2 ) $.

kore-or-is-pattern $a #Pattern ( \kore-or ph0 ph1 ph2 ) $.
kore-or-is-sugar $a #Notation ( \kore-or ph0 ph1 ph2 ) ( \or ph1 ph2 ) $.

Why do you use ph0 to define \kore-not, but not in the case of \kore-and or kore-or?
Is it a tricky detail?
Moreover, \ceil and floor (in ML so) have only one argument, but someone can read (in the same file as previously):
kore-ceil-is-pattern $a #Pattern ( \kore-ceil ph0 ph1 ph2 ) $.
kore-ceil-is-sugar $a #Notation ( \kore-ceil ph0 ph1 ph2 ) ( \and ( \ceil ph2 ) ( \kore-top ph1 ) ) $.

kore-floor-is-pattern $a #Pattern ( \kore-floor ph0 ph1 ph2 ) $.
kore-floor-is-sugar $a #Notation ( \kore-floor ph0 ph1 ph2 ) ( \kore-not ph1 ( \kore-ceil ph0 ph1 ( \kore-not ph0 ph2 ) ) ) $.

Why in this case have 2 arguments been added and not one as for the other existing symbols in the Matching Logic?
Is it a tricky detail?
More generally, I don't understand what is the usefulness of the additional argument?

The first argument is used to denote the output sort of the pattern (which is also a pattern itself). In particular, for any kore construct, one should be able to prove some kind of typing lemma like this
ph1 in [ph0]          ph2 in [ph0]
-----------------------------------
( \kore-and ph0 ph1 ph2 ) in [ph0]

where [ph0] denotes the domain of sort ph0.
In the case of \kore-not, we couldn't use the native \not, because semantically it takes the complement with respect to the entire domain, but instead we want to take the complement with respect to only [ph0]. Thus we are taking an extra intersection with [ph0] (which is equal to \kore-top ph0)
In the case of \kore-ceil and \kore-floor, we actually need two sorts ph0 and ph1, where ph0 denotes the output sort as before, and ph1 denotes the input sort. These sorts are used to make sure that the result stays in [ph0].


fix missing client bug

fix for 'client undefined' js error while fetching more messages inside a conversation.

Thanks for finding that!


Switch URL to HTTPS for Tibbo Device Monitor version 3.3.6

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

Microsoft Reviewers: Open in CodeFlow

fails admin and non-admin with 1603 error

fails admin and non-admin with 1603 error


Change for asr_datamodule.py

As a response for #227 , I do some changes for asr_datamodule.py with dan's advice.

I think this PR is ready to merge. And the relative modify for lhotse has been merged. (https://github.com/lhotse-speech/lhotse/pull/604 and https://github.com/lhotse-speech/lhotse/pull/598)


[UNDERTOW-2072] DefaultByteBufferPool.getBuffer() may return null

https://issues.redhat.com/browse/UNDERTOW-2072

Hi @baranowb, are you sure this change actually removes the race? If I understand Java Memory Model correctly, referenceCountUpdate.compareAndSet(0,1) will act as a publish and getBuffers reading 0 will act as acquire. This only provides ordering between actions before publish and actions after acquire. The subsequent write to buffer after publish would still race with the read of buffer, before acquire.
See for example the section JMM Interpretation: Roach Motel on https://shipilev.net/blog/2014/jmm-pragmatics/, and the subsequent quiz examples.

Hi @baranowb, are you sure this change actually removes the race? If I understand Java Memory Model correctly, referenceCountUpdate.compareAndSet(0,1) will act as a publish and getBuffers reading 0 will act as acquire. This only provides ordering between actions before publish and actions after acquire. The subsequent write to buffer after publish would still race with the read of buffer, before acquire.
See for example the section JMM Interpretation: Roach Motel on https://shipilev.net/blog/2014/jmm-pragmatics/, and the subsequent quiz examples.

Oh, Im fairly sure it does not, the problem here is that this part of code wasnt synced for reason and Im sort of forced to accept some trade off. Though Im not 100% happy with even this PR, I will change it a bit.

@baranowb I need to figure out why my proposed commit brokes the tests. I'll update this PR as soon as I'm done with my investigation.

this PR still breaks CI and it will require further investigation

The test failure is:
Running io.undertow.websockets.extensions.WebSocketExtensionBasicTestCase
[ERROR] Tests run: 3, Failures: 2, Errors: 0, Skipped: 1, Time elapsed: 310.17 s <<< FAILURE! - in io.undertow.websockets.extensions.WebSocketExtensionBasicTestCase
[ERROR] testExtensionsHeaders(io.undertow.websockets.extensions.WebSocketExtensionBasicTestCase)  Time elapsed: 10.094 s  <<< FAILURE!
I canceled the workflow because it seems this causes the CI to hang (or it was just a bad coincidence...)

I need to see if that fixes the PR so it can be merged. However, it seems that github actions is down, the checks are queued forever. Because I'll be away on PTO until May 2nd, I'm passing the ball to you, @ropalka ! If it passes, it is ready to be merged, unless there are other issues that need to be fixed in the PR. In that case, if someone wants to give it a try, feel free to do so. See you all on the way back!


Can't go private... :'(

Hi, I'm trying to run lounge in private mode but this is what I'm getting.
➜  ~ lounge --version
2.0.1
➜  ~ lounge start --private
2016-09-29 10:01:35 [INFO] The Lounge v2.0.1 is now running on http://*:9000/ in public mode
2016-09-29 10:01:35 [INFO] Press ctrl-c to stop

Change the private variable in the config.

Looks like our documentation is severely outdated :(

Okay the trick is to do lounge start -- --public, I'm not sure why the extra -- is required to get any params working.

Yeah, that's a npm thing. But lounge start --private should still start
as expected :/

Hello, actually it's the same for the port option, it's not taken into account either. I guess it's a general issue with how thelounge process arguments.
@xPaw trick works perfectly, but maybe opening a new issue for argument parsing would make more sense.

Duplicate of https://github.com/thelounge/lounge/issues/517.


Update Dockerfile: v24.1

new Bitcoin version

I think there is a change in the signatures, it's not verifying for me.

I think you have to use one of these signatures now:
https://github.com/bitcoin/bitcoin/blob/master/contrib/verify-commits/trusted-keys

Somehow never saw this, testing v25.0 now, just pushed to Master.


Tested with MobileNetV2 SSD-Lite model

While I have the following command:
python main_ssd.py --quantize --correction --log --bits_bias 16
It shows me the warning message:
Warning: <class 'utils.quantize.QuantNConv2d'> layer before first batch norm layer detected. The calculated value range might be off.
Warning: <class 'utils.quantize.QuantNConv2d'> layer before first batch norm layer detected. The calculated value range might be off.
...
and the mAP is always below than your result, i.e., 0.6729297
Does the warning message lead to accuracy drop?

I quantize all inputs(detection layer output) of torch.cat(the final op), and there is no BN between Conv(detection layer) and torch.cat.
Say we have a Conv called layer_a, the value range to quantize output of layer_a is "estimated" by convole the BN stats before layer_a with layer_a's weight. That's why I print the warning message.
The mAP might be different cause I tweak some of implementations in set_quant_minmax and did not completely re-run all experiments; and using fake_quant in CPU or GPU may lead to different results.
Personally I recommend to use true int8 inference engine to test the results.

I'm sorry!  I forgot that I modified the code.
The result is very close to the public data.


Issue: highlighting breaks with long object lines

What is the issue?
Whenever you have lines that contain a lot of logic, like if-statements and variables, the syntax highlighting below that logic line breaks. This problem is triggered when writing logic lines that are longer than 128 characters
Steps to reproduce
Working example
example:
 teeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeest:
    test: test
    other_test: test

nvim screenshot:

Broken example (add one more e)
example:
  teeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeest:
    test: test
    other_test: test

nvim screenshot:

What behavior is expected?
The syntax highlighting doesn't break when using lines that are longer than 128 characters
What have I already tried?

Update tree-sitter
Disable synmaxcol limit: :set synmaxcol 0
Run :syntax sync fromstart

Yeah,
I'm seeing the same on this fixture:
swagger: "2.0"
paths:
  /pet/adding-new-pets/testing-thelong-size-path-name/testing-thepath/testingthepathnameggggggggggggggggggggggggglllllllllllllla: {}

This has already been addressed in https://github.com/tree-sitter-grammars/tree-sitter-yaml/issues/6 and is waiting for a release in https://github.com/tree-sitter-grammars/tree-sitter-yaml/issues/15

Resolved in https://github.com/tree-sitter-grammars/tree-sitter-yaml/releases/tag/v0.7.0


Automated cherry pick of #1292: chore: upgrade libs to kubernetes 0.28.4 and matching go

Cherry pick of #1292 on release-1.28.
#1292: chore: upgrade libs to kubernetes 0.28.4 and matching go
For details on the cherry pick process, see the cherry pick requests page.

/cc @jklaw90  @knelasevero
Forgot to include this in the cherry-pick for 0.28.1

/lgtm

/approve


Allow HTML content in TextBodySmall

https://github.com/lonelyplanet/dotcom-profile/issues/129

Yeah good points. I also just realized that it's markdown content in the issue above, not HTML, so this wouldn't work for legacy users I don't think.

I'll hold off on this for now and see how @bpotterbaum wants to proceed.


Setting inputs to readonly

Is it possible to set inputs to readonly?
I realize I could do this with user defined properties, but it might be a nice addition to the API. :)

Hmm, I don't really like this since not all HTML form elements provide the ability to make them readonly, which would make the API a bit inconsistent. I think this is enough of an edge case that implementing this yourself with user-defined properties should suffice. If more requests for such a feature appear I may reconsider.


[HUDI-7674] Fix Hudi CLI Command "metadata validate-files" to use file listing to validate

Change Logs
[HUDI-7674] Fix Hudi CLI Command "metadata validate-files" to use file listing to validate
Impact
Bug fix for a Hudi CLI command
Risk level (write none, low medium or high below)
Low
Documentation Update
No Config change
Contributor's checklist

[ ] Read through contributor's guide
[ ] Change Logs and Impact were stated clearly
[ ] Adequate tests were added if applicable
[ ] CI passed

Makes sense, there are some test failures we need to take care.


Copy text does not update to user changes.

The copy text buttons do not copy the text correctly if a user has changed what is in the text boxes.
Instead the output is what the original text was set to on pressing the submit button.

Also, changing text prevents text from updating on next clicking submit - uncertain why.

Possible fix for incorrect copy 77d759

Fixed by removing text areas


feat: Add instrumentation config validation

During this weeks SIG I proposed adding a validation step of sorts to create a more structured interface for our instrumentation configuration.
This idea sparked from this comment chain https://github.com/open-telemetry/opentelemetry-ruby/pull/594#discussion_r568753846

Hey @mwear & @ericmustin wanted to get some feedback on this approach before I keep going with it.  I used the graphql instrumentation as an example of what the configuration options would look like.

Made a few changes based on feedback, the only thing left from my perspective would be potentially adding some common validation helpers for booleans, integers, arrays, etc...
I'm not sure where they would be best suited to exist, my first thought would be having them be in the common gem.

Hmm, those Rubocop failures are annoying. I don't think we want to encourage ignoring them everywhere, so maybe we should add those helpers now 😄. I like the symbol approach:
option :enable_job_class_span_names, default: false, validate: :boolean

@fbogsany got those two comments fixed up!


A couple of questions..

Apologies if this is the wrong place, but I had a few questions about the API.

How do I create a Date object from C code?
~How do I create and fill a (Node.JS style) buffer from C code?~ Figured this one out
Is there a way to change scope (i.e change "this" to point to child object of the global object)
~If i already have an object on the global object like [global].foo, how do i push a new nested object e.g [global].foo.bar?~ And this too
~How do I push a TypedArray? When I use duk_push_buffer_object with DUK_BUFOBJ_UINT32ARRAY and then query with instanceof, it doesn't seem to be a Uint32Array~ Sorted this one out too :)

Many thanks!

Here's a test case for the last item:
`#include <duktape.h>
#include
int main()
{
duk_context *ctx = duk_create_heap_default();
int length = 64;
duk_push_fixed_buffer(ctx, 64);
duk_push_buffer_object(ctx, -1, 0, length, DUK_BUFOBJ_UINT32ARRAY);
duk_replace(ctx, -2);

if (duk_get_type(ctx, -1) == DUK_TYPE_OBJECT)
{
    std::cout << " Confirmed object is an object" << std::endl;

    int index = -1;
    if (duk_is_buffer_data(ctx, index))
    {
        duk_get_global_string(ctx, "Uint32Array");
        if (duk_instanceof(ctx, index, -1))
        {
            std::cout << "Object is a UInt32Array" << std::endl;
        }
        else
        {
            std::cout << "Object is not a UInt32Array" << std::endl;
        }
    }
}
duk_pop(ctx);
duk_destroy_heap(ctx);
return 0;

}
`

I've got a temporary solution for #1 but I hate it..
duk_eval_string(ctx,std::string("new Date(" + str + ")").c_str());
Is there any way of doing this without using eval?

The Date issue was covered in #2293.

Re: 'this', when you are calling a function you can provide an explicit this binding when using duk_(p)call_method().

Thank you!


NETOBSERV-1131: need to allow setting multiple filters

Improve the promEncode API to allow setting multiple filters. To avoid breaking change, the existing filter API is kept and marked as deprecated.
Operator PR: https://github.com/netobserv/network-observability-operator/pull/387

I'll merge this one as it isn't user facing without https://github.com/netobserv/network-observability-operator/pull/387

pre-merge tests can be done on https://github.com/netobserv/network-observability-operator/pull/387

/approve


fix(host,host-deployer): start deployer guest with all of disks

What this PR does / why we need it:

Does this PR need to be backport to the previous release branch?:
release/3.11

/lgtm


API changes around map grids

moved MapComponent from Robust.Shared.GameObjects to Robust.Shared.Map
moved MapGridComponent from Robust.Shared.GameObjects to Robust.Shared.Map
IMapGrid -> MapGridComponent
IMapGridComponent -> MapGridComponent
Requires https://github.com/space-wizards/RobustToolbox/pull/3205.

Superceded by other PRs.


Remove zero padding for date 10, fix typo

Removing the zero padding for date 10 doesn't affect the number of lexical/unary/binary rules and ensures oracle accuracy is 100%. Not removing this results in multiple duplicate parses, for instance output parses 1 and 2 of parse_and_interpret("2015 4 10 US") are the same:
======================================================================
Parse 1: [$DATE [$DATE [$Y 2015] [$MonthDay [$M 4] [$D 10]]] [$TZ US]]
Denotation: 2015-04-10
======================================================================
Parse 2: [$DATE [$DATE [$Y 2015] [$MonthDay [$M 4] [$D 10]]] [$TZ US]]
Denotation: 2015-04-10
======================================================================
Parse 3: [$DATE [$DATE [$Y 2015] [$MonthDay [$D 4] [$M 10]]] [$TZ US]]
Denotation: 2015-10-04

@AnandDhoot Good catch, and thank you -- apologies for overlooking this until now!


HBASE-26864 SplitTableRegionProcedure calls openParentRegions() at a …

…wrong state during rollback

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  1s
Docker mode activated.

Nice find! Able to write a unit-test to cover this?

Nice find! Able to write a unit-test to cover this?

I spent quite some time trying to come up with a unit-test. It is hard to trigger some exception in SplitTableRegionProcedure's state machine. Let me try with regionReplica and a coprocessor to delay open of a replica region.

Created a unitest case. During the test, I found that there is an issue where ignoreRIT flag does not apply to replicaRegions. However, from our production log, I do not find any issue I run into with the unitest. I made sure that with the fix, the new unittest case passes and without the fix, it will fail.
@Apache9 and @joshelser, can you review the new patch? Thanks.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 58s
Docker mode activated.

I run locally the failed test TestQuotaAdmin, it passed.

Ping @joshelser and @Apache9, any comments about the new diff? Thanks.


Django 1.8 breaks on LaxOptionParser

LaxOptionParser has been removed as of django 1.8 - seems like using regular OptionParser from optparse should work fine.

See #105


[docs] Demo VirtualElementPopper crashes

[ ] I have searched for similar issues in this repository and believe that this is not a duplicate.

Steps to Reproduce

Visit https://mui.com/material-ui/react-popper/
??
demo VirtualElementPopper crashes

Your Environment

Tech
Version

MUI
v5.8.0

netlify deploy
https://62862b66c840c800080668cf--material-ui-docs.netlify.app

Browser
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36

Duplicate of #32106


Add .gitignore file

This is quite common since we don't want anyone to accidentally push vendor directory or the composer.lock file.

:+1:


cosmos config new-network fails because of missing directory

CLI tool installed with
cargo install --git https://github.com/fpco/cosmos-rs cosmos-bin --locked

adding a new network to the config fails with:
$ cosmos config new-network <CUT OUT PARAMS>
Error: Unable to write config to /home/kirill/.config/cosmos-rs/config.toml: failed to create file `/home/kirill/.config/cosmos-rs/config.toml`

Caused by:
    0: failed to create file `/home/kirill/.config/cosmos-rs/config.toml`
    1: No such file or directory (os error 2)

As a workaround I created it manually but I think it makes sense to autocreate it in the tool itself

Should be addressed with https://github.com/fpco/cosmos-rs/pull/42, can you confirm?


FossID: fix and improve handling of Scan.isArchived

Please refer to individual commit message.

@sschuberth pushed new changes because of CI checks error.


504 Gateway Timeout

When running railway up --detach --service <service_id> I'm consistently seeing the error Failed to upload code with status 504 Gateway Timeout. This is preventing me from running any form of deployments, both locally and via our CI/CD pipeline.
See the screenshot below for the error and full command.

Closing, as I'm no longer encountering this issue.


[Bug Report]: Google authentication stopped working

Describe the Bug
I don't know when it started but got a notice from a user today that they cannot log into the bookstack instance, I tested and got the following error "An error has occurred"

Local login does work.
Another bookstack instance using the same google oauth application does work, so it seems to be something specific to this instance.
My Docker compose file (removed sensitive info)
version: "2"
services:
  bookstack:
    image: linuxserver/bookstack
    container_name: bookstack
    environment:
      - TZ=America/New_York
      # container rights
      - PUID=1000
      - PGID=1000

      - SESSION_LIFETIME=1440

      # hardcoded URL for the server, required for google integration
      - APP_URL=http://bookstack.fake.com:6875

      # Google integrations
      - GOOGLE_APP_ID=<snip>
      - GOOGLE_APP_SECRET=<snip>
      - GOOGLE_SELECT_ACCOUNT=true
      - GOOGLE_AUTO_REGISTER=true
      - GOOGLE_AUTO_CONFIRM_EMAIL=true

      # DB settings
      - DB_HOST=bookstack_db
      - DB_USER=bookstack
      - DB_PASS=<snip>
      - DB_DATABASE=bookstackapp

      # Mail settings
      - MAIL_DRIVER=smtp
      - MAIL_FROM=<snip>
      - MAIL_FROM_NAME=<snip>
      - MAIL_HOST=<snip>
      - MAIL_PORT=<snip>
      - MAIL_USERNAME=<snip>
      - MAIL_PASSWORD=<snip>
      - MAIL_ENCRYPTION=tls
    volumes:
      - /srv/config/bookstack:/config
    ports:
      - 6875:80
    restart: unless-stopped
    depends_on:
      - bookstack_db
  bookstack_db:
    image: linuxserver/mariadb
    container_name: bookstack_db
    environment:
      - PUID=1000
      - PGID=1000
      - MYSQL_ROOT_PASSWORD=<snip>
      - TZ=America/New_York
      - MYSQL_DATABASE=<snip>
      - MYSQL_USER=<snip>
      - MYSQL_PASSWORD=<snip>
    volumes:
      - /srv/config/bookstack/DB:/config
    restart: unless-stopped

Steps to Reproduce

Log in using google account using a google account,

Expected Behaviour
Login should succeed
Screenshots or Additional Context
No response
Exact BookStack Version
v21.11
PHP Version
No response
Hosting Environment
Docker image linuxserver/bookstack

Update: Starting working by itself (without me doing anything).
Question is, can we figure out what it was and if it happens in the future how to resolve it?
If you feel it's not worth your time, please feel free to close this issue.

Hi @AvrumFeldman,
Upon that error screen, any errors will be logged to the log file. More detail can be found in our docs here:
https://www.bookstackapp.com/docs/admin/debugging/
I'm fairly certain that the linuxserver.io include the bookstack log file within the mounted /config volume you have so shouldn't need to hack into the container or anything to inspect log files.

The only error I found in the error log is the following

2021/12/09 12:58:21 [error] 406#406: *1 connect() failed (111: Connection refused) while connecting to upstream, client: My.Seconderyinternet.gaeway, server: _, request: "GET /login HTTP/1.1", upstream: "fastcgi://<IP_ADDRESS>:9000", host: "MyDomain.com:6875"

Only thing I can think is that this was somehow utilizing my failover internet, which is possible, but I don't understand what the application was trying to do so it's hard for me to figure out why it got a connection refused and from where.

@AvrumFeldman The provided log looks to be from a webserver log, not from BookStack.
I think that with linuxserver.io the app log, for your docker-compose above, would be at `/srv/config/bookstack/www/laravel.log.

@ssddanbrown Thanks for the pointer. So it seems it was a local network issue. DNS was failing in the container, which makes sense I was experiencing DNS issues in the morning.
For record this is the error [2021-12-09 17:55:06] production.ERROR: cURL error 6: Could not resolve host: www.googleapis.com
Thanks for your help.


Rebase master onto release

to: @chunyong-lin or @ryandeivert
cc: @airbnb/streamalert-maintainers
size: large
Background
Rebases bug fixes to master onto release branch
Testing

CI

Coverage remained the same at 95.7% when pulling 442804c0211920e92af1476081507884d1673f2f on release-rebase into 1b51ed445407fb74a7c1a190b78a9ce6ec901d8c on release-2.0.0.


getting API: s3:SetBucketEncryption Access Denied after upgrading

Before opening, please confirm:

[X] I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
v15.8.0
Amplify CLI Version
5.2.1
What operating system are you using?
Mac
Amplify Categories
storage
Amplify Commands
push
Describe the bug
I've upgrade from v4 to v5.2.1 and I am unable to push new changes.
Resource Name: amplify-website-*** (AWS::S3::Bucket)
Event Type: update
Reason: API: s3:SetBucketEncryption Access Denied
URL: https://console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/arn%3Aaws%3Acloudformation%3Aus-east-1%***

Expected behavior
for it to made the schema changes and push
Reproduction steps
amplify push --yes
GraphQL schema(s)

# Put schemas below this line

Log output

# Put your logs below this line

Additional information
No response

Hi @ShehryarKh, can you make sure s3:PutEncryptionConfiguration is added to your IAM role's policy and then try amplify push --yes?

@jhockett the IAM role i use to run amplify push has S3: full access.

I found out that the role us-east-1_xxxxxx_Full-access which I believe was auto generated and is used to make the cloudformation changes was missing.

s3:GetEncryptionConfiguration
s3:PutEncryptionConfiguration

Should have been auto updated.


Local Server Path

can I use in local server path(for example http://<IP_ADDRESS>/myfolder/) for zip create?

Haven't tried that scenario yet.


Poor performance with concatenating and saving netCDF files

🐛 Bug Report
We have mutliple netCDF files that need to be concatenated together and saved.  Typically, this is about 80 files of 5Gb each.  The load, concatenate and save takes multiple days until the job is killed (so we don't know if this is an infinite loop, or if more time would have resulted in the task completing).  Below, I've included the script to do the concatenation and save, and a script to generate sample data which is analogous to the real data we're working with.
How To Reproduce
Steps to reproduce the behaviour:

Generate sample data with this script (you may need to adjust the destination filename in line 74) - this takes ~15 minutes:

#!/usr/bin/env python
"""
Generates suitable sample data to demonstrate issue where loading multiple
files, concatenating, and saving has unexpected performance.

"""

import itertools
import os

import iris
import numpy as np

def _build_coordinate(start, stop, number_of_points, name):
    coordinate = iris.coords.DimCoord(np.linspace(start, stop, number_of_points))
    coordinate.guess_bounds()
    coordinate.units = "degrees"
    coordinate.rename(name)
    return coordinate

def generate_cubes(times=11280, longitudes=2560, latitudes=1920, x_split=8, y_split=10):
    """
    Generates cubes that tesselate the globe.

    Specifically, each individual cube has all times, but contains a longitude
    range of longitudes/x_split  (and similarly for latitude), where all of
    the cubes combined cover the range -180 to +180 degrees longitude, and
    -90 to +90 degrees latitude.

    All cubes are contiguously chunked.

    longitudes needs to be multiple of x_split; latitudes needs to be a
    multiple of y_split.  These are not checked.

    """
    tc = iris.coords.DimCoord(
        np.arange(times), units="days since epoch", standard_name="time"
    )
    delta_lon = 360.0 / longitudes
    delta_lat = 180.0 / latitudes
    xc = _build_coordinate(
        -180.0 + delta_lon / 2.0, 180.0 - delta_lon / 2.0, longitudes, "longitude"
    )
    yc = _build_coordinate(
        -90.0 + delta_lat / 2.0, 90.0 - delta_lat / 2.0, latitudes, "latitude"
    )
    # Check coordinates cover globe:
    assert np.min(xc.bounds) == -180.0
    assert np.max(xc.bounds) == 180.0
    assert np.min(yc.bounds) == -90.0
    assert np.max(yc.bounds) == 90.0
    x_points_per_cube = longitudes // x_split
    y_points_per_cube = latitudes // y_split
    for x_index, y_index in itertools.product(range(x_split), range(y_split)):
        subset_x = xc[x_index * x_points_per_cube : (x_index + 1) * x_points_per_cube]
        subset_y = yc[y_index * y_points_per_cube : (y_index + 1) * y_points_per_cube]
        x_points = len(subset_x.points)
        y_points = len(subset_y.points)
        data = np.arange(times * x_points * y_points).reshape(times, x_points, y_points)
        print(data.shape)
        cube = iris.cube.Cube(data)
        cube.rename("sample_data")
        cube.add_dim_coord(tc, 0)
        cube.add_dim_coord(subset_x, 1)
        cube.add_dim_coord(subset_y, 2)
        yield cube

def save_cubes(cubes):
    """Given an iterator of cubes, saves them in sequentially numbered files."""
    for index, cube in enumerate(cubes):
        filename = os.path.join(
            os.path.expandvars("$SCRATCH"), "iris_example", f"temp_{index}.nc"
        )
        iris.save(cube, filename)

def main():
    cubes = generate_cubes()
    save_cubes(cubes)

if __name__ == "__main__":
    main()

Run this script to demonstrate the actual issue (again, filenames may need to be adjusted):

import iris
import os

def main():
    filename_input = os.path.join(
        os.path.expandvars("$SCRATCH"), "iris_example", "temp_*.nc"
    )
    filename_output = os.path.join(
        os.path.expandvars("$SCRATCH"), "iris_example", "concatenated.nc"
    )
    source_cubes = iris.load(filename_input)
    cubes = iris.cube.CubeList(source_cubes)
    cubes = cubes.concatenate()
    iris.save(cubes, filename_output)

if __name__ == "__main__":
    main()

Expected behaviour
Saving to complete in a sensible time.
Environment

OS & Version: RHEL7
Iris Version: 2.3, but also observed with iris 2.4 (and possibly later - @bjlittle was investigating)

Additional context
For the real world case that led to this example, we do have control over how the individual 80 files are saved - so if there's more sensible chunk sizes we should use for the netCDFs to workaround this problem, this would be a solution for us.

I can confirm that the issue here isn't concatenation, it's saving.

:+1: great example code !   It will really help to assess performance.
Also great timing...
I can't promise anything specific, but it does sound very close to my current task ...
which is testing performance  of the new unstructured 'combine' operation.
So, I'm spending some time trying to work out what makes these types of operation go well or badly, and I think it should easily apply to this too.

My best guess is that it's a dask/netCDF chunking issue - but that is a fairly speculative guess (and, frankly, investigating that in more detail is a bit beyond my dask knowledge).  Notice that there are a lot of times in the sample data, since the real data is 30 years of daily data.

So if I'm interpreting #4572 and our earlier conversation correctly, the issue here is that what we're wanting to happen is:
for each time:
    for each tile:
        load tile data for current time
    concatenate all tiles for current time
    append concatenated data for current time to output file

whereas what we're actually doing is:
for each time:
    for each tile:
        load tile data for all times
        slice out current time
    concatenate all tiles for current time
    append concatenated data for current time to output file

(I initially wrote this with the slice after the concatenate - I don't think this can be the case, though, since that would imply loading all the data at once which would exceed the memory allocation and the job would be killed long before the 3 day timeout.)
Hence there's a lot of unneccessary I/O.  And the user controlled chunking operations being added in #4572 should mean that we can do the load for each time in turn rather than loading all the times from all the tiles for each time?

Following advice from @pp-mo, rechunking the data so that the innermost dimension is a single chunk seems to resolve this issue for our use case.  Adding two lines to the main() from the original comment:
def concatenate_and_save():
    filename_input = os.path.join(
        os.path.expandvars("$SCRATCH"), "iris_example", "temp_*.nc"
    )
    filename_output = os.path.join(
        os.path.expandvars("$SCRATCH"), "iris_example", "concatenated.nc"
    )
    source_cubes = iris.load(filename_input)
    cubes = iris.cube.CubeList(source_cubes)
    cubes = cubes.concatenate()

    # These are the additional two lines:
    for cube in cubes:
        cube.data = cube.core_data().rechunk({0: "auto", 1: "auto", 2: -1})

    iris.save(cubes, filename_output)

is sufficient to get the save time down to around 1 hour.  For a concatenation of ~0.5Tb of data in 80 files to a single file of ~0.5Tb, that doesn't seem excessive to me.
I think this gives us a workaround we can use in ANTS, so I'm happy to close this issue.  If more thorough testing reveals that this is isn't sufficient, I can re-open it.  It would be great if the eventual solution in #4572 either removed the need for this workaround, or at least didn't break the workaround 😃


Add spec tests on OSX

Can't make a simple modification to resolve the issue of accidentally meeting "EOF" on MacOS. Has to

Upgrade test scripts to python3
Use a new TTYRunner on MacOS
Abandon parallel running on MacOS

The left problem is pretty much. The time consumption on MacOS is super long. It will take 1.75 - 2 hours 😮  per workflow.

Abandon parallel running on MacOS

why?

Abandon parallel running on MacOS

why?

mp doesn't show enough stability on our OSX machine. How about yours?

Abandon parallel running on MacOS

why?

mp doesn't show enough stability on our OSX machine. How about yours?

i vaguely remember that it used to work before. but i haven't tried recently.

i'm using a local ad-hoc py3 mod to run runtest.py on macos. (as python2 is not available here)
as the changes in this PR looks more complete, i hope it lands sooner.


Best way to suppress INFO logs from swiftgen rule

Hello!
I am running into an issue where I get a lot of logs from SwiftGen, is there any way to remove these INFO logs but keep my other info logs? Thanks
INFO: From SwiftGen Projects/Modules/Domain/AModuleLocalized.swift
File written: bazel-out/ios-x86_64-min12-applebin_ios-ios_x86_64-fastbuild-ST-c928d317f2e9/bin/Projects/Modules/AModuleLocalized.swift

I filed an issue for it a while ago here https://github.com/SwiftGen/SwiftGen/issues/823.
Another way is creating a wrapper that invokes swiftgen and filters the output.

Thanks for the quick response!

No, it's still in my TODOs :)


unable to move to dashboard during the tutorial

it is unable to go to the main dashboard which shows our progress while during the tutorial

Try adding ?NODEMO to the url


Support DIscord OpenAsar

Is there a way to use OpenAsar with this overlay?

Nevermind I completely forgot how package overrides work. Here's how to do it if someone is wondering:
{ config, pkgs, lib, inputs, ... }:

{
  config = {
    nixpkgs.overlays = [ inputs.powercord-overlay.overlay ];

    environment.systemPackages = [
      (pkgs.discord-plugged.override {
        discord-canary = pkgs.discord-canary.override {
          withOpenASAR = true;
        };

        plugins = [ ... ];
        themes = [ ... ];
      })
    ];
  };
}


uploader rotates images and not annotations

Just tried uploading a new dataset that has images annotated in portrait orientation. I guess the uploader removes all exif data about orientation, so they are now landscape, however, the annotations are still portrait and don't line up in the visualiser.
Options seem to be either:

prevent any portrait uploads
allow portrait uploads but ensure orientation is known and annotations converted appropriately

I'll have a look at this, the release we're currently working on had some changes to the code which removes the exif data. There may be a third option, which is to retain the exif orientation data while removing everything else.

Hi @geezacoleman - can you send me one of the original images which got rotated? I'm assuming it was the Broadleaf Grass Weeds dataset here: https://weed-ai.sydney.edu.au/datasets/ff19a895-dd0c-447e-9499-2ea898a376f6

Sent an image to you earlier today @spikelynch - thanks for looking into this.
I'll reupload the corrected landscape dataset or the portrait one if you'd like to test the new functionality.

E.g. this is what Weed-AI shows:

and this is how it appears in Explorer:

Seems to be inconsistent - so I'm assuming it must be the EXIF data from when I collected it overhead that's causing issues. Because it's flat, any subtle angles in a direction must cause the EXIF to change?

I think you're right - the device is deciding which way is "up" based on a very small angle and setting the exif data accordingly. (Different devices handle this in different ways - some phones just rotate the bitmap, others set the exif flag.)
The PIL function I'm using to handle it looks at the Orientation flag in the exif and does a transform to convert the image to something which looks the right way up without an exif flag.
The first example you sent had an exif Orientation of 6, which is a 90-degree rotation, so without the exif it got switched to landscape rather than portrait.
The example above looks like exif 3 (180 degrees) but the fix should work for that as well.
We won't be deploying the new release until next week, but if you want to email me the 180-degree example I can test it locally.


checking for a list.size() >= 0

Original issue created by<EMAIL_ADDRESS>on 2014-06-13 at 08:14 PM

Describe the bug pattern this checker should detect and why it is
incorrect.
Note our criteria for new checks:
https://code.google.com/p/error-prone/wiki/NewCheckCriteria
If possible, please attach source files that contain code that should and
should not trigger the error.  Code that should trigger the error should
be in a file called PositiveCases.java, and code that should not trigger
the error should be in a file called NegativeCases.java.
Otherwise, just include positive and negative cases below.
https://memegen.googleplex.com/4845295930179584
Yes, an error so bad it has a meme.
Here are samples, limited to Java:
https://cs.corp.google.com/#search/&sq=package:piper file://depot/google3 -file:google3/(experimental|obsolete)&q=\.size\(\)\s?>=\s?0\)%20lang:java&type=cs&m=100&sort=1

This has been implemented internally and will be synced to external soon.

Implemented in 584bb3ca30d6c77127d827bcdf212be92152b777


Task/uwpds UI updates

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 81.967%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
100

Relevant Lines:
122

💛  - Coveralls


sprites_4.bas causes VDP to shut down after several minutes

I suspect this is a VDP bug but since the reproducer is in BBC BASIC I've raised it here. Straightforward to reproduce:
LOAD "SPRITES_4.BAS"
RUN

For me, after between 1 min 30 s and 5 minutes (across 4 runs), VDP appears to shut down, the monitor no longer detects a signal and shuts off, the keyboard is unresponsive to any input e.g. to toggle caps lock or num lock. Pressing the reset button is the only way back to a usable machine.
sprites_5.bas can also cause a shutdown but takes longer, 12 minutes on the first run, the second run lasted 16 minutes before I stopped it.
MOS 1.03, VDP 1.03, BBC BASIC 1.04 on an Agon Light 2. Has been reproduced on another Agon Light 2 running the same software versions.

This seems to be related to animating the sprite (VDU 23, 27, 8). I've removed that from the demo and all is well.

In sprites.h, changing the function nextSpriteFrame to this seems to fix the issue
void nextSpriteFrame() {
	auto sprite = getSprite();
	auto frame = sprite->currentFrame;
	sprite->setFrame(frame < sprite->framesCount -1 ? frame + 1 : 0);
}

which seems to indicate an issue with sprite->nextFrame()

I think I see what is happening here:
This could could for a brief period set currentFrame to an invalid frame before the if condition is triggered.
If a sprite were to be drawn during that period, then you'd get a guru exception.
void nextFrame() { ++currentFrame; if (currentFrame >= framesCount) currentFrame = 0; }

I've modified the code locally in vdp-gl as follows (~line 571 of displayController.h) and am testing now.
void nextFrame() { currentFrame = (currentFrame  < framesCount - 1) ? currentFrame + 1 : 0; }

This has now been running for over 90 minutes on my test Agon, whereas before it would last no longer than 5-10 minutes. I've issued a pull request on the vdp-gl repo here https://github.com/avalonbits/vdp-gl/pull/31.
As this is not a bug in agon-vdp, and there will be no changes on my side, I'm going to close this card as 'Won't Do'.

Thanks for fixing this. Should the fix also be sent upstream to FabGL?

excellent investigation work @breakintoprogram
I'd never managed to reproduce this error when I'd tried - left sprites_4 running for many many minutes, maybe even hours before with it seemingly quite happy.  the unlikely circumstance of the nextFrame method getting interrupted between its two statements would make it an incredibly rare crash indeed.  :grin:
I've been trying to fix sprites performance to reduce flickering for the past couple of weeks, and have been incidentally trying to look out for this bug.  I have seen occasional/rare crashes when testing out my revised sprites code; i had put that down to bugs in my own code, which I couldn't see, but at least some of the crashes was probably this bug :grin:

Cool, thanks @stevesims. It's a quick fix. Ideally it should fail gracefully if an invalid sprite frame is selected.


updated cartfile to point RxSwift to 4.3.1

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Ravi Randeria seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


[Search] Empty search screen is displayed after removing entered text in Search field

STR:

Login to app.
Search for "dada".
Click on (x) button.

AR: Empty search results are displayed.
ER:  "dada" search results should still be present on the screen. Search results should not change until new search is performed.
https://user-images.githubusercontent.com/4663708/147417219-1ebd6e66-c977-4097-bdc2-47f736051a38.mov

New behaviour approved by design team. Should be taken into work.


windows 10 platform support

Are you planning to extend your plugin with support for windows 10 applications?
Thank you in advance.

Duplicate of this?


How to suppress a specific output file?

I would like to suppress the .aedat file from being generated in the output folder, but it seems to always default to v2e-dvs-events.aedat.
Is there any command line argument that I can use to suppress this output file from being generated?
Thanks

Hi, if you read these lines: https://github.com/SensorsINI/v2e/blob/master/v2e/v2e_args.py#L219-L222
Then you will see that by default, it always output AEDAT files. I will write a custom type function so that when you pass None, then it's suppressed.
Yuhuang.

Hi, if you read these lines: https://github.com/SensorsINI/v2e/blob/master/v2e/v2e_args.py#L219-L222
Then you will see that by default, it always output AEDAT files. I will write a custom type function so that when you pass None, then it's suppressed.
Yuhuang.

Ok, please pull the changes, and now pass the following arguments in your command:
----dvs_aedat2 None --dvs_text None

This will suppress all output files.

Ok, please pull the changes, and now pass the following arguments in your command:
----dvs_aedat2 None --dvs_text None

This will suppress all output files.

Great! Thank you so much!

Great! Thank you so much!


Error: Cannot read properties of undefined (reading 'id')

I experiencing the error Cannot read properties of undefined (reading 'id') here. Is there a way to solve it?

I'm also having this


When setting in_nograb to 1, input is not grabbed but pointer is hidden when focusing

When setting in_nograb to 1, input is not grabbed but pointer is hidden, maybe that's unwanted?
Also, the pointer move still affects the camera.
Enabling in_nograb may also be useful when doing benchmark: in that specific use case, not hiding pointers and not being used to move the camera may be wanted.

When setting in_nograb to 1, input is not grabbed but pointer is hidden, maybe that's unwanted?

After re-reading myself I had to reproduce to understand why I've said…
I mean the desktop pointer is hidden like if it was captured.

Also, the pointer move still affects the camera.

The only thing in_nograb seems to do is to not recenter the pointer.
I don't know if there is a bug, but the behaviour is a bit puzzling.
With in_nograb enabled when the game is on the main menu, the main menu displays the in-game mouse pointer, so there is a continuity, when entering the window the desktop pointer disappears and the in game pointer appear, when leaving the window the in game pointer disappears and the desktop pointer reappears. But outside of a menu, in a loaded game level, when entering the window the mouse pointer disappears and will only reappear when leaving the windows again.

I assume this was fixed by 4e9095477beab0a310958b6513a9a16ef3b0bd4c.


An alternative way to load peripherals information

Hi,
This implementation contains a new ability to extend SVD Viewer to support not only SVD file format but also different formats. With this implementation the retrieving logic of the peripherals information separated from PeripheralTreeProvider class and extracted to a different class. In addition, a new parameter getPeripherals introduced, which enables svd-viewer to load the peripherals information from a different VSCode extension during the debug session by invoking the VSCode command defined in the getPeripherals launch parameter.
We believe this implementation provide a new ability to svd-viewer and we are kindly asking for review for this pull request. We also extend the documentation and provide a basic guideline for users to extend the svd-viewer by implementing their own VSCode plugins.
Kind regards.
Asim Gunes

@asimgunes this is a great idea!
Please be aware that this extension has now been upstreamed back to the original which has been separated at:
https://github.com/mcu-debug/peripheral-viewer
Both extensions still live in the marketplace, but I intend to deprecate this one once this issue is resolved:
https://github.com/mcu-debug/peripheral-viewer/pull/8
Let me know if you want to keep this PR here, re-open it on peripheral-viewer or open it on both. I'm keen to not review it twice :)
Thanks!

Hi @thegecko,
I am preparing a new pull request for https://github.com/mcu-debug/peripheral-viewer and planning to send it soon.
You can ignore this one.
Kind regards.

Hi @thegecko,
Thanks for returning me back, I think I didnot get the idea of providing an API here. Actually when I started I was trying somehow registering a loader and then try to use that loader here, however I wasn't successful then return back to command invocation as implemented here. But I am open for suggestions and changes here if you can explain a little bit more about your idea.
Some notes while this request was closed:

I remember I optimised/fixed some parts of the code in peripheral-viewer request which are not reflected to this pull request, if you plan to merge this, let me change that part too.
I think you are also moving this project to eclipse cdt, if you want I can provide the update to cdt project too. I can also provcide some sample code and after the migration we wouldnt need to make changes of the sample code too.

... if you can explain a little bit more about your idea.

For example, this extension returns an API you can interact with already:
https://github.com/eclipse-cdt-cloud/vscode-svd-viewer/blob/main/src/browser/extension.ts#L26
One approach could be to offer an extension point in that API for other file types and write an extension for your file type. e.g. expose in the API:
    ...
    registerFileParser(fileExtension: string, (filePath: Uri) => Promise<PeripheralNode[]>)),
    ...

which can be called with:
    ...
    <svdViewerApi>.registerFileParser('myEsvdExtension', async uri => {
        // do something with contents or uri and return node array
    });
    ...

I remember I optimised/fixed some parts of the code in peripheral-viewer request which are not reflected to this pull request, if you plan to merge this, let me change that part too.

yes please

I think you are also moving this project to eclipse cdt, if you want I can provide the update to cdt project too. I can also provcide some sample code and after the migration we wouldnt need to make changes of the sample code too.

already done (check the URL above!)

Hi @thegecko,
Ok, let me check the api suggestion while checking the pull request again. it seems a better solution.

Hi @thegecko,
I re-visit my previous implementation and changed the integration points to work over the extension api. Could you please re-check the implementation when you are available?

Thanks @asimgunes let me check it out!

Hi @thegecko,
I made changed related to your suggestions. There could be slight differences related to implementation details. Could you check the latest implementation in your suitable time?

This is what Arm do for the cmsis extension:
https://www.npmjs.com/package/@arm-software/vscode-cmsis-csolution

Also, example about the "cmsis extension" is interesting and I can contribute for similar approach for this extension, but we need a new repository for this implementation. Additonally, it might be logical to move the type definitions and some utility functions might be useful for users, and then reference the package in svd-viewer to avoid duplication as you mentioned in this code review. But I also prefer merging the changes up to now and leaving that work for another pull request. Is it suitable for you?

Hi @thegecko,
I rebased and update the request as the name of the package changed. Could you please review again in your suitable time?
You may observe that I have additional updates. There is an additional api.ts at the root folder and types are now imported from 'peripheral-inspector/api' as you can also see in the documentation. This change comes because previously I missed the scenario that if the package installed directly from Github, there is no dist folder in it, which is causing import problem. For a workaround, I added api.ts file into the root, but still keep the actual definition file under the src folder. In long term, I think we need a separate package that includes API information like you previously mentioned about the ARM cmsis extension, but I like to leave this work to another (follow-up) update, and if you agree, merge this with the current state. Please let me know your thoughts, I am looking forward to hear them.

Hi Rob, thanks for your comments, I am going to check the suggestions soon and planning to return you by tomorrow. Kind regards.

Released in v1.5.0


Publishing from different FreeRTOS task does not work

Hi,
When trying to publish messages from different FreeRTOS task  errors occur
and esp32 going to reboot
I've found the same error description with esp32 web server
https://www.esp32.com/viewtopic.php?t=3198
Errors of two types occur

CORRUPT HEAP: multi_heap.c:395 detected at 0x3ffbf968
abort() was called at PC 0x40086955 on core 1

INFO: rcl_wait timeout 0 ms
assertion "pbuf_free: p->ref > 0" failed: file "/opt/esp/idf/components/lwip/lwip/src/core/pbuf.c", line 757, function: pbuf_free
abort() was called at PC 0x40142bab on core 1
ELF file SHA256: e47e78ae1b6cd29d
Backtrace: 0x40087901:0x3ffc8e10 0x40087c85:0x3ffc8e30 0x40142bab:0x3ffc8e50 0x400f189b:0x3ffc8e80 0x40102e19:0x3ffc8ea0 0x400edf63:0x3ffc8ec0 0x400eeb6e:0x3ffc8f00 0x400eebee:0x3ffc8f60 0x400e4021:0x3ffc8f80 0x400e3e3a:0x3ffc8fb0 0x400def76:0x3ffc8fe0 0x400df678:0x3ffc9080 0x400dcf10:0x3ffc90a0 0x400d9571:0x3ffc90f0 0x400d612d:0x3ffc9110 0x40152221:0x3ffc9130 0x400d8985:0x3ffc9150 0x40088215:0x3ffc9180
Rebooting...
ets Jun  8 2016 00:22:57
If some information is available on this error please share it.
Regards,
Dmitry

Use case for publishing from other task:
I am trying to publish sensor data every time it's measured from different task.
If data is published by timer (from Micro-ROS task( there is a a time difference between measurements and publishing
that I want to minimize.

Hello @dsryzhov micro-ROS is not prepared for multithreading yet since its middleware (Micro XRCE-DDS Client) is a single thread library.
I suggest you have a single micro-ROS task that communicates with your other tasks using FreeRTOS utilities such as queues.
Regarding your last comment, please could you share some code in order to suggest the best approach for your use case?

Hello @pablogs9!
Thanks for your quick response! Now I know that this behaviour is not a bug but feature.
As I understand receiving events from a FreeRTOS queue could be handled in a loop with rclc_executor_spin_some.
In a loop

rclc_executor_spin_some
handle events from FreeRTOS queue (from other tasks) and publish sensor messages

In this case time difference betwen sensor valed measured time and published time could be smaller than publishing in a regular time interval.
I will try to implement this behaviour and share my result code.
Regards,
Dmitry

That's it @dsryzhov. Looking forward to seeing your micro-ROS applications!
I'm closing this, do not hesitate to reopen if you have any other doubt.


Build 2004fipscontainerd and 2004gen2fipscontainerd VHD images

What type of PR is this?

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Requirements:

[ ] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] tested upgrade from previous version

Special notes for your reviewer:
Release note:
none

VHD Build Tests:
https://msazure.visualstudio.com/CloudNativeCompute/_build/results?buildId=69551790&view=results
https://msazure.visualstudio.com/CloudNativeCompute/_build/results?buildId=69555784&view=results


[SPARK-25409][Core]Speed up Spark History loading via incremental loading and adding a flag to load incomplete or not

What changes were proposed in this pull request?

Instead of loading all event logs in every loading, load only a certain amount of event logs. That is because if there are tens of thousands of event logs, loading all of them take long time.
If we run Spark on Yarn, Spark jobs information can be obtained by Yarn Application master, this is no need to load incomplete applications, so add a flag not to load them.

How was this patch tested?
This is tested manually in our production cluster.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Add @vanzin @steveloughran  @squito who made changes to related code.

I see the reasoning here

@jianjianjiao has a very large cluster with many thousands of history files of past (successful) jobs.
history server startup needs to go through all these logs before being usable, so any server restart results in hours of downtime, just from scanning.
this patch breaks things up to be incremental.

I don't have any opinions on the patch itself; I've not looked at that code for so long my reviews are probably dangerous.
Two thought:

would it make sense for the initial scans to go for the most recent logs first, because that 2.5 hour time to scan all files is still there.
would you want the UI and rest api to indicate that the scan was still in progress, and not to worry if the listing was incomplete?

history server startup needs to go through all these logs before being usable, so any server restart results in hours of downtime, just from scanning.

I don't think this is true. The first scan may take a long time, but i think the SHS is usable even during that time.  As soon as a scan makes it through some file, that file is added the listing.
But if I understand correctly, the advantage here is that as more applications are run during that 2.5 hour scan, you will pick those up more quickly.

would it make sense for the initial scans to go for the most recent logs first, because that 2.5 hour time to scan all files is still there.
would you want the UI and rest api to indicate that the scan was still in progress, and not to worry if the listing was incomplete?

I think both of these already happen.
@jianjianjiao again its been a while since I've looked at this code -- does that sound correct?

so any server restart results in hours of downtime, just from scanning.

Well, that's why 2.3 supports caching things on disk. Also, 2.4 has SPARK-6951 which should make this a lot faster even without disk caching. @jianjianjiao have you tried out 2.4?

@squito  Yes, you are correct. I was trying to make the applications running during the scan be picked up quicker.  It turns out the SPARK-6951 has done great job in achieving this.


Merge Latest Master into Dataflow

This has the latest version of master for dataflow. Please review the changes to see if there are any fixes that need to be made!
To-do for myself:

[x] Disable the Dataflow delete button

Things are working and look good to me! @mklewandowski is this ready to merge?

@llzes Yup, let's bring it in!


Fix backward compatibility for task options where only negated option is set

When only --no-feature is defined on a task:
class MyTask : DefaultTask() {
   @Option("--no-feature")
   var noFeature = false
}

8.1.1
gradle task --no-feature -> noFeature = true
gradle task --feature -> error doesnt exists

8.2
gradle task --no-feature -> noFeature = false
gradle task --feature -> noFeature = true

8.2.1 with this change
gradle task --no-feature -> noFeature = true
gradle task --feature -> noFeature = false

Fixes https://github.com/gradle/gradle/issues/25658

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

@bot-gradle test and merge

I've triggered a build for you. Click here to see all failures if there's any.


Add Readability.php optionality

Adds the ability to use readability.php if installed (via composer)

[x] - Composer.json
[x] - Fallback to php-readability
[x] - Allow silent fail of autoloader.php
[x] - Added install instructions to Readme + minor format alignment

Configuration options that would be good to implement:

[x] - setFixRelativeURLs
[x] - setOriginalURL
[ ] - getImage
[ ] - getImages

Thank you so much for your contribution.

Let me know if you want me to merge.

@m42e All done Iv'e squashed my commits and added Prepened Main Image Main Image Only Append All Images and All Images Only.
Feel free to merge


[BUG] Weak functions are linked when building "chef" app

Reproduction steps
This seems to be a similar issue of  31439

Follow the instructions to build Chef airqualitysensor

$ source ~/tools/esp-idf/export.sh

$ cd connectedhomeip/

$ source scripts/activate.sh

$ cd examples/chef/

# Add config.yaml as below
$  cat config.yaml
esp32:
  IDF_PATH: /home/erwinpan/tools/esp-idf
  TTY: /dev/ttyUSB0

$ ./chef.py -zbr -d rootnode_airqualitysensor_e63187f6c9 -t esp32

After build done, check the function emberAfExternalAttributeReadCallback and emberAfExternalAttributeWriteCallback are based on generic-callback-stubs.cpp

examples/chef$ grep emberAfExternal esp32/build/chip-shell.map
 .text._Z36emberAfExternalAttributeReadCallbacktmPK24EmberAfAttributeMetadataPht
                0x00000000401c706c                _Z36emberAfExternalAttributeReadCallbacktmPK24EmberAfAttributeMetadataPht
 .text._Z37emberAfExternalAttributeWriteCallbacktmPK24EmberAfAttributeMetadataPh
                0x00000000401c7074                _Z37emberAfExternalAttributeWriteCallbacktmPK24EmberAfAttributeMetadataPh
_Z36emberAfExternalAttributeReadCallbacktmPK24EmberAfAttributeMetadataPht esp-idf/main/libmain.a(generic-callback-stubs.cpp.obj)
_Z37emberAfExternalAttributeWriteCallbacktmPK24EmberAfAttributeMetadataPh esp-idf/main/libmain.a(generic-callback-stubs.cpp.obj)

And they are defined as weak functions in src/app/util/generic-callback-stubs.cpp

chip::Protocols::InteractionModel::Status __attribute__((weak))
emberAfExternalAttributeWriteCallback(EndpointId endpoint, ClusterId clusterId, const EmberAfAttributeMetadata * attributeMetadata,
                                      uint8_t * buffer)
{
    return chip::Protocols::InteractionModel::Status::Failure;
}
...
chip::Protocols::InteractionModel::Status __attribute__((weak))
emberAfExternalAttributeReadCallback(EndpointId endpoint, ClusterId clusterId, const EmberAfAttributeMetadata * attributeMetadata,
                                     uint8_t * buffer, uint16_t maxReadLength)

Actually the both two function are defined in [examples/chef/common/stubs.cpp](https://github.com/project-chip/connectedhomeip/blob/22188b60f18b4834cf0f3c13926c35b7b6cf0bfe/examples/chef/common/stubs.cpp#L28] which is supposed to overwrite the weak functions when linking objects.

Protocols::InteractionModel::Status emberAfExternalAttributeReadCallback(EndpointId endpoint, ClusterId clusterId,
                                                                         const EmberAfAttributeMetadata * attributeMetadata,
                                                                         uint8_t * buffer, uint16_t maxReadLength)
...
Protocols::InteractionModel::Status emberAfExternalAttributeWriteCallback(EndpointId endpoint, ClusterId clusterId,
                                                                          const EmberAfAttributeMetadata * attributeMetadata,
                                                                          uint8_t * buffer)

And confirm that all other functions in the "examples/chef/common/stubs.cpp" were built and linked in the final executable

examples/chef$ grep stub.cpp esp32/build/chip-shell.map
esp-idf/main/libmain.a(callback-stub.cpp.obj)
 .text          0x0000000000000000        0x0 esp-idf/main/libmain.a(callback-stub.cpp.obj)
 .data          0x0000000000000000        0x0 esp-idf/main/libmain.a(callback-stub.cpp.obj)
...
_Z52emberAfOtaSoftwareUpdateRequestorClusterInitCallbackt esp-idf/main/libmain.a(callback-stub.cpp.obj)
_Z53emberAfRelativeHumidityMeasurementClusterInitCallbackt esp-idf/main/libmain.a(callback-stub.cpp.obj)

Only ESP32 has this issue. I follow the same steps and confirm Linux doesn't have this issue.
Bug prevalence
Everytime
GitHub hash of the SDK that was being used
22188b6
Platform
esp32
Platform Version(s)
No response
Anything else?
This seems to be a similar issue of  31439

@wqx6 This seems to be a similar issue of  31439 . Can you help to check this?  Thanks !!
/cc @chshu


netdevice: add option to share /dev/vhost-net

New option to share /dev/vhost-net, useful for dpdk app to implement an
exceptional path.
Let's enable to share this resource along other VF.
Link: https://doc.dpdk.org/guides/howto/virtio_user_as_exceptional_path.html
Signed-off-by: Nicolas Dichtel<EMAIL_ADDRESS>

Hi @NicolasDichtel. What usecase do you want to solve?
I am working on vDPA support and there could be some overlap.

Hi @amorenoz,
if my understanding is correct, there is no overlap. App using either SR-IOV or vDPA can benefit from this option. My use case is the exceptional path as described at https://doc.dpdk.org/guides/howto/virtio_user_as_exceptional_path.html.
Regards,
Nicolas

I think is a good and valid usecase. It does not overlap at the usecase level, but it might at the implementation level.
This logic is added at runtime, we may want to add #213 first
How is the pod going to know if a vhost-net device has been provided? Should we should extend the information the DevicePlugin provides to express that?
Also, we might need to add some verification vhost-net device exists, etc
By the way @zshi-redhat, here you have another example of a flag that's more a config option than a filter.

The pod should request a pool with vhost-net shared if needed. For me, you will have pools with vhostnet and pool wihtout vhostnet (even if the selected devices are the same).

@zshi-redhat, @ahalim-intel: any comment about this feature?

Hi @amorenoz,
if my understanding is correct, there is no overlap. App using either SR-IOV or vDPA can benefit from this option. My use case is the exceptional path as described at

@NicolasDichtel  could you elaborate how SR-IOV benefits from this option (needVhostNet)?

I think is a good and valid usecase. It does not overlap at the usecase level, but it might at the implementation level.
This logic is added at runtime, we may want to add #213 first
How is the pod going to know if a vhost-net device has been provided? Should we should extend the information the DevicePlugin provides to express that?

Yes, we need to think about how Pod can know that it needs to use the vhost-net device if one devcie/resource can be used in multiple ways.

Also, we might need to add some verification vhost-net device exists, etc
By the way @zshi-redhat, here you have another example of a flag that's more a config option than a filter.

@amorenoz right, I need to ask the same question here: is there a way to detect whether a devcie is capable of using vhost-net? for example, is there a sys configuration, once be applied, can expose the device as a vhost-net ?

I think is a good and valid usecase. It does not overlap at the usecase level, but it might at the implementation level.
This logic is added at runtime, we may want to add #213 first
How is the pod going to know if a vhost-net device has been provided? Should we should extend the information the DevicePlugin provides to express that?

Yes, we need to think about how Pod can know that it needs to use the vhost-net device if one devcie/resource can be used in multiple ways.

Agree. In fact, this usecase is being considered in the NPWG Device Information Proposal .

Also, we might need to add some verification vhost-net device exists, etc
By the way @zshi-redhat, here you have another example of a flag that's more a config option than a filter.

@amorenoz right, I need to ask the same question here: is there a way to detect whether a devcie is capable of using vhost-net? for example, is there a sys configuration, once be applied, can expose the device as a vhost-net ?
No, the exceptional path has nothing to do with the PCI device being allocated.
Therefore, this will also benefit from #231.

Another, completely different approach would be to enable the Device Plugin to server virtual devices (such as vhost-net) in their own pool.

Hi @amorenoz,
if my understanding is correct, there is no overlap. App using either SR-IOV or vDPA can benefit from this option. My use case is the exceptional path as described at

@NicolasDichtel could you elaborate how app using SR-IOV benefits from this option (needVhostNet)?

Apps using SR-IOV, like dpdk apps, take benefit of it because it enables the exceptional path, like described in the dpdk documentation.

How is the workload going to know that it has an exceptional datapath? I think it should be expressed in the current API (env var) and considered in future APIs: https://docs.google.com/document/d/1rBm-L1ymXIjoKNA6w2lixwBAjt9-tnbs-ee7AcLRbVE/edit#

How is the workload going to know that it has an exceptional datapath? I think it should be expressed in the current API (env var) and considered in future APIs: https://docs.google.com/document/d/1rBm-L1ymXIjoKNA6w2lixwBAjt9-tnbs-ee7AcLRbVE/edit#

It is expressed in the network attachment definition.

It seems that there is a problem with the travis ci. The details show "passed" status.

@NicolasDichtel the pod does not have access to the netattachdefinition at runtime. I have added your usecase in the NPWG's Device Information Proposal, can you please comment on it?

@NicolasDichtel the pod does not have access to the netattachdefinition at runtime. I have added your usecase in the NPWG's Device Information Proposal, can you please comment on it?

Hi @amorenoz,
normally the pod knows it by trying to open /dev/vhost-net. It will fail if the resource is not available.
I will check and comment the doc asap.
Regards

@ahalim-intel, do you expect something on my side to move forward? I'm not sure what the status is.


Fix the download warning in Chrome

Chrome SafeBrowsing flags the download of the prebuilt binaries because they are uncommon downloads.
Figure out how to fix this, and fix it.

This seems to be gone today!