Make Snapshot and EventStream Enumerable

This PR converts EventStore::Snapshot and EventStore::EventStream into being Enumerables. This has a few advantages:

You don't need to call Snapshot#snapshot anymore (seriously, what does that mean?)
Aggregator and Client don't need to define #event_stream and #snapshot methods that return arrays; we can just return the objects themselves, and let the clients iterate over them normally.

Faceplate, Proxy, and Diagnostics (neé Dealer) all build cleanly with this change.

:+1:


IIS installation issues

PassCore Server

OS: [Windows ]

Provider: [Active Directory]

Settings file (without sensitive information):
{
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
},
"WebSettings": {
"EnableHttpsRedirect": true
},
"AppSettings": {
// The following options for AD Provider (remove if you don't use this Provider)
"UseAutomaticContext": true, // Set true to allow PassCore to reset password using the same credentials, or false if you will fill the credentials below
"RestrictedADGroups": [
], // Set the AD groups to restrict the use of PassCore
"AllowedADGroups": [], // Set the AD Groups to allow PassCore, if the array is empty all the groups no-restricted above are allowed
"IdTypeForUser": "Name", // Possible values are "DN", "GUID", "Name", "SAM", "SID" and "UPN" (Default UPN)
"UpdateLastPassword": true, // Set true to allow PassCore to  update the last password timestamp
// The following options are for LDAP Provider (remove if you don't use this Provider)
"LdapSearchBase": "DC=",
"LdapSecureSocketLayer": true, // Default for AD is true when using LDAPS 636
"LdapStartTls": false, // Default for AD is true when using LDAP 389
"LdapChangePasswordWithDelAdd": false,
"LdapSearchFilter": "(sAMAccountName={Username})", // Another value: "(&(objectClass=person)(cn={Username}))"
// General options (valid for both providers)
"LdapHostnames": [ "" ], // Set your hostname(s)
"LdapPort": 389, // Default for AD is 389, for LDAPS 636
"LdapUsername": "", // Set the username or distinguish name (DN) to bind the LDAP server
"LdapPassword": "", // Set the password for the username
"DefaultDomain"<EMAIL_ADDRESS>// Set your default AD domain here, or non "@" logins will not work! Use empty value to allow user to set the domain. This option is ONLY available with UPN.
},
"ClientSettings": {
"ValidationRegex": {
"EmailRegex": "^[a-zA-Z0-9.!#$%&’+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)$",
"UsernameRegex": "^[a-zA-Z0-9._-]{3,20}$"
},
"ShowPasswordMeter": true,
"MinimumScore": 0, //The minimum acceptable score that the user's new password needs to get at being evaluated by ZXCVBN to be established as the new password.
"Recaptcha": {
"SiteKey": "", // ReCAPTCHA public key: replace this! or leave empty if you don't need ReCAPTCHA
"PrivateKey": "", // ReCAPTCHA private key: replace this! or leave empty if you don't need ReCAPTCHA
"LanguageCode": "en"
},
"UseEmail": "false",
"ApplicationTitle": "Change Account Password | Self-Service Account Management Tools",
"ChangePasswordTitle": "Change Account Password",
"ChangePasswordForm": {
"HelpText": "If you are having trouble with this tool, please contact IT Support",
"UsernameLabel": "Username",
"UsernameHelpblock": "Your organization's email address",
"UsernameDefaultDomainHelperBlock": "Your organization's username",
"CurrentPasswordLabel": "Current Password",
"CurrentPasswordHelpblock": "Enter your current password",
"NewPasswordLabel": "New Password",
"NewPasswordHelpblock": "Enter a strong password. You can use this tool to help you create one; use the XKCD (random sep, pad digit), or NTLM, options.",
"NewPasswordVerifyLabel": "Re-enter New Password",
"NewPasswordVerifyHelpblock": "Enter your new password again",
"ChangePasswordButtonLabel": "Change Password"
},
"ErrorsPasswordForm": {
"FieldRequired": "This field is required",
"UsernamePattern": "Please enter a valid username",
"UsernameEmailPattern": "Please enter a valid email address",
"PasswordMatch": "Passwords do not match"
},
"Alerts": {
"SuccessAlertTitle": "You have changed your password successfully.",
"SuccessAlertBody": "Please note it may take a few hours for your new password to reach all domain controllers.",
"ErrorPasswordChangeNotAllowed": "You are not allowed to change your password. Please contact your system administrator.",
"ErrorInvalidCredentials": "You need to provide the correct current password.",
"ErrorInvalidDomain": "You have supplied an invalid domain to logon to.",
"ErrorInvalidUser": "We could not find your user account.",
"ErrorCaptcha": "Could not verify you are not a robot.",
"ErrorFieldRequired": "Fulfill all the fields.",
"ErrorFieldMismatch": "The passwords do not match.",
"ErrorComplexPassword": "Failed due to password complex policies: New password length is shorter than AD minimum password length",
"ErrorConnectionLdap": "Unhandled error connecting to the LDAP server.",
"ErrorScorePassword": "The password you are trying to set is not secure enough.",
"ErrorDistancePassword": "The password you are trying to set is not diferent enough of your last password.",
"ErrorPwnedPassword": "The password you are trying to use is publicly known and can be used in dictionary attacks."
}
}
}

Log file (without sensitive information):

Describe the bug
when i try access it show me this error

when i run unosquare.passcore.web.exe it show another port.

Note: If you want to report an issue of passcorepro, please use the proper bug report form at https://store.unosquare.com/passcorepro
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

if i direct go to port 5000

it keep show loading


add image to video ( position absolute)

Hi I am using react native and video processing latest version and I want to add small image to video with position absolute. Can I do this with this lilbrary?

Hi @buraksak35 .
No - Right now there's no such functionality in this library.


Add .is_active parameter to reactive expressions

I would like to start using reactive expressions as I start to realize they are a powerful extension of pn.bind.
One pattern I would often like to do is to disable components and/ or add loading indicators while a reactive expression is evaluating.
Context
I can do this manually by using another  is_active reactive expression.
import panel as pn
from time import sleep
pn.extension()

is_active = pn.rx(False)

submit = pn.widgets.Button(name="Start the wind turbine", loading=is_active, disabled=is_active)

def run(clicked):
    is_active.rx.value = True
    sleep(0.5)
    print("done")
    is_active.rx.value = False

rx_run = pn.rx(run)(submit)

# Figure out how to watch

pn.Column(submit, rx_run).servable()

https://github.com/holoviz/param/assets/42288570/1754fd65-b1e3-471d-a26e-7759ee7515ab
Please note that this example also experiences the issue in https://github.com/holoviz/panel/issues/6426.
Request
Please make this pattern really simple to use by adding an .is_active parameter to reactive expressions. Something like
rx_run.rx.is_active

that I can bind to.
Bonus question:
Instead of changing the value of a reactive expression two times as in the example. Is it possible to use a context manager similar to
with some_parameterized.param.update(value=False):
   ...

This already exists and has to be documented, specifically it's rx_run.rx.updating()

How would I combine updating() with .watch. I can't figure out how as .watch(...) just returns None. I.e. I don't get a handle on anything I can do .rx.updating() on.
import panel as pn

pn.extension()

# Declare state of application
is_stopped=pn.rx(True)

def name(stopped):
    if stopped:
        return "Start the wind turbine"
    else:
        return "Stop the wind turbine"

rx_name = pn.rx(name)(is_stopped)

submit = pn.widgets.Button(name=rx_name)

def start_stop_wind_turbine(clicked):
    print("running action")
    is_stopped.rx.value = not is_stopped.rx.value

run_rx = submit.rx.watch(start_stop_wind_turbine)

pn.Column(submit).servable()

Add the same time I am think whether the .rx .watch api is what you would expect. Why do you have to specify a function as argument. Why can't you just watch and execute the pipeline as in
import panel as pn
from time import sleep
pn.extension()

is_active = pn.rx(False)

submit = pn.widgets.Button(name="Start the wind turbine", loading=is_active, disabled=is_active)

def run(clicked):
    is_active.rx.value = True
    sleep(0.5)
    print("done")
    is_active.rx.value = False

rx_run = pn.rx(run)(submit).rx.watch()

# Figure out how to watch

pn.Column(submit).servable()


Add limitation for converting Data explorer tile into an SLI

Henrik Rexed Yesterday at 4:18 AM
Hi I'm preparing a demo for an event where i'm using Keptn for the quality gate with the dynatrace service. I have built a dashboard with the right naming ( keptn is attaching the link to the dashboard in the keptn bridge) , but i has issues to get the metrics : no evaluation performed by lighthouse because SLI failed with message Data Explorer tile could not be converted to a metric query: Metric query generation requires that data explorer query has a metric.
i have several metrics in this dashboad, what is the rule to make it work?
1 reply
Arthur Pitman 21 hours ago
Hi! Currently for the dynatrace-service to convert a Data explorer tile into an SLI, it must be specified using the Build tab of the Data explorer. Metrics using the Code tab are currently not supported.

stale


Commenting out the 'Supplier Bag Number' as it won't be needed.

Commenting out the 'Supplier Bag Number' as it won't be needed. Not deleting it right now incase the client changes their mind.

Closing PR for now as it might be better to push the column to the end instead of deleting it completely.


I'm working on a book mod but it broke

Describe your bug here.
It says that some things are missing
Command Prompt/Terminal logs (if existing)
Paths.hx (line 352)
BGSprite.hx (line 24)
PlayState.hx (line 488)
flixel/FlxGame.hx (line 637)
flixel/FlxGame.hx (line 724)
flixel/FlxGame.hx (line 677)
flixel/FlxGame.hx (line 545)
openfl/events/EventDispatcher.hx (line 402)
openfl/display/DisplayObject.hx (line 1399)

Are you modding a build from source or with Lua?
Source
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
Yes, I edited daddy dearest and the background

Edited the stage from week 1, changed daddy dearest to a book, and deleted some of the week 1 background files.

The BGs of week one are hard coded, deleting them might result into a crash-
but also replacing a whole sprite sheet with a single image, might cause issues, because it might not be in the perfect size
I'd recommend, making a mod with the utils, that Psych Engine offers. and maybe one or two tools, like the sprite sheet maker on gamebanana

close the issue

@patreese2 close this.


Show hint when trying to disconnect areas from a node

When i try to disconnect an area from a node, which is in a relation, this is currently not possible by only selecting the node and pressing D.
You get the notification (sorry, i have the german interface): "Dies kann nicht getrennt werden, weil es Mitglieder einer Relation verbindet."
An example node, which is part of a relation and part of areas: https://www.openstreetmap.org/node/1193467163
In the forum i got the hint from user milet, that it is possible to disconnect the are from the node, if you select the area, hold shift and also select the node. When you press D then, it works as expected.
It would be nice, if a hint can be shown, that the area can be disconnected from the node if you select the area, too.

English Notification is 'This can't be disconnected because it connects members of a relation.'

English Notification is 'This can't be disconnected because it connects members of a relation.'


