Tracking issue: superfluous use of pname

There is a huge quantity of appearances of patterns like  . . . = pname,  . . . = finalAttrs.pname, ${pname} and alike in Nixpkgs.
After some amount of ~heated~ discussions with @SuperSandro2000, I come to the conclusion that this should be discouraged.
There are some reasons I can enumerate for it:

Many, if not all, appearances of pname as an rvalue are basically constants - indeed they are constants since Nix is a functional language. They can be hardcoded with no loss (and some very small performance gains since the compiler will not need to consult the symbol tables).

It can be argued that other attributes change constantly, like the ubiquitous version.
However, they change based on a familiar modification pattern from the upstream project, whereas things like pname rarely change.

Related to  the point above, this use of pname creates otherwise superfluous in-code dependencies

This overcomplicates the static reasoning about the code
This overcomplicates the use of override* functionalities
The issues above are especially more pronounced in the context of finalAttrs design pattern

Sometimes - indeed, most of the time - things like GitHub's repo and other source origins are not identical to pname. Some examples:

OpenMSX and Bochs.

By convention pname is all-lowercase.

An exception consecrated by the use is, curiously,  SDL.

In the old times, PIL - the Python Imaging Library - had pname = pil and src.url = ". . ./Imaging-${version}.tar.gz"
Before migration to a dedicated forge, the MIR Project was called Unity-8.
After being passed from Canonical to the community, it was renamed Lomiri, but the forge did not change his name. Indeed the old, now-frozen repo is still called https://github.com/ubports/unity8.
Now it lives over https://gitlab.com/ubports/development/core/lomiri

Nix is not a macro language like M4 or the CPP preprocessor.

Just because two things have the same value, we should not treat them as if they are somehow connected
Just because two things are somehow connected, this connection should not necessarily be converted into the code
Pushing to the absurd and linking to the point above, it would be insane to parameterize each occurrence of pname.

References:

https://github.com/nix-community/nixpkgs-lint/issues/21

3. 3. This overcomplicates the use of override* functionalities

Why? If we are using rec { .. }, referencing pname explicitly NOT carries any runtime dependency, and override will not affect them. I can understand you want them to be explicitly independent. But I'd argue that only repo = finalAttrs.pname deserves a mass fix, and I cannot find any of these in #278611 after a quick glance.
I also want to list some counter reasons:

Nix has variables, so just use it.

The repository name is expected to be the project name, and pname is also expected to be the project name, at most differs in prefix or postfix (eg. llvm - llvm-project, libfuse - fuse). So they are expected to be connected.

It's common for them to be the same. I failed to randomly come up a package with repository name totally unrelated to its pname.

A typical example is OpenMSX.

Fortunately (unfortunately?), GitHub repo name and user name are case-insensitive. I've seen nixos/nixpkgs a lot, even inside nixpkgs. Ideally, they should be corrected, but they does NOT cause any actual issue except for ones with OCD (like me?). Mass trivial changes are not ideal either.

More repetition = more error possibilities. We have to write the package name 4 times with all-packages.nix (2 in all-packages, 1 for file name, 1 in pname), and 2 times with by-name (1 for file name, 1 in pname). Spliting repo and pname will bring it back to 3 times.

pname and attr name are packaging abstractions, repo name is whatever upstream decided to name them; we should not couple these.
And I do find 61 examples of the objectively worse repo = finalAttrs.pname.

and I cannot find any of these in https://github.com/NixOS/nixpkgs/pull/278611 after a quick glance.

Because it is just the round I. I can include them later.

. . . at most differs in prefix or postfix (eg. llvm - llvm-project, libfuse - fuse).

Many thanks to provide even more examples for pname != repo.

So they are expected to be connected.

Not all connections need to be or should be encoded.

   Fortunately (unfortunately?), GitHub repo name and user name are case-insensitive.

Neither Nixpkgs is bound by GitHub nor the world of source forges. Just look at the fetchers we have.
Further, there are many other contexts in which we can't assume the URLs are case-insensitive.
Indeed we can suppose very few about case sensitiveness of URLs:

From Stack Overflow:
Domain names are case insensitive according to RFC 4343. The rest of URL is sent to the server via the GET method. This may be case sensitive or not.

4. More repetition = more error possibilities. We have to write the package name 4 times with `all-packages.nix` (2 in all-packages, 1 for file name, 1 in `pname`), and 2 times with `by-name` (1 for file name, 1 in `pname`). Spliting `repo` and `pname` will bring it back to 3 times.

The examples you provided are not expected to change in a long term. Hardcoding them brings no harm, even for the Mousepad users.
Further, I subscribe the arguments from eclairevoiyant here.
Further, pushing it a bit far, e.g. interpolating every appearance of pname in meta.{changelog,longDescription,homepage, downloadPage} would be a really bad idea.
What about Bochs? Should we interpolate it like
  pname = "bochs";
  repoOwner  = pname + "-emu";
  repoName =
    let
      splitted = builtins.match "(.)(.*)" pname;
    in
      concatStringsSep "" (singleton (toUpper (head splitted)) ++ (tail splitted));

Remembering that the string "Bochs" appears on the longDescription and is connected to pname -- so just use it?

And I do find 61 examples of the objectively worse repo = finalAttrs.pname.

They definitely should be fixed.

Further, pushing it a bit far, e.g. interpolating every appearance of pname in meta.{changelog,longDescription,homepage, downloadPage} would be a really bad idea.
What about Bochs? Should we interpolate it like

Of course they shouldn't. As you said, don't make it a macro language, interpolating pname is no good. It's better to write distinct literals for libfuse and llvm-org.
My point is repo = pname is already an explicit way to say "here, (but may not be true for others), we have repo the same as pname", just like repo = "name" says "here, (but may not be true for others), this package is called name".

Further, there are many other contexts in which we can't assume the URLs are case-insensitive.

I agree.

They definitely should be fixed.

Ideally the finalAttrs should be the standardized, as opposed to rec:
https://github.com/NixOS/nixpkgs/pull/119942
Nowadays the finalAttrs design pattern was implemented only for stdenv.mkDerivation, but ideally it should be the standard - and then all appearances of = pname would become = finalAttrs.pname.
It looks for yet another reason to get rid of both rec and pname.

Ideally the finalAttrs should be the standardized, as opposed to rec:
#119942
It looks for yet another reason to get rid of both rec and pname.

rec and finalAttrs are two orthogonal features. Yes, someone is using them incorrectly and should be fixed. But when you try to replace intended non-overriding rec with overriding finalAttrs (or vice versa), it's introducing a new bug and fix itself in a new way. The issue of mindlessly replacing rec with finalAttrs is exactly what causing this particular issue, and is observed since https://github.com/NixOS/nixpkgs/pull/119942/files#r801044378.

Nowadays the finalAttrs design pattern was implemented only for stdenv.mkDerivation, but ideally it should be the standard - and then all appearances of = pname would become = finalAttrs.pname.

Don't introduce another with, please.

This has been a pet peeve of mine for a long time, so I for one would like to say thank you for moving this ahead!

I do find 61 examples of the objectively worse repo = finalAttrs.pname.

Decided to finally fix them, in #326683.

Is there agreement on how to treat fetchPypi? Since the pname of a Python package is supposed to be identical, barring PEP 503 normalization, to its name on PyPI, I'd argue that use of inherit pname is warranted in fetchPypi.

I've personally treated it as an exception; eventually we may even want to make it easier to normalise already so that package names with underscores, etc. can avoid having to write those out twice.

eventually we may even want to make it easier to normalise already

You mean buildPythonPackage should normalize pname automatically?

My suggestion was offtopic for here, but yes

Can this please be added to the contributor guide? And if there's still contention, run it through the RFC process?


SSM Session Manager not working

version = "7.2.2"
The IAM role seems to have policies for SSM access but I can't connect. And then SSH key pairs aren't allowed anymore so I can't debug the startup. Anyways the real problem is the runner isn't showing up in the list of runners in GitLab so I need to see which command failed in the instance

