Password-Protect Account

Add the ability to add a password to protect an account file

+1 for that.
Could be nice a PIN or something like that when we open the app.

Add the ability to add a password to protect an account file

Exactly, if the password was used to encrypt the account file we could safely use services like Dropbox to sync the encrypted account file

On UI part, I think password entry could be added to the account settings dialog (but setting the password will require additional confirmation ofc).

if the password was used to encrypt the account file

If going for this approach, one should not use the PIN/password directly but instead derive a more secure key using key derivation functions.

The problem with password-protected documents is that yes the password will be encrypted in the database, but when the user types said password in a textbox (on both WinUI and GNOME) it will be stored in memory as plain text...until the password screen is cleared of course.
Now this is obviously hard, but there could be a sophisticated virus scanning memory and could see the password.
So again, the only way the password will be stolen is if an attacker has access to the internals of your memory, but the file and the password of the file remain encrypted so they will have no access to the password via the .nmoney file. Only if they had access to your memory at the time of you typing in the password, otherwise it's impossible to get the password.
But, this is a risk we will have to just accept if we want to implement this feature.

@nlogozzo In order to build a secure app, it is essential to define the threat vector which one protects against and where the protection fails.
In your described scenario where the attacker has complete access over the memory and also has knowledge on how to interpret the 0s and 1s in the memory, he will also have access over the decrypted parts of the database which is displayed to the user as part of the UI. I don't see a way around it and honestly in that scenario one usually has other more severe problems.
I still see huge benefits with this approach as it protects against an attacker accessing your file system or an attacker which gains access to your cloud provider where you store your (encrypted) .nmoney file.

Often one decrypts a file with a strong generated symmetric key and encrypts that key with a password derived key. This way, one doesn't need to rewrite the whole database on a password change and can also allow multiple passwords as a fallback to not lockout yourself. It is also possible to encrypt this symmetric key using hardware tokens like smart cards or YubiKey or similar. This way, even reading the password from memory is not enough as one also needs access to the hardware token.

Well, SQLite is very limited when it comes to passwords and encryption. It is possible thanks to SQLChiper...but it would only support one password per file at a time. Ofc that password can be changed with knowledge of the original password.
This is how it would be implemented through the SQLite library we are using: https://learn.microsoft.com/en-us/dotnet/standard/data/sqlite/encryption?tabs=netcore-cli

@fsobolev The password settings will obviously be placed in AccountSettingsDialog where:

The user can add a password at any time
The user can remove and change a password if one is set

Removing a password while ask for confirmation through a message box

There will only be buttons in AccountSettingsDialog for managing password. Getting a password will come from the PasswordDialog control that will have Current Password, New Password, and Confirm New Password fields.

Current Password will be grayed out when adding a password for the first time

If you could create some mockups for placement of the buttons in AccountSettingsDialog and PasswordDialog, that'd be great :)

I want to do password dialog a bit differently, I will create mockups

Account Settings Dialog
Password Prompt Dialog
Password Settings Dialog

Opening a password-protected account will create Password Prompt Dialog before loading an account. This dialog uses Adw.PasswordEntryRow.

It does not show its contents in clear text, does not allow to copy it to the clipboard, and shows a warning when Caps Lock is engaged. If the underlying platform allows it, AdwPasswordEntryRow will also place the text in a non-pageable memory area, to avoid it being written out to disk by the operating system.
It offer a way to reveal the contents in clear text.

Account Settings Dialog now contains "Set Password" row. Clicking on it will open Password Prompt Dialog if a password is already set to confirm that the person who wants to change the password is the same who opened the account, and then Password Settings Dialog will be opened.

Password Settings Dialog uses Adw.PasswordEntryRows too. The "Remove" button will only be visible if a password is already set. The "OK" button will only be active if both entries contain the same value. Warning message should probably be rephrased, I just wrote a short example. Pressing "Cancel" will open Account Settings Dialog. Pressing "Remove" or "OK" will close the dialog and show toast notification in account view with the message containing either "The password was removed" or "New password was set" respectively.

Work on this feature can be seen here: https://github.com/nlogozzo/NickvisionMoney/pull/272

https://github.com/nlogozzo/NickvisionMoney/releases/tag/2023.2.0-rc1-f1


Export the WrappedValidator constructor

Sam was mightily annoyed at the mob coding session yesterday that this constructor wasn't exported from Test.Tasty.Plutus.TestScript. That leaves toTestValidator as the only way to construct a WrappedValidator, but this function expects a typed validator. It can't be used to wrap an untyped Plutus validator that errors out instead of returning False.

Can't we just add a function like untypedToTestValidator that does this exact thing? Exporting the constructor is something I'd rather not do.

Sure, if you prefer.

Keep in mind that in order for tasty-plutus to decide if a properly terminated script actually "validates", it looks for a line of log "tasty-plutus: Pass". Therefore not any untyped validator can work with tasty-plutus out of the box. I suggest we have an untypedToTestValidator like this:
untypedToTestValidator ::
  (BuiltinData -> BuiltinData -> BuiltinData -> ()) -> WrappedValidator
untypedToTestValidator vl = WrappedValidator $ \d r p -> case vl d r p of
  () -> reportPass

@kozross Now that I think about it, why didn't we decide if a script succeeded based on whether it errors? That looks more straightforward than inspecting logs.

Additionally, simply exposing the WrappedValidator constructor won't enable you to construct a TestScript with an untyped validator - TestScript's constructors expect to have the CompileCode of a typed validator for dumping purposes. Maybe we need to make it a CompileCode of an existensial type?

@re-xyr The reason for this is that some scripts (given certain preconditions) would still run, but not end up in a state that we wanted. I definitely remember some issue around this being a problem, though it was quite a while ago. If you think we can avoid it while breaking no tests, it'd certainly make the code much simpler.

would still run, but not end up in a state that we wanted

What does "state" refer to here? As I know a typed script can have 3 outcomes: returning True, returning False, or error. Are there any extra pieces of information (except logs) that we can also obtain for a script run?

I definitely remember some issue around this being a problem, though it was quite a while ago

If you remember what are those issues, I can test that out.

If you think we can avoid it while breaking no tests

Yes! - see #199.

@re-xyr I guess I can't remember exactly at this stage - should have documented it! I'd suggest opening a PR with the proposed improved interface: feel free to do an API break if you think you need it. We can then get people to try it out, and if there's no weirdness, we can adopt it; if we uncover any weirdness that didn't arise under the original formulation, then we'll know.


refactor: add more unit tests

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


feat: improve indicators list

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


Hanged file streams

Hello guys, since we noticed something weird lately: some file streams where not closed,
I've started my quest to discover why.
This lead to the horrific branch f333ee619a81ccef0faaa7665efda54748c589b1 that i've just pushed in my fork, where i've built a WPF inspector to discover what was going on...
What i've discovered is that if we return AccessDenied in CreateFile there isn't a following call to Cleanup.
Also in Mirror.cs->CreateFile an actual file stream has already been created and will never be disposed because of that.
In my branch i've added some logic to avoid leaving the stream there, but maybe calling Cleanup even if we returned AccessDenied could be a nicer idea!

Hello @TrabacchinLuigi ,
Return an error like AccessDenied make the kernel request stop. It mean there is going to be no cleanup / close because normally there is nothing to clean.
Does that mean somewhere in our createfile we have a valid stream created but we return acces denied ?

On the line I've linked in the actual implementation of mirror.cs, there it could happen

Oh ! So it could be something like the stream open but File.SetAttributes fail ?

Exactly!

In my branch you can also see the pinvoke for setting the file times, I'm still thinking how to share this

Your fork changes: https://github.com/dokan-dev/dokan-dotnet/compare/master...TrabacchinLuigi:Feature-StructuredContext?expand=1
Having SetFileTimeUtc could be interesting yes !
What does the tools is doing ?
There is lots of changes in the mirror like TryAndLog that seems to do the same as DokanOperationProxy that try catch all operations ?
About FileStream leak during File.SetAttributes, this is our fault, we should clean the Context if we return an error.

the tool group the calls by context, and change colors to make it clear if closed or cleanup is called, or if an exception has been thrown, then starts a timer to clean the cleaned/closed groups if they don't have any errors, kind of logger but visual one

Ok I see !
Do you think this could be integrated in DokanNet.Tests without the graphic part ?

The fix ? sure, i will make a pull request as soon as i have a little spare time!

The fix is interesting but I was meaning the WPF tools you made if it could be integrated in DokanNet.Tests without the graphic part to make it integrated to the CI build.

Uhm ... maybe adding some events we could write some tests ... need to think about it ...

@TrabacchinLuigi can this be closed ?

I'm opening a pull request to fix mirror.cs... BUT i think that  returning AccessDenied should not prevent CleanUp from being called... it's misleading...
Also i can't think how to make this testable, because we are saying

you should not close your streams because we gonna clean them up

but then i'm expecting ppl who implement IDokanOperations to close their streams in particular cases ...
Maybe we should use the context in a different way, enforcing every call to open/close their streams, maybe the context should be a dictionary of "filesystem handles" (a dictionary of relative paths) that we consider opened, instead of actual streams...

OK I see what you mean with the PR.
Cleanup will not be called because CreateFile failed, for the kernel, this means no context could be created so nothing to cleanup.
Here it is the mirror fault to not cleanup properly. We should check before to return if a context exists and if we are in failure, if so, need to dispose as you did but also handle all other cases.

Maybe if no more calls needed and context is not null call cleanup?

P.s. maybe we can enforce that context should be disposable and dispose it when it's out of context?

We try to follow the kernel workflow, adding an extra call would probably create more issues. All implementation should handle their context cleanly => Create in CreateFile and cleanup in cleanup.
Context is linked to dokan C library, we cannot know if it is disposable or not.

