[Bug]: Teachability Slowness

Describe the bug
The switch from the TeachableAgent to Teachable as a capability to be added to any other agent type seems to have significantly slowed down this functionality. Specifically, asking the agent to remember something is, by my measure slower by a factor of 5.
Steps to reproduce

after setting up a Conversable agent as teachable, attempt to have the agent remember a block of text:
response = user.send(message = """INSURANCE 12.01 Contractor shall procure and maintain for the duration of the Contract insurance against claims for injuries to persons or damages to property which may arise from or in connection with the performance of the services by the Confractor, its agents, representatives, or employees. 12.02 Contractor shall maintain at least the following minimum coverage: A. Commercial General Liability (CGL): CGL on an “occurrence” basis, including products and completed operations, property damage, bodily injury and personal and advertising injury with limits of $2,000,000 per occurrence and $4,000,000 in the aggregate. If a general aggregate limit applies, the general aggregate limit shall be twice the required occurrence limit. B. Umbrella or Excess Liability Policy with a limit of $3,000,000 per occurrence and in the aggregate. Umbrella or Excess policy shall be in excess of both the Contractor's general 4 liability and its automobile liability insurance and shall be written on an occurrence basis. The County, official, employees and others as may be specified in any Special Conditions shall be named as an additional insured under this policy. C. Automobile Liability: Symbol 1 (any auto), or if Contractor has no owned autos, Symbol 8 (hired) and 9 (non-owned), with a Combined Single Limit of $1,000,000 per accident for bodily injury and propertysdamage. D. Workers’ Compensation insurance asirequired by the State of Michigan), with Statutory Limits, and Employer's Liability:Insurance with limits of $1,000,000 Bodily Injury By Accident - Each Accident; $1,000,000 Bodily Injury By Disease - Per Employee; and $1,000,000 Bodily Injury By Disease - Policy Limit. E. Professional Liability (Errors and Omissions) Insurance appropriate to the Contractor's profession with limits of $3,000,000 per claim and aggregate. F. Cyber insurance, including contractual liability, with a minimum of One Million Dollars ($1,000,000) per occurrence 12.03 Additional Insured Status. The County, its officers, officials, employees, volunteers, and others as may be specified, GC shall be additional insureds on the CGL policy with respect to liability arising out of work or operations performed by or on behalf of the Contractor including materials, parts, or equipment furnished in connection with such work or operations. General liability coverage can be provided in the form of an endorsement to the Contractor's insurance (at least as broad as ISO Form CG 20 10 11 85 or both CG 20 10 and CG 20 37 forms if later revisions used). 12.04 Primary Coverage. For any claims related to this Contract, the Contractor's insurance coverage shall be primary insurance as respects the County, its officers, officials, employees, and volunteers. Any insurance or formal self-insurance maintained by the County, its officers, officials, employees, or volunteers shall be excess of the Contractor's insurance and shall not contribute with it. 12.05 Notice of Cancellation. Coverage shall not be canceled, except with Contractor providing notice to the County 12.06 Waiver of Subrogation. Contractor grants to the County a waiver of any right to subrogation which any insurer of the Contractor may acquire against the County by virtue of the payment of any loss under such insurance. Contractor agrees to obtain any endorsement that may be necessary to affect this waiver of subrogation, but this provision applies regardless ¢ of whether or not the County has received a waiver of subrogation endorsement from the insureg.,; 12.07 All insurance must be effected under valid and enforceable policies, issued by recognized, responsible insurers qualified to conduct business in Michigan which are well-rated by national rating organizations. All companies providing the coverage required shall be licensed or approved by the Insurance Bureau of the State of Michigan and shall have a policyholder's service rating no lower than A:Vll as listed in A.M. Best's Key Rating guide, current edition or interim report. """,
recipient = teachable_agent, request_reply = True)
In the past, this operation was quite quick, but takes the better part of 2 minutes now.
Attempting to have the agent remeber a block of JSON seems to cause it to attempt to write then execute some code. This message is displayed:>>>>>>>> USING AUTO REPLY...

EXECUTING CODE BLOCK 0 (inferred language is json)...
teachable_agent (to user):

exitcode: 1 (execution failed)
Code output:
unknown language json
Expected Behavior
It appears the ConversableAgent with Teachable applied is doing a lot more work to persist "memories" than it used to.
Screenshots and logs
No response
Additional Information
No response

@rickyloynd-microsoft

Memos are now saved to the DB on each chat turn instead of being postponed to the end of the chat. So when a user turn contains a large amount of text like your example, the time spent will be felt immediately. This is expected.
But it would not be expected for the overall time (counting the end-of-chat processing) to increase in the refactoring from TeachableAgent to Teachability. Did you measure this?
What LLM are you using? Can you provide the full code for your repro?

I did measure it and it really was at least a factor of 5 slower. My guess is that under the covers it may be attempting to treat the text, at least on the JSON example, instead of simply persisting the data. This was not an issue before. I have this prototyped in a Colab notebook, but can carve out the salient parts:
%pip install "pyautogen[teachable]"
import autogen
from autogen.agentchat.contrib.capabilities.teachability import Teachability
from autogen import ConversableAgent, UserProxyAgent
from autogen import UserProxyAgent, config_list_from_json
import os
Convert the list to a single string
oai_config_list_str = """
[
{
"model": "gpt-4-1106-preview",
"api_key": "key"
}
]
"""
Set the environment variable
os.environ['OAI_CONFIG_LIST'] = oai_config_list_str.strip()
filter_dict = {"model": ["gpt-4-1106-preview"]}
config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST", filter_dict=filter_dict)
llm_config={"config_list": config_list, "timeout": 120}
teachable_agent = ConversableAgent(
name="teachable_agent",  # The name is flexible, but should not contain spaces to work in group chat.
llm_config={"config_list": config_list, "timeout": 120, "cache_seed": None},  # Disable caching.
)
teachability = Teachability(
reset_db=True,
path_to_db_dir="./tmp/notebook/teachability_db",
)
teachability.add_to_agent(teachable_agent)
user = UserProxyAgent("user", human_input_mode="ALWAYS")
response = user.send(message = """INSURANCE 12.01 Contractor shall procure and maintain for the duration of the Contract insurance against claims for injuries to persons or damages to property which may arise from or in connection with the performance of the services by the Confractor, its agents, representatives, or employees. 12.02 Contractor shall maintain at least the following minimum coverage: A. Commercial General Liability (CGL): CGL on an “occurrence” basis, including products and completed operations, property damage, bodily injury and personal and advertising injury with limits of $2,000,000 per occurrence and $4,000,000 in the aggregate. If a general aggregate limit applies, the general aggregate limit shall be twice the required occurrence limit. B. Umbrella or Excess Liability Policy with a limit of $3,000,000 per occurrence and in the aggregate. Umbrella or Excess policy shall be in excess of both the Contractor's general 4 liability and its automobile liability insurance and shall be written on an occurrence basis. The County, official, employees and others as may be specified in any Special Conditions shall be named as an additional insured under this policy. C. Automobile Liability: Symbol 1 (any auto), or if Contractor has no owned autos, Symbol 8 (hired) and 9 (non-owned), with a Combined Single Limit of $1,000,000 per accident for bodily injury and propertysdamage. D. Workers’ Compensation insurance asirequired by the State of Michigan), with Statutory Limits, and Employer's Liability:Insurance with limits of $1,000,000 Bodily Injury By Accident - Each Accident; $1,000,000 Bodily Injury By Disease - Per Employee; and $1,000,000 Bodily Injury By Disease - Policy Limit. E. Professional Liability (Errors and Omissions) Insurance appropriate to the Contractor's profession with limits of $3,000,000 per claim and aggregate. F. Cyber insurance, including contractual liability, with a minimum of One Million Dollars ($1,000,000) per occurrence 12.03 Additional Insured Status. The County, its officers, officials, employees, volunteers, and others as may be specified, GC shall be additional insureds on the CGL policy with respect to liability arising out of work or operations performed by or on behalf of the Contractor including materials, parts, or equipment furnished in connection with such work or operations. General liability coverage can be provided in the form of an endorsement to the Contractor's insurance (at least as broad as ISO Form CG 20 10 11 85 or both CG 20 10 and CG 20 37 forms if later revisions used). 12.04 Primary Coverage. For any claims related to this Contract, the Contractor's insurance coverage shall be primary insurance as respects the County, its officers, officials, employees, and volunteers. Any insurance or formal self-insurance maintained by the County, its officers, officials, employees, or volunteers shall be excess of the Contractor's insurance and shall not contribute with it. 12.05 Notice of Cancellation. Coverage shall not be canceled, except with Contractor providing notice to the County 12.06 Waiver of Subrogation. Contractor grants to the County a waiver of any right to subrogation which any insurer of the Contractor may acquire against the County by virtue of the payment of any loss under such insurance. Contractor agrees to obtain any endorsement that may be necessary to affect this waiver of subrogation, but this provision applies regardless ¢ of whether or not the County has received a waiver of subrogation endorsement from the insureg.,; 12.07 All insurance must be effected under valid and enforceable policies, issued by recognized, responsible insurers qualified to conduct business in Michigan which are well-rated by national rating organizations. All companies providing the coverage required shall be licensed or approved by the Insurance Bureau of the State of Michigan and shall have a policyholder's service rating no lower than A:Vll as listed in A.M. Best's Key Rating guide, current edition or interim report. """,
recipient = teachable_agent, request_reply = True)

In your measurements, did you include the post-chat shutdown time of TeachableAgent? That's when the progress bar would appear.

This was just for essentially "remembering" some base text. I executed the final step in the above snippet independently in the Colab notebook, so the total time in question was the time from start of invocation of the final line above until the return

So the post-chat shutdown time of TeachableAgent was not part of the measurement. I think that explains what you're seeing. The time that was previously spent watching the progress bar at the end of the chat, is now spent before the agent returns its response. Does that sound right?

