Panic in FUSE

This program
fn main() {
    std::fs::write("/root/test.txt", "important content").unwrap();
}

has an out-of-bounds panic since https://github.com/hermit-os/kernel/pull/1047:
[0][PANIC] panicked at src/fs/fuse.rs:528:50:
range end index 10 out of range for slice of length 0

Bisecting gives 93fc6cbb2ab2432b3d895a28fd1507226823734c as reason:
93fc6cbb2ab2432b3d895a28fd1507226823734c is the first bad commit
commit 93fc6cbb2ab2432b3d895a28fd1507226823734c
Author: Çağatay Yiğit Şahin<EMAIL_ADDRESS>Date:   Wed Feb 14 15:54:59 2024 +0100

    fuse: remove dependency on unstable ptr_metadata

 src/fs/fuse.rs | 28 +++++++++++-----------------
 src/lib.rs     |  1 -
 2 files changed, 11 insertions(+), 18 deletions(-)

CC: @cagatay-y
PS: I should really fix https://github.com/hermit-os/kernel/issues/620.

I am confused about how this works. When I extract the expression with slice_from_raw_parts_mut into a variable, rust-analyzer reports the type as *mut [u8]. len is not the length of the entire struct, rather the payload, so the slice we create here does not cover the whole struct. I validated this by checking the length of the pointed slice.
The reason I originally used 0 as the slice length was because that was how it was in the previous version of the code, but I think reverting 93fc6cb and using ptr_metadata here may be worth the unstable feature. I included a commit with the reversion in my PR (#1113) for #1111, but I can remove it if you prefer.


"Sealing" phase is stuck on

Command
serve
Is this a regression?

[X] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
13.2.0
Description
Generating browser applicaiton bundles (phase: sealing) - never ends.
Minimal Reproduction
I've upgraded my solution from Angular 13.2.0 to 15.0.1...
I've successfully build all the projects both in Production and Development configurations. But I cannot get through "sealing" phase. I don't understand whose exactly this problem is and how to debug what is it stuck on?

Exception or Error
No response
Your Environment
Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1502.0
@angular-devkit/build-angular   15.2.0
@angular-devkit/core            15.0.5
@angular-devkit/schematics      15.0.5
@schematics/angular             15.2.0
ng-packagr                      15.2.2
rxjs                            7.8.0
typescript                      4.8.4

Anything else relevant?
No response

You could generate a CPU profile.
See: https://github.com/angular/angular-cli/blob/main/docs/DEVELOPER.md#cpu-profiling

@alan-agius4 I've tried step 1. I don't get this error:

UPDATE: after about 1.5 hour (!) of just stucking, it finally gave me the error:

I was unable to see the beginning of it in the console...
Question 1) it's not normal that it takes SO long to give me the error; so we still need to investigate the stuck issue running it again, right?
Question 2) I had no problems with referencing the CSS like that. Strange, but now it complains about "~" references and I need to use a long reference like "../../.. ....."

Moving on. It does not look like something is happening at all during "sealing":

Small note: the library where this wrong css reference happened is a 3rd party lib based on Angular **13.2.**0. We cannot rebuild it. Probably the "stuck problem has something to do with this?

I've tried to debug "ng serve" and here's what is happening while "stuck" on "sealing" phase. I pressed "Pause" in debugger and there are numerous parsing errors inside this method which seem to silently "swallowed":

@alexandis, would please provide one of these error message in a gist?

@alexandis, would please provide one of these error message in a gist?
Sure. Gist. Here are also configurations which might come handy.

Thanks @alexandis, I did manage to get to the bottom of why the build is getting stuck and I have a PR to fix it. For the time being as a workaround you can run build/serve with the --verbose command line argument.
Now, to the error itself, I don't know what's the root problem as I don't have context of how this stylesheet is being used in the application. How is this CSS being used?

Bot closed this bug very soon... :)
OK - I've updated the library and built was successful. However, the error is the same. The question is: what am I doing wrong? Almost everything is default settings.

Now, to the error itself, I don't know what's the root problem as I don't have context of how this stylesheet is being used in the application. How is this CSS being used? Are you importing the CSS file in your JS? In that case, you are problem encountered one of the breaking changes in version 14.

I found out the initial reason of the error (there were css-importing scripts in "Dist" folder - next to CSS files, I removed them). But I still cannot figure out what is happenind next prevening the successful compilation. Could you please give me a hint? I emphasize, that everything worked properly in Angular 13...

That is expected and is due to MDC changes in material version 15. Angular material 13 mixins are not compatible with version 15.
See: https://material.angular.io/guide/mdc-migration

Thank you very much for the assitance!


add ninjago game

PRETTY PLEAS add lego ninjago game

I have added the game(s) you requested in the most recent release: https://github.com/hobby-grade/Nintendo-Switch-Discord-Status/releases/tag/v1.1.4
Thank you for checking out the project, reach out if you have any more suggestions!


Initial donation.

Signed-off-by: Reza Rahman<EMAIL_ADDRESS>

Please merge Ed's PR instead?


Node shape customization

Is your feature request related to a problem? Please describe.
Possibility to customize the shape of the node, when the node is a children of children
Describe the solution you'd like
Possibility to have a parameter, or a custom plugin, that allows to have children of level > 1 whit the same graphical representation of the first level children (bordered with label inside) and the path of connections joined to the border, instead of under the node label
Additional context
My request is to have the possibility to have the node labelled "test" with the same shape of the node "test gruppo"

The "test gruppo" is a first level child, while "test" is a second level child

Checking the code I think that the differences are based on the value of the parameter isFirst on the function mei.generateSubBranch and sub, but I have not understood if and what I can change in order to change the behavior.

To achieve the same graphical representation for second-level children as first-level ones, you can try using CSS selectors to target second-level nodes and style them accordingly. The mei.generateSubBranch function primarily affects branch styles, but it doesn’t handle node styles directly.

Ok, thank you. I'll try styling them with CSS


[monitor] Support Rinkeby and increase time interval

Add a flag for Rinkeby
Increase time interval

Codecov Report

Merging #66 (8f7995a) into develop (0d1a530) will increase coverage by 30.60%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##           develop      #66       +/-   ##
============================================
+ Coverage    48.06%   78.67%   +30.60%
============================================
  Files           98       38       -60
  Lines         3922     1294     -2628
  Branches       753      195      -558
============================================
- Hits          1885     1018      -867
+ Misses        2037      276     -1761

Flag
Coverage Δ

boba-contracts
?

contracts
78.67% <ø> (ø)

core-utils
?

data-transport-layer
?

message-relayer
?

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

Impacted Files
Coverage Δ

...ices/l1-ingestion/handlers/state-batch-appended.ts

packages/core-utils/src/optimism/rollup-types.ts

...contracts/contracts/L1CrossDomainMessengerFast.sol

packages/core-utils/src/common/hex-strings.ts

...contracts/contracts/standards/L2StandardERC721.sol

...ages/boba/contracts/contracts/BobaFixedSavings.sol

...boba/contracts/contracts/libraries/SafeMathDAO.sol

packages/core-utils/src/common/index.ts

...layer/src/services/l1-ingestion/handlers/errors.ts

...contracts/contracts/standards/L1StandardERC721.sol

... and 50 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 0d1a530...8f7995a. Read the comment docs.


Connect items to game state

This is...quite unwieldy. I'm hoping there's a lot better way of iterating through everything to list the items, and bind to their representation in the API data (even if it means restructuring the API data).
I was originally trying to do something like:

With the following as data:
  data () {
    return {
      items: [
        [
          { defaultIcon: '/static/item/bow.png', stateFn: 'bowState' },
          { defaultIcon: '/static/item/hookshot.png', stateFn: 'hookshotState' },
          { defaultIcon: '/static/item/hammer.png', stateFn: 'hammerState' },
          { defaultIcon: '/static/item/firerod.png', stateFn: 'firerodState' },
          { defaultIcon: '/static/item/glove0.png', stateFn: 'gloveState' },
          { defaultIcon: '/static/item/moonpearl.png', stateFn: 'moonpearlState' }
        ],
        [
          { defaultIcon: '/static/item/somaria.png', stateFn: 'somariaState' },
          { defaultIcon: '/static/item/lantern.png', stateFn: 'lanternState' },
          { defaultIcon: '/static/item/flute.png', stateFn: 'fluteState' },
          { defaultIcon: '/static/item/book.png', stateFn: 'bookState' },
          { defaultIcon: '/static/item/boots.png', stateFn: 'bootsState' },
          { defaultIcon: '/static/item/flippers.png', stateFn: 'flippersState' },
          { defaultIcon: '/static/item/mirror.png', stateFn: 'mirrorState' }
        ]
      ]
    }
  },

But I couldn't get the dynamic class bound to stateFn to actually be the result function itself, and not the name of the function.
@rjfranco, I'm hoping you've got some ideas/suggestions here.

You can actually use the name, and just invoke it on the parent, so assuming those are alll on the component you could add like...
let fun = this[functionName]
fun()

I think I might need a more concrete example to understand what you're describing.


Implement strategies for ReadGate/SolutionReadout

Objective of issue: propose implementation of different reading strategies for ReadGate/SolutionReadout
lava-optimization version:

[x] 0.2.2 (current version)

I'm submitting a ...

[x] feature request

Current behavior:

ReadGate/SolutionReadout of OptimizationSolver store and communicate only the best found solution, along with the associated cost and time step, for performance reasons.

Expected behavior:

For profiling and research purposes, it would be useful to have the possibility to specify an alternative reading strategy, e.g. communicating the new solution each time the cost improves.

We had the expected behavior in a previous release and it was removed in the last one in favor of the current behavior.  We should bring back the previous version which I would have left as default and offered the most performant version as optional. The reason being that the cost in performance is relatively low and the user experience is much better if the user can track the evolution of the search.
Also, are we sure we are providing the best solution if target cost was not found? In a debug session one user was getting an all -1 vector when target_cost was not found. Maybe we need a test for this.
But How are you envisioning the strategy implementation? We can probably not support a fully generic strategy easily, because it requires changing the CostIntegrator (microcode) and ReadGate (C) processes. Thus, we would only allow the user to switch between streaming every better cost or only the best. Right?

We had the expected behavior in a previous release and it was removed in the last one in favor of the current behavior. We should bring back the previous version which I would have left as default and offered the most performant version as optional. The reason being that the cost in performance is relatively low and the user experience is much better if the user can track the evolution of the search.

I agree for CPU backend, but on Loihi we observed 100x speedup. We can redesign this now using StateProbes. I would leave the most performant version for the ReadGate/SolutionReadout and delegate the finer tracking to a probe_cost flag as we discussed. What do you think? @GaboFGuerra


Kino 0.14.0 is not supported?