Hi @TrabacchinLuigi ,
I hope I have answered your question, do not hesitate otherwise and I will reopen the issue.


TUF PoC

Build TUF PoC on top of repositories to confirm viability. Get some feedback/suggestions for improvement on PoC.

This is now done in the notary project.
Good job!


[vcpkg ci] Fix pipeline finally

Fixes https://github.com/microsoft/vcpkg/pull/20218#issuecomment-921895194

Thanks :)


Will future versions of Copilot generate and optimize code based on all files in the directory, as well as answer code-related questions?

Please see: https://code.visualstudio.com/docs/copilot/workspace-context


Use monotonic time for benchmark timing

time.Now() returns real time, which can jump occasionally. https://github.com/gavv/monotime, for example, provides a monotonic Now() function, which is preferable for timing measurements.

Seems like it is in 1.9 - basically, time.Now() will internally include both wall time and monotonic information, and will use whichever is more appropriate for a given situation - so doing time.Sub or time.Since will use the monotonic time, and we won't need to update our code at all.

I'm gonna go ahead and close this - feel free to re-open if there  are still concerns.


k8s: client: use common client

Instead of creating a client in the relevant packages, accept a client from the caller and reuse the common client.
Fixes: #185

it seems to me the less ugly option is to push the definition of Handle in the resourcemonitor package.


[Identity] Reverting the Implicit Auth removal from InteractiveBrowserCredential

This PR uses git revert to revert commit https://github.com/Azure/azure-sdk-for-js/commit/160c41dbb960bab20e8a549f83f71b71a2b4c8c5#diff-be6f001a81a6f9b1d1be33c6bde0c13d358f3f01522e9a0544b42102e3701f3a
I skipped the CHANGELOG changes intentionally. We'll need to add a new CHANGELOG entry when we switch back to v1.
For https://github.com/Azure/azure-sdk-for-js/issues/14909

We decided not to revert v2 to v1.

For anyone curious about details, please see https://github.com/Azure/azure-sdk-for-js/issues/14909#issuecomment-827980215


fix(core): extracting composite key

closes #3599

Hi @B4nan, actually, I don't have any clue, why this test fails constantly. Does it somehow relate to jest mocking library, wdyt? It works locally without any issues

closing in favour of #3628


adjust GLIP to pytorch1.11.0 or higher version

maskrcnn_benchmark is still using THC, however this module has already been removed in the latest pytorch version like torch1.11.0 this will cause compile error when install maskrcnn_benchmark as dynamic library.
for example, in maskrcnn_benchmark/csrc/cuda/ROIAlign_cuda.cu
#include <THC/THC.h>
#include <THC/THCAtomics.cuh>
#include <THC/THCDeviceUtils.cuh>

I recommended make some adjustment to this changes

@amira-essawy No. you have to use lower version of pytorch as both runtime and compile environment.

@SunzeY I tried using the provided containers but I still have the same problem. Have you managed to run it?

@amira-essawy sorry, I didn't try the provided environment. I recommend find same issue in mask_rcnn_benchmark to solve this problem.

issue, maybe this answer can solve the problem. I solve it.


Add single quote to recording unsafe chars

One recent scenario breaks go get.

/azp run

/azp run


kubefirst upgrade to 2.4.6 - introduces rootless talos distro to the mgmt cluster on civo github and civo gitlab

Thank you for wanting to submit a Pull Request to the Civo Kubernetes Marketplace repository!
If your pull request concerns an existing Marketplace application, please make sure you have:

[x] Notified the Maintainer of the application in this pull request so that they are aware of your proposal.
[x] Outlined the changes you are proposing, and the reasons these are required (e.g. stability, compatibility with new versions of Kubernetes implementations, etc).
[x] Tested that the application works with the proposed updates applied (including a screenshot).
[x] Updated the version number of the app if that has changed.

screenshots are available on our downstream public fork
https://github.com/kubefirst/kubernetes-marketplace/pull/6


bungeechat permission

https://github.com/AuraDevelopmentTeam/BungeeChat2/issues/24#issuecomment-328883779

It's issue reports like this which makes me think a template is needed. (I don't like templates.)
So, can you please actually put some effort into your issue reports. The bare minimum I need is:

A clear explanation of what the issue is
An example
How it can be reproduced

It looks like, the problem is solved @lucko

this in no a solved bug
i have "server: global" in bungee server luckperms config
and "server: global" in spigot server lucperms config
see
https://gist.github.com/mat41997/6f9a6186be5d29c496640537062d403f
i use command
/lp group default permission set bungeechat.command.msg

and not work

This command should work

You need to use /lpb.


Optimize performances of glimpse() by adding a LIMIT statement

By running explain on a call to the glimpse function, I've realized that it queries the whole table ("SELECT * FROM mytable" ), while it would be much more efficient to query just the first lines of the table ("SELECT * FROM mytable LIMIT 10").
In fact, running mytable %>% head %>% glimpse runs much faster than mytable %>% glimpse.
What would be needed to change this behaviour, and add a "LIMIT 10" to the query?
> spark_version <- "2.1.0"
> sc <- spark_connect(master = "local", version = spark_version)

> mytable = data.frame(x=rnorm(100)) %>% copy_to(sc, .)
> mytable %>% glimpse %>% explain
Observations: ??
Variables: 1
$ x <dbl> 0.46503227, 0.14146764, 0.33220509, -0.15956371, 1.29380242, -1.4...
<SQL>
SELECT *
FROM `sparklyr_5b0658e82f67`

<PLAN>

Thanks,
Gio

This is already done at https://github.com/tidyverse/tibble/blob/master/R/glimpse.R#L45

Fixed by https://github.com/tidyverse/tibble/commit/4368f401a8757a18fcebe3f6b718f7d32df7e8b6


又crash了 怎么个回事? 怎么又crash了 一分钟内crash了两次

Issue Type: Bug
又crash了 怎么个回事? 怎么又crash了 一分钟内crash了两次
VS Code version: Code 1.33.1 (51b0b28134d51361cf996d2f0a1c698247aeabd8, 2019-04-11T08:22:55.268Z)
OS version: Darwin x64 19.6.0

looks that you're not using the latest vscode , you can try upgrade your vscode. then have a try.

Closing as not actionably without more information


BTW YOUR DISCORD IS NOT AVALIBLE ANYMORE

@Goku504pro Discord link is updated, finally they let me make a permanent link
https://discord.gg/gGUufTdpgG
Elite Dangerous isn't supported atm, maybe one day.
Last time I looked at that game I wasn't even sure how to load it up :D


Fix for handing errored out openai response to not include them in response packet sent to LSE

Commit https://github.com/HumanSignal/infra/commit/9c3f31d796c957eb8e006269f8a88216132a509b is created.

Commit https://github.com/HumanSignal/infra/commit/248ab9ae131a663c272469913d1d58867ae8c180 is created.

Codecov Report
Attention: Patch coverage is 0% with 3 lines in your changes are missing coverage. Please review.

Project coverage is 45.06%. Comparing base (84bb80e) to head (358c81f).

Files
Patch %
Lines

adala/runtimes/_openai.py
0.00%
3 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #105      +/-   ##
==========================================
+ Coverage   45.03%   45.06%   +0.02%
==========================================
  Files          39       39
  Lines        1783     1782       -1
==========================================
  Hits          803      803
+ Misses        980      979       -1

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


Navigation

Attached below is my draft of taking the material example content and giving it a treatment with Carbon’s design kit.

carbon-nav.zip

Nice @seejamescode! Do you want to implement it?

I’m sorry, but I have my own Gatsby site due this month :/


Screen blank after installing drivers

Thanks for simplifying driver installation process. Unfortunately my display is blank after the installation. I can log in remotely and successfully run nvidia-smi and execute CUDA scripts. I'm a bit of a newbie so guidance would be appreciated.
NVIDIA driver version: 470.57.02
RHEL kernel version: 8.4
modularity stream: latest
modularity profile: default

@namupatel it's been awhile so closing this. Feel free to re-open if you are still experiencing this issue.


Document libltdl7 dependency

After trying the 0.3 linux build it failed to load because of a missing libltdl.so.7. It was fixed by installing
apt-get install libltdl7 but could be useful to document it somewhere.
Ideally, it would be nice if I didn't have to include the dependency :)

Isn't apt-get install libltdl-dev help?

Hi BenHall
The goal is to provide debs (and rpms), but the team has no expertise in creating them and every time I get some time to spend on it I end up making slow progress due to pretty appalling, fragmented, documentation.
We can in the meantime add documentation on the dependencies.

hi @BenHall, we have a static linux build that you can try for 0.3 and we're actively trying to improve our release process.
As @HuKeping notes, we list apt-get install libltdl-dev as a dependency for [building notary ](apt-get install libltdl-dev).
I'll close this issue for the time being, but feel free to open another issue or re-open this one if you have further issues or suggestions :)


Issue running says "No Module named request"

when I try to run the program I am getting the error when trying to import urllib.request it says no Module named request

This tool only works with Python 3.

okay thank you for quickly getting back to me


bp_me_axil_client module drops mesg

Branch / Commit Hash
top_dev (a6a0d84)
Area
bp_me_axil_client module:
https://github.com/black-parrot/black-parrot/blob/top_dev/bp_me/src/v/network/bp_me_axil_client.sv#L121
Current behavior
If state_r == e_wait, and a master is sending an AXIL write to its client, then according to line 125~127, master should be able to get all the required ready signals to complete its write operation. However, if at this moment io_cmd_ready_and_i is not ready yet, then the data that meant to be sent will be lost.

Thanks for the report, aware of the issue. Should be fixed this weekend

See #1014

Thank you so much!

Fixed