d3.layout.force overlap

About d3.layout.force application, I use, the data base for the node and the connection line, and the connection line is more complex,
Expected target is:
1, the distance between the point and the point as close as possible,
2, all the points do not overlap,
3, in accordance with the relationship between the natural growth of the shape of a galaxy.
I tried a lot of methods, can not achieve the expected, and now do the best way code is as follows:
var charge = function (d) {
    return   -Math.pow(d.r, 2.0) *  Math.sqrt(Math.sqrt(d.weight));
}

d3.layout.force()
            .size([width, height])
            .charge(charge)
            .linkDistance(function (d) {
                var s = d.source,
                        t = d.target;
                var r1 = (s.r);
                var r2 = (t.r);
                return (r1 + r2);
            });

Is there a better way?

The force layout typically cannot guarantee hard constraints (such as the distance between two points being fixed, or two points not overlapping) because most often the constraints are contradictory when taken together: the force layout must instead find a compromise that the constraints as closely as possible. However, even then, the force layout is just a heuristic and numerical approximation that isn’t guaranteed to do anything…
You can often get better results by tweaking parameters and adding additional forces to the layout, such as in these examples:
https://bl.ocks.org/mbostock/3231298
http://bl.ocks.org/mbostock/1021841
https://bl.ocks.org/mbostock/7881887
Please use Stack Overflow tag d3.js or the d3-js Google group to ask for help. These issues are for feature requests and bug reports only. Thank you!

@mbostock I tried to give you an example, the case did not have the concept of connecting line, so the difference is larger than expected, the final structure is not a tree


Multiple calls to curlirize will output the curl command multiple times

Steps to reproduce:

In file1.js (choose any filename), import Axios and Curlirize it.  Set up a function to make an Axios request.
In file2.js (choose any filename), import Axios again and Curlirize it.  Set up another function to make an Axios request.
Run the application.

Actual behaviour: The CURL output from Axios is displayed twice for each request
Expected behaviour: The CURL output is displayed only once (per request) no matter how many times Axios is curlirized.
Thanks!

Instead of curlirizing the actual axios import, try creating an instance each time and curlirizing that.

The solution @aszpreece suggested is correct.
Closing 😄

The solution @aszpreece suggested is correct.
Closing 😄


Introduced ExpressionToColumnIdentVisitor in order to fix wrong behaviour at alter table column add.

Fixes wrong use of identifiers, especially when containing a dot.

Codecov Report

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

@@            Coverage Diff            @@
##             master    #6064   +/-   ##
=========================================
  Coverage          ?   83.06%
  Complexity        ?    12444
=========================================
  Files             ?     1437
  Lines             ?    47080
  Branches          ?     5799
=========================================
  Hits              ?    39106
  Misses            ?     5273
  Partials          ?     2701

Impacted Files
Coverage Δ
Complexity Δ

...n/java/io/crate/analyze/TableElementsAnalyzer.java
89.31% <100%> (ø)
5 <0> (?)

...l/src/main/java/io/crate/metadata/ColumnIdent.java
94.89% <33.33%> (ø)
47 <0> (?)

...ze/expressions/ExpressionToColumnIdentVisitor.java
92.85% <92.85%> (ø)
6 <6> (?)

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 aab68c8...a139dc3. Read the comment docs.


Kotlin implementation

This PR implements the Sqids spec in Kotlin. This also adds all the unit tests and github actions to run those tests on push and PR creation

We'll need to get this set up in Maven central repository so it can be pull into projects. I'll work on getting that set up and let you know when that is ready and the library/artifact is available there.

Hi @kevinxmorales, what's the ETA on Maven? Kotlin looks almost done, would love to update the website soon.

We have a few options
We can get into the org.sqids org on maven central. I see the maintainer of sqids-scala got this set up already and that there is a similar discussion happening for getting sqids-java published. We can get this published in that maven org and namespace it as sqidskotlin so the imports would be import org.sqids.sqidskotlin. If it is desired to all be in the same maven org for consistency, I'll have to work with @jesperoman to get that done.
The other option is to use github as the repository. We can use jitpack to published versioned library jars to github and have users reference the library as import com.github.sqidskotlin.sqids. The downside is that jitpack is less popular than maven for searching dependencies and requires tweaking some project params to download from github instead of maven. Its not difficult, but it is an extra config step for users. I can test this on my fork of the project and get a working version and see if its viable.
I'm leaning towards working to get his on maven, but it requires some help from the sqids-scala maintainer unless you also have permissions to access the maven org.

I can help you, if you give me your sonatype username, I can send in a request to add you to the repo!

Thank you, my sonatype username is my github username kevinxmorales and email is<EMAIL_ADDRESS>if you need that too

I've filed an issue with sonatype for adding publishing rights for kevinxmorales, will let you know when it's done!

According to sonatype, there is no kevinxmorales registered to sonatype, @kevinxmorales you need to register there first!

@jesperoman sorry about the delay, it was my misunderstanding on sonatype usernames. My username is<EMAIL_ADDRESS>Thank you for taking the time to help get me added to this.


fixes #264

due to issues installing the workflow.
What issues? you know you need yarn to install the old workflow right?

I know and install it will overlap current workflow plus I'm still on a
temporarily internet connection so install all packages take 2h
On Sun, Dec 23, 2018, 1:03 AM Fred Kleuver<EMAIL_ADDRESS>wrote:

due to issues installing the workflow.
What issues? you know you need yarn to install the old workflow right?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/cherow/cherow/pull/265#issuecomment-449584252, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AeYSDnFGMThUsfTM2tuhr6PQla9AUQf-ks5u7mX-gaJpZM4ZfYWr
.

Why don't you clone the repo twice then and leave each workflow checked out on each folder so you don't need to switch and reinstall and clean the whole shebang each time?

Easier just now close this PR. Fixed in 2.0
On Sun, Dec 23, 2018, 11:15 PM Fred Kleuver<EMAIL_ADDRESS>wrote:

Why don't you clone the repo twice then and leave each workflow checked
out on each folder so you don't need to switch and reinstall and clean the
whole shebang each time?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/cherow/cherow/pull/265#issuecomment-449642976, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AeYSDsv3x-vN-9aNSKB52rKKpJO-pkPPks5u7531gaJpZM4ZfYWr
.

Closes this for now. Fixed in 2.0


ios build failed

Hi and thanks a lot for this fork. Unfortunately the ios release build fails.
Could you help please.
XCODE_VERSION=11.3
IOS_PLATFORM_VERSION=5.1.1
Failed to install 'cordova-plugin-advanced-background-mode': CordovaError: Uh oh! [21:34:42] File already exists at destination "/private/tmp/download/platforms/ios/That Shopping List/Resources/appbeep.wav" for resource file specified by plugin cordova-plugin-advanced-background-mode in iOS platform [21:34:42]     at install (/private/tmp/download/platforms/ios/cordova/lib/plugman/pluginHandlers.js:64:23) [21:34:42]     at ActionStack.process (/private/tmp/download/node_modules/cordova-common/src/ActionStack.js:56:25) [21:34:42]     at PluginManager.doOperation (/private/tmp/download/node_modules/cordova-common/src/PluginManager.js:114:20) [21:34:42]     at PluginManager.addPlugin (/private/tmp/download/node_modules/cordova-common/src/PluginManager.js:144:17) [21:34:42]     at Api.addPlugin (/private/tmp/download/platforms/ios/cordova/Api.js:245:10) [21:34:42]     at handleInstall (/Users/builder/n/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:581:10) [21:34:42]     at /Users/builder/n/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:349:28 [21:34:42]     at process._tickCallback (internal/process/next_tick.js:68:7) [21:34:42] Failed to restore plugin "cordova-plugin-advanced-background-mode" from config.xml. You might need to try adding it again. Error: Uh oh! [21:34:42] File already exists at destination "/private/tmp/download/platforms/ios/That Shopping List/Resources/appbeep.wav" for resource file specified by plugin cordova-plugin-advanced-background-mode in iOS platform

This Plugin adds a File appbeeb.wav as a Resource. The Error told you it already exists. Do you have a other Plugin that adds the same file?

Thanks for your response.
I'm not sure. Don't think so. This error occurs after switching from cordova-plugin-background-mode to cordova-plugin-advanced-mode.

The origina plugin also adds this file. Try removing the platforms and plugins folder and build again.

Thanks a lot for this solution and you plugin. Good work.


Antrea Windows Agent crashes when upgrading from v1.9.0 to v1.10.0

Describe the bug

When I upgrade Antrea Agent on Windows Node from v1.9.0 to v1.10.0, I saw the agent is always showing CrashLoopback status. After getting agent logs, I got this error:
I0109 02:46:20.133311   14968 client.go:130] Updating Antrea client with the new CA bundle
panic: runtime error: slice bounds out of range [:-1]

goroutine 282 [running]:
antrea.io/antrea/pkg/agent/openflow.parseAllowFlow(0x2ffaae0?)
        C:/antrea/pkg/agent/openflow/network_policy.go:1869 +0x174
antrea.io/antrea/pkg/agent/openflow.parseMetricFlow(0xc0010e402c?)
        C:/antrea/pkg/agent/openflow/network_policy.go:1908 +0x59
antrea.io/antrea/pkg/agent/openflow.(*client).NetworkPolicyMetrics.func1(0x8?, 0x34e9a78)
        C:/antrea/pkg/agent/openflow/network_policy.go:1972 +0x102
antrea.io/antrea/pkg/agent/openflow.(*client).NetworkPolicyMetrics(0xc0001e0b40)
        C:/antrea/pkg/agent/openflow/network_policy.go:1992 +0xc2
antrea.io/antrea/pkg/agent/stats.(*Collector).collect(0xc000336f00)
        C:/antrea/pkg/agent/stats/collector.go:115 +0x45
antrea.io/antrea/pkg/agent/stats.(*Collector).Run(0xc000336f00, 0xc0001d2fc0)
        C:/antrea/pkg/agent/stats/collector.go:93 +0xf3
created by main.run
        C:/antrea/cmd/antrea-agent/agent.go:766 +0x53ad

I have dump OpenFlows on OVS manually, then I saw that an OpenFlow entry expected to be in "ConntrackCommitTable" shows in "IngressMetricTable",
table=IngressMetricit, n_packets=9168, n_bytes=693542, idle_age=26, priority=200,ct_state=+new+trk-snat,ct_mark=0/0x10,ip actions=ct(commit,table=ConntrackCommit,zone=65520,exec(move:NXM_NX_REG0[0..3]->NXM_NX_CT_MARK[0..3]))

The idle time in flow is much older than the newly installed flows, and its cookie_id shows that it was installed in the last round. Having checked Agent logs, I found that Agent has increased the round number after upgraded, but the value was not written into OVSDB yet when crash happened.
The crash happens only on Windows in upgrade scenario and it does not happen in restart case. It does not exist on Linux, because OVS is running inside containers on Linux, OpenFlow entries are cached in the memory of ovs-vswitchd (userspace process), not like OVSDB is persistent, so the flows installed before upgrade was gone after new Agent is up. But for Windows worker Node, OVS is run as Service, so the flow entries are still existing.
After looking into the code, I think these 3 conditions introduce the issue:

