Is that possible to run cucumber tests from my own gem

🤔 What's the problem you're trying to solve?
I am build cucumber tests and build a new gem to pack everything in (including everything, such as cucmber.yml and all the files under folder /features). Wondering if it is possible to run the cucumber test from my new gem? For example to run: mygem "--profile example" "--tag @mytag"
the problem I have is, the cucumber will look for cucumber.yml as well as the folder "/features" from the current path where I run my command "mygem ......". Apparently there is no such files. So is it possible to run cucumber tests from inside of my gem? Looking forward to any advice.
to specify paths for "features" and cucumber.yml rather than using default

✨ What's your proposed solution?

⛏ Have you considered any alternatives or workarounds?

📚 Any additional context?

This text was originally generated from a template, then edited by hand. You can modify the template here.

I've done some tinkering with the internals and found that it's indeed possible, depending on what you're aiming to achieve exactly. If your gem aims to wrap the behaviour of cucumber in some way, i.e. will still expose a features/ directory, you could use Cucumber::Cli::Main to achieve this, e.g.
require "cucumber/cli/main"

# Invokes cucumber, but in a custom directory
def run_tests(directory)
  # Assuming the target directory will have a `features/` directory in it
  Dir.chdir(directory) do
    # https://github.com/cucumber/cucumber-ruby/blob/main/lib/cucumber/cli/main.rb
    # for how you can override the stdout/stderr/kernel methods
    cli = Cucumber::Cli::Main.new(["--some-extra-args"])
    cli.execute!
  end
end

With a setup like this, you could also programmatically set up features/ in the target directory, then use the above to invoke cucumber within your gem.

Thanks for the response I will try and let you know.

You should definitely be able to work with cucumber-ruby programmatically.
It may still be rough for now, but we would be pleased to improve things in the future. So, feel free to submit any feedback at any point :)
Regarding your topic, we have recently bring a new hook dedicated to things like the one you are trying to do here. This is the InstallPlugin hook. It should fit your needs. And if not, let us know, because it is what should help you customizing your cucumber programmatically at some point :)

Thank you both. I tried, not working. The main issue is I have wrapped up /feature folder in the new gem. When running the "cucumber" even inside of the gem, it is still looking for the /feature directory from where the gem command is run, which is some physical directory on the host. not from directory inside of the gem.
Maybe it is not possible to run cucumber this way at all?

It should definitely be possible. I've managed to use the Dir.chdir approach in the past with no issues; could you provide a minimal example of how you're implementing this?

Made some progress with Dir.chdir
Here is the code to run cucumber.
Dir.chdir(dir) do
cli = Cucumber::Cli::Main.new(["profile local tag @test"])
cli.execute!
end
not sure that is the right way to pass profile and tag? Because I got the error below:
[error] No such file or directory - profile local tag @test. You can use cucumber --init to get started.

Got an error with the way below to pass the profile and tag:
cli = Cucumber::Cli::Main.new(['-p local', '-t @test'])

Arguments need to passed in the same format as ARGV, i.e. an invocation like cucumber --foo 1 --bar 2 --baz 3 would need to become
Cucumber::Cli::Main.new(["--foo", "1", "--bar", "2", "--baz", "3"])
# or, using word-arrray syntax
Cucumber::Cli::Main.new(%w[--foo 1 --bar 2 --baz 3])

Let me know how you get along with this

Yeah! working well, pretty excited to see the tests are running from inside of the gem. Thanks for the help.
Next thing I am thinking is...how I could get the cucumber report. as the test automation code itself is from gem inside, what is the  best way to deal with the report? I am pretty new to ruby gem. I am wondering if there is similar thing as volume mapping for docker container, which I could use to allow cucumber to produce html report outside of gem (though the test automation is running from inside of the gem.)?

I'm assuming by 'report' you mean the output of the process? The constructor for Cucumber::Cli::Main in release 8.0.0 is
def initialize(args, out = $stdout, err = $stderr, kernel = Kernel)

so you could do something like this:
class FakeKernel
  attr_reader :exit_code
  def exit(code)
    @exit_code = code
  end
end

output = StringIO.new
kernel = FakeKernel.new
args = ["--format", "html"] # or something similar
cli = Cucumber::Cli::Main.new(args, output, output, kernel) # roll stderr in with stdout
cli.execute!

raise "your tests failed!" unless kernel.exit_code.zero?
p output.string # your output is accessible via this variable

