Create new Concept: Variadic Functions

Getting Started
If you have not yet contributed to concept exercises before, this task requires some upfront reading to acquire the necessary background knowledge.
Here you can read about what Concept Exercises are and how they are structured:

What are Concept Exercises?
Concept Exercises
Concepts

Motivation
The current exercise "Card Tricks" includes append (which is a variadic function) and the x... syntax when passing arguments to a variadic function. None of this is properly introduced currently. We want to add another concept to fix this. "Card Tricks" will then later be changed to teach slices and this new concept at the same time.
Task
The task here is to create a new concept variadic-functions that explains what it means to prefix the last function parameter with ... and what it means if you pass an argument with ... as suffix.
Out of Scope
Changing the "Card Tricks" exercise is out of scope for this issue, there will be a separate issue for this.
Resources
Before writing this concept, please take a close look at the Go spec so the content you write will be correct:

https://go.dev/ref/spec#Function_types
https://go.dev/ref/spec#Passing_arguments_to_..._parameters

This article might be good for the links section:

https://golangbot.com/variadic-functions/

I would like to contribute to this issue, can anyone help ne how can i start, can i simply clone and contribute to the issue, or do i need certain permissions?

@myworkcircle Thanks for volunteering for this task! You don't need any special permissions but you need to fork the repository first before you clone it. Then you work on your fork and create a PR from there to the original repo. If you are not familiar with the flow, here is a good introduction that explains this step by step: https://www.digitalocean.com/community/tutorials/how-to-create-a-pull-request-on-github

Did you find your way around in the repo? Let me know in case you have any more questions.

yes @junedev, i have made changes at my end. Sorry got late in raising a pr. Had some issues with my older system.
Raised a pr :- https://github.com/exercism/go/pull/2091


web-app: collpasible frameworks: Aspect Ratio - ghost framework (+1)

Browser
No response
Description
aspect ratio displaying "react+1" on frameworks but when filtering by every framework but react, it's showing up as blank, where's that extra +1 coming from?
Ideas:  could it be styles? are we not taking into account noIndex?  🤔

Steps to reproduce
1 - Go into app components view, search for "aspect ratio" , note 1 result showing "react +1" on card on framework
2 - Filter by every framework but react, note no results
Where's the extra framework coming from?

@francinelucca I don't see this on production. Is this still an issue if you disable INDEX_ALL=1?

@francinelucca I don't see this on production. Is this still an issue if you disable INDEX_ALL=1?

I tested this on 451-index-carbon-react, we don't have carbon-react on prod yet; but you're right, it's an INDEX_ALL thing 🐵 😅 😳 ... Closing hehe


Adafruit_I2CDevice.h and Adafruit_SPIDevice.h missing

hello,
I have Arduiono1.8.13 installed as a portable version, to have a clean version
and esp8266 community vers 2.2.0
and all the libraries I found in Esp_radio.ino
now I get this error message
libraries\Adafruit-GFX-Library\Adafruit_GrayOLED.h:30:32: fatal error: Adafruit_I2CDevice.h: No such file or directory
and after if I cange the entry in Adafruit_GrayOLED.h to //#include <Adafruit_I2CDevice.h>
libraries\Adafruit-GFX-Library\Adafruit_GrayOLED.h:31:32: fatal error: Adafruit_SPIDevice.h: No such file or directory
is there a Esp_radio.bin which I could flash with NodeMCU-PyFlasher?

I have uploaded the sketch in binary format to the bin directory.

I have uploaded the sketch in binary format to the bin directory.

thank you

thank you

I have no sound, I can see Artist and Title information at the webside, so the radio work
I have checked the wiring several times, but all is correct
is your bin file with tft or without tft?

I have no sound, I can see Artist and Title information at the webside, so the radio work
I have checked the wiring several times, but all is correct
is your bin file with tft or without tft?

Show the logging at the serial port.

Show the logging at the serial port.

23:55:18.081 -> D: Slow SPI,Testing VS1053 read/write registers...
23:55:18.081 -> D: VS1053 error retry SB:012C R1:0000 R2:0000
23:55:18.081 -> D: VS1053 error retry SB:0258 R1:0000 R2:0000
23:55:18.128 -> D: VS1053 error retry SB:0384 R1:0000 R2:0000
23:55:18.128 -> D: VS1053 error retry SB:04B0 R1:0000 R2:0000
23:55:18.128 -> D: VS1053 error retry SB:05DC R1:0000 R2:0000
23:55:18.181 -> D: VS1053 error retry SB:0708 R1:0000 R2:0000
23:55:18.181 -> D: VS1053 error retry SB:0834 R1:0000 R2:0000
23:55:18.181 -> D: VS1053 error retry SB:0960 R1:0000 R2:0000
23:55:18.181 -> D: VS1053 error retry SB:0A8C R1:0000 R2:0000
23:55:18.228 -> D: VS1053 error retry SB:0BB8 R1:0000 R2:0000
23:55:18.228 -> D: VS1053 error retry SB:0CE4 R1:0000 R2:0000
23:55:18.228 -> D: VS1053 error retry SB:0E10 R1:0000 R2:0000
23:55:18.281 -> D: VS1053 error retry SB:0F3C R1:0000 R2:0000
23:55:18.281 -> D: VS1053 error retry SB:1068 R1:0000 R2:0000
23:55:18.281 -> D: VS1053 error retry SB:1194 R1:0000 R2:0000
23:55:18.328 -> D: VS1053 error retry SB:12C0 R1:0000 R2:0000
23:55:18.328 -> D: VS1053 error retry SB:13EC R1:0000 R2:0000
23:55:18.328 -> D: VS1053 error retry SB:1518 R1:0000 R2:0000
23:55:18.381 -> D: VS1053 error retry SB:1644 R1:0000 R2:0000
23:55:18.381 -> D: VS1053 error retry SB:1770 R1:0000 R2:0000
23:55:18.482 -> D: Fast SPI, Testing VS1053 read/write registers again...
23:55:18.529 -> D: VS1053 error retry SB:0003 R1:0000 R2:0000
23:55:18.529 -> D: VS1053 error retry SB:0006 R1:0000 R2:0000
23:55:18.529 -> D: VS1053 error retry SB:0009 R1:0000 R2:0000
23:55:18.582 -> D: VS1053 error retry SB:000C R1:0000 R2:0000
23:55:18.582 -> D: VS1053 error retry SB:000F R1:0000 R2:0000
23:55:18.582 -> D: VS1053 error retry SB:0012 R1:0000 R2:0000
23:55:18.582 -> D: VS1053 error retry SB:0015 R1:0000 R2:0000
23:55:18.629 -> D: VS1053 error retry SB:0018 R1:0000 R2:0000
23:55:18.629 -> D: VS1053 error retry SB:001B R1:0000 R2:0000
23:55:18.629 -> D: VS1053 error retry SB:001E R1:0000 R2:0000
23:55:18.682 -> D: VS1053 error retry SB:0021 R1:0000 R2:0000
23:55:18.682 -> D: VS1053 error retry SB:0024 R1:0000 R2:0000
23:55:18.682 -> D: VS1053 error retry SB:0027 R1:0000 R2:0000
23:55:18.729 -> D: VS1053 error retry SB:002A R1:0000 R2:0000
23:55:18.729 -> D: VS1053 error retry SB:002D R1:0000 R2:0000
23:55:18.729 -> D: VS1053 error retry SB:0030 R1:0000 R2:0000
23:55:18.783 -> D: VS1053 error retry SB:0033 R1:0000 R2:0000
23:55:18.783 -> D: VS1053 error retry SB:0036 R1:0000 R2:0000
23:55:18.783 -> D: VS1053 error retry SB:0039 R1:0000 R2:0000
23:55:18.783 -> D: VS1053 error retry SB:003C R1:0000 R2:0000
23:55:18.829 -> D: endFillByte is 0
23:55:19.986 -> D: Selected network: FRITZBox7490
23:55:19.986 -> D: Try WiFi FRITZBox7490
23:55:23.072 -> D: IP = <IP_ADDRESS>
23:55:23.125 -> D: Start server for commands
23:55:23.125 -> D: Connecting to MQTT broker.hivemq.com, port 1883, user none, password none...
23:55:23.373 -> D: MQTT Connected to the broker broker.hivemq.com, session is not present
23:55:23.373 -> D: Subscribing to espradio at QoS 2, packetId = 1
23:55:23.373 -> D: Publishing IP <IP_ADDRESS> to topic espradioIP
23:55:23.426 -> D: MQTT Subscribe acknowledged, packetId = 1, QoS = 2
23:55:23.426 -> D: MQTT Publish acknowledged, packetId = 2
23:55:24.128 -> D: BASS settings is 0000
23:55:24.128 -> D: STOP requested
23:55:24.175 -> D: Song stopped correctly after 0 msec
23:55:24.830 -> D: New preset/file requested (-1/0) from
23:55:24.877 -> D: New preset/file requested (-1/0) from webstream.radio-bamberg.de/radio-bamberg.mp3
23:55:24.877 -> D: Connect to new host webstream.radio-bamberg.de/radio-bamberg.mp3
23:55:24.877 -> D: Connect to webstream.radio-bamberg.de on port 80, extension /radio-bamberg.mp3
23:55:25.023 -> D: Connected to server
23:55:25.209 -> D: Switch to HEADER