🐛 BUG: Any import from wrangler breaks worker building (Javascript)

Which Cloudflare product(s) does this pertain to?
Wrangler
What version(s) of the tool(s) are you using?
3.68.0
What version of Node are you using?
v20.16.0
What operating system and version are you using?
Ubuntu 24.04 LTS
Describe the Bug
Observed behavior
Please describe.
Initializing a hello world worker in javascript works.
Adding an import wrangler statement causes building/deploying to no longer work.
Expected behavior
To be able to import from wrangler without breaking deployment.
Steps to reproduce
Please provide the following:

A minimal working subset of your worker code

import 'wrangler';

export default {
	async fetch(request, env, ctx) {
		return new Response('Hello World!');
	},
};

A minimal working subset of your wrangler.toml

#:schema node_modules/wrangler/config-schema.json
name = "simpletest"
main = "src/index.js"
compatibility_date = "2024-07-29"
compatibility_flags = ["nodejs_compat"]

Commands used to start your local dev server, including custom env and cli args
wrangler dev
Steps to be performed in the browser, curl commands, or a test we can run that reliably fails (at least a percent of the time)

A git repo we can clone and run a test suite on, or which has a README with step-by-step instructions, is even better. In this case, please use the field below to provide a link to the minimal repro.
Please provide a link to a minimal reproduction
No response
Please provide any relevant error logs
...
✘ [ERROR] Could not resolve "assert"

    node_modules/undici/lib/fetch/util.js:7:23:
      7 │ const assert = require('assert')
        ╵                        ~~~~~~~~

  The package "assert" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util/types"

    node_modules/undici/lib/fetch/util.js:8:33:
      8 │ const { isUint8Array } = require('util/types')
        ╵                                  ~~~~~~~~~~~~

  The package "util/types" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "stream/web"

    node_modules/undici/lib/fetch/util.js:970:29:
      970 │     ReadableStream = require('stream/web').ReadableStream
          ╵                              ~~~~~~~~~~~~

  The package "stream/web" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util"

    node_modules/undici/lib/fetch/webidl.js:3:26:
      3 │ const { types } = require('util')
        │                           ~~~~~~
        ╵                           "./util"

  The package "util" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util"

    node_modules/undici/lib/fileapi/util.js:14:26:
      14 │ const { types } = require('util')
         │                           ~~~~~~
         ╵                           "./util"

  The package "util" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "string_decoder"

    node_modules/undici/lib/fileapi/util.js:15:34:
      15 │ const { StringDecoder } = require('string_decoder')
         ╵                                   ~~~~~~~~~~~~~~~~

  The package "string_decoder" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "buffer"

    node_modules/undici/lib/fileapi/util.js:16:25:
      16 │ const { btoa } = require('buffer')
         ╵                          ~~~~~~~~

  The package "buffer" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "assert"

    node_modules/undici/lib/handler/RedirectHandler.js:5:23:
      5 │ const assert = require('assert')
        ╵                        ~~~~~~~~

  The package "assert" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "events"

    node_modules/undici/lib/handler/RedirectHandler.js:7:19:
      7 │ const EE = require('events')
        ╵                    ~~~~~~~~

  The package "events" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "assert"

    node_modules/undici/lib/handler/RetryHandler.js:1:23:
      1 │ const assert = require('assert')
        ╵                        ~~~~~~~~

  The package "assert" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util"

    node_modules/undici/lib/mock/mock-client.js:3:30:
      3 │ const { promisify } = require('util')
        ╵                               ~~~~~~

  The package "util" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util"

    node_modules/undici/lib/mock/mock-pool.js:3:30:
      3 │ const { promisify } = require('util')
        ╵                               ~~~~~~

  The package "util" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "http"

    node_modules/undici/lib/mock/mock-utils.js:12:33:
      12 │ const { STATUS_CODES } = require('http')
         ╵                                  ~~~~~~

  The package "http" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util"

    node_modules/undici/lib/mock/mock-utils.js:17:12:
      17 │ } = require('util')
         ╵             ~~~~~~

  The package "util" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "stream"

    node_modules/undici/lib/mock/pending-interceptors-formatter.js:3:30:
      3 │ const { Transform } = require('stream')
        ╵                               ~~~~~~~~

  The package "stream" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "console"

    node_modules/undici/lib/mock/pending-interceptors-formatter.js:4:28:
      4 │ const { Console } = require('console')
        ╵                             ~~~~~~~~~

  The package "console" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "url"

    node_modules/undici/lib/proxy-agent.js:4:24:
      4 │ const { URL } = require('url')
        ╵                         ~~~~~

  The package "url" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "diagnostics_channel"

    node_modules/undici/lib/websocket/connection.js:3:35:
      3 │ const diagnosticsChannel = require('diagnostics_channel')
        ╵                                    ~~~~~~~~~~~~~~~~~~~~~

  The package "diagnostics_channel" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "worker_threads"

    node_modules/undici/lib/websocket/events.js:5:32:
      5 │ const { MessagePort } = require('worker_threads')
        ╵                                 ~~~~~~~~~~~~~~~~

  The package "worker_threads" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "stream"

    node_modules/undici/lib/websocket/receiver.js:3:29:
      3 │ const { Writable } = require('stream')
        ╵                              ~~~~~~~~

  The package "stream" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "diagnostics_channel"

    node_modules/undici/lib/websocket/receiver.js:4:35:
      4 │ const diagnosticsChannel = require('diagnostics_channel')
        ╵                                    ~~~~~~~~~~~~~~~~~~~~~

  The package "diagnostics_channel" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util"

    node_modules/undici/lib/websocket/websocket.js:23:26:
      23 │ const { types } = require('util')
         │                           ~~~~~~
         ╵                           "./util"

  The package "util" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "fs"

    node_modules/workerd/lib/main.js:40:32:
      40 │ var import_fs = __toESM(require("fs"));
         ╵                                 ~~~~

  The package "fs" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "os"

    node_modules/workerd/lib/main.js:41:32:
      41 │ var import_os = __toESM(require("os"));
         ╵                                 ~~~~

  The package "os" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "path"

    node_modules/workerd/lib/main.js:42:34:
      42 │ var import_path = __toESM(require("path"));
         ╵                                   ~~~~~~

  The package "path" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "url"

    node_modules/wrangler/wrangler-dist/cli.js:59:30:
      59 │     import_meta_url = require("url").pathToFileURL(__filename);
         ╵                               ~~~~~

  The package "url" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "assert"

    node_modules/wrangler/wrangler-dist/cli.js:490:27:
      490 │     var assert31 = require("assert");
          ╵                            ~~~~~~~~

  The package "assert" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "http"

    node_modules/wrangler/wrangler-dist/cli.js:492:38:
      492 │     var { IncomingMessage } = require("http");
          ╵                                       ~~~~~~

  The package "http" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "stream"

    node_modules/wrangler/wrangler-dist/cli.js:493:26:
      493 │     var stream2 = require("stream");
          ╵                           ~~~~~~~~

  The package "stream" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "net"

    node_modules/wrangler/wrangler-dist/cli.js:494:23:
      494 │     var net3 = require("net");
          ╵                        ~~~~~

  The package "net" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "buffer"

    node_modules/wrangler/wrangler-dist/cli.js:496:34:
      496 │     var { Blob: Blob6 } = require("buffer");
          ╵                                   ~~~~~~~~

  The package "buffer" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util"

    node_modules/wrangler/wrangler-dist/cli.js:497:27:
      497 │     var nodeUtil = require("util");
          ╵                            ~~~~~~

  The package "util" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "querystring"

    node_modules/wrangler/wrangler-dist/cli.js:498:44:
      498 │     var { stringify: stringify2 } = require("querystring");
          ╵                                             ~~~~~~~~~~~~~

  The package "querystring" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "stream/web"

    node_modules/wrangler/wrangler-dist/cli.js:783:34:
      783 │         ReadableStream2 = require("stream/web").ReadableStream;
          ╵                                   ~~~~~~~~~~~~

  The package "stream/web" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "worker_threads"

    node_modules/wrangler/wrangler-dist/cli.js:3012:76:
      3012 │ ...ageChannel2, receiveMessageOnPort } = require("worker_threads");
           ╵                                                  ~~~~~~~~~~~~~~~~

  The package "worker_threads" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "perf_hooks"

    node_modules/wrangler/wrangler-dist/cli.js:3253:48:
      3253 │     var { performance: performance2 } = require("perf_hooks");
           ╵                                                 ~~~~~~~~~~~~

  The package "perf_hooks" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "util/types"

    node_modules/wrangler/wrangler-dist/cli.js:3256:35:
      3256 │     var { isUint8Array } = require("util/types");
           ╵                                    ~~~~~~~~~~~~

  The package "util/types" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "events"

    node_modules/wrangler/wrangler-dist/cli.js:5714:32:
      5714 │     var EventEmitter5 = require("events");
           ╵                                 ~~~~~~~~

  The package "events" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "tls"

    node_modules/wrangler/wrangler-dist/cli.js:5967:26:
      5967 │             tls = require("tls");
           ╵                           ~~~~~

  The package "tls" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "async_hooks"

    node_modules/wrangler/wrangler-dist/cli.js:9346:36:
      9346 │     var { AsyncResource } = require("async_hooks");
           ╵                                     ~~~~~~~~~~~~~

  The package "async_hooks" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "console"

    node_modules/wrangler/wrangler-dist/cli.js:10732:40:
      10732 │     var { Console: Console2 } = require("console");
            ╵                                         ~~~~~~~~~

  The package "console" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "zlib"

    node_modules/wrangler/wrangler-dist/cli.js:12847:23:
      12847 │     var zlib = require("zlib");
            ╵                        ~~~~~~

  The package "zlib" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "string_decoder"

    node_modules/wrangler/wrangler-dist/cli.js:14277:52:
      14277 │ ... { StringDecoder: StringDecoder2 } = require("string_decoder");
            ╵                                                 ~~~~~~~~~~~~~~~~

  The package "string_decoder" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "fs"

    node_modules/wrangler/wrangler-dist/cli.js:29751:29:
      29751 │           var fs26 = require("fs"), ia = require("path");
            ╵                              ~~~~

  The package "fs" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "path"

    node_modules/wrangler/wrangler-dist/cli.js:29751:49:
      29751 │           var fs26 = require("fs"), ia = require("path");
            ╵                                                  ~~~~~~

  The package "path" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "https"

    node_modules/wrangler/wrangler-dist/cli.js:35202:25:
      35202 │     var https3 = require("https");
            ╵                          ~~~~~~~

  The package "https" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "os"

    node_modules/wrangler/wrangler-dist/cli.js:52007:23:
      52007 │     var os12 = require("os");
            ╵                        ~~~~

  The package "os" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "tty"

    node_modules/wrangler/wrangler-dist/cli.js:52008:23:
      52008 │     var tty3 = require("tty");
            ╵                        ~~~~~

  The package "tty" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "module"

    node_modules/wrangler/wrangler-dist/cli.js:52902:14:
      52902 │       require("module").builtinModules,
            ╵               ~~~~~~~~

  The package "module" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "child_process"

    node_modules/wrangler/wrangler-dist/cli.js:60812:22:
      60812 │     var cp2 = require("child_process");
            ╵                       ~~~~~~~~~~~~~~~

  The package "child_process" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "readline"

    node_modules/wrangler/wrangler-dist/cli.js:98530:28:
      98530 │     var readline6 = require("readline");
            ╵                             ~~~~~~~~~~

  The package "readline" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "timers"

    node_modules/wrangler/wrangler-dist/cli.js:110155:43:
      110155 │     var import_timers = __toModule(require("timers"));
             ╵                                            ~~~~~~~~

  The package "timers" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "timers/promises"

    node_modules/wrangler/wrangler-dist/cli.js:110156:47:
      110156 │ ...ar import_promises27 = __toModule(require("timers/promises"));
             ╵                                              ~~~~~~~~~~~~~~~~~

  The package "timers/promises" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "fs/promises"

    node_modules/wrangler/wrangler-dist/cli.js:133163:47:
      133163 │     var import_promises32 = __toModule(require("fs/promises"));
             ╵                                                ~~~~~~~~~~~~~

  The package "fs/promises" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "process"

    node_modules/wrangler/wrangler-dist/cli.js:149441:38:
      149441 │ var import_process6 = __toESM(require("process"));
             ╵                                       ~~~~~~~~~

  The package "process" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "domain"

    node_modules/wrangler/wrangler-dist/cli.js:195845:29:
      195845 │ var domain = __toESM(require("domain"));
             ╵                              ~~~~~~~~

  The package "domain" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "inspector"

    node_modules/wrangler/wrangler-dist/cli.js:197087:32:
      197087 │     const { Session } = require("inspector");
             ╵                                 ~~~~~~~~~~~

  The package "inspector" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "fs"

    node_modules/youch/src/Youch.js:12:19:
      12 │ const fs = require('fs')
         ╵                    ~~~~

  The package "fs" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "path"

    node_modules/youch/src/Youch.js:13:21:
      13 │ const path = require('path')
         ╵                      ~~~~~~

  The package "path" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

