Confirm EOA /wallet

I'm not sure of the best strategy but to make things more noob proof we should try and verify that the wallet to register is an EOA and not an exchange deposit address (because they won't be able to use it to execute the claim transaction)

perhaps there is an open source tool or framework to identify that the attempted wallet to be registered is a CEX deposit address
We could check if there is any gas in the wallet. If not then throw a warning explaining that the wallet must be a self custody wallet (e.g. metamask) for claims to work.

Another strategy is to get the bounty hunter to sign some message using metamask. This confirms that the wallet is EOA, and not from a CEX.
There are two ways to do this.

When user changes wallet using ubiquitbot, it also provides a signed message with it. ubiquitbot  checks its validity and acts accordingly. This will require the bounty hunter to sign message manually.
Give bounty hunter a link to dApp or somewhere there is a wallet connection, and get some message signed.

@web4er that's a cool idea! Here's an updated flow:

user invokes /wallet command with their address as the argument (exactly as we do currently.)
the bot posts a link to pay.ubq.fi/verify?user=pavlovcik&wallet=0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d
the dApp parses the URL parameters and then asks for a signature
upon success there must be some type of webhook interface to the bot (@0xcodercrane @rndquu I would like your input here)
The bot posts a wallet registration success comment on the issue.

We could enforce bounty hunters to register public keys instead of wallet addresses
So if bounty hunter knows a public key then they should also know the private key. CEX exchanges don't share such info.
On the bot's side we could derive address from the public key
This is not really user friendly though so perhaps we will have to create a new web page "get public key from authorized wallet address in metamask"
Example (register address):
/wallet 0xfF02FE4e3FD16DAA1C6A95ebDB8e1d62C6cE71AF

Example (register public key):
/wallet 0x038cfb8c0ad2f3c6f603f84e29283bd09fc29fd751f3318c5b69e98b241956ecfd

/wallet 0x336C033842FA316d470e820c81b742e62A0765DC

We could enforce bounty hunters to register public keys instead of wallet addresses

I definitely like the idea of less steps, but as you said, it's not very user-friendly. I wonder if there is a simple way to derive the public key without navigating to a new tool. Otherwise, the signature approach might be more intuitive for most hunters.

I think step 2 and 3 are over complicating it. There isn't an incentive for people to lie about their wallet address.

/wallet 0x336C033842FA316d470e820c81b742e62A0765DC

the bot posts a link to pay.ubq.fi/verify?wallet=0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d&issue=100

pay.ubq.fi/verify?wallet=0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d&owner=ubiquity&repository=ubiquibot&issue=100

@web4er that's a cool idea! Here's an updated flow:

user invokes /wallet command with their address as the argument (exactly as we do currently.)
the bot posts a link to pay.ubq.fi/verify?user=pavlovcik&wallet=0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d
the dApp parses the URL parameters and then asks for a signature
upon success there must be some type of webhook interface to the bot (@0xcodercrane @rndquu I would like your input here)
The bot posts a wallet registration success comment on the issue.

Yes, it could work
1. user invokes `/wallet` command with their address as the argument (exactly as we do currently.)

2. the bot posts a link to `pay.ubq.fi/verify?wallet=0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d&issue=100`

3. user authenticates in github via OAuth

4. user signs tx data

5. user sends tx data to the bot's backend

6. on the backend the bot verifies that the provided wallet equals to the one derived from the signature

7. the bot posts a wallet registration success comment on the issue

My only concern is step 5 because I'm not sure that it is possible to send a valid request with user's token

I think this is a lot of back and forth communication. Too complex relative to the benefit it is providing.
Here is how I will simplify it.

Once a user sets their wallet, they get a response from the bot to sign a message like "Contribution to ubiquity by @web4er". They can use any tool to sign it, myetherwallet.com, or etherscan https://etherscan.io/verifiedSignatures to sign it,  and reply with signature.
The bot checks for signature validity and responds accordingly.

The same thing can be done if we use public key, but I couldn't find any trusted tool to extract public key.

Full Example
Address
0x4007ce2083c7f3e18097aeb3a39bb8ec149a341d

Message

Contribution to Ubiquity by @pavlovcik

Signature Hash
0xcdf0936ec5a40c925dec7db9b6f2f9f6b76839da10abff412371b11cebf022a72e66776803e5dce178dbf63d9381cc535a5507dc90558498f9d34ee30f9622101b

Isn't it better to make it a one liner? I mean bounty hunter would need to provide a wallet address + sign the provided wallet address:
/wallet 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266 0x0830f316c982a7fd4ff050c8fdc1212a8fd92f6bb42b2337b839f2b4e156f05a359ef8f4acd0b57cdedec7874a865ee07076ab2c81dc9f9de28ced55228587f81c

/wallet 0x336C033842FA316d470e820c81b742e62A0765DC

I think that one liner sounds like a plan! Also with regular expressions I think that its easy to identify the intent behind every argument regardless of the order.
We just need to communicate the string that they need to hash somehow. So the flow could possibly be the following:

A user writes /wallet 0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d
The bot renders an error comment

"Use Etherscan to sign ubiquity/ubiquibot/issues/410 and then register your wallet by appending the Signature Hash to the end of the command /wallet 0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d 0x0830f316c982a7fd4ff050c8fdc1212a8fd92f6bb42b2337b839f2b4e156f05a359ef8f4acd0b57cdedec7874a865ee07076ab2c81dc9f9de28ced55228587f81c"

Unless there is a way to handle this flow more efficiently?

To sum up:

Bounty hunter should be able to register a wallet with a signed message in any order. Examples:

/wallet 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266 0x0830f316c982a7fd4ff050c8fdc1212a8fd92f6bb42b2337b839f2b4e156f05a359ef8f4acd0b57cdedec7874a865ee07076ab2c81dc9f9de28ced55228587f81c

/wallet 0x0830f316c982a7fd4ff050c8fdc1212a8fd92f6bb42b2337b839f2b4e156f05a359ef8f4acd0b57cdedec7874a865ee07076ab2c81dc9f9de28ced55228587f81c 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266

If bounty hunter posts an invalid wallet command then the bot should respond with error:

"Use Etherscan to sign ubiquity/ubiquibot/410 and then register your wallet by appending the Signature Hash to the end of the command /wallet 0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d 0x0830f316c982a7fd4ff050c8fdc1212a8fd92f6bb42b2337b839f2b4e156f05a359ef8f4acd0b57cdedec7874a865ee07076ab2c81dc9f9de28ced55228587f81c"

We could sign either bounty hunter's wallet string either issue URL ubiquity/ubiquibot/410. Anyway in the end the bot should check that the message signer equals to the provided wallet address.

/wallet 0x336C033842FA316d470e820c81b742e62A0765DC

This is coming together very nicely.

We could sign either bounty hunter's wallet string either issue URL ubiquity/ubiquibot/410.

I think signing the wallet itself has a little signature replay attack potential. I will not consider it as my first choice.
On the other hand, does signing a dynamic message like ubiquity/ubiquibot/410  has a benefit? Signing a static message like ubiquity/ubiquibot has some less significant benefits.

Easy to explain in help.
Hunter will have to sign the message only once and he can reuse the signed message hash.
Dynamic message can give the impression that hunter can use different wallets on different issues because of prepended issue number. While the static message doesn't.

Here is how the help will look.
.
.
.
- /wallet: <WALLET_ADDRESS | ENS_NAME> <SIGNED_MESSAGE_HASH>: Register the hunter's wallet address.
  The message that you have to sign is ubiquity/ubiquibot
  You can generate SIGNED_MESSAGE_HASH on etherscan https://etherscan.io/verifiedSignatures
  ex1: /wallet 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266 0x75329f883590507e581cd6dfca62680b6cd12e1f1665db8097f9e642ed70025146b5cf9f777dde90c4a9cbd41500a6bf76bc394fd0b0cae2aab09f7a6f30e3b31b
  ex2: /wallet vitalik.eth 0x75329f883590507e581cd6dfca62680b6cd12e1f1665db8097f9e642ed70025146b5cf9f777dde90c4a9cbd41500a6bf76bc394fd0b0cae2aab09f7a6f30e3b31b

To sum up:
1. Bounty hunter should be able to register a wallet with a signed message in any order. Examples:

/wallet 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266 0x0830f316c982a7fd4ff050c8fdc1212a8fd92f6bb42b2337b839f2b4e156f05a359ef8f4acd0b57cdedec7874a865ee07076ab2c81dc9f9de28ced55228587f81c

/wallet 0x0830f316c982a7fd4ff050c8fdc1212a8fd92f6bb42b2337b839f2b4e156f05a359ef8f4acd0b57cdedec7874a865ee07076ab2c81dc9f9de28ced55228587f81c 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266

2. If bounty hunter posts an invalid `wallet` command then the bot should respond with error:

* "[Use Etherscan](https://etherscan.io/verifiedSignatures) to sign `ubiquity/ubiquibot/410` and then register your wallet by appending the Signature Hash to the end of the command `/wallet 0x4007CE2083c7F3E18097aeB3A39bb8eC149a341d 0x0830f316c982a7fd4ff050c8fdc1212a8fd92f6bb42b2337b839f2b4e156f05a359ef8f4acd0b57cdedec7874a865ee07076ab2c81dc9f9de28ced55228587f81c`"

