text:
Access to Gamecube settings - RG353M - ArkOS

Evening Christian.
I've had a scout on the wiki and reddits , tried all button inputs. is there something I am not doing correctly ?
I'm trying to access the settings from within a gamecube rom to try frameskip
RG353M latest ArkOS revision - It's managed surprisingly well in a few titles and I want to try messing with frameskip settings etc
Thanks again for all the hard work, I'm using ArkOS exclusively now

The gamecube emulator is dolphin standalone so there are no settings to access from a menu like retroarch.  frameskip is already on but if you'd like to change settings, you can do so via ssh by modifying /home/ark/.local/share/dolphin-emu/Config/Dolphin.ini.  You can also try changing some options in /home/ark/.local/share/dolphin-emu/Config/GFX.ini.  If you find some setting changes that seems beneficial, feel free to share here.  Thanks,

thankyou Christian I will continue testing (mainly 2d) and I will post configs for the arkOS crew once finished !

authors: christianhaitian paladinperry

repo: christianhaitian/arkos


text:
OGA 1.1 BE - Wifi setting does not work after updating

Describe the Issue (If applicable)
'OPTIONS > WIFI' does not work after updating in OGA 1.1 (BE)
How can the issue be reproduced? (If applicable)

Download and flash arkos image to t-flash : ArkOS_RGB10_v2.0_10062023.img.xz
After the first boot, setup wifi and update
Reboot and re-run "OPTIONS > WIFI"
Can't run it

What device are you using?
Odroid Go Advance 1.1 (BE)
What version of ArkOS are you on?
Base : ArkOS_RGB10_v2.0_10062023.img.xz
After updated : 12082023
Anything else you'd like to include that may help to review this issue or feature request?
It shows following message:
"Rga built version:version:+2017-09-28 10:12:42"
After commenting 'setfont' lines in /opt/system/Wifi.sh, it works well.

Thanks for reporting the issue.  I will address this in a future update.  For now, restoring the following backup file should fix the issue for OGA, RGB10 and RK2020 devices.

Take the attached compressed file (arkosbackup.tar.gz) and put it in your roms/backup folder. Do not uncompress the contents! Just place the file as is in your roms/backup folder. If you don't have a backup folder in the roms folder, just create it.

Then go into the Emulationstation Menu, scroll to Options, hit A, then go to Advanced, hit A, then scroll all the way down to Restore Settings, hit A.

Once completed, you should be able to launch the Wifi script without issue and should resolve some other unusual text issues.

arkosbackup.tar.gz

Thanks, it works well.

I've include this with the update that was released yesterday.  Thanks again.

source: gharchive/issue

authors: christianhaitian ommokazza

license: MIT

license_type: permissive

license_source: github-api


text:
Add SGR 51, framed.

Implements SGR 51 and draws a frame around each glyph. Tested using shell command
echo -e "Hello \e[51mFramed\e[54m" and not
Currently the result looks like in the image below where each letter is surrounded by a box.

Is this the desired result or should it be more like
      ----------
Hello | Framed | and not
      ----------

I'm not sure how to do the second version.

Many thanks for your contribution.
The second could be achieved using cell attributes grouping. I do that already to optimize performance for background renders as well as for proper text shaping.
But I think the first version is right. Although it looks like the lines are too thick? What's the pixel line width?

Many thanks for your contribution.
The second could be achieved using cell attributes grouping. I do that already to optimize performance for background renders as well as for proper text shaping.
But I think the first version is right. Although it looks like the lines are too thick? What's the pixel line width?

I think this is due to drawing the right line of 1 box and the left line of the adjacent box. The thickness of the lines are
auto const thickness = max(lineThickness_ * baseline / 3, 1u);

Hey,
I managed to make it look slightly more interesting:

with the following diff:
diff --git a/src/terminal_view/DecorationRenderer.cpp b/src/terminal_view/DecorationRenderer.cpp
index f119c94..cb0ca6b 100644
--- a/src/terminal_view/DecorationRenderer.cpp
+++ b/src/terminal_view/DecorationRenderer.cpp
@@ -188,20 +188,21 @@ void DecorationRenderer::rebuild()
     } // }}}
     { // {{{ framed
         auto const cellHeight = screenCoordinates_.cellHeight;
-        auto const thickness = max(lineThickness_ * baseline / 3, 1u);
+        auto const thickness = max(lineThickness_ * width / 20, 1u);
         auto image = atlas::Buffer(width * cellHeight, 0u);
+        auto const gap = thickness;

         // Draws the top and bottom horizontal lines
-        for (unsigned y = 0; y < thickness; ++y)
-            for (unsigned x = 0; x < width; ++x)
+        for (unsigned y = gap; y < thickness + gap; ++y)
+            for (unsigned x = gap; x < width - gap; ++x)
             {
                 image[y * width + x] = 0xFF;
                 image[(cellHeight - 1 - y) * width + x] = 0xFF;
             }
-
+
         // Draws the left and right vertical lines
-        for (unsigned y = 0; y < cellHeight; y++)
-            for (unsigned x = 0; x < thickness; ++x)
+        for (unsigned y = gap; y < cellHeight - gap; y++)
+            for (unsigned x = gap; x < thickness + gap; ++x)
             {
                 image[y * width + x] = 0xFF;

The smaller the font, the lesser obvious it is that those frames are disconnected. I don't think that's an issue at all, because I think that one would want to make only a single cell framed, and multiple connected ones at once (unless it is for TUI debugging or so? :D)
You can apply that diff on top of your PR.

Wow nice, you are still awake. If you feel ready, just move out of draft mode.

We've merged it behind the wall of Github.

source: gharchive/pull-request

authors: christianparpart gitabaz

repo: christianparpart/contour


text:
Cannot navigate from Vim/NeoVim->Tmux pane.

OS:                            macOS 10.13.6
Terminal Emulator:  Terminal.app
Tmux version:           2.7
Vim version:             8.1.50
Neovim version:       0.3.0
Runnning :TmuxPaneCurrentCommand in Vim yields:
Error detected while processing function <SNR>14_TmuxPaneCurrentCommand[1]..<SNR>14_TmuxCommand:
line    2:
E484: Can't open file /var/folders/4s/c_cfrv5n2xn1x6slyztzlhqm0000gn/T/vs65BjQ/0

Runnning :TmuxPaneCurrentCommand in NeoVim yields:
/usr/local/bin/bash: tmux -S /private/tmp/tmux-501/default display-message -p '#{pane_current_command}': No such file or directory

Searching for \vn(nore)?map\s+\<c-[hjkl]\> in .vimrc yields no results.

Hi @dmhenry, sorry to hear about the issues here. Unfortunately the docs had gotten a bit out of date and : TmuxPaneCurrentCommand is no longer relevant, but I've just pushed a change which replaces that with a new debug command, :TmuxNavigatorProcessList which will debug against the actual command specified in the readme.
Can you pull current master and then run :TmuxNavigatorProcessList and copy the process list? We'd expect to see vim somewhere in the list.
Additionally, can you share what version of the tmux configuration you're using? You can just copy & paste the relevant section from your .tmux.conf.

Hi @christoomey, thanks for responding. I ran :TmuxNavigatorProcessList in both Vim and NeoVim with similar results. I did git pull from master. I even reinstalled tmux from Homebrew and reduced my .tmux.conf down to just what's needed for TPM:
set-option -g @plugin 'tmux-plugins/tpm'
set-option -g @plugin 'christoomey/vim-tmux-navigator'
run '~/.tmux/plugins/tpm/tpm'

OS:                            macOS 10.13.6
Terminal Emulator:  Terminal.app
Tmux version:           2.7
Vim version:             8.1.50
Neovim version:       0.3.0
Runnning :TmuxNavigatorProcessList in Vim yields:
Error detected while processing function <SNR>14_TmuxNavigatorProcessList[1]..<SNR>14_TmuxCommand:
line    2:
E484: Can't open file /var/folders/4s/c_cfrv5n2xn1x6slyztzlhqm0000gn/T/vkn91cj/0

Runnning :TmuxNavigatorProcessList in NeoVim yields:
/usr/local/bin/bash: tmux -S /private/tmp/tmux-501/default run-shell 'ps -o state= -o comm= -t ''''#{pane_tty}''''': No such file or directory

Hi @christoomey, thanks for responding. I ran :TmuxNavigatorProcessList in both Vim and NeoVim with similar results. I did git pull from master. I even reinstalled tmux from Homebrew and reduced my .tmux.conf down to just what's needed for TPM:
set-option -g @plugin 'tmux-plugins/tpm'
set-option -g @plugin 'christoomey/vim-tmux-navigator'
run '~/.tmux/plugins/tpm/tpm'

OS:                            macOS 10.13.6
Terminal Emulator:  Terminal.app
Tmux version:           2.7
Vim version:             8.1.50
Neovim version:       0.3.0
Runnning :TmuxNavigatorProcessList in Vim yields:
Error detected while processing function <SNR>14_TmuxNavigatorProcessList[1]..<SNR>14_TmuxCommand:
line    2:
E484: Can't open file /var/folders/4s/c_cfrv5n2xn1x6slyztzlhqm0000gn/T/vkn91cj/0

Runnning :TmuxNavigatorProcessList in NeoVim yields:
/usr/local/bin/bash: tmux -S /private/tmp/tmux-501/default run-shell 'ps -o state= -o comm= -t ''''#{pane_tty}''''': No such file or directory

@blueyed
I checked out #201. It does fix the Vim->Tmux navigation problem, but breaks navigation between Vim splits, at least for me.

Pity.  Vim I assume?

breaks navigation between Vim splits within a Tmux pane

So the normal C-w h/j/k/l?  What mappings are you using?
You can check tmux show @tmux_navigator to see which panes are registered for Vim.
Let's move the discussion to #201 maybe though.

I'm having problems with this too... but I'm in Linux, and I do get vim on the :TmuxNavigatorProccessList... This is the output of it:
S zsh
S AppRun
Z nvim <defunct>

I'm also using Neovim... Any suggestions on how to fix it?... I work mostly remotly so this issue has been a really pain for me since I'm almost always inside tmux
c-w [h,j,k,l,] Does work, but is longer to type and is not the natural way for me to do it... I sure you understand what I mean haha

@agusdmb
Please try #201 also - it is supposed to be faster and more robust.

authors: agusdmb blueyed christoomey dmhenry

repo: christoomey/vim-tmux-navigator

license: mit

license_source: bigquery


text:
feat(info panel adjustments): info panel adjustments

info panel adjustments

:tada: This PR is included in version 1.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

repo: christopher-h-johnson/react-discovery


text:
streaming=True memory usage

Should switch to use chunk = memoryview(self._buf)[:size] in _common.py and chunk_mv = memoryview(chunk) in _azure.py.

Should also check if https://github.com/christopher-hesse/blobfile/pull/159 is faster with NPOT sized buffers (or lots of single bytes writes)

bytearray:
import time
from blobfile._common import BaseStreamingWriteFile

class TestFile(BaseStreamingWriteFile):
    def _upload_chunk(self, chunk: memoryview, finalize: bool) -> None:
        pass

def main():
    N = 2**17
    b = b"x" * 10

    f = TestFile(conf=None, chunk_size=8 * 2**20)
    start = time.time()
    for i in range(N):
        f.write(b)
    end = time.time()
    print(f"write elapsed {end - start}")

if __name__ == "__main__":
    main()

before:
python misc\blobfile_dev\write_speed.py
write elapsed 9.351279497146606

after:
python misc\blobfile_dev\write_speed.py
write elapsed 0.059172868728637695

import resource
import blobfile as bf

def max_mem_usage() -> int:
    return resource.getrusage(resource.RUSAGE_SELF).ru_maxrss * 1024

def main():
    bf.configure(azure_write_chunk_size=2**20)
    streaming = False
    print(f"streaming={streaming}")
    prev = max_mem_usage()
    contents = b"x" * (10 * 2 ** 20 + 1)
    cur = max_mem_usage()
    print(f"{cur - prev:,}")
    prev = cur
    with bf.BlobFile("az://cshteststorage2/testcontainer2/upload.bin", "wb", streaming=streaming) as f:
        f.write(contents)
    cur = max_mem_usage()
    print(f"{cur - prev:,}")

if __name__ == "__main__":
    main()

before:
 python misc/blobfile_dev/memory_usage.py
streaming=True
10,489,856
15,503,360
(blobfile) >  p python misc/blobfile_dev/memory_usage.py
streaming=False
10,489,856
5,038,080

after:
python misc/blobfile_dev/memory_usage.py
streaming=True
10,489,856
2,920,448
(blobfile) >  p python misc/blobfile_dev/memory_usage.py
streaming=False
10,489,856
5,050,368

@hauntsaninja I ended up using more memoryviews + bytearray when not doing a single large f.write(), does this look good to you?   https://github.com/christopher-hesse/blobfile/compare/1.2.0...master

It does look good to me! Thanks for making these improvements.
One note is that you can annotate an argument as bytes and type checkers will accept passing memoryview / bytearray automatically (similar to how type checkers allow you to pass an int to a float, even though ints are not floats). I mention this because it can help guard against the one sometimes bug causing thing about memoryviews: that they can allow you to mutate the original object.
(Also I guess you could do chunk = memoryview(buf)[:size] on L553 and self._buf = bytearray(memoryview(b)[size:])) on L580 if you wanted to be explicit about which copies we're eliding / make _upload_buf really not care whether the input is exactly a memoryview or not)

It looks like my super old version of pyright doesn't accept that, and upgrading it would be a pain :(

repo: christopher-hesse/blobfile

license: Unlicense


text:
Can't stop a test

From AP-4247
When I start a test and wait for the test to get to the "Testing stories" step, I can't stop a test. I am able to start and stop tests on the previous steps (Building, uploading). As you might notice, the expanded description also doesn't match. I'll do some digging to see when that bug started.

Here is a proposal of what we should do when a user clicks at a stage we can no longer interrupt:

And here is the source document

authors: MichaelArestad ghengeveld

repo: chromaui/addon-visual-tests


text:
How to connect with a chrome browser already open?

Hi, I used to use the tebeka package before and I was able to manipulate multiple open browsers via session_id. But in chromedp I'm a bit lost and I don't see how I can do it.
I use windows 10 and golang 1.20.2
Thx.

See https://github.com/chromedp/examples/blob/master/remote/main.go.

See https://github.com/chromedp/examples/blob/master/remote/main.go.

Thanks, but I want to capture "devtools-ws-url" and then use it in "NewRemoteAllocator". Basically, I want to do the following:
func open_chrome() string{
.....
return devtools_ws_url
}
func send_command(url string){
....
}
Any better ideas?

Then you can use chromedp.NewExecAllocator. It will start a browser for you. There are many examples in https://github.com/chromedp/examples. Please take a look and read the doc first. Thank you!

Then you can use chromedp.NewExecAllocator. It will start a browser for you. There are many examples in https://github.com/chromedp/examples. Please take a look and read the doc first. Thank you!

I have not explained myself well, I hope now I do. :)
func open_chrome{
o := append(chromedp.DefaultExecAllocatorOptions[:],
chromedp.ExecPath("./chrome.exe"),
chromedp.Flag("enable-automation", false),
chromedp.Flag("headless", false),
)
cx, _ := chromedp.NewExecAllocator(context.Background(), o...)

ctx, _ := chromedp.NewContext(cx)
err := chromedp.Run(ctx,
	chromedp.Navigate("https://www.website.com"),
)

devtoolsWsURL := ???? /// How to capture it?

}

why do you want to get devtoolsWsURL?

I want to open multiple browsers and then communicate with them via resp api, send commands, close etc...

resp api

What is this?

send commands, close etc...

You can use chromedp to do this. We call them actions in chromedp. And actions are executed with chromedp.Run.

resp api

What is this?

send commands, close etc...

You can use chromedp to do this. We call them actions in chromedp. And actions are executed with chromedp.Run.

I give you an example.
devtools_ws_url_1 := create_browser()
devtools_ws_url_2 := create_browser()
devtools_ws_url_3 := create_browser()
//
open_url(devtools_ws_url_1, "https://www.website1.com")
close_browser(devtools_ws_url_1)
open_url(devtools_ws_url_2, "https://www.website2.com")
close_browser(devtools_ws_url_2)
open_url(devtools_ws_url_3, "https://www.website3.com")
close_browser(devtools_ws_url_3)
In rust I can do it perfectly:
https://docs.rs/chromiumoxide/latest/chromiumoxide/browser/struct.Browser.html#method.websocket_address
https://docs.rs/chromiumoxide/latest/chromiumoxide/browser/struct.Browser.html#method.connect

hey @OsKaR82 i do this in biloba here:
https://github.com/onsi/biloba/blob/master/biloba.go
check out spinupchrome and connecttochrome - you tell chrome to spin up pointed at a directory and then read wsurl from that directory

Thanks, I'll take a look and try to find the best option. ;)

sure thing.  chromedp.NewContext(parentCtx) is how you "open a new tab" btw.  You should be able to simply:
cx, _ := chromedp.NewExecAllocator(context.Background(), o...)

ctx1, _ := chromedp.NewContext(cx)
err := chromedp.Run(ctx1,
	chromedp.Navigate("https://www.website1.com"),
)

ctx2, _ := chromedp.NewContext(cx)
err := chromedp.Run(ctx2,
	chromedp.Navigate("https://www.website2.com"),
)

ctx3, _ := chromedp.NewContext(cx)
err := chromedp.Run(ctx3,
	chromedp.Navigate("https://www.website3.com"),
)

if you're doing all this to write some tests i'll humbly/not-so-humbly 😛  suggest taking a look at Ginkgo/Gomega/Biloba as Biloba will manage all this stuff for you.

sure thing. chromedp.NewContext(parentCtx) is how you "open a new tab" btw. You should be able to simply:
cx, _ := chromedp.NewExecAllocator(context.Background(), o...)

ctx1, _ := chromedp.NewContext(cx)
err := chromedp.Run(ctx1,
	chromedp.Navigate("https://www.website1.com"),
)

ctx2, _ := chromedp.NewContext(cx)
err := chromedp.Run(ctx2,
	chromedp.Navigate("https://www.website2.com"),
)

ctx3, _ := chromedp.NewContext(cx)
err := chromedp.Run(ctx3,
	chromedp.Navigate("https://www.website3.com"),
)

if you're doing all this to write some tests i'll humbly/not-so-humbly 😛 suggest taking a look at Ginkgo/Gomega/Biloba as Biloba will manage all this stuff for you.

Yes, but... if each window has its own proxy (for example), then they all share the same one.
So how do you send commands from a function to those open instances? ;)