Was trying this out today. Turns out that kino 0.14.0 is not supported.
Let me know if the project needs a hand to do this. What could be the possible first steps?

Done.


Web server data update in real time

I use Heroku to deploy a bit slower, so it is deployed on my own server, but the data cannot be automatically updated. I can only get the latest data by restarting covid19.py. If I want to update automatically, how should it be implemented in Python? -- Python beginner

You can try using callback, so everytime a specific task is call, the data
will be read again from source.
On Wed, 6 May 2020 at 11:53, Cee<EMAIL_ADDRESS>wrote:

I use Heroku to deploy a bit slower, so it is deployed on my own server,
but the data cannot be automatically updated. I can only get the latest
data by restarting covid19.py. If I want to update automatically, how
should it be implemented in Python?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Unicorndy/covid19_dashboard/issues/1, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANAUUUPCXZYTBUQOEEJQLE3RQDNMRANCNFSM4M2DGF4A
.


[ISSUE #775]service governance service scope spilt service name

The branch of 0.2.0 is master-0.2.0. If your PR is to solve the problem of 0.2.0, please submit the PR to it.
Please do not create a Pull Request without creating an issue first.
What is the purpose of the change
#775
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist.
[ ] Run `mvn clean compile --batch-mode -DskipTests=false -Dcheckstyle.skip=false -Drat.skip=false -Dmaven.javadoc.skip=true to make sure basic checks pass.

Codecov Report

Merging #777 (b8348a7) into develop (0c79c35) will decrease coverage by 0.19%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             develop     #777      +/-   ##
=============================================
- Coverage      21.21%   21.01%   -0.20%
+ Complexity       347      341       -6
=============================================
  Files             97       97
  Lines           3861     3859       -2
  Branches         606      604       -2
=============================================
- Hits             819      811       -8
- Misses          2964     2969       +5
- Partials          78       79       +1

Flag
Coverage Δ

unit
21.01% <ø> (-0.20%)
:arrow_down:

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

Impacted Files
Coverage Δ

...apache/dubbo/admin/service/RegistryServerSync.java
83.58% <0.00%> (-10.45%)
:arrow_down:

...ava/org/apache/dubbo/admin/model/domain/Route.java
48.38% <0.00%> (-0.06%)
:arrow_down:

Continue to review full report at Codecov.

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


Vietnamese locale

Hello,
Thanks for a wonderful app. I would like to contribute a new language: Vietnamese. Is that okay for you?

Excellent - I have opened up Vietnamese language on the crowdin platform for you. Here is the link: https://crowdin.com/project/pilotmoon-apps


Uncaught Error: ENOENT: no such file or directory, stat '/Users/gredens/Google Drive/Richard/Site...

[Enter steps to reproduce below:]

...
...

Atom Version: 1.7.1
System: Mac OS X 10.11.4
Thrown From: Remote-FTP package, v0.7.20
Stack Trace
Uncaught Error: ENOENT: no such file or directory, stat '/Users/gredens/Google Drive/Richard/Sites/...{removed because of intellectual property}.../submodules/...{removed because of intellectual property}.../fonts'
At fs.js:897

Error: ENOENT: no such file or directory, stat '/Users/gredens/Google Drive/Richard/Sites/...{removed because of intellectual property}.../submodules/...{removed because of intellectual property}.../fonts'
    at Error (native)
    at fs.statSync (fs.js:897:18)
    at Object.fs.statSync (ATOM_SHELL_ASAR.js:264:16)
    at /Users/gredens/.atom/packages/Remote-FTP/lib/client.js:441:21
    at Array.forEach (native)
    at /Users/gredens/.atom/packages/Remote-FTP/lib/client.js:436:9
    at FSReqWrap.oncomplete (fs.js:82:15)

Commands
     -0:00.9.0 remote-ftp:sync-with-local (span.name.icon.icon-file-directory)

Config
{
  "core": {}
}

Installed Packages
# User
Remote-FTP, v0.7.20
atom-autocomplete-php, v0.18.7
autoclose-html, v0.23.0
hyperclick, v0.0.35
hyperclick-php, v0.2.1
language-cfml, v0.12.0
language-twig, v1.6.3
linter, v1.11.4
linter-cflint, v0.9.2
linter-eslint, v7.2.0
linter-jscs, v3.5.0
linter-php, v1.2.0
linter-twig, v0.1.1
php-debug, v0.2.2
php-hyperclick, v0.3.1
php-twig, v4.0.0
pigments, v0.26.0
react, v0.15.0
terminal-plus, v0.14.5

# Dev
No dev packages

This issue should be resolved with the latest version of the package ( v0.10.6 )
Details can be found in the pull-request here: #697


[mac] Broken flutter tool since yesterday

Flutter not working anymore.
I have started to have issues yesterday, when my app could not run flutter pub get.
Today I tried a clean install to solve. Remove all cached folder, flutter folder, restarted and downloaded it again. Then I try to run flutter precache or any other flutter command.
Waited several minutes but get stuck at Building flutter tool...
I can't run any flutter commands since flutter didn't build up and I don't know anything else to do.
I am cloning flutter tool from stable branch.
I don't know what else to try.
Tried flutter clean, but didn't solved anything.

Problem persists in two different network location

Seems to be similar to: https://github.com/dart-lang/pub/issues/1989

Worked now. I have connected to a US VPN in order to use this, not ideal...


Error when trying to use verify_eth_signature

Using the <IP_ADDRESS> version of Cairo-lang I attempt to use the verify_eth_signature located inside starkware.cairo.common.cairo_secp.signature I get the following error:
 /com.docker.devenvironments.code/.tox/default/lib/python3.7/site-packages/starkware/cairo/common/cairo_secp/signature.cairo:209:44: Unknown identifier 'bitwise_ptr'.
E           func verify_eth_signature{range_check_ptr, bitwise_ptr : BitwiseBuiltin*, keccak_ptr : felt*}(
E                                                      ^***************************^

I think the function calling verify_eth_signature needs to have the bitwise_ptr: BitwiseBuiltin* hint too in order to "give" it to verify_eth_signature. Can you share the code somehwer maybe? :D

Thank you, you were absolutely right. But now Im having trouble with another implicit argument, this is how Im calling it:
func is_valid_eth_signature{
            syscall_ptr : felt*,
            pedersen_ptr : HashBuiltin*,
            range_check_ptr,
            bitwise_ptr: BitwiseBuiltin*,
            keccak_ptr : felt*
        }(
            hash: BigInt3,
            signature_len: felt,
            signature: BigInt3*,
            nonce: felt
        ) -> ():
        let (_public_key) = get_public_key()
        let (_current_nonce) = get_nonce()

        # validate nonce
        assert _current_nonce = nonce

        # This interface expects a signature pointer and length to make
        # no assumption about signature validation schemes.
        # But this implementation does, and it expects a (sig_r, sig_s) pair.
        let sig_r = signature[0]
        let sig_s = signature[1]

        verify_eth_signature(
            msg_hash=hash,
            r=sig_r,
            s=sig_s,
            v=0,
            eth_address=_public_key)

        return ()
end

But that returns:
starkware.cairo.lang.compiler.preprocessor.preprocessor_error.PreprocessorError: /com.docker.devenvironments.code/src/contracts/EthAccount.cairo:93:13: Unexpected implicit argument 'keccak_ptr' in an external function.
E                           keccak_ptr : felt*
E                           ^********^

And if I don't include keccak_ptr it throws:
E           starkware.cairo.lang.compiler.preprocessor.preprocessor_error.PreprocessorError: /com.docker.devenvironments.code/src/contracts/EthAccount.cairo:112:9: While trying to retrieve the implicit argument 'keccak_ptr' in:
E                   verify_eth_signature(
E                   ^*******************^
E           /com.docker.devenvironments.code/.tox/default/lib/python3.7/site-packages/starkware/cairo/common/cairo_secp/signature.cairo:209:75: Unknown identifier 'keccak_ptr'.
E           func verify_eth_signature{range_check_ptr, bitwise_ptr : BitwiseBuiltin*, keccak_ptr : felt*}(
E
                                                                        ^****************^

Do you know how can I solve this?

Thank you, you were absolutely right. But now Im having trouble with another implicit argument, this is how Im calling it:
func is_valid_eth_signature{
            syscall_ptr : felt*,
            pedersen_ptr : HashBuiltin*,
            range_check_ptr,
            bitwise_ptr: BitwiseBuiltin*,
            keccak_ptr : felt*
        }(
            hash: BigInt3,
            signature_len: felt,
            signature: BigInt3*,
            nonce: felt
        ) -> ():
        let (_public_key) = get_public_key()
        let (_current_nonce) = get_nonce()

        # validate nonce
        assert _current_nonce = nonce

        # This interface expects a signature pointer and length to make
        # no assumption about signature validation schemes.
        # But this implementation does, and it expects a (sig_r, sig_s) pair.
        let sig_r = signature[0]
        let sig_s = signature[1]

        verify_eth_signature(
            msg_hash=hash,
            r=sig_r,
            s=sig_s,
            v=0,
            eth_address=_public_key)

        return ()
end

But that returns:
starkware.cairo.lang.compiler.preprocessor.preprocessor_error.PreprocessorError: /com.docker.devenvironments.code/src/contracts/EthAccount.cairo:93:13: Unexpected implicit argument 'keccak_ptr' in an external function.
E                           keccak_ptr : felt*
E                           ^********^

And if I don't include keccak_ptr it throws:
E           starkware.cairo.lang.compiler.preprocessor.preprocessor_error.PreprocessorError: /com.docker.devenvironments.code/src/contracts/EthAccount.cairo:112:9: While trying to retrieve the implicit argument 'keccak_ptr' in:
E                   verify_eth_signature(
E                   ^*******************^
E           /com.docker.devenvironments.code/.tox/default/lib/python3.7/site-packages/starkware/cairo/common/cairo_secp/signature.cairo:209:75: Unknown identifier 'keccak_ptr'.
E           func verify_eth_signature{range_check_ptr, bitwise_ptr : BitwiseBuiltin*, keccak_ptr : felt*}(
E
                                                                        ^****************^

Do you know how can I solve this?

Hey :)
Of course! You will need to do something like that:
let (local keccak_ptr : felt*) = alloc()
let keccak_ptr_start = keccak_ptr

verity_eth_signature{keccak_ptr=keccak_ptr}(...)

Basically declaring the pointer before calling the function, and then calling the function and passing in the hint! :)

Thanks a lot, I should have remember that. I'll close the issue, thanks again for the help.


Elytra Trims breaks Betterend's Armored Elytra

Mod Name
Elytra Trims, BetterEnd
Mod Homepage
https://modrinth.com/mod/elytra-trims, https://modrinth.com/mod/betterend
Minecraft version
1.20.1
Describe the bug
When betterend paired with elytra trims, texture broken
Steps to reproduce

Install sinytra requirement, betterend and its requirement and elytra trims
loading a word, wearing Armored Elytra
Texture broken
...

Logs
https://mclo.gs/yO6L1GQ
Additional context
Quick comparison:
fabric loader

forge with sinytra

noted: While using fabric loader to test them im using fabric elytra trims, sinytra im using forge elytra trims, fabric elytra trims cannot let the game lauch https://mclo.gs/T1km8JZ

To add to this Clutter Butterfly Elytra Smithing Template is invisible.
 With elytra trims
 Without elytra trims


messagesListStyle only apply if inflated from xml

If MessagesList class is created programmatically without AttributeSet, the default constructor with only context does not create messagesListStyle. And looks like style attribute can only be applied in the xml, there is no way to set the style attribute programmatically.

The way to work around this is either  clone this library and modify it yourself, and then add it into your project
or
use custom holders that extends from BaseMessageViewHolder, and applyStyle yourself.
Since if messagesListStyle is null, the default applyStyle will not get called
A bit dumb because you have to create a holder that essentially applyStyle the way the library default is doing.
Another thing is, if messagesListStyle  is null, the default DefaultDateHeaderViewHolder will throw null pointer exception because its default onBind() will try to get the dateFormat from the messagesListStyle , which we don't have
so, we will have to create a class that extends the DefaultDateHeaderViewHolder as well
Great library, but inconsiderate, making messagesListStyle not public, and only way to create is rely on xml. There are needs to create view programmatically.


Remove version: Jackett.Jackett version 0.21.1861

404 - release deleted
Microsoft Reviewers: Open in CodeFlow

URL: https://github.com/Jackett/Jackett/releases/download/v0.21.1861/Jackett.Installer.Windows.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 918)


Give an option for global state

Global state is evil!
We should give a per instance option for users of Flexus.

I recommend to avoid any API that does global state mutations. Provide a default instance, and all project specific settings create new ones

@mbj

Source: https://twitter.com/m_b_j/status/926476875186278400

Good news. I can’t check soon, but it looks like it uses global state, which is the current problem that we have w/ inflecto.

@jodosha

Source: https://twitter.com/jodosha/status/926535090188021760

Global state is evil!

Note I meant: mutable global state.
Flexus as the toplevel module is by definition also global state, but its not mutable (unless reflection and metaprogramming is done, I deliberately exclude here).

Yes, much more detailed definition. 👍

Thanks for bringing the discussion here, which it's an appropriate place.

The problem with the global state for a lib like Flexus/Inflecto are the exceptions to the pluralization rules. Once they are set, Flexus.pluralize will use the singleton instance that has that exceptions to pluralize a string.
If a program during its execution modifies that rules, .pluralize isn't deterministic anymore:
require "flexus"

Flexus.pluralize("human")
  # => "humen"

# At this point I expect that for the entire program lifetime, Flexus will return the same result over and over

# But I can mutate the global registry of exception rules:
Flexus.inflections { |i| i.plural("human", "humans") }

# And now it returns a different result:
Flexus.pluralize("human")
  # => "humans"

# I fixed the pluralization, but it can be mutated again with potentially wrong results:
Flexus.inflections { |i| i.plural("human", "foo") }

Flexus.pluralize("human")
  # => "foo"

IMO this kind of behaviors can be source of bugs.

Given I wasn't aware of Flexus, I started to work on a Inflecto fork for the dry-rb ecosystem. The idea is to use the same inflection library both for Hanami and ROM. You can find it at: https://github.com/jodosha/dry-inflector
It exposes the same interface (aka features), but at the instance level. So exceptions are set at the instance level, and they aren't mutable.
require "dry/inflector"

inflector = Dry::Inflector.new do |i|
  i.plural "virus", "viruses"
end

inflector.pluralize("virus")
  # => "viruses"

# Since now on, there is no way to change the exceptions. The program is deterministic.

I suspect that the singleton pattern used by Inflecto/Flexus can be source of slowness. I measured dry-inflector and inflecto, for basic pluralization dry-inflector is 5x faster: https://gist.github.com/jodosha/42f1ac5d2c8b71aa8dfb3a42f31bb1b8

My question is: would you consider to move the API from class level to instance level? I think this is important to educate the community about the problems of the global state.
Thanks for listening. 💚
/cc @solnic

@jodosha This is what I'm advocating for initially. The reason it did not exist in inflecto was that I that time was only packaging the code without any changes.
Back in the time I even think that @solnic and I discussed alternatives (instance based) and he had gone for it because of that discussions.

I completely agree about having a "per instance" approach. The current one, as stated above, is surely a source of bugs.
I have done something similar at HighLine gem (one of the related PRs is at https://github.com/JEG2/highline/pull/214/files).
We have changed the api recommending creating an instance and using it.
For back compatibility we just create one instance to be used by the HighLine class methods.

If the projects have the same goals and have similar roadmaps to achieve them, I would even consider merging them. ("Merge" can just abandon one in favor of the other).
As I said to @Ptico I'm not able to be the only in charge of a project like this, but I really want to be a core contributor. So, as @Ptico took the front position, I have readily helped him on it and my intentions are to keep helping.
So, I would just let @Ptico decide the path we should take.
One question more, is Dry::Inflector ready? Would it be ready for a pre release?

I'm thinking about to move all the logic to the module or even module builder (see: #7) and then include it to the class. And yes, I think it should be a class with possible fallback like Inflecto = Flexus.new(Flexus::Configuration::DEFAULT).

After a discussion with dry-rb folks, we decided that dry was the perfect home for this project, because we're talking about a focused lib.
The final goal are: 1. make a general purpose lib for the Ruby ecosystem 2. adopt it in Hanami and ROM.

That dry-inflector has the same features of inflecto, plus a few rules from hanami-utils (Hanami::Utils::Inflector). I haven't ported the class loading features, because IMO they don't belong to an inflector lib.

So yes, it's ready for a pre-release, but.. Given both dry-inflector and flexus are both a tentative to resume inflecto, it makes no sense to duplicate the effort. We can work together.
Regarding the home and the name of the merged project, you (@Ptico, @abinoam, and @solnic decide). It can be flexus or dry-inflector.
You can take the code that I wrote and do whatever you want. Or not. It's up to you.
From the Hanami perspective, we need an immutable, instance based inflection lib. That's it.
Again, in the spirit of OSS, I'd really love if we're able to work together on one lib. 💚

FWIW, I think if we put it under dry, it should get more contributions, as the org is already relatively well known

@solnic i'm happy with this (dry-inflector) as long as @abinoam agree

The only thing that i wish to provide smooth migration for existing inflecto users. Let's discuss how we can achieve this.

The only thing that i wish to provide smooth migration for existing inflecto users. Let's discuss how we can achieve this.

I'd assume the majority of inflecto users right now do not modify the preset. Hence if you'd create a compatibility wrapper that raises on the inflecto mutating APIs you likely get the best of both worlds.

I have (pre) agreed with anything you decide @Ptico!
I think we should release a stable flexus version and point people to dry-inflector.
And @solnic and @jodosha, just tell us how you want us to help on dry-inflector.

@abinoam Great, let's move on! It would be much better for community and gem itself.

for basic pluralization dry-inflector is 5x faster: https://gist.github.com/jodosha/42f1ac5d2c8b71aa8dfb3a42f31bb1b8
@jodosha

I was not able to repeat the results @jodosha.
See my fork of your gist.
https://gist.github.com/abinoam/24e0308e11bcbd5873f7aa7a3251155b
It uses the master branch of dry-inflector, inflecto and the no_global branch of flexus (the one at #20).
Basically dry-inflector is 1,3x slower than flexus/inflecto at this bench for pluralizations. BUT... I think this doesn't reflect the truth.
The bench would only be valid if we compared the same set of pluralization/singularization rules.
And I think you have added more default rules to dry-inflector
When comparing something that doesn't depend on the number of rules like underscorization all options fall into the same performance.


Add support for the lineStroke function in an EdgeIndicator

Heya, I have another feature request =]
Please add a support for the lineStroke function in an EdgeIndicator so that it works the same way as a stroke prop. I need the line's color to be different depending on whether the price on the candle chart went up or down, same way as the edge's tag changes its color in this example https://rrag.github.io/react-stockcharts/documentation.html#/edge_coordinate

I think you can fix that by adding
lineStroke: functor(lineStroke)(item),

in
https://github.com/rrag/react-stockcharts/blob/master/src/lib/coordinates/EdgeIndicator.js#L148
and changing the EdgeIndicator.propTypes definition of lineStroke
Let me know how it goes. Please send a PR if that works out


Added Notifications and Light/Dark mode options in settings

Description
I've enhanced the settings page's capabilities by adding relevant options such as Light mode/Dark mode switch and Notifications button to enable or disable the app's local push notifications. I've also initialized local push notifications in the app.

Fixes #357
Have you read the Contributing Guidelines on Pull Requests?

[x] Yes
[x] No

Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings
[x] I have added tests/screenshots(if any) that prove my fix is effective or that my feature works.

@avinashkranjan please see the PR. Thanks!


[Storage] Blob versioning.

See https://review.docs.microsoft.com/en-us/azure/storage/blobs/versioning-overview?branch=pr-en-us-104390&tabs=powershell#blob-versioning-and-soft-delete .

I think we should also have overloads on Container(Async)Client to get a child BlobClient with a version attached.

@rickle-msft Since the version and snapshot ids are mutually exclusive I'd need to add getBlobClient(name, version) but that is going to collide with existing getBlobClient(name, snapshot) as both version and snapshot are Strings. So that would mean getBlobClientByVersion or getBlobClientWithVersion, what do you think should be proper naming for that?
On the other hand having overload for snapshot sounds right as it's functionality you get out of the box. Versioning can be turned on and off, so I'm not sure if we should be exposing such "overload".
What do you think?

Since we already have versionId on the builders the same way we have snapshot, I think it makes sense to round out the support for it with a method on the containerClient. Otherwise we're sort of half-heartedly supporting it. Customers that don't have versioning enabled just won't know what it means to pass a version and will ignore the method I imagine. @gapra-msft what do you think?
The naming is a bit unfortunate. Probably getBlobClientWithVersion is the best option I can think of.

Since we already have versionId on the builders the same way we have snapshot, I think it makes sense to round out the support for it with a method on the containerClient. Otherwise we're sort of half-heartedly supporting it. Customers that don't have versioning enabled just won't know what it means to pass a version and will ignore the method I imagine. @gapra-msft what do you think?
The naming is a bit unfortunate. Probably getBlobClientWithVersion is the best option I can think of.

I think we definitely should add this method on the container client just because some customers do use this pattern of creating a service client and getting their container/blob clients by calling these getBlob/getContainer methods. Rick's idea for a name sounds ok. For now we can just pick something that sounds the best to us since eventually this will go through Architecture board for approval anyway.

Does Blob Version apply to the same APIs as Blob Snapshot?

Does Blob Version apply to the same APIs as Blob Snapshot?

@seanmcc-msft Mostly yes. Additionally majority of "write" APIs return version-id when feature is enabled. So it works kind of like auto-snapshot.
See https://review.docs.microsoft.com/en-us/azure/storage/blobs/versioning-overview?branch=pr-en-us-104390&tabs=powershell


FP16 inference

Separating the preprocessor and neural network at export time so that the NN can be exported at reduced precision. Closes #276 . Inferring the inference kernel_length from the saved preprocessor weights at export time, so this argument can be removed.
Right now I'm topping out single GPU throughput at around 8,000 inf/s at a batch size of 128 on a V100. I've done some benchmarking with TensorRT's python APIs, and the max I can get it to is 10,000 inf/s, which improves on the full precision throughput of ~5,800 inf/s. So once you factor in the other models on the GPU eating up resources, this sounds about right.
The issue is that with older versions of the code (but with the same size model), I was able to top out single GPU throughput at around 25,000 inf/s. The possible disparities I can think of are

TensorRT performance actually degrading over time
BatchNorm -> GroupNorm slowing things down. This might seem unlikely, but Conv -> BatchNorm -> ReLU is a sufficiently common chain of operations that many frameworks (TensorRT included) have fused operators that can execute these really quickly in a single kernel call.

I'm going to spend some time today benchmarking these different possibilities to understand what's going on here and if there's a way we can recover some of this performance, so marking as a draft until this is worked out.

[ ] Sort out cause of throughput drop between older versions of the code and now
[ ] Finish updating scaling tests to account for different numbers of instances of NN and preprocessor

It seems that the main source of this disparity was moving from BatchNorm to GroupNorm, which is poorly optimized in TensorRT. I was able to get around this by implementing a custom version of GroupNorm that does some reshape magic. This implementation costs us about a 15% haircut in training throughput (3000 samples/s to 2500 samples/s), but in exchange we get over 2x improvement in inference throughput (see attached graph). Considering inference is where our bottleneck lies (and will only get worse), I'm prepared to accept this tradeoff.
The alternative is that we train with Torch's built-in GroupNorm, then swap it our for our custom one at export time. This will allow us to get the best of all throughput worlds (though obviously still not as fast as BatchNorm), but at the cost of introducing some noise due to precision. Initial tests show that taking the weights from a trained torch GroupNorm layer and moving them to this custom layer results in ~99.9% of output values agreeing to within a relative tolerance of 1e-6, but it will need to be checked whether this accumulated error across the whole network impacts performance. Because this will be at least slightly intensive, my suggestion will be to merge this implementation (once tests are completed) then leave that for a future PR.


Minor whitespace fixes

Great project, and thanks for this example!
I was working with it and noticed there were only three spaces for indentation on lines 6 and 10, no big deal but figured I'd fix it for consistency.

Just started reviewing :) :octocat: Sent from GH.

Thank you, pull request merged! :octocat: Sent from GH.

Thanks for the nice words and for the contribution, @JedWatson!


v17.3.1 update composer dependencies

[Current coverage][cc-pull] is 100%

Merging [#433][cc-pull] into [master][cc-base-branch] will not change coverage

@@           master   #433   diff @@
====================================
  Files          24     24
  Lines         358    358
  Methods        81     81
  Messages        0      0
  Branches        0      0
====================================
  Hits          358    358
  Misses          0      0
  Partials        0      0

Powered by Codecov. Last updated by [72d6055...3f03354][cc-compare]
[cc-base-branch]: https://codecov.io/gh/eugene-matvejev/battleship-game-api/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/eugene-matvejev/battleship-game-api/compare/72d60552e0bb493ddfa63d96f2f4f67fce94bbe5...3f033542555bb3423032c74d08059941b641add0
[cc-pull]: https://codecov.io/gh/eugene-matvejev/battleship-game-api/pull/433?src=pr


[Feature Request] Expand the 'Challenge Visibility' function

Hey, it would be great if we could have the Challenge Visibility setting split up more compared to how it is.
I want to have my players show their DC's in their rolls, but not see the results of NPC's, such as making an attack hit or not.
This isn't a major request/need, but it would allow me to use the feature.
Happy to expand upon what I've written if needed.

such as making an attack hit or not.

Attack results are not controlled by the 'challenge visibility' setting, they are controlled by the 'attack result visibility' setting.


Auto-insert mode on user click/focus

Hi there,
First of all, thanks for the extension, works awesome so far.
I have a small question: Is it possible to enter automatically into insert mode when a text area is focused (either via hint mode / tab / or user click)? I've seen Enable to change the mode to insert by user click. on the 1.4 version enhancements but I am not sure if that means the thing I understand (or I couldn't find where to activate it).
Thanks :+1:

Aaaah nevermind. Apparently I missed another switch: toInsertModeIfEditable
Honestly, this might be the richest add-on I've ever seen.
Thanks again, closing.


[Question] Does the ng2 ui router work with observables?

Searching for ng2 ui router information I read lots about promises.
I am using observables in my application. Can ng2 ui router handle observables?

You can use the ng2 router with observables if you use the RXWAIT policy:
let state = {
	name: "observable",
	url: "/obs",
	resolve: [
		{
			provide: 'myobservable', useFactory: (myService: MyService) => {
				return myService.observable$;
			},
			deps: [MyService],
			policy: { async: "RXWAIT" }
		},
	]
};

You  can inject myobservable into your component normally and it will resolve to the observable once the first element has been emitted.
At the moment there are however a few bugs with the implementation, there is some discussion and a workaround here: https://github.com/angular-ui/ui-router/pull/3067

Thanks, then I will wait for proper observables support :-)

@Kamshak,
Can you clarify how the observable is injected? Is it via an @Input() annotated property or via a constructor?
Here's what I've attempted:
// my.states.ts
...
  {
    name: 'mystate',
    url: '/mystate',
    component: MyComponent,
    resolve: [
      {
        provide: 'myObservable',
        useFactory: (someService: SomeService) => {
          return someService.fetch();
        },
        policy: { async: 'RXWAIT' },
        deps: [SomeService]
      }
    ]
  },
...

// my.component.ts
...
@Input() myObservable: Observable<My>;
protected my: My;

ngOnInit() {
  this.myObservable.subscribe(my => this.my = my);
}
...

Thanks in advance!

Hey, you would inject is as any other resolve via a constructor inject. So for example:
state
{
    name: 'mystate',
    url: '/mystate',
    component: MyComponent,
    resolve: [
      {
        provide: 'myObservable',
        useFactory: (someService: SomeService) => {
          return someService.fetch();
        },
        policy: { async: 'RXWAIT' },
        deps: [SomeService]
      }
    ]
  },

component
import { Injectable } from "@angular/core";
@Component {
    template: '<h1>{{ myObservable | async }}</h1>
}
class MyComponent {
     constructor(@Inject('myObservable') public myObservable) { }
}

Thanks @Kamshak!
One more question though. When I do that I'm getting the following error:
TypeError: observable$.cache is not a function

I'm not sure what's going on there. Any ideas? Thanks again!

Seems like you are using a RxJS Version with the cache operator removed. You can use<EMAIL_ADDRESS>which still has it. I believe there are plans to rework the feature, mabye @christopherthielen or @adharris can give you some more info on current the state.

Yes, we need to rework the RXWAIT policy so it doesn't use .cache().
https://github.com/ReactiveX/rxjs/pull/2012
please follow https://github.com/angular-ui/ui-router/issues/3066

while waiting for RXWAIT to be fixed you can wrap the Observable in a promise on the service:
public resolvePromise() {
    return new Promise((resolve, reject) => {
        let subscription = this.observableFunction().subscribe(
            (response) => resolve(response), // Success
            (error) => reject(error), // Error
            () => { // Cleanup
                if (subscription) { // HMR sometimes makes subscription undefined
                    subscription.unsubscribe();
                }
            });
    });
}

Currently, I'm able simply use Observable.prototype.toPromise() function:
this.observableFunction().toPromise()


unknown_types: TYPE LINE OF not recognized

abaplint 2.57.1
Issue:
./src/nw/#jcs#sql.fugr.#jcs#lsqlf01.abap[757, 9]                    - Type of "l_field" contains unknown: TYPE LINE OF, could not resolve type (unknown_types) [E]
Source:

I've improved the error message in 2.57.2, try again?

Still there.

what does the error message say now?

subtle difference
./src/nw/#jcs#sql.fugr.#jcs#lsqlf01.abap[757, 9]         - Type of "l_field" contains unknown: TYPE LINE OF, unexpected type (unknown_types) [E]

got it, fixing

try again with 2.57.3, did some changes, but not sure its fixed

Issue is resolved. Thanks


Fix CI

Why are these changes needed?
I merged #1128 after it passed all CI tests. However, the post-merge tests failed because I didn't rebase with the master branch.

Related issue number

Checks

[ ] I've made sure the tests are passing.
Testing Strategy

[ ] Unit tests
[ ] Manual tests
[ ] This PR is not tested :(

I retried the nightly test three times, but it keeps failing. The Ray master branch may have introduced some breaking changes that affect compatibility. Merge this before passing the nightly test because: (1) several contributors are blocked by this PR (2) the change in this PR is safe to merge. cc @architkulkarni


cannot send messages to connected phone but can send from phone

My phone number connected to go-whatsapp appears to me as online

but a can't send a message, it's always as not delivered

but if i send a message from connected phone the message is correct delivered to my phone, any suggestions?

Did you check the phone JID? You can do that using the Exist() method.


Non-deterministic DB errors due to missing FROM-clause entry for table (with backrefs), possibly due to JOIN order

Consider the following three models:

#[derive(Model)]
pub struct User {
    #[rorm(primary_key)]
    pub uuid: Uuid,
}

#[derive(Model)]
pub struct TestGame {
    #[rorm(id)]
    pub id: i64,

    #[rorm(default = 0)]
    pub data_id: i64,

    pub current_players: BackRef<field!(TestGameUser::F.game)>,
}

#[derive(Model)]
pub struct TestGameUser {
    #[rorm(id)]
    pub id: i64,

    #[rorm(on_delete = "Cascade", on_update = "Cascade")]
    pub game: ForeignModel<TestGame>,

    #[rorm(on_delete = "Cascade", on_update = "Cascade")]
    pub player: ForeignModel<User>,
}

When you try to query the games with a condition that uses the backref, it fails sometimes and sometimes it works. The following MWE illustrates it:
let game_id = 42;
let uuid = Uuid::new_v4();

for i in 1..100 {
    query!(db.as_ref(), (TestGame::F.data_id,))
        .condition(and!(
            TestGame::F.id.equals(game_id as i64),
            TestGame::F
                .current_players
                .player
                .uuid
                .equals(uuid.as_ref())
        ))
        .optional()
        .await?;
    debug!("It worked {i} times so far")
}

I'm working on a PostgreSQL database. Then, the following logs are produced:
[2023-03-16 19:16:43 | DEBUG | rorm_db::database] SQL: SELECT "testgame"."data_id" AS testgame__data_id FROM "testgame" JOIN "testgameuser" AS testgame__current_players ON ("testgame__current_players".game = "testgame".id) JOIN "user" AS testgame__current_players__player ON ("testgame__current_players__player".uuid = "testgame__current_players".player) WHERE (("testgame".id = $1) AND ("testgame__current_players__player".uuid = $2)) LIMIT 1;
[2023-03-16 19:16:43 | DEBUG | runciv::server::handler::games] It worked 1 times so far
[2023-03-16 19:16:43 | DEBUG | rorm_db::database] SQL: SELECT "testgame"."data_id" AS testgame__data_id FROM "testgame" JOIN "testgameuser" AS testgame__current_players ON ("testgame__current_players".game = "testgame".id) JOIN "user" AS testgame__current_players__player ON ("testgame__current_players__player".uuid = "testgame__current_players".player) WHERE (("testgame".id = $1) AND ("testgame__current_players__player".uuid = $2)) LIMIT 1;
[2023-03-16 19:16:43 | DEBUG | runciv::server::handler::games] It worked 2 times so far
[2023-03-16 19:16:43 | DEBUG | rorm_db::database] SQL: SELECT "testgame"."data_id" AS testgame__data_id FROM "testgame" JOIN "testgameuser" AS testgame__current_players ON ("testgame__current_players".game = "testgame".id) JOIN "user" AS testgame__current_players__player ON ("testgame__current_players__player".uuid = "testgame__current_players".player) WHERE (("testgame".id = $1) AND ("testgame__current_players__player".uuid = $2)) LIMIT 1;
[2023-03-16 19:16:44 | DEBUG | runciv::server::handler::games] It worked 3 times so far
[2023-03-16 19:16:44 | DEBUG | rorm_db::database] SQL: SELECT "testgame"."data_id" AS testgame__data_id FROM "testgame" JOIN "testgameuser" AS testgame__current_players ON ("testgame__current_players".game = "testgame".id) JOIN "user" AS testgame__current_players__player ON ("testgame__current_players__player".uuid = "testgame__current_players".player) WHERE (("testgame".id = $1) AND ("testgame__current_players__player".uuid = $2)) LIMIT 1;
[2023-03-16 19:16:44 | DEBUG | runciv::server::handler::games] It worked 4 times so far
[2023-03-16 19:16:44 | DEBUG | rorm_db::database] SQL: SELECT "testgame"."data_id" AS testgame__data_id FROM "testgame" JOIN "testgameuser" AS testgame__current_players ON ("testgame__current_players".game = "testgame".id) JOIN "user" AS testgame__current_players__player ON ("testgame__current_players__player".uuid = "testgame__current_players".player) WHERE (("testgame".id = $1) AND ("testgame__current_players__player".uuid = $2)) LIMIT 1;
[2023-03-16 19:16:44 | DEBUG | runciv::server::handler::games] It worked 5 times so far
[2023-03-16 19:16:44 | DEBUG | rorm_db::database] SQL: SELECT "testgame"."data_id" AS testgame__data_id FROM "testgame" JOIN "user" AS testgame__current_players__player ON ("testgame__current_players__player".uuid = "testgame__current_players".player) JOIN "testgameuser" AS testgame__current_players ON ("testgame__current_players".game = "testgame".id) WHERE (("testgame".id = $1) AND ("testgame__current_players__player".uuid = $2)) LIMIT 1;
[2023-03-16 19:16:44 | ERROR | runciv::server::handler] Database error: sqlx error: error returned from database: missing FROM-clause entry for table "testgame__current_players"
[2023-03-16 19:16:44 | DEBUG | actix_web::middleware::logger] Error in response: DatabaseError(SqlxError(Database(PgDatabaseError { severity: Error, code: "42P01", message: "missing FROM-clause entry for table \"testgame__current_players\"", detail: None, hint: None, position: Some(Original(162)), where: None, schema: None, table: None, column: None, data_type: None, constraint: None, file: Some("parse_relation.c"), line: Some(3603), routine: Some("errorMissingRTE") })))

Note that the same code produced two different queries, as seen in the logs:
SELECT "testgame"."data_id" AS testgame__data_id
FROM "testgame"
  JOIN "testgameuser" AS testgame__current_players ON ("testgame__current_players".game = "testgame".id)
  JOIN "user" AS testgame__current_players__player ON ("testgame__current_players__player".uuid = "testgame__current_players".player)
WHERE (("testgame".id = $1) AND ("testgame__current_players__player".uuid = $2)) LIMIT 1;

SELECT "testgame"."data_id" AS testgame__data_id
FROM "testgame"
  JOIN "user" AS testgame__current_players__player ON ("testgame__current_players__player".uuid = "testgame__current_players".player)
  JOIN "testgameuser" AS testgame__current_players ON ("testgame__current_players".game = "testgame".id)
WHERE (("testgame".id = $1) AND ("testgame__current_players__player".uuid = $2)) LIMIT 1;

The order of the JOIN operations is important, but it looks like the order is not deterministic.

It looks like this only affects PostgreSQL. I was not able to reproduce this with a SQLite database. I haven't verified if for MariaDB, since there were a bunch of other errors to solve first.

@CrsiX could you test, whether eacb725 already fixed the problem?
Set your dependency to { git = "https://github.com/rorm-orm/rorm.git", branch = "v0.5.x" }

Unfortunately, https://github.com/rorm-orm/rorm/commit/eacb725a2005a69089bfe9961dc707a6fd8aaacd wasn't working for me. But the current dev (rev ca4535ce82bb4209591d0b3d5543ffbedc9e175b) did work and it looks like the issue is fixed there.


Learn Page- Leadspace image is not getting loaded on mobile

Issue:- On learn page, in leadspace section image is not getting displayed on mobile devices instead grey line is displayed.
Steps to reproduce the issue

Enter the url in the browser.
Click on 'Learn' card.

Additional information
URL:- http://ibmdotcom-nextjs-staging.mybluemix.net/learn
OS:- iOS(12, 13), Android (8,9)
Browsers:- Safari, Chrome, Samsung, UC

@reesedownes this might be the way the LeadSpace is configured, can you check?
https://github.com/carbon-design-system/ibm-dotcom-library-nextjs-test

@jeffchew as far as i can tell, it seems that when the page is more narrow than the mobile breakpoint and the LeadSpace image is shown, the defaultSrc property isn't being rendered into an  property.

should the below be default instead of defaultSrc?
<LeadSpace
  type="centered"
  theme="g100"
  title="Lead space title"
  copy="Use this area for a short line of copy to support the title"
  gradient={true}
  // buttons={buttons}
  image={{
    sources: [
      {
        src: 'https://dummyimage.com/320x370/ee5396/161616',
        breakpoint: 'sm',
      },
      {
        src: 'https://dummyimage.com/672x400/ee5396/161616',
        breakpoint: 'md',
      },
    ],
    defaultSrc: 'https://dummyimage.com/1056x480/ee5396/161616',
    alt: 'Image alt text',
  }}
/>

i ask because in leadspace.js in the react package, it seems to be looking for image.default:
function imageClassname(type, image) {
  if (type === 'centered') {
    return (
      <div
        data-autoid={`${stablePrefix}--leadspace--centered--mobile__image`}
        className={`${prefix}--leadspace--centered--mobile__image`}>

    );
  } else
    return (
      <Image
        sources={image.sources}
        defaultSrc={image.default}
        alt={image.alt}
      />
    );
}

@reesedownes I think I remember bringing this up before, where it should be defaultSrc instead of default, since it should be following the Image props structure. Trying to find out if I opened an issue for this or if we landed on it being default. Can't seem to find it but I think that's the reason.

@jeffchew then i assume the fix might be as simple as just changing all the references to defaultSrc={image.defaultSrc} in the react package, but you can tell me how you'd like me to take care of it.

@jeffchew two questions on this:

i made the change in the nextjs app, but i'm assuming i should also push code for the react package change, right? should that be a separate story?

should i make a story about the documentation re: how to yarn link the ibmdotcom-react library to next js locally?

i made the change in the nextjs app, but i'm assuming i should also push code for the react package change, right? should that be a separate story?

What changes do you need to make for the react package? Depending on the context, you may not need to open a new issue for it but certainly a different PR (since it's a different codebase obviously)

should i make a story about the documentation re: how to yarn link the ibmdotcom-react library to next js locally?

Yes, that should probably be its own story and PR.

@jeffchew thanks, got it. this is the issue i created for creating the documentation:
https://app.zenhub.com/workspaces/ibmcom-library-5d449f3642eb1962336cbe52/issues/carbon-design-system/ibm-dotcom-library/1997


Fix and refactor various command completions

Fix #2046 + completion for port-forward, logs, create. Note, create had a bogus completion on app name. As create is for making a new app, completing on the names of existing apps makes no sense.
Further, refactored the completion for configurations a bit (common code).

Codecov Report
Base: 56.74% // Head: 8.46% // Decreases project coverage by -48.28% :warning:

Coverage data is based on head (2f8cb2d) compared to base (345b651).
Patch coverage: 0.00% of modified lines in pull request are covered.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #2078       +/-   ##
==========================================
- Coverage   56.74%   8.46%   -48.28%
==========================================
  Files         181      94       -87
  Lines       14621   10145     -4476
==========================================
- Hits         8297     859     -7438
- Misses       5248    9231     +3983
+ Partials     1076      55     -1021

Flag
Coverage Δ

acceptance-api
?

acceptance-cli
?

unittests
8.46% <0.00%> (+0.01%)
:arrow_up:

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

 Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Remove Google specific branding logic from ProviderPickerActivity

PR https://github.com/openid/OpenYOLO-Android/pull/94 introduces some Google specific branding into the client module as a quick fix before the Droidcon London release. This should be solved at the protocol level and ideally this provider specific branding/logic should be removed.

This repo is being archived. Closing issue.


I've been using https://overpass-turbo.eu/ but keep hitting rate limiting and query timeouts so decided to give wiktorn/Overpass-API a try.
When I returned in the morning, I restarted the container, and opened localhost:12346 - I was greeted by the "Welcome to Nginx" page.
The logs looked like this :
2018-06-22 09:28:28,329 CRIT Supervisor running as root (no user in config file)
2018-06-22 09:28:28,334 INFO supervisord started with pid 1
2018-06-22 09:28:29,339 INFO spawned: 'overpass_dispatch' with pid 9
2018-06-22 09:28:29,341 INFO spawned: 'nginx' with pid 10
2018-06-22 09:28:29,343 INFO spawned: 'fcgiwrap' with pid 11
2018-06-22 09:28:29,345 INFO spawned: 'apply_diff' with pid 12
2018-06-22 09:28:29,347 INFO spawned: 'fetch_diff' with pid 15
2018-06-22 09:28:29,350 INFO spawned: 'dispatcher_areas' with pid 18
2018-06-22 09:28:29,354 INFO spawned: 'areas_rules' with pid 19
2018-06-22 09:28:29,380 INFO exited: apply_diff (exit status 1; not expected)
2018-06-22 09:28:31,135 INFO success: overpass_dispatch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2018-06-22 09:28:31,135 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2018-06-22 09:28:31,135 INFO success: fcgiwrap entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2018-06-22 09:28:31,139 INFO spawned: 'apply_diff' with pid 47
2018-06-22 09:28:31,140 INFO success: fetch_diff entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2018-06-22 09:28:31,140 INFO success: dispatcher_areas entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2018-06-22 09:28:31,141 INFO success: areas_rules entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2018-06-22 09:28:32,427 INFO success: apply_diff entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)

I entered the container, executed the download_clone command, and allowed it to complete.
docker exec -ti overpass_world bash
/app/bin/download_clone.sh --db-dir=/db/db --source=http://dev.overpass-api.de/api_drolbr/ --meta=yes

I then stopped and started the container, but still just get the "Welcome to Nginx" home page.
I just went to http://overpass-turbo.eu (changing from https to http) - and changed the settings so it would send reqests to http://localhost:12346/api/
Tested it, and tada ! it worked !
So I suggest document how to use (although its obvious to anyone in the community ) and perhaps add my workaround for the failed initial download.

the link to download http://dev.overpass-api.de/api_drolbr/ doesn't work.
i get forbidden

@TheMoroccan09
It looks like there is now a problem with downloading a clone from Overpass. This is not specific to Docker image and should be reported in drolbr/Overpass-API


This article talks about versions and revisions as if one of the two magically avoids breaking changes and the other is risky

Neither avoids breaking changes from being made available to users, and neither is more risky than the other. All of the editorializing regarding these should be removed from this doc.
Also this doc (and the product) promotes the idea that when new code changes are deployed to an environment, it does not constitute a new version of the program. Logically that cannot be true, because it is not the same version that was deployed prior. Making a change (a revision) always results in a new version, even if you dont change the version number.

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

ID: 86fe537e-db88-2664-d5d1-96700e81024a
Version Independent ID: b1cd69fe-fafc-969a-975b-02a7ce42bc22
Content: Revisions in Azure API Management
Content Source: articles/api-management/api-management-revisions.md
Service: api-management
GitHub Login: @johndowns
Microsoft Alias: jodowns

@StingyJack Thanks for the feedback! We will review and update accordingly.

@StingyJack Hope @PramodValavala-MSFT answer helps and clears things up. We will now proceed to close this thread. If there are further questions regarding this matter, feel free to tag me in and we will gladly continue the discussion.

Both versions and revisions here refer to the respective features in APIM and not to the backend APIs themselves.

@PramodValavala-MSFT - This is not clear at all.  This doc makes no separation and uses phrasing that implies they are the same or that somehow an API with new code added to it is not a new version.  Even this statement conflates the two...

Even when you are about to release a new backend API which could introduce breaking changes, before making it live, you can create a new version for the API in APIM and work on updating policies/APIs/Operations there before replacing the existing one (which would still be serving requests since the new version isn't public yet).

Breaking changes or not, if there are code changes made, the API is a new version.  Calling it a revision - and implying that is safer somehow - is the problem with the document as written

@StingyJack Thanks for the at feedback! I believe that would be confusing since the document doesn't really talk about the backend API in any regard or specifically imply these are only for APIM, since the docs do refer primarily to APIM's context.
Also, I suppose there are many guidelines on how to version APIs though I am unsure of any spec of sorts that dictates how they should be implemented. For example, some APIs never remove functionality ever, only add to not break any existing clients. Others prefer versioning with discrete query param/header to decide which implementation to route requests to.
Nonetheless, we will reopen this issue and assign it to the content author for further review. This is probably more of a doc idea to discuss this topic in detail.

Thanks for the discussion, @StingyJack and @PramodValavala-MSFT.
While it's certainly true that API Management doesn't prevent you from deploying a new revision that breaks your clients, the intention of the revisions feature is to enable you to support non-breaking changes. @PramodValavala-MSFT gave some good examples. You are also free to ignore the revisions feature and always version your API on every release, if you aren't confident that revisions are safe for your scenario. Different customers use API Management in quite different ways, and the feature set is designed to give you a range of options you can choose from depending on your requirements.
#please-close


What is the hardware spec are you using to tran a LLAMA model with 7B params

I am frequently getting Out of Memory error. I am using v2.8 TPU. TPU v3.8 is generally not available, however, both have same similar specs 8 cores and 8GB memory.
Total hbm usage >= 9.50G:
    reserved        530.00M
    program           8.98G
    arguments            0B

Output size 0B; shares 0B with arguments.

Program hbm requirement 8.98G:
    global           241.0K
    scoped            9.56M
    HLO temp          8.97G (100.0% utilization: Unpadded (8.94G) Padded (8.94G), 0.4% fragmentation (36.60M))

  Largest program allocations in hbm:

hi,
TPUv2 and v3 don't have same memory you can run code on Kaggle TPUs too


Moved <net/route.h> location to new consolidated 'route.h'

This simply fixes the route.h issue detailed in this commit:
https://github.com/Shmoopi/iOS-System-Services/commit/ba21ee7c62247bfb58ec0ae8a77e8a76f5f44102

@zdavison Looks good, thanks.
Eventually it will be better to update the iOS-System-Services dependency to the latest version which already has been patched.

Pushed a new version 1.0.1 to CocoaPods trunk.


fix: footprint text rotation if not similar to footprint rotation

Hi @gauravmm,
we also stumbled upon a little bug. It can be reproduced easily: just rotate a footprint text separately from the footprint. Then, the rotation is not replicated. This PR fixes that 👍

Thanks for looking into this! Does this work if both the text and the footprint are rotated?
(I'll have time to test that next weekend. Let me know if you have a chance before then?)

As far as I can tell that works, too. I believe that text rotation is always relative to the footprint rotation.
Here's a little test project: testfootprintrotation.zip

I also  came across this bug when I was doing #14, 6c54a67535bcd6210f10d23f9b7944a0c360eb57. It appears that text rotation is absolute, and not relative to the footprint, which is why mine applies the transform with self.orient()
Testing seems to confirm this.

Hey, thanks! Now that that's understood, I can actually go implement a fix for it.

To clarify: I believe I have already fixed this issue in 6c54a67. On line 137-138, the rotation is applied with dst.SetTextAngle(self.orient(src.GetTextAngle()))
If its still happening, I'd be happy to dig in further.

That's awesome! I haven't tested it yet, I'll check that this weekend.

It works great, thanks for the patch! I will be merged into master shortly.


KIC 2.0 - Ingress Class Name Handling & Testing

During the development of KIC 2.0 we enabled ingress.class override for parity with v1.x however it was not yet plugged in and used by the controllers. The purpose of this task is to follow up and get the rest of that implementation completed.
Acceptance Criteria:

[ ] the IngressClassName should be plugged into each controller via the controller manager.
[ ] all controllers which cover Ingress and "ingress like" objects supporting the kubernetes.io/ingress.class and/or spec.IngressClassName field should have logic added to properly handle this

Acceptance Criteria (Tests):

[ ] Ingress with no annotation and with no IngressClassName
[ ] Ingress with an annotation not-kongtests
[ ] Ingress with an annotation kongtests
[ ] Ingress with a spec.IngressClassName not-kongtests
[ ] Ingress with a spec.IngressClassName kongtests

This is being merged into #1220


Rendered links in cards are broken

Plugin version v1.0.10
When clicking on a link (markdown or external) in a card, it is not properly changing to the linked note, or launching the browser.  This was working after Issue #9 was fixed in v1.0.8.

Thanks, this is fixed now


Added service discovery view showing labels before and after relabelling

Added service discovery page to Prometheus which shows each scrape configuration before and after relabelling:

@brian-brazil

Rendered with 2000+ targets:

I've also added dropped targets to the target API endpoint in v1.
Will I include it in this PR or wait until this is merged?

I'd leave the APIs to another PR

Anything else required for this folks? @brian-brazil @Gouthamve


Add item which can only place psd_top.

Closing this for now; there are existing methods to achieve the same thing


Incorporate external contribution

@dynamicwebpaige Thank you for your good suggestions! I've incorporated with minor changes.

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

#sign-off


20-12-26_update_welcome

Bump version 1.2 -> 2.0
Add How I Built This Website post and related image
Update welcome post 2020-12-03-welcome.md

Sorry again. I pushed to the wrong repo.


Add test to follow existing behavior

Motivation:
Before start making change, good to add unit test to check existing behavior
Modifications:

Upgrade gradle to 7.6.1(Need to modify code to upgrade to 8)
Add unit tests
Remove current gradle plugin publish config, we can add later
Add thrift binary 0.17.0 first

Result:
Close #1

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


feat: no Staking user-facing terminology for read-only opportunities

Description

Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[ ] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)

closes #
Risk

Testing

Engineering

Operations

Screenshots (if applicable)

Current dependencies on/for this PR:

develop

PR #4680

PR #4679

PR #4681

PR #4682

PR #4690

PR #4691   👈

This comment was auto-generated by Graphite.

Current dependencies on/for this PR:

develop

PR #4680

PR #4679

PR #4681

PR #4682

PR #4690

PR #4691   👈

This comment was auto-generated by Graphite.


RESIZE_NEAREST_NEIGHBOR Operation version not supported

def save_tflite():
converter = tf.lite.TFLiteConverter.from_saved_model(FLAGS.weights)
converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8]
converter.optimizations = [tf.lite.Optimize.DEFAULT]
converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS, tf.lite.OpsSet.SELECT_TF_OPS]
converter.allow_custom_ops = True
converter.representative_dataset = representative_dataset_gen
tflite_model = converter.convert()
open(FLAGS.output, 'wb').write(tflite_model)
TF version:2.3.0
Edge TPU Compiler version 14.1.317412892
Input: yolov3-416-int8.tflite
Output: yolov3-416-int8_edgetpu.tflite
Operator                       Count      Status
DEQUANTIZE                     3          Operation is working on an unsupported data type
QUANTIZE                       2          More than one subgraph is not supported
QUANTIZE                       1          Operation is otherwise supported, but not mapped due to some unspecified limitation
CONV_2D                        15         More than one subgraph is not supported
CONV_2D                        60         Mapped to Edge TPU
RESIZE_NEAREST_NEIGHBOR        2          Operation version not supported
PAD                            5          Mapped to Edge TPU
CONCATENATION                  2          More than one subgraph is not supported
ADD                            23         Mapped to Edge TPU
when I use Edge TPU Compiler compile tflite model, I got the error about RESIZE_NEAREST_NEIGHBOR,ths.

I see RESIZE_NEAREST_NEIGHBOR Op is supported.
Also google-coral/edgetpu repo can be a good platform to raise this issue.
Please try posting it there.
I am tagging similar thread  for your reference. Thanks!

@ymodak thanks! This is a compiler issue, not tflite conversion

@Namburger Thanks for your help.
@ZhouKai90 I will close this issue since you have a more helpful dialogue on another thread. Thanks!


Opening old patches containing Starling Meta crashes Rack

Paul Gatt from VCV Technical Support here,
A user is getting the following crash on Windows 10, Rack 2.1.2 and Starling 2.0.0:
[42.624 info src/engine/Engine.cpp:1395 fromJson] Creating module Starling Via META
[43.071 fatal adapters/standalone.cpp:48 fatalSignalHandler] Fatal signal 11. Stack trace:
31:  0x0
30:  0x0
29: _C_specific_handler 0x7ff9f73e7f60
28: _chkstk 0x7ff9f8052240
27: RtlRaiseException 0x7ff9f8001070
26: KiUserExceptionDispatcher 0x7ff9f8050e60
25: strlen 0x7ff9f741d2c0
24: ZN4Meta12dataFromJsonEP6json_t 0x7ff937325210
23: ZN4rack6engine6Engine8fromJsonEP6json_t 0x7ff93fd63ef0
22: ZN4rack5patch7Manager8fromJsonEP6json_t 0x7ff93fd13d00
21: ZN4rack5patch7Manager12loadAutosaveEv 0x7ff93fd140a0
20: ZN4rack5patch7Manager10loadActionENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE 0x7ff93fd156c0
19: ZN4rack5patch7Manager10loadDialogEv 0x7ff93fd15b10
18: ZZN4rack14createMenuItemINS_2ui8MenuItemEEEPT_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESA_St8functionIFvvEEbbEN4Item8onActionERKNS_6widget6Widget11ActionEventE 0x7ff940227c20
17: ZN4rack2ui8MenuItem8doActionEb 0x7ff93fd6f3b0
16: ZN4rack6widget10EventState12handleButtonENS_4math3VecEiii 0x7ff93fd74a10
15: ZN4rack6window3Svg4loadERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE 0x7ff93fd79860
14: glfwGetWin32Monitor 0x7ff93fdbb910
13: CallWindowProcW 0x7ff9f71fe460
12: CallWindowProcW 0x7ff9f71fe460
11: glPushClientAttrib 0x7ff9a7eda8d0
10: CallWindowProcW 0x7ff9f71fe460
9: DispatchMessageW 0x7ff9f71fe040
8: glfwPollEventsWin32 0x7ff93fdbfb40
7: ZN4rack6window6Window4stepEv 0x7ff93fd7ad60
6: ZN4rack6window6Window3runEv 0x7ff93fd7b720
5: ZN4rack6window6Window3runEv 0x7ff93fd7b720
4: ZN4rack6window6Window3runEv 0x7ff93fd7b720
3: ZN4rack6window6Window3runEv 0x7ff93fd7b720
2: ZN4rack6window6Window3runEv 0x7ff93fd7b720
1: BaseThreadInitThunk 0x7ff9f79b7020
0: RtlUserThreadStart 0x7ff9f8002680

They are also experiencing crashes when using the example Via patches, let us know if you need more information.
I can see you have commits related to loading crashes, but this seems to be occurring for the user in the latest update.

Thanks Paul, and sorry to the user for the trouble. I've been really slacking on fixing up some of the issues with the latest release, I'll try to get it together and ping you here when I have an update.

That would be much appreciated.

Hey @pgatt, I was able to load our old preset files with the latest commit. Would it make sense to have the user try this build?
Starling_Via.zip
Starling_Via-2.0.0-win.zip
If they aren't able to try, let me know because I'm fairly confident this addresses the issues and I would like to get this updated version added to the plugin library.

Hi Will,
I've contacted the user and will let you know as soon as I hear back.


WIP: trigger plugins

This possibly needs a SIP (and is definitely not ready for use, not even really for review) but I am creating the PR now to make it easier for me to track what has changed in the course of all the two-steps-forward-one-step-back-ing.  I'm not happy with the loader kludge but have struggled to find a better way so definitely open to suggestions on that.
I haven't yet figured out proper testing infrastructure but am currently testing with https://github.com/itowlson/spin-external-trigger-very-very-example
Signed-off-by: itowlson<EMAIL_ADDRESS>

Current experience: given a trigger type of thingy, it wants to run spin trigger-thingy, so it checks the plugin store:

If trigger-thingy is installed, it runs it
If trigger-thingy is in the catalogue and compatible, but not installed, it prints Error: No built-in trigger named 'thingy', but plugin 'trigger-thingy' is available to install
If trigger-thingy is in the catalogue but not compatible, but not installed, it prints Error: No built-in trigger named 'thingy', and plugin 'trigger-thingy' is not compatible
If trigger-thingy is not in the catalogue at all, it prints Error: No built-in trigger named 'thingy', and no plugin named 'trigger-thingy' was found

I considered going further in the 'available' case and offering to install it, but am in two minds:
Pro: Gosh it would be convenient
Con: It introduces a user interaction into spin up which would cause it to block in programmatic environments, and while we could add silent-mode switches, it would further clutter an already complicated command line
Thoughts welcome!

Well, I still don't have a good testing story, but I've added some tests to spin_trigger::locked to verify that values are brought into the lockfile correctly,  Everything after that is existing trigger infrastructure and is pretty proven!  So may as well get reviews under way...
(Note:: The CI failure is in code coverage, on a test that runs fine earlier in the CI action without code coverage.  Please ignore it for now.  Unless you have any idea what's going on of course in which case LET ME BRIBE YOU.)

Worked like a charm for me! Buzzing and fizzing with excitement!
kagold@Kates-MacBook-Pro guest % spin up --follow-all
Buzz
Fizz
Fizz
Buzz
Fizz
Fizz
Buzz
Fizz
Buzz

@fibonacci1729 (in connection with the sample in particular)

Doesn't need to be in this PR, but before we publicize trigger plugins we should clean up the public spin-trigger interface/docs and add it to https://fermyon.github.io/rust-docs/spin/main/


Adds a default PlayingStatus to ensure players are onboarded into HA correctly

Addresses #35

Closing this, I think it was just a blip on my WiiM player.
May come back to this if it persists, and use the following:

    @property
    def status(self) -> PlayingStatus:
        """Returns the current playing status."""
        raw_status = self.properties.get(
            PlayerAttribute.PLAYING_STATUS, PlayingStatus.STOPPED
        )
        try:
            return PlayingStatus(raw_status)
        except (ValueError, TypeError):
            return PlayingStatus.STOPPED


chess-tui: init at 1.2.0

Description of changes

homepage: https://github.com/thomas-mauran/chess-tui
license: MIT
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[X] sandbox = true

[X] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[X] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[X] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[X] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 299048 run on x86_64-linux 1

1 package built:

chess-tui


[14.0] ISPN-14685 Relax EncodingConfiguration.matches

https://issues.redhat.com/browse/ISPN-14685

Image pushed for Jenkins build #2:
quay.io/infinispan-test/server:PR-10735

Image pushed for Jenkins build #3:
quay.io/infinispan-test/server:PR-10735

Thanks @tristantarrant


Feature Request: Add rate limiting of speed per frontend

Please add the feature of rate limiting the speed/bandwidth for frontends after a certain time, like nginx can do it as described here: https://www.scalescale.com/tips/nginx/how-to-limit-nginx-download-speed/
Feature
limit_rate_after 1m;
limit_rate 150k;

Something like that would be perfect.
Use case:
One of ten web apps on the same server with 1Gbit Uplink will not be able to hog the bandwidth.
After 1 second the rate could go down to 500Mbit and then to 100Mbit after 15 seconds.
Thanks!

Every time someone does not respect the issue's template, a little bunny dies.

Please edit your issue description to respect the issue template as much as possible:

Basic template
Feature template
Bug template

Hi! I'm Træfiker :robot: the bot in charge of tidying up the issues.
I have to close this one because of its lack of activity :disappointed:
Feel free to re-open it or join our Slack workspace for more community #support.

I am also curious about this feature. It is not mentioned anywhere whether Traefik is able to limit bandwidth?


Fix(#14262): Format the ES reindexing logs for better readability

Describe your changes:
Fixes #14262

I worked on UI side changes for formatting the logs of applications.
Backend changes are pending from @mohityadav766

Type of change:

[x] Improvement

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] My PR title is Fixes <issue-number>: <short explanation>
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] For JSON Schema changes: I updated the migration scripts or explained why it is not needed.

@mohityadav766 @Sachin-chaurasiya whats the status on this?

@Sachin-chaurasiya can you paste some screenshot so that we have an idea of how logs are looking now after the change?

@Sachin-chaurasiya can you paste some screenshot so that we have an idea of how logs are looking now after the change?

@chirag-madlani @Sachin-chaurasiya


Hide private symbols in libcaca

Libcaca.so presently exports 134 symbols (35%, full list attached) which are not present in libcaca's headers and thus are not supposed to be used by clients.
Removing these symbols would allow compiler to optimize code more aggressively, speed up dynamic linker on Linux and prevent clients from inadvertently using internal APIs.
I attached a simple patch that hides private symbols. It passes make check (I can do additional testing if needed). Would something like this be interesting for the project?
caca_removed_syms.txt
0001-Hide-private-symbols.patch.txt
The issue was found using ShlibVisibilityChecker.

Yes, this is definitely interesting. Thanks for the analysis and patch. Following your report I have completely removed more than 100 of these symbols in 5f0ec215f8c9915ed028324a8ecac8212f68e18d (they were just weak aliases for backwards compatibility).
The only problem I can see with your patch is that it does not check whether the compiler understands -fvisibility=hidden. If you can fix this, I’ll consider it good to go. If you don’t feel like doing this extra work, I can have a look at it when I have the time.

The only problem I can see with your patch is that it does not check
whether the compiler understands -fvisibility=hidden.

Thanks, Sam. TBH I tried to check for this (see the configure.ac hunk - it'll leave CACA_ENABLE_VISIBILITY undefined if gcc fails). Note that visibility annotations in headers are needed only when building libcaca (to make compiler assign correct visibility to them). Client code is fine with simple externs.
I attached new rebased patch (made Autoconf check more precise).
0001-Hide-private-symbols-v2.patch.txt

Oops, my apologies, I had misread the patch. It’s good to go! Do you want to do a PR or can I directly commit the changes?

Cool! I'm personally fine with plain commit (but I can do PR if that's preferred).

Sam, looks like I inadvertently disabled -fvisibility=hidden in last patch. Here's the fixed version.
0001-Hide-private-symbols-v3.patch.txt


no highlighting support for inline language="jade" but with "pug" it works

the scenario is for components-based frameworks like vue where you write in a .vue file and not in a html/pug file. i can't use pug language because of the vue converter which does not support it.

@orenmizr: I would think the place where you would rather submit this bug is with your build system/editor/converter where Pug isn't supported, rather than a request for maintaining a legacy language here.
I'm still curious, though: Which "vue converter" are you using?

using vue-loader for vuejs projects.
since we're talking about highlighting and not building - i thought it is a feature of this plugin.
but you're right - i could not use use pug cause it broke the conversion. hence the jade :)


Regenerate EventGrid .NET SDK to reflect new swagger bug fixes for 20-04-01-preview

Regenerate EventGrid .NET SDK to reflect new swagger bug fixes for 2020-04-01-preview.
Swagger PR: https://github.com/Azure/azure-rest-api-specs/pull/8880

@isra-fel , @erich-wang Can you please review and help merge this change? thanks

@isra-fel All comments are addressed. Can you please recheck.
thanks


Update bedrock, openai and examples mods

Pull Request Test Coverage Report for Build<PHONE_NUMBER>8
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 0.0%

Totals

Change from base Build<PHONE_NUMBER>5:
0.0%

Covered Lines:
0

Relevant Lines:
0

💛  - Coveralls


Implement ties-to-even for Big[U]Int::to_{f32,f64}

This makes the rounding consistent with primitive types, which, per IEEE-754, uses nearest-ties-to-even rounding.
See: https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=a6ab9b18a4982f881cd594061f096f8c
#[test]
fn test() {
    use num::{BigInt, ToPrimitive};
    let a: i128 = (1 << 120) + (1 << (120 - 53));
    let b: i128 = 1 << (120 - 60);
    assert_ne!(a as f64, (a + 1) as f64);
    assert_eq!((a + b) as f64, (a + 1) as f64);

    assert_eq!(BigInt::from(a).to_f64().unwrap(), a as f64);

    // This works because the b is among the high 64 bits
    assert_eq!(BigInt::from(a + b).to_f64().unwrap(), (a + b) as f64);

    // This fails because 1 is just thrown away
    assert_eq!(BigInt::from(a + 1).to_f64().unwrap(), (a + 1) as f64);
}

I'm not quite sure how to characterize this.

Is this a bug? It's certainly pretty surprising.
Should I add this to the changelog? Is this a breaking change?

In general, the goal is to match the behavior of primitive types, at least so far as that behavior does not depend on limited bit width. So yes, having an example of different i128 behavior makes this look like a bug we should fix.
Breaking changes are fuzzy when it comes to behavior -- I think this is a justified change, but yes we should mention it in release notes. There's semi-related precedent in how Rust 1.67 fixed rounding in https://github.com/rust-lang/rust/pull/102935/.

ooh that's not quite right, i'll take a look

Thanks! I just rebased this without changes to get CI running.
bors r+


26740 - Feature - Generated Parameter Markdowns for Orchestration

Overview/Summary
Similar functionality for to the generated markdowns for the ALZ Bicep Modules, this has now been taken to the orchestration modules.
This PR fixes/adds/changes/removes

Generates markdowns in a generateddocs/ folder in each respective orchestration module
Added link to the main READMEs of orchestration modules to the newly generated MDs

AB#26740
Breaking Changes

N/A

Testing Evidence

As part of this Pull Request I have

[X] Read the Contribution Guide and ensured this PR is compliant with the guide
[X] Ensured the resource API versions in .bicep file/s I am adding/editing are using the latest API version possible
[X] Checked for duplicate Pull Requests
[X] Associated it with relevant GitHub Issues
[X] (ALZ Bicep Core Team Only) Associated it with relevant ADO Items
[X] Ensured my code/branch is up-to-date with the latest changes in the main branch
[X] Performed testing and provided evidence.
[X] Updated one or more of the following tests (if required)

Unit
Linting
E2E (End-To-End)
ValidateAzCloud (Base validation in Azure Cloud)
ValidateMcCloud (Base validation in Azure China Cloud)

[X] Updated relevant and associated documentation (e.g. Contribution Guide, Module READMEs, Wiki Docs etc.)
[X] If relevant, created or updated Code Tours here

Errors due to pre-existing links to the markdowns in the respective READMEs of the orchestration and CRML folders. I will generate the initial markdowns in the PR and they can be updated accordingly in any other future PRs to resolve the checks on this PR.

/azp run validateazcloud

/azp run validateazcloud


Make deploy fails on macOS

Hello,
I tried to deploy the fresh v2.1.0 yesterday evening on macOS Ventura 13.1 (intel), GNU Make 3.81.
(fresh clone, submodules on the expected commit, correct file permissions)
I got errors the following error at deploy/deploy-t4c steps (with versions set to 5.2.0 or 5.2.0/6.0.0):
for version in 5.2.0
/bin/sh: -c: line 1: syntax error: unexpected end of file
make: *** [capella] Error 2

for version in 5.2.0 6.0.0
/bin/sh: -c: line 1: syntax error: unexpected end of file
make: *** [t4c-client] Error 2

Fast try to avoid the error seems to work by removing the loop and the call to $(CAPELLA_DOCKERIMAGES) :
capella:
	$(MAKE) -C capella-dockerimages PUSH_IMAGES=1 DOCKER_REGISTRY=$(LOCAL_REGISTRY_NAME):$(REGISTRY_PORT) CAPELLA_VERSION=5.2.0 capella/remote capella/readonly
	$(MAKE) -C capella-dockerimages PUSH_IMAGES=1 DOCKER_REGISTRY=$(LOCAL_REGISTRY_NAME):$(REGISTRY_PORT) CAPELLA_VERSION=6.0.0 capella/remote capella/readonly

t4c-client:
	$(MAKE) -C capella-dockerimages PUSH_IMAGES=1 DOCKER_REGISTRY=$(LOCAL_REGISTRY_NAME):$(REGISTRY_PORT) CAPELLA_VERSION=5.2.0 t4c/client/remote t4c/client/backup
	$(MAKE) -C capella-dockerimages PUSH_IMAGES=1 DOCKER_REGISTRY=$(LOCAL_REGISTRY_NAME):$(REGISTRY_PORT) CAPELLA_VERSION=6.0.0 t4c/client/remote t4c/client/backup

With GNU Make 4.4 (installed with brew install make and then deployed to replace with 4.4 by adding export PATH="/usr/local/opt/make/libexec/gnubin:$PATH" in .zshrc
The loop issue is solved
make[2]: Entering directory 'xxx'
...
make[2]: Leaving directory 'xxx'
``
`

I might open further issues regarding the status of my next trials.

Regards


add info on the 'change row display' settings in the ide

adding this new feature per @StefanDBTLabs 's update.

Using this pr to add upcoming changes provided by Stefan.
Please hold off from merging until i add this.

merging this and front end team working on algolia crawl question!


[Bug] Scheduled workflow did not receive OpenTelemetry tracing

What are you really trying to do?

Implement otel tracing for our workflows, where most are triggered by temporal schedule.
Describe the bug

Trace information is not generated and propagated for scheduled workflow executions.
Minimal Reproduction
https://github.com/Holi0317/temporal-bugreport/tree/py-schedule-tracing

Run poetry install
Start jaeger with following snippet:

docker run -d --name jaeger \
  -e COLLECTOR_OTLP_ENABLED=true \
  -p 16686:16686 \
  -p 4317:4317 \
  -p 4318:4318 \
  jaegertracing/all-in-one:latest

Run poetry run python temporal_tracing/worker.py to start the worker
Run poetry run python temporal_tracing/starter.py to run the workflow once by manual invoke
Run poetry run python temporal_tracing/scheduler.py to schedule workflow execution. Wait til a minute passed and there should be execution result of scheduled execution

If the workflow is scheduled, jaeger shows 2 distinct traces with different trace ID shown in the console, each only with RunActivity:compose_greeting in it
Worker started, ctrl+c to exit
Hello in activity. Let's check the traces b69e29b63117d84f98d1095948520fd3 55c467efaf77c85d
Hello in activity. Let's check the traces daea5868fe257f559621af68d9bd869d 66f6fc4a8d938155

If the workflow is invoked manually, jaeger shows a single trace that looks not broken. And the trace ID are the same across activities:
Worker started, ctrl+c to exit
Hello in activity. Let's check the traces 3fd71755262b64b3bc6097d93f419822 cb8aca4ed13cfc11
Hello in activity. Let's check the traces 3fd71755262b64b3bc6097d93f419822 598ecfcfb4157a7e

Environment/Versions

OS and processor: M1 Mac
Temporal Version: [e.g. 1.14.0?] and/or SDK version: Temporal version 0.10.7 (server 1.22.2) (ui 2.21.3). SDK 1.4.0
Are you using Docker or Kubernetes or building Temporal from source? Temporal dev server from CLI

Additional context

Kinda relates to https://github.com/temporalio/sdk-python/issues/362.
Related slack thread: https://temporalio.slack.com/archives/CTT84RS0P/p1702589499220879 (Issue is described above and the message did not provide more context. Not going to copy-paste the message here)

Seems like we did in Go. Missing in all other SDKs.

Mentioned in Slack, but basically only user-controlled clients can create the initial spans for workflows when starting workflows. We can't know what tracer or tracing framework a user is using to create the span for them when we start the workflow server side. We don't create parentless spans on the worker side if there is no parent span because it would be a bunch of orphans, but maybe we can support orphaned worker-side spans or maybe we can support some new mechanism to attach start-workflow headers on first task. The SDK team will discuss options here.

Separate issue opened. This will be fixed in #454.


Adds an MV to calculate last visit time

Should help performance for all at-risk reports.

Should be good for re-review


Platform 2688

Supports https://artsyproduct.atlassian.net/browse/PLATFORM-2688

@emmadickson - mind updating the PR title to something more descriptive?

@damassi Updated!