terraform config
  ```terraform
module "runner" {
  source  = "npalm/gitlab-runner/aws"
  version = "7.2.2"

  environment = "trz-glrunner-${var.stage}"

  vpc_id    = local.backend.vpc_id
  subnet_id = element(local.backend.database_subnet_ids, 0)

  # add certificates and docker.sock to the volumes to support docker-in-docker (dind)
  runner_worker_docker_add_dind_volumes = true

  runner_ami_filter = {
    name = ["amzn2-ami-kernel-5.10-hvm-2.*-arm64-gp2"]
  }

  runner_worker_docker_machine_ami_filter = {
    name                = ["ubuntu/images/hvm-ssd/ubuntu-focal-20.04-arm64-server-*"]
    virtualization-type = ["hvm"]
  }

  runner_worker_docker_machine_instance = {
    name_prefix     = "trz-glworker-"
    max_growth_rate = 3
    type            = "m6gd.xlarge"
  }

  runner_instance = {
    collect_autoscaling_metrics = ["GroupDesiredCapacity", "GroupInServiceCapacity"]
    name                        = "trz-glrunner-${var.stage}"
    ssm_access                  = true
    type                        = "t4g.micro"
  }

  # runner_networking = {
  #   allow_incoming_ping_security_group_ids = [data.aws_security_group.default.id]
  # }

  runner_gitlab = {
    url = var.gitlab_url
  }

  runner_gitlab_registration_config = {
    registration_token = var.registration_token
    tag_list           = "docker_spot_runner"
    description        = "runner default - auto"
    locked_to_project  = "false"
    run_untagged       = "true"
    maximum_timeout    = "3600"  # seconds
  }

  runner_worker_gitlab_pipeline = {
    # pre_build_script  = <<EOT
    #     '''
    #     echo 'multiline 1'
    #     echo 'multiline 2'
    #     '''
    #     EOT
    # post_build_script = "\"echo 'single line'\""
  }

  runner_worker_docker_options = {
    privileged = "true"
    volumes    = ["/cache", "/certs/client"]
  }

  runner_worker_docker_volumes_tmpfs = [
    {
      volume  = "/var/opt/cache",
      options = "rw,noexec"
    }
  ]

  runner_worker_docker_services_volumes_tmpfs = [
    {
      volume  = "/var/lib/mysql",
      options = "rw,noexec"
    }
  ]

  runner_worker_docker_machine_autoscaling_options = [
    {
      # [second] [minute] [hour] [day of month] [month] [day of week] [year]
      periods    = ["* * * * * * *"]
      idle_count = 0
      idle_time  = 3600
      timezone   = "UTC"
    }
  ]

}
</details>

Let's see what's going on. Basically the SSM access works. Just connected to my instance, so IAM should be fine.
Have you checked the Cloudwatch log groups? Are there any errors shown?
I noticed that you use a t4g instance. As this requires a different AMI: Any chance to switch to a t4instance and get rid of the AMI filter? Just to make sure that it works.


Update blog to use mem feature of compiler_builtins

Updates the blog for the code changes introduced in #865.

Hi, I know you're in the middle of a big rewrite, but I'm getting a linking error using this feature instead of rlibc (click to expand the compiler error) with the current code. I just made it to Try it out! where we try to vga_buffer::print_something() for the first time.

rust-lld: error: undefined symbol: memset (click for more...)
     Compiling blog_os v0.1.0 (/Users/brian/Code/local/rust/blog_os)
  error: linking with `rust-lld` failed: exit code: 1
    |
    = note: "rust-lld" "-flavor" "gnu" "--eh-frame-hdr" "-L" "/Users/brian/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-blog_os/lib" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8.1acu7aet213x3h7.rcgu.o" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8.25wnobk433yf0zoc.rcgu.o" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8.2ghhqknm3xz7jve5.rcgu.o" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8.2op71tmzrz9p7xm4.rcgu.o" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8.310auomji65262sd.rcgu.o" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8.4y1p3058sfp137pt.rcgu.o" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8.502yzro07n60f3y8.rcgu.o" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8.pfjvfcwkxqoh6m8.rcgu.o" "-o" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/blog_os-655c79911b6614f8" "--gc-sections" "-L" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps" "-L" "/Users/brian/Code/local/rust/blog_os/target/debug/deps" "-L" "/Users/brian/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-blog_os/lib" "-Bstatic" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/librustc_std_workspace_core-c85c4f48002fcc96.rlib" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/libcore-d6cd1565a3612d4c.rlib" "/Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/libcompiler_builtins-e7f2415038ad1aa4.rlib" "-Bdynamic"
    = note: rust-lld: error: undefined symbol: memset
            >>> referenced by num.rs:213 (/Users/brian/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/fmt/num.rs:213)
            >>>               core-d6cd1565a3612d4c.core.5np4my57-cgu.13.rcgu.o:(core::fmt::num::imp::fmt_u64::hb588b66b54ea6795) in archive /Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/libcore-d6cd1565a3612d4c.rlib

            rust-lld: error: undefined symbol: memcpy
            >>> referenced by intrinsics.rs:1860 (/Users/brian/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/intrinsics.rs:1860)
            >>>               core-d6cd1565a3612d4c.core.5np4my57-cgu.14.rcgu.o:(core::intrinsics::copy_nonoverlapping::h5da078f0cb1de4c4) in archive /Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/libcore-d6cd1565a3612d4c.rlib
            >>> referenced by intrinsics.rs:1860 (/Users/brian/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/intrinsics.rs:1860)
            >>>               core-d6cd1565a3612d4c.core.5np4my57-cgu.14.rcgu.o:(core::intrinsics::copy_nonoverlapping::h9204dda9829016e4) in archive /Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/libcore-d6cd1565a3612d4c.rlib
            >>> referenced by intrinsics.rs:1860 (/Users/brian/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/intrinsics.rs:1860)
            >>>               core-d6cd1565a3612d4c.core.5np4my57-cgu.14.rcgu.o:(core::intrinsics::copy_nonoverlapping::hb37a74d76009075d) in archive /Users/brian/Code/local/rust/blog_os/target/x86_64-blog_os/debug/deps/libcore-d6cd1565a3612d4c.rlib
            >>> referenced 1 more times

  error: aborting due to previous error

  error: could not compile `blog_os`

  To learn more, run the command again with --verbose.

I made sure to update my rust nightly toolchain this time:
$ rustc --version
rustc 1.49.0-nightly (a1dfd2490 2020-10-05)

I'm able to build post-03 branch using that same nightly compiler.
Are you sure you're building with the compiler-builtins-mem feature? I would check the .cargo/config.toml file and make sure however you're building the kernel is pulling in that enabled feature.
 And I see what I got wrong - I was reading the diff and put the config into Cargo.toml. Thanks!


Issue with hedera-wallet-connect and transaction/query signature & execution with blade mobile

The bug
Hello, I caught another problem, I managed to connect my demo dapp with blade wallet through QR code scan, then I sent a simple query to be signed and executed (hedera_signAndExecuteQuery), but I get the following error: {type: 'locked', message: "The user's wallet is locked.", code: 423, isError: true, source: '02'}, the same happens for transactions.
To Reproduce the error

Link the demo dapp to blade wallet
Send a query or a transaction to be signed and executed
catch the locked wallet error

Expected behavior
What I expected is to be prompted on my mobile to sign or reject the query/tx then see some output on my browser
Screenshots
The locked wallet error

The demo dapp succefully connected to blade

Desktop:

OS: Windows 11
Browser: chrome, brave
Version: latest

Smartphone:

Device: Realme C55, iPhone 13
OS: Android 13, iOS
Wallet: Blade mobile

Additional context
I suspected there was something wrong with my code, but whenever I mess something up, I get an error telling me exactly what's wrong with the query/tx, so I suppose I'll trust the test code for now.
I'd like to mention my wallet is not locked at all, I can make transactions from it normally, when I am not opening blade, the hedera_signAndExecuteQuery promise stays pending with no errors, once I open blade it fails and I get that error. I tried it from my friends wallets, same behaviour.
and here is what I tried to sign and execute:
// 4. SignAndExecuteQuery
export async function hedera_signAndExecuteQuery(dAppConnector: DAppConnector,accountId:string) {
const query = new AccountInfoQuery().setAccountId(accountId)
const params: SignAndExecuteQueryParams = {
signerAccountId: 'hedera:testnet:' + accountId,
// @ts-ignore
query: queryToBase64String(query),
}
console.log("just before sending query");
// @ts-ignore
const { response } = await dAppConnector!.signAndExecuteQuery(params)
const bytes = Buffer.from(response, 'base64')
const accountInfo = AccountInfo.fromBytes(bytes)
console.log(accountInfo)
return accountInfo
}
// 5. hedera_signAndExecuteTransaction
export async function hedera_signAndExecuteTransaction(dAppConnector: DAppConnector,sender:string,receiver:string) {
const transaction = new TransferTransaction()
.setTransactionId(TransactionId.generate(sender))
.addHbarTransfer(sender, new Hbar(-1))
.addHbarTransfer(receiver, new Hbar(+1))
const params: SignAndExecuteTransactionParams = {
  // @ts-ignore
  transactionList: transactionToBase64String(transaction),
  signerAccountId: 'hedera:testnet:' + sender,
}

console.log(params)

return await dAppConnector!.signAndExecuteTransaction(params)

}

@valeraOlexienko
Do you have any additional insight that might help debug this error?

Hello, I have an update for you: I used the hedera-wallet-connect library to create the logic that a wallet would have, I managed to link my test DApp with my test wallet, and when I try to sign and execute queries / transactions, I get prompted on the wallet side to accept (Window: confirm() method), if there is nothing wrong with my query/tx, it gets executed and I get some return on the Dapp side.

Hello. I have no more updates on this issue, still I would be interested to hear about its resolution. Thank you.

hi @marelh02 Our team has tried to reproduce this, though we are not able to (it's possible something has been fixed since the original post. Here is the team members response. Does this problem persist for you or is it working as well?
On the latest version of hedera-wallet-connect (1.0.6), the bug does not reproduce, the hedera_signAndExecuteQuery and hedera_signAndExecuteTransaction functions provided by the author of the issue work correctly, i.e. transactions and query are executed successfully. At the same time, Blade Wallet works correctly, opening a modal window with confirmation of the transactions being sent. I assume that the problem was on the side of the Blade Wallet.
The results of the tested functions:
signAndExecuteTransaction:
<EMAIL_ADDRESS>signAndExecuteQuery:
{"balance":"69.99483326 ℏ","accountId":"0.0.4340749","contractAccountId":"6ba87e79abb885e7b40cae77c3eeab3a2c473fb4","isDeleted":false,"proxyAccountId":null,"proxyReceived":"0 tℏ","key":"302d300706052b8104000a032200034751819da41437641c626f2743d63b9156894ad33027231a31b4fa99fd9deb16","sendRecordThreshold":"0 tℏ","receiveRecordThreshold":"0 tℏ","isReceiverSignatureRequired":false,"expirationTime":"1723215996.000000000","autoRenewPeriod":"[object Object]","accountMemo":"","ownedNfts":"0","maxAutomaticTokenAssociations":"2","aliasKey":null,"ledgerId":"testnet","ethereumNonce":"0","stakingInfo":{"declineStakingReward":false,"stakePeriodStart":null,"pendingReward":"0 tℏ","stakedToMe":"0 tℏ","stakedAccountId":null,"stakedNodeId":null}}

Yes, I can confirm that with the latest version of the wallet, all should be fine, we tested it recently on our side too.
@marelh02 please let us know if you still have issues

@valeraOlexienko @marelh02
I'm going to close this issue as resolved. @marelh02 if you still have issues please ping and we can re-open


Should there be sound on the demo movies?

This page includes 2 movies: https://mriqc.readthedocs.io/en/latest/reports.html
I come away with the impression that someone should be talking us through the demo, but alas, the audio is greyed out.

Closing in favor of https://github.com/nipreps/mriqc/discussions/1340


Document agent versions delivered with OnPrem TFS

It would be helpful to have somewhere documented which agent version was delivered with which OnPrem TFS version.

Agreed!

I also have created a PR (#635) which would also help with this as it begins documenting which logging commands are available from which agent version (and therefore which OnPrem TFS version) on.

OK - I accepted it.  I'm about to redo that but that's a good add.  I don't like the formatting/layout of it ...

Thanks!
Feel free to redo :smile: Formatting is generally not ideal on this page for viewing in GitHub since the table need horizontal scrolling. A list based view or something similar might be more readable.

@bryanmacfarlane But #653 does not fix this issue. This issue is about which agent version was delivered with which TFS On-Prem version (the PR was for documenting which logging command was available in which agent version). Therefore this shouldn't be closed yet.

Good point.  I wish the .net agent was open sourced - that's where I would document.  In absense of that, we will document here under the premise of minimumAgentVersion.
I also want the doc to talk about the agent update process and which branch to get patches for tasks.

+1 for open sourcing the .net agent :wink:

Next month we start on a single core CLR agent :)  It will be open sourced

Thanks @bryanmacfarlane. I look forward to that. In the mean time may I ask if I can take the VSO version and install it on an on premises server or agent. If so is there anywhere this is documented.

No, the on-premises server will be updated with Update 1 and the normal on-premises update cycle.
From: PreetSangha<EMAIL_ADDRESS>Sent: Monday, October 19, 2015 9:53 PM
To: Microsoft/vso-agent-tasks<EMAIL_ADDRESS>Subject: Re: [vso-agent-tasks] Document agent versions delivered with OnPrem TFS (#636)
Thanks @bryanmacfarlanehttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fbryanmacfarlane&data=01|01|Chris.Patterson%40microsoft.com|c8744185d3134c82ac0c08d2d8f13133|72f988bf86f141af91ab2d7cd011db47|1&sdata=I%2FJXLGVnFNSNm2bqWixifl3dbq1fqeXfHStvzawn8Do%3D. I look forward to that. In the mean time may I ask if I can take the VSO version and install it on an on premises server or agent. If so is there anywhere this is documented.
—
Reply to this email directly or view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2Fvso-agent-tasks%2Fissues%2F636%23issuecomment-149398627&data=01|01|Chris.Patterson%40microsoft.com|c8744185d3134c82ac0c08d2d8f13133|72f988bf86f141af91ab2d7cd011db47|1&sdata=7FiMqoKh5eWwZgoX0R63DS2noFWQFLyvf6gX%2FzG8HXg%3D.

Catching up on this old issue.
The agent is now open sourced and no longer delivered with an on-prem server.  It is the 2.x agent.
You can download from:
https://github.com/Microsoft/vsts-agent
Starting with TFS 2017 and forward the download button points to a specific version, but you are free to go grab latest from github releases.
TFS2017 pointed to 2.105.7
TFS2017 QU1 pointed to 2.112.0
TFS2017 QU2 points to 2.117.1
So if you go to that contants.cs file, you can switch release branches and see what version if needed.  But as I said above, you can grab latest from github.  We maintain API compat.


[CI] add macos matrix to CI

sh: line 1:  9690 Illegal instruction: 4  /Users/runner/work/quicly/quicly/build/cli -e /var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/CqS9aFr15l/events -p /12 <IP_ADDRESS> 61179 2> /dev/null

I believe it's a GitHub-hosted macOS-specific issue and I have no idea about it so far. Closing.


Set port for enrollz and attestz gRPC endpoints

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
291

Relevant Lines:
329

💛  - Coveralls

lgtm. note we also need a grpc service identity (identities?) in OpenConfig yang, like https://github.com/openconfig/public/blob/ea279957a8dab6eb0c0b05e5a134bc3dfb0c8d28/release/models/gnsi/openconfig-gnsi.yang#L35-L40

Thanks, Sergey! Could you remind me why the YANG model is needed and how it is used?
I would also hope there are proto-to-yang converters and yang-validators out there, so I don't need to do it by hand?

And just to clarify, my comments are not directly related to this PR; yang update should probably be done as a separate PR in openconfig/public repo. But since this change talks about grpc-server configurations where gNMI/... reside on the same socket with enrollz/attestz I thought it is a good time to raise this topic :)

Hey, @openconfig/attestz-triage , instead of creating per-vendor bugs and asking to review/sign-off on each PR, we now have  attestz-triage group which we will be adding to the PRs that introduce important changes (APIs, design, workflow, etc). This should streamline iteration on such changes, and make life easier for everyone :) So for this PR, for example, the expectation is at least one person from each vendor will review and explicitly approve it. Please let me know if this helps and suggest any improvement to the process.
I am also going to suggest creating per-vendor groups for the entire OC org. That way (1) we can add each vendor separately to PRs and clearly see who reviewed/approved it and (2) we don't have to repeat the same process for each repo in openconfig. Please let me know what you think, and happy to discuss next week during the weekly Tue morning OC meeting.

s is going to be a simple "one-liner"

ah gotcha, thanks! Ok, I will add it this then in a separate PR. I asked about proto-to-yang converter, because I also saw more service-specific yang files, such as this one for certz. Would we need something like that for enrollz and attestz as well?

Hi @jenia-grunin,

Would we need something like that for enrollz and attestz as well?

No, probably not. Unless you need additional state that can be retrieved via gNMI telemetry. But that's not in the current scope of attestz/enrollz AFAIK.


Modal custom classes don't apply to title section

Describe the bug
I would like to customize the background of the Modal in dark mode. I am also using using the title prop. The custom classes only apply to the body of the modal. The title section cannot be styled. I would expect the classes would apply to that section too.
I am working around this by not using the title prop and adding my title to the body.
Reproduction
<Modal
title="My title"
bind:open
size="sm"
autoclose={true}
class="bg-green-500"
outsideclose

Modal body

Flowbite version and System Info
Ubuntu
flowbite 0.44.20
Node v20.10.0

Modal is designed to use color property  Colors
Yes, the choice is limited, but that's how it's implemented right now.

In addition to colors, it has options for overwriting classes: https://flowbite-svelte.com/docs/components/modal#Modal_styling
It's just not applied to the title section.

Try: <Modal color="none" class="bg-green-500" ...>

The above solution works.


LandingPage_iphone5: global row padding is making mobile margins much too intense, need to incorporate accurate media queries

I think this is due to improper setting of media queries and/or making sure global css parameters are not messing with this.

This changed between builds, @jpailthorpe does this still need to be tweaked?

This was a problem with the base layout file not assigning the homepage its own viewport meta tag.

Still seeing this on iphone 6s plus. But like the other issues, no worries until we turn our attention back to this and tackle it together!


Check for rule conventions - Rewrite for decorator

Continuation of
https://github.com/buildingSMART/ifc-gherkin-rules/pull/74
Due to many changes in the fundamentals, I've found it easier to write this in a new PR and delete the old one.
WIP: correct conventions that were not yet checked in the old PR

Merge to development, not main


Add partial deprecation message on render_image call

Related to work on https://github.com/ome/omero-web/pull/443 and the change log update at https://github.com/ome/omero-web/pull/449

Thanks Merging and releasing the doc


elasticsearch-model chain for method where

Hi friends
I am new to elasticsearch-model
I have a options field: keyword, city
I want to do something like
Club.search(opt[:keyword]).records.where(city: opt[:keyword] || '*')

to check if city is not in option => search all
But it does not work.
Thanks !

Wouldn't a mixed approach work better in this case?
if opt[:keyword]
  Club.search(opt[:keyword]).records
else
  Club.all
end

++ @dabit

@dabit  thanks !

@


Bugfix for #63 invalid arguments retrieving info for some prs

updateShowOptions() assumed that all comments have line information. This is not the case for file comments.
So the line was undefined and caused the exception with invalid arguments.

Fixes #63


PWP masks

(ACNL Save Editor)
The mask for a Hot Spring looks wrong, it's a 3x2 PWP and not a 2x3 PWP

Fixed Hot Spring mask (and other building mask issues aswell) in 916f432292400bb55b35d985e4eaa0c305bbe31e


各位老哥，Springboot启动报内存溢出怎么解决？

如题

You can find the answer below
...
but no way! hhh

hi,
I believe the following script can solve your issue
``
Please let me if the above code has any problems

为什么issue里面这么多中国人，皮一下很开心吗？


Flutter build appbundle fails

After updating flutter
flutter build appbundle fails but flutter run --release works
buildscript {
    repositories {
        google()
        jcenter()
    }

    dependencies {
        classpath 'com.google.gms:google-services:4.2.0'
        classpath 'com.android.tools.build:gradle:3.5.0'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

org.gradle.jvmargs=-Xmx1536M

android.useAndroidX=true
android.enableJetifier=true
android.enableR8=true

#Fri Jun 23 08:50:38 CEST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip

environment:
  sdk: ">=2.1.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  cached_network_image: ^2.0.0
  facebook_audience_network: ^0.5.0
  flutter_local_notifications: ^0.8.4
  android_alarm_manager: ^0.4.4
  share: ^0.6.3+6
  firebase_dynamic_links: ^0.5.0+6
  http: ^0.12.0+2
  youtube_player_flutter: ^6.1.0+4
  shared_preferences: ^0.5.6+3
  device_id: ^0.2.0
  mailer: ^3.0.4
  flutter_pollfish: ^0.2.3

I'm having a similar issue where my live app is crashing on startup. Everything works perfectly when using debug or release but the appbundle seems to be causing issues.
Hopefully this will be fixed! For now, I'm trying older plugin versions to see if there's an issue there. Also testing with different Flutter channels.

Hi @sampathkumar7
could you please provide your flutter doctor -v
and flutter build appbundle --verbose?

flutter build appbundle --verbose
`[+10180 ms] > Configure project :app
[   +1 ms] WARNING: DSL element 'useProguard' is obsolete and will be removed soon. Use 'android.enableR8' in gradle.properties to switch between R8 and Proguard..
[ +677 ms] FAILURE: Build failed with an exception.
[  +61 ms] * Where:
[  +48 ms] Build file 'D:\sampath\Flutter\New Apps\xxxxx\android\build.gradle' line: 25
[  +81 ms] * What went wrong:
[   +1 ms] A problem occurred evaluating root project 'android'.
[   +2 ms] > A problem occurred configuring project ':app'.
[  +14 ms]    > Removing unused resources requires unused code shrinking to be turned on. See http://d.android.com/r/tools/shrink-resources.html for more information.
[   +3 ms] * Try:
[        ] Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
[   +1 ms] * Get more help at https://help.gradle.org
[  +19 ms] BUILD FAILED in 10s
[ +451 ms] Running Gradle task 'bundleRelease'... (completed in 12.0s)
[   +7 ms] "flutter appbundle" took 13,062ms.
Gradle task bundleRelease failed with exit code 1
#0      throwToolExit (package:flutter_tools/src/base/common.dart:28:3)
#1      buildGradleApp (package:flutter_tools/src/android/gradle.dart:387:7)
#2      _asyncThenWrapperHelper. (dart:async-patch/async_patch.dart:73:64)
#3      _rootRunUnary (dart:async/zone.dart:1134:38)
#4      _CustomZone.runUnary (dart:async/zone.dart:1031:19)
#5      _FutureListener.handleValue (dart:async/future_impl.dart:139:18)
#6      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:680:45)
#7      Future._propagateToListeners (dart:async/future_impl.dart:709:32)
#8      Future._completeWithValue (dart:async/future_impl.dart:524:5)
#9      _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:32:15)
#10     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:290:13)
#11     _DefaultProcessUtils.stream (package:flutter_tools/src/base/process.dart)
#12     _asyncThenWrapperHelper. (dart:async-patch/async_patch.dart:73:64)
#13     _rootRunUnary (dart:async/zone.dart:1134:38)
#14     _CustomZone.runUnary (dart:async/zone.dart:1031:19)
#15     _FutureListener.handleValue (dart:async/future_impl.dart:139:18)
#16     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:680:45)
#17     Future._propagateToListeners (dart:async/future_impl.dart:709:32)
#18     Future._completeWithValue (dart:async/future_impl.dart:524:5)
#19     Future._asyncComplete. (dart:async/future_impl.dart:554:7)
#20     _rootRun (dart:async/zone.dart:1126:13)
#21     _CustomZone.run (dart:async/zone.dart:1023:19)
#22     _CustomZone.runGuarded (dart:async/zone.dart:925:7)
#23     _CustomZone.bindCallbackGuarded. (dart:async/zone.dart:965:23)
#24     _microtaskLoop (dart:async/schedule_microtask.dart:43:21)
#25     _startMicrotaskLoop (dart:async/schedule_microtask.dart:52:5)
#26     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:118:13)
#27     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:175:5)`
flutter doctor -v
`[√] Flutter (Channel stable, v1.12.13+hotfix.8, on Microsoft Windows [Version 10.0.18363.720], locale en-US)
• Flutter version 1.12.13+hotfix.8 at C:\src\flutter
• Framework revision 0b8abb4724 (5 weeks ago), 2020-02-11 11:44:36 -0800
• Engine revision e1e6ced81d
• Dart version 2.7.0
[√] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at D:\sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 28.0.3
• ANDROID_HOME = D:\sdk
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
• All Android licenses accepted.
[√] Android Studio (version 3.3)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin version 32.0.1
• Dart plugin version 182.5124
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
[√] VS Code (version 1.42.1)
• VS Code at C:\Users\sampathkumar\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.8.1
[√] Connected device (1 available)
• ONEPLUS A6010 • 315bbc84 • android-arm64 • Android 10 (API 29)
• No issues found!`