Feature L7 NetworkPolicy has introduced a new table "TrafficControlTable" which is not controled by feature gate in agent/openflow level. This feature is not enabled on Windows, so the new table is not expected.
There is 10s sleep before deleting stale flows in a separate goroutine after Agent is up,  (https://github.com/antrea-io/antrea/blob/main/pkg/agent/agent.go#L553), so Agent crashes before deleting the old flows.
The existing metric flow parser logic has no check on the existence of the key words before count the number.

To Reproduce

Run Antrea version v1.9.0
Upgrade to version v1.10.0

Expected

The upgrade workflow succeeds.
Actual behavior

Agent crashes on Windows Node.
Versions:

Antrea v1.10
Additional context

To resolve this issue, I think following items are needed,

[ ] Use feature gate to control the required tables in agent/openflow level
[ ] Enhance the metric parser logic to avoid error like "slice bounds out of range"
[ ] Optimize the stale flow deletion logic ( e.g., introduce Barrier Message to make adding new flows and deleting stale flows in order and sync)
[ ] Further more, run OVS userspace in container on Windows ( long term item).

This issue has been fixed by #4542.


Better back button label

This pull request implements a better back button title for a back button on iOS.
It changes the way components are rendered. Instead of rendering all left, title and right components separately with position absolute, it renders them within another View. That makes it possible to use layout, flex, and built-in truncating when width of the container is reached.
In order to achieve that, we listen to onLayout to get the real width.
Todo
Test on Android. Should have no changes. Will do later today, for now, waiting for review.
Test plan
Run on iOS, go to any view, push a screen, observe the header:

or go back and see smaller title:

Is truncating the text going to be the default behavior now? Or is this PR more focused on the flexibility of the back button's contents?
Relevant discussion: https://github.com/react-community/react-navigation/pull/109#issuecomment-276420102

@ericvicenti thanks! That's a good idea. Mind explaining how's initWidth different from Animated width and whether it's safe to use the former?

@migueloller for now I focused on changing the layouts and making it possible - in next PR I'll focus on more platform-specific things - all in all left button is replaceable, we can override it at any point, even in the user land.

I know its super confusing how layout includes the init width as well as the animated value. The init width is usually correct, but it will not change dynamically over time. Sometimes the init width is needed for synchronous layout logic, but other times we need the dynamic value.


How to work with date type yyyy-mm-dd HH:mm:ss

Hi,
How do I work with events with same date, but different hours in your plugin ?
Thanks.

Not work with time, yet.

Check version 4.0.0
Use:
var data = [{
    time: '2015-04-30 23:59:59',
    header: 'Sample of header',
    body: [{
        tag: 'p',
        content: 'Lorem ipsum dolor sit amet, nisl lorem.'
    }]
}];

Pass the time format if you want to display it.
$('#myTimeline').albeTimeline(data, {
    formatDate: 'dd de MMMM de yyyy HH:mm:ss'
});

Thank you so much !!


SyntaxError right after launching the app

When launching the app on a firefox browser, I get the following error on the browser console:
SyntaxError: import declarations may only appear at top level of a module
On the file worker.js:1
import '/node_modules/.pnpm/vite<EMAIL_ADDRESS>

When launching the app on a firefox browser, I get the following error on the browser console:
SyntaxError: import declarations may only appear at top level of a module
On the file worker.js:1
import '/node_modules/.pnpm/vite<EMAIL_ADDRESS>
@PinkFromTheFuture Because Module Worker is not supported in Firefox currently.
https://developer.mozilla.org/en-US/docs/Web/API/Worker#browser_compatibility


Is it possible to make the ripple effect borderless ?

I was wondering if it was possible to create a ripple effect similar to that is achieved when using the attribute selectableItemBackgroundBorderless.

can anyone tell me how to make a ripple effect borderless.......

I don't this it is possible to make it Borderless using this library!


The sample job should use a DB.

Please modify the sample job to use a relational DB. There are quite a few that are Java based and can be included directly (without installation) :
http://java-source.net/open-source/database-engines

onyx-platform/onyx-starter#3

We don't agree with this at the moment. I might consider an option to make the sample job use kafka though.


Find a way to make the configuration file containing keys private

Rishavjeet and SHivam needs to find a way to make the configuration file containing keys private

There's no particular solution for this, we can directly insert keys into heroku app.

closing as it is a duplicate of #89 of the admin site


[Bug]: LLM initialization time increases significantly with larger tensor parallel size and Ray

Your current environment
vllm 0.5.2

The output of `python collect_env.py`
Collecting environment information...
PyTorch version: 2.3.1+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A

OS: Ubuntu 20.04.5 LTS (x86_64)
GCC version: (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Clang version: Could not collect
CMake version: version 3.24.1
Libc version: glibc-2.31

Python version: 3.8.10 (default, Mar 13 2023, 10:26:41)  [GCC 9.4.0] (64-bit runtime)
Python platform: Linux-5.10.134-008.7.kangaroo.al8.x86_64-x86_64-with-glibc2.29
Is CUDA available: True
CUDA runtime version: 12.1.66
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration:
GPU 0: NVIDIA L20Z
GPU 1: NVIDIA L20Z
GPU 2: NVIDIA L20Z
GPU 3: NVIDIA L20Z
GPU 4: NVIDIA L20Z
GPU 5: NVIDIA L20Z
GPU 6: NVIDIA L20Z
GPU 7: NVIDIA L20Z

Nvidia driver version: 535.161.08
cuDNN version: Probably one of the following:
/usr/lib/x86_64-linux-gnu/libcudnn.so.8.9.0
/usr/lib/x86_64-linux-gnu/libcudnn_adv_infer.so.8.9.0
/usr/lib/x86_64-linux-gnu/libcudnn_adv_train.so.8.9.0
/usr/lib/x86_64-linux-gnu/libcudnn_cnn_infer.so.8.9.0
/usr/lib/x86_64-linux-gnu/libcudnn_cnn_train.so.8.9.0
/usr/lib/x86_64-linux-gnu/libcudnn_ops_infer.so.8.9.0
/usr/lib/x86_64-linux-gnu/libcudnn_ops_train.so.8.9.0
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   52 bits physical, 57 bits virtual
CPU(s):                          100
On-line CPU(s) list:             0-99
Thread(s) per core:              1
Core(s) per socket:              100
Socket(s):                       1
NUMA node(s):                    1
Vendor ID:                       GenuineIntel
CPU family:                      6
Model:                           143
Model name:                      Intel(R) Xeon(R) Processor
Stepping:                        8
CPU MHz:                         2000.000
BogoMIPS:                        4000.00
Hypervisor vendor:               KVM
Virtualization type:             full
L1d cache:                       4.7 MiB
L1i cache:                       3.1 MiB
L2 cache:                        200 MiB
L3 cache:                        105 MiB
NUMA node0 CPU(s):               0-99
Vulnerability Itlb multihit:     Not affected
Vulnerability L1tf:              Not affected
Vulnerability Mds:               Not affected
Vulnerability Meltdown:          Not affected
Vulnerability Mmio stale data:   Not affected
Vulnerability Retbleed:          Not affected
Vulnerability Spec store bypass: Vulnerable
Vulnerability Spectre v1:        Vulnerable: __user pointer sanitization and usercopy barriers only; no swapgs barriers
Vulnerability Spectre v2:        Vulnerable, IBPB: disabled, STIBP: disabled, PBRSB-eIBRS: Vulnerable
Vulnerability Srbds:             Not affected
Vulnerability Tsx async abort:   Not affected
Flags:                           fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves avx_vnni avx512_bf16 wbnoinvd avx512vbmi umip pku waitpkg avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq rdpid cldemote movdiri movdir64b fsrm md_clear serialize tsxldtrk avx512_fp16 arch_capabilities

Versions of relevant libraries:
[pip3] flake8==6.1.0
[pip3] mypy-extensions==1.0.0
[pip3] numpy==1.22.2
[pip3] onnx==1.13.1
[pip3] pytorch-quantization==2.1.2
[pip3] torch==2.3.1
[pip3] torch-tensorrt==1.4.0.dev0
[pip3] torchaudio==2.3.1
[pip3] torchtext==0.13.0a0+fae8e8c
[pip3] torchtyping==0.1.4
[pip3] torchvision==0.18.1
[pip3] triton==2.3.1
[conda] Could not collect

Model Input Dumps
just test the vllm init time
🐛 Describe the bug
Issue Description
We observed significant and unexpected increases in VLLM initialization time when scaling tensor parallelism (TP), especially with Ray enabled.
Observed Behavior

TP=1: ~7 seconds initialization time
TP=4: ~14 seconds initialization time
TP=4 with Ray: ~24 seconds initialization time

Expected Behavior
Initialization time should remain relatively constant or have minimal increase when scaling tensor parallelism and use ray.
Environment

VLLM version: 0.5.2
Model: Qwen2-7B
GPU: NVIDIA L20Z
Number of GPUs: 8

Additional Context
The initialization time increase appears disproportionate to the tensor parallel size, suggesting a potential bottleneck in the initialization process, particularly when Ray is involved.
Reproducible Steps

Run VLLM with TP=1
Run VLLM with TP=4
Run VLLM with TP=4 and Ray enabled
Compare initialization times

vllm start time
def run_vllm(
    requests: List[Tuple[str, int, int]],
    model: str,
    tokenizer: str,
    quantization: Optional[str],
    tensor_parallel_size: int,
    seed: int,
    n: int,
    use_beam_search: bool,
    trust_remote_code: bool,
    dtype: str,
    max_model_len: Optional[int],
    enforce_eager: bool,
    kv_cache_dtype: str,
    quantization_param_path: Optional[str],
    device: str,
    enable_prefix_caching: bool,
    enable_chunked_prefill: bool,
    max_num_batched_tokens: int,
    distributed_executor_backend: Optional[str],
    gpu_memory_utilization: float = 0.9,
    num_scheduler_steps: int = 1,
    use_v2_block_manager: bool = False,
    download_dir: Optional[str] = None,
    load_format: str = EngineArgs.load_format,
    disable_async_output_proc: bool = False,
) -> float:
    # 导入必要的库
    from vllm import LLM, SamplingParams

    print(f"Start initializing LLM at {time.strftime('%Y-%m-%d %H:%M:%S')}")
    start = time.perf_counter()
    llm = LLM(
        model=model,
        tokenizer=tokenizer,
        quantization=quantization,
        tensor_parallel_size=tensor_parallel_size,
        seed=seed,
        trust_remote_code=trust_remote_code,
        dtype=dtype,
        max_model_len=max_model_len,
        gpu_memory_utilization=gpu_memory_utilization,
        enforce_eager=enforce_eager,
        kv_cache_dtype=kv_cache_dtype,
        quantization_param_path=quantization_param_path,
        device=device,
        enable_prefix_caching=enable_prefix_caching,
        download_dir=download_dir,
        enable_chunked_prefill=enable_chunked_prefill,
        max_num_batched_tokens=max_num_batched_tokens,
        distributed_executor_backend=distributed_executor_backend,
        load_format=load_format,
        # num_scheduler_steps=num_scheduler_steps,
        # use_v2_block_manager=use_v2_block_manager,
        # disable_async_output_proc=disable_async_output_proc,
    )
    end = time.perf_counter()
    print(f"Finish initializing LLM at {time.strftime('%Y-%m-%d %H:%M:%S')}")
    print(f"vllm init time: {end - start}")

vllm ray start time
def run_ray_vllm(
    requests: List[Tuple[str, int, int]],
    model: str,
    tokenizer: str,
    quantization: Optional[str],
    tensor_parallel_size: int,
    seed: int,
    n: int,
    use_beam_search: bool,
    trust_remote_code: bool,
    dtype: str,
    max_model_len: Optional[int],
    enforce_eager: bool,
    kv_cache_dtype: str,
    quantization_param_path: Optional[str],
    device: str,
    enable_prefix_caching: bool,
    enable_chunked_prefill: bool,
    max_num_batched_tokens: int,
    distributed_executor_backend: Optional[str],
    gpu_memory_utilization: float = 0.9,
    num_scheduler_steps: int = 1,
    use_v2_block_manager: bool = False,
    download_dir: Optional[str] = None,
    load_format: str = EngineArgs.load_format,
    disable_async_output_proc: bool = False,
) -> float:
    # 导入必要的库
    from vllm import LLM, SamplingParams

    import ray

    @ray.remote
    class LLMWorker:
        def __init__(self, model, tokenizer, quantization, tensor_parallel_size, seed, trust_remote_code, dtype, max_model_len, gpu_memory_utilization, enforce_eager, kv_cache_dtype, quantization_param_path, device, enable_prefix_caching, download_dir, enable_chunked_prefill, max_num_batched_tokens, distributed_executor_backend, load_format, num_scheduler_steps, use_v2_block_manager, disable_async_output_proc):
            from vllm import LLM
            start = time.perf_counter()
            self.llm = LLM(
                model=model,
                tokenizer=tokenizer,
                quantization=quantization,
                tensor_parallel_size=tensor_parallel_size,
                seed=seed,
                trust_remote_code=trust_remote_code,
                dtype=dtype,
                max_model_len=max_model_len,
                gpu_memory_utilization=gpu_memory_utilization,
                enforce_eager=enforce_eager,
                kv_cache_dtype=kv_cache_dtype,
                quantization_param_path=quantization_param_path,
                device=device,
                enable_prefix_caching=enable_prefix_caching,
                download_dir=download_dir,
                enable_chunked_prefill=enable_chunked_prefill,
                max_num_batched_tokens=max_num_batched_tokens,
                distributed_executor_backend=distributed_executor_backend,
                load_format=load_format,
                # num_scheduler_steps=num_scheduler_steps,
                # use_v2_block_manager=use_v2_block_manager,
                # disable_async_output_proc=disable_async_output_proc,
            )
            end = time.perf_counter()
            print(f"Finish initializing LLM at {time.strftime('%Y-%m-%d %H:%M:%S')}")
            print(f"vllm init time: {end - start}")

        def generate(self, prompts, sampling_params):
            return self.llm.generate(prompts, sampling_params, use_tqdm=True)

    # Create LLM worker
    worker = LLMWorker.remote(
        model=model,
        tokenizer=tokenizer,
        quantization=quantization,
        tensor_parallel_size=tensor_parallel_size,
        seed=seed,
        trust_remote_code=trust_remote_code,
        dtype=dtype,
        max_model_len=max_model_len,
        gpu_memory_utilization=gpu_memory_utilization,
        enforce_eager=enforce_eager,
        kv_cache_dtype=kv_cache_dtype,
        quantization_param_path=quantization_param_path,
        device=device,
        enable_prefix_caching=enable_prefix_caching,
        download_dir=download_dir,
        enable_chunked_prefill=enable_chunked_prefill,
        max_num_batched_tokens=max_num_batched_tokens,
        distributed_executor_backend=distributed_executor_backend,
        load_format=load_format,
        num_scheduler_steps=num_scheduler_steps,
        use_v2_block_manager=use_v2_block_manager,
        disable_async_output_proc=disable_async_output_proc,
    )

    # Add the requests to the engine.
    prompts: List[str] = []
    sampling_params: List[SamplingParams] = []
    for prompt, _, output_len in requests:
        prompts.append(prompt)
        sampling_params.append(
            SamplingParams(
                n=n,
                temperature=0.0 if use_beam_search else 1.0,
                top_p=1.0,
                use_beam_search=use_beam_search,
                ignore_eos=True,
                max_tokens=output_len,
            )
        )

    start = time.perf_counter()
    ray.get(worker.generate.remote(prompts, sampling_params))
    end = time.perf_counter()
    return end - start

someone correct me if im wrong but the way the workers are initialized are done sequentially on the main process.
https://github.com/vllm-project/vllm/blob/bbd3e86926f15e59e4c62246b4b3185e71fe7ff2/vllm/executor/ray_gpu_executor.py#L109
ray add additional overhead because you have to send the whole worker configs through Ray which is a slower process

someone correct me if im wrong but the way the workers are initialized are done sequentially on the main process. which can be seen in the function I linked below
https://github.com/vllm-project/vllm/blob/bbd3e86926f15e59e4c62246b4b3185e71fe7ff2/vllm/executor/ray_gpu_executor.py#L109
ray add additional overhead because you have to send the whole worker configs through Ray which is a slower process

Thank you for your answer! However, I still have some concerns about the initialization overhead:
For a 7B model:

TP=1: 7s initialization time (baseline)
TP=4: 14s initialization time (+7s overhead)
TP=4 with Ray: 24s initialization time (+10s additional overhead)

The overhead seems disproportionately large considering:

The baseline initialization is only 7 seconds
Moving from TP=1 to TP=4 doubles the initialization time
Adding Ray introduces an additional 10s overhead, which is even larger than the TP scaling overhead

Is this level of overhead expected? It seems excessive for a 7B model, especially since:

The TP=1 to TP=4 transition adds 100% overhead
Ray integration adds another ~71% overhead on top of TP=4

Could there be potential optimization opportunities to reduce these initialization costs?

I don't find that overhead too strange, and there definitely is room for optimizations (parallelizing the process) but engine startup time is not really an important metric that people worry about. (model reloading would probably be the solution more people are interested in that is currently not implemented?) is there a reason you're looking for faster initialization?

I don't find that overhead too strange, and there definitely is room for optimizations (parallelizing the process) but engine startup time is not really an important metric that people worry about. (model reloading would probably be the solution more people are interested in that is currently not implemented?) is there a reason you're looking for faster initialization?

Great thanks for you relpy!
we want to improve the startup speed, IMHO, 34s is also too long to wait, especially when we are developing new features and what to run some tests to verify it.

I did some benchmarking on Ray executor initialization:
Code:
https://github.com/vllm-project/vllm/pull/11272
Command:
python3 benchmarks/benchmark_latency.py --model meta-llama/Llama-3.1-8B-Instruct --tensor-parallel-size 4  --num-iters-warmup 1 --num-iters 2  --batch-size 8 --input-len 128 --output-len 256 --max-model-len 2048 --no-enable-prefix-caching --distributed-executor-backend ray

TP = 2
INFO 12-17 22:57:58 llm_engine.py:507] time for initialize_ray_cluster: 2.265391
INFO 12-17 22:58:05 ray_gpu_executor.py:160] time for creating workers: 6.369353
INFO 12-17 22:58:05 ray_gpu_executor.py:252] time for _run_workers update_environment_variables: 0.002733
INFO 12-17 22:58:08 ray_gpu_executor.py:283] time for _run_workers init_device: 1.320933
INFO 12-17 22:58:12 ray_gpu_executor.py:290] time for _run_workers load_model: 3.812319
INFO 12-17 22:58:12 ray_gpu_executor.py:67] time for _init_workers_ray: 12.652736
TP = 4
INFO 12-17 23:00:31 llm_engine.py:507] time for initialize_ray_cluster: 2.435579
INFO 12-17 23:00:44 ray_gpu_executor.py:160] time for creating workers: 12.788581
INFO 12-17 23:00:44 ray_gpu_executor.py:252] time for _run_workers update_environment_variables: 0.003613
INFO 12-17 23:00:46 ray_gpu_executor.py:278] time for _run_workers init_worker: 1.149088
INFO 12-17 23:00:47 ray_gpu_executor.py:283] time for _run_workers init_device: 1.840026
INFO 12-17 23:00:50 ray_gpu_executor.py:290] time for _run_workers load_model: 2.787669
INFO 12-17 23:00:50 ray_gpu_executor.py:67] time for _init_workers_ray: 18.580796
The time to create workers increase proportionally to the number of workers, others are quite constant. I will look into potential ways to optimize.