23:55:18.081 -> D: Slow SPI,Testing VS1053 read/write registers...
23:55:18.081 -> D: VS1053 error retry SB:012C R1:0000 R2:0000
23:55:18.081 -> D: VS1053 error retry SB:0258 R1:0000 R2:0000
23:55:18.128 -> D: VS1053 error retry SB:0384 R1:0000 R2:0000
23:55:18.128 -> D: VS1053 error retry SB:04B0 R1:0000 R2:0000
23:55:18.128 -> D: VS1053 error retry SB:05DC R1:0000 R2:0000
23:55:18.181 -> D: VS1053 error retry SB:0708 R1:0000 R2:0000
23:55:18.181 -> D: VS1053 error retry SB:0834 R1:0000 R2:0000
23:55:18.181 -> D: VS1053 error retry SB:0960 R1:0000 R2:0000
23:55:18.181 -> D: VS1053 error retry SB:0A8C R1:0000 R2:0000
23:55:18.228 -> D: VS1053 error retry SB:0BB8 R1:0000 R2:0000
23:55:18.228 -> D: VS1053 error retry SB:0CE4 R1:0000 R2:0000
23:55:18.228 -> D: VS1053 error retry SB:0E10 R1:0000 R2:0000
23:55:18.281 -> D: VS1053 error retry SB:0F3C R1:0000 R2:0000
23:55:18.281 -> D: VS1053 error retry SB:1068 R1:0000 R2:0000
23:55:18.281 -> D: VS1053 error retry SB:1194 R1:0000 R2:0000
23:55:18.328 -> D: VS1053 error retry SB:12C0 R1:0000 R2:0000
23:55:18.328 -> D: VS1053 error retry SB:13EC R1:0000 R2:0000
23:55:18.328 -> D: VS1053 error retry SB:1518 R1:0000 R2:0000
23:55:18.381 -> D: VS1053 error retry SB:1644 R1:0000 R2:0000
23:55:18.381 -> D: VS1053 error retry SB:1770 R1:0000 R2:0000
23:55:18.482 -> D: Fast SPI, Testing VS1053 read/write registers again...
23:55:18.529 -> D: VS1053 error retry SB:0003 R1:0000 R2:0000
23:55:18.529 -> D: VS1053 error retry SB:0006 R1:0000 R2:0000
23:55:18.529 -> D: VS1053 error retry SB:0009 R1:0000 R2:0000
23:55:18.582 -> D: VS1053 error retry SB:000C R1:0000 R2:0000
23:55:18.582 -> D: VS1053 error retry SB:000F R1:0000 R2:0000
23:55:18.582 -> D: VS1053 error retry SB:0012 R1:0000 R2:0000
23:55:18.582 -> D: VS1053 error retry SB:0015 R1:0000 R2:0000
23:55:18.629 -> D: VS1053 error retry SB:0018 R1:0000 R2:0000
23:55:18.629 -> D: VS1053 error retry SB:001B R1:0000 R2:0000
23:55:18.629 -> D: VS1053 error retry SB:001E R1:0000 R2:0000
23:55:18.682 -> D: VS1053 error retry SB:0021 R1:0000 R2:0000
23:55:18.682 -> D: VS1053 error retry SB:0024 R1:0000 R2:0000
23:55:18.682 -> D: VS1053 error retry SB:0027 R1:0000 R2:0000
23:55:18.729 -> D: VS1053 error retry SB:002A R1:0000 R2:0000
23:55:18.729 -> D: VS1053 error retry SB:002D R1:0000 R2:0000
23:55:18.729 -> D: VS1053 error retry SB:0030 R1:0000 R2:0000
23:55:18.783 -> D: VS1053 error retry SB:0033 R1:0000 R2:0000
23:55:18.783 -> D: VS1053 error retry SB:0036 R1:0000 R2:0000
23:55:18.783 -> D: VS1053 error retry SB:0039 R1:0000 R2:0000
23:55:18.783 -> D: VS1053 error retry SB:003C R1:0000 R2:0000
23:55:18.829 -> D: endFillByte is 0
23:55:19.986 -> D: Selected network: FRITZBox7490
23:55:19.986 -> D: Try WiFi FRITZBox7490
23:55:23.072 -> D: IP = <IP_ADDRESS>
23:55:23.125 -> D: Start server for commands
23:55:23.125 -> D: Connecting to MQTT broker.hivemq.com, port 1883, user none, password none...
23:55:23.373 -> D: MQTT Connected to the broker broker.hivemq.com, session is not present
23:55:23.373 -> D: Subscribing to espradio at QoS 2, packetId = 1
23:55:23.373 -> D: Publishing IP <IP_ADDRESS> to topic espradioIP
23:55:23.426 -> D: MQTT Subscribe acknowledged, packetId = 1, QoS = 2
23:55:23.426 -> D: MQTT Publish acknowledged, packetId = 2
23:55:24.128 -> D: BASS settings is 0000
23:55:24.128 -> D: STOP requested
23:55:24.175 -> D: Song stopped correctly after 0 msec
23:55:24.830 -> D: New preset/file requested (-1/0) from
23:55:24.877 -> D: New preset/file requested (-1/0) from webstream.radio-bamberg.de/radio-bamberg.mp3
23:55:24.877 -> D: Connect to new host webstream.radio-bamberg.de/radio-bamberg.mp3
23:55:24.877 -> D: Connect to webstream.radio-bamberg.de on port 80, extension /radio-bamberg.mp3
23:55:25.023 -> D: Connected to server
23:55:25.209 -> D: Switch to HEADER

All those VS1053 errors shows that there is a (wiring) problem withe the SPI bus.

All those VS1053 errors shows that there is a (wiring) problem withe the SPI bus.

https://ibb.co/R7fcCDG
https://ibb.co/b2T91t9
I made it new, same problem

https://ibb.co/R7fcCDG
https://ibb.co/b2T91t9
I made it new, same problem

Wiring looks good.  Check if the chip on the MP3 board is really an VS1053.
Check if the reset pin of the VS1053 board is high.
It should also work without the diodes.

Wiring looks good.  Check if the chip on the MP3 board is really an VS1053.
Check if the reset pin of the VS1053 board is high.
It should also work without the diodes.

now I have remove the diodes and connected reset to vss, now I have sound but with many breaks, like very old CD
https://ibb.co/wsKfR8Y it is an VS1053

now I have remove the diodes and connected reset to vss, now I have sound but with many breaks, like very old CD
https://ibb.co/wsKfR8Y it is an VS1053


Not working perfectly

I am facing an issue with Classic Power Menu, whenever I am clicking on power Menu, the screen gets locked and the power menu is opening
https://drive.google.com/file/d/1eY6lYtCw3K4iVEBR6QfHXrGgm4sgS6iT/view

Please provide more information. What device, what Android version, are you using the Xposed method or accessibility?

Device: Realme 2 Pro
Android version: Android 12
I tried with both accessibility and Xposed module, but whenever pressing
power menu, the screen getting locked and then power menu is showing.
Check out this video
On Thu, 11 Nov, 2021, 4:59 pm Kieron Quinn, @.***>
wrote:

Please provide more information. What device, what Android version, are
you using the Xposed method or accessibility?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/KieronQuinn/ClassicPowerMenu/issues/22#issuecomment-966226977,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQ45WGJKMAUOKRUC7VJ7LJ3ULOSI5ANCNFSM5H2FPEKQ
.

Yes, I saw the video. As the behaviour is happening with the accessibility service too, the cause is almost definitely the system, but one last question - can you unlock with fingerprint after the screen gets "locked"? I can't see behind the clear notifications circle on your video.

Yaa, I can unlock my screen. So, what should I do now?
On Thu, 11 Nov, 2021, 7:08 pm Kieron Quinn, @.***>
wrote:

Yes, I saw the video. As the behaviour is happening with the accessibility
service too, the cause is almost definitely the system, but one last
question - can you unlock with fingerprint after the screen gets "locked"?
I can't see behind the clear notifications circle on your video.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/KieronQuinn/ClassicPowerMenu/issues/22#issuecomment-966309255,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQ45WGJLCF5T57URYY6NSALULPBM3ANCNFSM5H2FPEKQ
.

If you can unlock the screen, CPM is definitely not at fault. There's no code to lock the screen but not put it into lockdown mode, so it is not to blame.
There is nothing I can do, your issue is caused by some weird system behaviour.


CLUS scenario tool - upload shapefile error "not valid"

I was trying to upload a shapefile in the CLUS scenario app, and got an error that the shapefile was not valid
To Reproduce

Go to scenario tool app
Click on "Click to Upload" under Upload Shapefile
Navigate to a shapefile and highlight.shp, .dbf, .shx and .prj files
Get error: "Shapefile not valid"

The shapefile should upload without error and be visible on the map

I ran the app on my local CPU to test the error. There appeared to be two problems with some syntax in two existing functions in the server:
st_transform() # line 220
bbox () # line 664
In the former, it seems CRS() function is deprecated; now changed to crs =
In the latter it appears bbox() is deprecated; now changed to st_bbox()
these updates fixed the error on my local CPU. Code was merged with Master.
Only remaining taks is to upload to virtual machine and test it.

Tested and passed; complete.


[WIP] Egress policy

Codecov Report

Merging #1987 (0095d55) into main (aa112c7) will decrease coverage by 23.67%.
The diff coverage is 14.70%.

@@             Coverage Diff             @@
##             main    #1987       +/-   ##
===========================================
- Coverage   65.42%   41.75%   -23.68%
===========================================
  Files         197      124       -73
  Lines       17217    15283     -1934
===========================================
- Hits        11265     6382     -4883
- Misses       4780     8375     +3595
+ Partials     1172      526      -646

Flag
Coverage Δ

kind-e2e-tests
?