removing minifyEnabled false from app/build.gradle worked for me.

@sampathkumar7
I'm glad that you fixed the problem,
thank you for sharing solution
Closing the issue,
If you disagree please write in the comments and I will reopen it


breaks in sqlalchemy 1.4

I'm just looking at rqlalchemy as a way to add rql based filtering to my own project. It looks like things are a bit broken when using sqlalchemy 1.4. The two problems I have spotted so far are that Base.query_class = RQLQuery doesn't seem to change the query class being returned by session.query() and that sqlalchemy.orm.Query no longer has an _entities attribute. So the following program fails with AttributeError: 'Query' object has no attribute 'rql':
from collections import namedtuple
from rqlalchemy import RQLQueryMixIn
from sqlalchemy import (
    Column, Integer, String,
    create_engine,
)
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import (
    Query as BaseQuery,
    Session
)

# create the declarative base
Base = declarative_base()

from sqlalchemy.orm import relationship
class User(Base):
    __tablename__ = 'user_account'

    id = Column(Integer, primary_key=True)
    name = Column(String(30))
    fullname = Column(String)

    def __repr__(self):
       return f"User(id={self.id!r}, name={self.name!r}, fullname={self.fullname!r})"

# create the custom query class
class RQLQuery(BaseQuery, RQLQueryMixIn):
    _rql_default_limit = 10
    _rql_max_limit = 100