Bad SQLite database name
Assignees: kbeaugrand
Labels:

SQLite database is not created with the expected name.
Instead of the expected file name, we get a file name "{filename}" created in the current directory.
This issue occurs because the argumement is not passed correctly to the format function.

Hi @kbeaugrand. Thank you for posting. We are aware of the issue,- it is addressed in https://github.com/microsoft/semantic-kernel/pull/425.


update dockerfile for cuda cudnn update

Hi team,
Kindly find the changes below regarding update of cuda and cudnn version.

manual install cmake to 3.14, reason: as per testing and online search, cmake 3.10 the distributed version could not detect cuda 10 properly.

Kindly let me know your comment.  Thank you

Also, please kindly advise do we need cudnn 7.5? as mentioned in https://issues.apache.org/jira/browse/SINGA-429
However, the official docker image from nvidia is offering cudnn 7.4.2
https://gitlab.com/nvidia/cuda/blob/ubuntu18.04/10.0/devel/cudnn7/Dockerfile

pls add the command for compiling and installing singa.
when the users pull the image and run the container, they should be able to run
import singa without errors.

Hi @nudles , this is almost done. I have been stuck on a weird cmake behaviour and investigating it:
make syntax error in generated makefile build/python/CMakeFiles/_singa_wrap.dir/flags.make

how about mkldnn? can install it in the docker and let singa use it?