✘ [ERROR] Could not resolve "url"

    node_modules/youch/src/Youch.js:16:34:
      16 │ const { fileURLToPath } = require('url')
         ╵                                   ~~~~~

  The package "url" wasn't found on the file system but is built into node.
  Add "node_compat = true" to your wrangler.toml file and make sure to prefix the module name with "node:" to enable Node.js compatibility.

╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ [b] open a browser, [d] open Devtools, [l] turn off local mode, [c] clear console, [x] to exit                                                                                │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

✘ [ERROR] Failed to build

Why are you importing wrangler? What are you trying to do?

I was trying to access my d1 database. This was just for demonstration and the simplest I could make things for it to still break.
import { env } from 'wrangler';  also breaks deployment/running the server locally
This was my original code:
import { Router } from 'itty-router';
import { env } from 'wrangler'; // Import the env object

const router = Router();

router.get('/api/courses/:courseId', async (request) => {
    const courseId = request.params.courseId;

    try {
      // 1. Prepare the SQL Query
      const sql = `
        SELECT * FROM courses WHERE id = ?
      `;

      // 2. Execute the Query using the D1 binding
      const course = await env.DB.prepare(sql).bind(courseId).first();

      // 3. Handle the Case Where the Course is Not Found
      if (!course) {
        return new Response('Course not found', { status: 404 });
      }

      // 4. Return the Course Data as JSON
      return new Response(JSON.stringify(course), {
        headers: { 'Content-Type': 'application/json' },
      });

    } catch (error) {
      // 5. Handle Any Errors (e.g., database connection errors)
      return new Response('Error fetching course: ' + error.message, { status: 500 });
    }
});

// ... (your other routes will go here later)

export default {
  fetch: router.handle
};

toml
#:schema node_modules/wrangler/config-schema.json
name = "iai-backend"
main = "src/index.js"
compatibility_date = "2024-07-29"
compatibility_flags = ["nodejs_compat"]

[[d1_databases]]
binding = "DB"
database_name = "<mydbname>"
database_id = "<mydbid>"

I switched to Windows 11 and I'm getting the same errors with npm 10.8.1, Wrangler 3.68.0, and nodejs v20.16.0

I apologize, I think I was going about things completely wrong. I've never used workers before and was relying on ai to help as I couldn't find documentation for JavaScript only typescript.


bump v number to 0.4.3

Coverage remained the same at 96.474% when pulling 0fe986995b509654dc955c97f966fab78cc3304c on development into d94aade9635d6e428ac7e13f7dbdd3587fb59cff on master.


Add ONLY_MATCH_EMAIL flag

ref: https://github.com/appleboy/drone-telegram/issues/23

fixed by #17


Issues with Save & exit

The web app now on https://ips-lmu.github.io/EMU-webApp/ freezes and stops working in the proper way when pressing "clear". It also seems that data is not saved (but I am not sure about that).
I placed a video of capturing the issue here:
https://www.dropbox.com/s/hrve15bw32rvlj9/emu_error.mov?dl=0

Will be in next release. Thank for pointing it out!

No, sorry. The only reason was my hurry - and having both repositories up at the same time.
Sorry about that.


IPv6 should be disabled by default

What would you like to be added: Disable IPv6 in worker nodes by default
Why is this needed: There's no point having it enabled until https://github.com/aws/containers-roadmap/issues/835 is implemented

@raonitimo Could you please share some details on what's the issue you are facing and how it is affecting the workloads.
If you are referring to /proc/sys/net/ipv6/conf/all/disable_ipv6  flag, then its a kernel level property and unless the runtime is containerd on k8s version 1.21, workload shouldn't be impacted. Please let us know if our understanding is incorrect.

@ravisinha0506 Could you please share some impact details as mentioned in your post above if running with containerd runtime on K8s version 1.21 and Ipv6 enabled on hosts? We use tc to do a network chaos experiment by blocking the traffic from our pods. We have seen that once we block the TCP traffic for external dependency, the client pods make a connection using tcp6 for which we have not yet been able to figure out how to block tcp6 traffic using tc.


add support to BaseClient for blob upload

change BaseClientV2._http_response to accept bindata which is passed
directly to requests
add _Manifest.from_file to support loading a manifest from a file
then calling put_manifest
add BaseClientV2.put_blob based on implementation in python-dxf

Hello. Since this package appears to be abandoned, I forked it and made several improvements. This includes dropping support for v1 registries, and introducing first-class support for v2 manifests (including multi-arch manifests).
If you're still feeling up to it, I'd be happy to review an updated PR against my fork:
https://github.com/djmattyg007/dreg-client


Write variable statistics to raster format

TreeTally should accept a list of statistic names as argument to output to raster format.
Metrics to make available:

[x] count Number of returns above the minimum height
[ ] densitytotal total returns used for calculating cover
[ ] densityabove returns above heightbreak
[ ] densitycell Density of returns used for calculating cover
[x] min minimum value for cell
[x] max maximum value for cell
[x] mean mean value for cell
[x] mode modal value for cell
[x] stddev standard deviation of cell values
[ ] variance variance of cell values
[ ] cv coefficient of variation for cell
[ ] cover cover estimate for cell
[ ] abovemean proportion of first (or all) returns above the mean
[ ] abovemode proportion of first (or all) returns above the mode
[ ] skewness skewness computed for cell
[ ] kurtosis kurtosis computed for cell
[ ] AAD average absolute deviation from mean for the cell
[ ] p01 1st percentile value for cell (must be p01, not p1)
[ ] p05 5th percentile value for cell (must be p05, not p5)
[ ] p10 10th percentile value for cell
[ ] p20 20th percentile value for cell
[ ] p25 25th percentile value for cell
[ ] p30 30th percentile value for cell
[ ] p40 40th percentile value for cell
[ ] p50 50th percentile value (median) for cell
[ ] p60 60th percentile value for cell
[ ] p70 70th percentile value for cell
[ ] p75 75th percentile value for cell
[ ] p80 80th percentile value for cell
[ ] p90 90th percentile value for cell
[ ] p95 95th percentile value for cell
[ ] p99 99th percentile value for cell
[ ] iq 75th percentile minus 25th percentile for cell
[ ] 90m10 90th percentile minus 10th percentile for cell
[ ] 95m05 95th percentile minus 5th percentile for cell
[ ] r1count Count of return 1 points above the minimum height
[ ] r2count Count of return 2 points above the minimum height
[ ] r3count Count of return 3 points above the minimum height
[ ] r4count Count of return 4 points above the minimum height
[ ] r5count Count of return 5 points above the minimum height
[ ] r6count Count of return 6 points above the minimum height
[ ] r7count Count of return 7 points above the minimum height
[ ] r8count Count of return 8 points above the minimum height
[ ] r9count Count of return 9 points above the minimum height
[ ] rothercount Count of other returns above the minimum height
[ ] allcover (all returns above cover ht) / (total returns)
[ ] afcover (all returns above cover ht) / (total first returns)
[ ] allcount number of returns above cover ht 81
[ ] allabovemean (all returns above mean ht) / (total returns)
[ ] allabovemode (all returns above ht mode) / (total returns)
[ ] afabovemean (all returns above mean ht) / (total first returns)
[ ] afabovemode (all returns above ht mode) / (total first returns)
[ ] fcountmean number of first returns above mean ht
[ ] fcountmode number of first returns above ht mode
[ ] allcountmean number of returns above mean ht
[ ] allcountmode number of returns above ht mode
[ ] totalfirst total number of 1st returns
[ ] totalall total number of returns