# assign the custom query class to the declarative base
Base.query_class = RQLQuery

engine = create_engine("sqlite+pysqlite:///:memory:", echo=True)
Base.metadata.create_all(engine)
ses = Session(engine)
squidward = User(name="squidward", fullname="Squidward Tentacles")
krabs = User(name="ehkrabs", fullname="Eugene H. Krabs")
ses.add(squidward)
ses.add(krabs)
ses.flush()

query = ses.query(User)

query = query.rql('contains(name,squid)')

for user in query.all():
    print(user)

The following lines between query = ses.query(User) and query = query.rql('contains(name,squid)') are enough to make it go, although probably not enough to be considered a fix:
# Base.query_class = RQLQuery didn't seem to alter the query class being
# returned. Manually assign to __class__.
query.__class__ = RQLQuery

# Query._entities doesn't exist any more. Fill with just enough to keep rql
# happy.
Entity = namedtuple('Entity','type')
query._entities = [Entity(type=User)]

@colinhiggs  I suspect the Base.query_class was a flask-sqlalchemy parameter and not really supported by pure SQLAlchemy. Using the query_cls parameter to sessionmaker works.
The change to the _entities seems to be a real backwards incompatible change.


Correct type of arguments in QuantumGateDefinition

Summary
The ANTLR to AST conversion was taking the type of the arguments to be
Identifier, but the AST hierarchy itself wanted them to be
ClassicalArgument.  The spec currently says that they are
"arbitrary-precision numerical types", which does not line up with
ClassicalArgument (which would include, e.g. IntType), and
Identifier is more correct for the current spec, though this may
change in the future.

Details and comments
Fix #345 (the immediately actionable parts - the discussion touches on other on-going discussions, but those are orthogonal to #345 itself).

though this may change in the future

This would need to change after #346 I imagine?

Yeah, exactly - I don't know how long #346 will take to merge, so I'm just trying to get on top of things as they stand.


android 7.0显示颜色不正常

flutter sdk 2.10 ，babylonjs_viewer 1.1.1 android 7.0系统手机显示颜色不正常，https://modelviewer.dev/shared-assets/models/NeilArmstrong.glb

Which color are you talking about? If you can share a photo it would be very nice


Incorrect decoding of file names with some zip files

I have a zip file where zip4j doesn't decode the file names correctly while all of the command line utilities and Apache's VFS2 do. From the contents of the zip file it looks like it was made on a Mac. Here is the output of test code I wrote. The first 2 lines are using Apache VFS2. The second 2 lines are from using Zip4j's ZipInputStream
Aquinas, St. Thomas/Primary/Français/Aquin - De l'éternite du monde.doc
9:Français
Aquinas, St. Thomas/Primary/Franc╠ºais/Aquin - De l'e╠üternite du monde.doc
10:Franc╠ºais

The file is 700MB so I can't really attach it here. I tried to create a smaller file by unzipping the archive and rezipping only that file but Zip4j worked fine on the rezipped file.
I saw issue https://github.com/srikanth-lingala/zip4j/issues/304 which I'm not sure is related. In any case I don't have control over the zip files I'm unzipping and so I don't know the encoding beforehand.
For completeness the following is my test code. It prints out the name of the 184th entry in the zip file:
import java.io.File;
import java.io.FileInputStream;

import org.apache.commons.compress.archivers.ArchiveEntry;
import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;

import net.lingala.zip4j.io.inputstream.ZipInputStream;
import net.lingala.zip4j.model.LocalFileHeader;

public class TestEncoding {
    public static String pickOutDirName(final String name) {
        final int start = name.indexOf("Fran");
        final int end = name.substring(start).indexOf('/') + start;
        return name.substring(start, end);
    }

    public static void main(final String[] args) throws Exception {
        final String fullPath = "/path/to/zip/file.zip";
        final File file = new File(fullPath);

        int entryCount = 0;
        try(ZipArchiveInputStream isa = new ZipArchiveInputStream(new FileInputStream(file));) {
            for(ArchiveEntry entry = isa.getNextEntry(); entry != null; entry = isa.getNextEntry()) {
                if(entryCount == 184) {
                    final String name = entry.getName();
                    final String dirName = pickOutDirName(name);
                    System.out.println(name);
                    System.out.println(dirName.length() + ":" + dirName);
                    break;
                }
                entryCount++;
            }
        }

        entryCount = 0;
        try(ZipInputStream isz = new ZipInputStream(new FileInputStream(file));) {
            for(LocalFileHeader entry = isz.getNextEntry(); entry != null; entry = isz.getNextEntry()) {
                if(entryCount == 184) {
                    final String name = entry.getFileName();
                    final String dirName = pickOutDirName(name);
                    System.out.println(name);
                    System.out.println(dirName.length() + ":" + dirName);
                    break;
                }
                entryCount++;
            }
        }
    }
}

An entry in a zip file has a flag set in its header data which defines if the file name of this entry is UTF-8 encoded or not. Any tool that creates a zip file has to set this flag if it uses utf-8 to encode the file name. In this case, I think the tool that created the zip did not set this flag even though it used utf-8 to encode the file name. The difference you see between zip4j and apache compress is that, if this flag is not set, zip4j uses a zip spec standard charset by default, whereas apache compress uses utf-8 even if the flag is not set. Technically speaking, this is not as per the specification, but I think I tend to agree with the apache compress solution to use utf-8 even if the flag is not set. I will change this in zip4j and include it in the next release.

Thanks. Once this hits maven central I'll give it another try.

@jimfcarroll I am reverting the change I did here because this was having some side effects with zip files that use zip standard charset. The change I did as part of this issue was to use utf8 by default in zip4j. But, and I am contradicting my statement from earlier comment in this issue, this is not as per the zip specification. Zip specification states to use zip standard charset if utf8 flag is not set.
In your case, if you are sure your zip files use utf8 encoding, you can force zip4j to use utf8 with ZipFile.setCharset(StandardCharsets.UTF_8).


Feature request. MODBUS Proxy

I would like to add some complexity to the GW, I hope this could be added as it's own service and hopefully not interact with too much of the other complexity. It's configured via a .yaml file so instead we need to push settings to the proxy instead of the GW. and then the modbus proxy interacts directly.
OR an alternative could be to build this into our FW directly instead of having as a separate service.
Why this is needed?

In examples where customers have other services running, such as 1,5 Hearbeat, Checkwatt or maybe their own Home Assistant service - we need to point these to the proxy and all can work in tandem.
From the security perspective we can also say that we have a built in FW/proxy for the modbus.
Added bonus, which might be the most important for future development: we will also be able to scrape all existing communication that happens from Heartbeat, Checkwatt etc.

I have been running this months and it seems to be very stable. Example below.
$ modbus-proxy -c ./modbus-config.yml
https://github.com/tiagocoutinho/modbus-proxy

Connected to #45

duplicate of #161 (closing that one as this has some more info)

Also note licence information for used lib/code/software and how that would affect the eGW
It seems a modbus proxy is basically 400 lines of code... is it really worth launching this as a service of it's own?
https://github.com/tiagocoutinho/modbus-proxy/blob/master/src/modbus_proxy.py

It would be nice if the srcful proxy would be able to cache the last response available for a certain register, for example lets say an inverter can only respond every 5th second, if some other service like a Home Assistant addon would request data every second from the srcful proxy it would be better to just respond with the last known value instead of pushing the inverter harder? Just some thoughts

if we want to support multiple inverters this also needs to be sorted.


Failed to update the static web site from local folder using azure cli

i've create static web app in azure
it is correctly deployed and i can open it in browser
i have tried to update / redeploy with some changes
i've see the following in console

PS C:\DEV\office365_plugin\dist> az webapp up --location=westeurope --name teststaticsite
Resource group 'appsvc_rg_Windows_westeurope' already exists.
App service plan 'appsvc_asp_Windows_westeurope' already exists.
Creating app 'teststaticsite' ....
Website with given name teststaticsite already exists.

Result: the static app is not updated
Expected behaviour: the static app should be updated regarding the docs

@davojta We will close this issue as it is a duplicate. Our team will help you with your question on #16146


Publish a multi-release JAR

"We use your java8 code in jackson-core. If you publish a jar with your java8 branch code that would be great - we would change our build to use your published jars and that shades the class packages to include them in jackson-core jar.
One solution would be to append '-java8' to the artifact name (and '-java17' for the java17 jar). Or maven supports 'classifiers' which basically lead to a similar result."
Originally posted by @pjfanning in https://github.com/wrandelshofer/FastDoubleParser/issues/22#issuecomment-1318507290