right if it's chrome level configuration you'll need to spin up separate browsers

That's the problem.. ;) Thx.

I have the same demand. I want to open many website .
package main

import (
	"context"
	"github.com/chromedp/chromedp"
	"log"
	"os"
	"path"
)

func main() {

	var options []chromedp.ExecAllocatorOption
	options = append(options,
		chromedp.Flag("headless", false),
		chromedp.NoFirstRun,
		chromedp.NoDefaultBrowserCheck,
	)

	dir, err11 := os.Getwd()
	if err11 != nil {
		log.Printf("%v", err11)
	}
	join := path.Join(dir, "user-data")
	options = append(options, chromedp.UserDataDir(join))

	parentCtx, _ := chromedp.NewExecAllocator(context.Background(), options...)

	newContext, _ := chromedp.NewContext(parentCtx)
	chromedp.Run(newContext, chromedp.Navigate("https://www.baidu.com/"))

	newContext1, _ := chromedp.NewContext(parentCtx)
	chromedp.Run(newContext1, chromedp.Navigate("https://www.bing.com/"))

	for {
		select {}
	}
}

when I set options = append(options, chromedp.UserDataDir(join)), the second tab cannot be opened

@aohanhongzhi Replace
newContext1, _ := chromedp.NewContext(parentCtx)

with
newContext1, _ := chromedp.NewContext(newContext)

See the doc for chromedp.NewContext.