Beginning to address these in #30, added Metrics to be able to variably add these as we make the methods for them

Added methods for all of the non-cover/density metrics along with a few extras from GridMetrics and CloudMetrics (quadratic and cubic means, l-moments).


Updated Butcher

Added all production option results, from 5-minutes to 1 day..
Reset dbStatusID to 0

Tested, works - Thanks!


Refactor image clustering example

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@e3504eb). Click here to learn what that means.
The diff coverage is 19.35%.

@@            Coverage Diff            @@
##             master      #85   +/-   ##
=========================================
  Coverage          ?   63.41%
=========================================
  Files             ?       19
  Lines             ?     1126
  Branches          ?        0
=========================================
  Hits              ?      714
  Misses            ?      412
  Partials          ?        0

Impacted Files
Coverage Δ

src/runner_.py
0% <0%> (ø)

src/utils.py
66.66% <15.38%> (ø)

src/ml/utils.py
66.66% <36.36%> (ø)

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 e3504eb...12406cb. Read the comment docs.


Optimized turbine performance advanced enhancer

import git
from datetime import datetime
Function to optimize wind turbine control
def optimize_wind_turbine_control(turbine_data):
# Implement optimization algorithm here
optimized_data = turbine_data  # Placeholder for actual optimization logic
return optimized_data
Function to optimize PCB trace design
def optimize_pcb_traces(pcb_data):
# Implement trace optimization logic here
optimized_pcb = pcb_data  # Placeholder for actual optimization logic
return optimized_pcb
Sample data for wind turbines and PCB traces
turbine_data = {"turbine1": {"yaw": 10, "pitch": 5}, "turbine2": {"yaw": 15, "pitch": 7}}
pcb_data = {"trace1": {"width": 0.5, "length": 10}, "trace2": {"width": 0.7, "length": 15}}
Optimize data
optimized_turbine_data = optimize_wind_turbine_control(turbine_data)
optimized_pcb_data = optimize_pcb_traces(pcb_data)
Commit and push to GitHub
repo = git.Repo('/path/to/your/repo')
repo.git.add(update=True)
repo.index.commit(f"Optimized wind turbine control and PCB traces on {datetime.now()}")
origin = repo.remote(name='origin')
origin.push()
print("Optimizations pushed to GitHub repository.")]()_

import { Camera } from 'expo-camera';
import { CameraView } from 'expo-camera/next';
import { CameraView } from 'expo-camera';
import { Camera } from 'expo-camera/legacy';
Before moving on to the next enhancements, let’s get a quick update on what has been improved in the new camera API ‘next’.
The expo-camera/next
The new expo-camera/next made several improvements over legacy expo-camera API
Re-written Android implementation using CameraX API (Recommended API by Google).
Improved barcode scanning reliability.
Made most configuration options available through props.
"Next" SQLite API is the default now
Another piece of good news is that expo-sqlite/next also has now become the default in Expo SDK 51, which has made significant improvements over the legacy sqlite package.
Here’s what’s new and better:
It’s designed to make the API more similar to the well-established databases used for websites and Node.js (Ex: MySQL, PostgreSQL).
This API is based on SQLite version 3.45.3 and includes both synchronous (sync) and asynchronous (async) methods, which means it can perform database operations both sequentially and concurrently.
It now supports prepared statements (pre-compiled SQL commands), update callbacks (functions that run after a database update), the Blob data type (used to store binary data), and allows for custom build flags (special settings) for SQLite, along with other improvements.
Similar to camera, the expo team has updated the import statement for the Expo sqlite package.
JAVASCRIPT
import * as SQLite from 'expo-sqlite';
import * as SQLite from 'expo-sqlite/next';
import * as SQLite from 'expo-sqlite';
import * as SQLite from 'expo-sqlite/legacy';

import git
from datetime import datetime
Function to optimize wind turbine control
def optimize_wind_turbine_control(turbine_data):
# Implement optimization algorithm here
optimized_data = turbine_data  # Placeholder for actual optimization logic
return optimized_data
Function to optimize PCB trace design
def optimize_pcb_traces(pcb_data):
# Implement trace optimization logic here
optimized_pcb = pcb_data  # Placeholder for actual optimization logic
return optimized_pcb
Sample data for wind turbines and PCB traces
turbine_data = {"turbine1": {"yaw": 10, "pitch": 5}, "turbine2": {"yaw": 15, "pitch": 7}}
pcb_data = {"trace1": {"width": 0.5, "length": 10}, "trace2": {"width": 0.7, "length": 15}}
Optimize data
optimized_turbine_data = optimize_wind_turbine_control(turbine_data)
optimized_pcb_data = optimize_pcb_traces(pcb_data)
Commit and push to GitHub
repo = git.Repo('/path/to/your/repo')
repo.git.add(update=True)
repo.index.commit(f"Optimized wind turbine control and PCB traces on {datetime.now()}")
origin = repo.remote(name='origin')
origin.push()
print("Optimizations pushed to GitHub repository.")]()_
{"is_simulated":1,"app_name":"com.apple.WebKit.WebContent","timestamp":"2024-11-29 00:24:36.00 -0600","app_version":"","slice_uuid":"07d64f36-3c77-3195-a423-c8e3ae1af8af","build_version":"86<IP_ADDRESS>.5","platform":2,"bundleID":"com.apple.WebKit.WebContent","share_with_app_devs":0,"is_first_party":1,"bug_type":"308","os_version":"iPhone OS 17.6.1 (21G93)","roots_installed":0,"name":"com.apple.WebKit.WebContent","incident_id":"3294556B-73F4-438C-933B-F9537F60DAAC"}
{
"uptime" : 1300,
"procRole" : "Unspecified",
"version" : 2,
"userID" : 501,
"deployVersion" : 210,
"modelCode" : "iPhone12,1",
"coalitionID" : 919,
"osVersion" : {
"isEmbedded" : true,
"train" : "iPhone OS 17.6.1",
"releaseType" : "User",
"build" : "21G93"
},
"captureTime" : "2024-11-29 00:24:36.8590 -0600",
"codeSigningMonitor" : 1,
"incident" : "3294556B-73F4-438C-933B-F9537F60DAAC",
"pid" : 816,
"cpuType" : "ARM-64",
"roots_installed" : 0,
"bug_type" : "308",
"procStartAbsTime" :<PHONE_NUMBER>2,
"procName" : "com.apple.WebKit.WebContent",
"procPath" : "/private/preboot/Cryptexes/OS/System/Library/ExtensionKit/Extensions/WebContentExtension.appex/com.apple.WebKit.WebContent",
"bundleInfo" : {"CFBundleVersion":"86<IP_ADDRESS>.5","CFBundleIdentifier":"com.apple.WebKit.WebContent"},
"parentPid" : 1,
"coalitionName" : "com.apple.mobilesafari",
"crashReporterKey" : "93d577136e77cbe1cdd723954471078b522f1ed0",
"wasUnlockedSinceBoot" : 1,
"isLocked" : 0,
"codeSigningValidationCategory" : 0,
"codeSigningTrustLevel" : 0,
"basebandVersion" : "5.00.00",
"isLightWeightCorpse" : 1,
"exception" : {"codes":"0x6000000000000007, 0x0000000000000009","reason":9,"message":"namespc 7 reason_code 0x0000000000000009","subtype":"GUARD_TYPE_USER","type":"EXC_GUARD","rawCodes":[6917529027641081863,9],"namespc":7},
"termination" : {"flags":518,"code":9,"namespace":"LIBXPC","indicator":"XPC_EXIT_REASON_FAULT"},
"faultingThread" : 0,
"threads" : [{"triggered":true,"id":22406,"threadState":{"x":[{"value":20480},{"value":293584896},{"value":6860668559621603795},{"value":14760133663930604962},{"value":6736035840},{"value":7602263030599123173},{"value":11761410468250263616},{"value":55172673760},{"value":55172673760},{"value":55163588672},{"value":0},{"value":8492818352},{"value":1},{"value":55164226752},{"value":55164305408},{"value":4300734464},{"value":20480},{"value":6170585760},{"value":10381378787036966720},{"value":55164226752},{"value":55164305408},{"value":0},{"value":0},{"value":6170585968},{"value":6345250821866691272},{"value":0},{"value":4294967296},{"value":0},{"value":55163588672}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4300734464},"cpsr":{"value":0},"fp":{"value":20480},"sp":{"value":3627952384},"esr":{"value":20480,"description":" Address size fault"},"pc":{"value":52,"matchesCrashFrame":0},"far":{"value":0}},"frames":[{"imageOffset":1357571392,"imageIndex":0},{"imageOffset":1691258840,"imageIndex":0},{"imageOffset":1691345824,"imageIndex":0},{"imageOffset":1691347616,"imageIndex":0},{"imageOffset":160712604,"imageIndex":0},{"imageOffset":160904632,"imageIndex":0},{"imageOffset":160087304,"imageIndex":0},{"imageOffset":160776848,"imageIndex":0},{"imageOffset":173983836,"imageIndex":0},{"imageOffset":173983944,"imageIndex":0},{"imageOffset":175450052,"imageIndex":0},{"imageOffset":1020188,"imageIndex":0},{"imageOffset":1008716,"imageIndex":0},{"imageOffset":1007848,"imageIndex":0},{"imageOffset":974896,"imageIndex":0},{"imageOffset":966852,"imageIndex":0},{"imageOffset":172489456,"imageIndex":0},{"imageOffset":174064532,"imageIndex":0},{"imageOffset":174064676,"imageIndex":0},{"imageOffset":174063700,"imageIndex":0},{"imageOffset":174049948,"imageIndex":0},{"imageOffset":464183776,"imageIndex":0},{"imageOffset":477837936,"imageIndex":0},{"imageOffset":477886988,"imageIndex":0},{"imageOffset":459953632,"imageIndex":0},{"imageOffset":499874532,"imageIndex":0},{"imageOffset":492028476,"imageIndex":0},{"imageOffset":491944108,"imageIndex":0},{"imageOffset":490939944,"imageIndex":0},{"imageOffset":490917424,"imageIndex":0},{"imageOffset":504984580,"imageIndex":0},{"imageOffset":507394672,"imageIndex":0},{"imageOffset":507398552,"imageIndex":0},{"imageOffset":136476724,"imageIndex":0},{"imageOffset":136476616,"imageIndex":0},{"imageOffset":136467096,"imageIndex":0},{"imageOffset":136463492,"imageIndex":0},{"imageOffset":136461528,"imageIndex":0},{"imageOffset":118770524,"imageIndex":0},{"imageOffset":118770224,"imageIndex":0},{"imageOffset":1691353508,"imageIndex":0},{"imageOffset":1691363100,"imageIndex":0},{"imageOffset":1691363580,"imageIndex":0},{"imageOffset":388551228,"imageIndex":0},{"imageOffset":388622544,"imageIndex":0},{"imageOffset":388616656,"imageIndex":0},{"imageOffset":388549548,"imageIndex":0},{"imageOffset":120103900,"imageIndex":0},{"imageOffset":731885908,"imageIndex":0}]}],
"usedImages" : [
{
"size" :<PHONE_NUMBER>,
"source" : "S",
"base" :<PHONE_NUMBER>,
"uuid" : "d3c1efa1-b4fd-355f-a25d-de635d87d6cc"
}
],
"legacyInfo" : {
"threadTriggered" : {
}
},
"trialInfo" : {
"rollouts" : [
],
"experiments" : [
]
},
"reportNotes" : [
"PC register does not match crashing frame (0x34 vs 0x1D0EAE540)"
]
}