3. We could sign either bounty hunter's wallet string either issue URL `ubiquity/ubiquibot/410`. Anyway in the end the bot should check that the message signer equals to the provided wallet address.

This looks very close to the final requirements. I would love to work on this on the weekend.

I have worked on this over the weekend. Here are tests of how it is working https://github.com/web4er/obiquibot-tests/issues/3
Feel free to suggest any improvements. Looking forward to the bounty and opening my first pull request.

I think signing the wallet itself has a little signature replay attack potential. I will not consider it as my first choice.

I'm not sure if signature replay is a valid exploit vector because wouldn't the attacker also need to have access to the user's GitHub account? Perhaps I am not realizing the full attack surface area.

On the other hand, does signing a dynamic message like ubiquity/ubiquibot/410 has a benefit? Signing a static message like ubiquity/ubiquibot has some less significant benefits.

When I picked ubiquity/ubiquibot/410 it was chosen because it feels more intentional than what the previous proposal suggested. I didn't fully think through if it is the optimal choice.
Ultimately it seems like signing a static message makes the most sense to make it simple to explain. I would like to choose a static string that doesn't feel completely random!

I think it's worth adding a config for this to enable/disable this security feature. Otherwise, to fallback to the old behavior of just setting any address (it was a lot simpler!)
We can do this in a separate bounty. I imagine that asking non-technical bounty hunters to provide a signature hash could be somewhat overwhelming for them.

/assign

/wallet 0x1F9FCc0E84dc2094499b848AE37Cd6a51db03Ff2

I have submitted a draft pull request. My code is ready for review, but I am unable to understand the QA bot. It is responding without my changes. You can see https://github.com/web4er/ubiquibot/issues/11#issuecomment-1622607074  that my bot is not accepting wallet without a signature, but QA bot is still accepting. What am I missing?

I'm not sure if signature replay is a valid exploit vector because wouldn't the attacker also need to have access to the user's GitHub account? Perhaps I am not understanding the full attack strategy.

The signature posted here is public. It can be reused on some other Dapp that the user uses. If the Dapp provides some access/benefit authorized by a signed wallet address, it will be a problem.

That looks great! Awesome tests. Why not open the draft pull request with its source code?

Thank you, I have opened a draft pull request.

My code is ready for review, but I am unable to understand the QA bot. It is responding without my changes. You can see web4er#11 (comment) that my bot is not accepting wallet without a signature, but QA bot is still accepting. What am I missing?

@0xcodercrane @rndquu how does the QA bot (GitHub actions runtime on pull requests) read the newly modified code? Can we fix this?

My code is ready for review, but I am unable to understand the QA bot. It is responding without my changes. You can see web4er#11 (comment) that my bot is not accepting wallet without a signature, but QA bot is still accepting. What am I missing?

@0xcodercrane @rndquu how does the QA bot (GitHub actions runtime on pull requests) read the newly modified code? Can we fix this?

Perhaps when the QA bot is invoked from an issue (not from a PR) then the development branch is checked out so if the updated code resides in some other branch then the none-modified development branch is invoked instead of the feature branch
@web4er try to check how it works in the PR (which contains the updated code) instead of an issue

My code is ready for review, but I am unable to understand the QA bot. It is responding without my changes. You can see web4er#11 (comment) that my bot is not accepting wallet without a signature, but QA bot is still accepting. What am I missing?

@0xcodercrane @rndquu how does the QA bot (GitHub actions runtime on pull requests) read the newly modified code? Can we fix this?

If you run the QA bot with the changes, the changes need to be merged into the development branch first because the workflow in the default branch: development is triggered for the issue related events.

If you run the QA bot with the changes, the changes need to be merged into the development branch first because the workflow in the default branch: development is triggered for the issue-related events.

Ok, I have merged changes to development branch and it started to work and responded to some commands. But now it is not responding to the commands after https://github.com/web4er/ubiquibot/issues/11#issuecomment-1623520409 and it has been an hour.  @0xcodercrane

The QA bot replied after 5 hours. The QA is complete but not as orderly as I wanted it to be. I tried again to QA but the bot has again disappeared now.
I am going to submit the PR for review now.

But now it is not responding to the commands after web4er#11 (comment) and it has been 2 hours. @0xcodercrane

That's wild. What could be causing the insane lag?
@0xcodercrane @rndquu check how long some of these are taking to run: https://github.com/web4er/ubiquibot/actions

I had the same feeling that the github workflow took so long even not completed. It made me to rerun the workflow. I wanna say it is kind of a GitHub itself issue.

@web4er the quick way to verify it is to cancel the workflow and rerun and see how it goes

I had the same feeling that the github workflow took so long even not completed. It made me to rerun the workflow. I wanna say it is kind of a GitHub itself issue.

I don't think it's valid to point the blame at GitHub and not investigate.
We should debug the reason why this hangs. I think we could make a shorter timeout for the time being.

Let's wait for more such cases because some other workflows (Build, Kebab case) also took too long to finish which means that the reason could be a github


reference a Node in a context where it does not exist

Getting errors on karma tests on both chrome and phantomjs
Version: ├── angular-dynamic-locale#0.1.27
PhantomJS 1.9.8 (Linux) ERROR
  NOT_FOUND_ERR: DOM Exception 8: An attempt was made to reference a Node in a context where it does not exist.
  at /home/bor/sunucu/mdm-server/public/lib/angular-dynamic-locale/tmhDynamicLocale.min.js:7

Hi, thanks for reporting this.

Are you using require.js?
Would it be possible to have a plunker that shows this error?

Thanks

Hi,
thanks for response. I might have prematurely created the issue. It might be broken becuase of phantomjs or something else.
Will let you know if I find anything


feat(theme-default): children, outline and fixes for Badge

Summary

Shout out to shadcn/ui and Vitepress for inspiration.

Improve built-in <Badge> components:

Custom children: this is particularly useful for adding icons.
outline support: more variations!
Style tweak:

use CSS variables from containers to look consistent.
fixes default badge being invisible in Dark mode.
better vertically aligned with different headings.

Changes to type props:

add info type to be consistent with containers.
tip is added as the new default.

Do note that even though this kept untyped <Badge> unchanged, it
does introduce a benign breaking change to <Badge type="info">.
Before vs. After
Light mode:

Dark mode:

Changes to Docs:

Badges docs are updated to reflect the new usages and new types.
This MR correct "Internal Components" to be "Built-in Components".
(does not involve URL changes due to the use of fragments)

Related Issue
Dunno.
Checklist

[x] Tests updated (or not required).
[x] Documentation updated (or not required).

 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.

Very detailed PR and documentation description, thank you 👍

Awesome 👍


New mpl method : gradients fusion

Add a new method to do federated learning, where we compute gradients for each partner, we aggregate the gradient, and then we use the fusionned gradient to optimize the main model.
EDIT:  The interest of aggregate the gradient instead if aggregating the weight is to perform the optimization step with the aggreged gradient, so after the aggregation step, at the opposite of fedavg, which make the optimization step, and then the aggregation step. With standard optimizer such as SGD or batch gradient descente, aggregation and fusion step commute. But with more complexe algorithms (which involve momentum, or adaptative learning rate) like bfgs or adam, the order of these two steps matter.
EDIT: This version of tensorflow/keras does not allow anymore to use modified gradients for the optimization step.
see the error >>>
self.optimizer.apply_gradients(zip(fusion_gradients, model.trainable_weights))
AttributeError: 'Adam' object has no attribute 'apply_gradients'
It is really strange, as it is the implementation suggested by the documentation  In order to bypass this problem, I will try to fusion the loss and use the .get_updates() method, on the aggregated loss (it should directly compute the aggregated gradient)
EDIT: I failed to use the get_updates() method, I am pretty sure that we need the apply_gradient function... So I am pausing this work, until keras update.
Signed-off-by: arthurPignet<EMAIL_ADDRESS>

As this branch is 131 commits behind master, with only 3 useless commits, this work will be carried out by PR299.


Add httpAdminCookieOptions

Closes #4717
This allows the session cookie used as part of adminAuth OAuth strategies to have its options customised.
The code applies the documented defaults, then allows httpAdminCookieOptions to override them.

fyi @cstns

Amazing, Thank you!


(bug) Tracing only initializes when specifying endpoint through config

Observed behaviour
After #2482 and #2485, tracing won't initialize unless the openTelemetryOtlpEndpoint config entry is set. When I'm using OTEL_EXPORTER_OTLP_ENDPOINT instead I'd rather not have to specify it in the configuration as well.
Expected Behavior
Tracing should be disabled via OTEL_SDK_DISABLED=true, otherwise it should be enabled by default.
Steps to reproduce
No response

/assign-me

Well I tried - either way I'm going to take this on, it's a simple fix 😉

https://github.com/thomaspoignant/go-feature-flag/pull/2579 should solve this 🙂


[.NET DateTime] Added base CJK Extractors and Parsers