(note: you need to use a 'fake kernel' of sorts, since execute! will call exit when it's done, so your fake kernel needs to intercept that call)

Do we need to keep that issue open?
Is there an actual ongoing issue that still need to be fixed?
@RayChenLDL have you been able to make it work as expected?
Can we close the issue?

You're welcome :)
Thanks @mitchgrout for all the help!


[BUG] decoded path parameter not resolved

Describe the bug
The encoded parameter in path parameter will not passed to the route action
To Reproduce
Steps to reproduce the behavior:

create route with path parameter

@router.get("/test/{value}")
def testRoute( value:str ):
   ....

try to rich this route
GET http://<IP_ADDRESS>:3000/api/test/AA %2F A%2B

you will get this error

404:
{
  "detail": "Not Found"
}

Expected behavior
It should decode the value parameter and pass into value argument
Environment:

OS: Linux, Ubuntu, Container
FastAPI Version : 0.41.0
Python : 3.7.4

How's declared your router?
Le mer. 13 nov. 2019 à 9:13 PM, IVAN Parvareshi<EMAIL_ADDRESS>a écrit :

Describe the bug
The encoded parameter in path parameter will not passed to the route
action
To Reproduce
Steps to reproduce the behavior:

create route with path parameter

@router.get("/test/{value}")def testRoute( value:str ):
....

try to rich this route
GET http://<IP_ADDRESS>:3000/api/test/AA %2F A%2B
2.
you will get this error
404:
{
"detail": "Not Found"
}
Expected behavior
It should decode the value parameter and pass into value argument
Environment:

OS: Linux, Ubuntu, Container
FastAPI Version : 0.41.0
Python : 3.7.4

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/tiangolo/fastapi/issues/708?email_source=notifications&email_token=AAINSPUYGPL5VV7XPF4WJGDQTRNWRA5CNFSM4JNA7CTKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HZD5LOA,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAINSPWMK4XOYZOYVE7N3PLQTRNWRANCNFSM4JNA7CTA
.

i have implement the Api like this :
from fastapi import APIRouter, Depends

router = APIRouter()

@router.get("/test/{value}")
def testRoute( value:str ):
   print(f"Value:{value}")

Then it's expected to get a 404, you can add a '/api' prefix in your router
to reach the route you want in your example
Le mer. 13 nov. 2019 à 9:20 PM, IVAN Parvareshi<EMAIL_ADDRESS>a écrit :

i have implement the Api like this :
from fastapi import APIRouter, Depends
router = APIRouter()
@router.get("/test/{value}")def testRoute( value:str ):
print(f"Value:{value}")
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/tiangolo/fastapi/issues/708?email_source=notifications&email_token=AAINSPSPEUI5O2RIR646BU3QTROQPA5CNFSM4JNA7CTKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOED7QOOY#issuecomment-553584443,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAINSPXA4YTBDOETVEITJDLQTROQPANCNFSM4JNA7CTA
.

Actually the real sample is like this

# main.py

app.include_router(api_router, prefix=f"api")

# api_router.py
from fastapi import APIRouter, Depends
api_router = APIRouter()
api_router.include_router(test_api.router)

# test_api.py
from fastapi import APIRouter, Depends

router = APIRouter()

@router.get("test/{value}")
def testRoute( value:str ):
   print(f"Value:{value}")

If i call the api using  /api/test/A it will work perfectly but if i call it as http://<IP_ADDRESS>:3000/api/test/AA%20%2F%20A%2B it will fail and will return 404 response code

ok you're making several mistakes here, but imho the last change about allowing non-forward slashed to routers doesnt help

you need a slash at beginning of your route or it will be /apitest/{value}
if you use include_router before its decorator it wont be in the routes, not sure it's relevant here as you have 2 routers, is it really what you want
your urlencoded string contains a slash, so instead you can use a starlette path urlconvertor, badly documented I must say

a working snippet for reference with test case
import pytest
from fastapi import FastAPI, APIRouter
from starlette.testclient import TestClient

app = FastAPI()

router = APIRouter()

@router.get("/test/{value:path}")
def myurlencodedroute(value:str):
    return value

app.include_router(router, prefix=f"/api")

data = [("A", "A"), ("AA / A+", "AA / A+"), ("AA%20%2F%20A%2B", "AA / A+") ]
@pytest.mark.parametrize("v, expected", data)
def test_urlencoded(v, expected):
    print([r.path for r in app.routes])
    with TestClient(app) as client:
        response = client.get(f"/api/test/{v}")
        assert response.status_code == 200
        assert response.json() == expected

Thanks, :path fixed my problem

Thanks for the help here @euri10 ! :clap: :bow:
Thanks for reporting back and closing the issue @ivanparvaresh  :+1:


[Feature] Configurability for auto_resample

Let user configure auto_resample on alsa output

Available in release 2022-12-07


Endless warnings about sha1 being deprecated...

This is causing hiccups with some of our local developers.  Any particular reason its started happening this evening:
$ brew update && brew upgrade
Already up-to-date.
Warning: Calling Formula.sha1 is deprecated!
Use Formula.sha256 instead.
/usr/local/Library/Taps/osx-cross/homebrew-avr/avr-binutils.rb:8:in `class:AvrBinutils'
Warning: Calling SoftwareSpec#sha1 is deprecated!
Use SoftwareSpec#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:4:in `sha1'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:11:in `sha1'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/osx-cross/homebrew-avr/avr-binutils.rb:14:in `block in class:AvrBinutils'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/osx-cross/homebrew-avr/avr-binutils.rb:14:in `block in class:AvrBinutils'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/osx-cross/homebrew-avr/avr-binutils.rb:14:in `block in class:AvrBinutils'
Warning: Calling SoftwareSpec#sha1 is deprecated!
Use SoftwareSpec#sha256 instead.
/usr/local/Library/Taps/killercup/homebrew-openresty/Formula/ngx_openresty.rb:8:in `block in class:NgxOpenresty'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:11:in `sha1'
Warning: Calling SoftwareSpec#sha1 is deprecated!
Use SoftwareSpec#sha256 instead.
/usr/local/Library/Taps/killercup/homebrew-openresty/Formula/ngx_openresty.rb:13:in `block in class:NgxOpenresty'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:11:in `sha1'
Warning: Calling Formula.sha1 is deprecated!
Use Formula.sha256 instead.
/usr/local/Library/Taps/prosody/homebrew-prosody/prosody.rb:9:in `class:Prosody'
Warning: Calling SoftwareSpec#sha1 is deprecated!
Use SoftwareSpec#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:4:in `sha1'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:11:in `sha1'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/prosody/homebrew-prosody/prosody.rb:26:in `block in class:Prosody'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/prosody/homebrew-prosody/prosody.rb:26:in `block in class:Prosody'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/prosody/homebrew-prosody/prosody.rb:26:in `block in class:Prosody'
Warning: Calling Formula.sha1 is deprecated!
Use Formula.sha256 instead.
/usr/local/Library/Taps/osx-cross/homebrew-avr/avr-binutils.rb:8:in `class:AvrBinutils'
Warning: Calling SoftwareSpec#sha1 is deprecated!
Use SoftwareSpec#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:4:in `sha1'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:11:in `sha1'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/osx-cross/homebrew-avr/avr-binutils.rb:14:in `block in class:AvrBinutils'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/osx-cross/homebrew-avr/avr-binutils.rb:14:in `block in class:AvrBinutils'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/osx-cross/homebrew-avr/avr-binutils.rb:14:in `block in class:AvrBinutils'
Warning: Calling SoftwareSpec#sha1 is deprecated!
Use SoftwareSpec#sha256 instead.
/usr/local/Library/Taps/killercup/homebrew-openresty/Formula/ngx_openresty.rb:8:in `block in class:NgxOpenresty'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:11:in `sha1'
Warning: Calling SoftwareSpec#sha1 is deprecated!
Use SoftwareSpec#sha256 instead.
/usr/local/Library/Taps/killercup/homebrew-openresty/Formula/ngx_openresty.rb:13:in `block in class:NgxOpenresty'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:11:in `sha1'
Warning: Calling Formula.sha1 is deprecated!
Use Formula.sha256 instead.
/usr/local/Library/Taps/prosody/homebrew-prosody/prosody.rb:9:in `class:Prosody'
Warning: Calling SoftwareSpec#sha1 is deprecated!
Use SoftwareSpec#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:4:in `sha1'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Homebrew/compat/sha1.rb:11:in `sha1'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/prosody/homebrew-prosody/prosody.rb:26:in `block in class:Prosody'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/prosody/homebrew-prosody/prosody.rb:26:in `block in class:Prosody'
Warning: Calling Resource#sha1 is deprecated!
Use Resource#sha256 instead.
/usr/local/Library/Taps/prosody/homebrew-prosody/prosody.rb:26:in `block in class:Prosody'

This is causing hiccups with some of our local developers. Any particular reason its started happening this evening

People executing brew install or brew fetch on SHA1 formulae have been seeing a warning for a while. It was turned into a more severe fail yesterday as the deprecation timetable edges ahead, without the formulae actually needing to be executed by a user. We may need to see how that goes.
Essentially carrying around so much old code is problematic on a number of levels & makes looking after Homebrew considerably harder, which degrades UX over time. Consequently, we try & gently nudge external taps to follow our lead and update the syntax/checksum every now and again with tools like brew audit but sometimes that's not noisy enough for people to take notice of 😕.
In the very short term I'd recommend reporting it to the upstream taps that they need to move their formulae over to SHA256. I've done that for every tap you've listed in your post & https://github.com/killercup/homebrew-openresty have already fixed their issue at least.
Despite the noise things should actually be updating & upgrading fine.
CC @MikeMcQuaid.

Sorry for the noise but, as @DomT4 points out, they are issues that need reported and fixed. Thanks for the report!

Thanks @DomT4 and @MikeMcQuaid for the info .. I will chase it up as I encounter the errors and report it to the appropriate places upstream ..

I will chase it up as I encounter the errors and report it to the appropriate places upstream ..

Thanks! :heart: You might have noticed that after some tweaking it should now be always printing the path of the offending formula file (which was not yet the case when you opened this issue). This should make reporting those warnings to the right tap a lot easier.

How should this interact with boneyarded formulae? #615 brew tap is now balking at tapping homebrew/boneyard, and brew uses gets lots of warnings when the boneyard is tapped.


Usage in iOS

Your documentation about iOS installation is not clear for me.

In the share extension loadView() method, add

Please tell me where is this loadView() function.
Also please update docs to compatible with newer version of React.
Thank you

+1. Would be very helpful!

https://github.com/meedan/react-native-share-menu/blob/master/example/ios/README.md

Thanks for the reply @jesperlndk - this should provide the adequate doc.


[AUTO] Bump Angular

Automated changes by create-pull-request GitHub action

How do I make it so I receive an email notification once a PR like this is created? Since I had to use my PAT, the author is myself, but a cron job created the PR, not me.

In Settings, I can check Includes your own updates under Customize email updates, but I only want to override that setting for Bump Angular PRs in this repo.

I might need to use action-send-email if a PR was created.

Finally, emails work! Thanks to https://stackoverflow.com/a/52730533 for pointing me in the right direction.


Percentage Values Returning Extra Decimals

I'm trying to convert a percentage into its decimal value. However, I see the value returned from numerial to return extra decimals.
Example:
numeral('41 %').value()
The returned value is 0.41000000000000003 (not expected).
If we try the same thing with 40...
numeral('40 %').value()
The returned value is 0.4, (expected).
Here are all of the values from 0-100 that return extra decimal values:
35, 41, 47, 57, 69, 70, 82, 83, 94, 95

try this
numeral('8.2%').value()
same problem


Fix: GITHUB_ACTION => GITHUB_ACTIONS

GitHub CI doesn't always have a GITHUB_ACTION environment variable, but it does have GITHUB_ACTIONS set to true.
Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

I simply did run env in a workflow, and noticed there being a GITHUB_ACTIONS, but not GITHUB_ACTION. But now that I look again I actually see both..
So I'm not too sure of this PR anymore..

Btw, the new location for the environment variable documentation is here: https://help.github.com/en/articles/virtual-environments-for-github-actions#environment-variables

@koenpunt How about if we put both GITHUB_ACTION and GITHUB_ACTIONS in here? 😇 Doesn't really hurt and that way we know if will 100% work

Feel free to squash and merge when the build succeeds.


Increase test timeout limits

Currently tests are failing due to timeouts.
For now, let's increase test times. In the future, let's make sure to address #112 soon.

Closing this as the bug is actually in https://github.com/ray-project/ray/issues/16507


Candle filling

https://github.com/AugurProject/augur/issues/4739
added "empty" buckets to show no change in price. Updated highlighted width to always match the width of the candle/volume bar highlighted.

weird that the middle candle doesn't give volume

only 2 trades but there is 3 candles.

missing grey dash indicating no trade was made at 20:00

larger length of time with tradeless hours. I would expect grey dash at previous hours close on tradeless hours


Remove type parameters from Store

Depends on:

https://github.com/trussed-dev/trussed/pull/144

Alternatively, we could completely drop the Store trait and just use a struct with three references.  To be tested whether that is more efficient.

Is this really necessary?

It is not necessary, but I think it has multiple benefits:  It leads to simpler code.  It allows us to get rid of the unnecessary Fs type that is just another level of indirection and another static mut.  And it allows us to be more flexible in Store implementations, especially e. g. for the virtual runners or when replacing a storage with RAM.  So I would rather ask the question:  Why do we need these type parameters?

Good!


No ammo left warning on ammo-less weapons

Analog melee weapons, like the survival knife, cause a yellow "Knife, survival has no ammunition left!" popup. Not the biggest issue since it doesn't stop you from doing anything, but I wanted to mention it.

Discovered in Discord that many items default to 0 in the capacity and usage fields, which causes the issue. If those fields are blank, it works

Should be fixed in pull request #107 which has been merged for the next release.


[WFLY-10478] Use the Servlet 3.0 protocol where required for non-clie…

…nt tests which need to operate on specific deployments.
https://issues.jboss.org/browse/WFLY-10478
The jmx-as7 protocol, or jmx protocol in general, does not always run tests on the correct deployment. If a test has two testable deployments and the @RunAsClient is not on the test type or test method then all tests will be run on the same deployment. Which deployment the tests are executed seems to random.
This is essentially a workaround for https://issues.jboss.org/browse/WFARQ-46 which may not even be fixable in wildfly-arquillian.

The test failure seems related to this PR. However it's passing locally and on Windows.

retest this please

retest this please I'll likely end up closing this, but there is a real issue that should be looked into at some point with tests being executed in the same (random) container.


Refresh tokens: automatic silent refresh did not work

I still get this error "automatic silent refresh did not work"
I configured static page under http://localhost:4200/silent-renew.html
Inside init function I run this.oauthService.setupAutomaticSilentRefresh();
I get redirection to silent-renew.html and then I got error:
Parameter jwks expected!
at JwksValidationHandler.push../node_modules/angular-oauth2-oidc/esm5/angular-oauth2-oidc.js.JwksValidationHandler.validateSignature (VM4804 vendor.js:102502)
jwks exist after login, but then when refreshingToken runs , jwks is null

Could you check whether this also happens against the maintainers example IDS (max/geheim)?
If yes, could you help us create a minimal reproducible scenario, perhaps on StackBlitz? The examples from this repo and my own example don't have the issue you mention, I think?

I think this is related with problem that after I login, I am redirected to callback page with this url
http://localhost:4200/#/auth-callback?id_token=someLongToken&access_token=someLongToken&token_type=Bearer&expires_in=3600&scope=openid profile Apis&state=4gZ7ozMEl08yoiVvQPKMtd6qs9PNxRTakHc4KZ3I&session_state=rkC6NA14l3tMK6ro9rGJqw4BZosLGuTKNh9T1TzYYLw.abf4c18b7e0c1109cf3c03101ae936ab
and in this moment I do not have stored token yet.  Token does not exists in the webbrowser storage yet.
Now if I click on any item on my page , there is second call to authorize
http://localhost:63665/connect/authorize?response_type=id_token token&client_id=2e73c476-5a81-409b-b8b3-579b0095db44&state=IQv7ZvZImYMcpIdwQSinJPZne8LmKTbOQ84zrwnx&redirect_uri=http%3A%2F%2Flocalhost%3A4200%2F%23%2Fauth-callback%3F&scope=openid profile Apis&nonce=IQv7ZvZImYMcpIdwQSinJPZne8LmKTbOQ84zrwnx
and now I have token but I lost info from .well-known/openid-configuration
So inside refresh Token functionality , in setupSilentRefreshEventListener
if I change
_this.tryLogin to
_this.loadDiscoveryDocument().then(function (doc) {
_this.tryLogin({
then refreshTokens work, so it must be something with double redirection after login where I am loosing info about openid-configuration
Are you able based on information I provided here tell me any clue why this double redirection can occoure ?

Apologies, but I think we can still only guess at the root cause. Put yourself in our position: all we have is your posts above, with that I can't reliably set up the same bug you're seeing.
Could you try making a StackBlitz example?
Alternatively, you could compare your approach with this example, perhaps you can spot the difference between where the silent refresh is being set up?

Please, try to make a repro (or debug using mentioned examples) e.g. on StackBlitz so we have the same context. Otherwise it's just so inconvenient to help.

Hello,
How did you make it worked?
I am also getting "Automatic silent refresh did not work"
In network, i can see a call to /authorize method and return is 400, also in parameters i can see it being redirected to my silent.html
Could you please help?


Contemplate draining state in JRG default display

This PR improves behavior from:
$ signadot jrg apply -f  /home/ddv/git/signadot/signadot/sandboxes/test/control/data/jobrunnergroups/basic.yaml
Applied runner "basic" ("https://app.signadot.com/testing/runner-groups/basic")

$ signadot job submit -f /home/ddv/git/signadot/signadot/sandboxes/test/control/data/jobs/basic.yaml
Job basic-10r273y queued on Job Runner Group: basic

Dashboard page: https://app.signadot.com/testing/jobs/basic-10r273y

$ signadot jrg delete basic
Deleted jobrunnergroup "basic".

$ signadot jrg list
NAME      CLUSTER   CREATED          STATUS
cypress   test      2 days ago       1/1 pods ready
basic     test      27 seconds ago   1/1 pods ready   <=======

To:
$ signadot jrg apply -f  /home/ddv/git/signadot/signadot/sandboxes/test/control/data/jobrunnergroups/basic.yaml
Applied runner "basic" ("https://app.signadot.com/testing/runner-groups/basic")

$ signadot job submit -f /home/ddv/git/signadot/signadot/sandboxes/test/control/data/jobs/basic.yaml
Job basic-g0kp2ty queued on Job Runner Group: basic

Dashboard page: https://app.signadot.com/testing/jobs/basic-g0kp2ty

$ signadot jrg delete basic
Deleted jobrunnergroup "basic".

$ signadot jrg list
NAME      CLUSTER   CREATED          STATUS
cypress   test      2 days ago       1/1 pods ready
basic     test      14 seconds ago   draning   <=====

@davixcky, @jmsktm, I guess it would be nice to present the same flow in the UI too.
Right now the UI stops rendering the JRG as soon as it gets deleted, what looks inconsistent to me, because the user can't recreate that JRG until the previous one is drained (so, in a way, it is still there).


[stable/coredns] Replace proxy with forward plugin

Seems to have a better performance and is less CPU-intensive.
See also: https://github.com/coredns/deployment/issues/74
Signed-off-by: Manuel Rüger<EMAIL_ADDRESS>
What this PR does / why we need it:
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped

/assign @acaleph

/assign @davidkarlsen


Name non-constant identifiers using lowerCamelCase.

Hi.
I'm using the package freezed and when I use json_serializable with, this problem shows to me. So I add this line // ignore: non_constant_identifier_names and the problem does not show more. But I need to do it manually, can you add it in your package, will solve this borrying label in poblems tabs.
This is what was generated:
// GENERATED CODE - DO NOT MODIFY BY HAND

part of 'ability-model.dart';

// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************

// ignore: non_constant_identifier_names
_$_Ability _$_$_AbilityFromJson(Map<String, dynamic> json) {
  return _$_Ability(
    name: json['name'] as String,
    url: json['url'] as String,
    isHidden: json['isHidden'] as bool,
    slot: json['slot'] as int,
  );
}

// ignore: non_constant_identifier_names
Map<String, dynamic> _$_$_AbilityToJson(_$_Ability instance) =>
    <String, dynamic>{
      'name': instance.name,
      'url': instance.url,
      'isHidden': instance.isHidden,
      'slot': instance.slot,
    };

And it's the code:
import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:flutter/foundation.dart';

part 'ability-model.freezed.dart';
part 'ability-model.g.dart';

@freezed
abstract class Ability with _$Ability {
  const factory Ability({
    @required String name,
    @required String url,
    @required bool isHidden,
    @required int slot,
  }) = _Ability;

  factory Ability.fromJson(Map<String, dynamic> json) =>
      _$AbilityFromJson(json);
}

I don't know if I'm doing something wrong, if so tell me what I need to do to solve this, thanks.

JsonSerializable should be smarter when creating the private name for classes that are already private.
_SomeClass -> _$_SomeClass is not ideal
We should do _SomeClass -> _$SomeClass
In the meantime, you can disable the lint in generated code.
Look at this Commit for an example: https://github.com/dart-lang/pubspec_parse/commit/a5521d8e821fce1e41d13087e1ae2524ea3ad726

Add source_gen to your pubspec: https://github.com/dart-lang/pubspec_parse/commit/a5521d8e821fce1e41d13087e1ae2524ea3ad726#diff-fb2d52cd953afedcafc9fe7629c6f132R24
Add to your build.yaml (or create a build.yaml)
https://github.com/dart-lang/pubspec_parse/commit/a5521d8e821fce1e41d13087e1ae2524ea3ad726#diff-5b123ecec7bf9d216a1323f790a0602aR15


fix(datepicker): Datepicker only accept text that matches format

fixes issue #2886

HI. I just found this PR. Few days ago I prepared mine, very similar one. But I haven't added additional parameter strict-date. For now I would say it's redundant one because is there really a situation when we have some date format defined (and actually we always have, don't we?) but don't want date to be scrict-parsed? I just can't imagine such requirement.

@clockworked247 - This fails in the travis build, can you update the PR?

@karianna - Sure. Will do.

@jmayday - I believe the changes are quite similar.  I only added the param to preserve existing functionality, so if you think it's not necessary, I'm all for your change.  Looking at the code, you're removing the fallback and relying on dateParser.parse().  That code appears to effectively do the same thing in returning undefined if the date is not valid.  So that looks good to me.

@clockworked247 The build is still failing. Can you please fix this PR?

@rvanbaalen My understanding was that my PR was a duplicate of #3294, so I'm OK to just close this and let the issue be hashed out there.  It seems it's under debate though.
I'm not really following what #3417 conflicts with the change.  Considering we need to validate a date entered manually in the associated text field, it only makes sense to add this kind of change.  Otherwise, the Date() fallback will just change the invalid date to some odd number that has nothing to do with what the user entered.  Super confusing...
Closing this, as it's a duplicate.

Thanks for detecting the duplicate @clockworked247 :+1:


XAML type documentation doesn't contain ContentProperty name

The XAML content properties section notes:

For example, on the Border reference page, you'll see this: ContentProperty("Name=Child").

That information, however, isn't available. The class documentation lists the attributes, but doesn't state the name for the ContentProperty.
The class documentation should contain the name of the ContentProperty for all types that have the ContentPropertyAttribute, irrespective of the Windows Runtime language projection used. Please make sure to not ignore C++/WinRT.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 204cc15e-149d-caf0-48a7-86b29d39e8f7
Version Independent ID: c13c7269-ae0e-5422-ef19-30ac90d1d6d6
Content: XAML syntax guide - Windows UWP applications
Content Source: windows-apps-src/xaml-platform/xaml-syntax-guide.md
Product: uwp
Technology: platform
GitHub Login: @jwmsft
Microsoft Alias: jimwalk

@mijacobs this seems like a general improvement to the docs that we would need. The Metadata has this information, we would just want the docs pages to include it. Does WPF already do this and we could just extend that logic to the UWP pages?

The information is in the WPF docs, but it's manually added. For an example, see "Content model" in the remarks section of the button page: https://docs.microsoft.com/en-us/dotnet/api/system.windows.controls.button?view=netframework-4.8
We have a work item open against the engineering team to add this info.

This information is now included on reference pages.


fix: minor rebrand update

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


fix: preheat on massmint

Thank you for your contribution to the KodaDot - One Stop Shop for Polkadot NFTs.
👇 __ Let's make a quick check before the contribution.
PR Type

[x] Bugfix

Context

[x] Fix #9712. extract the cid to fix the path. and, preheat with image.w.kodadot.xyz will automatically upload files to cf-images/cf-r2, no need to call direct-upload

Did your issue had any of the "$" label on it?

[x] My DOT address: Payout

Seems works when I go to collection

On the Success modal is a preview of iterated art (good), and on the listing is the default. (bad)
I guess it's unrelated to this one?
https://github.com/kodadot/nft-gallery/assets/5887929/5103e9cf-da4d-49be-9d2d-fb54979715bc

On the Success modal is a preview of iterated art (good), and on the listing is the default. (bad)
I guess it's unrelated to this one?

Interesting, probably unrelated. I have not checked yet, but I assume this: the listing modal is a global component, so it will check the "real metadata" of the nft item. Meanwhile, metadata of that nft is still "processing" in the background.
But, I think it can solve the problem if we also put metadata in our minting step. Since it works on the "success modal". In this diagram, I put "setMetadata" in the steps 2 and 6

@yangwao payment needed

Thanks!
pay 30 usd

😍 Perfect, I’ve sent the payout
💵 $30 @ 9.01 USD/DOT ~ 3.33 $DOT
🧗 1xjvRADwdJcnmUCLWerEHR4iGCT5EBTm4D4fzLLg4LcAC9p
🔗 0x0edaa8a7f974d50fb366b56fe895be56dd506239aea6a2537c86ff2d241668fb
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


Fix style issues in InternalCommands.cs

PR Summary
Fix StyleCop issues in InternalCommands.cs
PR Context
After adding ForEach-Object -Parallel there is still a lot of style issues in the InternalCommands.cs
PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[x] None
OR
[ ] Experimental feature(s) needed

[ ] Experimental feature name(s):

User-facing changes

[x] Not Applicable
OR
[ ] Documentation needed

[ ] Issue filed:

Testing - New and feature

[ ] N/A or can only be tested interactively
OR
[x] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[ ] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.
OR
[ ] I have considered the user experience from a tooling perspective and enumerated concerns in the summary. This may include:

Impact on PowerShell Editor Services which is used in the PowerShell extension for VSCode (which runs in a different PS Host).
Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features.
Impact on PSScriptAnalyzer (which provides linting & formatting in the editor extensions).
Impact on EditorSyntax (which provides syntax highlighting with in VSCode, GitHub, and many other editors).

@adityapatwardhan Thanks for fast review!


PP-2777 Create transaction table, drop transactions

We rolled back a release where some transaction status did not stay in
sync with charge status. Delete everything in transactions to clear
these out. This is safe to do as we are dual writing to charges and
transactions but only using charges at the moment. They will then get
populated later when we back fill transactions.

Not going to do this like this now so closing PR.


ADO don't find db drivers on fedora

Hello,
I've installed AWA with Alire, but it seems Ado can't find dependencies for :

mysql/mariadb
mysqlite
postgres
openssl

I'm sure i've installed all the package needed and follow your instruction on your blog to make a test:
alr init demo
cd demo
alr with awa
alr with dynamo
alr with servletada_aws
alr build

alr exec -- dynamo create-project -l apache --web demo<EMAIL_ADDRESS>alr build

but when i start the server i still have :
Some internal error occurred: Exception ADO.CONFIGS.CONNECTION_ERROR: Database driver 'postgres' not found
Something i missed ??

It's hard to explain exactly what's your issue without having your sources...
The generated server uses the generic database driver ADO.Drivers which requires Mariadb, SQLite, PostgreSQL support for ADO.  They are not available by default with your Alire configuration.
You have two solutions:

Change the generated file src/demo-server.adb to replace ADO.Drivers with ADO.Sqlite for example and change the initialization from ADO.Drivers.Initialize to use ADO.Sqlite.Initialize.
Add alr with ado_postgresql

The generated server comes with some default configuration file that you can change. It should have generated a demo.properties file which contains some database= property. The error message you are getting makes me think you have changed it and the configuration looks like postgresql://xxx.
If that's the case, then you may try to change the ADO.Drivers to ADO.Postgresql and also run alr with ado_postgresql to update your Alire project and make sure the ADO Postgresql support driver is linked with the server.

Thanks.
I've modified the demo-server.adb as you suggest many times with all the drivers.
The first thing is that alire can't find the driver libs on fedora because of different package-name.
I've finally find a way by editing the alire configuration index files in :
~/.config/alire/indexes/community/repo/index/
The name of the needed package is different on fedora and debian so:
Example with postresql : ( ~/.config/alire/indexes/community/repo/index/li/libpq/libqp-external.toml)
description = "Libraries for use with PostgreSQL"
name = "libpq"

maintainers = ["Maxim Reznik<EMAIL_ADDRESS>maintainers-logins = ["reznikmm"]

[[external]]
kind = "system"
[external.origin."case(distribution)"]
"debian|ubuntu" = ["libpq-dev"]
fedora" = ["libpq-devel"]
"msys2" = ["mingw-w64-x86_64-postgresql"]

It need to be done for mysql, mariadb, sqlite and openssl but i'm not sure that is a good idea doing that this way cause "alire" need a lot of time to resolve the dependences. but it works.
the second thing, you're right i've modified demo.properties and the property database... my mistake, it's not "postgres://" but "postgresql://" but it was a last try before to post my message, so not really the problem.
Now the driver seems to work but when i start the server i've an error cause the bdd doesn't exist... I was thinking dynamo create it when "create-project"...
I've tried to create an empty bdd manually, but that was not a good idea, i've some SQL errors :
Error: ERREUR:  la relation « entity_type » n'existe pas
LINE 1: SELECT o.id, o."name" FROM entity_type AS o
                                   ^

Error: ERREUR:  la relation « awa_audit_field » n'existe pas
LINE 1: SELECT id, entity_type, name FROM awa_audit_field
                                          ^

Some internal error occurred: Exception ADO.STATEMENTS.SQL_ERROR: SQL error: ERREUR:  la relation « awa_audit_field » n'existe pas
LINE 1: SELECT id, entity_type, name FROM awa_audit_field

Errors are in French but the idea is "relation doesn't exist"... normal, but what's the next step ?? create a database with dynamo ? In your different examples  it seems you can start the server and access the web index page without that kind of problem. Not sure to understand how to start a simple project finally :/

The Alire libpq package is maintained by Maxime Reznik.  May be you can open a problem report on Alire project https://github.com/alire-project/alire/issues and you can also submit a pull request on the Alire index project to fix that.
My Fedora virtual machine is not up to date and I've never used Alire on it.
For the database creation, it's not easy for MySQL and PostgreSQL since it requires some root access to create the database itself.  There is a create-database command in dynamo that you can use.
Now, the server also contains a number of commands that you can use. You can try the setup command that will handle the database creation with the setup of database tables according to the application.
Depending on what you want to do, it may be easier to use SQLite as database since this solves the MySQL/PostgreSQL server access issue (with all the user creation, grant access and so on).
You can prototype, play with SQLite and if you are happy you can change to PostgreSQL/MySQL for production.
I'm using MySQL for Ada France server and for my blog server. I'm using SQLite for Porion build manager.
You can run the server with the setup command and if you point your browser to the URL http://localhost:8080/demo/index.html you will have a small wizard setup that allows you to configure the database.  You can switch to SQLite there or keep whatever default you have.

Some links that may help you:

https://github.com/stcarrez/ada-awa#next-steps
https://github.com/stcarrez/ada-ado#database-creation

[external.origin."case(distribution)"]
"debian|ubuntu" = ["libpq-dev"]
fedora" = ["libpq-devel"]
"msys2" = ["mingw-w64-x86_64-postgresql"]

It guess there is a typo, a " is missing and it should probably be:
"debian|ubuntu" = ["libpq-dev"]
"fedora" = ["libpq-devel"]
"msys2" = ["mingw-w64-x86_64-postgresql"]

Ok, i'll report the issue to the alire project.
Thanks.
I've tried to run the server with "setup" but it stop with:
Missing application name

The demo.properties file is not correct and should have been updated by some dynamo generate command.
The file contains a search paths dynamo_search_dirs that contains a search path which allows to find the setup.xml and other XHTML/Javascript/CSS/configuration files used and provided by AWA and other libraries.
I think you should run (this step is missing in my original description which is my mistake):
mkdir -p db
alr exec -- dynamo generate db

this will update the demo.properties file and may be you may have to run again:
alr build

You can then run with the -v or even -vv or -vvv to multiple verbose modes:
bin/demo-server -v setup demo

If this does not work, edit the demo.properties files and replace the dynamo_search_dirs by the following definition (this is a single line):
dynamo_search_dirs=.;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-setup;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-wikis;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-jobs;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-votes;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-questions;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-images;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-storages;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-blogs;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-comments;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-tags;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-mail;alire/cache/dependencies/awa_2.4.0_59135a52/awa/plugins/awa-workspaces;alire/cache/dependencies/awa_2.4.0_59135a52/.alire/../awa;alire/cache/dependencies/ado_2.3.0_a59fa70f/.alire;alire/cache/dependencies/serverfaces_1.5.0_10db0531/.alire/..;alire/cache/dependencies/utilada_2.5.0_f65f9ba9

That's it !
"dynamo generate db" was ok but you're right, the dynamo_search_dirs in demo.properties was a lot shorter !
Thanks a lot, i can experiment now ;)


Feature implement configuration interface

Changes in this PR:

org.json replaced with gson
try in try fixed
configuration interface implemented

will be merged from other branch


Issue about training on DIV2K and Flickr2K

Hi, thanks for sharing your work.
I'm using windows 10.
I use  the code of EDSR to train SRFBN on 2080Ti GPU.
I always get 'OSError: [Errno 5] Input/output error' when training model on DIV2K and Flickr2K.
and I find it would not happen when training model just on DIV2K.

You need to edit their dataset file to train.

Thanks for your reply. I created a file called 'Flickr2K.py'. But I still encounter the same error, it happens during the model training process. For example, I encountered the error while training the model in the 200th epoch.I am not sure if it is my code problem or the OS problem.

It shows there are 15950 images when training model on DIV2K and Flickr2K. it is right?

Did you edit the data_range option in EDSR-Pytorch?
The number of images is 800(DIV2K)+2650(Flickr2K).

yes. I use default settings, including batch_size=16,test_every=1000.So the terminal shows that the length of train dataset is 16000(repeat=20) if I train model on DIV2K. And The length of train dataset is 15950 if I train model on DIV2K(8000, repeat=10) and Flickr2K(7950, repeat=3).I am not sure whether I edit dataset file correctly.

I suggest you directly use our code to train, or you can replace the dataset file in EDSR-Pytorch using our dataset file (need to edit some options).

OK.I will try it.Sincerely thank you for your reply.

Hi,
I have read your code.I find that what you want to do  is to put DIV2K and Flickr2K  in the same LR file before running program.So the LR file has 3450 images. But what EDSR does is that using ConcatDataset from torch.utils.data to concatenate the two datasets. So it shows 15950 images(or iterations) when training model. Can you tell me the number of iterations in each epoch when you train your model?
Thanks a lot.

About 1000 iterations

I got it.Thanks.

I got it.Thanks.


image uploaded

@v-hearya,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

patterns-practices/reference/pubevent.gif
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Account for file deletions in git diff parsing

Probably closes #275
We didn't account for getting /dev/null without prefix as added filename for file deletions.

:+1: in retrospect :)


Update swift-demangle to interactively demangle

What's in this pull request?

This updates swift-demangle's interactive stdin mode to immediately output demangled strings as opposed to waiting until ctrl-d is pressed.
Resolved bug number: (SR-2410)

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

A smoke test on macOS does the following:

Builds the compiler incrementally.
Builds the standard library only for macOS. Simulator standard libraries and
device standard libraries are not built.
lldb is not built.
The test and validation-test targets are run only for macOS. The optimized
version of these tests are not run.

A smoke test on Linux does the following:

Builds the compiler incrementally.
Builds the standard library incrementally.
lldb is built incrementally.
The swift test and validation-test targets are run. The optimized version of these
tests are not run.
lldb is tested.

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

This changes the swift-demangle interactive STDIN mode to immediately
print the demangled symbol on return as opposed to printing them all at
the end.

Thanks, Keith! Hm, is there any way to write a test for this?

Thanks for the feedback Jordan! I've pushed a getline approach and some tests, let me know what you think!

This implementation looks good. I think we already have tests for stdin-demangling in test/Demangle/; what I really wanted to know is if there's a way to test that it's streaming now. I can't think of a good way without building a whole wrapper script, though—which would be nice, but I wouldn't block the patch over it. I think it's okay to drop this extra test file and just move ahead.

Ah sorry about that. I looked in that directory but assumed tests would be named after the CLI. I'll remove those here!

Updated

@swift-ci Please smoke test

@swift-ci Please smoke test

@swift-ci Please smoke test OS X

Merged. Thanks, Keith!

Thanks! Should we close https://bugs.swift.org/browse/SR-2410 ?

Yes, please.


module request: ddc/ci control

Using ddccontrol could allow users to easily control the brightness of their external monitors.
ref: https://github.com/ddccontrol/ddccontrol

You can obtain current brightness value via something like:
$ ddcutil --noverify --less-sleep getvcp 10 | grep -o -P '\d*,' | grep -Eo '[0-9]' | tr -d '\n'

And then use it in a custom Waybar module.

You can obtain current brightness value via something like:
$ ddcutil --noverify --less-sleep getvcp 10 | grep -o -P '\d*,' | grep -Eo '[0-9]' | tr -d '\n'

And then use it in a custom Waybar module.

This would be awesome, would need to figure out how to distinguish the brightness on my laptop and desktop using
external monitors.

I agree, any one got a pre-written custom module they can send here in the meantime? Otherwise I'll make a scuffed one and send it here.

Sure, I have don't this some years ago:
"custom/brightness": {
        "exec": "ddcutil -b 18 getvcp 10 -t | perl -nE 'if (/ C (\\d+) /) { say $1; }'",
        "exec-if": "sleep 1", // Give enough time for `sway output` command changes to propagate so we can read them in the next `exec`
        "format": "{}% {icon}",
        "format-icons": [""],
        "interval": "once",
        "on-scroll-up": "ddcutil -b 18 setvcp 10 + 10",
        "on-scroll-down": "ddcutil -b 18 setvcp 10 - 10"
    },


fixed indexing issue for image tabs, added mapper fn for url

Description
Fixed indexing issue for image tabs
Added mapper function for parsing url
Fixes # (issue)
https://issues.redhat.com/browse/THEEDGE-1492
Type of change
What is it?

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation update
[ ] Tests update

Checklist:

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I run npm run lint:js:fix to check that my code is properly formatted

Codecov Report

Merging #295 (46cee5a) into master (d313925) will decrease coverage by 0.01%.
The diff coverage is 5.55%.

@@            Coverage Diff             @@
##           master     #295      +/-   ##
==========================================
- Coverage   31.29%   31.28%   -0.02%
==========================================
  Files         102      102
  Lines        2109     2113       +4
  Branches      618      618
==========================================
+ Hits          660      661       +1
- Misses       1328     1332       +4
+ Partials      121      120       -1

Impacted Files
Coverage Δ

src/Routes/ImageManagerDetail/ImageDetailTabs.js
0.00% <0.00%> (ø)

src/constants.js
37.50% <10.00%> (-9.17%)
:arrow_down:

Continue to review full report at Codecov.

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


Guava checks ignore dependencies resolution that may bump guava to higher version

Plugin version
2.4.2
Gradle version
8.11
JDK version
17
(Optional) Kotlin and Kotlin Gradle Plugin (KGP) version
2.0.21
(Optional) Android Gradle Plugin (AGP) version
8.7.2.
Describe the bug
I cannot even configure project with latest version which include guava version check.
Plugin says:
The Dependency Analysis Gradle Plugin requires Guava 33.1.0 or higher. Your build is using Guava 32.1.3-jre,
which is too low. Please update your dependencies.

Guava was loaded in the classloader named

    ClassLoaderScopeIdentifier.Id{coreAndPlugins:settings[:](export)}

But when I print deps to understand from where I got wrong guava version I saw this:
+--- androidx.build.gradle.gcpbuildcache:androidx.build.gradle.gcpbuildcache.gradle.plugin:1.0.0
|    \--- androidx.build.gradle.gcpbuildcache:gcpbuildcache:1.0.0
|         +--- com.squareup.okhttp3:okhttp-bom:4.12.0
|         |    \--- com.squareup.okhttp3:okhttp:4.12.0 (c)
|         +--- com.google.cloud:google-cloud-storage:2.30.1
|         |    +--- com.google.guava:guava:32.1.3-jre -> 33.1.0-jre
|         |    +--- com.google.guava:failureaccess:1.0.1
|         |    +--- com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava

To Reproduce
Idk minimal example, but my project looks similar to this

composite build with two modules:
1.1 . build-logic-settings -> :build-logic-settings:build-cache ->  implementation("androidx.build.gradle.gcpbuildcache:androidx.build.gradle.gcpbuildcache.gradle.plugin:1.0.0")
1.2 build-logic -> :build-logic:plugins -> implementation("com.autonomousapps:dependency-analysis-gradle-plugin:2.4.2")
1.3 try to bump guava here to at least 33.1.0 like implementation("com.google.guava:guava:33.1.0-jre")
Try to sync
You should get the same error

I found the only way to fix - to add implementation("com.google.guava:guava:33.1.0-jre") before lib that require guava. But it's even another composite project, it seems irrational, but my be I'm wrong
Expected behavior
DAGP do not fails fast

Maybe you should call checkGuava() only when it's required to call any task, not while configuration?

Thanks for the issue! Could you please provide a minimal reproducer?


Expose a list of endpoints with BW stats to operators

Should be able to ssh srv.us stats and, given the key belongs to an operator, get a list of SSH keys -> endpoints -> bytes sent/received.

We can write and share some log analyzers instead.


Storage gets fully filled up

Using only honeygain, it fills up the storage completely after a while. After uninstalling its folder (/var/lib/docker/overlay2/da57c9f21e2dcac19a8c5ab39a6d56ed054c3c25cd6c8537e5bc88f1f4862cfc) is all fine.

A new container has been built with log rotation


i18n datepicker

Fixes the date portion of #139
Localization of sample date field.  Introduces a hidden normalized field that is always mm/dd/yyyy.  Replaces validation to localize the normalized field on init, and normalize the localized field on validation.  Uses the jquery datepicker's i18n extensions for configuring the datepicker.
Far as I can tell, Spanish should be on a 24 hour clock, 8:00 AM -> 8:00, 8:00 PM -> 20:00.  Can add this in this branch as well.

Asked someone from Mexico, they said AM PM is fine.


[TEST] for auth

done!

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
see 1 file with indirect coverage changes


Difference between TVM compile and directly use vitis-AI compile deeplearning model

Hi, I'm trying to deploy PaddlePaddle model by Vitis-AI, but found that ONNX format is not supported, instead there's a document shows how to compile model by TVM.
https://github.com/Xilinx/Vitis-AI/blob/master/external/tvm/docs/compiling_a_model.md
Since TVM has PaddlePaddle frontend, I think this  may solve my problem.  But there are few questions I want to know

Is TVM well supported in Vitis-AI?
What's the difference between TVM compile and directly use Vitis-AI compile deeplearning model, e.g TensorFlow?

thanks in advance!

Hello! Do you understand the difference between compiling with TVM+vtisiai and compiling directly with vitisai? Does the performance of the final model produced by the two methods differ greatly?


error while loading shared libraries: libproc_macro*.so

After doing:
$ cargo install foo

Where foo uses a lib, which uses proc_macro2, I get
foo: error while loading shared libraries: libproc_macro-76e776d93c7dc9f0.so: cannot open shared object file: No such file or directory

Of course setting
$ export LD_LIBRARY_PATH=$(rustc --print sysroot)/lib:$LD_LIBRARY_PATH

fixes the issue... But is this intended behavior?

sorry.. already mentioned in https://github.com/alexcrichton/proc-macro2/issues/115


[SPARK-5307] SerializationDebugger to help debug NotSerializableException

This patch adds a SerializationDebugger that is used to add more information to a NotSerializableException. When a NotSerializableException is encountered, the debugger tries to serialize the object one more time through a DebugStream that hooks into the internals of ObjectOutputStream to get the serialization stack. This ensures that there is no performance loss to run with SerializationDebugger, unlike setting the sun.io.serialization.extendedDebugInfo flag.
An example output looks like this:
org.apache.spark.serializer.NotSerializableClass
    Serialization stack (3):
    - org.apache.spark.serializer.NotSerializableClass@5e20dc10 (class org.apache.spark.serializer.NotSerializableClass)
    - org.apache.spark.serializer.SerializableClass2@521fb14e (class org.apache.spark.serializer.SerializableClass2)
    - org.apache.spark.serializer.SerializableClass1@5f54e92c (class org.apache.spark.serializer.SerializableClass1)
    Run the JVM with sun.io.serialization.extendedDebugInfo for more information.

When sun.io.serialization.extendedDebugInfo is turned on, this debugger no longer adds more information. Note that sun.io.serialization.extendedDebugInfo can show also the field name information, which is harder to get by the SerializationDebugger (technically possible with reflection but fairly convoluted).

Test build #25715 has started for   PR 4093 at commit f7e6320.

This patch merges cleanly.

Test build #25716 has started for   PR 4093 at commit bde6512.

This patch merges cleanly.

Test build #25716 has finished for   PR 4093 at commit bde6512.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
            out.stack.map(o => s"	- $o (class $

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/25716/
Test PASSed.

Test build #25719 has started for   PR 4093 at commit beed86d.

This patch merges cleanly.

This LGTM.

Test build #25715 timed out     for PR 4093 at commit f7e6320     after a configured wait of 120m.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/25715/
Test FAILed.

Test build #25719 has finished for   PR 4093 at commit beed86d.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
            out.stack.map(o => s"	- $o (class $

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/25719/
Test PASSed.

Closing this one in favor of https://github.com/apache/spark/pull/4098

could someone give a simple example of how to read the graph? I'm not sure where to start


py2-py3 compatability for ensuring 16 character secret key

$ python3
>>> import os
>>> os.urandom(24)
>>> b'\x92\x14\xa6\xf0"<\xd6*\xba\x11p\x88^(\xd3\xb8\xca\x9e\xcfu\x1aZTD'

Using that key in Flask-User causes an error:
File "/Users/XXX/Flask-User/flask_user/tokens.py", line 17, in setup
key = secret + '0123456789abcdef'  # ensure >=16 characters
TypeError: can't concat bytes to str

If you remove the b in the urandom output it works fine.  If you then switch to python 2 you get this error:
ValueError: AES key must be either 16, 24, or 32 bytes long

This PR type checks the SECRET_KEY and converts it to a bytestring if it is a unicode string.

Available in v0.6.3.


[ja] Update page weights under 5 sections of concepts

This PR updates the page weights under the 5 sections in concepts.
This pr will be the last for the update of page weights under the ja/docs/concepts.

content/ja/docs/concepts/extend-kubernetes
content/ja/docs/concepts/containers
content/ja/docs/concepts/architecture
content/ja/docs/concepts/cluster-administration
content/ja/docs/concepts/policy

This updates the page order.
Related: #37470 #37471 #37473 #37484 #23929
The files under policy were updated long ago in en.

LGTM but building demo site on Netlify failed.
Could you create empty commit for kicking the rebuild on Netlify?

We got the success of build!
I'll validate the links.

@atoato88
Netlify deploy succeeded.
It fails well recently.

/lgtm
Nice work!!

/assign @nasa9084
Could you reveiw this?


feat: graceful shutdown and systemd socket activation in adapter-node

Closes #10134
Closes #9540
This is an alternative PR to https://github.com/sveltejs/kit/pull/10977 that addresses all the points mentioned there, mainly:

simpler code by allowing only one file descriptor (fd 3)
handling the automatic shutdown of the server which is controlled by a new environment variable IDLE_TIMEOUT
add documentation

It also gracefully shuts down the app by default. A new SHUTDOWN_TIMEOUT environment variable controls how long the app should wait for all remaining requests to finish before the server is forcibly closed.
If you are on Linux or have access to a Linux server you can try this out yourself by installing the adapter into a new/existing SvelteKit project (requires npm, pnpm doesn't work) using:
npm install -D 'https://gitpkg.now.sh/karimfromjordan/sveltejs-kit/packages/adapter-node?systemd-socket-activation-build'

Then create a service and socket unit:
# /etc/systemd/system/myapp.service

[Service]
Environment=NODE_ENV=production IDLE_TIMEOUT=10
ExecStart=/usr/bin/node /usr/bin/myapp/build

# /etc/systemd/system/myapp.socket

[Socket]
ListenStream=3000

[Install]
WantedBy=sockets.target

Reload the daemon:
sudo systemctl daemon-reload

Start the socket:
sudo systemctl start myapp.socket

Navigate to localhost:3000. The app should then start as soon as the first request is made. If IDLE_TIMEOUT is set it will automatically terminate the app after being inactive for IDLE_TIMEOUT seconds. You can verify this behavior by following the logs using sudo journalctl -u myapp.service -f.

Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpm changeset and following the prompts. Changesets that add features should be minor and those that fix bugs should be patch. Please prefix changeset messages with feat:, fix:, or chore:.

Edits

[x] Please ensure that 'Allow edits from maintainers' is checked. PRs without this option may be closed.

I'm having issues with this - in particular when connecting to a database (mongodb). Out of the box it works fine via "npm run dev", but hangs if I build with adapter-node and run with node.
If I put in some code to close the db connection on SIGINT then it exits ok via adapter-node, but hangs on exit if use "npm run dev"
example code:
function closeMongoConnection() {
    client.close()
}
process.on('SIGINT', closeMongoConnection);
process.on('SIGTERM', closeMongoConnection);

Maybe I'm doing something dumb, but if there some best practice here ?

Let's please keep the conversation about this in one thread. I've already replied in the other thread and I saw your follow up comment but it can take a few days for me to get back. You can also ask on the Svelte Discord server and ping me there

Just in case others come across this, here's the other thread: https://github.com/sveltejs/kit/issues/9540#issuecomment-1999882116


[RFC] Async/Lazy Component Systems

Before you can add a component to an entity, you currently need to register the component system with the app.
opts.componentSystems = [RenderComponentSystem]
const app = new AppBase(canvas);
app.init(opts);
app.start();

new Entity('cube').addComponent('render');

This has a couple of friction points:

Creates unnecessary boilerplate. Engine users are required to manage a list of component system.  This either means that systems are included when not needed, or worse, components are added without systems, causing errors and friction for developers
In editor projects, every component systems is added by default, regardless of whether they're used or not.
In both cases neither can be tree-shaken, as they're instantiated by the App

An optimal solution would;

Only instantiate components systems when necessary
Not require manually maintaining a list of component systems.
Support tree-shaking

Proposal
Update the addComponent() method to resolve to a lazily loaded component system:
const createComponentSystem = async path => {
    const class = await import(path);
    return new class();
}

addComponent(type, data) {
  let system = this._app.systems[type];
  if (!system) {
    switch(type) {
      case 'camera' : await createComponentSystem('./CameraComponentSystem.js');
      case 'render' : await createComponentSystem('./RenderComponentSystem.js');
    }
  }
  // ...
}

Benefits of this approach

Maintains similar api addComponent('camera')
Component Systems are lazily loaded.
Simplifies engine only startup by deprecating the need for specifying systems array.
Better supports tree-shaking.
Editor projects only load necessary components.

Cons
Modifies the addComponent() to become async. Strictly speaking this is a breaking change as it requires await addComponent() which means a semantic major version bump.
Other options
An alternative non breaking change would be to use statically imported components which are not async
import CameraComponentSystem from './CameraComponentSystem'
addComponent(type) {
  // ...
  switch(type) {
      case 'camera' : CameraComponentSystem;
      ....
    }
}

This still has the benefit of a not requiring specifying a component system array, but is harder to tree-shake.

An additional note is to ensure that the order of component systems and their update execution is deterministic and consistent between runs and through the development while using various numbers of systems.

I think the order of execution is something the engine would specify which would be independent of the order in which they're added.

I like this.

3. In both cases neither can be tree-shaken, as they're instantiated by the App

Three-shaking works in the engine only project at the moment. The AppBase does not import any components, and so the components the user does not provide when the AppBase is created can be tree-shaken.

I'm not convinced by the dynamic import (though its a really cool idea) but I like the idea of the auto system instanciation

An alternative solution is to extend parameters addComponent accepts to allow Component Classes too ie addComponent(CameraComponent). Then introduce a static system = CameraComponentSystem in the component which is used to instantiate and register the system.
class MySystem {}
class MyComponent { static system = MySystem }

entity.addComponent(MyComponent)

The string syntax addComponent('camera') would still be supported, so this is a non-breaking change. Strictly speaking this is a tight coupling between Component and System, but this already exist in the component lookup in the entity anyway.

An alternative solution is to extend parameters addComponent accepts to allow Component Classes too ie addComponent(CameraComponent). Then introduce a static system = CameraComponentSystem in the component which is used to instantiate and register the system.
class MySystem {}
class MyComponent { static system = MySystem }

entity.addComponent(MyComponent)

The string syntax addComponent('camera') would still be supported, so this is a non-breaking change. Strictly speaking this is a tight coupling between Component and System, but this already exist in the component lookup in the entity anyway.

That would require an additional import when using ESM?

The string syntax addComponent('camera') would still be supported

if the old way is still supported (and has to be for loading the scene from json), than this won't help with tree-shaking? What's the advantage then.

Editor project can be tree-shaken as we won't need to include the static list of every component systems in the start up script.  Also for engine only it will simplify the boilerplate

Editor project can be tree-shaken as we won't need to include the static list of every component systems in the start up script. Also for engine only it will simplify the boilerplate

How you will ensure that the right component systems are in the engine, and avoid extra network file requests?

Editor projects are bundled, so unused modules can be excluded from the
build.
On Thu, Sep 26, 2024 at 12:22 PM mrmaxm @.***> wrote:

Editor project can be tree-shaken as we won't need to include the static
list of every component systems in the start up script. Also for engine
only it will simplify the boilerplate
How you will ensure that the right component systems are in the engine,
and avoid extra network file requests?
—
Reply to this email directly, view it on GitHub
https://github.com/playcanvas/engine/issues/6986#issuecomment-2376666187,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADJFLHQ66NVNNICYM4LWVLZYPU5PAVCNFSM6AAAAABOX6LRVKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNZWGY3DMMJYG4
.
You are receiving this because you authored the thread.Message ID:
@.***>

but components can be added by string from scripts. Also the scene format has their names, and creates them by the string. How can you detect what is not used.

In order to do that for Editor there are few complexities:

Identify all component systems that are used across all scenes.
Identify all component systems that are used across all template assets which are not "excluded".
Identify all component systems from scripts but only if ESM scripts are used, and only during bundling, as it wont work for string based addComponent.
It has to do it for each Launch, otherwise the engine differences between launcher and published projects can lead to unintended differences and bugs.

The save from tree-shaking will be neglectable, complexity is huge, and if developers really need to save their tiny KBs, they can compile engine themselves excluding unnecessary component systems. Another branching in API with achieving same thing but a different way, leading to reduced learning curve long-term.
This will introduce complexity, branching API, more failure points, and potentially bad UX if things don't go smoothly in Editor, with extra delays when using Launcher. With seemingly tiny KBs savings, which are easily eclipsed by a single 512 PNG texture.

The original plan we had (and I don't see a better solution at the moment) is that somewhere in project settings, we'd have a list of components with checkboxes. By default all are ticked. User can untick some they don't need and the bundler will not import those components to three-shake them. In a way equivalent to engine only project where we list those. Manual, but simple. Most people don't need to touch it, because as you said, the saving are minimal for majority of projects.


Fix eBPF on Kernel <= 5.4

Description
Kernel <= 5.4 does not have a function to get access to task_struct (bpf_get_current_task()) :
https://github.com/kumahq/merbridge/blob/311aedd9a4528ca8afa738bb65ac6b61e1f6f8b8/bpf/mb_connect.bpf.c#L363-L364
Instead of using this helper function we need to create a helper function to extract the task (maybe there's another way to get the task struct).

@bartsmykla is going to look at AWS running on Kernel higher > 5.4 apparently it's not that far away. If that's the case we shouldn't bother making this work

Need to confirm that cgroup v2 are supported in newer image from aws.


Fix Powershell env hints

This is a follow-up to https://github.com/docker/machine/pull/2656 for Powershell
Signed-off-by: David Gageot<EMAIL_ADDRESS>

LGTM


Calling save_response_to_disk with is_response=False is crashing

Crash is
  File "/tmp/kingfisher-1563276738-xkymt_05.egg/kingfisher_scrapy/base_spider.py", line 115, in _generic_scrapy_save_response_to_disk
    'url': response.request.url,
AttributeError: 'bytes' object has no attribute 'request'

 Calling save_response_to_disk with is_response=False is crashing


.gitlab-ci.yml: various native checks: failure in 55_clock

When I ran the .gitlab-ci.yml workflow, I encountered the following error:
## Running stdlib tests
##
01_chr .................................. OK
...
51_localtime ............................ OK
52_gmtime ............................... OK
53_timelocal ............................ OK
54_timegm ............................... OK
55_clock ................................ !
Testcase #1: Expected stdout did not match:
--- Expected stdout
+++ Resulting stdout
@@ -1,4 +1,4 @@
 [
-	true,
+	"unexpected delta: 265114782",
 	true
 ]
---
55_clock ................................ FAILED (1/1)
56_hexdec ............................... OK
...
...
41_compiler_invalid_return_opcode ....... OK
Ran 167 tests, 166 okay, 1 failures
Errors while running CTest
50% tests passed, 1 tests failed out of 2
Total Test time (real) = 366.22 sec
The following tests FAILED:
	  2 - custom (Failed)
make[1]: *** [Makefile:127: test] Error 8
make[1]: Leaving directory '/builds/diederik/ucode/build'
make: *** [openwrt-ci/native-build.mk:16: ci-native-build] Error 2

On a subsequent run, I got the same error, which makes me think there's an error in the code?

Works for me :tm: https://gitlab.com/ynezz/openwrt-ucode/-/jobs/4321288368 so can you provide more details about your environment?

This is the pipeline that failed for me: https://salsa.debian.org/diederik/ucode/-/pipelines/529804

So perhaps somehow related to your runner/kernel? I would try following:
iff --git a/tests/custom/03_stdlib/55_clock b/tests/custom/03_stdlib/55_clock
index 109ce218e22d..fb0c05de5757 100644
--- a/tests/custom/03_stdlib/55_clock
+++ b/tests/custom/03_stdlib/55_clock
@@ -19,8 +19,8 @@ default realtime one.
        assert(delta2 >= 0, "Monotonic clock went backwards!");

        printf("%.J\n", [
-               (delta1 >= 240000000 && delta1 <= 260000000) ? true : "unexpected delta: " + delta1,
-               (delta2 >= 240000000 && delta2 <= 260000000) ? true : "unexpected delta: " + delta2
+               (delta1 >= 240000000 && delta1 <= 270000000) ? true : "unexpected delta: " + delta1,
+               (delta2 >= 240000000 && delta2 <= 270000000) ? true : "unexpected delta: " + delta2
        ]);
 %}
 -- End --

"unexpected delta: 265114782",

Would be nice to know which delta failed, please re-run with following:
diff --git a/tests/custom/03_stdlib/55_clock b/tests/custom/03_stdlib/55_clock
index 109ce218e22d..b63919b91ddf 100644
--- a/tests/custom/03_stdlib/55_clock
+++ b/tests/custom/03_stdlib/55_clock
@@ -19,8 +19,8 @@ default realtime one.
        assert(delta2 >= 0, "Monotonic clock went backwards!");

        printf("%.J\n", [
-               (delta1 >= 240000000 && delta1 <= 260000000) ? true : "unexpected delta: " + delta1,
-               (delta2 >= 240000000 && delta2 <= 260000000) ? true : "unexpected delta: " + delta2
+               (delta1 >= 240000000 && delta1 <= 260000000) ? true : "unexpected delta1: " + delta1,
+               (delta2 >= 240000000 && delta2 <= 260000000) ? true : "unexpected delta2: " + delta2
        ]);
 %}
 -- End --

Would be nice to know which delta failed, please re-run with following:

I started with this one ... and that succeeded ?!?
I did cancel the running of the build with ... as I assumed they were irrelevant.
I will re-run the pipeline but this time I'll let them all run.

So perhaps somehow related to your runner/kernel?

That could be. I did ask but haven't yet received an answer, but my guess would be 6.1 (as Bookworm will have) and otherwise 5.10 (as Bullseye has)

While scanning through the build output, I did notice the following (starting from line 816):
Checking build/CMakeFiles/3.18.4/CompilerIdC/CMakeCCompilerId.c: __sun;sun...
1/27 files checked 2% done
Checking chunk.c ...
2/27 files checked 3% done
Checking compiler.c ...
compiler.c:2339:2: error: Address of local auto-variable assigned to a function parameter. [autoVariables]
 compiler->patchlist = &p;
 ^
compiler.c:2387:2: error: Address of local auto-variable assigned to a function parameter. [autoVariables]
 compiler->patchlist = &p;
 ^
compiler.c:2497:2: error: Address of local auto-variable assigned to a function parameter. [autoVariables]
 compiler->patchlist = &p;
 ^
compiler.c:2664:2: error: Address of local auto-variable assigned to a function parameter. [autoVariables]
 compiler->patchlist = &p;
 ^
compiler.c:3271:70: error: Signed integer overflow for expression '0xffff<<16'. [integerOverflow]
   uc_compiler_emit_u32(compiler, 0, source->exports.count | (0xffff << 16));
                                                                     ^
Checking compiler.c: NO_COMPILE...
3/27 files checked 16% done
Checking examples/exception-handler.c ...
4/27 files checked 16% done
Checking examples/execute-file.c ...
5/27 files checked 17% done
Checking examples/execute-string.c ...
6/27 files checked 17% done
Checking examples/native-function.c ...
7/27 files checked 17% done
Checking examples/state-reset.c ...
8/27 files checked 18% done
Checking examples/state-reuse.c ...
9/27 files checked 18% done
Checking lexer.c ...
10/27 files checked 21% done
Checking lib.c ...
Checking lib.c: __APPLE__...
11/27 files checked 31% done
Checking lib/fs.c ...
Checking lib/fs.c: O_LARGEFILE...
12/27 files checked 35% done
Checking lib/math.c ...
13/27 files checked 35% done
Checking lib/nl80211.c ...
14/27 files checked 45% done
Checking lib/resolv.c ...
Checking lib/resolv.c: __APPLE__...
15/27 files checked 48% done
Checking lib/rtnl.c ...
16/27 files checked 63% done
Checking lib/struct.c ...
Checking lib/struct.c: __powerc...
17/27 files checked 68% done
Checking lib/ubus.c ...
Checking lib/ubus.c: HAVE_NEW_UBUS_STATUS_CODES...
18/27 files checked 75% done
Checking lib/uci.c ...
19/27 files checked 77% done
Checking lib/uloop.c ...
Checking lib/uloop.c: HAVE_ULOOP_TIMEOUT_REMAINING64...
Checking lib/uloop.c: __APPLE__...
20/27 files checked 80% done
Checking main.c ...
21/27 files checked 82% done
Checking program.c ...
22/27 files checked 84% done
Checking source.c ...
23/27 files checked 85% done
Checking tests/fuzz/test-fuzz.c ...
24/27 files checked 85% done
Checking types.c ...
types.c:400:5: warning: The address of local variable 'pv' might be accessed at non-zero index. [objectIndex]
   s[i] = str[i];
    ^
types.c:394:15: note: Address of variable taken here.
  s = (char *)&pv + 1;
              ^
types.c:400:5: note: The address of local variable 'pv' might be accessed at non-zero index.
   s[i] = str[i];
    ^
Checking types.c: __clang_analyzer__...
25/27 files checked 90% done
Checking vallist.c ...
26/27 files checked 92% done
Checking vm.c ...
Checking vm.c: __clang_analyzer__...
27/27 files checked 100% done

This was from your output btw. It (obviously) didn't cause a failure, but figured I'd mention it anyway.

So perhaps somehow related to your runner/kernel?

That could be. I did ask but haven't yet received an answer, but my guess would be 6.1 (as Bookworm will have) and otherwise 5.10 (as Bullseye has)

Or maybe the load/speed on the runner? I noticed 'your' runner finished the tests quicker then 'mine':

5.55 sec vs 7.16 sec (success for both)
271.01 sec vs 359.05 (failure on mine)

Dealing with the failure may account for some time difference, but not ~88 secs.

I started with this one ... and that succeeded ?!?
I did cancel the running of the build with ... as I assumed they were irrelevant.
I will re-run the pipeline but this time I'll let them all run.

And it succeeded again.
Attribute the initial failure to the phase of the moon?

This happens occasionally when the CI runner is very slow / loaded, there's too much time elapsing between the consecutive calls to clock(). I guess the check could be relaxed to simply check whether the second timestamp is larger than the first one.


0.1.26

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (d746227) 93.43% compared to head (69a5773) 93.43%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##           master     #203   +/-   ##
=======================================
  Coverage   93.43%   93.43%
=======================================
  Files          15       15
  Lines        1219     1219
=======================================
  Hits         1139     1139
  Misses         80       80

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Refactor graceful manager, fix misused WaitGroup

Follow #29629

I have an off topic question. Why was http.Server.Shutdown not used for http graceful shutdown ?

I have an off topic question. Why was http.Server.Shutdown not used for http graceful shutdown ?

I think maybe when Gitea start developing, the functions on std library haven't been introduced.

I was unable to create a backport for 1.21. @forsaken628, please send one manually. :tea:
go run ./contrib/backport 29738
...  // fix git conflicts if any
go run ./contrib/backport --continue