Hmmmm. When I execute the last command above ("user.send..."), it used to be just a few seconds before the response, but it is now minutes in length. It all still works, but when I run my entire test set, what once took 1'40" now takes 7'

Right, but for this to be a full test of the original TeachableAgent, you would have needed to also call teachable_agent.learn_from_user_feedback() at the end, and wait for the progress bar to finish, before being able to start a new chat where what was stored in memory could be tested. In the new Teachability design, the work of storing things in memory is not postponed to the end of the chat; it's spread out over each turn.

Understood, but I guess what I am really saying is that doing a basic user.send of a block of text is now really slow and was quite fast before. I'm not yet concerned with true persistence teachable_agent.learn_from_user_feedback()). I am guessing that this probably the result of the new implementation. Before, these exact commands were snappy, now they are slow. This is not a criticism, I'm sure that I was using the old agent in a way that got me certian results and the new implementation is more consistent with the goal of teachable, but the implementation is different and I need to rethink how i am using teachable as it isn't the same teachable I built this POC on. I appreciate the insights.

Well, for no good reason, it is all back to normal. Didn't change a thing, except a re-install of Pyautogen. By the way, this thing is working really well. Autogen has helped my project enormously.

Are you saying that after reinstalling pyautogen, you no longer see the 5x slowdown on this example?

Yes. The speed is now comparable to the original implementation

Good to hear! I'll close this issue, but please reopen it if the slowdown reappears, and the extra time is more than calling teachable_agent.learn_from_user_feedback() used to take.


camera-ip-conf not setting IP address

Following the outline here:
https://github.com/TheImagingSource/tiscamera/wiki/Linux-Support-for-GigE-Cameras
...and following the examples from
camera-ip-conf help
...my TIS camera is not accepting a permanent IP address change as shown in the screenshot below:

OK, so I figured this out.  I needed to add dhcp=off and static=on.  It is now working.
For future reference, perhaps the help output from camera-ip-conf should be updated to add the dhcp and static settings.  Currently, camera-ip-conf help shows an example at the bottom like this:
camera-ip-conf set ip=<IP_ADDRESS> gateway=<IP_ADDRESS> subnet=<IP_ADDRESS> -s 27710767
...but the above does not work as indicated in this ticket.  So perhaps the example in camera-ip-conf help should be updated to read as follows (add dhcp and static):
camera-ip-conf setip=<IP_ADDRESS> gateway=<IP_ADDRESS> subnet=<IP_ADDRESS> dhcp=off static=on -s 27710767


I couldn't run the project

Hi,  How can I fix that problem?
Flutter 3.24.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 2663184aa7 (4 weeks ago) • 2024-09-11 16:27:48 -0500
Engine • revision 36335019a8
Tools • Dart 3.5.3 • DevTools 2.37.3

flutter run
Connected devices:
Linux (desktop) • linux  • linux-x64      • Ubuntu
24.04.1 LTS 6.8.0-45-generic
Chrome (web)    • chrome • web-javascript • Google
Chrome 129.0.6668.89
[1]: Linux (linux)
[2]: Chrome (chrome)
Please choose one (or "q" to quit): 2
Launching lib/main.dart on Chrome in debug mode...
Waiting for connection from debug service on Chrome..Warning: In index.html:57: Local variable for
"serviceWorkerVersion" is deprecated. Use
"{{flutter_service_worker_version}}" template token
instead. See
https://docs.flutter.dev/platform-integration/web/ini
tialization for more details.
../../../.pub-cache/hosted/pub.dev/carousel_slider-4.2.1/lib/carousel_slider.dart:9:1: Error: 'CarouselController' is imported from both 'package:carousel_slider/carousel_controller.dart' and 'package:flutter/src/material/carousel.dart'.
import 'carousel_controller.dart';
^^^^^^^^^^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:45:5: Error: No named parameter with the name 'headline4'.
    headline4: display1,
    ^^^^^^^^^