Moved Extract and Parse methods from DateTime Chinese configuration files to new BaseCJK[Type]Extractor and BaseCJK[Type]Parser files.
Updated Chinese configuration files according to the new implementation (Japanese and Korean will follow if the approach is approved).

In MergedParser, I was planning to move common methods (used in both standard and CJK implementations) to a MergedParserUtil, but the implementations are slightly different and produce different results, for example:

In standard implementation, the modifiers "after" and "since" convert the "value" key to "start" and the modifiers "before" and "until" convert the "value" key to "end".
In CJK, only the modifiers "after" and "before" modify the "value" key while "since" and "until" keep it unchanged.

Is this a wanted feature? If not, should I continue to refactor the common methods and update the Chinese Model specs accordingly?

@tellarin, could you have a look at this one? We need to know if the approach is correct in order to continue the refactoring and Korean development. Thanks!

In CJK, only the modifiers "after" and "before" modify the "value" key while "since" and "until" keep it unchanged.

All four modifiers should behave the same. Can you open an issue for this?


autoApply is undefined in onCloseHandler and onErrorHandler

54c11f2f introduces a bug in onCloseHandler and onErrorHandler.
autoApply is undefined in the context of this two methods.

Created pull request for that: #73

The pull request was merged, could someone do version bump?

Looks like this issue resolved.
"autoApply" is undefined no longer appers

This has been fixed indeed, but still a version bump is required for bower scripts to get the newest changes

:+1: for version bump

Can some just do it


Convert existing twitter earthquakes feed to use stable USGS JSON feed

@passiweinberger I really do appreciate that you've created a river and are trying to get it working properly, but I have some concerns with the twitter_earthquakes river.
HTML scraping is risky and brittle. It should only be used as a last resort. It Twitter decides to change how they use HTML classes on their website, it would easily break all twitter-based rivers. I created the twitter-511nyc river in a desparate attempt to get some live feed of traffic incidents to go along with the HTM Engine Tutorial, but honestly it has not worked out very well and I'm thinking of removing it entirely because the data quality is so bad. What you really want is the data source of the twitter feed if you can find it.
In my case with the 511 data, I could not find that data source, but for USGS earthquake data, I have found several live-updated JSON feeds that probably give you much more info much more easily.
http://earthquake.usgs.gov/earthquakes/feed/v1.0/geojson.php
I suggest you remove your twitter_earthquakes feed and replace it with an hourly feed (that updates every 5 minutes): http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/all_hour.geojson.
This will be much stabler and easier to maintain, and the data is a much higher quality.

You guys are aware that Twitter offers a streaming API, correct? Wouldn't this be what you are looking for? https://dev.twitter.com/streaming/reference/post/statuses/filter

Is the Twitter streaming API available without an API key or authentication?

Matt Taylor
OS Community Flag-Bearer
Numenta
On Fri, Jul 31, 2015 at 10:47 AM, Jeff Fohl<EMAIL_ADDRESS>wrote:

You guys are aware that Twitter offers a streaming API, correct? Wouldn't
this be what you are looking for?
https://dev.twitter.com/streaming/reference/post/statuses/filter
—
Reply to this email directly or view it on GitHub
https://github.com/nupic-community/river-view/issues/51#issuecomment-126769567
.

No. You need to register an app with Twitter in order to get the data. Though, it is free. So, anyone setting up River View that uses Twitter feeds would need to register with Twitter and get the appropriate credentials. This means that we would need to set up an option for enabling/disabling individual streams instead of turning them all on by default.

I'm actually not sure if you would need to register with Twitter for each running instance of River View. One might be sufficient. I can take a look into it if there is interest.

River View was designed under the assumption that all rivers could be populated without any authentication whatsoever. I don't want to change this at this point. If there is enough pressure to add some type of authenticated feeds, I'm willing to discuss it in a separate issue.

Seems like we could make a "twitter-view" app that extends river-view, but instead is focused specifically on Twitter feeds. Users could specify any number of Twitter streams within the app, and turn them on and off.

@rhyolight Thank you! I appreciate this, and have been looking into it before... THe main point of using twitter here was that USGSTed tweets about 'Preliminary' alerts. Hence its about 10mins faster then their geojson service. 10 mins in the situation of instant eqs alerts (which is one of the features to be in nostradamIQ) are a lifetime.
Maybe we could have both? one for instant alerts and one for stable alerts?
I like @jefffohl s Idea about querying the twitter api..
We could set up a twitter account for river-view and using its OAuth keys?
Two separate rivers would be somewhat more annoying..

I think what I would like to do initially is replace the twitter quake feed with the JSON feed, then we can talk about how to get more up-to-date data.

:+1:


Notes about base64 image & the CameraRoll

To display the base64 image that is returned by this module:
//style height & width and source.isStatic are all required
<Image
  source={{
      isStatic: true,
      uri: 'data:image/jpeg;base64,'+base64image,
    }}
  style={{height: 100, width:100}}
/>

Also images can be saved to the CameraRoll with the following patch: https://github.com/facebook/react-native/pull/1111

Is putting the data over the bridge and a base64 conversion twice (once from the camera, once to the screen) a concern at all?

@jtremback Yeah it's slow and locks up other actions from taking place over the bridge while it is being sent as far as I know.

I found it quite slow as well. Is the base64 conversion option in this module ever a realistic option?

Potentially. It has mostly just been kept as the default for backwards compatibility and predictability.

Kind of feels like there needs to be some code around handling files and data "over the bridge" in React Native in general.

The bridge is not really designed to be that. React Native is designed to reduce the workload of building a native app, it's not really a "Javascript all the things!" solution. The current suggested method of using file URIs works just fine.

Off topic for this thread I guess, but I was more thinking about an
abstraction that would let you manipulate data that is on the objC side in
JS without actually copying the actual data over.
I guess saving it on disk and reading it when I need to is good enough for
now though.
On Tue, May 12, 2015 at 5:03 PM, Loch Wansbrough<EMAIL_ADDRESS>wrote:

The bridge is not really designed to be that. React Native is designed to
reduce the workload of building a native app, it's not really a "Javascript
all the things!" solution. The current suggested method of using file URIs
works just fine.
—
Reply to this email directly or view it on GitHub
https://github.com/lwansbrough/react-native-camera/issues/23#issuecomment-101464076
.

I don't know how you think that would work - the only way to get data between JS and Objective-C is over the JS bridge.

Sorry if this is a silly question, but how do I get the base64 data from the camera without saving the image to the camera roll?


DVR: Why is the saved MP4 frame rate is 14.939948?

Description

Pushed the stream by ffmpeg and it was set to 15fps.
The saved MP4 frame rate is 14.939948 in the VLC, while 15fps is what I wanted.
It doesn't look like a big problem. But when I received the stream and saved as another MP4 file, they were not synchronized.
Then I put both MP4 files into Adobe Premeire and changed the frame rate to 15 fps of the SRS saved MP4 file, they were synchronized. Method
What should I do to get the expected fps? Appreciate for your time!

Version: 3

Config:

# main config for srs.
# @see full.conf for detail config.

listen              1935;
max_connections     1000;
srs_log_tank        console;
daemon              off;
http_api {
    enabled         on;
    listen          1985;
}
http_server {
    enabled         on;
    listen          8080;
    dir             ./objs/nginx/html;

    https {
        # Whether enable HTTPS Streaming.
        # default: off
        enabled on;
        # The listen endpoint for HTTPS Streaming.
        # default: 8088
        listen 8088;
        # The SSL private key file, generated by:
        #       openssl genrsa -out server.key 2048
        # default: ./conf/server.key
        key /usr/local/srs/trunk/server.key;
        # The SSL public cert file, generated by:
        #       openssl req -new -x509 -key server.key -out server.crt -days 3650 -subj "/C=CN/ST=Beijing/L=Beijing/O=Me/OU=Me/CN=ossrs.net"
        # default: ./conf/server.crt
        cert /usr/local/srs/trunk/server.crt;
    }

}
stats {
    network         0;
    disk            sda sdb xvda xvdb;
}
vhost __defaultVhost__ {
    hls {
        enabled         on;
    }
    http_remux {
        enabled     on;
        mount       [vhost]/[app]/[stream].flv;
    }

    dvr {
        enabled      on;
        dvr_path     /xxxxx/isa/data/video/[app]/[2006]/[01]/[02]/[stream]/[timestamp].mp4;
        dvr_plan     session;
    }

    http_hooks {
        enabled         on;
        on_dvr          https://<IP_ADDRESS>/iuba/v2/video/record;
    }

}

Please ask questions on Stack Overflow using the #srs tag.
This issue will be eliminated, see $2716
Dup to https://stackoverflow.com/questions/70345601/how-to-convert-mp4-frame-rate-like-14-939948fps-to-15fps

Replay this issue, caused by the fixed TBN 1k, see https://stackoverflow.com/a/70373364/17679565


Initialize consumer to empty read state if no announcements #140

If the AnnouncementWatcher has no published versions when
a HollowConsumer refreshes, initialize it to an empty read
state. Ensure that the next refresh forces a snapshot,
even if we are configured to disallow snapshots.
While we're here, also start the process of consolidating
sentinel values.