Class shading does not work with modular Java anymore: if two modular Jar files contain the same package, the JVM  refuses to start.
So, maybe, I should build a modular multi-release JAR?
This would allow to deploy a single JAR file that contains all the various code variants that we currently have in the java8, java11, java... branches.

The code in the dev branch now builds a multi-release jar.


[Need advice] -  Using tinylog in android app

Hi,
This is NOT an issue, but just an advice taking for using tinylog in my android app.
So, I want to use this in my android app and wanted to write the application logs here. It will be common  file created hourly. I want to keep it multithreaded.
Here is what I think as the config :-
tinylog.writer = sharedfile
tinylog.writer.filename = mylog.txt
tinylog.writer.append = true
tinylog.writer.backups = 100
tinylog.writer.label = timestamp
tinylog.writer.policies = hourly, size: 100KB
tinylog.writingthread = true
tinylog.writingthread.observe = null
tinylog.writingthread.priority = 1
Queries

Will the above config allow creation and writing of log files on hourly basis
I am using Amazon S3 bucket to store the logs
Shall I write the config in property file in s3 bucket or use java code in android app itself.

any other suggestions are welcome.

You need the rolling file writer (tinylog.writer = rollingfile). Only the rolling file writer supports starting new log files based on rules. It appends existing log files automatically, so you can remove the line tinylog.writer.append = true.
I haven used Amazon S3 bucket yet. Thus, I can't give any suggestions about Amazon S3 bucket itself. The most developers (including me) prefer to use a property file to configure tinylog rather than Java code.

Thanks for responding.
Using RollingFile writer, will it support writing from multiple threads ?
The test case is, lets say there are 1000 users using our android app at the same time and we are logging their activities in our log file.
will Rollingfile supports writing all these 1000 user values, written to the same file ?

tinylog is completly thread-safe. All writes, including the rollging file writer, supports multiple threads. The shared file writer supports additionally that multiple applications can write to the same log file at the same time. But it doesn't support rolling.

So by "multiple applications can write" , did you mean, several different application or "multiple instances" of an application ( like an android app with 10,000 downloads/ users)
I just want to make sure that Rolling Write will be best choice for android app, where data from 10,000 running apps is written to the same log file.

I mean both: several different applications and/or multiple instances of an application. However, usually you run only one instance of an app on a device!? Do you plan that thousands of apps log to a remote machine? In this case, you should think about a specialized logging server. Maybe a Graylog server with an external GELF writer for tinylog can be a solution.


Periodic resample operation gradients and optimization

Added gradient for periodic_resample operation.
Optimization: implemented incremental index computing.
Implemented intra-op parallelism for this operation
Make output shape of periodic_resample operation fully defined, when possible.

Nagging Assignee @rmlarsen: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

@vchigrin could you please provide some benchmark numbers to document the performance improvements?

About benchmark. Tested it on CPU Intel(R) Core(TM) i7-4930K CPU @ 3.40GHz with following script
https://pastebin.com/RvVw52YX
Before testing i modified code so it used only single thread for this operation (since previous version also was single-threaded).
Program output before these changes:
  Average resample time<PHONE_NUMBER>14 ms, max time<PHONE_NUMBER>19 ms

After:
  Average resample time 83.5015463829 ms, max time 96.137046814 ms

@vchigrin Thanks for the info, looks good.

It has been 14 days with no activity and the awaiting response label was assigned. Is this PR still valid? Assigning the stalled label. Please comment to reassure me that this is still being worked on.

Fixed, sorry for making such mistakes..

@vchigrin no worries. :-)

Nagging Assignee @rmlarsen: It has been 17 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Timeout, trying again.


Example project:
Example project.zip

I experimented a bit, and it seems it does have an effect, if you save and reload the scene the new value will be accurately  displayed. I feel the SceneTree should be updated immediately to reflect this change, I tried going trough the code to make this happen but the way it's handled is kinda convoluted and couldn't make it work.

I've been able to update the editor tree view after operations like that by using
node.emit_signal("script_changed")
But I also wish there was a more sensible way to update the tree view.

I agree something like that is really needed.

Is this even desired functionality? I don't see what's the use of making the folded status controllable in scripts. We already don't want to store this in files. https://github.com/godotengine/godot-proposals/issues/283 IMO editor-only features should be decoupled from the project as much as possible.

Still valid in 3.2.4 beta3
Either we should make the method work immediately or unexpose it.

This still seems to be a problem in 3.5.1, though using this workaround works indeed:
node.emit_signal("script_changed")


hi 一起讨论一下输出loss逐渐变成nan值情况的改进策略Let's discuss the improvement strategy for the situation where output loss gradually changes to nan value together

大家好！这是我使用自己采集音频数据训练的结果，刚开始的loss值并不是nan，最后，当训练到120个epoch时，loss值变成nan值
Hello everyone! This is the result of training using audio data that I collected myself. Initially, the loss value was not NaN, but eventually, when training reached 120 epochs, the loss value became NaN.
epoch=122

epoch=123

epoch=149

这是tensorboard的显示结果
This is the display result from TensorBoard.

希望大家给我一下赶紧的建议
I hope everyone can give me some urgent advice.

see https://github.com/yl4579/StarGANv2-VC/issues/60


Alfresco Community deployment with ansible pg_hba.conf.j2 local_addr error