../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart:89:9: Context: Found this candidate, but the arguments don't match.
  const TextTheme({
        ^^^^^^^^^
../modules/device_preview/lib/src/views/tool_panel/sections/section.dart:39:40: Error: The getter 'subtitle2' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'subtitle2'.
                style: theme.textTheme.subtitle2?.copyWith(
                                       ^^^^^^^^^
../modules/device_preview/lib/src/views/tool_panel/sections/settings.dart:56:34: Error: The getter 'backgroundColor' isn't defined for the class 'ThemeData'.
 - 'ThemeData' is from 'package:flutter/src/material/theme_data.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/theme_data.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'backgroundColor'.
                  color: toolbar.backgroundColor,
                                 ^^^^^^^^^^^^^^^
../modules/device_preview/lib/src/views/tool_panel/sections/settings.dart:87:34: Error: The getter 'backgroundColor' isn't defined for the class 'ThemeData'.
 - 'ThemeData' is from 'package:flutter/src/material/theme_data.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/theme_data.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'backgroundColor'.
                  color: toolbar.backgroundColor,
                                 ^^^^^^^^^^^^^^^
../modules/device_preview/lib/src/views/theme.dart:31:11: Error: No named parameter with the name 'toggleableActiveColor'.
          toggleableActiveColor: accentColor,
          ^^^^^^^^^^^^^^^^^^^^^
../modules/device_preview/lib/src/views/theme.dart:54:11: Error: No named parameter with the name 'toggleableActiveColor'.
          toggleableActiveColor: accentColor,
          ^^^^^^^^^^^^^^^^^^^^^
../modules/device_preview/lib/src/views/tool_panel/tool_panel.dart:83:34: Error: The getter 'headline6' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'headline6'.
          style: theme.textTheme.headline6?.copyWith(
                                 ^^^^^^^^^
../modules/device_preview/lib/src/views/tool_panel/sections/subsections/device_model.dart:175:32: Error: The getter 'subtitle2' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'subtitle2'.
        style: theme.textTheme.subtitle2?.copyWith(
                               ^^^^^^^^^
../../../.pub-cache/hosted/pub.dev/carousel_slider-4.2.1/lib/carousel_slider.dart:48:15: Error: 'CarouselController' is imported from both 'package:carousel_slider/carousel_controller.dart' and
'package:flutter/src/material/carousel.dart'.
            : CarouselController() as CarouselControllerImpl,
              ^^^^^^^^^^^^^^^^^^
../../../.pub-cache/hosted/pub.dev/carousel_slider-4.2.1/lib/carousel_slider.dart:62:15: Error: 'CarouselController' is imported from both 'package:carousel_slider/carousel_controller.dart' and
'package:flutter/src/material/carousel.dart'.
            : CarouselController() as CarouselControllerImpl,
              ^^^^^^^^^^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:121:23: Error: The getter 'headline1' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'headline1'.
      headline1: base.headline1?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:122:23: Error: The getter 'headline2' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'headline2'.
      headline2: base.headline2?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:123:23: Error: The getter 'headline3' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'headline3'.
      headline3: base.headline3?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:124:23: Error: The getter 'headline4' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'headline4'.
      headline4: base.headline4?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:125:23: Error: The getter 'headline5' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'headline5'.
      headline5: base.headline5?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:126:23: Error: The getter 'headline6' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'headline6'.
      headline6: base.headline6?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:127:20: Error: The getter 'button' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'button'.
      button: base.button?.copyWith(fontFamily: fontName),
                   ^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:128:21: Error: The getter 'caption' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'caption'.
      caption: base.caption?.copyWith(fontFamily: fontName),
                    ^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:129:23: Error: The getter 'bodyText1' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'bodyText1'.
      bodyText1: base.bodyText1?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:130:23: Error: The getter 'bodyText2' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'bodyText2'.
      bodyText2: base.bodyText2?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:131:23: Error: The getter 'subtitle1' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'subtitle1'.
      subtitle1: base.subtitle1?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:132:23: Error: The getter 'subtitle2' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'subtitle2'.
      subtitle2: base.subtitle2?.copyWith(fontFamily: fontName),
                      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:133:22: Error: The getter 'overline' isn't defined for the class 'TextTheme'.
 - 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('../../../flutter-sdk/flutter/packages/flutter/lib/src/material/text_theme.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'overline'.
      overline: base.overline?.copyWith(fontFamily: fontName),
                     ^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:121:7: Error: No named parameter with the name 'headline1'.
      headline1: base.headline1?.copyWith(fontFamily: fontName),
      ^^^^^^^^^
../modules/ensemble/lib/ensemble_theme.dart:153:7: Error: No named parameter with the name 'backgroundColor'.
      backgroundColor: const Color(0xFFFFFFFF),
      ^^^^^^^^^^^^^^^
../../../.pub-cache/hosted/pub.dev/fl_chart-0.62.0/lib/src/utils/utils.dart:269:20: Error: Member not found: 'MediaQuery.boldTextOverride'.
    if (MediaQuery.boldTextOverride(context)) {
                   ^^^^^^^^^^^^^^^^
Waiting for connection from debug service on Chrome...             40.9s
Failed to compile application.

hi @burakakca at this time we require flutter 3.19.6 or less. Please use fvm to use that flutter version.
Alternatively you can wait till Friday and we will have an ensemble version that is ready for flutter 3.24.0+. You can get it now from this branch but it may have issues, let us know if you run into any issues


Reuse alignment points of previous display math

Description
AMS has an intertext function that allows you to insert normal text between lines of an equation, while still keeping everything aligned.
Use Case
Useful whenever fully left-justified text is needed within an equation, without changing the layout of equations.

An alternative to this is some way to reuse alignment from the previous equation.

An alternative to this that achieves the same effect is some way to reuse alignment from the previous equation. I'd actually prefer that to LaTeX' intertext.

Me too!

An alternative to this that achieves the same effect is some way to reuse alignment from the previous equation. I'd actually prefer that to LaTeX' intertext.

Me too!

Upon further reflection it's more of a symbiotic relationship than reuse. Link would perhaps be a better word. You would want the alignment to function as if they were a single math environment.

I have no idea how user-facing configuration for this should look, but I like the idea of linking them better than having text inside of the equation.

An alternative to this that achieves the same effect is some way to reuse alignment from the previous equation. I'd actually prefer that to LaTeX' intertext.

Me too!

Upon further reflection it's more of a symbiotic relationship than reuse. Link would perhaps be a better word. You would want the alignment to function as if they were a single math environment.

I'd like to ask, could intertext still be included as an option even if ? Writing something like #link(a, b, c, d, ...) when I have lots of lines separated by English text seems like a bit of a pain.

Maybe if we could label aligment points that would enable this. Something like &<1> and then refering to that alignment point: &@1. This could even be useful in single equation contexts:
$ sum_(k=0)^n norm(u_k) &<1> = norm( y_0 ) +&<2> norm( y_1 - y_0 )  + \
                                            &@2 quad +  dots.c  + \
                                            &@2 quad +  norm( y_k - y_(k-1) ) \
                        &@1 <= limits(sum)_(k=1)^n 1/2^(k-1) + norm(y_0) \
                        &@1= (1-1/2^n)/(1-1/2) + norm(y_0). $

I'd like bump this with the comment that this feels like an essential feature for pretty-formatting math.
That said, labeling and linking to previous alignment points, aside from, IMO, being extremely messy to write, would have the problem that it creates an asymmetric representation of a symmetric relationship.
My alternative proposal is that instead any two equations with the same label are treated as one equation for the purposes of alignment points, since in general, you want this functionality when they are one sequence of equations and you're just interspersing some text. So to achieve intertext-like functionality, you could do something like
$
    a &= b\
       &= c\
$<eqn:blah>
And because of how `c`'s tend to behave, we then have
$
      &= d
$<eqn:blah>

Ideally this would be combined with some kind of "arbitrary unique label" shorthand, like <_>, and "the previous label" shorthand, which could be used to both cite and replicate the anonymous label, like <^>.

Is it realistic that someone would want to reuse alignment points that aren't adjacent? If that's not a realistic situation, maybe ^& could mean "align with the previous block of math."
$
    a &= b \
      &= c \
$
And because of how $c$s tend to behave, we then have
$
     ^&= d
$

I think that

I've used alignment points that aren't adjacent before (or rather, the LaTeX equivalent with intertext which itself contains a bunch of equations. I can't remember if nesting aligned blocks actually works or not, but I definitely wanted it even if it didn't).
This syntax has the problem that it is attached to alignment points but refers to the entire equation. Would ^& = x ^& on the same line mean anything or would it be an error? If it does do something, would ^& = x & only properly align the first alignment point and let the second one move separately? It seems broadly confusing to attach global semantics to a single alignment point and it seems undesirable to have this operate on a per-alignment point level.

I do maintain that "same label equations have the same alignment" is reasonable semantics.
That said, I do think some kind of convenient "attach to the previous equation" syntax could also be nice. Maybe <^&> (not really meaning a label, just borrowing existing markdown syntax with (I think?) invalid characters to avoid introducing new special characters).

Good point! I retract my suggestion then.

I also think this is a critical feature for pretty typesetting maths equations, and +1 for labelling alignment points because it is useful even inside the same equation. I would go even further to propose that we allow configuring each alignment points for left/right/centre alignment.
I'd like to present one use case for this feature. In a lot of papers, code in Haskell (or other functional programming languages) are printed as maths equations, e.g., by using lhs2TeX. Here is an example screenshot for the output of lhs2TeX (for other examples, please refer to its documentation):

Note
There are (at least) three groups of alignments: (1) the top-level "::" and "=", (2) the "|" in the where clauses, and (3) the "=" in the where clauses. (1) and (2) should not interfere with each other, hence alignment point labelling is necessary. Also, the placement of (3) would rely on the result of (2).

Note
The "::" and "=" are placed in the same "column", with the alignment set to "centre". This is how manual configuration of each alignment point is important. Other "columns" are left-aligned (by default).

Under the hood, lhs2TeX relies on the LaTeX package polytable, which provides fine-grained control for "columns" (fragments to be aligned) and the alignment for each columns. Just like other LaTeX packages for advanced alignments, it sometimes relies on multi-pass compilation to tweak the columns to the right positions. Things could be much better if labelled alignments and custom alignment point configuration is built into Typst. I plan to work on a proof-of-concept counterpart for lhs2TeX in Typst (probably as a plugin), and this is a blocking feature.

Depending on the implementation of alignment point reuse/linkage, specifically if it allows equations within equations to reuse alignment points, things like #1244 could also be handled similarly. (Though "recursive reuse" is probably much more difficult to implement I'd imagine)
I don't know if there's something that already would allow something similar, but another reason to allow "recursive reuse" would be things like wanting to draw boxes around equations without losing alignment easily.
You currently can, in the case of a single "attracting" (instead of "repelling", so in a & b & c & d the first and third work) alignment point, just create two #blocks that have a stroke set for all sides except for the sides next to the alignment point, but this breaks down for more than one alignment point / "repelling" alignment points in most situations (due to introducing gaps without outset or not filling the full width because another row takes up more space in the same column).


Trying to play demo returns error

I have removed the email and password.

Boardwalk does not work on Android 7 or higher. Both playing demo and the full version will return this error

if you have 7.0 or higer use https://github.com/PojavLauncherTeam/PojavLauncher


NPC.dApps.NeoDraw.Small failure in neo-debugger

This is urgent because it's blocking my MS submission ...and it took awhile to figure it out. :-) Please :-)
I have a large C# smart contract ...many partial classes across many .cs source files.  My SC/dApp started to fail in neo-debugger.  When I comment out just one of the source files by changing it's name to .txt instead of .cs, the SC runs fine in the debugger with the arguments:
"add"
"user"
[10, 20]

and pressing F5.
If I change the file's name from .txt to .cs, the SC fails to run to a successful completion.  It stops here: https://github.com/mwherman2000/neo-npcc/blob/master/neo-npcc/NPC.dApps.NeoDraw.Small/Contract1.cs#L26
The "commented out file" is this one: https://github.com/mwherman2000/neo-npcc/blob/master/neo-npcc/NPC.dApps.NeoDraw.Small/UserCredentialsL4CollectibleExt2.cs ("uncommented out")
The project is called NPC.dApps.NeoDraw.Small and can be found here: https://github.com/mwherman2000/neo-npcc/tree/master/neo-npcc/NPC.dApps.NeoDraw.Small
Maybe a compiler bug? ...I don't know.  Are there any size limitations? ...fixed length tables in the compiler or debugger? ...just ideas

More intrigue ...if I rename the following .txt file to .cs (same one as above):
https://github.com/mwherman2000/neo-npcc/blob/master/neo-npcc/NPC.dApps.NeoDraw.Small/UserCredentialsL4CollectibleExt2.cs.
Run it with the arguments from above and press F5, it fails like this:  https://raw.githubusercontent.com/mwherman2000/neo-npcc/master/neo-npcc/NPC.dApps.NeoDraw.Small/Fails.png
There are 3 methods in the .cs file, I comment out any 2 of the 3 methods, F5 runs successfully - doesn't matter which 2 of the 3 methods, it works: https://raw.githubusercontent.com/mwherman2000/neo-npcc/master/neo-npcc/NPC.dApps.NeoDraw.Small/Success.png
....but I compile and run all 3 methods, it fails.

The same thing happens with the https://github.com/neo-project/neo-compiler version of the compiler ...using the current version of the neo-debugger.  ...not sure where the problem is.

I think this is already fixed, can you confirm?


Adding in dev tooling to the contribution process

PR for issue #39
Happy to walk through individual commits with more detail

@nexxeln
move prettier to editorconfig ?

@nexxeln move prettier to editorconfig ? https://editorconfig.org/

VSCode needs a plugin to work and I dont think this is a valid replacement for prettier (which works with eslint as well to prevent overriding rules re: styling)

prettier -- it has been decided earlier that we don't need prettier either in the repository itself or in the generated project.
the same goes for eslint ig. @nexxeln your thoughts?
i personally don't know if we really need husky, let's see what others think about it

The problem with not having a repo level prettier is that, as people contribute to the project, we will inevitably get a bloated git history of double quotes turning into single quotes, and vice versa, as well as other minor stylistic changes. If this project is expected to live on and grow as new technologies are integrated, setting a standard now, even if that standard changes, is a good idea IMO.

prettier -- it has been decided earlier that we don't need prettier either in the repository itself or in the generated project. see #25 and #30

Both of these issues are about having prettier in the template built by create-t3, not having prettier IN create-t3. This PR is specifically for this repo, not adding prettier or eslint into any created templates

I would've liked it if we had discussed all the tools before you made a PR 😄 .
Prettier Config
Please change single quotes to false
Eslint
This looks good to me
Changeset
I've never used or heard of this package, what exactly will it do?
Husky
I'm kind of 50/50 on this one. I would love to know what other people think.

AFK for a few hours. Will push an update in a bit.

Pushed new prettier config with double quotes.
Thank you, please format the files also with the new config.

Changesets seems cool so why not, but the first time I'll use it I'll poke you with questions on Discord 😄.

Already re-formatted!

Oh lol sorry I didn't look at the commit.
I'm still unsure about husky.

Totally happy to remove it if we need to. The current implementation just runs a lint and format before commit.
Without it, it's up to people to lint and format on their own, and although most IDEs have built in settings to do so on save, not everyone is going have the same setups and extensions.
This way we keep a relatively sane integrity check in the most "gentle" way possible.

I think it adds value as the amount of contributors grow.

What tool/setup to use for this I have no opinion on.

Okay let's do it then! I'll merge


setting jobEvents: false doesn't save the job

The job doesn't show up in the dashboard nor is received by workers.

Actually now it just crashes, there is a memory leak somewhere. I need to save about 2,000,000 jobs in a for loop.

<--- Last few GCs --->

   73810 ms: Mark-sweep 1362.1 (1434.2) -> 1362.1 (1434.2) MB, 2302.8 / 0 ms [allocation failure] [GC in old space requested].
   76076 ms: Mark-sweep 1362.1 (1434.2) -> 1362.1 (1434.2) MB, 2265.3 / 0 ms [allocation failure] [GC in old space requested].
   78369 ms: Mark-sweep 1362.1 (1434.2) -> 1362.1 (1434.2) MB, 2293.6 / 0 ms [last resort gc].
   80894 ms: Mark-sweep 1362.1 (1434.2) -> 1362.1 (1434.2) MB, 2524.7 / 0 ms [last resort gc].

<--- JS stacktrace --->

==== JS stack trace =========================================

    2: arguments adaptor frame: 0->2
Security context: 0x187f862c9e59 <JS Object>
    3: refreshTtl [/.../node_modules/kue/lib/queue/job.js:~343] [pc=0xa6baa79a8b5] (this=0x6b6e96f7029 <a Job with map 0xe284eaeb731>)
    4: update [/.../node_modules/kue/lib/queue/job.js:852] [pc=0xa6baa7e1bb2] (this=0x6b6e96f7029 <a Job with map 0xe284eaeb731>,fn=0x2b088471bd61 <JS Function noop (Share...

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

Since the for loop is blocking, v8 doesn't have the chance to garbage collect and that's causing the crash. I am not sure what's the approach here.

You can't write huge for loops in node.js, or you will block the event loop, however you may want to use npm modules like async, or fastparallel...

@behrad that's what I said myself, but I am yield wait(100) every 10,000 jobs, it should work.

I am closing this, but I am pretty sure there is a memory leak. I even forcing GC manually.


AIResponse giving wrong age

Bot replies with correct birth year but not the correct age
Code:
class AI(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
        self.client = yarsaw.Client("RSA_TOKEN", "RAPID_API_TOKEN")

    @commands.Cog.listener()
    async def on_message(self, msg):
        if msg.author == self.bot.user:
          return

        elif msg.channel.id !=<PHONE_NUMBER>99788852:
          return

        resp = await self.client.get_ai_response(message=msg.content, id=str(msg.author.id), bot_name="Chika-chan", bot_gender="female", bot_age="15", bot_birth_year=2006, bot_master="TheUnknown")

        resp = resp.AIResponse+ (" nya-" if random.randint(1,3)==1 else "")

        await msg.reply(resp)

Could reproduce. It seems like this is an issue with the Random Stuff API itself.
Issue
If you look at the response sent even without using the wrapper
{'BotDetails': {'BotName': 'Random Stuff Api', 'BotMaster': 'PGamerX', 'BotAge': '120', 'BotLocation': 'India', 'BotCompany': 'PGamerX Studio', 'BotBirthYear': '2002', 'BotBirthDate': '1st January 2002', 'BotBirthPlace': 'India'}, 'AIResponse': "I'm 10 years old. How old are you?"}

Although the API says it's 10 years old, the details were passed correctly and the bot details show that the bot is 120 years old.
@pgamerx, please look into this.

Fixed


Should the import statements not specify the file with a ".js" extension?

I was trying to consume this project in a Chrome browser and ended up getting 404 not found errors.  I'm not very skilled in ES6 modules but after some reading, it appears that Chrome requires the path to the module to include the ".js" suffix.  Is there a reason that the suffix hasn't been added to the paths in this package?  Would it be a good idea to add them?

Please consider bundling the library.
If you use bpmn-js consider our pre-packaged distribution which works in the browser out of the box.
Consuming it as is in Chrome is not possible as far as I understand.
Quoting from the library readme:

Use esm to consume it or a ES module aware transpiler such as Webpack, Rollup or Browserify + babelify to bundle it for the browser.


Are the Docker Hub repositories for .NET Framework image with Verified Publisher content?

In looking around for .NET Framework-based Docker images, I discovered that this repository has some great examples. But I've also seen that Microsoft has started moving official images from the "community" listing to the "Verified Publisher" category on Docker Hub (see https://cloudblogs.microsoft.com/opensource/2019/01/17/improved-discovery-experience-microsoft-containers-docker-hub/). Are the .NET Framework images in that category yet? If not, will they be at some time?

Yes this is something we are currently working on.  This work is being tracked with #223.


Don't fail on closing not yet started source.

I have a situation when I want to close an EventSource in a callback. The fun fact is that callback could be fired before the EventSource was actually started. I believe dealing with such situation belongs to the EventSource object. Please correct me if I'm wrong.

Good. Merged.


Black display when using setcursor() even when changing fontsizes from 1 to 7

Describe the bug
Using following code after installing m5stickcplus 0.1.0 i get always black display.
I also note in my other projects that using setCursor(0, 0, x) to change font or size  values between 1 and 7 some dont show any display at all , why is that?
      `
      void loop() {
          tftSprite.fillSprite(BLACK);   // Fill the canvas with black.
          tftSprite.setCursor(0, 0, 1);  // Set the cursor position and use the 1-point font.
          tftSprite.printf("AXP Temp: %.1fC \r\n",
                           M5.Axp.GetTempInAXP192());  // Get the temperature of AXP192.

          tftSprite.printf("Bat: %.3fv %.1fma\r\n",
                           M5.Axp.GetBatVoltage(),
                           M5.Axp.GetBatCurrent());  // Output voltage and current of // Bat.

          tftSprite.printf("Usb: %.2fv %.1fma\r\n",
                           M5.Axp.GetVBusVoltage(),
                           M5.Axp.GetVBusCurrent());  // Output current and voltage of USB

          tftSprite.printf("5V-In: %.2fv %.1fma\r\n",
            M5.Axp.GetVinVoltage(), M5.Axp.GetVinCurrent());
          tftSprite.printf("Bat power %.1fmw", M5.Axp.GetBatPower());
          tftSprite.pushSprite(2, 2);   // Where to place our sprite ( 2 pixel marge for best display )

          // 0x01 long press(1s), 0x02 press
          // No display or flashing with next line ???
          // if (M5.Axp.GetBtnPress() == 0x02)  { esp_restart(); }  // Restart when powerbutton is pressed shortly

          if (M5.BtnA.wasPressed()) {  // When Main button pressed powerdown LCD & Backlight
            M5.Axp.SetLDO2(false);
          }
          else if (M5.BtnB.wasPressed()) { // When bottom button pressed powerup LCD & Backlight
            M5.Axp.SetLDO2(true);
          }
          M5.update();  // Detect whether the keystroke state has changed.
          delay(100);
      }`

To reproduce
use code above in arduino version above
Expected behavior
Arduino ide 1.8.19
Screenshots
No response
Environment

OS:
IDE &IDE Version:
Repository Version:

Additional context
No response
Issue checklist

[X] I searched for previous reports in the issue tracker
[X] My report contains all necessary details

After a lot of testing I found the the screenbreath() required values have changed nothing is mentioned in the online help
Most of the online help is not uptodate and incomplete. So my code was working but too dim to see
Setting tftSprite.setCursor(0, 0, x);
font 3 does not display anything also undocumented.

https://github.com/m5stack/M5StickC-Plus/assets/44396641/35c4312b-6424-4bb9-92c3-157e2920ecf8
https://github.com/m5stack/M5StickC-Plus/assets/44396641/75621f22-fd4c-4baf-9e68-6c7e68bfd5cb
Are you using the latest library?
I don't reproduce your problem at all, and switching fonts works fine!

@linxcow


Three letter items cannot be searched

If you type in items to search for that are less than four letters, nothing happens.
Steps to reproduce:
Enter a 3 letter item into the "Search" field under the "Browse" tab, and press enter.
Eg.
"Ark"
"Nyx"
"Sin"
Result:
Nothing happens
Expected Behavior:
Perform search for items (ships/modules/blueprints/skins/etc.) that contain the three letter text being searched.

Hi, thank you for reporting this issue
For now the search bar is using a quick and dirty regex match algorithm that triggers on words larger than 3 letters.
I will implement a cleaner lazy fuzzy search algorithm after I finish polishing the backend.
If you would like to implement it yourself, feel free to do so. Im fetching the item list on page load so the search algo will be on client side.


Just my thanks

Hey, so, this isn't really an issue -- I just wanted to thank the maintainer(s) for an awesome trading tool. I know there's a lot you guys are working on with this, but I have to complement you -- this was a lot of work.
Before I knew about Gekko, I was thinking about writing something like this, but it would not have had even an eighth of the features you guys have. So often, trading software is proprietary, not open source and/or doesn't engage with its user community.
Keep up the good work!

word !

Thanks a lot! I really appreciate this. Gekko actually grew quite big from my own little hobby project:

This project is a learning exercise of me, a student with some experience in programming (mostly web) and zero experience in economics and trading. I figured writing my own trade bot would be the best way to learn about implementing mathematical trading algorithms. So here is my very first attempt at anything related to trading / algorithmic decision making.

(from the gekko README @ 2013).
It only worked at Mt. Gox and it only did EMA calculations at the time haha (no paper trading, no backtesting, no storing of trade data, no UI, no calculating of profit, no plugins).

It's been a long journey so far, but I am very glad to see what we all accomplished so far!
Though I do notice the amount of bugs that have been happening recently, and I want to update more conservatively from now own: The UI turned out a lot more complex than originally designed (and functionality wise it is still very limited). But I can't thank the help enough of all 81 contributers! Without everyone there Gekko would be a lot more buggy and limited in scope.

:+1: Love this tool!

I've enjoyed using this project over the last week and am happy to see it's still actively maintained! Thanks to @askmike and others. Great job.


[10] UI Job Information on Job Details

#10
What happened 👀
Add Job Information on Job Details screen
Insight 📝
On the job detail screen, we need to implement a scrollable area which includes:

the price section

Show Price by area in gray
Show price info 80-95 Baht in green

the date-time section (no expandable)

Show section title in black
Show the date in black
Show the time in gray

the plot info section (no expandable)

Show the section title in black
Show the distance and area info in gray for title and green for value
Show the address and crop type info in gray for the title and black for the value

the message section (no expandable)

Show the title and value in black and gray

Proof Of Work 📹

@lydiasama I don't see Plot Info and Message sections from the code 😕

@luongvo  It seems the commits are not pushed yet. 🤔  Today I have a problem with my AS. Actually, the naming issue was resolved in the second commit too.

@luongvo Okay, the second commit is here now. 🎉

@luongvo Oh, At first, I intended to update it to %s m2

@luongvo Oh, At first, I intended to update it to %s m2

Yes, we can consider it later then 😄


Why does cuda memory gradually increase？

When i train the model,in the first epoch,the cuda memory is 3GB,but gradually it will  increase to 8GB.

I may come from the increasing proposals during training.

I also have the problem, How to solve it?


Moral stories for children part 3

Thank you sooo much for merging my pull requests...... please kindly merge
my last pull requests 🙏🙏🙏 as 4 needs to be completed.
Thank you in advance.
On Sat, 29 Oct, 2022, 8:55 am TechVine, @.***> wrote:

Merged #44 https://github.com/TechVine/Text-to-Speech-Converter/pull/44
into main.
—
Reply to this email directly, view it on GitHub
https://github.com/TechVine/Text-to-Speech-Converter/pull/44#event-7696148553,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQBDXW5ZTCFRW4KFG2ZQBHDWFSKJHANCNFSM6AAAAAARQ3SX7Y
.
You are receiving this because you authored the thread.Message ID:
@.***
com>


Property 'alloc' does not exist on type 'typeof import("koffi")'

I encountered the following TypeScript error while trying to use the alloc method from the koffi library:
Property ‘alloc’ does not exist on type ‘typeof import(“koffi”)’.
It appears that the TypeScript definitions are missing the alloc method, even though it is documented on the official website. This method should be available in the library, but it is not included in the type definitions.
Steps to Reproduce:

Install the koffi library in a TypeScript project.

Try to use the alloc method, for example:
import koffi from 'koffi';
koffi.alloc(1024);

Observe the TypeScript error indicating that the alloc method does not exist.

Expected Behavior:
The alloc method should be present in the TypeScript definitions, as it is a valid method according to the official documentation.
Actual Behavior:
TypeScript throws an error indicating that the alloc method does not exist on the koffi object.
Suggested Fix:
Add the alloc method to the TypeScript type definitions for koffi.
Environment:
•	koffi version: 2.9.0
•	TypeScript version: 5.5.3
•	Node.js version: 20.x

Indeed, this will be fixed in the next release. Thanks for the report :)


Build fail with copyfiles

Link to reproduction
No response
Describe the Bug
My build on payload cloud is failing due to the copyfiles command. However, the dependency is installed and the yarn command is running fine locally.
Thanks for any help on this ...
To Reproduce
This happened after upgrading my package dependencies.
This is the payload cloud log output :
[2024-04-26T17:05:00] │ Running custom build command: yarn build
[2024-04-26T17:05:00] │ yarn run v1.22.22
[2024-04-26T17:05:00] │ $ yarn copyfiles && yarn build:payload && yarn build:server
[2024-04-26T17:05:00] │ $ copyfiles -u 1 "src/**/*.{html,css,scss,ttf,woff,woff2,eot,svg,jpg,png}" dist/
[2024-04-26T17:05:00] │ /bin/sh: 1: copyfiles: not found
[2024-04-26T17:05:00] │ error Command failed with exit code 127.
[2024-04-26T17:05:00] │ info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
[2024-04-26T17:05:00] │ error Command failed with exit code 127.
[2024-04-26T17:05:00] │ info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
[2024-04-26T17:05:00] │ building: exit status 127
[2024-04-26T17:05:00] │ ERROR: failed to build: exit status 1

Here are my package dependencies and scripts :
  "scripts": {
    "dev": "cross-env PAYLOAD_CONFIG_PATH=src/payload.config.ts nodemon",
    "build:payload": "cross-env PAYLOAD_CONFIG_PATH=src/payload.config.ts payload build",
    "build:server": "tsc",
    "build": "yarn copyfiles && yarn build:payload && yarn build:server",
    "serve": "cross-env PAYLOAD_CONFIG_PATH=dist/payload.config.js NODE_ENV=production node dist/server.js",
    "copyfiles": "copyfiles -u 1 \"src/**/*.{html,css,scss,ttf,woff,woff2,eot,svg,jpg,png}\" dist/",
    "generate:types": "cross-env PAYLOAD_CONFIG_PATH=src/payload.config.ts payload generate:types",
    "generate:graphQLSchema": "cross-env PAYLOAD_CONFIG_PATH=src/payload.config.ts payload generate:graphQLSchema",
    "generate": "yarn generate:graphQLSchema && yarn generate:types",
    "payload": "cross-env PAYLOAD_CONFIG_PATH=src/payload.config.ts payload"
  },
  "dependencies": {
    "@payloadcms/bundler-webpack": "^1.0.6",
    "@payloadcms/db-mongodb": "^1.3.2",
    "@payloadcms/plugin-cloud": "^3.0.0",
    "@payloadcms/plugin-redirects": "^1.0.1",
    "@payloadcms/plugin-seo": "^2.3.1",
    "@payloadcms/richtext-lexical": "^0.9.1",
    "@swc/core": "^1.3.103",
    "add": "^2.0.6",
    "cross-env": "^7.0.3",
    "dotenv": "^8.2.0",
    "express": "^4.17.1",
    "payload": "^2.14.1",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-i18next": "^14.1.1",
    "readline": "^1.3.0",
    "short-unique-id": "^5.0.3",
    "slugify": "^1.6.6",
    "util": "^0.12.5",
    "uuid": "^9.0.1",
    "yarn": "^1.22.21",
    "yjs": "^13.6.10"
  },
  "devDependencies": {
    "@types/express": "^4.17.9",
    "copyfiles": "^2.4.1",
    "nodemon": "^2.0.6",
    "ts-node": "^9.1.1",
    "typescript": "^4.8.4"
  },

Payload Version
2.14.1
Adapters and Plugins
bundler-webpack, db-mongodb, plugin-cloud, plugin-redirects, plugin-seo, richtext-lexical

I am running into this today too.

@sctgraham @aaronmarkle Are these brand new projects created from the interface or pre-existing projects just now seeing issues on recent deployments?

@denolfe the latter : It was a local install that was configured and then pushed to the payload cloud. However, I was happily pushing changes without issue until today.

Looks like there may have been some behavior changes in DO's platform: https://docs.digitalocean.com/products/app-platform/reference/buildpacks/nodejs/#specifying-devdependencies
You might need to follow these steps and change your build command in your Payload Cloud Dashboard to be the one defined.
This is just a workaround, we are actively working with them on a long-term solution.

I swapped out 'copyfiles' with 'rsync' temporarily and named the npm command 'syncfiles'. Rsync comes pre-installed on most Linux distributions, simplifying the process.
"syncfiles": "rsync -ru --include='*/' --include='*.html' --include='*.css' --include='*.scss' --include='*.ttf' --include='*.woff' --include='*.woff2' --include='*.eot' --include='*.svg' --include='*.jpg' --include='*.png' --include='*.js' --exclude='*' src/ dist/",


hackathon banner

First thing, PLEASE READ THIS: ReactPlay Code Review Checklist

Description
Hackathon banner
Type of change
Please delete options that are not relevant.

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

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.
Checklist:

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas

@Deepak8717
Have an env variable called RREACT_APP_ACTIVITIES_ON default to false
Read this variable in your code.
If true, Hide this section

And show the hackathon banner section.
If false, the reverse.
Additionally, make the GitHub button exactly like this

ADD a secondary button(like GitHub) called "Browse Plays" link to /plays

@atapas and @Deepak8717. I feel that instead of changing the actual banner, why don't we display a modal instead. I feel that it is more efficient in that way. It's just my suggestion, let me know what you think.

@atapas and @Deepak8717. I feel that instead of changing the actual banner, why don't we display a modal instead. I feel that it is more efficient and elegant in that way. It's just my suggestion, let me know what you think.

A couple of reason of why not modal

It is not easily discoverable by users.
We won’t run the activities always but whenever do, it should be prominent.
Also, we can switch it on and off by just tweaking the env var value in configuration when the activity period over so no additional code changes required until the next activity comes.

@atapas and @Deepak8717. I feel that instead of changing the actual banner, why don't we display a modal instead. I feel that it is more efficient and elegant in that way. It's just my suggestion, let me know what you think.

A couple of reason of why not modal

It is not easily discoverable by users.
We won’t run the activities always but whenever do, it should be prominent.
Also, we can switch it on and off by just tweaking the env var value in configuration when the activity period over so no additional code changes required until the next activity comes.

I totally agree with you on these points @atapas, a modal does make it a bit inaccessible to the user since it can be just ignored by the user.
So since we are implementing it on the banner itself, I think it'd be better if we keep in mind to make changes to the wordings and make it a bit more contextual, that way it doesn't feel odd and at the same time users are able to understand the usual banner as well.
Makes sense?

Yep, once the structure and logic is placed, I will give comments on the string changes that connects to hackathon landing page.

@atapas Please check.
@ammaaraslam I think nice suggestion. He might be talking about the occasional pop-up that we see on e-commerce sites during sales.

@atapas Please check


5.0.0 does not build in Xcode

Using Unity 20230.3.26 and Xcode 13.2.1. Did a fresh build from Unity.

@andymads Starting from version 5.0.0, our plugin does not bundle the binaries as the previous releases did. Please try to clean the previous binaries and try again. Thanks!
I.e., remove the following files in the Assets/Plugins/iOS folder, then import the new 5.0.0.
Flurry+Event.h
Flurry.h
FlurryCCPA.h
FlurryConsent.h
FlurryMessaging.h
FlurrySKAdNetwork.h
FlurrySessionBuilder.h
FlurryUnityPlugin.h
FlurryUnityPlugin.mm
FlurryUserProperties.h
libFlurry.a
libFlurryMessaging.a

@andymads Version 5.2.0 with the fix is released, please try. Thanks!


gui: Add close Peers detail panel feature

RPCConsole: add hidePeersDetailButton and connect to RPCConsole::clearSelectedNode
fix #485
Add a close (X) button to the Peers Detail panel.
Reuse the same icon used in the Console Tab.
The close button deselects the peer highlighted
in the PeerTableView and hides the detail panel.
This PR addresses issue #485:

Co-authored-by: @w0xlt<EMAIL_ADDRESS>

Tooltip message for better UX.

Is there a better icon to use for a "close" action?
We don't have a "clear" icon in the repo - but something like this would be more appropriate for "clear console". So reusing the (X) icon seems prudent.

Since it's possible to select multiple peers, but only one shows in the panel, perhaps leaving the "close" button is best, but don't have it deselect?

I split this PR into 2 commits so others can experiment with adding the button to src/qt/forms/debugwindow.ui
Feel free to fetch this branch and experiment.
As this PR stands - It already represents a minimal change to the src/qt/forms/debugwindow.ui file (IMO)
If someone comes up with a cleaner/better commit for the button add - I am happy to cherry-pick it and include it in this PR.
Alternately - feel free to base a future PR on commit 718589f

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts
Reviewers, this pull request conflicts with the following ones:

#457 (Add abitlity to resize peerTable and banTable by shaavan)

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

@w0xlt any suggestions on reducing the diff in the .ui file would be appreciated - this is left unsquashed to allow for suggestions/variations

🐙 This pull request conflicts with the target branch and needs rebase.
Want to unsubscribe from rebase notifications on this pull request? Just convert this pull request to a "draft".

@RandyMcMillan
You can delete the last commit (git reset --hard 718589f) and apply the patch below.
diff --git a/src/qt/forms/debugwindow.ui b/src/qt/forms/debugwindow.ui
index 15e0d3fad..ad671b02e 100644
--- a/src/qt/forms/debugwindow.ui
+++ b/src/qt/forms/debugwindow.ui
@@ -984,6 +984,117 @@
            </size>
           </property>
           <layout class="QVBoxLayout" name="verticalLayout_8">
+            <item>
+              <layout class="QHBoxLayout" name="horizontalLayout_8">
+                <property name="topMargin">
+                  <number>0</number>
+                </property>
+                <property name="bottomMargin">
+                  <number>0</number>
+                </property>
+                <item>
+                  <widget class="QLabel" name="peerHeading">
+                  <property name="sizePolicy">
+                    <sizepolicy hsizetype="Preferred" vsizetype="Minimum">
+                    <horstretch>0</horstretch>
+                    <verstretch>0</verstretch>
+                    </sizepolicy>
+                  </property>
+                  <property name="minimumSize">
+                    <size>
+                    <width>0</width>
+                    <height>32</height>
+                    </size>
+                  </property>
+                  <property name="font">
+                    <font>
+                    <pointsize>10</pointsize>
+                    </font>
+                  </property>
+                  <property name="cursor">
+                    <cursorShape>IBeamCursor</cursorShape>
+                  </property>
+                  <property name="text">
+                    <string>Select a peer to view detailed information.</string>
+                  </property>
+                  <property name="alignment">
+                    <set>Qt::AlignHCenter|Qt::AlignTop</set>
+                  </property>
+                  <property name="wordWrap">
+                    <bool>true</bool>
+                  </property>
+                  <property name="textInteractionFlags">
+                    <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
+                  </property>
+                  </widget>
+                </item>
+                <item>
+                  <widget class="QWidget" name="hidePeersDetail" native="true">
+                    <property name="enabled">
+                      <bool>true</bool>
+                    </property>
+                    <property name="minimumSize">
+                      <size>
+                        <width>32</width>
+                        <height>32</height>
+                      </size>
+                    </property>
+                    <property name="maximumSize">
+                      <size>
+                        <width>32</width>
+                        <height>32</height>
+                      </size>
+                    </property>
+                    <widget class="QToolButton" name="hidePeersDetailButton">
+                      <property name="geometry">
+                        <rect>
+                          <x>0</x>
+                          <y>0</y>
+                          <width>32</width>
+                          <height>32</height>
+                        </rect>
+                      </property>
+                      <property name="minimumSize">
+                        <size>
+                          <width>32</width>
+                          <height>32</height>
+                        </size>
+                      </property>
+                      <property name="baseSize">
+                        <size>
+                          <width>32</width>
+                          <height>32</height>
+                        </size>
+                      </property>
+                      <property name="toolTip">
+                        <string>Hide Peers Detail</string>
+                      </property>
+                      <property name="layoutDirection">
+                        <enum>Qt::LeftToRight</enum>
+                      </property>
+                      <property name="text">
+                        <string />
+                      </property>
+                      <property name="icon">
+                        <iconset resource="../bitcoin.qrc">
+                          <normaloff>:/icons/remove</normaloff>
+                          :/icons/remove
+                        </iconset>
+                      </property>
+                      <property name="iconSize">
+                        <size>
+                          <width>22</width>
+                          <height>22</height>
+                        </size>
+                      </property>
+                      <property name="shortcut">
+                        <string>Ctrl+X</string>
+                      </property>
+                    </widget>
+                  </widget>
+                </item>
+              </layout>
+            </item>
            <item>
             <widget class="QLabel" name="peerHeading">
              <property name="sizePolicy">

@w0xlt - applied the patch - thanks for the collaboration! attribution included in commit message.
I also implemented @promag's suggestion - much more prudent approach! - thanks!

Commit: 2ae79d0954c46862535114c0d3f7bcfe2837918f

tACK 2ae79d0 on ARM M1/macOS/Monterey 12.1 (Qt 5.15.2)

To avoid re-adding diff junk to the debugwindow.ui file - I prefer to add translator comments in a follow up PR.

@RandyMcMillan Still working on this PR?

rebase: d59363aaa0f39da8f27fead0b8e5b0c1a5a32226

@pablomartin4btc - great suggestion - thanks!

@pablomartin4btc - great suggestion - thanks!

You are welcome, the "gui:" prefix, IMO, would be more for the commit subject line, since we are already on the gui repo, we would't need to clarify it in the PR title.

@pablomartin4btc - I am just grateful for the interest - I had forgotten about this PR :)
retesting on MacOS X86_64 Arm64 right now.

🤔 There hasn't been much activity lately and the CI seems to be failing.
If no one reviewed the current pull request by commit hash, a rebase can be considered. While the CI failure may be a false positive, the CI hasn't been running for some time, so there may be a real issue hiding as well. A rebase triggers the latest CI and makes sure that no silent merge conflicts have snuck in.

This https://github.com/bitcoin-core/gui/pull/505#discussion_r1328132799 still needs to be addressed.

436ac4f duplicate ui element removed per @pablomartin4btc comment.

Thanks I saw that - I can update the commit message...

00000b8 clean up commit message

🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the
documentation.
Possibly this is due to a silent merge conflict (the changes in this pull request being
incompatible with the current code in the target branch). If so, make sure to rebase on the latest
commit of the target branch.
Leave a comment here, if you need help tracking down a confusing failure.
Debug: https://github.com/bitcoin-core/gui/runs/23215732626

41a1a86: update per previous suggestions

tACK 436ac4f
UI look & feel.
nit: not a blocker, please consider previous feedback regarding commit title length and meaningfulness, maybe gui: + this PR's title.

thanks!


Update package.json

PR Checklist

[ ] Please add a description of your changes.
[ ] We need your changes to come with unit tests in order to keep this project in quality and easy to maintain.
[ ] If your changes contain any new feature please be sure to document it.
[ ] Please add a link to the open issue or task that this pull request will resolve.
[ ] Add a note to the changelog to indicate the change.

Does this PR introduce a breaking change?

[ ] Yes
[ ] No

If yes please indicate it and migration info into the CHANGELOG.md file.

@pioardi: I push the trivial fix in master directly.

@pioardi: that file is not used for GitHub actions, it's just for testing purpose for me. It's not event read by the GitHub action used there.

Test PR for sonar issue. Fixed.


fix: logout failed

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.hjd seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

it is done,but in Pending


Clean up require_rent_exempt_split_destination feature

Problem
This feature has been activated on all clusters:
D2aip4BBr8NPWtU9vLrwrBvbuaQ8w1zV38zFLxx4pfBV: require_rent_exempt_split_destination::id(), "Require stake split destination account to be rent exempt"
Summary of Changes
Clean up feature-gate logic
Closes https://github.com/solana-labs/solana/issues/33300

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 81.9%. Comparing base (b3fd87f) to head (df6895a).

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #253   +/-   ##
=======================================
  Coverage    81.9%    81.9%
=======================================
  Files         837      837
  Lines      226792   226780   -12
=======================================
+ Hits       185795   185813   +18
+ Misses      40997    40967   -30


I am trying to integrate ng2admin with django and i am stuck with this error from ng build .

jquery.slimscroll.js:474 Uncaught ReferenceError: jQuery is not defined
at Object. (jquery.slimscroll.js:474)
at webpack_require (bootstrap 5795c4c15460afa485c3:52)
at Object.469 (index.ts:1)
at webpack_require (bootstrap 5795c4c15460afa485c3:52)
at Object.470 (baSlimScroll.directive.ts:8)
at webpack_require (bootstrap 5795c4c15460afa485c3:52)
at Object.473 (index.ts:1)
at webpack_require (bootstrap 5795c4c15460afa485c3:52)
at Object.165 (index.ts:4)
at webpack_require (bootstrap 5795c4c15460afa485c3:52)

Hope you resolved it, closing due to inactivity, please let us know if this is still a question.


Training Co-DINO, The classification weight for loss and matcher should beexactly the same

AssertionError: The classification weight for loss and matcher should beexactly the same.
AssertionError: CoDINOHead: The classification weight for loss and matcher should beexactly the same.
AssertionError: CoDETR: CoDINOHead: The classification weight for loss and matcher should beexactly the same.

You should delete these assertions in detr.py

yeah！
loss_cls['loss_weight'] == assigner['cls_cost']['weight']


Uncaught Error: ENOENT: no such file or directory, lstat '/Users/frasermacinnes/Library/Applicati...

[Enter steps to reproduce below:]

I was trying to open preferences from the menu bar

Atom Version: 1.2.2
System: Mac OS X 10.11.1
Thrown From: Atom Core
Stack Trace
Uncaught Error: ENOENT: no such file or directory, lstat '/Users/frasermacinnes/Library/Application Support/com.github.atom.ShipIt/update.06kHZYC'
At ATOM_SHELL_ASAR.js:0

Error: ENOENT: no such file or directory, lstat '/Users/frasermacinnes/Library/Application Support/com.github.atom.ShipIt/update.06kHZYC'
    at Error (native)
    at fs.lstatSync (fs.js:844:18)
    at Object.fs.lstatSync (ATOM_SHELL_ASAR.js:189:16)
    at realpathSync (fs.js:1454:21)
    at Object.fs.realpathSync (ATOM_SHELL_ASAR.js:272:24)
    at toRealPath (module.js:109:13)
    at Function.Module._findPath (module.js:149:20)
    at Module._resolveFilename (module.js:334:25)
    at Function.Module._resolveFilename (/Users/frasermacinnes/Library/Application Support/com.github.atom.ShipIt/update.06kHZYC/Atom.app/Contents/Resources/app.asar/src/module-cache.js:383:52)
    at Function.Module._load (module.js:286:25)

Commands

Config
{
  "editor": {
    "fontSize": 12
  }
}

Installed Packages
# User
No installed packages

# Dev
No dev packages

Duplicate of #9559 and #7399, please subscribe there for updates.


Question: Ownership of database at creation

Hi, more a question then a bug or request.
Is there a way I can set ownership of a table created with Terraform? I would like to use a custom-made role to create and own all databases, but I'm failing on finding out how to do that or if even possible.

Thanks for your reply!
Isn't that read-only, meaning that this is not a parameter which I can set but only read? I found kind of a workaround, which is setting the default role for our CI-Runner user according to our role-hierarchy.
It would be still nice, though, if one could set the ownership for a resource in the code base. Would allow distributing ownership across multiple roles. In our setup, everything is now owned by this one role

Hey 👋
Closing the issue as it's referring to the deprecated resource and we're not supporting them. Please, try to use the latest provider version with the non-deprecated resources (e.g. snowflake_grant_privileges_to_account_role). If the issue persists on the non-deprecated resource (or the feature is present in Snowflake, but not in the provider), please create a new GitHub issue. The migration guide may help during migration to the latest resources. Here's a list of the latest, non-deprecated, grant resources:
Resources
snowflake_grant_privileges_to_database_role
snowflake_grant_privileges_to_account_role
snowflake_grant_account_role
snowflake_grant_database_role
snowflake_grant_application_role (coming soon)
snowflake_grant_privileges_to_share
snowflake_grant_ownership (coming soon) <- This is what will resolve your issue
Data sources
snowflake_grants


POC 2 Installed Versions of Emissary Package

https://github.com/aws/eks-anywhere-packages/pull/648

Finished


Improvements

Use promises for enrichActivities and enrichAggregatedActivities.
ActivitiySchema inherits from Schema.

afaik this also needs an update https://github.com/GetStream/stream-node#model-integration


validatescript tab-completion dont show possible values

(Maybe it should be at vscode repo)
Steps to reproduce
function Test-Service
{
    [CmdletBinding()]
    param (
        [ValidateScript({Get-Service | Select-Object Name})]
        $Service
    )

    begin
    {
    }

    process
    {
        $Service
    }

    end
    {
    }
}

Expected behavior
Test-Service -Service  [tab]
when pressing tab you should see possible values
Actual behavior
doesnt show values
Environment data
Name                           Value

PSVersion                      6.1.1
PSEdition                      Core
GitCommitId                    6.1.1
OS                             Microsoft Windows 10.0.17763
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Great examples thx!
But are you saying that tab-complition is not possible like validateset?

Yeah, ValidateScript is too open-ended to autocomplete its own values. You can apply an [ArgumentCompleter()] attribute to complete the values instead if you want that. 😄

do you have a good example?
Your examples on your blog still doesnt work for me.

If you could show me what you've attempted to work with I could offer specific suggestions. 😄
But in general, this sort of method works well:
function Get-File {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory, Position = 0)]
        [ValidateScript(
            {
                $_ -in (Get-ChildItem -File).Name
            }
        )]
        [ArgumentCompleter(
            {
                param($Command, $Parameter, $WordToComplete, $CommandAst, $FakeBoundParams)
                $ValidValues = (Get-ChildItem -File).Name
                return @($ValidValues) -like "$WordToComplete*"
            }
        )]
        [string]
        $Filename
    )
    "The selected file is $Filename"
}

I tried your above example.
Get-File -filename [tab]
My assumption is: when pressing tab, the values will be shown, but it isn't

ohh man, really looked for this answer. i also thought the validationscript did everything, but how you show it make sense. i also did a script that worked when implementing the -in

ohh man, really looked for this answer. i also thought the validationscript did everything, but how you show it make sense. i also did a script that worked when implementing the -in


Fix padding of action bar items

Fixed the padding in action trigger items. This was showing an inconsistency in the hover of focused buttons because the outline would not completely dissapear.
Before:
Focused:
Focused & Hover:
After:
Focused:
Focused & Hover:
This bug only repros in Chrome and Edge, the fix works in both browsers and does not repro the UI of other browsers (in both Windows and Mac).

Fixed the padding in action trigger items. This was showing an inconsistency in the hover of focused buttons because the outline would not completely dissapear.
Before:
Focused:
Focused & Hover:
After:
Focused:
Focused & Hover:
This bug only repros in Chrome and Edge, the fix works in both browsers and does not repro the UI of other browsers (in both Windows and Mac).

I think the Focused & Hover state should still have the outline


StaticFiles throws in _fileProvider.GetFileInfo on /.%20./

Sending a request of GET /bar/.%20./foo.txt HTTP/1.1 or GET /bar/%20./foo.txt HTTP/1.1
Throws  an unhandled ArgumentException at:
        public bool LookupFileInfo()
        {
            _fileInfo = _fileProvider.GetFileInfo(_subPath.Value);  <<<<<<<<<<<<<<<<< unhandled exception here

An exception of type 'System.ArgumentException' occurred in mscorlib.dll but was not handled in user code

Additional information: The path is not of a legal form.

   at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
   at System.IO.Path.GetFullPathInternal(String path)
   at Microsoft.Extensions.FileProviders.PhysicalFileProvider.GetFullPath(String path)
   at Microsoft.Extensions.FileProviders.PhysicalFileProvider.GetFileInfo(String subpath)
   at Microsoft.AspNetCore.StaticFiles.StaticFileContext.LookupFileInfo() in C:\Users\casaba\Documents\StaticFiles\src\Microsoft.AspNetCore.StaticFiles\StaticFileContext.cs:line 141
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context) in C:\Users\casaba\Documents\StaticFiles\src\Microsoft.AspNetCore.StaticFiles\StaticFileMiddleware.cs:line 86
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.<Invoke>d__6.MoveNext()

This issue was moved to aspnet/FileSystem#204


Payment Sheet Failed

When trying to use the plugin on an iOS device or simulator I am getting a payment sheet failed message. However the code works just fine on web.

Are you using the ephemeral key? If yes, then you have to use the id of the ephemeralResponse

Hi @PaintedShepherd , yes I am using the ephemeral key I am manually setting it at the. moment for testing purposes.

@max1018  First, you need to isolate whether the problem is with this plugin or something else. For that we are providing a demo. Please clone this repository and try https://github.com/capacitor-community/stripe/tree/master/demo/angular

@rdlabo , after i download the repo what commands do i need to run to install dependencies and use this on a simulator?

Please run npm run cap && npx cap update && npx cap open ios .

Sorry, I forgot one command: npm run build in top repository.

The demo is working on my test device... not sure why its not in my application.

Maybe this is your backend api issue. Please check https://stripe.com/docs/payments/accept-a-payment?platform=ios#add-server-endpoint , and if not resolve, please ask stripe team.

I am manually entering the information so it shouldn't be my backend. Also it works on web. What reason would the paysheet pop up and then immediately fail ?

Manually? You should create by code: https://github.com/capacitor-community/stripe/blob/master/demo/server/src/app.controller.ts#L23-L26
The web will open the PaymentSheet even if the key is wrong, but iOS does not seem to. This is a Stripe specification, so please ask Stripe.

I create by code on the backend but then take response and manually enter in

@max1018 Did you adapt this plugin for production? If yes, please tell us what app. Please help us to develop this plugin in 2022.
https://github.com/capacitor-community/stripe/issues/145
Thanks.


minecraft crashes, whenever i open inventory (w mod for 1.19.3)

here's log. need help, please.
crash-2023-02-15_13.23.01-client.txt

I released a temporary version which disables the tooltips in the creative inventory until i find a solution for your problem. It should not crash with this version anymore

yeah, thank you!
it got much better in v1.8.3b, no crashes now, and in SP it works exacly like you described. in MP, however, i can't see tooltips even if survival, but! when i open some server gui, like /ah (market/economy plugin), all tooltips are making comeback everywhere.
looking forward next mod version. again, my gratitude. =)


Add ability to utilise GPU Acceleration

What would you like to be added
It would be really great if Darkroom starts to support GPU acceleration for the image processing whenever possible.
Why is this needed
The performance of the application server can be greatly improved if we utilize GPU for processing images when available.
Attaching some benchmarks performed by @sohamkamani to support this feature request.

Machine details

Machine Type
CPU Platform
GPUs

n1-standard-1 (1 vCPU, 3.75 GB memory)
Intel Ivy Bridge
1 x NVIDIA Tesla K80

Code used

#include <opencv2/highgui.hpp>
#include "cuda.hpp"
#include <opencv2/cudawarping.hpp>
#include <opencv2/imgproc.hpp>
#include "core.hpp"
#include <iostream>
#include <ctime>

using namespace std;

int main(int argc, char ** argv) {
  string input_file = "sample.jpg";
  string output_file = "out.jpg";
  //Read input image from the disk
  cv::Mat inputCpu = cv::imread(input_file, 1);
  cv::cuda::GpuMat input(inputCpu);
  if (input.empty()) {
    cout << "Image Not Found: " << input_file << endl;
    return -1;
  }

  //Create output image
  cv::cuda::GpuMat output;
  clock_t start = clock();
  for (int i = 0; i < 20; i++) {
    cv::cuda::resize(input, output, cv::Size(0, 0), .25, 0.25, 3); // downscale 4x on both x and y
  }
  clock_t d1 = clock() - start;
  cout << "OpenCv Gpu code ran. Time:" << d1 << "\n";
  cv::Mat outputCpu;
  output.download(outputCpu);
  cv::imwrite(output_file, outputCpu);

  cv::Mat inputCpu2 = cv::imread(input_file, 1);
  cv::Mat outputCpu2;
  start = clock();
  for (int i = 0; i < 20; i++) {
    cv::resize(inputCpu, outputCpu, cv::Size(0, 0), .25, 0.25, 3);
  }
  clock_t d2 = clock() - start;
  cout << "OpenCv Cpu code ran. Time:" << d2 << "\n";
  input.release();
  output.release();
  return 0;
}

Results

user@localhost:~$ ./a.out
OpenCv Gpu code ran. Time:226962
OpenCv Cpu code ran. Time:3231722

user@localhost:~$ ./a.out
OpenCv Gpu code ran. Time:226377
OpenCv Cpu code ran. Time:3277886

user@localhost:~$ ./a.out
OpenCv Gpu code ran. Time:217269
OpenCv Cpu code ran. Time:3254524

user@localhost:~$ ./a.out
OpenCv Gpu code ran. Time:184617
OpenCv Cpu code ran. Time:3342405

This shows that resizing an image with the GPU is 14-16 times faster than with the CPU.

Do you guys mind if I take up this issue? I am thinking to add GoCV support in Darkroom. GoCV has CUDA support. It is still in experimental phase, but a lot of functionalities seems to work fine.

@anubhavp28 Sure, go ahead. Although I'd to see a working prototype first with GoCV before we can take the decision to opt for it.

Unfortunately, GoCV lacks support for image processing using cuda currently. I couldn't find a alternative to GoCV. Let me know if you guys know of something. I am currently thinking of adding that support to GoCV, but this could take a long time (I don't have any experience of calling C/C++ code from Go). I hope that's not a problem.
Sorry for updating you guys so late. I had been busy in the previous week due to my coursework.

Update : I am working on adding the necessary functionality to GoCV - link to pull request. The author of GoCV @deadprogram is looking for some members from GoCV community to verify that the code in my pull request is working for their hardware. If any of you could help with this, it would expedite the whole process.

@anubhavp28 Commented on your GoCV PR. 👍

@anubhavp28 thanks anubhav, it looks good

I can see that the PR on gocv has been merged @anubhavp28 awesome work 🎊 https://github.com/hybridgroup/gocv/pull/494

The new release of GoCV that includes this code should be out by next week.

I would like to take up the issue for blur of image using cuda

@anubhavp28 @jspeedluk Any updates on this?

I'm currently not working on this. I don't think I would be able to resume work this month. I am currently looking for Internship, and busy with hiring contests and interviews rounds. If @jspeedluk or anyone else wants to take the work forward, feel free too.


Add command description in doc

I sent a patch to sphinx-click to improve the click command documentation. It was merged to master(https://github.com/click-contrib/sphinx-click/commit/7ce2b0453b261d385ce53e1af7de78980e903440) but is not released yet.
Could someone please update the sphinx-click to the master branch so that the CLI documents will have command description.

I don't know if the  doc is generated with the push and if you guys accept git editable in dev packages( I guess so?). If both are true, I will be glad to PR.


Adding shaders from MathBox

MathBox is a 3D math graphing library that can produce really impressive visualizations. The library was designed to make mathematical presentations. It has its own system for wiring shaders together and handling transitions between slides. The design of the library is discussed in here.
I know very little about graphical programming, but would like to add MathBox's functionality to Makie.  As far as I understand, copying the shader code should be straightforward. Wiring the shaders together and abstracting this into a nice interface is another matter. How do I get started?

You could start by posting the coolest applications and shaders you want to have ;) Best with pictures !

This slides 40-59 of this slideshow is the kind of thing I'd like to be able to do. I'd like to use Julia packages directly instead of having to translate them to javascript first. I'll have to reverse engineer the presentation to figure out which shaders I need. The transition handling is also really cool (switch between slides fast to see this).

I think I'll try to use one of the javascript packages in Julia as a front end for MathBox first. I'll see how far I can get by just pushing the data to be plotted from Julia.

Probably sensible for now... If you do something cool that you'd like in Makie, post it here ;) We can try to figure out what would be needed for it!


Spacebar scrolls the scrollpane

Hello,
I'm using the the CodeEditor as an editabele object on Pane that is inside a scrollpane. (see it like a TextField in MS Word).
I have the issue, that when pressing the spacebar inside the CodeEditor, my Scrollpane scrolls down, without me adding any code that may change the vvalue of the scrollpane!

Hi! Does it also add a space to the editor or not?

hey,
Yes, space is also added to the Editor!

Thanks. Scroll by spacebar is probably the desired behavior of the ScrollPane. The problem probably is that the event is not consumed by the CodeArea. There are a two events fired when a character key is pressed: KEY_PRESSED and KEY_TYPED. CodeArea handles the KEY_TYPED event and inserts a space character, but does not handle the KEY_PRESSED event, so it propagates up and is handled by the ScrollPane as a command to scroll down. This is an interesting problem that questions the design of key handling in JavaFX.
Luckily for you, there is a simple workaround: you can add an event handler to CodeArea that consumes the KEY_PRESSED event for space:
codeArea.addEventHandler(KeyEvent.KEY_PRESSED, event -> {
    if(event.getCode() == KeyCode.SPACE) {
        event.consume();
    }
});

great, thank you very much for the help.
Should have thought of the event.consume myself.

Seems like I can solve this in RichTextFX, by checking whether a KEY_PRESSED event isLetterKey() or isWhitespaceKey() and only consume it in that case, otherwise let it bubble up. I will leave this open so that I don't forget about it.

I'm not sure whether that will work for characters like .,:;+-=_(){}[]\/?!@#$%^&*~, but should be useful anyway.

by just consuming the event only when spacebar is pressed (as you mentioned in your second post) everything works fine, all characters and whitespaces (space/tab)!

Thanks for confirming.
It is not a general solution, though, because the problem would re-appear for someone who puts a CodeArea as a child of a node that, for example, uses KEY_PRESSED handler on Z or any other character. CodeArea handles KEY_TYPED for Z, but not KEY_PRESSED for Z.

My proposed more general solution would work for letters (A-Z), digits (0-9) and whitespace characters, but not for other special characters as mentioned above.

okay, seems like a good start solution!

I asked about a general solution on the JavaFX mailing list, with no answer so far, so I proceeded with a fix the way I proposed above.


ipptransform: Copy Annots values from page dictionaries

When copying pages "manually" for things like N-up support, ipptransform needs to also copy the Annots dictionary to get any annotations/form data for a page as well.

Having some difficulties getting the N-up working, but normal 1-up works already. Pushing this to a later stable release.


Consistency refactor: Remove T prefix from types , etc

Let's do some refactoring to have a more consistent codebase:

It seems that we are more inclined to use types without T prefix. Let's unify for consistency.
0x${string} to viem's Address?

What else? cc @technophile-04 @rin-st @sverps

TS: interfaces -> types
components/scaffold-eth/Contract utilsContract.tsx, utilsDisplay.tsx -> utils.ts. Also refactor it, for example move getParsedError to utils/scaffold-eth
remove barrels?)

Updated OP with new stuff. Also opened #627
I also think we should have all the desired consistency documented up somewhere (with conclusions from https://github.com/scaffold-eth/scaffold-eth-2/issues/232 too).
Not sure where the best place could be: Github wiki? SE-2 docs -> contributing?

remove barrels?

Yep, this is an interesting discussion too. I remember seeing some issues in the NextJS 14 migration with HMR.

Not sure where the best place could be: Github wiki? SE-2 docs -> contributing?

Didn't knew about Github Wiki! I think it looks a fare place 🙌

remove barrels?

Yep, this is an interesting discussion too. I remember seeing some issues in the NextJS 14 migration with HMR.

I am kind of 60%(remvoing barrels) and 40% keeping them because I think in new Next version there is option to mark barrels file and optimize them => https://vercel.com/blog/how-we-optimized-package-imports-in-next-js but don't know if it actually work and 100% assured solution will be removing barrels files

[ ] JSDoc tweaks: see https://github.com/scaffold-eth/scaffold-eth-2/pull/627#issuecomment-1828163974

Is anybody already working on this TODO ? Would love to tackle it 🙌

I'm picking up the address type stuff