This PR contains a bit of a cleanup, but the meat of it is in HollowClientUpdater - initializing the data state to an empty HollowReadStateEngine if there are no published versions. If you triggerRefresh after something is published (or wait for triggerRefreshAsync to kick in on its own) you will be updated to the latest version via a snapshot update.
An important side-effect of the empty state is that there are no types available in your consumer, so even initializing a PrimaryKey will fail. You can check if you have been initialized yet by calling HollowConsumer#getCurrentVersionId and comparing it to HollowConstants#VERSION_NONE.


Use new credential APIs in Spring Service Bus and Event Hubs and add more test cases

Description
Resolves #28931. To decouple the credential of an Event Hubs client builder from FQDN or event hub name. And add more test cases
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[ ] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

API change check
API changes are not detected in this pull request.

/azp run java - spring - tests


Issue related synced resources between tenants via TenantPivot and attach method

Bug description
Hi,
it seems synced resources between tenants (via TenantPivot) works only if you attach model to user but not from tenant.
// this work
$user->tenants()->attach($tenant);

// this not work
$tenant->users()->attach($user);

I think is related to $pivot->pivotParent, when assume Tenant case
https://github.com/archtechx/tenancy/blob/85c7465aca2fb017545a5304dea0ee0006bee5f0/src/Database/Models/TenantPivot.php#L17
I'm going to customize pivot model in order to fix this behavior.
Steps to reproduce
See docs and try reverse relationship management
Expected behavior
I expect the synchronization to work even when handling the reverse relationship.
Laravel version
10.31.0
stancl/tenancy version
3.7.2

Yeah, this is a known bug. It's solvable in some cases but not others due to Laravel's limitations. We're working on an overhaul of resource syncing in v4 right now.

Ok, but why close the issue ? I think it's better to be there for the community.
Do you have any idea where I can find the list of know bugs?
Thanks

Closed because it's tracked in the v4 task list. It's still searchable including this convo.
Main broken things in v3 that can't be fixed without breaking changes are:

some things with resource syncing
creating tenant DBs on remote servers


added error logging in Heimdall.swift. fixes #44

@patgoley Were you still planning on updating this with throwable functions?

@jorystiefel I'm happy to help out though the need for me personally has passed. Are you still interested in adding this feature? If we're able to map the OSStatus errors to something more meaningful or specific, I think it would help users track down their errors a lot faster.

Closing due to inactivity. I don't particularly like adding logging, error throwing/handling would be neat, but is likely a separate topic.


Uncaught SyntaxError: Failed to execute 'querySelector' on 'Element': '.markup.underline.link.rfc.7.hyperlink' is not a valid selector.

Steps to Reproduce

Open any file with 'activate-power-mode' enabled.
Type a space, followed by 'RFC' and any number. (ex: ' RFC7915')
Error will be shown in error popup (generated by Atom)
Cry.

Atom Version: 1.9.8
System: Microsoft Windows 10 Pro
Thrown From: activate-power-mode package, v0.7.4
Stack Trace
Uncaught SyntaxError: Failed to execute 'querySelector' on 'Element': '.markup.underline.link.rfc.7.hyperlink' is not a valid selector.
At C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:873