{
    "permissions":  [
        "resourcemanager.organizations.get",
        "resourcemanager.organizations.setIamPolicy"
    ]
}

Response:

{
    "permissions": [
        "resourcemanager.organizations.get"


Missing postseason games?

Could anyone elucidate if they have a similar issue as me?
If I run the following code:
for year in range(2009,2017):
db = nfldb.connect()
q = nfldb.Query(db)
print "games played in ", year, ": ", len(q.game(season_type='Postseason', season_year=year).as_games())
which tells me how many postseason games were played, I get the following:
games played in  2009 :  11
games played in  2010 :  11
games played in  2011 :  11
games played in  2012 :  11
games played in  2013 :  11
games played in  2014 :  11
games played in  2015 :  5
games played in  2016 :  0
If search for regular season games, the numbers all match up.
Can I conclude the DB is missing the postseason? I've update the database with nfldb-update (after fixing the JAX and LAC issue) and the problem persists.
Cheers!

For 2015, you are missing the six games in nflgame\schedule.json referenced here: PR#256
For 2016, probably a case where your schedule was not updated while the postseason was in progress.
Maybe the easiest way to fix this is to replace your schedule.json with mine.

Thanks for the prompt response. I ended up rebuilding the 2015 and 2016 schedules as mentioned in another post, and it appears to be working well. I'll be sure to look at closed issues before posting next time (this is my first time using Git and I only looked at the open ones).

I'll be sure to look at closed issues before posting next time (this is my first time using Git and I only looked at the open ones).

Not your fault.  Presumably when issues get "closed" that means the issue has gone away.  With the packaged version of some of these files being so dated, though, some of those old issue tend to crop back up on new installations.

So I've run nflgame's update-players and it works fine. When I run this though:
db = nfldb.connect()
q = nfldb.Query(db)
jay = q.player(full_name="Jay Cutler").as_players()[0]
print jay
Jay Cutler is listed as being Chicago's QB, when he was recently traded to Miami. Do I need to take some steps for compatibility between running the nflgame update-players and accessing the database?

If anyone stumbles on this later, you can solve the above issue by resetting the last_roster_download metadata in the DB as follows. Then when you run nfldb-update, it will pull the correct roster using nflgame. To get the info into the DB, it's not enough to just run update-players on the nflgame side.
psql nfldb -c "SET TIME ZONE 'UTC'; UPDATE meta SET last_roster_download = '2000-01-01 00:00:00+00';"

Referencing Jay Cutler in a thread about postseason anything is probably where part of your problem lies.
But as you mention, an nfldb-update has to happen to update nfldb.  By default, the nflgame update will only occur once every twelve hours unless you tell it otherwise.  You can do this with --player-interval 0 to force a player update.
import nfldb
db = nfldb.connect()
q = nfldb.Query(db)
jay = q.player(full_name="Jay Cutler").as_players()[0]
print jay

Jay Cutler (MIA, QB)


List of Licenses: add a way to specify a few links

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Add parameters to force line size and line count.

Allow use to control line size and line count.  These will override the default parameters.

Added forced override parameters for line_size and line_count.  User values are put in user_line_count and user_line_size in create_report.  Then these values are checked in page_setup and allowed to override calculated values.  Added tests to test-system and test-report_spec.  Works good.


fix: twitter-opengraph

Thank you for your contribution to the KodaDot NFT gallery.
👇 _ Let's make a quick check before the contribution.
PR Type

[x] Bugfix
[ ] Feature
[ ] Refactoring

Context

[x] Closes #4965
[x] update polkadot packages
[x] adjust e2e test

Before submitting pull request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality
[ ] I've posted a screenshot of demonstrated change in this PR

Optional

[ ] I've tested it at </bsx/collection>
[ ] I've tested PR on mobile
[x] I've written unit tests 🧪
[ ] I've found edge cases

Had issue bounty label?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot 📸

[ ] My fix has changed something on UI; a screenshot is best to understand changes for others.

yes
pay 50 usd
@JustLuuuu available on beta in 5 min

😍 Perfect, I’ve sent the payout
💵 $50 @ 32.42 USD/KSM ~ 1.542 $KSM
🧗 DY4SQF2iD456tH89aQtz5wv1EV3BbSW8wKKuMcwbmXaj1pM
🔗 0x4b8b1905b21b620ea34d78d1bfb62e62fa01a3953530a0ac37f87dbd3d406ff0
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


ARTEMIS-1294 Reverted TimedBuffer timeout policy

(cherry picked from commit 9dbeadcbc96cf3e551be95c12ea1d1fb83823e6f)

can you close this please? I cherry-picked manually


Auto leave rooms and authentication.

Hi, thanks for this library.
I have an application with about 2 million users, and I am looking for alternatives to socket.io to reduce latency, and if possible save resources. I have seen some articles about this library and am amazed by the benchmarks and tests.
However, with socket-io there are two things I didn't find in doc if it is possible to do with this library.
1- When a user is disconnected, with socket.io automatically is removed from the rooms, and no message is sent to the disconnected socket. Is this the same with this library? And what happens when the connection goes down? Are there attempts to reconnect, or should this be done by the client?
2- I use authentication with database and socket.io, the user is authenticated, receives a token, and if his token is valid, his socket receives a user_id. Is it possible to use authentication with this library? If somehow an unidentified user could post to rooms / subscribes unauthorized I would be ruined.
Thanks for your time, your work is amazing!

1, yes but you can also just call unsubscribe All but yes it does auto remove disconnected sockets from rooms (here called topics)
2, yes the WebSocket has its http request passed in upgrade so you can do auth that way.
Reconnect you have to solve yourself but that's like 9 lines of JavaScript

#986 I apparently forgot to add that function.


Create ATM section on https://getmonero.org/community/merchants

Hi, please create an ATM section on https://getmonero.org/community/merchants
Also you could put a link to https://trovemat.com/ that can sell Monero for Fiat Cash. And soon will be able to dispence Fiat Cash for Monero.
Thank you!

+merchant
I'm not certain that we need a whole section for ATMs yet considering you'd be the only listing. Would it be okay if we listed it in Exchanges as Trovemat.com (ATM)?

I guess no problem if you add it to exchange.

Hi @amochkin Your ATMs and website look amazing! What a great product to offer! I'm reaching out to speak with you about adding a cryptocurrency to your ATM programming...could you send me a message 😄 Cheers! 🍻 I've already shared your link with a friend, and the crypto group thinks it's a great idea! ATMS support organic growth and develop the infrastructure that crypto is built upon!


utils.js security

In the util/utils.js file line 21 eval maybe execute malice code，

@zhiqiang-bianjie :wave: I'm on the team at GitHub responsible for delivering security vulnerability alerts. Is the irisnet-crypto package released to NPM or is it only installed via Git? Thank you!

@zhiqiang-bianjie 👋 I'm on the team at GitHub responsible for delivering security vulnerability alerts. Is the irisnet-crypto package released to NPM or is it only installed via Git? Thank you!

Currently only installed via git, may pass npm later


Polish license check script

What is the purpose of the change

When we check a candidate of source release, there is no maven wrapper.
Filter the result if a dependency does not have any dependencies.

Brief changelog
XXXXX
Verifying this change
Pass local test.
Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Make sure there is a GITHUB_issue field 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 [Dubbo-XXX] Fix UnknownException when host config not exist #XXX. Each commit in the pull request should have a meaningful subject line and body.
[x] 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. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Run mvn clean install -DskipTests=false & mvn clean test-compile failsafe:integration-test to make sure unit-test and integration-test pass.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #4736 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #4736      +/-   ##
============================================
- Coverage     63.97%   63.97%   -0.01%
  Complexity      451      451
============================================
  Files           769      769
  Lines         33178    33178
  Branches       5229     5229
============================================
- Hits          21225    21224       -1
  Misses         9531     9531
- Partials       2422     2423       +1

Impacted Files
Coverage Δ
Complexity Δ

.../apache/dubbo/qos/protocol/QosProtocolWrapper.java
70.73% <0%> (-12.2%)
0% <0%> (ø)

...ng/transport/dispatcher/all/AllChannelHandler.java
51.42% <0%> (-5.72%)
0% <0%> (ø)

.../org/apache/dubbo/remoting/ExecutionException.java
15.78% <0%> (-5.27%)
0% <0%> (ø)

...exchange/support/header/HeaderExchangeHandler.java
64.75% <0%> (-2.46%)
0% <0%> (ø)

...pache/dubbo/registry/support/AbstractRegistry.java
80.07% <0%> (-1.54%)
0% <0%> (ø)

...rg/apache/dubbo/common/timer/HashedWheelTimer.java
63.1% <0%> (+0.68%)
0% <0%> (ø)
:arrow_down:

...pache/dubbo/remoting/transport/AbstractServer.java
47.91% <0%> (+3.12%)
0% <0%> (ø)
:arrow_down:

...onfig/spring/extension/SpringExtensionFactory.java
85.36% <0%> (+4.87%)
0% <0%> (ø)
:arrow_down:

...mmon/threadpool/support/AbortPolicyWithReport.java
89.18% <0%> (+5.4%)
0% <0%> (ø)
:arrow_down:

.../remoting/transport/netty4/NettyClientHandler.java
68.42% <0%> (+7.01%)
0% <0%> (ø)
:arrow_down:

... and 1 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 2c92916...01fd180. Read the comment docs.


User requested help by asking for developer permissions

I think this may be someone looking for help with the interview? Is there a way to disable "Request developer account" from the User settings? Maybe we need to add the Feedback to every page?

@nonprofittechy Is there a way to disable "Request developer account" from the User settings?

https://docassemble.org/docs/config.html#user can request developer account

Fixed.


DSD-763: Notification a11y fixes

Fixes JIRA ticket DSD-763
This PR does the following:

Adds an aria-label to the Notification component.
Adds accessibility documentation for the Notification component.
Note: the aside and role="complementary" are both the same so using both is redundant and why role="complementary" is left out.

How has this been tested?
Locally and in the  DS test app.
Accessibility concerns or updates

This component itself is not an accessibility concern but how it is used is. We have to make it clear that it should not be used within header or footer HTML landmark elements. That is the actual accessibility issue of rendering a landmark inside another landmark. Even though this is the rule, rendering a Notification component inside a main landmark element is acceptable.

Checklist:

[ ] I have updated the Storybook documentation accordingly.
[ ] I have added relevant accessibility documentation for this pull request.
[ ] All new and existing tests passed.

Front End Review:

[ ] View the example in Storybook

Tugboat has finished building the preview for this pull request!
Link:

https://pr863-kcjqgayt2dq7bdtgr972dgykmyjmzlcd.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/62056b30f8ba3c5cfaa6e1e6

Tugboat has finished building the preview for this pull request!
Link:

https://pr863-kcjqgayt2dq7bdtgr972dgykmyjmzlcd.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/62056b30f8ba3c5cfaa6e1e6

Tugboat has finished building the preview for this pull request!
Link:

https://pr863-kcjqgayt2dq7bdtgr972dgykmyjmzlcd.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/62056b30f8ba3c5cfaa6e1e6

This has been updated based on the updated AC in https://jira.nypl.org/browse/DSD-763

Tugboat has finished building the preview for this pull request!
Link:

https://pr863-kcjqgayt2dq7bdtgr972dgykmyjmzlcd.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/62056b30f8ba3c5cfaa6e1e6


Replace itertools.izip

Currently, during the setup process, we get this error:-
ImportError: cannot import name 'izip' from 'itertools' (unknown location)
This comes due to izip package becoming obsolete in python 3. In Python 3, we can use zip instead of izip without importing anything to solve this problem.

Fixed with Python3 merge


update .wen binance

With this text: While Binance is, in fact, the largest exchange in the world, Ergo is only a few years old and step by step has been achieving all its goals, so eventually, sooner or later, they will inevitably list Ergo.

https://github.com/Eeysirhc/sigmabot/commit/ac1dd6306dab47fe8a84ef0eff5e30730be5e091


[Codegen] gen_pyi would change directory that leads to wrong directory to generate wheel

🐛 Describe the bug
This is the follow up of #344
If we move gen_pyi before setup function, we would encounter a problem that the working directory is moved to torchdata/datapipes due to the code in PyTorch Core.
https://github.com/pytorch/pytorch/blob/ea2e0e773b6c043f0e17962c5a236b9f87241761/torch/utils/data/datapipes/gen_pyi.py#L173-L176
I have to change directory back to the root if I run gen_pyi
Versions
main branch

See https://github.com/pytorch/data/blob/88b23334fad6991f15457293c65cfa8690bcb36f/setup.py#L89-L92

Another issue with the pyi gen. If torch is not installed into our environment and we call python setup.py clean, the setup script would raise ImportError because gen_pyi can not be imported from https://github.com/pytorch/data/blob/2623265ed3cfcbb039d8e0c28c183d2cdca1a4b6/setup.py#L19
What we should do is to move the import part into the if clause above and only import gen_pyi when the command is not clean


Manifest instructions are not clear enough

I am unable to follow the instructions
Cannot find the fields mentioned in documentation.
On comparing the manifest schema from Link
I was able to find some fields but not others (app base url).
You should have a color coded index to refer to the IDs too to make it easier to follow
This is harder than it should be! :(

Thanks for reporting this.
Can you help us with step in which you are facing issues.


WinAppDriver not able to work with winform Application

WinAppDriver not able to work with winform Application.
We are using WinAppDriver version 1.1 which fails to identify objects on Winforms giving 404 error.
Can you please provide the resolution for the same.
Code generated by WinAppUIRecorder is given below:
Console.WriteLine("LeftClick on "Logon" at (44,10)");
string xp2 = "//Pane[@Name ="Desktop
1"][@ClassName="#32769"]/Window[@AutomationId="Logon"][@Name="System
Login"]/Edit[@AutomationId="txtUser"][@Name="User:"]";
var winElem2 = session.FindElementByXPath(xp2);
if (winElem2 != null)
{
winElem2.Click();
}
else
{
Console.WriteLine($"Failed to find element {xp2}");
return;
}
            // KeyboardInput

VirtualKeys=""KLEINR0"Keys.Tab"Crawford1"" CapsLock=False
NumLock=False ScrollLock=False
Console.WriteLine("KeyboardInput
VirtualKeys=""KLEINR0"Keys.Tab"Craw"" CapsLock=False
NumLock=False ScrollLock=False");
winElem2.SendKeys("KLEINR0");
Below is the response which I received on WinAppDriver:
POST /session/3EFA9762-66A3-457F-B0AD-38336AA8F123/element HTTP/1.1
Accept: application/json, image/png
Content-Length: 32
Content-Type: application/json;charset=utf-8
Host: <IP_ADDRESS>:4723
{"using":"name","value":"User:"}
HTTP/1.1 404 Not Found
Content-Length: 139
Content-Type: application/json
{"status":7,"value":{"error":"no such element","message":"An element
could not be located on the page using the given search parameters."}}

If UIRecorder generated xpath is used, you should see response from WinAppDriver like the following:
{"using":"xpath","value":"/Pane[@ClassName="#32769"][@Name="Desktop 1"]/Pane[@ClassName="Progman"][@Name="Program Manager"]/List[@ClassName="SysListView32"][@Name="Desktop"]/ListItem[@Name="This PC"][starts-with(@AutomationId,"ListViewItem-")]"}
However your WinAppDriver response is: {"using":"name","value":"User:"}
Are you using the latest WinAppDriver?

Don't rely on the XML generated by the recorder.
Search the controls through recorder and create your own code to access the application elements.

Hi,
I am not using the XPath generated by the UIRecorder but using below code:
public class CMSSession
{
protected const string WindowsApplicationDriverUrl ="http://<IP_ADDRESS>:4723";
private const string CMSAppId = @"C:\Program Files (x86)\Crawford\CMS\CMSProxy.exe";
protected static WindowsDriver session;
    public static void Setup(TestContext context)
    {
        // Launch a new instance of CMS application
        if (session == null)
        {
            // Create a new session to launch CMS application
            DesiredCapabilities appCapabilities = new DesiredCapabilities();
            appCapabilities.SetCapability("app", CMSAppId);
           session = new WindowsDriver<WindowsElement>(new

Uri(WindowsApplicationDriverUrl), appCapabilities);
// Set implicit timeout to 1.5 seconds to make element
search to retry every 500 ms for at most three times
session.Manage().Timeouts().ImplicitWait =
TimeSpan.FromSeconds(5);
session.FindElementByName("I Agree").Click();
session.FindElementByName("User:").SendKeys("CROTHJ0");
}
I am using latest version of WinAppDriver v 1.0.1-Preview
I am able to launch the application and click on I Agree button but it fails to enter text on next screen objects like username and password.
Please do let me know if it supports winform application.
Below is the response which I received on WinAppDriver:
POST /session/3EFA9762-66A3-457F-B0AD-38336AA8F123/element HTTP/1.1
Accept: application/json, image/png
Content-Length: 32
Content-Type: application/json;charset=utf-8
Host: <IP_ADDRESS>:4723
{"using":"name","value":"User:"}
HTTP/1.1 404 Not Found
Content-Length: 139
Content-Type: application/json
{"status":7,"value":{"error":"no such element","message":"An element
could not be located on the page using the given search parameters."}}
If possible we can schedule a call to discuss the issues and solutions.
Thanks in Advance,
Sameer Sukhija

Dear Sameer,
I have used WinAppDriver for automation of a WinForms application of my own. I can tell for sure that the WinAppDriver supports WinForms.
I think the control which you're trying to access after the click operation is not visible yet.
After you click the "I Agree" button, try doing this:
System.Threading.Thread.Sleep(5000);
The implicit wait doesn't always work I suppose.
If adding a the sleep doesn't help, try using a different control property to search for the text-box. Maybe you could use AccessibilityID.

Hi,
I am not using the XPath generated by the UIRecorder but using below code:
public class CMSSession
{
protected const string WindowsApplicationDriverUrl ="http://<IP_ADDRESS>:4723";
private const string CMSAppId = @"C:\Program Files (x86)\Crawford\CMS\CMSProxy.exe";
protected static WindowsDriver session;
    public static void Setup(TestContext context)
    {
        // Launch a new instance of CMS application
        if (session == null)
        {
            // Create a new session to launch CMS application
            DesiredCapabilities appCapabilities = new DesiredCapabilities();
            appCapabilities.SetCapability("app", CMSAppId);
           session = new WindowsDriver<WindowsElement>(new

Uri(WindowsApplicationDriverUrl), appCapabilities);
// Set implicit timeout to 1.5 seconds to make element
search to retry every 500 ms for at most three times
session.Manage().Timeouts().ImplicitWait =
TimeSpan.FromSeconds(5);
session.FindElementByName("I Agree").Click();
session.FindElementByName("User:").SendKeys("CROTHJ0");
}
I am using latest version of WinAppDriver v 1.0.1-Preview
I am able to launch the application and click on I Agree button but it fails to enter text on next screen objects like username and password.
Please do let me know if it supports winform application.
Below is the response which I received on WinAppDriver:
POST /session/3EFA9762-66A3-457F-B0AD-38336AA8F123/element HTTP/1.1
Accept: application/json, image/png
Content-Length: 32
Content-Type: application/json;charset=utf-8
Host: <IP_ADDRESS>:4723
{"using":"name","value":"User:"}
HTTP/1.1 404 Not Found
Content-Length: 139
Content-Type: application/json
{"status":7,"value":{"error":"no such element","message":"An element
could not be located on the page using the given search parameters."}}
If possible we can schedule a call to discuss the issues and solutions.
Thanks in Advance,
Sameer Sukhija

{"using":"name","value":"User:"} this is wrong, it will be some text box.
we can have a call to discuss the same.

Hi,
Please let me know your available timings and your skype id to have a call on above topic
Thanks in Advance,
Sameer Sukhija

I do not have a skype is we have a hangout session, my id is<EMAIL_ADDRESS>

Hi, I've published a course about test automation using WinAppDriver. Given below is a special launch promo code(valid 4 days).


Add static resource provider

Java: add gradle build scripts and gradle wrapper to allow building and testing generated files out of the box with no prerequisites except installed JDK.

Codecov Report

Merging #1908 into master will decrease coverage by 0.01%.
The diff coverage is 67.85%.

@@             Coverage Diff              @@
##             master    #1908      +/-   ##
============================================
- Coverage      85.4%   85.39%   -0.01%
- Complexity     4748     4756       +8
============================================
  Files           437      439       +2
  Lines         18652    18694      +42
  Branches       1981     1983       +2
============================================
+ Hits          15929    15963      +34
- Misses         2038     2046       +8
  Partials        685      685

Impacted Files
Coverage Δ
Complexity Δ

.../google/api/codegen/gapic/CommonGapicProvider.java
83.33% <0%> (-1.42%)
10 <0> (ø)

...odegen/discogapic/ViewModelDiscoGapicProvider.java
80% <0%> (+1.87%)
4 <0> (-1)
:arrow_down:

...com/google/api/codegen/DiscoGapicGeneratorApi.java
64.63% <0%> (ø)
7 <0> (ø)
:arrow_down:

...gle/api/codegen/discogapic/DiscoGapicProvider.java
88.57% <0%> (+2.08%)
6 <0> (-1)
:arrow_down:

...ogle/api/codegen/gapic/ViewModelGapicProvider.java
79.41% <0%> (+1.63%)
5 <0> (-1)
:arrow_down:

...n/grpcmetadatagen/GrpcMetadataProviderFactory.java
58.33% <100%> (ø)
5 <0> (ø)
:arrow_down:

...le/api/codegen/gapic/MainGapicProviderFactory.java
93.28% <100%> (+0.25%)
12 <0> (ø)
:arrow_down:

.../java/com/google/api/codegen/CodeGeneratorApi.java
26.41% <47.05%> (+4.67%)
7 <5> (+4)
:arrow_up:

...oogle/api/codegen/util/StaticResourcesHandler.java
81.25% <81.25%> (ø)
4 <4> (?)

...gle/api/codegen/gapic/StaticResourcesProvider.java
83.33% <83.33%> (ø)
3 <3> (?)

... and 3 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 20238ca...4fadf72. Read the comment docs.

@andreamlin could you do a first pass?

@garrettjonesgoogle PTAL


[5.4] Throw ModelNotFoundException when model bind not found

This is a PR for Issue #13455 to bring consistency to model bind not found and findOrFail.
The NotFoundHttpException was changed to a ModelNotFoundException and has the model set, the exact same as in Eloquent/Builder findOrFail.
Although the Exceptions/Handler.php converts this back to a NotFoundHttpException in the prepareException method anyway (so thus should have same behaviour for projects using the default handling), by throwing a ModelNotFoundException in the first instance has the added benefit that a custom Handler subclass can render both cases of a model binding not found and a findOrFail in the same way. Furthermore, by having an exception that has the model name set on it, exception handling can be even more improved for binding failures, e.g. by default there is now the message "No query results for model [App\ModeClass]." instead of no message. This message is exactly the same as the exception from findOrFail since it is created inside the ModelNotFoundException itself.
Before this fix, developers had to workaround this issue by providing a closure to return the correct exception on all their route models via a closure, although in the example given in this forum post, the developer didn't set the model on the exception:
https://laracasts.com/discuss/channels/general-discussion/throw-modelnotfoundexception-using-route-model-binding

I assume you intended this to be for 5.3, but actually targeted 5.4?

Yeh 5.3 not sure what happened, what should I do?

Can you please re-send this to 5.3 branch. Release is in the next few days so maybe try to send it soon if you can :smile:


chore: install ruby-bundler

@jeking3 @Jens-G @nsuke this should fix the travis build

Given the Travis CI build passed, I am going to merge this into the project.  The AppVeyor CI getting stuck is unrelated.  Folks who had failed builds will need to rebase and resubmit once this is merged to get past the ruby / docker issue seen in recent failed builds.


Remove old .gitignores and the badges from the readme

Description
Some clean-up to remove references to old folders and the badges out-of-date.
This fixes the markdown lint test which is failing.

/rebase

/merge


Update to move Google Tag Manager lower on the page.

Proposed changes
Hi Team,
We are seeing an issue with docs.docker.com's javascript re-writing the window.location value as the page is loading.  This change is to move GTM to the bottom of the page to allow the window.location function to run before GTM is loaded.
Please let me know the staging url once the changes are built so we can test.
Thanks for the help,
Erik

Deploy preview for docsdocker ready!
Built with commit 14b0fd0037e225a0647548790bd620d454ecba66
https://deploy-preview-9457--docsdocker.netlify.com

We were able to fix this with a helper function to patch the window.location issue.


[FLINK-19453][table-common] Deprecate old source and sink interfaces

What is the purpose of the change
Deprecates all old source and sink interfaces and their helper interfaces that are not required in FLIP-95.
Brief change log
Deprecation annotation and comment added.
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): yes
The serializers: no
The runtime per-record code paths (performance sensitive):no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper:  no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? JavaDocs

CC @wuchong

Shall we also deprecate the interfaces AppendStreamTableSink, RetractStreamTableSink, UpsertStreamTableSink, StreamTableSource... which are located in flink-table-api-java-bridge module?

Thanks for the hint @wuchong. I deprecated even more interfaces. Let me know if you spotted more.


GitLab collection fails on small project (MR notes / MR commits)

Describe the bug
GitLab collection for merge request commits and merge request notes fails on a small project. There appears to be something going wrong with the FetchWithPagination method getting the total pages. It continues to send requests indefinitely. page and per_page params appear incorrect.
To Reproduce
Steps to reproduce the behavior:

Start DevLake
Send GitLab request to small project (example: https://gitlab.com/kevin-kline/test-project)
Watch too many requests occur

Expected behavior
It should collect from only 1 page and be done.
Screenshots

Will be fixed after raw layer implementation