```go
newContext1, _ := chromedp.NewContext(newContext)

thanks for your reply.

authors: OsKaR82 ZekeLu aohanhongzhi onsi

repo: chromedp/chromedp


text:
Unix (MacOS / Linux) support for Blazor demos

I've tried to run the Blazor Server demo on Linux, but an exception occurs because the ChromelyBlazor.Shared project uses MemoryMappedFile with names, which are not supported on Unix systems. It would be nice if this was changed.

While named memory maps are not supported on Linux, anonymous ones apparently are. I was able to get it running on Linux by changing the calls from MemoryMappedFile.CreateNew(appName, 4) to MemoryMappedFile.CreateNew(null, 4) and changing MemoryMappedFile.CreateOrOpen(appName, 4) to MemoryMappedFile.CreateNew(null, 4). I don't think it's the right solution though, so I wouldn't commit it.

authors: andrew-bedford manfromarce

repo: chromelyapps/demo-projects


text:
swift 4.1 not supported

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Version [e.g. 0.6.0]

FlagPhoneNumber (please complete the following information):

Version [e.g. 0.6.0]

Additional context
Add any other context about the problem here.

Module compiled with Swift 4.1 cannot be imported in Swift 3.2.3:

The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported value for targets which use Swift. This setting can be set in the build settings editor.

Swift Language Version is set to Swift 5

authors: grifas kukkadapukarthik

repo: chronotruck/FlagPhoneNumber


text:
Markdown formatting fixes bonanza

Addresses #152
In addition:

Remove separator line when it directly precedes h2
Change remaining legacy bold text headings to h4 (apologies for not catching all of them last time round)
Use the same bullet symbol for lists throughout
Move instructions on how to install ectool from faq to "Using Ectool" page
Change some tip container headings to "note" for general aesthetics
Where it does not refer to terminal input/output, change monospace formatted text to normal text formatting in quotation marks
Add nice Unicode symbols to ChromeOS VT-x keyboard shortcut references
Simplify overly verbose instructions
Spelling

in 85be021 you changed alot of intents to 3sp. Was this intentional?

No SEO-relevant issues left.
Markdownlint still shows alot of trivial issues in regards to #87. Its up to you if you want toi fix em aswell.
Other than that: LGTM

I'll do that in a separate PR when I have some time, I don't really use VSCode but I'll check out the markdown linter.

Apologies, fixed some spelling I just noticed.

authors: marcsadler ninelore

repo: chrultrabook/docs


text:
OnItemClick method is not fired in ListView

I tried to catch onItemClick in ListView but that method is not fired after implementation of SwipeRevealLayout.
How can I solve this problem

@mob-rockstar have you found a solution? am stuck too

You can have an interface ClickListener in SwipeRevealLayout class similar to SwipeListener and register it from your adapter class (like setClickListener(this)) . And in onGestureListener implement method onSingleTapUp method and call onClickListener.onClick(View view).

Thanks for your reply.
I have set the onClickListener to SwipeRevealLayout in my adapter class.
But the touch doesn’t work well. very rarely work.
Even though I tap the SwipeRevealLayout, swiping is called than touching.

On Jul 23, 2017, at 5:02 PM, nerd-sj notifications@github.com wrote:
You can have an interface ClickListener in SwipeRevealLayout class similar to SwipeListener and register it from your adapter class (like setClickListener(this)) . And in onGestureListener implement method onSingleTapUp method and call onClickListener.onClick(View view).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/chthai64/SwipeRevealLayout/issues/63#issuecomment-317259193, or mute the thread https://github.com/notifications/unsubscribe-auth/AQGxLuDYzPymdYdSNYnTz1jgWkdLfDuZks5sQ2CWgaJpZM4N0j72.

Add a check in onTouchEvent . It should work for you.
   @Override
    public boolean onTouchEvent(MotionEvent event) {

 // This check is needed so that your gesture listener will take up the event if
 //   onSingleTap is called
 if (mGestureDetector.onTouchEvent(event)) {
        return true;
    }
    mDragHelper.processTouchEvent(event);
    return true;
}

Dear
Do I have to implement your code in my list view adapter class?

On Jul 23, 2017, at 5:29 PM, nerd-sj notifications@github.com wrote:
Add a check in onTouchEvent . It should work for you.
@Override
public boolean onTouchEvent(MotionEvent event) {
// This check is needed so that your gesture listener will take up the event if
//   onSingleTap is called
if (mGestureDetector.onTouchEvent(event)) {
return true;
}
mDragHelper.processTouchEvent(event);
return true;
}
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/chthai64/SwipeRevealLayout/issues/63#issuecomment-317261089, or mute the thread https://github.com/notifications/unsubscribe-auth/AQGxLofJR5YtNfroYLMK6-8-Y95VZiDbks5sQ2bKgaJpZM4N0j72.

No in SwipeRevealLayout class.

authors: mob-rockstar nerd-sj yarodevuci


text:
Add a method to get internet speed, from the CLI.

I have a PR ready, if you want to. :)

@Aniket-Pradhan Just fork + commit + send a pull request then :)

I thought it would be quite decent to raise an issue first. :P

authors: Aniket-Pradhan chubin

repo: chubin/awesome-console-services


text:
Add chars highlighting

Chars highlighting didn't work for example in C and C++
For example symbols 'A' or '0' were just white. Now they are highlighted as characters in string.
Before:

After:

LGTM

authors: Andoku chuling


text:
Allow the exclusion of manageEvent()

The code for the event manager is relatively large. Allow its exclusion from a build through an env variable.

Code checked in. Need to verify that it actually works by building one of the examples.

Now it works, with REACT_APP_ at the beginning of the variable name used.

repo: chung-leong/react-seq


text:
🛑 91家纺 is down

In ba03f6e, 91家纺 (https://www.91jf.com/) was down:

HTTP code: 403
Response time: 1387 ms

Resolved: 找家纺网 is back up in e1d2076 after .

repo: chwang-team/status-hao


text:
Time Block Entery

#Time Block Entery
##User Story
AS AN employee with a busy schedule
I WANT to add important events to a daily planner
SO THAT I can manage my time effectively
##Acceptance Criteria
GIVEN I am using a daily planner to create a schedule
WHEN I click into a timeblock
THEN I can enter an event

Time block entry works


text:
publishHuaweiAppGallery* task not created for all build types

README says:

Gradle generate publishHuaweiAppGallery* task for each buildType configuration those have debuggable=false option.

I can't get it to work for other build types than debug  and release.
I also tried in this project example sample-groovy
https://github.com/AndrazP/huawei-publish-gradle-plugin/commit/5b0c4d4100a929b1545f9fa65d2933a720c81785
I would expect it to generate task publishHuaweiAppGalleryInternalTest.

@AndrazP  Hi

Gradle generate publishHuaweiAppGallery* task for each buildType configuration those have debuggable=false option.

Yeah. That's right. If you execute next command
./gradlew tasks

into current repository then you can find next tasks in output
// for sample-groovy;
publishHuaweiAppGalleryDemoRelease - Upload and publish application build file to Huawei AppGallery Store for demoRelease buildType
publishHuaweiAppGalleryFullRelease - Upload and publish application build file to Huawei AppGallery Store for fullRelease buildType

// for sample-kotlin;
publishHuaweiAppGalleryRelease - Upload and publish application build file to Huawei AppGallery Store for release buildType

I check it. The plugin in master branch work as well.
Could you show me build.gradle file in you application module for more information?

Did you check my example
https://github.com/AndrazP/huawei-publish-gradle-plugin/commit/5b0c4d4100a929b1545f9fa65d2933a720c81785
where I added build type internalTest?
publishHuaweiAppGalleryInternalTest is not generated.

@AndrazP you are right. I've found issue and remove debaggable restriction in 1.3.2-SNAPSHOT version. Please check it. Plugin will create task for all project buildTypes. If the issue fixed I'll publish it in next release.

internalTest build type in my example has debuggable false but task was not generated with version 1.3.1.
1.3.2-SNAPSHOT successfully generates  publishHuaweiAppGallery* tasks for all build types. With debuggable false and debuggable true
Thanks for the quick response!

Release at v1.3.3

authors: AndrazP cosic

repo: cianru/huawei-publish-gradle-plugin


text:
Frost select performance

I have a frost-select in my app with 200 options.
Currently, the click to open it takes about 330 ms with 1.7.6 and over 900 ms with 1.9.0. On other machines, we have timed it at over 3.25 seconds with 1.9.0.
Something added between 1.7.6 and 1.9.0 is really killing frost-select performance.

Maybe we can look into using smoke-and-mirrors in the select-dropdown

This issue was resolved by PR #400, #402, #403, and #404.

authors: TheOtherDude srowhani

repo: ciena-frost/ember-frost-core


text:
CI: Checks E/W loadbalancing (ClusterIP, NodePort from inside cluster, etc)

Test Name
Suite-k8s-1.21.K8sServicesTest Checks E/W loadbalancing (ClusterIP, NodePort from inside cluster, etc) Checks service on same node
Suite-k8s-1.21.K8sServicesTest Checks E/W loadbalancing (ClusterIP, NodePort from inside cluster, etc) Tests NodePort inside cluster (kube-proxy)
Suite-k8s-1.21.K8sServicesTest Checks E/W loadbalancing (ClusterIP, NodePort from inside cluster, etc) with L4 policy Tests NodePort with L4 Policy
Suite-k8s-1.21.K8sServicesTest Checks E/W loadbalancing (ClusterIP, NodePort from inside cluster, etc) with L7 policy Tests NodePort with L7 Policy

Failure Output
Connect: '%{time_connect}',Transfer '%{time_starttransfer}', total '%{time_total}'"
To succeed, but it failed:
Exitcode: 7
Err: exit status 7

Stack Trace
/home/jenkins/workspace/cilium-master-k8s-1.21-kernel-4.9/src/github.com/cilium/cilium/test/ginkgo-ext/scopes.go:527
cannot curl to service IP from host: time-> DNS: '0.000021()', Connect: '0.000000',Transfer '0.000000', total '0.000000'command terminated with exit code 7

Expected command: kubectl exec -n kube-system log-gatherer-bg6s6 -- curl --path-as-is -s -D /dev/stderr --fail --connect-timeout 5 --max-time 20 http://[fd03::5e77]:80/ -w "time-> DNS: '%{time_namelookup}(%{remote_ip})', Connect: '%{time_connect}',Transfer '%{time_starttransfer}', total '%{time_total}'"
To succeed, but it failed:
Exitcode: 7
Err: exit status 7
Stdout:
 	 time-> DNS: '0.000021()', Connect: '0.000000',Transfer '0.000000', total '0.000000'
Stderr:
 	 command terminated with exit code 7

/home/jenkins/workspace/cilium-master-k8s-1.21-kernel-4.9/src/github.com/cilium/cilium/test/k8s/services.go:137

Standard Output
Number of "context deadline exceeded" in logs: 0
Number of "level=error" in logs: 0
Number of "level=warning" in logs: 0
Number of "Cilium API handler panicked" in logs: 0
Number of "Goroutine took lock for more than" in logs: 0
No errors/warnings found in logs
Number of "context deadline exceeded" in logs: 0
Number of "level=error" in logs: 0
Number of "level=warning" in logs: 0
Number of "Cilium API handler panicked" in logs: 0
Number of "Goroutine took lock for more than" in logs: 0
No errors/warnings found in logs
Number of "context deadline exceeded" in logs: 0
Number of "level=error" in logs: 0
Number of "level=warning" in logs: 0
Number of "Cilium API handler panicked" in logs: 0
Number of "Goroutine took lock for more than" in logs: 0
No errors/warnings found in logs
Cilium pods: [cilium-6nbsv cilium-gn57w]
Netpols loaded:
CiliumNetworkPolicies loaded: default::allow-all-within-namespace
Endpoint Policy Enforcement:
Pod                           Ingress   Egress
testds-sk72b
app3-5d69599cdd-5jl9z
testclient-2-sggxl
testclient-dklw4
app2-58757b7dd5-g6kds
test-k8s2-7f96d84c65-trcp9
testclient-5xlxk
app1-6bf9bf9bd5-rlw9t
echo-55fdf5787d-c9wrr
app1-6bf9bf9bd5-dw2dm
echo-55fdf5787d-nnqtq
testclient-2-qv2kg
testds-fx5nm
coredns-69b675786c-k5szt
grafana-5747bcc8f9-gmkpg
prometheus-655fb888d7-zz764
Cilium agent 'cilium-6nbsv': Status: Ok  Health: Ok Nodes "" ContainerRuntime:  Kubernetes: Ok KVstore: Ok Controllers: Total 53 Failed 0
Cilium agent 'cilium-gn57w': Status: Ok  Health: Ok Nodes "" ContainerRuntime:  Kubernetes: Ok KVstore: Ok Controllers: Total 56 Failed 0

Standard Error
Expected command: kubectl exec -n kube-system log-gatherer-bg6s6 -- curl --path-as-is -s -D /dev/stderr --fail --connect-timeout 5 --max-time 20 http://[fd03::5e77]:80/ -w "time-> DNS: '%{time_namelookup}(%{remote_ip})', Connect: '%{time_connect}',Transfer '%{time_starttransfer}', total '%{time_total}'"
To succeed, but it failed:
Exitcode: 7
Err: exit status 7
Stdout:
 	 time-> DNS: '0.000021()', Connect: '0.000000',Transfer '0.000000', total '0.000000'
Stderr:
 	 command terminated with exit code 7

Resources

Jenkins URL: https://jenkins.cilium.io/job/cilium-master-k8s-1.21-kernel-4.9/166/#showFailuresLink
ZIP file(s):
e2236df6_K8sServicesTest_Checks_E-W_loadbalancing_(ClusterIP,_NodePort_from_inside_cluster,_etc)_Checks_service_on_same_node.zip

Anything else?
No response

Notes from initial investigation -
In all the failed runs, host -> clusterIP curl calls are failing, and only for IPv6 services. Kube-proxy replacement is disabled so the translation should be handled by kube-proxy. I picked the most straight forward case (https://jenkins.cilium.io/job/cilium-master-k8s-1.20-kernel-4.9/1445/testReport/junit[…]ePort_from_inside_cluster__etc__Checks_service_on_same_node/).
The relevant iptable rules seem to be installed correctly -
bugtool-cilium-9zgvh/cmd/ip6tables-save--c.md:[0:0] -A KUBE-SERVICES -d fd03::c585/128 -p tcp -m comment --comment "default/app1-service-ipv6:http cluster IP" -m tcp --dport 80 -j KUBE-SVC-LC2VQUGTBC656VOS

bugtool-cilium-9zgvh/cmd/ip6tables-save--c.md:[0:0] -A KUBE-SEP-N65JJMC3MICRSXSO -p tcp -m comment --comment "default/app1-service-ipv6:http" -m tcp -j DNAT --to-destination [fd02::70]:80
bugtool-cilium-9zgvh/cmd/ip6tables-save--c.md:[0:0] -A KUBE-SEP-PD7LTKZDNHOZJKCJ -s fd02::59/128 -m comment --comment "default/app1-service-ipv6:http" -j KUBE-MARK-MASQ
bugtool-cilium-9zgvh/cmd/ip6tables-save--c.md:[0:0] -A KUBE-SEP-PD7LTKZDNHOZJKCJ -p tcp -m comment --comment "default/app1-service-ipv6:http" -m tcp -j DNAT --to-destination [fd02::59]:80

Command to reproduce this issue locally -
KERNEL=49 K8S_VERSION=1.20 K8S_NODES=2 ginkgo -v --focus 'K8sServicesTest.*Checks E/W loadbalancing' --tags=integration_tests -- --cilium.showCommands=false --cilium.provision=true --cilium.holdEnvironment=true --cilium.passCLIEnvironment=true --cilium.testScope=k8s

@aditighag Thanks for the detailed issue.

Command to reproduce this issue locally -

Was it easy to reproduce it? Asking, as I am running it w/o hitting the flake.

@brb Use the CI VMs (docs):
cd test
KERNEL=49 K8S_VERSION=1.20 K8S_NODES=2 ./vagrant-local-start.sh

At least I had no issue reproducing using these.

@aditighag Thanks for the detailed issue.

Command to reproduce this issue locally -

Was it easy to reproduce it? Asking, as I am running it w/o hitting the flake.

Nope, I wasn't able to reproduce the issue locally either. The only difference I see in Nicolas' and mine workflow is that I didn't run vagrant-local-start.sh first. I ran the ginkgo command to run the focused tests directly. But I would expect that the command internally invokes vagrant-local-start.sh though?

@brb @aditighag I've quarantined these tests here so don't be surprised if they looked like they got fix.

I'm able to reproduce on first try on my system (Ubuntu with IPv6 connectivity) with the following command:
K8S_VERSION=1.20 ginkgo -v --focus 'K8sServicesTest Checks E/W loadbalancing.*ClusterIP, NodePort from inside cluster, etc' --tags=integration_tests -- -cilium.provision=true -cilium.holdEnvironment=true -cilium.passCLIEnvironment=true -cilium.testScope=k8s -cilium.runQuarantined=true

FYI https://github.com/cilium/cilium/pull/19997 will fix this.

authors: aanm aditighag brb nbusseneau pchaigno

repo: cilium/cilium


text:
CFP: Support GRPCRoute in Cilium Gateway API

Cilium Feature Proposal
The first cut for Gateway API was done in https://github.com/cilium/cilium/pull/21749, however, we have a couple of follow-up tasks to support more features from Gateway API upstream.
This is to track the work to support GRPCRoute.
Goals
Based on the progress and code re-usability introduced in TLSRoutes we should build a similar implementation of GRPCRoute. This route should re-use logic from both TLS and HTTP routes to route gRPC.
To implement it we should re-use the Envoy logic as an GRPCRoute can be attached to a HTTP(S) Gateway, we can therefore re-use that for TLS termination. Preferably it should use gRPC specific routing in Envoy where possible.
Proposed Solution
TBD
Tasks

[ ] Add required reconcile functions to validate GRPCRoute

[ ] Validate against hostname re-use between HTTP and gRPC

[ ] Add a translator module for GRPCRoutes rules to Envoy rules
[ ] Handle edge cases according to spec (TBD)
[ ] Validate required CRDs will be installed
[ ] Pass conformance tests
[ ] Awesome documentation!

Need to test this against our hubble-ui to make sure we don't hit issues like this.

Addressed by https://github.com/cilium/cilium/pull/28464

authors: networkop sayboras


text:
how to change svc loadbalance mode

k8s cluster: 1.24.16
cilium: 1.14
In my cluster, cilium replace kube-proxy,i want change svc loadbalance mode (default RR) , but i don't konw how to change it ,and i can't find this in document, someone tell me change it in svc ,and add  "cilium.io/load-balancer-mode: source-ip" , but i test it  and not work

Hi @tom20180101 Cilium supports two load-balancer modes - random (default) and maglev. See --bpf-lb-algorithm -https://docs.cilium.io/en/stable/cmdref/cilium-agent/.

@aditighag  i'm glad you replied,   i already config it in cm  and restart cilium cilium-operator
bpf-lb-algorithm: maglev bpf-lb-maglev-hash-seed: AKHYE28K1gPQgfHT bpf-lb-maglev-table-size: "65521"
and i test it according svc nginx, the result is
[root@master ~]# for i in {1..10};do curl 10.96.48.165:8080 ;done this is test web page1 this is test web page2 this is test web page2 this is test web page1 this is test web page2 this is test web page2 this is test web page1 this is test web page2 this is test web page1 this is test web page1 [root@master ~]#
now how client  access same backend server , the maglev seems not  achieve that

@tom20180101 Both Round Robin and Maglev randomly choose backends from the pool, maglev just uses a slightly different weighting algorithm for it.
It sounds like you're wanting some sort of sticky load balancing for LB Services instead? If so, that's a new feature.

@youngnick    i want achieve that the same client (same ip )according LB choose same backend server no matter how many request .  :)

Thanks for that, that's what I meant as well, so that would be a new feature. I'll see if there are any other outstanding requests for that, if so we can close this one out and you can follow them.

thanks @youngnick

authors: aditighag tom20180101 youngnick


text:
Creating metrics services is tied to the creation of service monitors

Issue
In the Cilium Helm chart is the creation of the metrics services for the cilium-agent and cilium-operator currently tied to the creation of service monitors, due to the IF statement requiring:
https://github.com/cilium/cilium/blob/0f768339754246bd4c85d27953bc71cab7490006/install/kubernetes/cilium/templates/cilium-agent/service.yaml#L3
https://github.com/cilium/cilium/blob/0f768339754246bd4c85d27953bc71cab7490006/install/kubernetes/cilium/templates/cilium-operator/service.yaml#L1
This prevents use cases where the metrics are scraped but not using service monitors.
Solution
Remove the requirement for the service monitors to be enabled.

i can take this one? please assign

authors: michaeljsaenz tschlaepfer


text:
Hubble flow events missing policy fields when Envoy is in the datapath

Is there an existing issue for this?

[X] I have searched the existing issues

Version
equal or higher than v1.15.7 and lower than v1.16.0
What happened?
When Envoy is not in the datapath and a CNP allows a request then the hubble flow event will include the following fields: k8s:io.cilium.k8s.policy.name, egress_allowed_by, and policy_match_type. When Envoy is in the datapath these fields are missing from the hubble flow event
How can we reproduce the issue?

Deploy the attached tools and echo apps to the test namespace
Deploy the test-blocking CNP to the test namespace
Exec into the tools pod and run curl -v http://echo-service.test.svc.cluster.local:8080/get?foo=bar
Disable the http rule for the 8080 port in the CNP
Rerun curl -v http://echo-service.test.svc.cluster.local:8080/get?foo=bar
Note the missing fields in the first hubble flow event

artifacts.tar.gz
Cilium Version
1.15.7
Kernel Version
[ec2-user@ip-10-10-33-118 ~]$ uname -a
Linux ip-10-10-33-118.us-east-2.compute.internal 5.10.220-209.869.amzn2.x86_64 #1 SMP Wed Jul 17 15:10:20 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Kubernetes Version
$ kubectl version
Client Version: v1.30.3
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.27.16-eks-2f46c53
WARNING: version difference between client (1.30) and server (1.27) exceeds the supported minor version skew of +/-1

Regression
No response
Sysdump
No response
Relevant log output
Without Envoy:
{"flow":{"time":"2024-08-22T12:35:23.756188210Z","uuid":"9633a68f-380c-42c4-9656-20c00ea5e0b2","verdict":"FORWARDED","ethernet":{"source":"ba:38:db:66:66:9d","destination":"26:a2:a4:a9:92:82"},"IP":{"source":"10.10.32.119","destination":"10.10.41.169","ipVersion":"IPv4"},"l4":{"TCP":{"source_port":38194,"destination_port":8080,"flags":{"SYN":true}}},"source":{"ID":3480,"identity":124110,"namespace":"test","labels":["k8s:app=tools","k8s:io.cilium.k8s.namespace.labels.kubernetes.io/metadata.name=test","k8s:io.cilium.k8s.policy.cluster=autodesk-cluster-1","k8s:io.cilium.k8s.policy.serviceaccount=default","k8s:io.kubernetes.pod.namespace=test"],"pod_name":"tools-847f9887d7-9lj4r","workloads":[{"name":"tools","kind":"Deployment"}]},"destination":{"ID":370,"identity":70855,"namespace":"test","labels":["k8s:app=echo-server","k8s:io.cilium.k8s.namespace.labels.kubernetes.io/metadata.name=test","k8s:io.cilium.k8s.policy.cluster=autodesk-cluster-1","k8s:io.cilium.k8s.policy.serviceaccount=default","k8s:io.kubernetes.pod.namespace=test"],"pod_name":"echo-deployment-7ff46d7996-frnk5","workloads":[{"name":"echo-deployment","kind":"Deployment"}]},"Type":"L3_L4","node_name":"autodesk-cluster-1/ip-10-10-44-255.us-east-2.compute.internal","event_type":{"type":5},"traffic_direction":"EGRESS","policy_match_type":2,"is_reply":false,"Summary":"TCP Flags: SYN","egress_allowed_by":[{"name":"test-blocking","namespace":"test","labels":["k8s:io.cilium.k8s.policy.derived-from=CiliumNetworkPolicy","k8s:io.cilium.k8s.policy.name=test-blocking","k8s:io.cilium.k8s.policy.namespace=test","k8s:io.cilium.k8s.policy.uid=8ab6a277-6dd5-4d37-ae32-12d2da114ae3"],"revision":"12"}]},"node_name":"autodesk-cluster-1/ip-10-10-44-255.us-east-2.compute.internal","time":"2024-08-22T12:35:23.756188210Z"}

With Envoy:
{"flow":{"time":"2024-08-22T12:39:58.642874311Z","uuid":"2e3db81e-2add-4c03-bc73-8d337e61b951","verdict":"FORWARDED","ethernet":{"source":"ba:38:db:66:66:9d","destination":"26:a2:a4:a9:92:82"},"IP":{"source":"10.10.32.119","destination":"10.10.41.169","ipVersion":"IPv4"},"l4":{"TCP":{"source_port":49814,"destination_port":8080,"flags":{"SYN":true}}},"source":{"ID":3480,"identity":124110,"namespace":"test","labels":["k8s:app=tools","k8s:io.cilium.k8s.namespace.labels.kubernetes.io/metadata.name=test","k8s:io.cilium.k8s.policy.cluster=autodesk-cluster-1","k8s:io.cilium.k8s.policy.serviceaccount=default","k8s:io.kubernetes.pod.namespace=test"],"pod_name":"tools-847f9887d7-9lj4r","workloads":[{"name":"tools","kind":"Deployment"}]},"destination":{"ID":370,"identity":70855,"namespace":"test","labels":["k8s:app=echo-server","k8s:io.cilium.k8s.namespace.labels.kubernetes.io/metadata.name=test","k8s:io.cilium.k8s.policy.cluster=autodesk-cluster-1","k8s:io.cilium.k8s.policy.serviceaccount=default","k8s:io.kubernetes.pod.namespace=test"],"pod_name":"echo-deployment-7ff46d7996-frnk5","workloads":[{"name":"echo-deployment","kind":"Deployment"}]},"Type":"L3_L4","node_name":"autodesk-cluster-1/ip-10-10-44-255.us-east-2.compute.internal","event_type":{"type":4,"sub_type":1},"traffic_direction":"EGRESS","trace_observation_point":"TO_PROXY","is_reply":false,"proxy_port":18765,"Summary":"TCP Flags: SYN"},"node_name":"autodesk-cluster-1/ip-10-10-44-255.us-east-2.compute.internal","time":"2024-08-22T12:39:58.642874311Z"}

Anything else?
No response
Cilium Users Document

[ ] Are you a user of Cilium? Please add yourself to the Users doc

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Interesting. The relevant question is whether-or-not hubble flows are created by the L7 proxy or by the bpf datapath. The datapath has enough information for policy attribution, whereas Envoy does not.
This may be a trivial fix, or it may be a longer-term project to improve policy attribution (which has always been best-effort).

I think there may be other flow fields missing when using the envoy datapath on v1.16.1, there may be more but these were the ones I was mostly interested in using:

source.cluster_name & destination.cluster_name (these might only be present once multi-cluster is configured?)
interface
egress_allowed_by, egress_denied_by, ingress_allowed_by, and ingress_denied_by

While the current hubble export documentation doesn't explicitly mention limitations on what field masks are available for use, perhaps it should until we have parity?

authors: bdecoste kgtw squeed


text:
IPAM cleanups

Various cleanups to prepare for the addition of additional IPAM modes

This change is

test-me-please

Coverage increased (+0.04%) to 45.676% when pulling 61a3124c5211f7fb3164c7b7dc5e801809566623 on pr/tgraf/ipam-cleanups into 6d29bba62d7cef9d340848d360da2effc09f2485 on master.

test-me-please

authors: coveralls tgraf


text:
test: Test NodePort BPF with L7 proxy

https://github.com/cilium/cilium/pull/11899 seems to fix NodePort BPF with L7. This PR adds L7 policy tests to NodePort BPF suites.
Fix #8971

test-focus K8sService*

test-me-please

test-me-please

Coverage increased (+0.008%) to 36.947% when pulling c7ef841e07ead5814736d55f12ed3b0d09605cbd on pr/brb/nodeport-l7 into a091ba1b4e5bfc96f1c5d9dc77c9c5faa80a0633 on master.

authors: brb coveralls


text:
v1.6 backports 2020-08-06

#12766 -- doc: update #ebpf Slack channel name (@qmonnet)
#12783 -- Add Kubernetes compatibility documentation (@aanm)

Once this PR is merged, you can update the PR labels via:
$ for pr in 12766 12783; do contrib/backporting/set-labels.py $pr done 1.6; done

@qmonnet There was a conflict for #12766.
@aanm There were multiple conflicts for #12783, PTAL.

test-docs-please

test-docs-please

Marking as ready to merge as there are only documentation changes and the doc tests passed.

authors: Rolinh tklauser


text:
test/helpers: Support non-standard nodes names with NO_CILIUM_ON_NODE

This commit allows users to now run setups such as kind. Specifically,
this commit supports the NO_CILIUM_ON_NODE use case used in the
Services test suite extensively in kind-like setups.
In kind, the user has no control over the nodes names, so if the user
has a three node cluster, the naming scheme is as follows:
kind-control-plane -> "k8s1"
kind-worker        -> "k8s2"
kind-worker2       -> "k8s3"
Setting NO_CILIUM_ON_NODE=kind-worker2 doesn't work as the CI code
assumes that the third node in this case is called "k8s3". Specifically,
setting the taints to declare the node as unschedulable fails because
the code uses the "k8s3" as the node name.
Instead of changing how the CI handles node naming all over the code,
the user should still pass "k8s3" as the "outside" node, because of the
existing naming scheme (see above). Now, the code will detect the real
node name ("kind-worker2") when setting the taints.
Signed-off-by: Chris Tarazi chris@isovalent.com

test-me-please

test-me-please

test-me-please

test-runtime

test-1.20-4.9

test-1.20-4.9

test-1.20-4.9

test-1.20-4.9

test-1.13-netnext

test-gke

test-runtime

test-1.19-4.19

CI has hit known flakes only. Pending review from @brb and this should ready to merge.

All team reviews are covered and CI has only knows flakes. Marking as ready to merge.

authors: christarazi pchaigno


text:
prefer k8snodeIP when picking masq IP

Current code picks masquerading IP for a device with firstGlobalV4Addr()
without passing a preferred IP so it picks the first IP after sorting
all IPs on the devices. When picked IP floats away (like those
configured by keepalived), egress is broken.
This commit mitigates the problem for k8snode device by preferring k8s node IP.
Signed-off-by: Yuan Liu liuyuan@google.com
Prefers k8s node IP when picking masquerading IPs

LGTM, one minor comment. Also, could you expand further in the commit msg? What does you mean "picked IP floats away", "configured by keepalived", and "egress is broken".

Done. Please see the updated commit message

Unfortunately, the change will break some other cases. Please see the commit msg a0ec2ad for more details.
I guess the proper fix would be to do a fib_lookup() to determine the correct source IP addr for SNAT.

Thanks for catching this. I agree with you that the best fix is to do a "fib_lookup" per TCP/UDP session to decide the source IP, which simply mimics iptables masquerading rule.
However, that will require a bigger change. Coming back to this PR, because we still set preferPublicIP which takes precedence over preferred IP, we will still pick public IP instead of private k8s node IP. So as far as I can see, this PR is only "improving" the situation from what the code does today. WDYT?

we still set preferPublicIP which takes precedence over preferred IP, we will still pick public IP instead of private k8s node IP

That's what I was not aware of. Mind adding a unit test for it?

/test

/test

@liuyuan10 Could you rebase the pull request? The Docker images had expired when we triggered the end-to-end tests, that's why they are all failing. Rebasing and pushing should retrigger the image builds.

@liuyuan10 Could you rebase the pull request? The Docker images had expired when we triggered the end-to-end tests, that's why they are all failing. Rebasing and pushing should retrigger the image builds.

done

/test

authors: brb christarazi liuyuan10 pchaigno


text:
cilium-cni: Reserve ports that can conflict with transparent DNS proxy

This commit adds the ability for the cilium-cni plugin to reserve IP ports (via the ip_local_reserved_ports sysctl knob) during CNI ADD. Reserving these ports will prevent the container network namespace to use these ports as an ephemeral source port, while still allowing the port to be explicitly allocated (see [1]).
This functionality is added as a workaround for https://github.com/cilium/cilium/issues/31535 where transparent DNS proxy mode causes conflicts when an ephemeral source port is being chosen that is already being used in the host network namespace. By reserving ports used by Cilium itself (such as WireGuard and VXLAN), we hopefully reduce the number of such conflicts.
The set of reserved ports can be configured via a newly introduced agent flag. By default, it will reserve an auto-generated set of ports.  The list of ports is configurable such that users running custom UDP services on ports in the ephemeral port range can provide their own set of ports. The flag may be set to an empty string to disable reservations altogether.
[1] https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt

I did some manual testing by forcing conflicts via echo 51871 51874 > /proc/sys/net/ipv4/ip_local_port_range on the client pod network namespace. With ip_local_reserved_ports set, there are no errors. As soon as I unset ip_local_reserved_ports (in the pod namespace), dig requests start failing.

/test

Thanks for the feedback! I've replied inline, hope that answers some of the questions.

/test

/test


text:
Separate generic and cilium specific BPF bits in bpf package

This pull request is now managed with CodeReviewHub. Refresh.

authors: aanm tgraf


text:
Misc endpoint cleanups

This change is

test-me-please

Hit #4644

test-me-please

test-me-please


text:
Jenkins: Update timeout on Nightly builds

Increase the timeout for Nightly builds that are dying now because of
timeouts.
Signed-off-by: Eloy Coto eloy.coto@gmail.com

This change is

Looks like the test froze:
23:52:48 time="2018-07-25T23:52:48Z" level=info msg="Executing HTTPAction 'kubectl exec -n default ae5b25f5-3dd3eece 2>/dev/null -- curl -s -D /dev/stderr --fail --connect-timeout 3 --max-time 3 http://10.98.195.44:80/private --output /dev/stout -w '%{http_code}''"
06:58:12 panic: test timed out after 7h30m0s

maybe we can have timeouts for each test ?

@ianvernon for that issue I created https://github.com/cilium/cilium/pull/5012

test-me-please

The test timed out after the new timeout value, indicating that this PR is achieving its desired functionality; the tests themselves failing is not related to this PR, so I am merging.

authors: eloycoto ianvernon


text:
Test: set terminationGracePeriodSeconds to 0.

Test application takes 30 seconds to be deleted on Kubernetes 1.13. With
this change the grace period has 0 seconds, so delete pods are much
faster.
Signed-off-by: Eloy Coto eloy.coto@gmail.com

This change is

test-me-please

Coverage decreased (-0.05%) to 43.878% when pulling 8535a3eea70dc7cf3aa7cd39fb0a7c64b50c7c13 on eloycoto:ManifestTermination into 8ffa351f7cb88f8b2bf57be5c6951b8bca5c08ba on cilium:master.

test-me-please

7 minutes faster :-)

authors: coveralls eloycoto


text:
weui-vcode 作为输出输出属性

Bug Report or Feature Request (mark with an x)

[ ] Bug report -> please search issues before submitting
[x] Feature request
[ ] Documentation issue or request

Current behavior

weui-vcode 是作为标签的输入属性
 <button class="weui-vcode-btn"
                  [weui-vcode]="onSendCode"
                  weui-seconds="120"
                  weui-tpl="${num}s"
                  weui-error="重新发送">获取验证码
          </button>

在onSendCode的定义里面，如果需要使用类的成员变量，会因为this指错的问题而无法使用。
如：
  onSendCode (): Observable<boolean> {
    console.log(this.userService);
    return userService.obtainLoginCaptcha(this.res.phone)
      .map((token: TokenResponse) => {
        this.res.token = token.token;
        return (token && token.token != null);
      });
  }

这里的this实际上指向的是VCodeDirective ,由于VCodeDirective 内部没有userService这个成员变量，如上使用会导致空指针异常。
Expected behavior

发送验证码应该类似于点击按钮事件，作为输出属性
Environment

Angular version:  5.2.0

ngx-weui version: 5.0.4

Browser:
- [x] Chrome (desktop) version XX
- [x] Firefox version XX
- [x] Safari (desktop) version XX
- [x] IE version XX

Others:

onSendCode = (): Observable<boolean> => {}

遇到同样问题，还望解答一下应该怎么用这个组件

onSendCode = (): Observable<boolean> => {}

代码如下:
  onSendCode(): Observable<boolean> {     console.log('click onsendCode');    return this.smsService.sendsms({phone: this.res.phone, wId: this.ut, deviceNo: this.setting.deviceno}).pipe(map((res: any) => {       if (res.data === 200) {          return true;       } else {         return false;       }     }));   }
错误如下:
VM5140:1 ERROR TypeError: Cannot read property 'sendsms' of undefined     at t.onSendCode [as onSend] (main.6457f74237301abee4ce.js:1)     at t._onClick (main.6457f74237301abee4ce.js:1)     at Object.handleEvent (main.6457f74237301abee4ce.js:1)     at Object.handleEvent (main.6457f74237301abee4ce.js:1)     at Object.handleEvent (main.6457f74237301abee4ce.js:1)     at eu (main.6457f74237301abee4ce.js:1)     at main.6457f74237301abee4ce.js:1     at HTMLButtonElement.<anonymous> (main.6457f74237301abee4ce.js:1)     at e.invokeTask (polyfills.bebee6a5ef0ece001bc6.js:1)     at Object.onInvokeTask (main.6457f74237301abee4ce.js:1)

@myFirstway
onSendCode: () => Observable<boolean> {
    console.log('click onsendCode');
   return this.smsService.sendsms({phone: this.res.phone, wId: this.ut, deviceNo: this.setting.deviceno}).pipe(map((res: any) => {
      if (res.data === 200) {
         return true;
      } else {
        return false;
      }
    }));
  }

authors: cipchk jonashao myFirstway

repo: cipchk/ngx-weui


text:
Update scalatest to 3.2.15

Updates org.scalatest:scalatest from 3.2.11 to 3.2.15.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalatest", artifactId = "scalatest" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "org.scalatest", artifactId = "scalatest" }
}]

labels: test-library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #321.

repo: circe/circe-benchmarks


text:
Update sbt to 1.8.2

Updates org.scala-sbt:sbt from 1.6.2 to 1.8.2.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-sbt", artifactId = "sbt" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "org.scala-sbt", artifactId = "sbt" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #228.

repo: circe/circe-golden


text:
Teams: identify changes to baseline to include meeting participant admission defaults

💡 Summary
Update baselines to include Microsoft Feature 392836. This feature adds organizer and co-organizer roles to Teams meetings, separating the ability to admit attendees and present content.
A more secure default would be to only allow meeting organizers and co-organizers to admit participants.
Motivation and context
For all new meetings, the organizers will have access to set meeting admission options during scheduling time.
The default for this new meeting option can be configured by the tenant admins using the meeting
policy:

The default option is to allow all presenters (e.g. tenant users) to admit external participants.
Implementation notes
Acceptance criteria
How do we know when this work is done?

[ ] Validate new organizer lobby admission setting
[ ] Document recommended change to Teams baseline with baseline change
[ ] Issues created for implementation of changes as needed

@nanda-katikaneni is this issue still expect to have baseline changes and if yes what is the expected date to have these changes into a PR and reviewed?

Based on discussion with team during one of recent standups - it was thought that this does not require a change to existing baseline (restricting meeting participant admission to only organizers is thought to be too restrictive). No baseline/code changes - issue can be closed.

authors: ahuynhMITRE nanda-katikaneni rmoffitt-m

repo: cisagov/ScubaGear


text:
BGP and small changes

Pull Request summary:
Add BGP model. Fix AAA fields. Add to cellular controller model word Parcel. Create ini.py for transport models. Add bgp type to supported types
Description of changes:
Checklist:

[X] Make sure to run pre-commit before committing changes
[X] Make sure all checks have passed
[X] PR description is clear and comprehensive
[X] Mentioned the issue that this PR solves (if applicable)
[X] Make sure you test the changes

This issue was migrated from an old repository: https://github.com/CiscoDevNet/catalystwan/pull/514

repo: cisco-open/cisco-catalyst-wan-sdk


text:
npm test

Over half of the changes here are the deletion of */test/index.js and adjusting the location of imports accordingly.
this diff should make review much easier by omitting thos changes.

Known issues:

[ ] SIGINT doesn't propagate to the karma server
[ ] There's a retain cycle somewhere that'll wedge the suite open. It looks like it has something to do with the batcher. The retrieves an avatar url unit test is enough to reproduce.

repo: ciscospark/spark-js-sdk


text:
Add support for entities in author list when exporting to other formats

See also https://github.com/citation-file-format/cff-converter-python/issues/156#issue-956773521

[ ] apalike
[x] bibtex
[x] codemeta
[ ] endnote
[ ] ris
[x] schemaorg
[x] zenodo

Made this issue part of

#178

, closing this one


text:
(1.3.0) Tenant Module

Will re-target to rc-1.3.0 branch once it's available!
This PR adds the Tenant module without business logic, to be used in the future when we have business logic to add.

Added new folder to 03_Modules called Tenant to house all Tenant-module related files in the same structure as the other modules

Tenant version is at 1.3.0 to match with release candidate

Updated Server/docker-compose.yml and Server/docker-compose.swarm.yml to spin up new Tenant module
Updated Swarm folder-related modules to include Tenant module

Can be reverted if not necessary (as I see that items in the Swarm folder haven't been updated too recently)

Updated RabbitMQ receiver.ts to disallow queue creation if a module has no actions
Added a clarifying comment to this since chargers won't have actions and should get a queue
This was done because otherwise RabbitMQ will erroneously feed all messages to the Tenant module

Closing PR to move branch over to the actual repo instead of a fork!

repo: citrineos/citrineos-core


text:
Remove all non-fixture tests

Description
Please explain the changes you made here.
Release notes
The title of the pull request will be used as the default release notes description. If more detail is needed to communicate to partners the scope of the PR's changes, use this release notes section.
Checklist
General
Read the full guidelines for PRs here

[ ] Added the correct label: < feature | enhancement | bug | under-development | dependencies | infrastructure | ignore-for-release | database >
[ ] Assigned to a specific person, civiform/developers, or a more specific round-robin list
[ ] Added an additional reviewer from outside your organization as FYI (if the primary reviewer is in the same organization as you)
[ ] Created unit and/or browser tests which fail without the change (if possible)
[ ] Performed manual testing (Chrome and Firefox if it includes front-end changes)
[ ] Extended the README / documentation, if necessary

Database evolutions
Read the guidelines here

[ ] Assigned two reviewers
[ ] Guarded against already existing resources using IF NOT EXISTS and IF EXISTS
[ ] Downs created to undo changes in Ups

User visible changes

[ ] Followed steps to internationalize new strings

[ ] Added context strings to new messages
[ ] Didn't use a message in applicant facing code that isn't translated yet (unless behind a flag)
[ ] Follow the workflow here

[ ] Wrote browser tests using the validateAccessibility method
[ ] Tested on mobile view. See mobile device mode
[ ] Manually tested at 200% size
[ ] Manually evaluated tab order

New Features

[ ] Add new FeatureFlag env vars to server/conf/helper/feature-flags.conf
[ ] Conditioned new functionality on a FeatureFlag
[ ] Wrote browser tests with the feature flag off and on, etc.

Instructions for manual testing
If instructions are needed for manual testing by reviewers, include them here.
Issue(s) this completes
Fixes #<issue_number>; Fixes #<issue_number>...

#7442  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @devin-civi and the rest of your teammates on  Graphite

repo: civiform/civiform


text:
BUG make sure to catch OSError when reading the cached API spec for python 2.7

It looks like the CLI for python 2.7 is choking when trying to get a cached API spec. In python 2.7, the file not existing raises an OSError which is not caught in the right spot:
https://github.com/civisanalytics/civis-python/blob/master/civis/cli/__main__.py#L204

This is a duplicate of #172, fixed in #176 this morning. Try again with the latest master, or wait for a release later this week!

Ohhh cool! Thanks!

authors: beckermr stephen-hoover

repo: civisanalytics/civis-python


text:
Showing completions from previously removed header, it's annoying.

Logs
https://gist.github.com/zlianon/40e74b0194f88c582edca5f16a99b6a8
System information
Output of clangd --version: clangd version 11.0.0-++20200513052626+1370757dd01-1~exp1~20200513153230.40
Editor/LSP plugin: Neovim / coc.nvim
Operating system: Ubuntu 20.04 (Docker)
Before removing <iostream> header
#include <iostream>

int main() {
    std::cou // completion works as expected
}

After removing <iostream> header
int main() {
    std::cou // still gets completion from <iostream> header
}

This is by design: clangd shows results from headers that have been used in your project, whether they're included in the current file or not. If they're not, it can insert them for you when you accept the suggestion.
Results from headers that are included should generally be ranked higher than ones from other headers.

authors: sam-mccall zlianon

repo: clangd/clangd


text:
Search compilation database in subdirectory

Use case
Currently, clangd searches for compile_commands.json only in parent directories of the source file.
However, the compile_commands.json is usually inside a subdirectory of one of the parent directories.
E.g., when following the build instructions for LLVM (https://llvm.org/docs/GettingStarted.html#getting-the-source-code-and-building-llvm), you get a directory layout of the form:
| build
|  | compile_commands.json
|  | ...
| clang
|  | ...
|  | <this is where the source files are>
| clang-tools-extra/
|  | ...
|  | <more source files here>
| ...

Note how the compile_commands.json is not in a parent directory of, e.g., clang/lib/AST/ASTConcept.cpp but rather inside the build subdirectory.
The same applies for most other projects I am working on. The compile_commands.json is usually in some build subdirectory, where the exact directory name depends on the project (build, build-release, bazel-bin, build/RelWithDebInfo (i.e. a nested subdirectory), ...).
Proposal
Extend the CompilationDatabase to:

accept a list of paths instead of only a single path
provide a way to specify an "ancestor-relative" pattern

E.g., one could write:
CompileFlags:
  CompilationDatabase
    - Ancestors/build/
    - Ancestors/build-debug/
    - Ancestors/bazel-bin/
    - /home/avogelsgesang/default_compile_flags

Given this config, the compile_commands.json for a file path/to/file.cpp would be searched in:

path/to/build/
path/build/
build/
path/to/build-debug/
path/build-debug/
build-debug/
path/to/bazel-bin/
path/bazel-bin/
bazel-bin/
/home/avogelsgesang/default_compile_flags

It would thereby work quite nicely for the project structure for most CMake and Bazel projects I am working on

That sounds very complicated (and adds a lot of files to watch). We do support build/compile_commands.json because it is so common.
For less common cases, is adding a .clangd file or a build -> ? symlink too much burden?

What about allowing a Glob for CompilationDatabase? For my use case, we have a project with a large number of builds that can potentially be run for a component, which each generate their outputs in a directory that is named to reflect the configuration with was built.
If I could specify CompilationDatabase as like components/**/build_config*/compile_commands.json, that would work perfectly and not add a large number of watched dirs, right?

authors: rickyelopez sam-mccall vogelsgesang


text:
How do I confirm musikcube is using alsa?

I don't think my musikcube install is using alsa.
How do I know? Well, I installed strawberry and have configured it to use alsa (+ using my DAC + hw 0:0). If I play youtube on the browser and then try playing on strawberry , I'll get a message that goes like "playback device is busy right now". I have to stop the Youtube playback first before strawberry starts playing music. If I play on strawberry first and then try to play a Youtube video, the Youtube video is silent.
If I do same with musikcube, I can hear sound from both musikcube and Youtube.
Any ideas? Thanks
(card 0 is my DAC)
[myuser@fedora ~]$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Series [Mini-i Series], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 8: HDMI 2 [Dell AW3821DW]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 10: HDMI 4 [HDMI 4]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 11: HDMI 5 [HDMI 5]
Subdevices: 1/1
Subdevice #0: subdevice #0

Output driver: alsaout
Output device:  I've tried everything you can see on the screenshot. (there's a few more HDMI ones but I think those refer to my AMD video card. Also, "front:CARD=series,dev=0" up to "iec958:CARD=series,dev=0" only shows up if I turn on the DAC)

I can see from the screenshot that you're using alsa -- the output driver is set to AlsaOut -- but I see that your alsa configuration can seemingly render to pipewire. I'm not exactly sure how that works, though.
All that said, I'm a little confused by the problem. The issue is you only one want app to be able to play music at the same time? In other words, you don't want to hear musikcube playing while youtube does?

authors: clangen mrjayviper

repo: clangen/musikcube


text:
Revert "[ci] check-style: Changed diff format and show whitespace changes in …"

Reverts clara-parabricks/GenomeWorks#498

rerun tests

will be replaced by an updated version

authors: ahehn-nv tijyojwad

repo: clara-parabricks/GenomeWorks


text:
Fails on terminated instances

It failed when trying to log the error, due to a bug in the exception handling code:
Traceback (most recent call last):
File "/var/task/main.py", line 55, in lambda_handler
public_ip, resource_id)
TypeError: not enough arguments for format string

So I manually fixed the function:
                        except Exception as error:
                            print("Error associating %s with %s - %s" %
                                  (public_ip, resource_id, error))

And it logged this:
Error associating x.x.x with i-xyz - An error occurred (InvalidInstanceID) when calling the AssociateAddress operation: The terminated instance 'i-xyz' is not in a valid state for this operation.

It then proceeded to associate the EIP with another instance, so I think it just needs the logging to be fixed.

Maybe it should have a filter for an instance state here https://github.com/claranet/terraform-aws-eipattach/blob/master/lambda/main.py#L12 ?

scratch that, that's eips not instances resources

authors: pjfbashton raymondbutcher

repo: claranet/terraform-aws-eipattach


text:
Upgrade selectors

Fixes deprecated selectors in Atom 1.13.0 and above.

Hi, thanks for this. I'm no longer maintaining this package, would you like to be the new maintainer?

That would be great, thank you!

I'm out of office, will be back later this week and will transfer the
ownership  of the project to you.
Thanks again for your contribution,
Claudio
Il dom 26 mag 2019, 15:08 Nathan Allen notifications@github.com ha
scritto:

That would be great, thank you!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/claudiodangelis/dun-syntax/pull/3?email_source=notifications&email_token=AAHF7C7YEZII43FOONSS5O3PXKDVVA5CNFSM4HPU6LZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWIFOLA#issuecomment-495998764,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHF7C7VG6ISNEOP5C6U3HDPXKDVVANCNFSM4HPU6LZA
.

Sounds good, thanks!

@nallenscott hi, I'm initiating the process of transfering the repository, please make sure to delete your fork otherwise I can't proceed.
I reached out  to Atom support to request information about transfering the package, will keep you updated on this. Thanks for maintaining this project :tada: !
More info: https://help.github.com/en/articles/transferring-a-repository

Deleted, and my pleasure. Thanks for the opportunity!

authors: claudiodangelis nallenscott

repo: claudiodangelis/dun-syntax


text:
feat: add phalcon 5.2.3 release

update phalcon with release 5.2.3

:tada: This PR is included in version 1.162.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

repo: claylo/pecl-info


text:
feat: add protobuf 3.24.1 release

update protobuf with release 3.24.1

:tada: This PR is included in version 1.178.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


text:
🛑 livevault is down

In 006286f, livevault (https://livevault.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: livevault is back up in 4c21642.

repo: claytonplong/backup-uptime


text:
🛑 livevault is down

In ae0b319, livevault (https://livevault.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: livevault is back up in 8cd70fd.


text:
Link phonemes to CLTS

Here's the list of all phonemes listed in inventories for this dataset: https://github.com/cldf-datasets/easterdaysyllablestructure/blob/master/etc/phonemes.csv

This is now listed as a milestone for CLTS, following our new workflow for concepticon-like linking.

With release 2.0 this should make it into clts now, data here.

authors: LinguList xrotwang


text:
Add support for Redmine X UX plugin

Submit button in search page isn't aligned with Redmine X UX plugin. Note that it works with normal Redmine.

Thanks.

authors: kou uhuntu


text:
changing the p9fs options for i/o performance

Description of problem
tuning the p9fs block size and cache modes allows significant performance boost (10x) in KVM.  Is there a process for setting these in cc-runtime?
Example
In KVM, I have found two options that significantly increase IO (see below).
This is on a server with a raidz2  ZFS array with 8x Micron 9100 1.2TB SSDs).  There's plenty of head room, Raw IO on this array is around 3GB/sec/process plateauing at about 30GB/sec for 20 processes in iozone3.
With KVM guests using plan9 file system, it looks possible to get about 1GB/sec per CPU but we're getting only about 130MB/sec with clear containers and bind-mounted storage.
Host:
as the filesystem (ZFS) is consistent on the host by design, it's safe to use the passthough mode
<filesystem type='mount' accessmode='passthrough'>
   <source dir='/export/to/guest'/>
   <target dir='mount_tag'/>
</filesystem>

Client
in the mount options, adjusting the msize (packet payload in bytes) and disabling the client cache has a huge effect on I/O
msize=524288,cache=none

Actual result
With my standard KVM clients on the same host, I get about 1GB/sec/process (measured with iozone3).  With the cc-runtime backed docker storage (bind mounts) I get only 150MB/sec.
Any help in setting these options in the cc-runtime options would be great as they are critical to good performance.

[Runtime]
  Debug = false
  [Runtime.Version]
    Semver = "3.0.23"
    Commit = "64d2226"
    OCI = "1.0.1"
  [Runtime.Config]
    Path = "/usr/share/defaults/clear-containers/configuration.toml"

[Hypervisor]
  MachineType = "pc"
  Version = "QEMU emulator version 2.7.1(2.7.1+git.d4a337fe91-11.cc), Copyright (c) 2003-2016 Fabrice Bellard and the QEMU Project developers"
  Path = "/usr/bin/qemu-lite-system-x86_64"
  Debug = false
  BlockDeviceDriver = "virtio-scsi"

[Image]
  Path = "/usr/share/clear-containers/cc-20640-agent-6f6e9e.img"

[Kernel]
  Path = "/usr/share/clear-containers/vmlinuz-4.14.22-86.container"
  Parameters = ""

[Proxy]
  Type = "ccProxy"
  Version = "Version: 3.0.23+git.3cebe5e"
  Path = "/usr/libexec/clear-containers/cc-proxy"
  Debug = false

[Shim]
  Type = "ccShim"
  Version = "shim version: 3.0.23 (commit: 205ecf7)"
  Path = "/usr/libexec/clear-containers/cc-shim"
  Debug = false

[Agent]
  Type = "hyperstart"
  Version = "<<unknown>>"

[Host]
  Kernel = "4.9.0-6-amd64"
  Architecture = "amd64"
  VMContainerCapable = true
  [Host.Distro]
    Name = "Debian GNU/Linux"
    Version = "9"
  [Host.CPU]
    Vendor = "GenuineIntel"
    Model = "Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz"

Runtime config files
Runtime default config files
/usr/share/defaults/clear-containers/configuration.toml
/usr/share/defaults/clear-containers/configuration.toml

Runtime config file contents
Output of "cat "/etc/clear-containers/configuration.toml"":
# XXX: WARNING: this file is auto-generated.
# XXX:
# XXX: Source file: "config/configuration.toml.in"
# XXX: Project:
# XXX:   Name: Intel® Clear Containers
# XXX:   Type: cc

[hypervisor.qemu]
path = "/usr/bin/qemu-lite-system-x86_64"
kernel = "/usr/share/clear-containers/vmlinuz.container"
image = "/usr/share/clear-containers/clear-containers.img"
machine_type = "pc"

# Optional space-separated list of options to pass to the guest kernel.
# For example, use `kernel_params = "vsyscall=emulate"` if you are having
# trouble running pre-2.15 glibc.
#
# WARNING: - any parameter specified here will take priority over the default
# parameter value of the same name used to start the virtual machine.
# Do not set values here unless you understand the impact of doing so as you
# may stop the virtual machine from booting.
# To see the list of default parameters, enable hypervisor debug, create a
# container and look for 'default-kernel-parameters' log entries.
kernel_params = ""

# Path to the firmware.
# If you want that qemu uses the default firmware leave this option empty
firmware = ""

# Machine accelerators
# comma-separated list of machine accelerators to pass to the hypervisor.
# For example, `machine_accelerators = "nosmm,nosmbus,nosata,nopit,static-prt,nofw"`
machine_accelerators=""

# Default number of vCPUs per POD/VM:
# unspecified or 0                --> will be set to 1
# < 0                             --> will be set to the actual number of physical cores
# > 0 <= number of physical cores --> will be set to the specified number
# > number of physical cores      --> will be set to the actual number of physical cores
default_vcpus = 1

# Bridges can be used to hot plug devices.
# Limitations:
# * Currently only pci bridges are supported
# * Until 30 devices per bridge can be hot plugged.
# * Until 5 PCI bridges can be cold plugged per VM.
#   This limitation could be a bug in qemu or in the kernel
# Default number of bridges per POD/VM:
# unspecified or 0   --> will be set to 1
# > 1 <= 5           --> will be set to the specified number
# > 5                --> will be set to 5
default_bridges = 1

# Default memory size in MiB for POD/VM.
# If unspecified then it will be set 2048 MiB.
#default_memory = 2048

# Disable block device from being used for a container's rootfs.
# In case of a storage driver like devicemapper where a container's
# root file system is backed by a block device, the block device is passed
# directly to the hypervisor for performance reasons.
# This flag prevents the block device from being passed to the hypervisor,
# 9pfs is used instead to pass the rootfs.
disable_block_device_use = false

# Block storage driver to be used for the hypervisor in case the container
# rootfs is backed by a block device. This is either virtio-scsi or
# virtio-blk.
block_device_driver = "virtio-scsi"

# Enable pre allocation of VM RAM, default false
# Enabling this will result in lower container density
# as all of the memory will be allocated and locked
# This is useful when you want to reserve all the memory
# upfront or in the cases where you want memory latencies
# to be very predictable
# Default false
#enable_mem_prealloc = true

# Enable huge pages for VM RAM, default false
# Enabling this will result in the VM memory
# being allocated using huge pages.
# This is useful when you want to use vhost-user network
# stacks within the container. This will automatically
# result in memory pre allocation
#enable_hugepages = true

# Enable swap of vm memory. Default false.
# The behaviour is undefined if mem_prealloc is also set to true
#enable_swap = true

# This option changes the default hypervisor and kernel parameters
# to enable debug output where available. This extra output is added
# to the proxy logs, but only when proxy debug is also enabled.
#
# Default false
#enable_debug = true

# Disable the customizations done in the runtime when it detects
# that it is running on top a VMM. This will result in the runtime
# behaving as it would when running on bare metal.
#
#disable_nesting_checks = true

[proxy.cc]
path = "/usr/libexec/clear-containers/cc-proxy"

# If enabled, proxy messages will be sent to the system log
# (default: disabled)
#enable_debug = true

[shim.cc]
path = "/usr/libexec/clear-containers/cc-shim"

# If enabled, shim messages will be sent to the system log
# (default: disabled)
#enable_debug = true

[agent.cc]
# There is no field for this section. The goal is only to be able to
# specify which type of agent the user wants to use.

[runtime]
# If enabled, the runtime will log additional debug messages to the
# system log
# (default: disabled)
#enable_debug = true
#
# Internetworking model
# Determines how the VM should be connected to the
# the container network interface
# Options:
#
#   - bridged
#     Uses a linux bridge to interconnect the container interface to
#     the VM. Works for most cases except macvlan and ipvlan.
#
#   - macvtap
#     Used when the Container network interface can be bridged using
#     macvtap.
internetworking_model="bridged"

Output of "cat "/usr/share/defaults/clear-containers/configuration.toml"":
# XXX: WARNING: this file is auto-generated.
# XXX:
# XXX: Source file: "config/configuration.toml.in"
# XXX: Project:
# XXX:   Name: Intel® Clear Containers
# XXX:   Type: cc

[hypervisor.qemu]
path = "/usr/bin/qemu-lite-system-x86_64"
kernel = "/usr/share/clear-containers/vmlinuz.container"
image = "/usr/share/clear-containers/clear-containers.img"
machine_type = "pc"

# Optional space-separated list of options to pass to the guest kernel.
# For example, use `kernel_params = "vsyscall=emulate"` if you are having
# trouble running pre-2.15 glibc.
#
# WARNING: - any parameter specified here will take priority over the default
# parameter value of the same name used to start the virtual machine.
# Do not set values here unless you understand the impact of doing so as you
# may stop the virtual machine from booting.
# To see the list of default parameters, enable hypervisor debug, create a
# container and look for 'default-kernel-parameters' log entries.
kernel_params = ""

# Path to the firmware.
# If you want that qemu uses the default firmware leave this option empty
firmware = ""

# Machine accelerators
# comma-separated list of machine accelerators to pass to the hypervisor.
# For example, `machine_accelerators = "nosmm,nosmbus,nosata,nopit,static-prt,nofw"`
machine_accelerators=""

# Default number of vCPUs per POD/VM:
# unspecified or 0                --> will be set to 1
# < 0                             --> will be set to the actual number of physical cores
# > 0 <= number of physical cores --> will be set to the specified number
# > number of physical cores      --> will be set to the actual number of physical cores
default_vcpus = 1

# Bridges can be used to hot plug devices.
# Limitations:
# * Currently only pci bridges are supported
# * Until 30 devices per bridge can be hot plugged.
# * Until 5 PCI bridges can be cold plugged per VM.
#   This limitation could be a bug in qemu or in the kernel
# Default number of bridges per POD/VM:
# unspecified or 0   --> will be set to 1
# > 1 <= 5           --> will be set to the specified number
# > 5                --> will be set to 5
default_bridges = 1

# Default memory size in MiB for POD/VM.
# If unspecified then it will be set 2048 MiB.
#default_memory = 2048

# Disable block device from being used for a container's rootfs.
# In case of a storage driver like devicemapper where a container's
# root file system is backed by a block device, the block device is passed
# directly to the hypervisor for performance reasons.
# This flag prevents the block device from being passed to the hypervisor,
# 9pfs is used instead to pass the rootfs.
disable_block_device_use = false

# Block storage driver to be used for the hypervisor in case the container
# rootfs is backed by a block device. This is either virtio-scsi or
# virtio-blk.
block_device_driver = "virtio-scsi"

# Enable pre allocation of VM RAM, default false
# Enabling this will result in lower container density
# as all of the memory will be allocated and locked
# This is useful when you want to reserve all the memory
# upfront or in the cases where you want memory latencies
# to be very predictable
# Default false
#enable_mem_prealloc = true

# Enable huge pages for VM RAM, default false
# Enabling this will result in the VM memory
# being allocated using huge pages.
# This is useful when you want to use vhost-user network
# stacks within the container. This will automatically
# result in memory pre allocation
#enable_hugepages = true

# Enable swap of vm memory. Default false.
# The behaviour is undefined if mem_prealloc is also set to true
#enable_swap = true

# This option changes the default hypervisor and kernel parameters
# to enable debug output where available. This extra output is added
# to the proxy logs, but only when proxy debug is also enabled.
#
# Default false
#enable_debug = true

# Disable the customizations done in the runtime when it detects
# that it is running on top a VMM. This will result in the runtime
# behaving as it would when running on bare metal.
#
#disable_nesting_checks = true

[proxy.cc]
path = "/usr/libexec/clear-containers/cc-proxy"

# If enabled, proxy messages will be sent to the system log
# (default: disabled)
#enable_debug = true

[shim.cc]
path = "/usr/libexec/clear-containers/cc-shim"

# If enabled, shim messages will be sent to the system log
# (default: disabled)
#enable_debug = true

[agent.cc]
# There is no field for this section. The goal is only to be able to
# specify which type of agent the user wants to use.

[runtime]
# If enabled, the runtime will log additional debug messages to the
# system log
# (default: disabled)
#enable_debug = true
#
# Internetworking model
# Determines how the VM should be connected to the
# the container network interface
# Options:
#
#   - bridged
#     Uses a linux bridge to interconnect the container interface to
#     the VM. Works for most cases except macvlan and ipvlan.
#
#   - macvtap
#     Used when the Container network interface can be bridged using
#     macvtap.
internetworking_model="bridged"

Agent
version:
unknown

Logfiles
Runtime logs
/usr/bin/cc-collect-data.sh: line 242: journalctl: command not found
No recent runtime problems found in system journal.
Proxy logs
/usr/bin/cc-collect-data.sh: line 242: journalctl: command not found
No recent proxy problems found in system journal.
Shim logs
/usr/bin/cc-collect-data.sh: line 242: journalctl: command not found
No recent shim problems found in system journal.

Container manager details
Have docker
Docker
Output of "docker version":
Client:
 Version:	17.12.0-ce
 API version:	1.35
 Go version:	go1.9.2
 Git commit:	c97c6d6
 Built:	Wed Dec 27 20:11:19 2017
 OS/Arch:	linux/amd64

Server:
 Engine:
  Version:	17.12.0-ce
  API version:	1.35 (minimum version 1.12)
  Go version:	go1.9.2
  Git commit:	c97c6d6
  Built:	Wed Dec 27 20:09:54 2017
  OS/Arch:	linux/amd64
  Experimental:	false

Output of "docker info":
Containers: 3
 Running: 3
 Paused: 0
 Stopped: 0
Images: 4
Server Version: 17.12.0-ce
Storage Driver: zfs
 Zpool: error while getting pool information strconv.ParseUint: parsing "": invalid syntax
 Zpool Health: not available
 Parent Dataset: zpool2/docker
 Space Used By Parent: 3466528128
 Space Available: 3851731992320
 Parent Quota: no
 Compression: lz4
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: cc-runtime runc
Default Runtime: cc-runtime
Init Binary: docker-init
containerd version: 89623f28b87a6004d4b785663257362d1658a729
runc version: 64d2226 (expected: b2567b37d7b75eb4cf325b77297b140ea686ce8f)
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.0-6-amd64
Operating System: Debian GNU/Linux 9 (stretch)
OSType: linux
Architecture: x86_64
CPUs: 40
Total Memory: 376.6GiB
Name: <redacted>
ID: <redacted>
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 42
 Goroutines: 54
 System Time: 2018-04-13T19:42:44.065725616+10:00
 EventsListeners: 0
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

WARNING: No swap limit support

Output of "systemctl show docker":
/usr/bin/cc-collect-data.sh: line 167: systemctl: command not found

No kubectl

Packages
Have dpkg
Output of "dpkg -l|egrep "(cc-oci-runtime|cc-proxy|cc-runtime|cc-shim|kata-proxy|kata-runtime|kata-shim|clear-containers-image|linux-container|qemu-lite|qemu-system-x86)"":
ii  cc-proxy                             3.0.23+git.3cebe5e-27                   amd64
ii  cc-runtime                           3.0.23+git.64d2226-27                   amd64
ii  cc-runtime-bin                       3.0.23+git.64d2226-27                   amd64
ii  cc-runtime-config                    3.0.23+git.64d2226-27                   amd64
ii  cc-shim                              3.0.23+git.205ecf7-27                   amd64
ii  clear-containers-image               20640-48                                amd64        Clear containers image
ii  linux-container                      4.14.22-86                              amd64        linux kernel optimised for container-like workloads.
ii  qemu-lite                            2.7.1+git.d4a337fe91-11                 amd64        linux kernel optimised for container-like workloads.
ii  qemu-system-x86                      1:2.8+dfsg-6+deb9u3                     amd64        QEMU full system emulation binaries (x86)

Have rpm
Output of "rpm -qa|egrep "(cc-oci-runtime|cc-proxy|cc-runtime|cc-shim|kata-proxy|kata-runtime|kata-shim|clear-containers-image|linux-container|qemu-lite|qemu-system-x86)"":

p.s. docker has been all sorts of fun to get going on this setup.  I had to downgrade from v18.03 to 17.09.1 as containers were not stopping properly.  Please ignore the error in the docker info output ( Zpool: error while getting pool information strconv.ParseUint: parsing "": invalid syntax).  It arises because we're using a ZFS dataset within a pool rather than a dedicated pool.  I don't think this has implications for the docker ZFS implementation apart from failing on zpool info commands.

Hi @zeigerpuppy  Good question. 9p msize has been discussed before, as has the cache mode a bit.
Have a look at https://github.com/clearcontainers/hyperstart/pull/25 for the discussion around a PR to set msize. I think that got stuck as nobody had time to run exhaustive tests across different block size transfers etc. to get data on if it improved all situations, and what the memory footprint overhead might be etc.
And then I raised a very related item early this week for kata-containers:
https://github.com/kata-containers/runtime/issues/201
Right now we don't have a way in either Clear or Kata containers to adjust/tweak/add those settings to the mounts without having to rebuild either the agent (Clear) or runtime (Kata). Yes, it would be good to have at least maybe a developer mode option in the toml config file to allow such things to be tweaked.
Both/either of those Issues will show you where and how you could add the extra options if you wanted to do a build and experiment.
Also, iirc, enabling cacheing on 9p is something that needs careful consideration. iirc, the original design of 9p basically said 'do not cache' - but, I think we have experimented with this before, and as long as the constrained situation is understood, I think we could enable some form of cacheing.
@chao-p @rarindam for more thoughts and input.
@bergwolf and @gnawux for visibility, relevance to kata, and any input etc.

@grahamwhaley Yeah we need to have a config option in our toml file for 9p msize, that way it will atleast be convenient to try out different msizes before we settle on a optimal default one without having to rebuild the runtime. I'll raise a PR for that.

Good to hear that it'll get some considerations, options in the toml file would be great.
Please let me know if I can help with testing.

@zeigerpuppy take a look at @amshinde PR here: https://github.com/kata-containers/runtime/pull/207

@zeigerpuppy https://github.com/kata-containers/runtime/pull/207 is now merged. You can now try kata-runtime with the ability to configure 9p msizes for a container. It will be great if you could help out with the testing.
@grahamwhaley Can you provide details about various parameters that we need to take into consideration for testing this out.

@amshinde, thanks for the details.  I am a little behind in bug chasing so may be a little while until I can do a build.  In the meantime I found an interesting way to restore performance....
Previously I had was using cc-runtime with the following file stack (all on Debian Stretch without systemd):

backing file system ZFS -> docker -> cc-runtime using file mapping

Unfortunatley, docker's implementation of ZFS is pretty basic and seems like they've just adapted the overlay driver.  This is a real shame as ZFS is a natural fit when zvols are used.  The main problem I found with this stack was poor performance, but also MongoDB containers failed to work at all, I presume because it couldn't properly memory map to the filesystem.
performance, as stated above was only about 130MB/s

ZFS -> sparse ZVOL -> thin provisioned LVM -> docker devicemapper -> cc-runtime with virtio-blk driver

This setup looks much better, there is now proper block usage and it's sparsely provisioned throughout.  I can snapshot directly on the ZVOL or at the LVM level.  MongoDB works again and I/O performance is more like 1.3GB/s.
Now the strange bit, I mapped an external volume with the docker config:
docker run -it --mount type=bind,source=/zpool1/vmdata/test,target=/test --name iozone threadx/iozone

Now, I presume this is still using a 9p mapping but performance is great (approx 1GB/s read/write).
So, for the moment, I plan to stick with this config.  However, I will try to give the kata runtime a go once I've migrated a whole lot of VMs....
ps. if you're using LVM in Debian Stretch, watch out for this bug which prevents re-attaching of LVM volumes at boot by default.

authors: amshinde grahamwhaley sboeuf zeigerpuppy

repo: clearcontainers/runtime


text:
Expression Transfer

Is expression transfer possible with this repo? I would like to be able to reanimate the expressions on the tracked face using another tracked face while keeping the identity and position of the target face in-tact.

@nfsergiu Unfortunately not, though I did have success with another repo called DECA


text:
TF-10721/dependency-workflow-fix

Ticket(s)

10721

Type of change

[X] Bug fix (non-breaking change which fixes an issue)

Description
This PR aims to fix an issue that arose in a recent PR where the audit report was not properly being commented in the dependency_check workflow and also an issue where the form wasn't being properly commented in the 3rd-part-check workflow
Screenshots
N/A
Checklist:

[X] I have performed a self-review of my own code
[X] I have commented my code, particularly in hard-to-understand areas
[X] My changes generate no new warnings in the console
[X] There are no new linting errors/problems in my code
[X] I have filled this PR out fully, and cleaned up any extraneous items so that it is clear and easy to understand

Hey @sramalho94! Can you give more context or screenshots about what were the non-properly situations?
This will help to review these changes.

hey @LeoFuna , thanks for taking a look at this PR!
And ofc, apologies for not including that in the description:

for the 3rd_party_check you can look at the workflow logs for commit 12cf7ed or earlier in this PR. Under the logs for the Post Comment Step you will see that we were previously getting this error:

Run PR_AUTHOR="sramalho94" PR_NUMBER: 158 { "message": "Problems parsing JSON", "documentation_url": "https://docs.github.com/rest/issues/comments#create-an-issue-comment" }

for the dependency_check you can refer to pr147, specifically the workflow logs for commit e3a1144, under the Comment on PR with Issues Step we were getting this error:

`Run echo "PR has dependency issues:" > pr_comment.txt
PR_NUMBER: 147
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed

0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
{
"message": "Resource not accessible by integration",
100   525  100   153  100   372    697   1696 --:--:-- --:--:-- --:--:--  2397
"documentation_url": "https://docs.github.com/rest/issues/comments#create-an-issue-comment"
}`

repo: clearviction-devs/clearviction-wa