Error: Failed to execute 'querySelector' on 'Element': '.markup.underline.link.rfc.7.hyperlink' is not a valid selector.
    at Error (native)
    at Object.module.exports.getColorAtPosition (file:///C:/Users/user/.atom/packages/activate-power-mode/lib/power-canvas.coffee:53:55)
    at Object.module.exports.spawnParticles (file:///C:/Users/user/.atom/packages/activate-power-mode/lib/power-canvas.coffee:43:14)
    at invokeFunc (C:\Users\user\.atom\packages\activate-power-mode\node_modules\lodash.throttle\index.js:149:19)
    at leadingEdge (C:\Users\user\.atom\packages\activate-power-mode\node_modules\lodash.throttle\index.js:159:22)
    at Cursor.debounced [as throttleSpawnParticles] (C:\Users\user\.atom\packages\activate-power-mode\node_modules\lodash.throttle\index.js:224:16)
    at Object.module.exports.onChange (file:///C:/Users/user/.atom/packages/activate-power-mode/lib/power-editor.coffee:56:14)
    at Function.module.exports.Emitter.simpleDispatch (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\node_modules\text-buffer\node_modules\event-kit\lib\emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\node_modules\text-buffer\node_modules\event-kit\lib\emitter.js:129:28)
    at TextBuffer.module.exports.TextBuffer.emitDidChangeEvent (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:729:20)
    at TextBuffer.module.exports.TextBuffer.applyChange (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:714:19)
    at TextBuffer.module.exports.TextBuffer.setTextInRange (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:623:12)
    at Selection.module.exports.Selection.insertText (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\selection.js:480:43)
    at C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor.js:934:29
    at C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor.js:973:29
    at TextBuffer.module.exports.TextBuffer.transact (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:868:18)
    at TextEditor.module.exports.TextEditor.transact (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor.js:1390:26)
    at C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor.js:967:24
    at TextEditor.module.exports.TextEditor.mergeSelections (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor.js:2365:43)
    at TextEditor.module.exports.TextEditor.mergeIntersectingSelections (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor.js:2331:35)
    at TextEditor.module.exports.TextEditor.mutateSelectedText (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor.js:965:19)
    at TextEditor.module.exports.TextEditor.insertText (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor.js:931:19)
    at TextEditor.object.(anonymous function) [as insertText] (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\node_modules\underscore-plus\lib\underscore-plus.js:77:27)
    at TextEditorComponent.module.exports.TextEditorComponent.onTextInput (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor-component.js:506:26)
    at HTMLDivElement.<anonymous> (C:\Users\user\AppData\Local\atom\app-1.9.8\resources\app.asar\src\text-editor-component.js:3:61)

Commands
     -1:01.5.0 editor:newline (input.hidden-input)
     -0:52.3.0 core:save (input.hidden-input)
     -0:40.1.0 core:backspace (input.hidden-input)
  5x -0:36.7.0 core:move-left (input.hidden-input)
 53x -0:35.7.0 core:delete (input.hidden-input)
     -0:30 core:undo (input.hidden-input)
 20x -0:29.1.0 core:delete (input.hidden-input)
     -0:20.3.0 editor:move-to-end-of-screen-line (input.hidden-input)
  5x -0:18.6.0 core:select-left (input.hidden-input)
     -0:16.8.0 core:move-right (input.hidden-input)
  4x -0:16.6.0 core:move-left (input.hidden-input)
     -0:15.5.0 core:select-left (input.hidden-input)
  2x -0:15 core:backspace (input.hidden-input)
     -0:11.9.0 core:move-left (input.hidden-input)
     -0:11.6.0 editor:select-to-end-of-line (input.hidden-input)
     -0:11.4.0 core:delete (input.hidden-input)

Config
{
  "core": {
    "autoHideMenuBar": true,
    "disabledPackages": [
      "autocomplete-haxe"
    ],
    "projectHome": "D:\\Development\\HTML",
    "themes": [
      "atom-material-ui",
      "atom-light-syntax"
    ]
  }
}

Installed Packages
# User
activate-power-mode, v0.7.4 (active)
atom-material-syntax, v0.4.6 (inactive)
atom-material-syntax-light, v0.4.5 (inactive)
atom-material-ui, v1.3.3 (active)
autoclose-html, v0.23.0 (active)
autocomplete-haxe, v0.2.0 (inactive)
autocomplete-php, v0.3.7 (active)
color-picker, v2.2.2 (active)
firewatch-syntax, v1.0.1 (inactive)
fizzy-syntax-theme, v0.9.0 (inactive)
fonts, v1.6.0 (active)
jquery-snippets, v11.0.0 (active)
jshint, v1.8.5 (active)
linter, v1.11.16 (active)
merge-conflicts, v1.4.4 (active)
minimap, v4.24.7 (active)
piatto-light, v2.0.2 (inactive)
project-manager, v2.9.7 (active)
two-light-ui, v1.1.0 (inactive)
uglify, v1.2.5 (inactive)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.51.0 (inactive)
atom-light-syntax, v0.28.0 (active)
atom-light-ui, v0.43.0 (inactive)
base16-tomorrow-dark-theme, v1.1.0 (inactive)
base16-tomorrow-light-theme, v1.1.1 (inactive)
one-dark-ui, v1.3.2 (inactive)
one-light-ui, v1.3.2 (inactive)
one-dark-syntax, v1.2.0 (inactive)
one-light-syntax, v1.2.0 (inactive)
solarized-dark-syntax, v1.0.2 (inactive)
solarized-light-syntax, v1.0.2 (inactive)
about, v1.5.2 (active)
archive-view, v0.61.1 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.11.1 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.31.0 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (active)
background-tips, v0.26.0 (active)
bookmarks, v0.41.0 (active)
bracket-matcher, v0.82.1 (active)
command-palette, v0.38.0 (inactive)
deprecation-cop, v0.54.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.39.0 (active)
fuzzy-finder, v1.3.0 (active)
git-diff, v1.1.0 (active)
find-and-replace, v0.198.0 (inactive)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.1 (active)
image-view, v0.58.0 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.0 (active)
link, v0.31.1 (inactive)
markdown-preview, v0.158.0 (active)
metrics, v0.53.1 (active)
notifications, v0.64.1 (active)
open-on-github, v1.2.0 (inactive)
package-generator, v1.0.0 (inactive)
settings-view, v0.238.2 (active)
snippets, v1.0.2 (active)
spell-check, v0.67.1 (active)
status-bar, v1.4.1 (active)
styleguide, v0.46.0 (active)
symbols-view, v0.113.0 (inactive)
tabs, v0.98.1 (active)
timecop, v0.33.1 (active)
tree-view, v0.208.0 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.34.0 (active)
whitespace, v0.32.2 (active)
wrap-guide, v0.38.1 (active)
language-c, v0.52.1 (active)
language-clojure, v0.21.0 (active)
language-coffee-script, v0.47.0 (active)
language-csharp, v0.12.1 (active)
language-css, v0.36.2 (active)
language-gfm, v0.86.0 (active)
language-git, v0.13.0 (active)
language-go, v0.42.0 (active)
language-html, v0.44.1 (active)
language-hyperlink, v0.16.0 (active)
language-java, v0.22.0 (active)
language-javascript, v0.119.0 (active)
language-json, v0.18.0 (active)
language-less, v0.29.3 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.35.0 (active)
language-php, v0.37.0 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.0 (active)
language-ruby, v0.68.5 (active)
language-ruby-on-rails, v0.25.0 (active)
language-sass, v0.52.0 (active)
language-shellscript, v0.22.3 (active)
language-source, v0.9.0 (active)
language-sql, v0.21.1 (active)
language-text, v0.7.1 (active)
language-todo, v0.28.0 (active)
language-toml, v0.18.0 (active)
language-xml, v0.34.8 (active)
language-yaml, v0.26.0 (active)

# Dev
No dev packages

That's weird, given that call is inside a try/catch block.
Did that happen just after you update the package? if so, try to reproduce the issue again

My apologies for the lack of response, @lexcast. I haven't had the issue in any of my installs of Atom since. I think it was to do with an issue of linking to RFCs when noted in code. I believe it is no longer an issue. Thanks for you help, anyway.


include syslog server to listen on udp/socket

Would be great to include a small go based syslog server library ( https://github.com/ziutek/syslog ) and allow via options to have logspout listen on udp syslog or unix socket.
this would allow pointing syslog in a container to logspout via udp or a volume mounted syslog socket.  This would help apps that only support syslog logging run better in a container.

Already working on it

figured you might be,  I was going to try and solve it myself before I realized it would be a perfect fit for logspout.

word

Actually I haven't been able to make much progress if any of you guys wanted to take a shot with the new module system. I was looking at this library: https://github.com/mcuadros/go-syslog

I ended up doing an alpine linux based container running socat to listen to syslog port/socket and print to stdout - https://registry.hub.docker.com/u/factorish/syslog/
that running on same host as logspout container seems to be working ok for me,  Although I haven't really tested it for robustness.

Cool. Still would be nice to have.

FYI, docker v1.6 is adding logging drivers, which includes a syslog driver. Would be fun to use logspout for this and bypass all of the event sniffing, but not sure you'd be able to run logspout in a container then

The log drivers are for output of what Docker already has as logs, whereas this was about providing a syslog input for containers to collect more than just stdout/err.
But I'm not sure I follow the rest. You mean use logspout as a log driver? That would require a custom build of Docker. However, eventually the work I'm doing with Docker on plugins could mean you could add dynamic log drivers. At that point, Logspout would likely become one.

You'll be able to configure docker to use syslog as an output for stdout/stderr (rather than the current json files). This issue is about adding a syslog server built into gliderlabs. Given this, we could supply a logspout server as the syslog endpoint for the docker logging driver (without requiring a custom build). Alas, this would mean that logspout would likely have to run outside/before docker.

Ah ok. That's true. And it may not mean running before/outside Docker. But in the end, I'm not sure there is a real benefit for the downsides of configuring the log driver, etc. We still need to hit the API to collect information about containers for filters and such.
The point of this issue is to have a syslog server containers can talk to directly for non stdout/err logs.

+1, just one more use-case we'd get "for free" that would be fun to consider (and may open up more valuable scenarios in the future).

For sure

Any log driver other than the old default json-file will disable the /logs API in Docker 1.6. because of this, even while there's a none log driver now, running "disk-less" logging via Logspout is not yet possible, which is unfortunate. Then there is the mentioned syslog driver. If Logspout was able to consume local syslog, it would open the door for logging-with-out-disk. It seems like a possible tactical solution. Longer term, ideally Docker would provide a way to get a log stream independently of the driver via the API but that's a discussion for a different place.

@raychaser disabling the /logs API with the none driver seems like a big oversight. Is there a ticket for fixing this in the Docker project?

@packetcollision this is an expected side-effect of the none driver. It's intended to use when you don't want Docker to store your logs and plan to handle logging yourself (e.g. mounted volume, or the application sending logs itself).
There's more discussion on #94 about a possible alternative log driver that would work well with Logspout.


[Bug] set.headers removes headers set by cors()

As the title says set.headers removes all the headers set by the @elysiajs/cors plugin.

I assume that you post this on Discord as well, so basically just use
set.headers['AnyHeader'] = 'Value'

instead of
set.headers = { AnyHeader: 'a' }

If you are still strugling, I managed to get this to work following this:
app.onAfterHandle(({ request, set }) => {
	if (!Bun.env.FRONTEND_URL) return false;

	set.headers["Access-Control-Allow-Origin"] = Bun.env.FRONTEND_URL;
	if (request.method === "OPTIONS") {
		set.headers["Access-Control-Allow-Headers"] =
			request.headers.get("Access-Control-Request-Headers") ??
			"Content-Type, Authorization";
		set.headers["Access-Control-Allow-Credentials"] = "true";
		set.headers["Access-Control-Allow-Methods"] =
			"GET, POST, DELETE, PUT, PATCH";
	}
});

app.use(
	cors({
		methods: ["GET", "POST", "DELETE", "PUT", "PATCH", "OPTIONS"],
		origin: Bun.env.FRONTEND_URL,
		credentials: true,
		allowedHeaders: [
			"Content-Type",
			"Authorization",
			"Access-Control-Allow-Headers",
			"Access-Control-Allow-Credentials",
			"Access-Control-Request-Headers",
		],
	})
);


Investigate possible reflection features

RTTI attributes added to fields in #45, also add classes / enums?


Instructions not working

Please correct the list of requirements for the instructions on this page, as it is currently it misleads the reader.
This page states the only requirement is: "your Xamarin.iOS for Visual Studio installation requires a connection to a networked Mac OS X computer"
This is not correct because the following page has a different set of requirements:
https://docs.microsoft.com/en-au/xamarin/ios/get-started/installation/windows/index
Mac
A Mac running macOS Sierra (10.12) or higher (although the latest stable version is recommended).
Xamarin iOS SDK. This is installed when downloading Visual Studio for Mac
Apple’s Xcode IDE and iOS SDK (The latest stable version from the Mac App Store is recommended).
The Windows computer must be able to reach the Mac via the network.

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

ID: 98c96bcc-1743-8d9f-f1b2-3c30d5b2a6e2
Version Independent ID: f57a6157-332a-3f31-c785-7efa99e62711
Content: Connecting to the Mac - Xamarin
Content Source: docs/ios/get-started/installation/windows/connecting-to-mac/index.md
Service: unspecified
GitHub Login: @bradumbaugh
Microsoft Alias: brumbaug

Thanks @jpvosloo - macOS is the correct requirement. There is already an update in progress for this doc that will address your concern, it will be published soon.


Editors that don't provide workspace listings to fail to provide require completion

It seems to be that workspaces don't perform scanFiles in init (see script/workspace.lua), relying on the editor to provide the information, but when the editor does supply the workspace base but doesn't provide a listing, require support fails to resolve files. (I added some log.info to my local version for testing: it attempts to find the files, but they don't exist in the cached workspace, so it fails.)
This seems fixable by allowing some method of forcing scanFiles to occur (configuration option?) - potentially clunky but it makes the LSP much more usable in this situation.
This was tested on Linux with Kate f63d953cc5185e6ce8cbd4c155c25f30f21ece84. LSP plugin configuration:
{
    "servers": {
        "lua": {
            "command": ["/home/20kdc/Documents/External/lua-language-server/start"],
            "rootIndicationFileNames": [".kateproject"],
            "highlightingModeRegex": "^Lua$"
        }
    }
}

("start" here is a script which runs the language server as so:)
#!/bin/sh

BASELINE=/home/20kdc/Documents/External/lua-language-server
exec $BASELINE/bin/Linux/lua-language-server -E $BASELINE/main.lua

EDIT: Just to be clear, if someone reading this is experiencing the issue and needs a workaround, in workspace.lua, add self:scanFiles() at the very end of the mt:init function. This is just a workaround though and might have side effects.

Should be fixed in 0.20.1


[AVM Module Issue]: bug - multiple replicaSets can't be deployed res/aad/domain-service

Check for previous/existing GitHub issues

[X] I have checked for previous/existing GitHub issues

Issue Type?
Bug
Module Name
avm/res/aad/domain-service
(Optional) Module Version
No response
Description
Deploying multiple replica sets is not possible even when specifying them and changing the SKU to a supported tier.
"replicaSets": {
  "value": [
    {
      "location": "<resourceLocation>",
      "subnetId": "<subnetResourceId>"
    },
    {
      "location": "<replicaLocation>",
      "subnetId": "<replicaSubnetResourceId>"
    }
  ]
}

(Optional) Correlation Id
No response

I've also added an issue here, but not sure yet if it is a Bicep specific problem: https://github.com/Azure/bicep-types-az/issues/2201

The product group is working on documentation.


[Relay]resize op compute and schedule

Thanks for contributing to TVM!   Please refer to guideline https://docs.tvm.ai/contribute/ for useful information and tips. After the pull request is submitted, please request code reviews from Reviewers.

Thanks! Please request review.

@MarisaKirisame @jroesch @yzhliu @tqchen please help to review this PR. TIA

LGTM

Thanks @siju-samuel @MarisaKirisame This is now merged.


Check for updates doesn't work (macOS)

Checking for updates from the help menu fails with the following:

Tested in versions

0.5.9-nightly (0.5.1845)
0.5.9-nightly (0.5.1856)

Seems not to be a temporary downtime, since this has happened all week long.
macOS 11.1

Hi @dahmc ,
Thanks for logging the issue!
Auto-update right now requires a license key - just curious, have you entered it in the UI?
There's a spot in the titlebar where we show:

On top of that - if you don't enter a license key, there's no useful error message - it provides that same 'Update Error!' dialog.
I'm wondering if it is hitting this no-license-key case, or if perhaps there is another issue blocking it from receiving the update.

Hi @bryphe,
Thanks a lot for the info. I have to admit I never realized the unregistered notice at the top. :)
Once I entered my key, the update worked:

However, the banner to show the successful purchase never goes away.

I can't click it, or even when changing files or doing other stuff it just keeps staying. Restarting oni will make it go away.

Hi @dahmc ,
Excellent, glad the update worked after entering the key!
We definitely need to smooth out that flow - working on a couple fixes in #3078  :

If a license key isn't entered, and 'Check for Updates' is run, let the user know a license key is needed
Fix the bug where the dialog isn't closeable - add a close button, and accept enter from the keyboard as well.

Could be related: I have a license key but Onivim seems to be downloading the same updates over and again. I say 'seems to' because I haven't actually written down and compared the commit SHAs. I've just read the release notes and the last four or five releases have all had the same changes.

Interesting - it sounds like it might be picking up the nightly builds, @snoblenet - we have a configuration setting to choose which build it should use:
      "oni.app.updateReleaseChannel": "stable"

(where "stable" gets the point releases, approximately monthly, and "master" gets the nightly release). Might be worth switching that to "stable" so you get less noisy updates.
The changelog gets pulled from here: https://github.com/onivim/oni2/blob/master/CHANGES_CURRENT.md - and isn't smart enough to diff between nightlies, so at least the top changes would be the same for each nightly build.


Move canvas when hitting canvas edge while dragging an item

Please describe the feature that you want to propose
Hello! i`ve watched your issues and already found these similiar issues https://github.com/wbkd/react-flow/issues/460
https://github.com/wbkd/react-flow/issues/392
but i didnt understand - had you fixed it in 10.3.17 version or not? Or maybe you have found good solutions for these problem. I have mine which work not so optimized in 9v but now it doesnt work in 10v.

This feature is available since v11.5.0 - I will update the other issues. Thanks for bringing this up.


Fix warning and update to newer version of dotnet installer task

##[warning]Kindly upgrade to new major version of this task 'Use .NET Core (2.*)' for installing newer versions of .NET Core. '0.*' task version might not be able to download newer .NET core versions. To know more about 'Use Dot Net (2.*)', refer https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/tool/dotnet-core-tool-installer?view=azure-devops. 2.2.202

Sample build https://dev.azure.com/azure-sdk/public/_build/results?buildId=112823&view=logs&j=ca395085-040a-526b-2ce8-bdc85f692774

All updated to Use Dotnet Core


Lokalise: Translations update

This pull request was initiated by Lokalise (user Peter Murray) at 2021-02-02 16:59:54

Test errors found. See https://jenkins-aws.indexdata.com/job/folio-org/job/ui-circulation-log/job/PR-58/1/

Test errors found. See https://jenkins-aws.indexdata.com/job/folio-org/job/ui-circulation-log/job/PR-58/2/

Test errors found. See https://jenkins-aws.indexdata.com/job/folio-org/job/ui-circulation-log/job/PR-58/3/

Test errors found. See https://jenkins-aws.indexdata.com/job/folio-org/job/ui-circulation-log/job/PR-58/4/


Anti Gravity Bubble infinate fly

Description (Required)

By default, the Anti Gravity Bubble (AB) allows up to 45 blocks of creative flight. But this time, it allows infinite flying (even rtp to another place). The flight is only disabled when changing the world (ex. enter the end/nether). It only happen after server restart.
Steps to reproduce the Issue (Required)

Place an AB.
Restart server
Join the server, and fly with AB.
Now you have creative flight, teleport to another world will fix it.
https://cdn.discordapp.com/attachments/677513197116194831/1143807261806968904/simplescreenrecorder-2023-08-23_14.11.54.mp4

Expected behavior (Required)

Flight in 45 blocks only. Does not occur after server reboot.
Server Log / Error Report

None.
Environment (Required)

sf versions
[14:40:13 INFO]: This Server uses the following setup of Slimefun:
[14:40:13 INFO]: Purpur git-Purpur-2036 (MC: 1.20.1)
[14:40:13 INFO]: Slimefun DEV - 1094 (git 7da1af03)
[14:40:13 INFO]: Metrics-Module #29
[14:40:13 INFO]: Java 20
DynaTech vDEV - 198 (git b28e063e)

Further demo video:
https://cdn.discordapp.com/attachments/677513197116194831/1144114882518716497/simplescreenrecorder-2023-08-24_10.40.14.mp4

@ProfElements any idea ?


workout-tracker: add assets

Description of changes
From server log:
12:58PM WRN Not Found app=workout-tracker version=local sha=local module=webserver request.time="2024-09-15 12:58:39.875195 +0400 +04" request.method=GET request.host=localhost:8080 request.path=/assets/dist/htmx.min.js request.query="" request.params=map[*:/dist/htmx.min.js] request.route=/assets* request.ip=<IP_ADDRESS> request.referer=http://localhost:8080/user/signin request.length=0 response.time="2024-09-15 12:58:39.875636 +0400 +04" response.latency=441.574µs response.status=404 response.length=0 error="map[code:404 internal:<nil> message:Not Found]"

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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

[ ] 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.11 Release Notes (or backporting 23.11 and 24.05 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.

Looks good, thanks!
@NixOS/nixpkgs-merge-bot merge


Add LineChart examples

Closes #405
Description

Current behavior (updates)

New behavior

Is this a breaking change (Yes/No):

Additional Information

Hi, thank you for your PR! I have made a few suggestions, please check. Also, would you be able to pick the date pagination to be like the Range date picker in the Yamada UI documentation's Insights page?

@taroj1205
I don't think MultiDatePicker  is suitable because of this limitation in the dates that can be obtained.

MultiDatePicker

You are able to set the minimum and maximum dates as shown in the documents. https://yamada-ui.com/components/forms/range-date-picker#set-minimum-and-maximum-dates

MultiDatePicker

@illionillion You are able to set the minimum and maximum dates as shown in the documents. https://yamada-ui.com/components/forms/range-date-picker#set-minimum-and-maximum-dates

Fixed it.

@taroj1205
Please review again.


Update model_zoo.md

Correct the link of CAE Readme.md
Checklist
Before PR:
[CAE](https://github.com/open-mmlab/mmselfsup/blob/master/configs/selfsup/simmim/README.md)
After PR:
[CAE](https://github.com/open-mmlab/mmselfsup/blob/master/configs/selfsup/cae/RAEDME.md)

Hi, thanks for your contribution. Please run pre-commit hook to resolve the lint issue and we will merge this PR.

Excuse me, This is my first time to commit.  I have used the pre-commit hook, and are there any problem?

Excuse me, This is my first time to commit. I have used the pre-commit hook, and are there any problem?

Thanks for your contribution, it is ok now

Hi @Jason-Study ！First of all, we want to express our gratitude for your significant PR in the MMSelfSup project. Your contribution is highly appreciated, and we are grateful for your efforts in helping improve this open-source project during your personal time. We believe that many developers will benefit from your PR.
We would also like to invite you to join our Special Interest Group (SIG) private channel on Discord, where you can share your experiences, ideas, and build connections with like-minded peers. To join the SIG channel, simply message moderator— OpenMMLab on Discord or briefly share your open-source contributions in the #introductions channel and we will assist you. Look forward to seeing you there! Join us ：https://discord.gg/raweFPmdzG
If you have WeChat account，welcome to join our community on WeChat. You can add our assistant ：openmmlabwx. Please add "mmsig + Github ID" as a remark when adding friends：）
Thank you again for your contribution❤


Enable release testing in windows release pipelines

Tag windows and linux release pipeline test jobs with serial groups to limit how many jobs run at once

/test all

/test all

/lgtm


Create custom commands grouping multiple notion block / commands

Hi ! Love slahsy and the idea behind it. Plus it looks great: congrats!
I always wanted to be able to create custom slash commands because I frequently use the same set, for example I often create toggle with a code block inside:

/toggle, enter (or >)
Type Title + enter
/code

It would be nice to do the same with for example /ct command, which could contains the 3 steps I described above.
I tried but wasn't able to set it up with Slashy. Do you know if it's possible to embed multiple Notion "commands" / block in one slashy command ?

Hmm, it might not be working because Slashy supports limited markdown. Here's a list of the markdown that Notion supports. Ideally for it to work it would have to somehow be integrated with the API, but would be a bit tricky.


Error handling in Z.js, alternative to try{}catch(){} block

Borrowing from the idea of unwrap in jquery, and an infamous idea of using an assignment operator ie
const [error, data] ?= await doSomething();
i suggest we use this concept in z.js, introduce that assignment operator inform of a helper function or use a transpiler like for typescript. As we await the TC39 update on this in ECMA, which might never happen but fingers crossed.
This will create easy to read and organized code.

👌 wow


Music not uploading

Version Number: 1.0.0
1.0.0

Description
The files are not getting uploaded to Youtube.
Steps to reproduce the issue:

Create docker container including the dedup API  (https://github.com/jaymoulin/google-musicmanager-dedup-api)
Follow instructions for receiving cookie information.
Watch the log grow

Describe the results you received:
Log of one song, however this is the same for all songs.
youtubemusicuploader | 2020-10-22 20:07:22,130 - youtube_music_uploader.uploader_daemon - INFO - Should upload /media/library/Country/John Denver - The Essential John Denver 2007(2cd's)/CD1/14 - Thank God I'm A Country Boy.mp3?
youtubemusicdedup | <IP_ADDRESS> - - [22/Oct/2020 20:07:22] "GET / HTTP/1.1" 404 -
youtubemusicuploader | 2020-10-22 20:07:22,139 - youtube_music_uploader.uploader_daemon - INFO - Deduplicate API: file exists? no
youtubemusicuploader | 2020-10-22 20:07:22,140 - youtube_music_uploader.uploader_daemon - INFO - Uploading /media/library/Country/John Denver - The Essential John Denver 2007(2cd's)/CD1/14 - Thank God I'm A Country Boy.mp3
youtubemusicuploader | 2020-10-22 20:07:22,867 - youtube_music_uploader.uploader_daemon - INFO - Not uploaded /media/library/Country/John Denver - The Essential John Denver 2007(2cd's)/CD1/14 - Thank God I'm A Country Boy.mp3

Describe the results you expected:
I expected the music to get uploaded.
Additional information you deem important (e.g. issue happens only occasionally):

I have verified that the oauth key has been created
I tried on both a linux and windows docker environment
And thank you for creating this API. With Google Play Music EOL and the music manager not working anymore, this would really be useful!

I think I'm having the same problem, though I can't figure out where the logs are. There's nothing showing up in console. I'm currently running it in docker, and I don't see any traffic or disk reads happening in docker stats.

I confirm today that the actual version 1.0.0 is working following the given guidlines for both MP3 and WAV files
youtubemusic_1  | 2020-11-24 12:41:41,860 - youtube_music_uploader.uploader_daemon - INFO - Should upload /media/library/MUR_SINGLE_MIX_CASTE.wav?
youtubemusic_1  | 2020-11-24 12:41:41,861 - youtube_music_uploader.uploader_daemon - INFO - Uploading /media/library/MUR_SINGLE_MIX_CASTE.wav
youtubemusic_1  | 2020-11-24 12:41:41,906 - youtube_music_uploader.uploader_daemon - INFO - Should upload /media/library/Unearth/III: In The Eyes Of Fire/9 - Imposter's Kingdom.mp3?
youtubemusic_1  | 2020-11-24 12:41:41,907 - youtube_music_uploader.uploader_daemon - INFO - Uploading /media/library/Unearth/III: In The Eyes Of Fire/9 - Imposter's Kingdom.mp3
youtubemusic_1  | 2020-11-24 12:41:46,725 - youtube_music_uploader.uploader_daemon - INFO - Should upload /media/library/Unearth/III: In The Eyes Of Fire/3 - March of the Mutes.mp3?
```.

Please make sure that your `oauth.key` file contains correct headers + cookie in a json format, and you actually are connected to your Youtube Music interface so the cookie is still active


Tensorflow >=2.10 windows - model.load_weights file handling issue

Click to expand!
Issue Type
Bug
Source
binary
Tensorflow Version
2.10 and 2.11
Custom Code
No
OS Platform and Distribution
Windows Server 2019
Mobile device
No response
Python version
3.9
Bazel version
No response
GCC/Compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current Behaviour?
After loading a model with model.load_weights something is off with the directory that the weights were loaded from:

Savings weights to that directory again fails
Removing that directory fails as well

Edit: This does not happen on Linux. However, on windows systems, our CI crashes with the provided errors when fine tuning models or when temporary directories are cleaned up after loading models from them. The provided snippets represent minimal examples of what I was able to trace down would lead to crashes on windows.
Standalone code to reproduce the issue
test code 1 (saving weights again)

import tensorflow as tf
from pathlib import Path

inputs = tf.keras.Input(shape=(3,))
x = tf.keras.layers.Dense(4, activation=tf.nn.relu)(inputs)
outputs = tf.keras.layers.Dense(5, activation=tf.nn.softmax)(x)
model = tf.keras.Model(inputs=inputs, outputs=outputs)

tf_model_file = Path("model") / "my_model.tf_model"

model.save_weights(tf_model_file, overwrite=True, save_format="tf")

model.load_weights(tf_model_file)
model.save_weights(tf_model_file, overwrite=True, save_format="tf")

test code 2 (removing directory)

import tensorflow as tf
from pathlib import Path
import shutil

inputs = tf.keras.Input(shape=(3,))
x = tf.keras.layers.Dense(4, activation=tf.nn.relu)(inputs)
outputs = tf.keras.layers.Dense(5, activation=tf.nn.softmax)(x)
model = tf.keras.Model(inputs=inputs, outputs=outputs)

tf_model_file = Path("model") / "my_model.tf_model"

model.save_weights(tf_model_file, overwrite=True, save_format="tf")

model.load_weights(tf_model_file)

shutil.rmtree("model")

Relevant log output
Output for test 1
2022-11-30 09:18:57.932686: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2022-11-30 09:18:58.186560: W tensorflow/core/framework/op_kernel.cc:1830] OP_REQUIRES failed at save_restore_v2_ops.cc:286 : UNKNOWN: Failed to rename: model\my_model.tf_model_temp/part-00000-of-00001.data-00000-of-00001 to: model\my_model.tf_model.data-00000-of-00001 : Cannot create a file when that file already exists.
; Unknown error
Traceback (most recent call last):
  File "C:\Users\thomas\Desktop\model-test\model-test.py", line 14, in <module>
    model.save_weights(tf_model_file, overwrite=True, save_format="tf")
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\keras\engine\training.py", line 2917, in save_weights
    self._checkpoint.write(filepath, options=options)
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\checkpoint\checkpoint.py", line 2287, in write
    return self._write(file_prefix, options)
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\checkpoint\checkpoint.py", line 2305, in _write
    output = self._saver.save(
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\checkpoint\checkpoint.py", line 1351, in save
    save_path, new_feed_additions = self._save_cached_when_graph_building(
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\checkpoint\checkpoint.py", line 1294, in _save_cached_when_graph_building
    return _run_save()
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\checkpoint\checkpoint.py", line 1246, in _run_save
    save_op = saver.save(file_prefix, options=options)
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\checkpoint\functional_saver.py", line 407, in save
    return save_fn()
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\checkpoint\functional_saver.py", line 393, in save_fn
    return gen_io_ops.merge_v2_checkpoints(
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\ops\gen_io_ops.py", line 547, in merge_v2_checkpoints
    return merge_v2_checkpoints_eager_fallback(
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\ops\gen_io_ops.py", line 582, in merge_v2_checkpoints_eager_fallback
    _result = _execute.execute(b"MergeV2Checkpoints", 0, inputs=_inputs_flat,
  File "C:\Users\thomas\AppData\Local\pypoetry\Cache\virtualenvs\rasa-_GmHtu1y-py3.9\lib\site-packages\tensorflow\python\eager\execute.py", line 52, in quick_execute
    tensors = pywrap_tfe.TFE_Py_Execute(ctx._handle, device_name, op_name,
tensorflow.python.framework.errors_impl.UnknownError: {{function_node __wrapped__MergeV2Checkpoints_device_/job:localhost/replica:0/task:0/device:CPU:0}} Failed to rename: model\my_model.tf_model_temp/part-00000-of-00001.data-00000-of-00001 to: model\my_model.tf_model.data-00000-of-00001 : Cannot create a file when that file already exists.

Output of error 2
2022-11-30 09:20:47.815422: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
Traceback (most recent call last):
  File "C:\Users\thomas\Desktop\model-test\model-delete-test.py", line 16, in <module>
    shutil.rmtree("model")
  File "C:\Users\thomas\AppData\Local\Programs\Python\Python39\lib\shutil.py", line 759, in rmtree
    return _rmtree_unsafe(path, onerror)
  File "C:\Users\thomas\AppData\Local\Programs\Python\Python39\lib\shutil.py", line 633, in _rmtree_unsafe
    onerror(os.rmdir, path, sys.exc_info())
  File "C:\Users\thomas\AppData\Local\Programs\Python\Python39\lib\shutil.py", line 631, in _rmtree_unsafe
    os.rmdir(path)
OSError: [WinError 145] The directory is not empty: 'model'

Hi @twerkmeister !
I was able to run above code by changing folder paths as below.

my_model.tf_model

with

mymodel

Attached gist for reference.
Could you give us an update from your side.
Thank you!

I know it works fine on Linux 👍 and it even runs without your proposed change. However, on windows  our CI crashes with the provided errors when fine tuning models or when temporary directories are cleaned up after loading models from them. The provided snippets represent what I was able to trace down would lead to crashes on windows.

I might have misunderstood, sorry, let me test the provided change on windows.

I tested the proposed change on windows, and I am getting the same error as before.
All the provided snippets work on linux. On windows, however, the model.load_weights(tf_model_file) makes the operations that follow it fail.

Hi @twerkmeister !
I found a different error "NoneType is not callable" in my local windows machine.
I think issue is how mode.save_weights statement. It should pass the checkpoint folder path only.
"save_format="tf" " is used when you are saving complete model manually.
Attached relevant thread for reference.
Seems a valid bug to me.
Please post this issue on keras-team/keras repo for further assistance.
To know more see;
https://discuss.tensorflow.org/t/keras-project-moved-to-new-repository-in-https-github-com-keras-team-keras/1999 . Thank you!

Hi, @mohantym, thanks for looking into this!
Unfortunately, I struggle to follow your explanation. Also, I am not sure this pertains to keras only. I looked into what happens in the save_weights and load_weights methods and was able to reproduce it with checkpoints only using a single tf variable. The issue is with the root key when creating checkpoint objects, which keras uses in it's models. Have a look:
This crashes with the same error as before
import tensorflow as tf

ckpt = tf.train.Checkpoint(root=tf.Variable(1.))
path = ckpt.write('my_checkpoint')
ckpt.read(path)
ckpt.write("my_checkpoint")

while this works (changed the name of the variable in the checkpoint from root to v)
import tensorflow as tf

ckpt = tf.train.Checkpoint(v=tf.Variable(1.))
path = ckpt.write('my_checkpoint')
ckpt.read(path)
ckpt.write("my_checkpoint")

Similarly this crashes with the error
import tensorflow as tf

inputs = tf.keras.Input(shape=(3,))
x = tf.keras.layers.Dense(4, activation=tf.nn.relu)(inputs)
outputs = tf.keras.layers.Dense(5, activation=tf.nn.softmax)(x)
model = tf.keras.Model(inputs=inputs, outputs=outputs)

ckpt = tf.train.Checkpoint(root=model)
path = ckpt.write('my_checkpoint')
ckpt.read(path)
ckpt.write("my_checkpoint")

And this works (changed the name from root to something else)
import tensorflow as tf

inputs = tf.keras.Input(shape=(3,))
x = tf.keras.layers.Dense(4, activation=tf.nn.relu)(inputs)
outputs = tf.keras.layers.Dense(5, activation=tf.nn.softmax)(x)
model = tf.keras.Model(inputs=inputs, outputs=outputs)

ckpt = tf.train.Checkpoint(model=model)
path = ckpt.write('my_checkpoint')
ckpt.read(path)
ckpt.write("my_checkpoint")

Ok @twerkmeister !
Thanks for sharing your observations
@SuryanarayanaY !
Could you look at this issue.
Thank you!

Hey @SuryanarayanaY, any news on this? Can I provided any additional context?

Hi @twerkmeister ,
Sorry for the delay due to Windows OS issues.
Since you are not mentioned GPU, I have tried with !pip install tensorflow-cpu==2.10 and could not found any error.
Please refer attachment below.
http://localhost:8889/nbconvert/html/58740-cpu.ipynb?download=false
As your are using Windows OS TF 2.11V wont be supported on windows native. Please refer source doc here.
Please confirm exact TF installation command you are using for 2.10V and Environment you are using for 2.11V.

Hey @SuryanarayanaY, this seems indeed to be limited to windows server 2019, which is what I tested on initially and the system we at rasa run our CI for windows. I just created a fresh windows server 2022 instance on gcloud and it didn't have the error. I also tested again on the Windows server 2019 instance installing with pip tensorflow-cpu==2.10.0 as you did, and I got the same error again.

Hi @twerkmeister ,
Thanks for the response. So can we conclude that the error exists on Windows 2019 server and upgrading to Windows server 2022 resolves this issue. It might be due to recent changes w.r.t windows support. Can we consider it as resolved?

Hey @SuryanarayanaY, in the end it's not about making our CI pass, but having our software run properly on our client's machines. Tensorflow's install docs says it's supported on Windows 7 or later which should include Windows Server 2019. Also, Windows server 2019 is officially supported until Jan 2024, so I suppose people would still be using it.

Thanks for reporting the issue, in order to find the root cause of the issue, could you please help us by trying with below  and let us know if you still find an issue.

Try with the Sequential model by replacing functional API.
Try providing absolute path instead of relative path.
Could you also try saving with Keras H5 format.

Hey @sachinprasadhs, thanks for reaching out.
We solved this issue by now for us by subclassing the keras model and using the learnings from this comment, so that the checkpoint is not using the root keyword. The same comment also shows that the issue comes from the root keyword in checkpoints and that it  fails even with a single variable, no model needed. So it looks to me that this is definitely a problem in TF for win server 2019, for whatever reason... It happens in our github CI machines with win server 2019 and it also happens in fresh vm instances on google cloud.
Unfortunatley, I can't devote more time to tracking this down, but I think there is plenty of info here in this thread already if you think this is an issue worth digging into.

@intel-tf-windows Could you please take a look?

@learning-to-play yeah working on it. It seems to be related to https://github.com/keras-team/keras/pull/13048

Hi, is this still an issue?

Hi @k-w-w, I had a fix for this issue through a PR https://github.com/tensorflow/tensorflow/pull/59633.
However, I was not able to create a PR to Keras GitHub to fix this issue due to the build failure of Keras on my local Windows machine.

Hi @nkovela1 Could you take a look at the PR #59633 and see if it can be added to Model.save_weights?

@k-w-w The PR can be added to Model.save_weights but it appears to be redundant.
The current save_weights implementation uses with h5py.File(filepath, "r") as f: which should automatically open and close the associated H5 file.  Do we have a reason for why this extra close statement within the file scope is necessary?

Hi @nkovela1, thank you for looking into it. Could you please replicate the issue on your end and confirm if the issue does not occur without the PR?

@mraunak Just reproduced the issue on my side and the code passes without errors, thanks!

Hi @k-w-w. I believe this issue is resolved for the latest TF version. Hence, it can be closed

Thanks @mraunak and @nkovela1!


Tooltips

Todo:

[X] Notes
[X] Arcs
[X] Chains
[x] Events
[x] CustomEvents
[x] BPMEvents
[X] Obstacles
[ ] Settings (lots of stuff)

Merging and touching up on my local environment, might take a bit

Merged manually

Oh, i wasnt done


Update plugin

hey @gev2002 - I think I want to use the image labeler/object detector plugin here as a showcase for FP plugins in the documentation.
I was just wondering if you could:

update the options to be passed to the initializer instead of the callback itself, that way its better memory controlled
also show the direct usage of the FP (not only your camera wrapper) in the README
and use the Frame's coordinate system

That'd be huge - I'll then use this as an example to explain how plugins work. Thank you!

hey @gev2002 - I think I want to use the image labeler/object detector plugin here as a showcase for FP plugins in the documentation.
I was just wondering if you could:

update this plugin like the face detector plugin to use the options on init, not on plugin call
also show the direct usage in the README
and use the Frame's coordinate system

That'd be huge - I'll then use this as an example to explain how plugins work. Thank you!

Yes, I will do it Immediately.

no stress! :)

the first point is the same as @rodgomesc has pointed out in https://github.com/gev2002/react-native-vision-camera-v3-face-detection/issues/1 - only configure this in initialize, then maybe create a hook to init the plugin like useImageLabeler(...) - see my vision-camera-resize-plugin for an example :)

@mrousavy  Hey ! The plugin for Image Labeler is Ready for usage I updated plugin.