Hi @nudles , I am working on MKL, but I am trying make it optional, since for src/model/operation/*, MKLDNN actually "overwrite" cuda.

MKLDNN is called when the code is running on CPU; cudnn is called when it is running on GPU.
There should be no conflict.

HI @nudles , this is basically done:

[x] python3, cuda9, devel
[x] python3, cuda10, devel
[x] mkldnn enabled

but it is not yet ready to merger and depends on:

a workaround for cmake issue (generated makefile with syntax error). And I am still experimenting to understand the root cause..
https://github.com/dcslin/incubator-singa/commit/a871dac209c36606adf11243ad9cfff2253e4af6
mkldnn PR
https://github.com/apache/incubator-singa/pull/431


[BUG] ImportError: libcufft.so.10: cannot read file data

Describe the bug
A clear and concise description of what the bug is.
The following error occurs when I execute DeepSpeed
Traceback (most recent call last):
File "/root/miniconda3/envs/deepspeed/bin/deepspeed", line 3, in
from deepspeed.launcher.runner import main
File "/root/miniconda3/envs/deepspeed/lib/python3.10/site-packages/deepspeed/init.py", line 10, in
import torch
File "/root/miniconda3/envs/deepspeed/lib/python3.10/site-packages/torch/init.py", line 367, in
from torch._C import *  # noqa: F403
ImportError: /root/miniconda3/envs/deepspeed/lib/python3.10/site-packages/torch/lib/../../../../libcufft.so.10: cannot read file data
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
ds_report output
Please run ds_report to give us details about your setup.
Screenshots
If applicable, add screenshots to help explain your problem.
System info (please complete the following information):

OS: [e.g. Ubuntu 18.04]
GPU count and types [e.g. two machines with x8 A100s each]
Interconnects (if applicable) [e.g., two machines connected with 100 Gbps IB]
Python version
Any other relevant info about your setup

Launcher context
Are you launching your experiment with the deepspeed launcher, MPI, or something else?
Docker context
Are you using a specific docker image that you can share?
Additional context
Add any other context about the problem here.

Hi @1259010439 - this looks to be an error with your torch install:
ImportError: /root/miniconda3/envs/deepspeed/lib/python3.10/site-packages/torch/lib/../../../../libcufft.so.10: cannot read file data

Can you share the output of the following commands?
pip list
python -c "import torch; print('torch:', torch.__version__, torch)"
python -c "import torch; print('CUDA available:', torch.cuda.is_available())"

Hi @1259010439 - let us know if you are still hitting this and we can investigate more.


General Grievance: Watch shatteredsilicon.net

General Grievance requests the watch of the watch_keyword shatteredsilicon\.net. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

shatteredsilicon\.net has been seen in 0 true positives, 0 false positives, and 0 NAAs.

Approved by Spevacus in Charcoal HQ


Retrieving metadata from a database is very slow for remote databases

Find a way to optimize in AbstractRelationalDbmsHandler

It looks like this was only an issue with PostgreSQL-databases. @Rajvinder made a good job with this! We will let this remain open until we have made sure everything works and there aren't any more performance issues with remote databases.


Update examples to support optional dns/ssl support for cases where domains are managed at another registrar

https://github.com/bschaatsbergen/terraform-gce-atlantis/blob/main/examples/complete/main.tf#L96-L107 mentions a small section about defining a dns record set (adding an A record) with a managed zone entry.
It would be helpful to mention somewhere that the current implementation is very GCP native or make this part optional.
More context: https://atlantis-community.slack.com/archives/C5MGGAV0C/p1677427493186339
Thanks!

Considering that not everyone manages their DNS from within GCP, I still would like to support this case.

Are you currently blocked using this module @eddyv or did you manage to get around it in the meantime?

Been mostly playing around with this in my free time so haven’t made much progress on any workarounds.

I've been misunderstanding your use case, but to properly understand what you're trying to achieve:
You want to deploy Atlantis on GCP, but you manage your DNS outside of GCP, correct?

Been mostly playing around with this in my free time so haven’t made much progress on any workarounds.

Yup!

Hi @eddyv this should just work out of the box if you add an A record for the SSL certificate to wherever you manage your domain name. I've just tried out deploying the module using a domain hosted in AWS (Route 53) and after adding the A record of the GCP load balancer, the Google Managed SSL Certificate was provisioned successfully.
I'm closing this issue, if there's any problem you're facing feel free to reopen this issue.


Parsing DOT string with formatting in it

Hello, I am using vis.parseDOTNetwork(sTemp); to parse this DOT-style string:
digraph Tree {
node [shape=box, style="filled, rounded", color="black", fontname=helvetica] ;
edge [fontname=helvetica] ;
0 [label=<Intensity < 120 | Height (px) ≤ 2.5
gini = 0.158
samples = 8946
value = [8175, 771]
class = No Defect>, fillcolor="#e78d4c"] ;
1 [label=<gini = 0.0
samples = 7508
value = [7508, 0]
class = No Defect>, fillcolor="#e58139"] ;
0 -> 1 [labeldistance=2.5, labelangle=45, headlabel="True"] ;
2 [label=<Intensity < 120 | Width (px) ≤ 20.5
gini = 0.497
samples = 1438
value = [667, 771]
class = Defect>, fillcolor="#e4f2fb"] ;
0 -> 2 [labeldistance=2.5, labelangle=-45, headlabel="False"] ;
3 [label=<Intensity < 120 | Area (px) ≤ 22.5
gini = 0.431
samples = 875
value = [275, 600]
class = Defect>, fillcolor="#94caf1"] ;
2 -> 3 ;
4 [label=<gini = 0.371
samples = 191
value = [144, 47]
class = No Defect>, fillcolor="#edaa7a"] ;
3 -> 4 ;
5 [label=<gini = 0.31
samples = 684
value = [131, 553]
class = Defect>, fillcolor="#68b4eb"] ;
3 -> 5 ;
6 [label=<Intensity < 120 | Height (px) ≤ 4.5
gini = 0.423
samples = 563
value = [392, 171]
class = No Defect>, fillcolor="#f0b88f"] ;
2 -> 6 ;
7 [label=<gini = 0.491
samples = 306
value = [174, 132]
class = No Defect>, fillcolor="#f9e1cf"] ;
6 -> 7 ;
8 [label=<gini = 0.257
samples = 257
value = [218, 39]
class = No Defect>, fillcolor="#ea985c"] ;
6 -> 8 ;
}

The DOT string was created using scikit-learn's sklearn.tree.export_graphviz(...) (see https://scikit-learn.org/stable/modules/generated/sklearn.tree.export_graphviz.html#sklearn.tree.export_graphviz). I have verified that this is a valid DOT string using GraphViz Online.
When I call parseDOTNetwork , it throws the following error: "Syntax error in part "<Intensity < 120 | Heigh..."" from line 7283 of vis-network.js.
It seems like vis-network is not set up to parse more complex labels with HTML formatting, but I could not find anything in the docs describing the limitations or workarounds. What do I need to do to be able to parse this DOT string?
Here are my versions from package-lock.json:
"vis-data": {
			"version": "6.2.1",
			"resolved": "https://registry.npmjs.org/vis-data/-/vis-data-6.2.1.tgz",
			"integrity": "sha512-y80h+jJ6gQXfeWqDdts9UTrLubggx99Q0dJionQF/XxHIbcxNZ+2cuwv4y+bIapVF9nW0DyE08EcMMlicAlSWg==",
			"requires": {
				"vis-util": "^1.1.0"
			}
		},
"vis-network": {
			"version": "7.3.5",
			"resolved": "https://registry.npmjs.org/vis-network/-/vis-network-7.3.5.tgz",
			"integrity": "sha512-i9Ow9qqYGhXwcTEetbKCHBTzYvjsag5xM+Zl009ajjZyAvMLqu3Gljk/VpcAn2WqQHZAz0g/Cg3+xfALxYwLGA=="
		},
"vis-util": {
			"version": "1.1.8",
			"resolved": "https://registry.npmjs.org/vis-util/-/vis-util-1.1.8.tgz",
			"integrity": "sha512-gX461BUrYnHfDpMalvQdQ26SG/DplIvsK7u5KUCWEfPpcnTXm22FtQH5a+GIbDBcePe1sm578mpbWwTbCgRVww==",
			"requires": {
				"moment": "^2.24.0",
				"vis-uuid": "^1.1.3"
			}
		},

Hello, I'm just following up on this - is there any restriction on what version of DOT I can use? Or are certain DOT features not supported? I don't necessarily need the code updated, I just need to know what it can support so that I can work around the features that are not supported.

It also looks like it does not support subgraphs:
digraph Tree { fontsize=25;
subgraph cluster_1 {
        node [color=black fontname=helvetica shape=box style="filled, rounded"]
        edge [fontname=helvetica labelangel=45 labeldistance=2.5]
        V1_0 [label="Intensity Threshold: < 170
Defect (#): 256
Okay (#): 2294
Split Gain: 0.081" fillcolor="#199750"]
        V1_0 -> V1_1 [xlabel="Area >= 967"]
        V1_1 [label="Intensity Threshold: > 50
Defect (#): 149
Okay (#): 30
Split Gain: 0.068" fillcolor="#ea5739"]
label = "View 1"
}
subgraph cluster_2 {
        node [color=black fontname=helvetica shape=box style="filled, rounded"]
        edge [fontname=helvetica labelangel=45 labeldistance=2.5]
        V2_0 [label="Intensity Threshold: > 60
Defect (#): 1049
Okay (#): 2067
Split Gain: 0.111" fillcolor="#b9e176"]
        V2_0 -> V2_1 [xlabel="Std >= 22.2"]
        V2_1 [label="Intensity Threshold: > 160
Defect (#): 818
Okay (#): 532
Split Gain: 0.048" fillcolor="#fedc88"]
label = "View 2"
}
}

Another gap: It also does not render "xlabels" on edges nor nodes.
Looking at the old vis.js (which I believe this demo runs on), it seems to render that stuff no problem. Maybe there is some old code from there that you guys can use?

Ping - just checking in on this

Hi @s4m0r4m4,
the DOT parser is old, definitely incomplete, not exactly specs compliant even where implemented and yeah, I can't rule out that it is indeed broken.
Would you (@s4m0r4m4 or whoever is reading this) be willing to work on this? All the logic is neatly confined (not a single import/require statement) within https://github.com/visjs/vis-network/blob/master/lib/network/dotparser.js so not much insight into the library is needed (DOT string is the input and the output is directly supplied to network.setData({ nodes, edges })).

Hi Thomassh, thanks for the message. I will have to see when this rises to the priority queue for me, it does sound nicely compartmentalized. Are you open to replacing most of that functionality with a separate lib (e.g. https://github.com/anvaka/dotparser/ or something similar)?

Hi,
I've also noticed problem with double quotes parsing. Example:
27 [Cmd="\"C:\Program Files (x86)\Microsoft Office\Root\Office16\SDXHelper.exe\" -Embedding"].
I looked into the source code and it looks like it does handle those cases when there are double quotes. Parser takes the first (") and thinks that the second one is the end of string and the rest of the string shouldn't be there.
Do you know any workaround ? :)

It also doesn't like comments. If I remove comments (//) it works.

I've run into this as well while trying to render Graphviz from (my) Enola.dev RDF Graph Generation with Vis.js. (In my specific case, after finding and reading this issue, I'm going to "skip" this Dotparser and just "directly" turn my Things data structure into what Vis.js "natively" needs.)
PS: If any maintainers are reading this, I would duplicate #1957 to this issue.


Remove id attribute from Radio component

Removed id from radio button. Id has to be passed in as prop.

Codecov Report

Merging #194 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #194   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          33     33
  Lines         400    400
=====================================
  Hits          400    400

Impacted Files
Coverage Δ

src/Radio.js
100% <ø> (ø)
:arrow_up:

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 559b648...7cdd120. Read the comment docs.

Fixes #190


Got some of the mutation tests passing

Includes the mutation fix from the rs/fix-mutations branch
POST, PUT, PATCH, and DELETE mutation tests pass
Unskipped a couple of tests for empty body error cases that were already passing
Fixed a case of broken nesting that was preventing an afterEach from being called after a particular test, which caused subsequent tests to fail due to leaked fetch mock state. This is why the tests were passing on the rs/fix-mutations branch, but failing on my branch, because mine had this improperly nested test un-skipped and it was leaking its mock state.
Got fieldNameDenormalizer tests passing

Left a couple of the empty body tests skipped because they were asserting that when the response was 204 and the graphql requested fields, it would return those fields with null values, and also return the __typename attribute correctly. But if the body is empty (no content) then we don't have the type attribute from which to derive __typename. And the tests were actually passing body content even though 204 should have no content. So, not sure how we want to handle this case if at all.

RE

Left a couple of the empty body tests skipped because they were asserting that when the response was 204 and the graphql requested fields, it would return those fields with null values, and also return the __typename attribute correctly. But if the body is empty (no content) then we don't have the type attribute from which to derive __typename. And the tests were actually passing body content even though 204 should have no content. So, not sure how we want to handle this case if at all.

We could set __typename to something like NoContent. I'm not sure what the best practices are in GraphQL for empty responses like that.
For now I wouldn't worry about those tests.


Look for unresolved jest.mock() calls

Hi.
This is a feature suggestion.
Would be interested in submitting a PR if you think you're likely to accept it and can point me in the right direction.
When working with Jest its very typical to have test files that start like this:
import { foo } from '../../../src/utils/bar';
import baz from '../../../src/baz';

jest.mock('../../../src/utils/bar');
jest.mock('../../../src/baz');

As you can see the path for each dependency you want to mock is repeated twice- once for the import statement, and once for the jest.mock() call.
Currently, if I have an unresolved path in the import statement I can use eslint-plugin-import to catch it, but as-can-be-expected it won't catch an unreasonable path in the jest.mock() call. Ideally I would like to catch cases like these with an eslint rule as well.
There is already an eslint plugin specifically for Jest called eslint-plugin-jest and I suggested to them to contribute a rule that will help catch cases like this, but they declined (which is fine of course).
So now as I see it there are two options:

Create a rule specifically to catch unresolved paths in jest.mock calls.
Make this a bit more generic and write a rule that can find unresolved paths in any call to any service that's relevant to whatever framework\library the user is working with. (e.g. if tomorrow there's some new hot testing framework where you have to mock your dependencies by calling hi.there('.../a/b')).
I also found this issue #585 which is basically the exact same requirement. If you make it configurable there is no difference between require.resolve(path) and jest.mock(path).

For both options I would like to create and contribute this rule to eslint-plugin-import to make use of the heavy-lifting it does for determining if a path is resolvable (revolvers mechanism, caching, casing issues), and also for sheer reach because I think this use-case will be relevant for a lot of people.
So, my question(s):

Would you consider accepting a PR that adds this rule?
Would you prefer option 1 or option 2?

Thank you!

This seems like something that belongs in eslint-plugin-jest, not here.

Also note that jest has lots of config that may one day affect how mocks are resolved, and this plugin wouldn't want to manage that.

Thanks for the reply.
In that case would you be willing to consider a PR that implements options # 2 in my post?
Like I mention, you can let the user configure any function that needs a valid path, be it jest.mock('../a/b'), require.resolve('../a/b'), or foo.bar('../a/b').

For the same reason, I don't think so - alternate require functions could have all kinds of different rules applied, and you can't just swap out node's require for something else without lots of other configuration.


Pin codecov dependency

The latest codecov releases introduce PyYAML as a dependency, which fails to install on Appveyor (py33 and py34).

https://twitter.com/codecov/status/725665220656566272 👻

Pushed up to 2.0.2 of codecov. 🔔  @stevepeak


Mmake chat/completion/image optional in symfony integration

Summary by CodeRabbit

Bug Fixes

Improved handling of missing adapters in chat, completion, and image functionalities to prevent system crashes.

Chores

Removed unnecessary dependency on "modelflow-ai/completion": "^0.2" in the chat project.

@coderabbitai full review

@coderabbitai summary

fixes #74


Documentation

aHey,
first awesome Libary. The only Problem with the Libary is that there is no Documentation. A big Example is good and helpful but it would be nice to have a Documentation where I can read which Method makes what.
Greetz

Hallo, I found a good example at the end of page there is the link of full code. http://www.limpkin.fr/index.php?post/2014/12/07/First-Steps-with-the-ESP8266-03-Development-Board
byz


Rebuild for Linux/aarch64, Linux/ppc64le, and OSX/arm64

MNT: Re-rendered with conda-build 3.22.0, conda-smithy 3.21.1, and conda-forge-pinning 2<IP_ADDRESS>.58.52

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Gym mismatch check between export type and profile misattributes type by reading export type from app ID part in profile name

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
We have an issue where the check in gym for mismatch between export type and profile (error_handler.rb) is misattributing an ad-hoc profile as enterprise, because the app ID contains the string "enterprise". Our profiles have been generated using fastlane match, and follow the match naming convention: match AdHoc app.id.with.enterprise.inside.it.
There seems to be a mismatch between your provided `export_method` in gym
and the selected provisioning profiles. You passed the following options:

   export_method:      ad-hoc
   Bundle identifier:  app.id.with.enterprise.inside.it
   Profile name:       match AdHoc app.id.with.enterprise.inside.it
   Profile type:       enterprise

Make sure to either change the `export_method` passed from your Fastfile or CLI
or select the correct provisioning profiles by updating your Xcode project
or passing the profiles to use by using match or manually via the `export_options` hash

The behaviour of the mismatch check today also support profile names that are not generated by match, and thus do not follow the match <export_type> <appid> naming convention.
A previous change in 2017, was created to fix a special case where the profile name contained two different profile types. i.e. "InHouse AdHoc", and InHouse should take precedende over AdHoc (https://github.com/fastlane/fastlane/pull/10272). This specific order of precedence causes an issue for us, however, the underlying cause is that the check uses string search that is too broad.
Discussion
I want to discuss two possible solutions:

Make the mismatch check only support profile names that follow the match profile naming convention, i.e. profiles that start with match . We have a working fix in this fork: https://github.com/fastlane/fastlane/compare/master...icenorge:fastlane:bugfix/check-profile-name-and-export-method
Make the check not search for export types inside the app ID part of the profile name as generated by match, e.g. match AdHoc ignore.searching.here

Should the check support profiles that do not follow the match naming convention?
In solution 1, the check is ignored if the profile does not have the expected name, however, one can argue that the check is more valuable when the profile names are generated manually.
Solution 2 would not change current behaviour.

I have created a pull-request with a suggested fix.

The linked pull request solves issue by solution no 2.

Can we get this fix merged?


Direct CPU GPIO access is not supported yet

Just noting here because it's easy to forget and hard to find: This option is, in the C6 TRM, documented under 1.14 Dedicated IO, in the High-Performance CPU chapter.


Command still hasn't been written into connection! Increase nettyThreads and/or retryInterval settings

We are experiencing the error what seems like network related errors using the 3.13.2 version of redisson.
Caused by: org.redisson.client.RedisTimeoutException: Command still hasn't been written into connection! Increase nettyThreads and/or retryInterval settings. Payload size in bytes: 0. Node source: NodeSource [slot=0, addr=null, redisClient=null, redirect=null, entry=null], connection: RedisConnection@1897737917 [redisClient=[addr=redis://<IP_ADDRESS>:6379], channel=[id: 0xcfc764bc, L:/172.xx.xx.xx:36380 - R:/<IP_ADDRESS>:6379], currentCommand=CommandData [promise=RedissonPromise [promise=ImmediateEventExecutor$ImmediatePromise@7fdadeee(failure: java.util.concurrent.CancellationException)], command=(GET), params=[[115, 101, 114, 118, 105, 99, 101, 58, 109, 101, ...]], codec=org.redisson.client.codec.ByteArrayCodec]], command: (GET), params: [[115, 101, 114, 118, 105, 99, 101, 58, 109, 101, ...]] after 3 retry attempts
at org.redisson.command.RedisExecutor$2.run(RedisExecutor.java:200)
at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:672)
at io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:747)
at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:472)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
... 1 common frames omitted

config:
nettyThreads: 32
retryInterval: 1.5s

We run  code in the docker of rancher,  then have been occurred  on some pods. so confused am I.

Did you try to set nettyThreads to 64?

Did you try to set nettyThreads to 64? Do you use blocking calls in async callbacks of Redisson commands?

pod set up "cpu: 2", it is too many.  it have blocking calls, also have async.

you should avoid to use blocking calls in async callbacks.

you should avoid to use blocking calls in Redisson async callbacks.

i confirm that it is a bug, all error use the connection which is the same one. please fix it @mrniko .

can you share your config?

can you share your config?

i saw history issues about this point, i'll try set config 'pingConnectionInterval=30000'

We have the same problem. This is does not seem to be related to netty threads at all. Nearly all threads are runnable and we still get this exception some time. If a client is effected it rejects nearly every command.

This might be related to #3984. Would make sense logically and I seems that clients that have this problem also have the shutdown problem. Although I can say for sure as we have 10 redisson instances on each service

@SplotyCode
Can you make a memory dump during that moment?

We made one but I am not allowed to open it myself. I was told that there is nothing unusually. If you tell me would you want to see j can ask an administrator

@SplotyCode
how many connections affected?

We have the same problem. How to solve？ solution ？

@ayu-webmaster
Make sure that you don't use blocking calls in asyn/rx/reactive handlers.

What do you mean by blocking commands? Can you show an example of wrong usage?

@JanCizmar
Calls which blocks execution thread.


Run html5 client as separate Docker container

Currently the frontend is delivered by including it into the backend as war overlay. This leads to a very long delivery process:

build/test/release frontend first,
build/test/release backend then,
restart backend with frontend included finally as Docker container

In particular in phases where we have mostly frontend changes this takes too much time. We should improve it by separating both parts for delivery.

Obsolete


Optimist should only pick transfer and withdraw transactions paid for by user

Fixes  #13
This is a temporary solution for mainnet launch to control the costs that Polygon as proposer will incur on gas fees.
Need to be replaced with a solution that can pay the right proposer amongst all the proposers and can handle rollback of payment if a rollback occurs.
Flow:

User will create a transfer/withdraw transaction (this isoptimisticTransaction in nightfall-client/src/services/transfer.mjs` which also has transactionHashL2 as a property)
User calls function pay(transactionHashL2) in FeeBook.sol on Polygon PoS

to transfer a configureable fixed value of MATIC tokens to proposer's address
on successful transfer, add to mapping feeBook the transactionHashL2 as key and fixed value of MATIC tokens transferred as value for this key

User sends optimisticTransaction to proposer by calling /offchain-transaction

verify that this transactionHashL2 exists in FeeBook.sol
verify that the value of this transactionHashL2 is equal to or greater than the configureable fixed value of MATIC tokens

On successful verification, proposer will then send this transaction to optimist
Optimist will then add this transaction to transaction mempool like it already does today. No changes here.

Definition of Done:

Proposer should not propose L2 blocks with transactions that are not paid for by a user
Successfully test that proposer is not proposing unpaid transactions
Should work in dev environment as well as staging/prod environments
Should align with updated coding principles specified in https://g-i-t.slack.com/archives/C02MBV7SVNV/p1646996461658379
Testing in dev environment will use a second ganache blockchain
Testing in staging/prod environments will use a Mumbai Polygon PoS testnet chain

Resolution

Run a second ganache blockchain for dev in start-nightfall and test with a specific test for the fee payments for proposers.
Updates to docker files and deployer to run this second blockchain and deploy contract for payments.
SDK transfer/withdraw with modifications required only to make the off-chain transfer and withdraw calls in client happen over two steps.
Updates to nightfall-client and optimist to do the payments by the user and check the payments by the proposer.
Test in tests folder to check the solution works for off-chain transfers / withdraws.
Now for testing  ./start-nightfall -g -d in one terminal and npm run offchain-tx-test in another terminal to test the solution with the second ganache deployment.
Included offchain transfer and withdraw in test-e2e-tokens test for ERC20 in the end solution.
For testing with Mumbai instead of doing in second ganache you can launch ./start-nightfall -g -d -m in one terminal and BLOCKCHAIN_PAYMENTS_URL=wss://ws-matic-mumbai.chainstacklabs.com npm run offchain-tx-test in another terminal.
We can see these payments to the proposer in tests in Polygonscan for Mumbai. https://mumbai.polygonscan.com/address/0xfeEDA3882Dd44aeb394caEEf941386E7ed88e0E0#internaltx.

Information about public endpoints for the Polygon network (Mainnet/Mumbai). https://docs.polygon.technology/docs/develop/network-details/network/

There are some endpoints that don't work. In Mumbai testnet tested with wss://ws-matic-mumbai.chainstacklabs.com.
Thinking in refactoring proposer code that it seems duplicated in ping-pong test and in cli but left it for future PR as it could interfere in the deployment of the infrastructure for the testnet launch.

Would this break the web wallet, because it doesn't have code to call the payment contract, or is that handled in some way?

Closing this PR because future will overwrite this


Fully custom document view

Hi there,
Thank you for a nice package to show a PDF file.
This is a feature that I needed and maybe there are many people out there too.
Please take a look and if it is ok, publish a new version for it, that will be great!
Thank you!

I've just found that just use the native_pdf_render :D


Adding class and styles for css to handlebars.

Added to main, signin, signup, signinorsignup handlebars files.


Valid bech32 addresses fail validation

I tried to use your bitcoin address validator, and I noticed that some valid bech32 addresses fail validation. I have included a few samples, the entire list of bech32 test vectors can be found here: https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki
const bitcoinAddressValidation = require("bitcoin-address-validation");

// bech32 test vectors
const addresses = [];
addresses.push('A12UEL5L');
addresses.push('a12uel5l');
addresses.push('an83characterlonghumanreadablepartthatcontainsthenumber1andtheexcludedcharactersbio1tt5tgs');
addresses.push('abcdef1qpzry9x8gf2tvdw0s3jn54khce6mua7lmqqqxw');
('11qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqc8247j');
addresses.push('split1checkupstagehandshakeupstreamerranterredcaperred2y9e3w');

for(const address of addresses) {
  const result = bitcoinAddressValidation(address);
  console.log(`${address} => ${result}`);
}

The strings you listed are bech32 encoded, but they're not bech32 bitcoin addresses.
This validator checks for the following to validate a bech32 bitcoin address:
A segwit address[6] is a Bech32 encoding of:

    The human-readable part "bc"[7] for mainnet, and "tb"[8] for testnet.
    The data-part values:
        1 byte: the witness version
        A conversion of the 2-to-40-byte witness program (as defined by BIP141) to base32:
            Start with the bits of the witness program, most significant bit per byte first.
            Re-arrange those bits into groups of 5, and pad with zeroes at the end if needed.
            Translate those bits to characters using the table above.


Missing configuration options for compaction tuning in v2

In InfluxDB 1.x, both compaction throughput and and throughput burst could be configured. However, in v2, I only find it possible to configure the burst.
v1:
[data]
# ...
compact-throughput = "620m"
compact-throughput-burst = "1200m"

v2:
storage-compact-throughput-burst = "1700M"
# (no non-bursty-option)

Under normal, even heavy load, this isn't a HUGE problem, but I just had a high-traffic server run out of disk due to separate issues. When the disk issue was resolved, there were hundreds of compactions queued, and it's taking probably a day to get through the backlog, despite almost no load on the server during this period.
(This is sort of duplicate/related to #21443 - which addresses the same issue coming from the other side).
I see the code is still there, as far as I can tell, so I'm not sure how much work this is.
(On an unrelated note: there seem to be a lot of options like these that are defined in the engine, but not exposed to be actually configured - I'm a bit curious if this is intentional or coincidental?)

So a small update: I said this isn't a huge problem, but it turns out I was wrong. On one of our setups with roughly 3,5 million series, this compaction is able to keep up, but on an other with barely 430k series - the compactions queue up faster than they complete.

As far as I can tell, there is no historical reason that configuration is not exposed. If you'd like to submit a PR, they are always welcome and if not I will add it to the backlog to be addressed when time permits. Thanks for bringing this to our attention!


HDDS-10625. Remove unused netty-related config options from SCM

What changes were proposed in this pull request?
Removed non-used properties:

hdds.rest.netty.high.watermark
hdds.rest.netty.low.watermark

What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-10625
How was this patch tested?
Existing tests

@myskov , is this for the s3 secret manager in s3 gateway?  I would suggest mark then as @Deprecated and keep them in the code now. And we can revisit those and remove them from later releases.


Add a text md5 field to article content table

Goal
Reduce the compute cost for down stream processes needing to dedupe articles.
@gkatre can you help me update the production table to accept this new field and backfill records with a null text_md5 value?

@jeshuaborges added the new field for both streaming and backfill tables:
alter table raw.item.article_content_v2 add column text_md5 string;
alter table snapshot.item.article_content_v2 add column text_md5 string;


Bug: Cannot find my 4th Gen lock

Describe The Bug
The device cannot be added to the plugin with the error [August] Discover Devices: TypeError: Cannot convert undefined or null to object
To Reproduce
install home bridge on mac, install the plugin. Add the device with serial number, restart home bridge
Expected behavior
The device is found and i can control it with home bridge.
Relevant log output
FetchError: Status 401 (undefined): undefined
[August] Discover Devices: TypeError: Cannot convert undefined or null to object

Config for homebridge-august
{
    "bridge": {
        "name": "Homebridge 3926",
        "username": "********",
        "port": 51934,
        "pin": "841-**-***",
        "advertiser": "bonjour-hap"
    },
    "accessories": [],
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "platform": "config"
        },
        {
            "devices": [
                {
                    "type": "bot",
                    "name": "Hallway Light",
                    "address": "***********",
                    "autoTurnOffInPressMode": false
                }
            ],
            "name": "SwitchbotBluetoothPlatform",
            "_bridge": {
                "username": "**********",
                "port": 41029
            },
            "platform": "SwitchbotBluetoothPlatform"
        },
        {
            "name": "August",
            "credentials": {
                "augustId"<EMAIL_ADDRESS>                "password": "mypassword",
                "installId": "1",
                "validateCode": "******",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "devices": [
                    {
                        "lockId": "**********",
                        "configLockName": "Door",
                        "logging": "debug"
                    }
                ],
                "logging": "debug"
            },
            "platform": "August"
        }
    ]
}

Screenshots
No response
Device & Model
4th Gen Lock
Node.js Version
v19.3.0
NPM Version
9.2.0
Homebridge Version
v1.6.0
Homebridge August Plugin Version
v1.1.0
Homebridge Config UI X Plugin Version
No response
Operating System
macOS

I’m having the same problem with my 3rd generation august lock with August connect

Would need more info on your self, please open your own issue.

I have the same issue with a fresh install of Homebridge, I have set debugging on and in the console after a restart get:
[12/24/2022, 2:25:47 PM] Homebridge v1.6.0 (HAP v0.11.0) (Homebridge 8DAD) is running on port 51751.
FetchError: Status 401 (undefined): undefined
[12/24/2022, 2:25:47 PM] [August] Discover Devices: TypeError: Cannot convert undefined or null to object

The FetchError line is the only different between normal and debugging logging options.
My config looks like
{
    "bridge": {
        "name": "Homebridge 8DAD",
        "username": "xx",
        "port": 51751,
        "pin": "xx",
        "advertiser": "bonjour-hap"
    },
    "accessories": [],
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "platform": "config"
        },
        {
            "name": "August",
            "credentials": {
                "augustId": "xx",
                "password": "xx",
                "installId": "xx",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "logging": "debug"
            },
            "platform": "August"
        }
    ]
}

I think I'm having the same issue.  However I must disclose I'm new to Homebridge and to August.  I just installed Homebridge and adding my new August Wi-Fi gen 4 lock has been my first attempt to use Homebridge.  I installed the plugin and entered my account information per the instructions.  From here, is it supposed to automatically find my lock on the network?  If so, that isn't working.  At least on the "Devices" tab of the plugin settings it shows "No Devices."  I've also tried adding my lock information under "August Device Settings" and it also doesn't list it under the "Devices" tab nor is anything showing in the Home app on my iPhone.  I'm assuming the "Lock ID" is the Serial Number of my lock.  If not, where do I find the lock ID?
I'd appreciate any help to you can provide to get this working.  I tried setting up the native HomeKit integration with August and it doesn't appear to work well.  I assume it's because my Apple TV is to far from the lock so I was hoping Homebridge would work instead.

After playing around with the August API I think I found the cause of this issue. August is more then happy to respond with a valid but blank response body and even trigger the 2FA email when given a valid API key and a valid email or phone# to /session.
{     "installId": "0000000-0000-0000-0000-000000000000",     "region": "",     "applicationId": "",     "userId": "",     "vInstallId": false,     "vPassword": false,     "vEmail": false,     "vPhone": false,     "hasInstallId": true,     "hasPassword": true,     "hasEmail": true,     "hasPhone": true,     "isLockedOut": false,     "oauth": {},     "apiKey": {},     "homeAccess": "",     "captcha": "",     "email": [],     "phone": [],     "expiresAt": "2023-05-02T19:21:57.294Z",     "temporaryAccountCreationPasswordLink": "",     "iat":<PHONE_NUMBER>,     "exp":<PHONE_NUMBER>,     "FirstName": "",     "LastName": "" }
In my case I had typo when I entered my password. I think simply checking for a blank "userId" in the response from august should avoid folks getting to the const devices = await this.august.details(); call without being properly authored which throws the [August] Discover Devices: TypeError: Cannot convert undefined or null to object folks are seeing here.
Could also add error handling for  receiving a 401 unauthorized from const devices = await this.august.details();
@donavanbecker happy to make a PR when I have some free time but thanks for all your work on this plugin :)

Thanks @robert-burden, I will accept any PR. We can push it to beta, have people test and then push it out to a new version.

I've verified my August password is correct and it's still not finding my lock.  Is there anything else I can try?

@OSUmac007 Your issue sounds different then the bug in this thread have you restarted home bridge after entering your login to add the 2FA key that august emails you? The 4 steps from the Configuration section here https://github.com/donavanbecker/homebridge-august/wiki

@robert-burden Yes, I followed the steps.  I just noticed this in the Homebridge log:
[1/3/2023, 11:02:57 PM] [August] Discover Devices: TypeError: Cannot convert undefined or null to object
Until now I didn't know to look in the Homebridge log, I was looking at the config tab in Homebridge.

As I was scrolling through the log I noticed this message:
The plugin "homebridge-august" requires Node.js version of ^14.21.1 || ^16.18.1 || ^18.12.1 which does not satisfy the current Node.js version of v16.16.0. You may need to upgrade your installation of Node.js - see https://homebridge.io/w/JTKEF
Once I figured out how to update the Node.Js version to 16.18.1 and reconnected it to my August account it found my lock.  Hooray!  I thought I found the problem and everything was great, except now there's a new problem.  I'm now getting a the following message scrolling in the log.
[1/4/2023, 1:58:34 AM] [August] Lock: East Door doorState: init, closed: false, open: false
Any ideas?

I looked at other reported issues and saw there is a thread listing the exact issue I listed above.  It references the contact sensor which i setup when I installed the August app but did notice the August app had stopped indicating if the door was open or closed.  I checked in the August app and sure enough, the contact sensor was no longer connected to my lock.  All I can figure is it was cleared when I added the keypad for some reason.  I reconnected the contact sensor and the scrolling error when away and the lock started functioning through the Apple Home app. YAY!
However, I do notice another issue that is reported in another thread.  When the lock isn't locked or unlocked using the Home app, the status doesn't appear to update in the Home app.  If the lock is manually locked or unlocked, done remotely through the August app or the Alexa skill the home app just shows the status basically as pending until you engage with it in the Home app again.  This triggers a notification but the lock doesn't actually do anything because the state in the home app just updates to whatever the current state of the lock is.  Something I found interesting, I asked Alexa to lock the door.  The home app showed the status as "unlocking" since its last reported state was unlocked.  I asked Siri what the status of the door was and it told me (correctly) it was locked even though the Home app continued to show "Unlocking."
Another issue I noticed in the log is it appears to report the opposite state of the lock.  For example, when I lock the lock, the log reports "Door was Unlocked" and when I unlock it it reports "Door was Locked."

Any more movement on this issue..i'm in the same boat as well, with this error:  Discover Devices: TypeError: Cannot convert undefined or null to object

Same issue here with the 4th gen lock.

If you've tried everything and can't get this plugin to work, try enabling SmartThings integration (using the SmartThings app on your phone), which is officially supported by August, and then use the homebridge-smartthings plugin to control your locks.

Everyone on this issue, can you try clearing your cache for the august plugin (uninstall plugin, restart, then reinstall plugin with latest beta, and setup.

Also getting error:
[August] Discover Devices 2: TypeError: Cannot convert undefined or null to object
And no Devices detected.

v1.2.0 has been released


URLSessionTransport is only available in iOS 13 or newer, but not constrained to that in RealtimeClient

Bug report
Describe the bug
URLSessionTransport is only available in iOS 13 or newer, but not constrained to that in RealtimeClient
What I find interesting is that the version constraint is commented out. Is this by accident?
Screenshots

System information

OS: macOS
Xcode 12
Version of supabase-swift: none, this package is based off a branch, not versions

@chFlorian already added the availability constraints please check this out, https://github.com/supabase/realtime-swift/blob/242acdcbbf8c4f063c114831a3e7820c4dbf61a6/Sources/Realtime/RealtimeClient.swift#L160

Interesting. I just cloned supabase-swift and got this error. Let me clean package cache and look at it again.

@chFlorian were you able to check it? Can I close this issue?

After manually updating the package it is fixed. No idea why Xcode fetched an old version of the package as I have never worked with it before.


Updating the new Proj template such that it builds correctly in ADS and SSDT

Updating the new Proj template such that it works in ADS and SSDT. As we know the targets file path will differ in both ADS and SSDt - the new project template need conditional import.

Coverage remained the same at 33.842% when pulling 378627b4c4c20ca3acee160611d35dee229a27a7 on feature/RoundTripPart1 into f550002d33a11369c45a06a8d963daea5bf03cf1 on master.


Handle optional byte in chassis status response.

The fifth byte in the chassis status response is optional. Add a custom unmarshalling routine for the chassis status response to handle all of the possible conditions.

@DanCripe thanks for the PR, looks great.  We just need a signed CLA, I've added that info to the wiki: https://github.com/vmware/goipmi/wiki

@DanCripe sorry for the delay, thanks!


Compiling llvm with multiple jobs

I was doing make output/rustc -j 8 to compile rustc. Then I saw that when building LLVM, only one core was utilized, even though I have 7 more.

set LLVM_PAR_LEVEL="-j 8" - make doesn't pass -j down to sub-instances it seems

Hmm, I think I'll file a PR.


feat: Custom checks should use a provider schema for context

Is your feature request related to a problem? Please describe.

Custom checks should enforce the user's desired policy, but only if that policy is possible in the context of the provider schema.
As a specific example, a custom check should be able to enforce that all aws_* resources should have a given tag, but only if it is possible to tag the resource which is being checked. The aws_instance resource, for example, supports tags, so it should fail a custom check if the desired tag isn't present. But the aws_route resource does not support tagging, so it should pass the same check, because enforcing the policy in the custom check would be impossible for that resource type.
Describe the solution you'd like

Custom checks should have knowledge of the provider schema which is being checked and should only enforce a given attribute if that attribute is actually possible for the resource being checked.
Additional context

The source of truth for provider schema can be found via terraform providers schema -json, or whatever the golang equivalent would be.

One edge case I notice which would come up if this were implemented is that schemas are sometimes inconsistent. For example, almost every AWS resource uses a tagging schema which looks like this:
tags = {
  Name = "foo"
  CostCenter = "bar"
}

The inconsistency is that aws_autoscaling_group has a tags attribute in its schema as all the others do, but aws_autoscaling_group implements it differently:
resource "aws_autoscaling_group" "a" {
  tags = [
    {
      key                 = "Name"
      value               = "foo"
      propagate_at_launch = true
    },
    {
      key                 = "CostCenter"
      value               = "bar"
      propagate_at_launch = true
    }
  ]
}

If a user enforced a tagging policy in a custom check on aws_* resources without verbosely specifying individual resourceLabels, they'd bump into this edge case. It might be worth implementing some kind of requiredLabels negation, like requiredLabels: ! aws_autoscaling_group, or a new excludeLabels list.

.

I can see the value in this, but it isn't practical to implement.
We download provider and modules for the purposes of scanning but not using the conventional terraform init; that would presume to know the version of terraform in use and could come with its own headaches.
To use terraform providers schema --json we need to have the .terraform folder; I've looked at how Hashi do it internally and the overhead outweighs the benefits.
One option would be to enrich the existing hasTags MatchSpec to have a list of resources that are known to support Tags and keep that maintained. I'll take a look at the practicality of that

.

.


After the device topology is rendered, the image is misplaced when the collapse button is clicked.

AntV Open Source Contribution Plan（可选/Optional）

[ ] 我同意将这个 Issue 参与 OSCP 计划 / I agree to participate in the OSCP plan

Issue 类型 / Issue Type
None
任务介绍 / Task Description
Upgrade antv/g6 from version 4.6.18 to 4.8.21
After the device topology is rendered, the image is misplaced when the collapse button is clicked.

参考说明 / Reference Description
No response

You have selected the wrong question template, we are sorry to close this issue. You'd better create a new question and provide more information about your question


TS-5063: Fixes coverity warnings and cleans up the temp string

The Vec seems overkill here, and makes things less nice when
managing the intermediary strings. The new code has issues with being
potentially used without initialization.
CID 1365975, 1365974

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/1212/ for details.

Linux build successful! See https://ci.trafficserver.apache.org/job/Github-Linux/1105/ for details.

Linux build successful! See https://ci.trafficserver.apache.org/job/Github-Linux/1106/ for details.

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/1213/ for details.

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/1216/ for details.

Linux build successful! See https://ci.trafficserver.apache.org/job/Github-Linux/1109/ for details.

I think this will clear the clang analyzer errors too.


Updated carousel and started modal

I also updated starsStyles.css to change font size and star color so it easier to see


Split laravel-lang subdirectories in submodules

Hello :-)
I started a Laravel template to start my fresh projects: https://github.com/kneipp/brazilian-laravel-template/  and would be nice if can link /lang/pt-BR to Laravel-lang submodule.
Can be nice for someone else.

Hello,
if I do it for Brazilian, I must do for all languages... or you can do a PR

Hello, i guess we can do it for all languages, what do you think?
Can i start with portuguese PR?

What is the benefit ?

Reusability and modularity on your repo.
People will choose language instead all of them, like composer.


show tracking results error

I follow the README to do the tracking part.Everything works well until "6. Show tracking results". There is only the first frame result and the code just stops.So i can't see other frames reslut or like you said "press Enter to toggle between play and pause".

I have same error,did you solved it

NOT solved yet. I tried to update the videofig.py but nothing changed. Still in confused.

when I run in terminal show that AttributeError: 'AxesSubplot' object has no attribute 'set_facecolor'

I got no error but just showed the first frame result and then exited. However, i got warning infromation like "UserWarning: This figure includes Axes that are not compatible with tight_layout, so results might be incorrect.  self.figure.tight_layout()
INFO - show_tracking - Completed after 0:00:01"

Please update your matplotlib. It requires matplotlib >= 2.0.0

I already got matplotlib 3.1.2.


ALT-TAB opens picker - Bug

Have a browser and another window open, like "WIndows Explorer", GIT Hub, NetBeans, etc.
Then using the example page, //http://amsul.ca/pickadate.js/,
Click on a date or time, picker comes up. select a date or time.
Use  ALT-TAB to switch to another application.
Date/Time picker opens up and should not.

Same happening to me in Safari and Chrome on Mac

Seems to only happen with the default theme and not the classic theme?

Don't know, haven't tested all scenarios.

Duplicate of #160