Hello everyone,
I am discovering Ansible, I need your expertise for this error message:
TASK [../roles/postgres : Configure postgresql client auth] *********************************************************************************************************************************************************************************
task path: /opt/ansiblealfresco/alfresco-ansible-deployment-2.0.0/roles/postgres/tasks/main.yml:41
<localhost> ESTABLISH LOCAL CONNECTION FOR USER: root
<localhost> EXEC /bin/sh -c 'echo ~root && sleep 0'
<localhost> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /root/.ansible/tmp `"&& mkdir "` echo /root/.ansible/tmp/ansible-tmp-1657639107.27-13718-160893885570647 `" && echo ansible-tmp-1657639107.27-13718-160893885570647="` echo /root/.ansible/tmp/ansible-tmp-1657639107.27-13718-160893885570647 `" ) && sleep 0'
<localhost> EXEC /bin/sh -c 'rm -f -r /root/.ansible/tmp/ansible-tmp-1657639107.27-13718-160893885570647/ > /dev/null 2>&1 && sleep 0'
fatal: [localhost]: FAILED! => {
    "changed": false,
    "msg": "AnsibleUndefinedVariable: 'unicode object' has no attribute 'local_addr'"
}

PLAY RECAP **********************************************************************************************************************************************************************************************************************************
localhost                  : ok=17   changed=0    unreachable=0    failed=1    skipped=9    rescued=0    ignored=0

I am playing this command:
# ansible-playbook playbooks/acs.yml -i inventory_local.yml -e<EMAIL_ADDRESS>-vvv

I found out the 'local_addr' is in the pg_hba.conf.j2 but i have no clue how to resolve it.
Need a little help please :D
Regards, Alexandre

Hello,
local_addr should get automatically populated from here, gathering ansible_default_ipv4.address fact from the repo host defined in the inventory (localhost in your case).
From where are you running the playbook? Operating system / platform

The only thing that's needed on your target host, for ansible to be able to automatically populate the ansible_default_ipv4.address should be a default route. Do you have one?

Hello,
local_addr should get automatically populated from here, gathering ansible_default_ipv4.address fact from the repo host defined in the inventory (localhost in your case).
From where are you running the playbook? Operating system / platform

Hello Gionn,
I am running it from CentOS7 fully updated.
It's a full local single host installation.

The only thing that's needed on your target host, for ansible to be able to automatically populate the ansible_default_ipv4.address should be a default route. Do you have one?

Hello AlxGomz
I'm pretty sure I got one. Let me tomorrow to check this and keep you on touch.

The only thing that's needed on your target host, for ansible to be able to automatically populate the ansible_default_ipv4.address should be a default route. Do you have one?

Hi AlxGomz
# ip route default via xx.xx.xx.5 dev eth0 proto static metric 100 xx.xx.xx.0/24 dev eth0 proto kernel scope link src xx.xx.xx.121 metric 100
Default route is ok.
Regards, Alexandre

can you check the version of Ansible you're using? This unicode object's property error makes me think ansible is not dealing repo_hosts list of objects and I'm wondering wether that could because of an older ansible version.
Ideally you should provide info asked in the issue template to avoid back and forth comms.
Thank you.

Here it is:
# ansible --version ansible 2.9.27   config file = /etc/ansible/ansible.cfg   configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']   ansible python module location = /usr/lib/python2.7/site-packages/ansible   executable location = /usr/bin/ansible   python version = 2.7.5 (default, Jun 28 2022, 15:30:04) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]
You think I should update it?
Thank you

Yes,
Although we never faced that specific issue, we know of others which happen when using ansible version before 2.12.
For that reason we enforced  2.12+ as a requirement (and also because 2.12 is the currently supported version, 2.9 support has ended)
See this doc for a way to easily match the dependencies
I'm almost sure that's the cause of the issue you're facing so I'll close this issue for now but feel free to reopen it or a new one in case the problem remains.

I do that today and give a feedback!
Thanks!


Update rust toolchain version for Kani 0.24

Biweekly update for the rust toolchain version. For Kani 0.24, we will target the new year version: nightly-2023-03-09.

Please make sure you re-enable the rust compiler log that is being disabled in https://github.com/model-checking/kani/pull/2149

@tautschnig
I tried to update toolchain to nightly-2023-03-09. I resolved all build error in https://github.com/model-checking/kani/pull/2293. However, there are still some compilation bugs. Here is the simplest way to reproduce the bug.

In the main brach, modify the toolchain to nightly-2023-02-05---the earliest toolchain with which I can reproduce the bug. And build Kani.
Run kani tests/kani/Arbitrary [arbitrary_structs.rs](http://arbitrary_structs.rs/)
Error message:

thread 'rustc' panicked at 'not implemented', kani-compiler/src/codegen_cprover_gotoc/codegen/rvalue.rs:318:50
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Kani unexpectedly panicked during compilation.
Please file an issue here: https://github.com/model-checking/kani/issues/new?labels=bug&template=bug_report.md

[Kani] current codegen item: codegen_function: std::ptr::from_raw_parts_mut::<[std::mem::MaybeUninit<PercentArbitrary>]>
_RINvNtNtCs7cJSzKcgVKk_4core3ptr8metadata18from_raw_parts_mutSINtNtNtB6_3mem12maybe_uninit11MaybeUninitNtCsaStLaCc7KW0_17arbitrary_structs16PercentArbitraryEEB1E_
[Kani] current codegen location: Loc { file: "/Users/qinhh/.rustup/toolchains/nightly-2023-02-05-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/ptr/metadata.rs", function: None, start_line: 128, start_col: Some(1), end_line: 131, end_col: Some(12) }
error: /Users/qinhh/Repos/kani/qinheping/target/kani/bin/kani-compiler exited with status exit status: 101

I asked Celina about this bug, and here is what she found

it looks like the compiler changed how they deal with deaggregation https://github.com/rust-lang/rust/pull/107267
so we will need to implement the rvalue aggregation for structs / unions

For the record, this commit has the changes to the cranelift backend to handle the changes in https://github.com/rust-lang/rust/pull/107267:
https://github.com/bjorn3/rustc_codegen_cranelift/commit/8494882773392b461e9609e4f4a60818b26e964c
It may give us a hint of the changes needed on the Kani side.

If I understand https://doc.rust-lang.org/beta/nightly-rustc/rustc_middle/mir/enum.AggregateKind.html#variant.Adt correctly, we need to generate struct or union expressions here while asserting that VariantIdx always be zero. GOTO has these, so generating shouldn't be very hard once it is clear where to obtain the type information and all the operands.

Unfortunately we were not able to do the update on time. We have now switched it to a tentative nightly update.


capi: avoid hard-coding vagrant insecure key

We should not embed vagrant insecure key in the PR.
Instead we simply download the keypair from the official vagrant github repo, to use them for ignition config for Flatcar.
Ignition template file ignition-builder.json will include a pre-defined string BUILDERSSHAUTHKEY, which will be then replaced with the ssh public key given by Packer.

Updated the PR, and it is ready for review.
We simply download the ssh keypair from the official vagrant github repo, to use them for ignition config for Flatcar.
Ignition template file ignition-builder.json will include a pre-defined string BUILDERSSHAUTHKEY, which will be then replaced with the ssh public key given by Packer.
I had also tried using auto-generated ssh keys for Qemu. However I could not, as the Qemu Builder in Packer does not populate a variable like {{ .SSHPublicKey }} in templates. Such variables are supported only in Virtualbox or normal cloud providers.
So for Qemu that's the only approach I came up with.

Merged to https://github.com/kubernetes-sigs/image-builder/pull/248


SwiftRemoteMirror: Fix crash emitting capture descriptors involving i…

When emitting capture descriptors for functions with a smaller number of parameters
than SIL parameters, the compiler can crash indexing into the heap layout's element
types, because the capture index underflows to UINT_MAX.
rdar://problem/26404583

@swift-ci Please test

@slavapestov Can you review please? This is blocking turning the flags on by default.

Looks like some unrelated test noise.


Optional[Type] with default value None is not nullable

Hi,
According to https://docs.pydantic.dev/latest/migration/#required-optional-and-nullable-fields
we should be able to specify the class:
class MyModel(SparkBase):

    someProperty: Optional[str] = None
...

But, if we do so, the property is not nullable because it has the default value (https://github.com/godatadriven/pydantic-spark/blob/d61c660decf5745a3fc69ec386b945ddf72e5e11/src/pydantic_spark/base.py#L143).
Note from the pydantic docs:
A field annotated as typing.Optional[T] will be required, allowing for a value of None.
It does not mean that the field has a default value of None. (This is a breaking change from V1.)

Currently, we can only use someProperty: Optional[str] and we have to explicitly set None to the property in the object that is being validated.

As a workaround we use someProperty: Optional[str] = Field(default_factory=lambda: None). This repo isn't being maintained as well as, for example, https://github.com/mitchelllisle/sparkdantic, so I'd take a look there as well.


Is it possible to use MIDI.Player without a soundfont?

Hi, I'm wondering if it is possible to use the MIDI.Player without loading a SoundFont?
Just need the note information for each note played in a MIDI file, via a callback in:
MIDI.Player.addListener(...)

Tried something like:
MIDI.loadPlugin(function() {

  player = MIDI.Player;
  player.loadFile( song[songid], player.start );

  player.addListener( midiNotePlayedCallback );

  MIDI.loader.stop();
});

but get back a Cross origin error (from a request for a SoundFont file that I don't need).
P.s. Asked a similar question here:  http://stackoverflow.com/questions/27192728/receive-note-events-from-a-midi-file-with-javascript

I was coming to ask the same question. Do you find any way for that @bthj ?
Thanks

Nope, I haven't yet found a way to do that.

Not unless you're on the Chrome Canary and have WebMIDI flag enabled.


jquery-3.1.1 : Object doesn't support property or method 'indexOf'

I got below error. I think its caused by $(window).load(function() { ... });
Unhandled exception at line 4, column 19058 in http://localhost:19211/Scripts/jquery-3.1.1.min.js
0x800a01b6 - JavaScript runtime error: Object doesn't support property or method 'indexOf'

worked after changing   $(window).load(function() { ... }); to $(window).on('load', function() { ... });

jquery 3 is not a part of this repository. If you want to make a pull request to add support for jquery 3 (and backward compatibility for 2.x) then please do so!


Is there a roadmap to support ionic 2?

ionic 2 has been a great change and development is more efficient.

Yes. Planning to make this to support ionic v2.

wait for it!


Can't add second interface to the pod with multus

I am trying to add multiple interfaces to a POD using multus but with no luck, I have followed the instruction in the Quickstart Guide:

use daemonset to install multus with flannel.
use macvlan-conf in the example directory to set the NetworkAttachmentDefinition as below:

apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
  name: macvlan-conf
spec:
  config: '{
      "cniVersion": "0.3.0",
      "type": "macvlan",
      "master": "ens192",
      "mode": "bridge",
      "ipam": {
        "type": "host-local",
        "subnet": "<IP_ADDRESS>/24",
        "rangeStart": "<IP_ADDRESS>.200",
        "rangeEnd": "<IP_ADDRESS>.216",
        "routes": [
          { "dst": "<IP_ADDRESS>/0" }
        ],
        "gateway": "<IP_ADDRESS>"
      }
    }'

deploy sample-pod to use macvlan as seconf interface with flannel:

apiVersion: v1
kind: Pod
metadata:
  name: samplepod
  annotations:
    k8s.v1.cni.cncf.io/networks: macvlan-conf
spec:
  containers:
  - name: samplepod
    command: ["/bin/bash", "-c", "sleep<PHONE_NUMBER>000"]
    image: dougbtv/centos-network

the output of "kubectl exec -it samplepod -- ip a":

root@master:~/multus-cni/examples# kubectl exec -it samplepod -- ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet <IP_ADDRESS>/8 scope host lo
       valid_lft forever preferred_lft forever
3: eth0@if38: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue state UP
    link/ether 0a:58:0a:f4:01:19 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet <IP_ADDRESS>/24 scope global eth0
       valid_lft forever preferred_lft forever

ip a output:

root@master:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet <IP_ADDRESS>/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:0c:29:11:ec:32 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global ens160
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe11:ec32/64 scope link
       valid_lft forever preferred_lft forever
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:0c:29:11:ec:3c brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global ens192
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe11:ec3c/64 scope link
       valid_lft forever preferred_lft forever
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
    link/ether 02:42:af:4c:35:8e brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/16 brd <IP_ADDRESS> scope global docker0
       valid_lft forever preferred_lft forever
24: vethc798d74f@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue state UP group default
    link/ether fa:b1:d4:f3:cf:1d brd ff:ff:ff:ff:ff:ff link-netnsid 1
    inet6 fe80::f8b1:d4ff:fef3:cf1d/64 scope link
       valid_lft forever preferred_lft forever
1242: veth4907c78e@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master cni0 state UP group default
    link/ether fe:32:46:e9:60:80 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet6 fe80::fc32:46ff:fee9:6080/64 scope link
       valid_lft forever preferred_lft forever
495: flannel.1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue state UNKNOWN group default
    link/ether 36:5c:54:7c:8f:e8 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/32 scope global flannel.1
       valid_lft forever preferred_lft forever
    inet6 fe80::345c:54ff:fe7c:8fe8/64 scope link
       valid_lft forever preferred_lft forever
496: cni0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue state UP group default qlen 1000
    link/ether 0a:58:0a:f4:00:01 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/24 scope global cni0
       valid_lft forever preferred_lft forever
    inet6 fe80::60e1:3bff:fe1e:3cf1/64 scope link
       valid_lft forever preferred_lft forever

I think the configuration files in  /etc/cni/net.d are another way to use multus, please correct me if I am wrong ? and below is the multus configurtion file:

root@master:/etc/cni/net.d# ls
10-flannel.conflist  10-multus-with-flannel.conf  70-multus.conf  multus.d
root@master:/etc/cni/net.d# vi 70-multus.conf
{
  "name": "multus-cni-network",
  "type": "multus",
  "delegates": [
    {
      "type": "flannel",
      "name": "flannel.1",
      "delegate": {
        "isDefaultGateway": true,
        "hairpinMode": true
      }
    }
  ],
  "kubeconfig": "/etc/cni/net.d/multus.d/multus.kubeconfig"

please advise if there are other configuration to add or modify to set multiple interfaces.

Hi, I followed all the steps, but the result is that now "get pods" is telling me:  that the connection to :6443 was refused - did you specify the right host or port?
It looks like k8s is still looking for 10-wave.conflist, and it has even recreated the file that i moved into a new directory called "old-configs", just to live only the 70-multus.conf inside net.d. How can i reset the configuration related to other plugins? I think that without a reset like @hshtel said there is no way to make it works, Thanks!


L3vpn extension

This version supports peer_labels field on all NetworkService objects and adds account_id and bgp_key fields to all Label containers. This way a slice can be specified like so:
        n1 = t.add_node(name='n1', site='MASS')
        n1.add_component(name='nic1', model_type=ComponentModelType.SharedNIC_ConnectX_6)
        n2 = t.add_node(name='n2', site='RENC')
        n2.add_component(name='nic1', model_type=ComponentModelType.SharedNIC_ConnectX_6)

        t.add_network_service(name='ns1', nstype=ServiceType.L3VPN,
                              interfaces=[n1.interface_list[0], n2.interface_list[0]],
                              labels=Labels(asn='654342'),
                              peer_labels=Labels(account_id='secretaccount', asn='123456'))

and when making network advertisements you can do this:
        fac3 = self.topo.add_facility(name='RENCI-Cloud', node_id='RENCI-Cloud-id', site='RENC',
                                      nstype=f.ServiceType.L3VPN,
                                      nslabels=f.Labels( asn='123456', ipv4='<IP_ADDRESS>'),
                                      nspeer_labels=f.Labels(asn='65442', bgp_key='secretkey', ipv4='<IP_ADDRESS>'),
                                      capacities=f.Capacities(mtu=1500))
        fac3_port_link = self.topo.add_link(name='RENCI-DC-link3', node_id='RENCI-DC-link3-id',
                                            ltype=f.LinkType.L2Path,
                                            interfaces=[fac3.interface_list[0],
                                                        facility_port_facing_port])
        self.assertEqual(fac3.network_services['RENCI-Cloud-ns'].peer_labels.bgp_key, 'secretkey')

Note that above the capacities property goes on the interface connected to L3VPN service, while labels and nspeer_labels go as labels and peer_labels properties of the network service.
This is in PyPi as fim-1.4.0rc0 (i'm switching to release candidates as we are close)

@zlion Capacities has an mtu field which is I think what you need (?). It simply lets you specify the desired  MTU length whatever it may be.
For the second error I could be missing something, the intent is not to load a blob of JSON but to break it up into Label fields. So you can for instance
local = f.Labels(ipv4_subnet="<IP_ADDRESS>/24")
peer = f.Labels(ipv4_subnet="<IP_ADDRESS>/24", asn="1", bgp_key="")
t.add_network_service(name='ns1', nstype=ServiceType.L3VPN,
                              interfaces=[n1.interface_list[0], n2.interface_list[0]],
                              labels=local,
                              peer_labels=peer)

I don't fully understand the significance of interface1 vs interface2 - I suspect we need a discussion.

The OESS defines as follows, https://globalnoc.github.io/OESS/api/vrf
connection
        name
        ...
        local_asn
        endpoint
            node
            interface
            jumbo
            ...
            peers
        endpoint
            node
            interface
            jumbo
            ...
            peers

The networkservicesliver implementation looks like
networkSliver
        name
        ...
        peer_labels
        interfaceinfo
           interfaceSliver
              name
              labels
                  asn
                  ...
              capacities
                  jumbo
                  ..
           interfaceSliver
              name
              labels
                  asn
                  ...
              capacities
                  jumbo
                  ...

I can manage to map most fields of OESS to networksliver,  but has problems with the peers. The peer_labels should contain peers from all endpoints and each  peers can be found for given endpoint.  Besides, interfaceSlivers are saved in interfaceinfo in dict which is not guaranteed to be ordered (depending on python version).
Here is the value I pass to peer_labs.
peer_labs = {
                'interface1':
                {
                    "bfd": 0,
                    "ip_version": "ipv4",
                    "peer_ip": "<IP_ADDRESS>/24",
                    "peer_asn": "1",
                    "local_ip": "<IP_ADDRESS>/24",
                    "md5_key": ""
                },
                'interface2':
                {
                    "bfd": 0,
                    "ip_version": "ipv4",
                    "peer_ip": "<IP_ADDRESS>/24",
                    "peer_asn": "2",
                    "local_ip": "<IP_ADDRESS>/24",
                    "md5_key": ""
                }
            }

As for the jumbo, I understand that in Ethernet, Jumbo frames have payloads more than 1500 bytes but not sure other types of links. Also  it is not clear what the MTU size to use if the end-to-end connection across different types of links . So AWS just provides a binary flag to indicate jumbo will be used no matter underlying MTU frame size. Please correct if I am wrong.

So technically jumbo frame is anything larger than 1500 octets. So we don't use a binary flag, we just have an MTU setting in capacities. You will need in  your code to have an if statement - if MTU>1500, set jumbo=True.
Regarding your other question - sounds like those are interfaces in AL2S. I may be able to provide you with some example code on how to create slivers directly. I realize now the code I showed is too high a level for what you need. I'll see if I can add an example to AMHandlers test harness - this is what I have done in the past.

Great. I will change my code to use MTU capability instead.
I appreciate that you can provide example codes for our use cases.   Please take it into consideration that there might be multiple peers objects in one sliver because we support multiple providers. Each peers object is associated with one specific interface as show in the layout above.
Thanks


zathura: 0.3.9 -> 0.4.0

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Success on x86_64-linux (full log)
Attempted: zathura
Partial log (click to expand)
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/4kamraa37v2bdz68yy82813cia7spbmy-zathura-ps-0.2.6
shrinking /nix/store/4kamraa37v2bdz68yy82813cia7spbmy-zathura-ps-0.2.6/lib/zathura/libps.so
strip is /nix/store/j75dgadrff2d1fyc4fczmcgqkid2imdx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/4kamraa37v2bdz68yy82813cia7spbmy-zathura-ps-0.2.6/lib
patching script interpreter paths in /nix/store/4kamraa37v2bdz68yy82813cia7spbmy-zathura-ps-0.2.6
checking for references to /build in /nix/store/4kamraa37v2bdz68yy82813cia7spbmy-zathura-ps-0.2.6...
building '/nix/store/nj9wn0s4dakifz5a0rfgwx5zl4ibmk32-zathura-with-plugins-0.4.0.drv'...
/nix/store/zjab3h5q3sqlwkbhzpwff3impsl7bnbb-zathura-with-plugins-0.4.0

Success on aarch64-linux (full log)
Attempted: zathura
Partial log (click to expand)
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/rpqdjbw4002nzapd3rd0xawkp4bgq7ha-zathura-djvu-0.2.8
shrinking /nix/store/rpqdjbw4002nzapd3rd0xawkp4bgq7ha-zathura-djvu-0.2.8/lib/zathura/libdjvu.so
strip is /nix/store/jk6j4lh9v5mvjdbdc35sj0zffhhf6s56-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/rpqdjbw4002nzapd3rd0xawkp4bgq7ha-zathura-djvu-0.2.8/lib
patching script interpreter paths in /nix/store/rpqdjbw4002nzapd3rd0xawkp4bgq7ha-zathura-djvu-0.2.8
checking for references to /build in /nix/store/rpqdjbw4002nzapd3rd0xawkp4bgq7ha-zathura-djvu-0.2.8...
building '/nix/store/wzvh5rqk2nm86kq2dm15pi4awgdwjrgv-zathura-with-plugins-0.4.0.drv'...
/nix/store/ai5kp6bbv03dhjcxv9n1g9vfj0pcr5fb-zathura-with-plugins-0.4.0

https://pwmt.org/projects/zathura/changelog/0.4.0


AudioPlayerDelegate.audioPlayerDidStartPlaying entryId loss

Hello, I found a issue when using the framework.
When I want to use audioPlayerDidStartPlaying(player:with:) in AudioPlayerDelegate to get the currently playing audio, I can't get the correct entry.
Current playing entry is nextEntry,

I don't know whether it was deliberately done. If so, how can I operate it better？
Look forward to your reply.

Yes this is a bug

fixed in latest master


Use manual tilt offset from input parameters

and pass pixel size to tomo align service.
This means the tilt offset will be taken into account by the tomo_align service, and the pixel size will be scaled and stored in the database as pixel_spacing.
This should fix https://github.com/DiamondLightSource/python-murfey/issues/129

I don't think it needs the changes to instance_environment.py. The additional parameters will end up in data_collection_parameters inside the MurfeyInstanceEnvironment which is where you get them from in _add_tilt

I got a bit confused with the instance_environment stuff - my thinking was that check_for_alignment() is called in context.py each time the motion_corrected_movies is set in instance_environment.py, so I need to give it all of the parameters that check_for_alignment needs

Yes, you're right it does need the parameters for the callback. As we discussed these should be available from values["data_collection_parameters"]. This stuff is a mess and I need to clean it up somehow


Prop nonce did not match. Server: "****" Client: "" Error Component Stack

I'm currently using<EMAIL_ADDRESS>with the latest<EMAIL_ADDRESS>it is working but it's throwing a warning error in the browser: Prop 'nonce' did not match. Server: "0f59db05b92ee6ad129dc9ac011cccb1" Client: "" Error Component Stack
This is my code where you can see that the nonce is passed:
          <OkendoProvider
            nonce={nonce}
            okendoProviderData={data.okendoProviderData}
          >
            <Analytics.Provider
              cart={data.cart}
              shop={data.shop}
              consent={data.consent}
            >
              <PageLayout {...data}>{children}</PageLayout>
            </Analytics.Provider>
          </OkendoProvider>

Hi Octave, thank you for contacting us. I'm updating our demo store at the moment, and using the exact same versions as you, I cannot reproduce the issue you're having.
Could you please reach out to our support (on okendo.io, use the chat widget at the bottom-right of the page). They'll ask you more details about your project, and if you could give us access to your repo, or at least part of the source code, they'll be able to assist rapidly.

Hi @Zwyx, thank you, will do! Just for your info I used the latest hydrogen skeleton and so I adapted the root.tsx file to make it as close to yours. Here are the different block with the Okendo integration:
import {OkendoProvider, getOkendoProviderData} from '@okendo/shopify-hydrogen';

export async function loader(args: LoaderFunctionArgs) {
  // Start fetching non-critical data without blocking time to first byte
  const deferredData = loadDeferredData(args);

  // Await the critical data required to render initial state of the page
  const criticalData = await loadCriticalData(args);

  const {storefront, env} = args.context;

  return defer({
    ...deferredData,
    ...criticalData,
    publicStoreDomain: env.PUBLIC_STORE_DOMAIN,
    shop: getShopAnalytics({
      storefront,
      publicStorefrontId: env.PUBLIC_STOREFRONT_ID,
    }),
    consent: {
      checkoutDomain: env.PUBLIC_CHECKOUT_DOMAIN,
      storefrontAccessToken: env.PUBLIC_STOREFRONT_API_TOKEN,
      withPrivacyBanner: false,
    },
    okendoProviderData: getOkendoProviderData({
      context: args.context,
      subscriberId: '**********',
    }),
  });
}

export function Layout({children}: {children?: React.ReactNode}) {
  const nonce = useNonce();
  const data = useRouteLoaderData<RootLoader>('root');

  return (
    <html lang="en">
      <head>
        <meta charSet="utf-8" />
        <meta name="viewport" content="width=device-width,initial-scale=1" />
        <meta
          name="oke:subscriber_id"
          content="**************"
        />
        <Meta />
        <Links />
      </head>
      <body>
        {data ? (
          <OkendoProvider
            nonce={nonce}
            okendoProviderData={data.okendoProviderData}
          >
            <Analytics.Provider
              cart={data.cart}
              shop={data.shop}
              consent={data.consent}
            >
              <PageLayout {...data}>{children}</PageLayout>
            </Analytics.Provider>
          </OkendoProvider>
        ) : (
          children
        )}
        <ScrollRestoration nonce={nonce} />
        <Scripts nonce={nonce} />
      </body>
    </html>
  );
}

export default function App() {
  return <Outlet />;
}

Hi Octave, it seems that we are doing exactly the same thing, but I can't see the nonce error you're having. Feel free to have a look at the PR I made to update Hydrogen to 2024.10 using Shopify's latest template (the second commit especially, where I set up Okendo's widgets).

@Zwyx Nice! Sorry about that, I realized it was caused by a Chrome extension...


Fix typings publishing in @cobalt-ui/core

File<EMAIL_ADDRESS>is ignored by build => these types are missing in dist folder.
So when using @cobalt-ui/core as a NPM library half of types are not resolved.

Awesome! I’m in favor of this change. I’d just recommend reverting the type change that I think was correct. And once tests pass I’m happy to merge & ship this

🤦 I forgot about that failing Figma test, sorry! Also need to fix that as well 😅.
Thanks for all your work on this one!

Published in v0.6.3! 🎉


WIP: Short UIDs for the book

I've started to create include short UIDs for questions as it is in our mapping document...
@rwwh is the mapping 1:1? If yes, then there is probably a mistake in the document (question 2.26 is assigned to two book questions: kjp + zmu).

Good catch, zmu should be associated to 2.45, not 2.26. Corrected that now in the spreadsheet.
Apparently I did wrongly copy the number from the "parent" question.

OK, added...
Now we should incorporate it with @perglr properly in transformation tools and wizard...

@rwwh any progress with missing questions in our gdocs spreadsheet or is it finished for now?

I am afraid I am flooded for the moment. To get started on the mapping between the book and the questions again I'd probably need a while to get into it again. We're now on Unique identifiers?

OK, let's merge this... Future linking will be done in new PR(s) later on.


Fixed release instructions on closing milestone

No review needed.

coverage: 36.575%. remained the same
when pulling b56dcb38ff8f633a5275a3ce20a83109e878951d on andy/fix-close-milestone
into 6096b2cacc56b61e6eafd41de69ec6b7491888e9 on master.


Fix code style error in docs

Codecov Report

Merging #1412 into master will increase coverage by 2.06%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1412      +/-   ##
==========================================
+ Coverage   86.35%   88.41%   +2.06%
==========================================
  Files          24        5      -19
  Lines         784      164     -620
==========================================
- Hits          677      145     -532
+ Misses        107       19      -88

Impacted Files
Coverage Δ

Sources/Moya/URLRequest+Encoding.swift

Sources/Moya/Moya+Alamofire.swift

Sources/Moya/MultiTarget.swift

Sources/Moya/MultipartFormData.swift

Sources/Moya/MoyaProvider+Internal.swift

Sources/Moya/Cancellable.swift

Sources/Moya/Endpoint.swift

Sources/Moya/MoyaProvider+Defaults.swift

Sources/Moya/Plugins/NetworkLoggerPlugin.swift

Sources/Moya/Response.swift

... and 9 more

Continue to review full report at Codecov.

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

This is related to #1357. We need to update the Chinese docs to reflect the changes for the urlRequest() method of Endpoint.


[raudio] Audio distortion in Chromium

Issue description
Chromium seems to do a poor job at updating it's audio stream. Under heavier load than the raudio examples it becomes extremely choppy and distorted. I was able to resolve this issue by increasing the miniaudio config.periodSizeInMilliseconds to about 30 (instead of the default 10). There is an issue on this https://github.com/dr-soft/miniaudio/issues/150
Note that "heavier load" does not imply low framerate, just that the issue does not arise from the stock examples.
In addition, Brave Browser seems to be very affected by this to the point where even the examples on raylib.com cause the issue. The config.periodSizeInMilliseconds fix works for this as well. I have opened an issue with the Brave browser since their issue is divergent from Chromium's behavior (which plays the examples fine): https://github.com/brave/brave-browser/issues/10619
Environment

Linux, Chromium

@RandomErrorMessage Thanks for reporting, I added a review to your PR.


Add: Ability to Automatically Add Gmail MX Records

Description
I had this branch sitting for a long while - finally putting it up for review
This allows someone to create Gmail MX records along with their new domain. Asked for by a customer a few months back.
See here for Google documentation
Type of Change

Non breaking change ('update', 'change')

To Test

Open the add domain drawer
Toggle the "create Gmail MX records" checkbox

Notes
This also adds loading text next to the button, so the user has a better idea of what is loading at that particular time

@Jskobos addressed your first 3 points - for the rest of the stuff, I agree that it can be iterated upon and we can probably add it somewhere to the detail view as well

@johnwcallahan ready again

closing because I won't have the time to fix these issues


Parsing error with polymorphic functions/generic type params

This used to work fine, but after a fresh install I've started getting this error.  I haven't been able to narrow down exactly which module upgraded recently. This is potentially related to #266. I'm also unsure if the problem is with babel-eslint.
I'm using Babel, flow, and babel-eslint. Flow doesn't complain with the below, but eslint does:
// @flow
function setIfNotDefault<T>(obj: Object, key: string, val: T, def: T) {
  if (val !== def) {
    obj[key] = val;
  }
}

  0:0  error  Parsing error: Object.defineProperty called on non-object

I've started running into this too and it definitely seems related to parsing of generic parameters. I don't think it's limited to functions either. It looks like it's also triggered by <…> in type declarations, at least in some cases.

If it really just started to happen recently, then it might be a regression in babylon. In the latest release of babylon there was one change related to flow.

I think it must be some pretty recent update somewhere that is causing it because I only started noticing it in the last couple days after doing fresh installs. This is with packages that are only a few weeks old and didn't trigger the error originally.
I tried to install older versions of eslint and related packages but couldn't track down where the error first started showing up.

The recent change in babylon was https://github.com/babel/babylon/pull/25 which might of broke something

Just like @hzoo said, I confirmed that locking the babylon dependency at 6.8.0 with npm-shrinkwrap solves the problem.

Confirmed for me<EMAIL_ADDRESS>works<EMAIL_ADDRESS>breaks.

Ok https://github.com/babel/babel-eslint/pull/322 - Need to change some logic in babel-eslint to account for the change in babylon and push a patch

Is there a simple workaround for this?

current workaround is pinning to 6.8.0 like mentioned above

Thanks a lot @hzoo ! Been struggling with this for a while. 6.8.0 sorted me out :)

Hi, I'm getting this issue at the moment. I don't really know what I'm doing with npm. Can some tell me how to pin babylon? I tried just npm install<EMAIL_ADDRESS>but this didn't work.

Just "npm rm babylon" and then "npm install<EMAIL_ADDRESS>--save[-dev] --save-exact". Did the trick for me.

Ok thanks to @danez this should be fixed in babel 6.10.2 (babel-eslint uses babel-types, etc), so will need to npm install again

The tests still fail. I think because the new TypeParameter is not visited/marked as seen.


Feature Request: Return ID on unique failure

Currently you get:
{
"code": 400,
"message": "Failed to create record.",
"data": {
"name": {
"code": "validation_not_unique",
"message": "Value must be unique."
}
}
}
If it could actually be
{
"code": 400,
"message": "Failed to create record.",
"data": {
"name": {
"code": "validation_not_unique",
"message": "Value must be unique."
}
"id": "3xk3937cx333l14"
}
}
Then we don't have to make an additional call to get that ID (which I would guess is frequently the next call when someone gets a unique error)

No sorry there are no plans for this out of the box as it will require a new different error response and it will complicate the validations for very little benefit.


How do you generate the ground truth mask of TSR and TSSR?

Thanks for your work!
Is the mask of TSR generated by using Igt - I in ?
And could you release your training code?

Is the mask of TSR generated by using Igt - I in ?

The answer to your question is "Yes"
TSR mask can be generated by subtracting $I_{gt}$ from $I$.
As mentioned in the paper, we used 25 as the threshold to suppress the noise
$Mask_{TSR} = (I - I_{gt}) > 25 $

And could you release your training code?

Due to the company's regulations, we have no plans to release the training code yet.
Please understand that we can't release it, and we apologize for the inconvenience.

Is the mask of TSR generated by using Igt - I in ?

The answer to your question is "Yes" TSR mask can be generated by subtracting Igt from Iin. As mentioned in the paper, we used 25 as the threshold to suppress the noise
MaskTSR=(Iin−Igt)>25

And could you release your training code?

Due to the company's regulations, we have no plans to release the training code yet. Please understand that we can't release it, and we apologize for the inconvenience.

Why my result is like this


Use of numpy npz files

The use of NumPy .npz files bakes in the endanness of the source operating system into the data.
It appears that most .npz files have been created from a little-endian o/s.
The impact is that any unit tests using stock cubes build from .npz data on a host system that is big-endian i.e. IBM AIX, then the unittests will fail.
We need to detect the host endianness and cast .npz data appropriately at run-time to ensure that we avoid this issue.

The impact is that any unit tests using stock cubes build from .npz data on a host system that is big-endian i.e. IBM AIX, then the unittests will fail.

What fails exactly? That shouldn't be the case, as NumPy will usually cast things to the correct endianness. Though if you start using things like SciPy's fft, then some things don't implement non-host endianness and you will need to convert.

Closing due to inactivity.


Download Button

Hi, is it possible to add a download button to the player and can it support notification player actions?

Hi, sorry that is not on the roadmap. You should extend the component and implement your own download logic. I don't have time to work on this now.


TEE workspace deleted every build when computer name exceeds 34 characters

The current stable TFBuild agent on Windows by default does a 'tf get' when doing a TFVC build. This can be configured using the $(Build.Clean) variable to delete the sources directory on each build if needed.
However, on Mac OS X, this agent runs 'tf workspace -delete' each time a TFVC build is started and I can't seem to get it to not do this, despite what I set the $(Build.Clean) variable to.
Is this by design or is it just a bug? It really slows down builds when the build agent is download all of the source code each time a build is started

Check the repo tab of your build definition. Is the Clean option set to true?

Clean is set to False on the Repository tab.

@andrewtechhelp Can you send ersciple the worker log (at microsoft.com)?

...from the _diag folder.

@ericsciple Logs have been sent :)

@AlexRukhlin any thoughts on this one? It looks like the computer name persisted in the workspace info is truncated when the computer name exceeds 34 characters?

The "Computer" field in the "Workspaces" SQL database table on the TFS server is defined as NVARCHAR(31). So, the answer is - this is by design. Sorry for inconvenience.

Is that because windows computer name sizes?  In other words, should VC react and change in recognition of xplat clients?

If I remember well the Windows computer name limit is 15 characters. On Linux it's 64.
You can change the host name from command line.
Mac: sudo scutil --set HostName new-name
Linux: sudo sysctl kernel.hostname=new-name
Also I've found on interned the following additional restrictions that might affect the limit used by TFS:

Hostnames used for server TLS/SSL certificates should not exceed 64 bytes as a fully qualified domain name
Hostnames used for e-mail addresses in OpenSSL-generated certificates should not exceed 31 bytes (for traditional 8 character username limit) as a fully qualified domain name (usernames longer than 8 reduce this limit)

Tracking in the above referenced issue.


issue on iphone chrome

hi nolimits4web, i have issue that swiper (horizonal/vertical) on iphone chrome browser not working very well when orientation changed. only on iphone chrome browser

Would be good to see live example of the issue

Closing as there is no further discussion


rpc-websockets client fails to resolve localhost

Just spent several hours debugging rpc-websockets and eventually uWebsockets because my rpc-websocket client couldn't connect to localhost.
Eventually found the issue, if localhost is resolved as ::1 (localhost of ipv6) The underlying library uWebsockets will produce the following error:
{ message: 'uWs client connection error',
  stack: 'uWs client connection error' }

For now I suggest we link this issue to the bug existing issue in uWebsocket so other people can be aware of this issue.

https://github.com/uNetworking/uWebSockets/issues/342

@Rawa: Should work in 4.0.0, since I've switched back to ws.