unit-tests
41.75% <14.70%> (-0.11%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...gent/controller/networkpolicy/status_controller.go
64.38% <0.00%> (-8.22%)
:arrow_down:

pkg/agent/openflow/client.go
30.52% <0.00%> (-36.68%)
:arrow_down:

pkg/agent/openflow/pipeline_other.go
0.00% <0.00%> (-66.67%)
:arrow_down:

pkg/apis/controlplane/register.go
0.00% <0.00%> (-88.24%)
:arrow_down:

pkg/apis/controlplane/v1beta1/conversion.go
80.23% <ø> (-0.78%)
:arrow_down:

pkg/apis/controlplane/v1beta1/register.go
0.00% <0.00%> (-92.86%)
:arrow_down:

pkg/ovs/openflow/ofctrl_action.go
11.58% <0.00%> (-36.26%)
:arrow_down:

pkg/ovs/openflow/ofctrl_builder.go
19.40% <0.00%> (-38.32%)
:arrow_down:

pkg/agent/openflow/pipeline.go
30.31% <4.76%> (-42.43%)
:arrow_down:

pkg/agent/controller/networkpolicy/cache.go
79.61% <100.00%> (-5.69%)
:arrow_down:

... and 165 more

Can you squash your commits into one so that it's easy to review changes of this PR? I mean the commits except the ones merged from other PRs.

Can you squash your commits into one so that it's easy to review changes of this PR? I mean the commits except the ones merged from other PRs.

squashed

superseded by #2026, closing it


heap: PushBulk method for all heaps

Codecov Report

Merging #80 into master will increase coverage by 0.18%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #80      +/-   ##
==========================================
+ Coverage   78.16%   78.35%   +0.18%
==========================================
  Files          23       23
  Lines        1026     1035       +9
==========================================
+ Hits          802      811       +9
  Misses        210      210
  Partials       14       14

Impacted Files
Coverage Δ

heap/binaryheap.go
100% <100%> (ø)
:arrow_up:

heap/fibheap.go
100% <100%> (ø)
:arrow_up:

heap/minmaxheap2.go
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Routing not working properly (page is redirecting wrong on page refresh / initial page load)

After trying out every possible solution i could find, i finally opened an issue in hope for someone to help me figure out what i am doing wrong. (or if it is a bug)
Setup:
"@marvr/storyblok-rich-text-vue-renderer": "3.2.1",
[...]
"@nuxt/vite-builder": "3.5.3",
[...]
"@pinia/nuxt": "0.4.11",
[...]
"@storyblok/nuxt": "^5.5.2",
[...]
"@vueuse/nuxt": "10.1.2",
[...]
"nuxt": "^3.5.3",
"pinia": "2.1.3",
[...]
"storyblok-js-client": "^5.10.6",
[...]

Current behavior:
Running everything locally via npm run devworks as expected.
Running npx serve .output/public or deploying it to my server causes the issues.
If i open a page (e.g. ''/projects"), the page shows a few milliseconds and redirects to an empty page immediately (with just my global modules showing). If i click on a link from that empty page (e.g. "/contact") everything works properly. So it only occurs if i initially load a page.
Im not sure what causes this. Since there is no trailing slash in the URL opened, it shouldn't do anything.
Expected behavior:
TrailingSlash gets remove from url and the page shows correctly.
Steps to reproduce:
nuxt.config.js
router: {
    trailingSlash: false,
    middleware: 'trailingSlash.global',
  },

middleware/trailingSlash.global.ts
import { defineNuxtRouteMiddleware, navigateTo } from '#app';

export default defineNuxtRouteMiddleware((to, from) => {
  if (to.path !== '/' && to.path.endsWith('/')) {
    const { path, query, hash } = to;
    const nextPath = path.replace(/\/+$/, '') || '/';
    const nextRoute = { path: nextPath, query, hash };
    return navigateTo(nextRoute, { redirectCode: 301 });
  }
});

Maybe this is not a storyblok-nuxt thing but a nuxt issues itself.
EDIT:
The routing seems to be working  somehow. Unfortunately the dynamic content fetched via useAsyncStoryblok isnt shown. (or actually disappears after half a second)

Hi @silberundeis, indeed, as you pointed out, this issue is not related to Storyblok, is a Nuxt/deployment behavior. Please check this article or some reference on what you mentioned: https://dev.to/mornir/nuxt-netlify-and-the-trailing-slash-3gge.
And please, just to be able to assign a person and time for the issues on the SDKs, use the SDK bug or FR templates next time. It will help us a lot with the info we need to deliver proper solutions 🤗


Fix for rounded border issue on 200% DPI (Windows).

Was noticed when upstreaming border fixes to electron with https://github.com/electron/electron/pull/8404
After @kevinsawicki saw same issue, I fixed with https://github.com/electron/electron/pull/8404/commits/9e0547b98f8b7f3a572aa1cf9770f434c8fdeed9 (same as this fix)
Tested on Windows 10 anniversary edition at 200% DPI and confirmed issue is fixed with this
Fixes https://github.com/brave/browser-laptop/issues/4216
Auditors: @bbondy, @darkdh, @bridiver

++


Type files with namespace are recognized as ScriptElement but I think they are Modules

The importer finds the following file (in the log210-jeu-de-des-express-typescript` project) and it's identified as a ScriptElement (according to the debugger), whereas I think it should be a Module (because it has import/export statements in a namespace).
// Type definitions for express-flash-plus (modified from connect-flash by C. Fuhrman)
// Project: https://github.com/jaredhanson/connect-flash
// Definitions by: Andreas Gassmann <https://github.com/AndreasGassmann>
//                 Drew Lemmy <https://github.com/Lemmmy>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3

/// <reference types="express" />

declare namespace Express {
    export interface Request {
        flash(): { [key: string]: string[] };
        flash(message: string): string[];
        flash(type: string, message: string[] | string): number;
        flash(type: string, format: string, ...args: any[]): number;
    }
}

declare module "express-flash-plus" {
    import express = require('express');
    interface IConnectFlashOptions {
        unsafe?: boolean | undefined;
    }
    function e(options?: IConnectFlashOptions): express.RequestHandler;
    export = e;
}

Further debugging leads to this module "express-flash-plus" being modeled as a Namespace rather than a Module, which seems odd. The problem is that an ImportClause needs to be created relative to a Module. The code crashes when fmxImportClause.setImportingEntity(fmxImporter); runs and fmxImporter is a Namespace. I suspect the FQN for the Module is colliding with the Namespace. The FQNFunctions.getFQN maybe needs to put the entity type (Namespace, Module) inside to avoid this.
        const importerFullyQualifiedName = FQNFunctions.getFQN(importer);
        const fmxImporter = this.famixRep.getFamixEntityByFullyQualifiedName(importerFullyQualifiedName) as Famix.Module;
        fmxImportClause.setImportingEntity(fmxImporter);

I tried reverse lookup with fmxElementObjectMap and it returns a Famix.Namespace rather than Famix.Module. A dump of the keys() for that structure reveals NO modules. AST Viewer shows clearly a ModuleDeclaration in TSMorph.

Possibly need to have an isAmbient property for Famix.Module.


1.4.0

Changes:

Table columns are now resizable. Column widths are stored as a setting and will reset if the number of columns changes.
Text no longer lose their default center alignment after the first reload.
Added extra padding outside the table to give users more space to access the settings from.

Nice. I don't see anything out of the ususal :+1:


readme updated

Description
Updated the Readme at par with the Meshery Project
Notes for Reviewers
Pls have a look at the readme
Signed commits

[x] Yes, I signed my commits.

Thank you for picking this issue.
please remove the link in the "community drive", we don't need it anymore.

Done as per request. Pls have a look.

Great work @soham4abc, Thank you for taking this up.

Great work @soham4abc, Thank you for taking this up.

Thank you
@leecalcote  Please review!


Scenekit debugging, maybe like showsStatistics

Scenekit debugging, maybe like showsStatistics

The suggestion is to use the Xcode GPU debug tools for performance and statistics. There are no plan for this feature request.


FocalLoss without logits and as class

🚀 The feature
Making the focal loss api similar to BCE api. In which the difference between BCELoss and BCELossWithLogits is clear and is made as a class as well as a function.
Motivation, pitch
When using a model that explicitly uses the sigmoid activation at the end it is useful to be able to simply use focal loss without injecting the loss before this activation. The use of focal loss in the similar way to BCELoss as a class would also be more elegant and concise.
Alternatives
No response
Additional context
No response

@ori-kishony Thanks for the proposal. It's a good argument.
As you know, right now we offer a sigmoid_focal_loss method that does an explicit sigmoid call inside the method. One approach could be adding another focal_loss method does doesn't make this call. They should both share code to avoid duplication but not do the same logging calls.
An alternative approach is really mimic the BCE paradigm and rename methods but I'm not sure it's worth deprecating the previous method just to rename it.
Concerning on whether we should even do this, right now all TorchVision's models require the extra sigmoid call and wouldn't make use of the proposed feature. This doesn't mean that the feature isn't useful but we don't have an immediate use-case to cover. @fmassa do you have any thoughts on this?


Custom Fields missing changelog

Environment

Python version: 3.6
Nautobot version: 1.2.2

This appears to be a regression in Nautobot 1.2.  In the old admin interface (Nautobot 1.1.x) for Custom Fields there was a history page displaying the history for a custom field, this appears to be missing in Nautobot 1.2.2.
Steps to Reproduce

Create/Change custom field
Look for change log/history

Expected Behavior
A change log should be produced

Observed Behavior
Can't find a change log


Fix markdown lint workflow to actually run on subdirectories properly

See https://github.com/celestiaorg/celestia-app/actions/runs/3131501267/jobs/5082905834. Didn't actually pick up linting errors in the specs directory. Note that official examples use quotes: https://github.com/igorshubovych/markdownlint-cli/tree/f891b45ee50f621330160e5dcfa47435ac2220f8#globbing-examples

now I'm curious why it ran in #696  https://github.com/celestiaorg/celestia-app/actions/runs/3121132961/jobs/5062240226


(maint) Fix submodule init in Windows packaging

Without this change, packaging on Windows initializes the submodules on
the master branch, no matter what ref is requested.
Do submodule init and update after changing to the requested branch, to
ensure the correct submodules are initialized and at the right ref.

@melissa

This seems a bit weird to me, since we are already in facter that we would clone facter again

Right now it's sourced directly from github... it should be retired as we come up with a better build process, but that hasn't happened yet.

Right on.

:+1:

CLA signed by all contributors.


PermissionRequiredMixin applys list permissions to custom POST endpoint, ignoring permission set in @action decorator

I refactored the ModelViewSet in https://github.com/escodebar/django-rest-framework-rules/issues/8 to use the PermissionsRequiredMixin to explicitly declare permissions on the endpoint, and ran into this bug.
The permissions work for all the action decorators except for the logout and logoutall urls, which refuse the action stating the user is missing the 'members.list_user' permission, even though thats not the permission declared in the decorator.

class UserViewSet(PermissionRequiredMixin, ModelViewSet):
    """
    The User endpoint for settings, authentication and anything else.
    """
    authentication_classes = DEFAULT_AUTH
    serializer_class = UserSerializer
    queryset = Member.objects.all()
    object_permission_required = 'members.view_user'
    permission_required = 'members.list_user'

    @action(methods=['get'], detail=False, permission_required='members.verify_user',
            serializer_class=UserSerializer, authentication_classes=[TokenAuthentication],
            url_path='data', url_name='data')
    def data(self, request):
        """
        Logged in users data retrieval + token refresh and user update endpoint.
        :param request: DRF request object
        :return: DRF Response object
        """
        data = UserSerializer(request.user, context=self.get_serializer_context()).data
        return Response({
            "user": data,
        }, status=HTTP_200_OK)

    @action(methods=['post'], detail=False, permission_required='members.register_user',
            serializer_class=UserRegistrationSerializer, authentication_classes=[SessionAuthentication],
            url_path='register', url_name='register')
    def register(self, request):
        """
        Accept and verify userdata, save and return user with AuthToken if valid.

        :param request: DRF request object
        :return: DRF Response object
        """
        serializer = self.get_serializer(data=request.data)
        serializer.is_valid(raise_exception=True)
        user = serializer.create(serializer.validated_data)
        data = UserSerializer(user, context=self.get_serializer_context()).data
        data['token'] = AuthToken.objects.create(user)
        return Response({
            "user": data,
        }, status=HTTP_200_OK)

    @action(methods=['post'], detail=False, permission_required='members.login_user',
            serializer_class=UserLoginSerializer, authentication_classes=[SessionAuthentication],
            url_path='login', url_name='login')
    def login(self, request):
        """
        Verify the login request and return a user object and a token if valid.

        :param request: Request object generated by Django REST Framework
        :return: user info and token when successful
        """
        serializer = self.get_serializer(data=request.data)
        serializer.is_valid(raise_exception=True)
        user = serializer.validated_data
        data = UserSerializer(user, context=self.get_serializer_context()).data
        data['token'] = AuthToken.objects.create(user)
        return Response({
            "user": data,
        }, status=HTTP_200_OK)

    @staticmethod
    @action(methods=['post'], detail=True, permission_required='members.logout_user',
            authentication_classes=[TokenAuthentication], url_path='logout', url_name='logout')
    def logout(request):
        # pylint: disable=W0212
        """
        Accept token and expire related session if valid.
        :param request: DRF request object
        :return: DRF response object
        """
        request._auth.delete()
        return Response(None, status=HTTP_204_NO_CONTENT)

    @staticmethod
    @action(methods=['post'], detail=True, permission_required='members.logout_user',
            authentication_classes=[TokenAuthentication], url_path='logoutall', url_name='logoutall')
    def logout_all(request):
        """
        Accept token and expire all sessions for owning User
        :param request: DRF request object
        :return: DRF response object
        """
        request.user.auth_token_set.all().delete()
        return Response(None, status=HTTP_204_NO_CONTENT)

    @staticmethod
    @action(methods=['get'], detail=True, permission_required='members.verify_user',
            authentication_classes=[TokenAuthentication], url_path='email_confirm', url_name='email_confirm')
    def confirm_email(activation_key):
        """
        View for confirm email.

        Receive an activation key as parameter and confirm email.
        """
        user = get_object_or_404(Member, activation_key=str(activation_key))
        if user.confirm_email():
            return Response(status=HTTP_200_OK)

        return Response(status=HTTP_404_NOT_FOUND)

    @action(methods=['get'], detail=True, permission_required='members.verify_user',
            authentication_classes=[TokenAuthentication], url_path='email_status', url_name='email_status')
    def email_status(self):
        """Retrieve user current confirmed_email status."""
        user = self.request.user
        return Response({'status': user.confirmed_email}, status=HTTP_200_OK)

So I tested this with a superuser, and they have the list permission, which led to:
Method POST not allowed
So it appears that this bug and #8 have a common source. It seems the permission_required decorator breaks the action decorator... some of the time? It's odd because the register and login endpoints work.

Tried removing @staticmethod decorator as it was one difference between login and logout, and behaviour did not change, so it doesn't seem that is it.

Apparently all this behaviour was caused by having detail=True on the action decorator, which is odd. I think I either misunderstand the use of that flag on the new action decorator from DRF, or there's a bug in DRF with this.. but setting detail=False fixes all the extra actions that were not working.


Project box

Codecov Report

Merging #419 (166e03a) into master (1997b90) will decrease coverage by 0.02%.
The diff coverage is 70.00%.

@@            Coverage Diff             @@
##           master     #419      +/-   ##
==========================================
- Coverage   70.19%   70.16%   -0.03%
==========================================
  Files         466      467       +1
  Lines       16077    16111      +34
==========================================
+ Hits        11285    11305      +20
- Misses       4792     4806      +14

Impacted Files
Coverage Δ

app/commands/runtimes/RuntimeImport.php
0.41% <0.00%> (ø)

...helpers/ExerciseConfig/Pipeline/Box/BoxService.php
32.60% <0.00%> (-0.73%)
:arrow_down:

...erciseConfig/Pipeline/Box/Boxes/FileToArrayBox.php
100.00% <ø> (ø)

...ciseConfig/Pipeline/Box/Boxes/StringToArrayBox.php
100.00% <ø> (ø)

.../ExerciseConfig/Pipeline/Box/Params/Priorities.php
20.00% <0.00%> (-80.00%)
:arrow_down:

app/helpers/JobConfig/Tasks/Task.php
96.29% <ø> (ø)

...s/ExerciseConfig/Pipeline/Box/Boxes/ExtractBox.php
51.85% <51.85%> (ø)

...onfig/Pipeline/Box/Boxes/base/ScalarToArrayBox.php
52.38% <66.66%> (ø)

...Config/Pipeline/Box/Boxes/CustomCompilationBox.php
58.62% <77.77%> (-1.38%)
:arrow_down:

...lpers/ExerciseConfig/Compilation/BoxesCompiler.php
100.00% <100.00%> (ø)

... and 4 more

Continue to review full report at Codecov.

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


"Breaza" is listed in the drop-down menu

Description:
"Breaza" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Breaza" in the search bar.

Expected results
The location is listed in the drop-down menu as "Breaza, Buzău".


Docs update 2.5.0 stabilization: Fix filename typo

Overview
Changes

Fixes: # .

Verification

This optional section is a place where you can detail the specific type of verification
you want from reviewers. For example, if you want reviewers to checkout the PR locally
and validate the functionality of specific scenarios, provide instructions
on the specific scenarios and what you want verified.
If there are specific areas of concern or question feel free to highlight them here so
that reviewers can watch out for those issues.
As a reviewer, it is possible to check out this change locally by using the following
commands (substituting {PR_ID} with the ID of this pull request):
git fetch origin pull/{PR_ID}/head:name_of_local_branch
git checkout name_of_local_branch

@hferrone, looks like there are merge conflicts.

Ohhhhh I see it now sorry. Yes, the typo one can be deleted.
On Mon 28. Sep 2020 at 12:37 PM, Kurtis<EMAIL_ADDRESS>wrote:

@keveleigh commented on this pull request.

In Documentation/GettingStartedWithTheMRTK.md
https://github.com/microsoft/MixedRealityToolkit-Unity/pull/8640#discussion_r496155566
:

@@ -0,0 +1,13 @@

+---
+title: Getting Started with the MRTK
Right, but as far as I can tell, the typo-ed GetingStartedWithTheMRTK.md
exists side-by-side with the fixed filename in this PR:
[image: image]
https://user-images.githubusercontent.com/3580640/94472008-f56cfe00-017e-11eb-8234-5799fa28b55e.png
We probably only want the fixed one, right?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/MixedRealityToolkit-Unity/pull/8640#discussion_r496155566,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB6WRK3HXWI6H26N4L2EEFDSIDJXNANCNFSM4RXJ4G5A
.
--
Harrison Ferrone
Unity & iOS Instructional Author
*+49 152 2404 6557 *

*"The mediator between brain and muscle must be the heart." *

approving and will open a PR that will remove the incorrectly named file

/azp run mrtk_docs


Unaligned icons

Hey guys,
Fantastic work with this config =). I love it.
There is just a minor issue that I would like to solve. The icons from my toolbar are not aligned. Here is a screenshot:

How can we fix this?

Did you import the settings from treestyletab/config.json?  Looks like it might be an issue with style of content setting under tree style tab preferences but the first icon seems to be aligned.
Something unrelated I am noticing, you have the tab row and minimize/close buttons. You can remove that entire row by ensuring you have "title bar" selected on the customize toolbar page.

I've imported them. I think I forgot to restart Firefox, now that I've rebooted my computer it is aligned (with just the selected item a little to the right, but I think this is the desired behavior.
Closing the issue =)
Thanks.


chore(main): release 1.15.0

:robot: I have created a release beep boop
1.15.0 (2024-12-30)
Features

remove resource requests (5ec2bab)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.15.0
:sunflower:


Some trees are invisible but come back if building is moved

Some trees are missing...

Using Move itto move a building arround, brings them back

it might be that it is a conflict with e.g. FPS Booster

I've been trying to fix this problem and its hard to find where this issue is arising from. You can use the terrain tool, and soften the terrain with the least modifier such as 0.1. All the trees will pop back up the terrain. Another way is to select the trees with MoveIt mod and align the trees to terrain height.
After saving, if the trees are still below the ground, then there's something wrong with the way I'm dealing with Ypos.

No, 0.6.2. but i'll restart and see :)

When you restart, the trees should still be below the terrain. You will have to manually adjust.
Alternatively, you may use an old map that used the old Unlimited Trees mod, and then save it to a new save. The trees should be fixed.
The reason for this is because I had to fix the Y position during save, as it is the only moment when the terrain height is correct. If I do it during loading, the terrain details would not be available, and the Y positions would be all messed up.
Your feedback is valuable, please keep it up

But you will change this i hope...

I think this issue is no more. closing


Update command allows duplicate event to be created

Description
The update command allows duplicate event to be created
Steps to Reproduce
Create an event: event -n New Year's Party -d 2025-01-01 -l Times Square -a 1 2 4 5
Create another event with only difference in attendee: event -n New Year's Party -d 2025-01-01 -l Times Square -a 1 2 4
Remove attendee 5 from event 1: update -i 1 -r 5
Exit the application.
Boot up the application.
Expected Behavior
The update command should not allow removing of attendee 5 since it causes a duplicate event.
Screenshots

Should add test case for update command: update_duplicateEvent_errorThrown

Instead of fixing it by preventing someone from updating an event into a duplicate event, I thought that it would be better to prevent such similar events to be created in the first place.
If events are the same in every aspect other than attendees, I think it is reasonable to say that they are the same events.
However, there are some gray areas that make me feel uncertain whether this is the correct implementation. If the location is very vague, it is valid to say that two events with the 'same' location can be different events.
For example,
'House party' at 'NUS' with attendees 1 2 3 can be different from
'House party' at 'NUS' with attendees 4 5 6
because NUS is such a broad location name, it can result in two different events being held at different parts of NUS.


Support globally installed plugins

Is there a possibility to properly support custom plugins? I had to install the plugin in the brackets-eslint project to make it work. The standard cli seems to find the plugin fine.

There should be, but my first attempt on this failed. I'll look into this more when I'll have time.

if you are using the cli shouldn't it find the global plugins automatically?

No, this is using the CLIEngine provided by ESLint, I've tried setting the NODE_PATH but for some reason it didn't work to include the global plugins.
https://github.com/zaggino/brackets-eslint/blob/master/domain.js#L8-L9

hmm the engine doesn't seem to work as the cli. normally it should see globally installed plugins (bug?) you could however add some config for it where you specify the plugin names and then npm install it into brackets-eslint. Not sure if that is a good solution though

I've tried using https://nodejs.org/api/modules.html#modules_loading_from_the_global_folders
NODE_PATH environment variable set to location where global node modules are installed.
If I set I globally in my system, it works fine.
If I try to set it through process.env.NODE_PATH=... in domain.js file where ESLint is loaded, it doesn't work ... seems like node's require ignores modifications to NODE_PATH during the execution itself

So current workaround (not a solution I'd want) for custom modules to work is setting the NODE_PATH in the system, on my PC works: NODE_PATH=C:\Users\Zaggi\AppData\Roaming\npm\node_modules

Oh, I may have found a dirty private variable abusing workaround :)
process.env.NODE_PATH = 'C:\\Users\\Zaggi\\AppData\\Roaming\\npm\\node_modules';
require('module').Module._initPaths();

Ok - in latest master, globally installed plugins work both on windows & linux. I'll add the correct mac path tomorrow and publish a new version of the extension.
https://github.com/zaggino/brackets-eslint/blob/master/domain.js#L7-L20

cool thanks!

fixed in<EMAIL_ADDRESS>details in https://github.com/zaggino/brackets-eslint#additional-parsers-and-plugins
please close if fixed for you, thanks!

hmm I have stuff in that path that works but if I npm install -g now it goes to  c:\Program Files\nodejs\node_modules\npm not sure why

You have some kind of non-standard nodejs installation?

probably :D I have C: \Users\adri\AppData\Roaming\npm in my PATH maybe that has something to do with it?

I have used a node version manager before so maybe that messed things up. I'll try uninstalling and reinstalling node

Ok I uninstalled node and removed the 'special' npm location and then reinstalled node. Everything works now. Thanks for the effort!


the edit/close button for the notebook cell menu doesn't do anything.

I clicked on the X button and it becomes Edit button, both doesn't seem to be doing anything.

It works for text cells, just doesn't do anything for code cells.


⚠ Bofrost.fr has degraded performance

In 0b5fb9c, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1342 ms

Resolved: Bofrost.fr performance has improved in 40671aa after 32 minutes.


Recommend Angular CLI for new projects

Let the users know they are better off starting their new Angular projects based on Angular CLI.

Looks like a good idea to me 👍

This project is still the root project for the docs.
We are planning a few things that could get rid of it.
So stay tuned.

if new projs starting from angular cli, what about the 'quickstart' seed? is it dead or not recommended any more?

My understanding is that this project serves as a local equivalent of the online demo that's available in the Angular docs. It's meant to be as close as possible to the online thing, without the overhead of actually loading all packages from remote sources etc.
The disclaimer about it being non optimal for production has been for a while. It just needed an answer to the next logical question "If this isn't good for production, what is?", which this PR addresses.

not sure if this helps but I did the tutorial using the Angular cli build instead of the quickstart. Except for a few minor changes works fine.

This repository is now deprecated. The Angular Quickstart project was a nice starting point for creating Angular applications. Now we recommend using the Angular CLI to create new Angular projects.
Starting from 1 November 2017, all the Angular documentation, at angular.io, is based on the Angular CLI.
Let's get started


Supported accessory aren't showed

Hi and thanks for this great project.
On my Mac works well but I don't see all of my home accessories.
Like Thermostat or my hue light.
With I'm doing wrong?
Thanks
M.

Are those accessories from homebridge plugins or are they native HomeKit accessories? This app will only show homebridge-plugin accessories.

okay, my thermostat or other are native HomeKit accessories.. 😕

They won't show up unfortunately. It's not possible to bypass the HomeKit device encryption, even if we know the original pairing pin.
If your device also has a homebridge plugin (like Phillips Hue), you might be able to get around the issue that way.


chore: bump docker actions

Description
Please add a description here.
Definition of Done Checklist

Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant
Please make sure all these things are done and tick the boxes

- [ ] Changes are OpenShift compatible
- [ ] All added packages (via microdnf or otherwise) have a comment on why they are added
- [ ] Things not downloaded from Red Hat repositories should be mirrored in the Stackable repository and downloaded from there
- [ ] All packages should have (if available) signatures/hashes verified
- [ ] Does your change affect an SBOM? Make sure to update all SBOMs

Waiting for this https://github.com/stackabletech/docker-images/actions/runs/8437522988, approving if this succeeded :)


Transfer ownership?

@brianhaveri since it seems you have abandoned this package, would you consider transferring the ownership to someone else to maintain? I think that @thephpleague  would consider taking it over.

+1

+1

+2

+1

Guys there is better looking alternative https://github.com/lstrojny/functional-php

Actually I've been actively working on https://github.com/Im0rtality/Underscore which is becoming quite decent.

Another solution may be that a new maintainer forks the project and maintains the fork

+1

Here is an experimental functional library that is aimed at having stronger type safety: https://github.com/bluesnowman/fphp-saber

@bluesnowman fphp-saber really isn't comparable to underscore at all.

@shadowhand Agreed, fphp-saber takes more of a Scala / F# like implementation to functional programming, but I thought you might be interested in it since you have been working on your own version of a Underscore.js like implementation and may be looking for ideas on how to improve upon it or approach it.  I am open for comments on fphp-saber and am happy to provide you any feedback on your project (but will do that hereon out via your project).

-1000

I actually like shadowhand's alternative...

I'm late to the party, but we built our own Underscore-like functional programming library since none of the tools out there were maintained, easy to use, or well-documented: https://github.com/nextbigsoundinc/dash
Highlights:

Many data types supported: arrays, objects, Traversable, DirectoryIterator, and more
Chaining
Currying
Lazy evaluation
Custom operations
Well-tested: Comprehensive tests with nearly 3,000 test cases and 100% code coverage

I hope it can be useful to someone. Feedback welcome!


Add the rest of the Steam Server Management API

Only 2 left:

[ ] GetServerSteamIDsByIP
[ ] GetServerIPsBySteamID

these can't really have tests attached to them... I'll add/test them then hope it all works out...


make the fsid device setting configurable

This makes the fsid_device setting configurable. To not affect already deployed nfs provisioners I did not change the default to false. This should solve issue https://github.com/kubernetes-incubator/external-storage/issues/1212.

I signed it

Thx for prs. I’m looking into why e2e is not building/running, it worked a few days ago.

/lgtm
/approve
thanks again.


meson build "unknown compilers"

ignore "unknown compilers" part of title. I didn't install meson separately so it said that. I installed it, and libudev-dev separately, and am now here.
Information

ratbagd version (ratbagd --version): 0.13
Distribution: Ubuntu 20.04.1 LTS
Kernel version (ex. uname -srmo): Linux 5.4.0-45-generic x86_64 GNU/Linux

Device info (if applicable): logitech g203
$ ratbagctl <device> info
warbling-mara:       Logitech G203 Prodigy Gaming Mouse

Describe the bug
When installing the system, and typing in command meson builddir, I get this error shown below:
meson builddir
The Meson build system
Version: 0.53.2
Source dir: /home/sabih/libratbag
Build dir: /home/sabih/libratbag/builddir
Build type: native build
Project name: libratbag
Project version: 0.14
C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0")
C linker for the host machine: cc ld.bfd 2.34
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Run-time dependency libudev found: YES 245
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency libevdev found: NO (tried pkgconfig)

meson.build:73:0: ERROR: Dependency "libevdev" not found, tried pkgconfig

A full log can be found at /home/sabih/libratbag/builddir/meson-logs/meson-log.txt

When I go to meson-log.txt this is whats inside:
cat meson-log.txt
Build started at 2020-09-04T02:13:29.375054
Main binary: /usr/bin/python3
Build Options:
Python system: Linux
The Meson build system
Version: 0.53.2
Source dir: /libratbag
Build dir: /libratbag/builddir
Build type: native build
Project name: libratbag
Project version: 0.14

meson.build:1:0: ERROR: Unknown compiler(s): ['cc', 'gcc', 'clang', 'pgcc', 'icc']
The follow exceptions were encountered:
Running "cc --version" gave "[Errno 2] No such file or directory: 'cc'"
Running "gcc --version" gave "[Errno 2] No such file or directory: 'gcc'"
Running "clang --version" gave "[Errno 2] No such file or directory: 'clang'"
Running "pgcc --version" gave "[Errno 2] No such file or directory: 'pgcc'"
Running "icc --version" gave "[Errno 2] No such file or directory: 'icc'"

To Reproduce
Steps to reproduce the behavior:

Go to 'https://github.com/libratbag/libratbag#compiling-libratbag' and go to Compiling libratbag section, follow steps till meson builddir.
See error

Logs
Please start the daemon with verbosity and reproduce the issue.

See https://github.com/libratbag/libratbag/wiki/Building-from-source for more information.


Added scaffolding and initial self-signed cert-generation code #96 #97

Added scaffolding for self-signed cert-generation module
Added code for self-signed cert-generation CA, Node, Client certs
Added code for using custom user CA for Node, Client certs
Added unit-test-cases

@udnay Incorporated review comments and made some changes in the secret generation part. Had some issue with the old approach.


feat: Cache Manager (WIP)

This PR introduces a new cache manager to the agent runtime, centralizing most of the caching logic into a dedicated manager. Currently, this implementation only covers the following caches, twitter cache, discord cache, solana cache, browser and video cache and does not include files like video, audio and other attachments.
The cache manager provides a straightforward API (still a work in progress) that uses a cache adapter. For now using a filesystem adapter to test it awaiting for feedback to start writing the schemas and db adapters.
The caching api uses a key and the agentId to index the entries allowing for multi agent caching.
We could also include in the api an extra argument for expiration.

Relates to:

#243
#258
This pr should fix this issue since the multi agent twitter caching no longer conflicts, which was likely the root cause of the bug.

Risks
medium – this affects multiple packages.

Background
What kind of change is this?
Feature: Introduces a new caching manager.
Improvements: Refactors and centralizes caching logic for multiple packages.
Bug Fix: Resolves conflicts in multi-agent Twitter caching

Documentation changes needed?
My changes require a change to the project documentation.

Testing
Where should a reviewer start?
packages/core/src/cache.ts – Review the API implementation.
packages/agent/src/index.ts – Check how the cache manager is instantiated and integrated.
packages/client-twitter/src/base.ts – Verify the usage of the cache manager API in the Twitter client.
Detailed testing steps

good idea and correct direction -  lets make this work then merge up

Added some basic tests and implemented the expiration api.
I think initialy we could go without the database adapters, starting with the filesystem should be easier to migrate too. I am building a script to help the migration.

Thanks so much for working on this! Looks like there are some typing issues that I am fixing as a part of merging in my latest changes just wanted to give a heads up

I think to prevent issues like this we need to 1) run npm run build inside of each tsup.config.ts where we changed the types so that packages/adapter-postgres/dist/index.d.ts updates properly thanks again :)


fix egrep warning

Bug
When executing make targets, it will warn for egrep errors
 make test
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E
egrep: warning: egrep is obsolescent; using grep -E

I do not think we should update the contents in boilerplate manually.

closing this PR


[SPARK-43195][BUILD][FOLLOWUP] Fix mima check for Scala 2.13

What changes were proposed in this pull request?
This pr aims to fix mima check for Scala 2.13.
Why are the changes needed?
Scala 2.13 daily test failed due to mima check failed:

https://github.com/apache/spark/actions/runs/4757950254/jobs/8455416083

Does this PR introduce any user-facing change?
No
How was this patch tested?
Manual check with this pr
dev/change-scala-version.sh 2.13
dev/mima -Pscala-2.13

check passed
[success] Total time: 39 s, completed 2023-4-21 23:41:52

Merged to master.

thanks @HyukjinKwon


Implement custom zos provider

Given that zos now has its own networks.js file (which can be modified any time), I was thinking that it would be nice to add a custom zos provider for managing connections to, for instance, infura using a mnemonic or a public key, which I believe is a very common way to connect to testnets/mainnet.
What to do
We can add 2 new fields to the Network Interface: infuraApiKey and mnemonic/privateKey and end up having something like:
  networks: {
    rinkeby: {
      infuraApiKey: 'f0758196cfd445c......e2fbb',
      mnemonic: 'jotola foo bar baz buz blabla....',
      gas: 5000000,
      gasPrice: 5e9,
      network_id: '*',
    },
    local: {
      protocol: 'http',
      host: 'localhost',
      port: 9545,
      gas: 5000000,
      gasPrice: 5e9,
      // eslint-disable-next-line @typescript-eslint/camelcase
      network_id: '4',
    },
  },

Zos will still support specifying the protocol, host and port fields, but if an infuraApiKey , mnemonic or privateKey is given, it will set the custom provider.
How to do it
The easy way
The fastest and easiest way of accomplishing this is just installing truffle-hdwallet-provider in the cli and manually generate an instance of it when the infura api key and mnemonic/private key are provided.
The not so easy way
Create our own provider using web3-provider-engine.
But why?

We will be removing a DX point of friction, which is telling the user to:

install truffle-hdwallet-provider
import it in the networks.js
set up the provider manually

We will avoid referencing an external tool in our docsite.
We will be giving a cleaner (and out of the box) solution for connecting to a testnet/mainnet.

Consider using https://github.com/machinomy/hdwallet-provider as another alternative

This can be very easily done by wrapping the http provider based on host and port with an hdwallet-provider if the mnemonic field is present in the config.

Closing this as it can already be achieved using hdwallet-provider in the config file.


Connect heroku instance to DNS

https://help.heroku.com/MTG1BIA7/how-do-i-connect-a-domain-to-my-heroku-app < instructions

Connected on http://www.monksandmages.com/
but we still need to add an https cert so that it can look official - https://github.com/lijim/monks-and-mages/issues/120


PS move light not working

So I've used the program with one controller to test it out and I decided to add a second controller but that's when problems started happening. Long story short the second controller light isn't working but the first controller light is working. Is there any fix for this?

Does it turn on under any circumstance? test rumble, etc?
What if you restart the PC (sadly, the fastest way to disconnect the controllers without screwing up the pairing) then turn them on in different order? Is it still the second-on one that won't light up? I'm just trying to rule out a hardware problem here.

With some testing, I found out that it only lights up once steam VR is running. I haven't tried restarting my PC to see if it happens but my guess is that it might not change anything.

Only one controller is used and lights up in the configuration tool.

With some testing, I found out that it only lights up once steam VR is running

By default the controllers won't light up unless a connected client tells them to. When you launch SteamVR the psmove plugin connects to PSMoveService, gets a list of all connected controllers, and turns on their lights.
The config tool also connects to PSMoveService, but won't turn on the controller light unless the specific config stage needs it for some specific use case. Most of the config tools only use the first controller (color calibration, tracker pose estimation, etc). If you want to test the light on a particular controller, the best way is to select the controller in the controller settings, and do the rumble test. When you pull the trigger in the rumble test it will also light up the controller based on the rumble amount.
Once the psmove plugin is registered with SteamVR you will see the controllers light up when you launch the config tool, but that's only because the config tool connected to SteamVR (to get the HMD position) which causes steamVR to launch, which causes steamVR to connect to psmove service as a client.


Additional NERSC installation instructions

Just opening a permanent issue in case it's useful for others. Note that the NERSC_installation.md instructions have been updated after the Cori upgrade, so I'd advice to try those first.
@akrolewski reports the following (many kudos to him!):
after the recent nersc upgrade, found that I needed to do a few more things than you had enumerated on your "nersc_installation" readme on github. (which was very helpful by the way).  I don't know how many of these issues are specific to my setup or are more generic, but I figured I'd pass this along in case it can be helpful to others (and am happy to add some notes to github as well, if you think it's useful).
These were as follows:

I couldn't get the healpix installation to work, but I instead was able to get away with using the pre-installed healpix on nersc.  This meant that my .bashrc.ext looked like the following:

export PATH=$HOME/bin:/global/common/cori/contrib/hpcosmo/hpcports_gnu-4.0/healpix-3.30.1_62c0405b-4.0/bin:$PATH
export LD_LIBRARY_PATH=$GSL_DIR/lib:/opt/cray/pe/fftw/<IP_ADDRESS>/haswell/lib:/global/common/cori/contrib/hpcosmo/hpcports_gnu-4.0/healpix-3.30.1_62c0405b-4.0/lib:$LD_LIBRARY_PATH:$HOME/lib
export LDFLAGS+=" -fopenmp -L$GSL_DIR/lib -L$HOME/lib -L/global/common/cori/contrib/hpcosmo/hpcports_gnu-4.0/healpix-3.30.1_62c0405b-4.0/lib -L/opt/cray/pe/fftw/<IP_ADDRESS>/haswell/lib"
export CPPFLAGS+=" -fopenmp -I$GSL_DIR/include -I/usr/common/software/cfitsio/3.370-reentrant/hsw/intel/include -I$HOME/include -I/global/common/cori/contrib/hpcosmo/hpcports_gnu-4.0/healpix-3.30.1_62c0405b-4.0/include"
export CC=cc

I've always found that I needed to add the following when compiling:
module load cray-fftw

(I believe the instructions in the updated NERSC_installation.md should take care of this one). When trying to set up pymaster, I ran into a bug where python couldn't find libgsl.so.19 (but the c-code namaster worked fine, it was just an issue with pymaster):
ImportError: libgsl.so.19: cannot open shared object file: No such file or directory
So I created a symbolic link to libgsl.so.23 in my $HOME/lib directory:
ln -s $GSL_DIR/lib/libgsl.so.23 libgsl.so.19

I found that while pymater worked fine on the login nodes, on the compute nodes I got the following error:
seg 0, mem 0: remap(0x555555754000,0x2000,0x2000,0x3,0x2aaaaab18000) failed, error 14
I got around this (thanks to Rollin Thomas at NERSC) by doing module unload craype-hugepages2M before compiling, and then also module unload craype-hugepages2M before running pymaster.

Problem #4 doesn't seem to affect GCC builds of NaMaster on NERSC. However, in order to get multithreading to work with GCC, I had to append -lgomp\ -fopenmp to  CFLAGS before running python setup.py install -- otherwise it would just stay on one thread.

@akrolewski : is there a NERSC ticked describing the craype-hugepages2M issue you mentioned?
I'm having similar issues with other codes, and I'd like to get to the bottom of this.

Hi, I'm from NERSC.  After the July/August upgrade we advised users to disable craype-hugepages2M when compiling extensions from source, specifically this appeared in our directions on building mpi4py against Cray MPICH.  However I believe this is no longer an issue.
Have you considered doing a build in a centralized location like /global/common/software for your users at NERSC?  The benefits would be:

Centralized installation, users no longer need to compile everything from source to use it
As the maintainers you have an idea of what they're running if they report issues
The /global/common filesystem is mounted read-only from Cori compute nodes with DVS client-side caching turned on, which helps to alleviate the slow-launch problem Python has at scale
You could provide a blessed way to use the package from Jupyter@NERSC by providing a kernel, with some of the above benefits

If you have questions please don't hesitate to ask.

Thanks a lot @rcthomas , and sorry for the slow reply.
I didn't know this was an option, but it sounds great. I'll look into it and reach out if I have questions.
Thanks!

Installation instructions updated as per #154


FFM - add Android SDK ProGuard note

What
Updates FF Android SDK docs

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65b8e50de0090edd9c9ece5e--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65b8e622e0090edcae9ecee7--harness-developer.netlify.app


Document sources (.txt) not showing the correct HEAD value in table

I have ingested some .txt files into UserData data using the standard procedure in the docs.  When showing the Document Select tab, the head column in the document sources table is showing what appears to be some truncated info.

Is this an issue with the UI or are my docs not being ingested properly?  It is possible to debug ingested data?  Appreciate any tips on where in the code to search for this as I am happy to contribute PRs if possible.    Thanks all!

You can review the entire document and how it appears in the database in the document view tab.  See what that looks like for one of those docs.

Thanks @pseudotensor,
Ok yes, I had to pull the main branch now it is working.  This helps for now.  I am still curious it appears that the head column in the sources table is showing the last 'chunk' and not the first one.   (Still learning!)


Expose immer helpers

Immer has multiple helper functions for working with drafts. Many of these are at least version dependant, so it would be good to expose them through useMethods. For example, isDraft from immer 6.0.8 (currently the latest version) will return false for drafts created by useMethods.
There are quite a few more methods exported by immer. I don't think it's a good idea to re-export everything however, as e.g. produce would be better imported straight from immer.
On a side note, I had to disable prettier in order to prevent changes to unrelated parts of the code.

Hm, I don't see the value of this. If the library isn't using these things then it shouldn't have to care about them. As far as version compatibility, if the user is going to use break the abstraction and use immer functionality directly, it's incumbent on them to ensure that a consistent version of immer is used across the whole app; bundling 2 different versions would be undesirable in any case.

The value for us was mainly in exporting original. We have a very large reducer maintaining the state of an editor. Some callbacks would warrant the previous content (held in the state) to be pushed to a history array for undo / redo. However, to make sure nothing had been changed during the call it would have been nice to push original(draft).content. We got around it, but there are uses for them.

While bundling 2 different versions is indeed undesirable, I would rather have a bundle that is a few kilobytes larger than an app that breaks. Also, I may have multiple versions anyway since different packages may depend on different versions of immer.


proposal: io: CopyBuffer should avoid ReadFrom/WriteTo

Currently, io.CopyBuffer uses WriteTo if the src supports it and ReadFrom if the dst supports it, presumably to avoid an allocation.
The problem is that there exist certain io.ReaderFrom that are not efficient 100% of the time. For example, consider the following implementation of ReadFrom:
type myWriter struct {
    w io.Writer
}

func (mw *myWriter) ReadFrom(src io.Reader) (int64, error) {
    if r, ok := mw.w.(io.ReaderFrom); ok {
        return r.ReadFrom(src)
    }
    return io.Copy(struct{ io.Writer }{mw}, src)
}

This is unfortunate as myWriter satisfies the io.ReaderFrom interface, but it's implementation is no better than io.Copy (always incurring an allocation) in some circumstances.
In the case of io.CopyBuffer, I would argue that the user's expectation is that the buffer passed in is always used. It has the detriment of an extra copy, but I believe the cost of that is much lower than the allocation that is already saved by the user providing the buffer. It main benefit is that it avoids any shenanigans that occur because of inefficient implementations of io.ReaderFrom and io.WriterTo.
Alternative is to do anonymous struct value hack:
io.CopyBuffer(struct{ io.Writer }{dst}, struct{ io.Reader }{src}, buf)

But, this hack is not intuitive to most people.
Filed on behalf of @jkji

Why would someone implement io.ReaderFrom or io.WriterTo if they are inefficient? Seems really backwards to me.
I see what you mean with the buf. Why pass a buffer if io.CopyBuffer will just end up calling io.ReaderFrom?

ReaderFrom does not have to be horribly inefficient, but it can be inefficient enough for the CopyBuffer caller to care. In my case, this was severely reducing the file transfer rate but it might be totally fine for some other application. Someone probably added it for a different use case, without realizing the side effects on CopyBuffer.
Conceptually, it seems that ReaderFrom should have a buffer argument and ignore it if it is not needed or nil. Efficient buffer-less ReaderFrom implementation sounds like a rare beast to me.

Well we can't really change this now. Perhaps in Go 2?

@nhooyr, how do you see this as a Go 1 compatibility issue? Whether io.CopyBuffer chooses to use ReadFrom or WriteTo or not does not alter the correctness of the function. It's primarily a question of performance.
Part of the problem is that io.ReaderFrom and io.WriterTo doesn't document anything about needing to be "efficient" (however that is defined), so there are many implementations of them that are sub-par compared to the case where io.CopyBuffer just used the user provided buffer only.

He said that io.ReaderFrom should have a buffer argument that should be ignored if it is not needed or nil. That cannot happen without breaking Go 1 Compatibility. Perhaps it should be better documented but the whole point of io.ReaderFrom is to not use a buffer. To write it directly like say sendfile(2).
Furthermore, a lot of code relies on theio.Copy functions using the io.ReaderFrom interface to optimize. Its documented behaviors that io.CopyBuffer behaves identically to io.Copy except it stages through the provided buffer rather than allocating a temporary one. By changing io.Copy or io.CopyBuffer we may break this documented behaviour that go programs may rely on.
I definitely agree though, I find it unintuitive that io.CopyBuffer doesn't always use the passed buffer, but because io.Copy using io.ReaderFrom or io.WriterTo is documented behavior, it breaks the Go 1 compatibility promise.

CopyBuffer is identical to Copy except that it stages through the provided buffer (if one is required) rather than allocating a temporary one.

Its documented behavior that io.CopyBuffer behaves identically to io.Copy except it stages through the provided buffer rather than allocating a temporary one. By changing io.CopyBuffer we may break this documented behaviour that go programs could rely on.
Fair argument.

@nhooyr, thanks for the clarification. Backwards compatibility argument makes sense, that's why I said "conceptually" ;)

Just noting here that strings.Reader.WriteTo is another example of an implementation of io.WriterTo that is not efficient in all circumstances.
It relies on io.WriteString, which only calls WriteString if the underlying writer supports it. Otherwise, it causes a (potentially large) allocation to convert the string to a []byte.
Related to #13848, which is intended to help alleviate the issue.

@dsnet Is this an actual bottleneck in something that can't be fixed without stdlib changes?

My original post contained the hack to get around this issue:
io.CopyBuffer(struct{ io.Writer }{dst}, struct{ io.Reader }{src}, buf)

It's just not an intuitive hack to most people. Secondly, the need for it doesn't become obvious until a pprof indicates that io.CopyBuffer is spending significant amounts of time and allocations.

@dsnet Was it ever an observed bottleneck in a real, otherwise well-written, system?

Yes, #13848 was filed when I observed a large string was unnecessarily being copied.
This issue was filed on behalf of someone who noticed performance issues in an internal system.

Haha, I just got bitten by this. In tlsmuxd I was copying between two TCP connections with io.CopyBuffer. I expected it to use my buffer from my bufferPool but it turns out that *net.TCPConn has the ReadFrom method for sendfile. However, since it was reading from a net.Con sendfile did not apply and it fell back to io.Copy. Consequently, my buffer was unused and there was a buffer allocation in io.Copy.
I've retracted my original view because I think that this is extremely subtle, unintuitive and I cannot imagine anyone who passes in a buffer to io.CopyBuffer but does not expect it to be used. I understand that it was documented to behave just like io.Copy, but why would you pass in a buffer if you aren't sure it will be used? It just doesn't make much sense.

Not performance related, but http://golang.org/cl/31174 is another case where the behavior of io.CopyBuffer was unexpected. The test relied upon copied being done in specific chunk sizes.

I'm beginning to think that this issue calls into question the value of CopyBuffer entirely. If callers want an unconditional buffer, they can wrap the Reader in a bufio.Reader of appropriate size, which implements io.WriterTo and thus always wins the magic-method contest in io.Copy.
io.CopyBuffer only adds value if it is conditional, but the fact that it is conditional is what makes it so subtle to use.

I want to note that in 1.15 this issue is going to apply to os.File, which acquired a ReadFrom method in https://golang.org/cl/229101.

Another report: #56742.

A related proposal: #58331.

#66988 is related: Adding *os.File.WriteTo with a fast path for sendfile/splice and a fallback to io.Copy results in us missing the fast path in *net.TCPConn.WriteTo.


Revert gallop code

There were some very rare bugs in the logic that would cause the
tim_sort_merge_left function to go out of bounds. It is also possible
that it was causing the sort to be non-stable.
Thanks to Emanuel Falkenauer for finding the bug.
I'm reverting the gallop code for now due to the extra complexity. We
can add it back in later if we can possibly simplify and verify the
logic carefully.
cc @liwt31

I'm terribly sorry for introducing a bug in the codebase. Please feel free to revert the commit and I'll try my best to figure out what's wrong when I got some spare time.

It happens to all of us @liwt31 so no worries :)


chore: add deprecations to p2p-webrtc-star, p2p-webrtc-direct, and p2…

…p-stardust

@achingbrain @mxinden I can't assign you as reviewers but ptal

Not a strong opinion on the status field change. See also https://github.com/multiformats/multicodec#status.

@p-shahi @mxinden : we have two approvals.  Can one of you handle merging?  (This came up during IPLD triage.)

Would it make sense to change the status column from draft to deprecated?

Done.


[0.9.x] Create the AbstractInvitation class.

Fixes issue #1 for v 0.9.x
This is the same patch that was applied to master (#6), with some slight alterations to make it work with the older version of the code.
I installed this to the editor on digidev01 to test it out. It works great from what I can tell. I did a password reset and verified that it was not visible on the home page of the app.
In order to upgrade other installations with this patched version we will need to drop the existing invite_passwordresetinvitation table. Then we can run syncdb and Django will create this table sans table inheritance.
Once this is merged in we can tag 0.9.1 and install where needed.

FYI: CI will fail here. Travis is only knows how to test the code prior to version 1.0.0.

@ldko, just added the __unicode__  back in.

:+1:


Qiskit Website Died

404 Not Found: Requested route ('qiskit-web-test.s3.us-east.cloud-object-storage.appdomain.cloud') does not exist.

Website is back up, and so is the textbook. Thanks for posting this!


Remove ID's from some error messages

What's this PR do?

Removes unique ID's for some error messages to cleanup our Stathat stats.
Adds a middleware function to the /campaigns/:id/message router to separate error handling logic of rendering message vs sending message

How should this be reviewed?
Post to /campaign/6620/message locally with types:

scheduled_relative_to_reportback_date - Should return a 422 and post stat 'gambit-dev - 422: Contentful msgType:scheduled_relative_to_reportback_date is not defined for default Campaign.'
scheduled_relative_to_signup_date - Should return a 200 and post stat 'gambit-dev - campaignbot:scheduled_relative_to_signup_date

Any background context you want to provide?
I've been clearing out all of the stats with phone numbers by manually deleting them -- you can peek at quite a few in the trash while they're there for the next 48 hours.
Relevant tickets
Fixes #888
Checklist

[ ] Tested on staging.

Codecov Report

Merging #889 into develop will decrease coverage by 0.01%.
The diff coverage is 0%.

@@             Coverage Diff             @@
##           develop     #889      +/-   ##
===========================================
- Coverage    12.86%   12.84%   -0.02%
===========================================
  Files           22       22
  Lines         1073     1074       +1
===========================================
  Hits           138      138
- Misses         935      936       +1

Impacted Files
Coverage Δ

lib/phoenix.js
0% <0%> (ø)
:arrow_up:

app/models/Signup.js
0% <0%> (ø)
:arrow_up:

app/routes/campaigns.js
0% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Iframe with vite

Steps for using iframe:

Switch useTina hook to come from tinacms/dist/react
Remove Tina code in _app.js
Remove /pages/admin if you have set that up (as it will no longer work)
Export defineConfig as the default export from .tina/config.ts (this is really awkward right now, see the starter PR for an example)
When viewing a document in the admin, if it returns a value for route mapper you'll be taken to the preview version of it
You'll need to visit the route including the index.html file, so /admin/index.html. If you want things to work with just /admin you'll need to update your next.config.js to handle it. This will be a framework-specific step so I hope we can avoid automating this and just point users to the index.html.

module.exports = {
  async rewrites() {
    return [
      {
        source: "/admin",
        destination: "/admin/index.html",
      },
    ];
  },
};

the only thing I wanted to ask about was the content changes in the monorepo starters

Good point, I'll undo those. It's going to be kind of a pain until we make this the happy path. Maybe I'll make another example that's dedicated to this pattern.

there is a fair amount of this that I don't have a lot of understanding of in this PR

I did this move now because this part is subtly different from what we have in our formify logic now, we have things like unmounting and registering forms happening at different times. And then I moved a few bits of logic to the schema-tools because we've been wanting to do that, but it's just moving them the formify logic at this point.

This might not be a bug but a bit of a strange behaviour (Maybe we are aware of it. ).

Make a content change.
Navigate away
Content change gets wiped without the user knowing.

See video: https://www.loom.com/share/0aa05d475b1641259837e7df3fb67f77
We might want to consider having a popup for when the user navigates away? or maybe this will be solved better when we do more stuff with multiple forms?

Yeah we might still be able to do this by moving the unmount logic to the new useTina hook, but it feels like this might all be part of a larger conversation about form state. I didn't want to implement new logic for this but keeping the old behavior isn't really doable.

Looks like there is an issue where it is hardcoded to tina, instead of looking at the value of the output folder?
See https://www.loom.com/share/9b7e13d005a54d21a0d959c4ba73e135
See

https://github.com/tinacms/tinacms/blob/d50a3acd1bb6a0da3e6a2833090c7ae7154b71e6/packages/%40tinacms/toolkit/src/packages/fields/components/Reference/ReferenceLink.tsx#L97
https://github.com/tinacms/tinacms/blob/d50a3acd1bb6a0da3e6a2833090c7ae7154b71e6/packages/%40tinacms/toolkit/src/packages/react-sidebar/components/Sidebar.tsx#L521


Yuukyuu no Tierblade: Lost Chronicle [PCSG00808]

App summary

App name:  悠久のティアブレイド -Lost Chronicle-
App serial: PCSG00808
App version: 1.00

Vita3K summary

Version: v0.1.6 2851
Build number: 2851
Commit hash: https://github.com/vita3k/vita3k/commit/739c5cc
CPU backend: Dynarmic

Test environment summary

Tested by: salmhofer
OS: Windows 10
CPU: Intel Core i5-8400
GPU: NVIDIA GeForce GTX 1050 Ti
RAM: 8 GB

Issues
game crashes at a certain point in chapter 2 but works normally before it
Screenshots

Log
vita3k.log
Recommended labels
dynarmic crash
ingame -

this is already exist https://github.com/Vita3K/compatibility/issues/549


this operator is not allowed in an integral constant expression

compiling environment :    IAR 8.50.9
An error is displayed:
void ush_autocomp_check_for_finish(struct ush_object *self)
{
char abs_path[self->desc->path_max_length];
..................
}
Error[Pe060]: this operator is not allowed in an integral constant expression
PATJ:  mcushell\src\ush_autocomp_utils.c 72
In several function interfaces, the definition of a character array prompts a similar error。

The problem can be solved in this way:
https://stackoverflow.com/questions/19519900/ewarm-compilation-error-expression-must-have-a-constant-value


CNI file permissions based on CIS Benchmarks

CNI-related CIS Benchmarks include:
1.1.9	Ensure that the Container Network Interface file
permissions are set to 600 or more restrictive.
Tests:

Running "make test" in 'cni-plugin' directory successfully
Delpoying Calico-node and Calico-Kube-controllers pods successfully
Ensure /etc/cni/net.d/10-calico.conflist file permissions is set to 600
Ensure Calico plugin is listed under '/opt/cni/bin/'

Related issues/PRs
https://github.com/projectcalico/calico/issues/7461
Todos

[ x] Tests
[ ] Documentation
[x] Release note

Release Note

Adjust CNI config file permissions to satisfy CIS benchmark expectations.

Reminder for the reviewer
Make sure that this PR has the correct labels and milestone set.
Every PR needs one docs-* label.

docs-pr-required: This change requires a change to the documentation that has not been completed yet.
docs-completed: This change has all necessary documentation completed.
docs-not-required: This change has no user-facing impact and requires no docs.

Every PR needs one release-note-* label.

release-note-required: This PR has user-facing changes. Most PRs should have this label.
release-note-not-required: This PR has no user-facing changes.

Other optional labels:

cherry-pick-candidate: This PR should be cherry-picked to an earlier release. For bug fixes only.
needs-operator-pr: This PR is related to install and requires a corresponding change to the operator.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

/sem-approve

Looks like a handful of tests failing in the CNI package with errors like these:
------------------------------36:09
• Failure [0.960 seconds]36:09
CNI installation tests36:09
/go/src/github.com/projectcalico/calico/cni-plugin/pkg/install/install_test.go:15836:09
  should use CNI_NETWORK_CONFIG_FILE over CNI_NETWORK_CONFIG [It]36:09
  /go/src/github.com/projectcalico/calico/cni-plugin/pkg/install/install_test.go:32136:09
 36:09
  failed to read file /tmp/cni-install-ut-4151388086/net.d/10-calico.conflist36:09
  Unexpected error:36:09
      <*fs.PathError | 0xc00059e2d0>: 36:09
      open /tmp/cni-install-ut-4151388086/net.d/10-calico.conflist: permission denied36:09
      {36:09
          Op: "open",36:09
          Path: "/tmp/cni-install-ut-4151388086/net.d/10-calico.conflist",36:09
          Err: <syscall.Errno>0xd,36:09
      }36:09
  occurred36:09
--36:13
••36:13
------------------------------36:13
• Failure [0.828 seconds]36:13
CNI installation tests36:13
/go/src/github.com/projectcalico/calico/cni-plugin/pkg/install/install_test.go:15836:13
  copying /calico-secrets36:13
  /go/src/github.com/projectcalico/calico/cni-plugin/pkg/install/install_test.go:36236:13
    Should copy a non-hidden file [It]36:13
    /go/src/github.com/projectcalico/calico/cni-plugin/pkg/install/install_test.go:37736:13
 36:13
    Unexpected error:36:13
        <*fs.PathError | 0xc000614a80>: 36:13
        open /tmp/cni-install-ut-2865909681/net.d/10-calico.conflist: permission denied36:13
        {36:13
            Op: "open",36:13
            Path: "/tmp/cni-install-ut-2865909681/net.d/10-calico.conflist",36:13
            Err: <syscall.Errno>0xd,

Just a small FYI missa-wndrvr will be away until Aug. 6 2024 but will address any comments upon his return.

I can see the 5 test cases related to reading "10-calico.conflist" run by the function "runCniContainer" failing. Could I get some feedback or assistance on this?
Is there a way to give permissions to that function to be able to read/write as the owner of the file since it's a temp file created for testing purposes?
Also, for my own knowledge, why does it not have the necessary permissions to read the file since it was created in the test run? Does this unit test failure signify that it might affect other people's deployments or is it only related to how the test case was written?

@missa-wndrvr sorry for the delay.
My understanding is that the tests are running the calico-cni container, which writes a 10-calico.conflist file with the new permissions.
It then attempts to open that file to check its contents are expected, but it unable to do so because the test container isn't running with the right user / group to read the file.
Suspect that this is probably mostly a test harness artifact, although in theory in real clusters other agents on the node (i.e., container runtimes) do need to read this file so will need to have permissions to do so.

Thanks for the reply @caseydavenport. I was able to deploy the Calico pods with the permission change on my system which was successful in which any resource that needed access to the file was able to get it (if they had the necessary permissions)
How else would you suggest I test this to ensure it doesn't affect other agents in real clusters, so that we can verify that this might just be a test harness conflict?

How else would you suggest I test this to ensure it doesn't affect other agents in real clusters

I don't think we can guarantee this, so will have to live with the risk (or keep the permissions as they are). To mitigate this, the thing to do is probably to look at the most popular container runtimes and kuberentes cluster installers to see how the runtimes are configured and if they will by default have permissions to access the CNI config file. I am not too worried about this aspect.
We do need to get the tests passing, though. For that we probably need to adjust the group that the tests are running under such that the test code can read the generated configuration file.

Please re-review

/sem-approve

Thanks @missa-wndrvr !

@missa-wndrvr @caseydavenport can we take this PR in? We are also waiting for this patch

/sem-approve

Looks like the PR is failing code formatting checks - running make fix-all should clean it up.
@@ -306,8 +306,8 @@ func isValidJSON(s string) error {02:28
 02:28
 // Convert permission string to fileMode for testing purposes02:28
 func stringToFileMode(permString string) (os.FileMode, error) {02:28
-        perm, err := strconv.ParseUint(permString, 8, 32)02:28
-        return os.FileMode(perm), err02:28
+	perm, err := strconv.ParseUint(permString, 8, 32)02:28
+	return os.FileMode(perm), err02:28
 }02:28
 02:28
 func writeCNIConfig(c config) {02:28
@@ -390,9 +390,9 @@ func writeCNIConfig(c config) {02:28
 	permString := getEnv("TEST_FILE_PERMISSION", "0600")02:28
 	logrus.Infof("CNI config file permission is set to %s\n", permString)02:28
 	perm, err := stringToFileMode(permString)02:28
-        if err != nil {02:28
-                logrus.Fatal(err)02:28
-        }02:28
+	if err != nil {02:28
+		logrus.Fatal(err)02:28
+	}02:28
 02:28
 	name := getEnv("CNI_CONF_NAME", "10-calico.conflist")02:28
 	path := winutils.GetHostPath(fmt.Sprintf("/host/etc/cni/net.d/%s", name))

Thanks @caseydavenport for the quick response. @missa-wndrvr would you please push the change or if you need help I can do it as well?

Hello @kashifest, sorry I got caught up with other things. Please go ahead, and thank you!

Removing "merge-when-ready" label due to new commits

/sem-approve

Pushed a formatting fix.

@caseydavenport the PR now shows that is has 214 commits ?

@kashifest oh shoot. I must have messed up the merge! I'll fix it :laughing:

Removing "merge-when-ready" label due to new commits

/sem-approve

thanks a lot @caseydavenport for the quick response.


Kernel Panic when VM is running

Describe the issue
When letting a Windows 11 for ARM virtual machine running in another desktop while doing some other stuff on the main OS, after a few minutes or some random time period, the screen goes purple for a second and the computer immediately shuts down (kernel panics).
Configuration

UTM Version: 3.1.5
OS Version: macOS 12.3.1
Intel or Apple Silicon? Apple Silicon (M1, 2020)

Crash log
N/A
Debug log
Kernel Panic Log (Mac Analytics)
Kernel Panic Full Log (Diagnostic Report)
Upload VM
config.plist.zip

It all leads to a restart and to this after I log in:

It happened again.

This log was also taken at the time of the kernel panic.
{"bug_type":"115","timestamp":"2022-04-08 22:49:26.00 +0300","name":"Reset count","os_version":"macOS 12.3.1 (21E258)","incident_id":"0ED11E3A-C508-4DE5-8290-835ABAFAB461"} Incident Identifier: 0ED11E3A-C508-4DE5-8290-835ABAFAB461 CrashReporter Key:   82E82D5D-FDDD-BF31-EB68-D4E90BAD3301 Date: 2022-04-08 22:49:26.53 +0300 Reset count: 1 Boot failure count: 0 Boot faults:  Boot stage: 0 Boot app: 0

Have you fixed it? It happened to my mac many times.

Nope.

This appears to be an macOS bug. Are you using an external ethernet adapter?

Are you using an external ethernet adapter?
No, using Wi-Fi only.

This appears to be an macOS bug.
Well, the issue only occurred when UTM was open. Not saying you could be wrong, but what do I need to do to get this in Apple’s eyesight then? Feedback Assistant has a history of being useless for reporting crashes to me.

Can you try using emulated network and see if you still get it?

How can I do that? Do I change Shared Network with Emulated VLAN in Settings > Network?

Yes

Okay, thanks. I'm going to analyse this for a bit (it doesn't crash immediately) and hopefully the issue is fixed, then I'll come back with the results.

It didn't seem to happen again, so I'm going to close this issue, and will eventually reopen it if needed.