🪲[BUG] Pico W CYW43 and Pico-PIO-USB host code conflict

I am running a MSC Host Demo with Pico-PIO-USB host a Pico W board. Right now, my code uses the CYW43 module just to blink an LED. The code works just fine on a regular Pico board with Pico-PIO-USB. The code also works fine on Pico W board if I use the native USB hardware for the USB host. However, if I build the program to run on a Pico W board with a Pico-PIO-USB host, the program fails to work properly in various ways.
...
I expected the LED on the Pico W board to blink periodically to show the main loop is running and I expected the Pioc-PIO-USB host to properly enumerate a connected flash drive.
...
What I saw instead was: The CYW43 blinks the LED fine until I plug in a USB flash drive. Then the console spits error messages related to CYW43 initialization.
I have found one issue that prevents the stream of error messages, but does not completely fix the problem.
...
Additional information
My program initializes the CYW43 module in core 0. The Pico-PIO-USB host code runs in core 1. The pico-sdk file src/rp2_common/pico_cyw43_driver.c uses a PIO program that uses one state machine and 6 instructions to communicate between the RP2040 and the CYW43 module. I am using the default configuration of Pico-PIO-USB, so the pio_usb_tx program is loaded into PIO 0 and uses state machine 0 and the receiver programs run in PIO 1. By default, the CYW43 module runs in PIO 1, but there are no available instructions there, so I set CYW43_SPI_PIO_PREFERRED_PIO=0 to force that driver to run in PIO 0.
I noticed in pio_usb.c that there are no calls to pio_sm_claim() when state machines are assigned. That means that the call to pio_claim_unused_sm() in src/rp2_common/pico_cyw43_driver.c cannot work properly. I thought that was the only issue, so I added the following code to the end of apply_config()
  pio_sm_claim(pp->pio_usb_tx, pp->sm_tx);
  pio_sm_claim(pp->pio_usb_rx, pp->sm_rx);
  pio_sm_claim(pp->pio_usb_rx, pp->sm_eop);

Also, my code now waits until core 1 initialization is complete before it attempts to initialize the CYW43 hardware on core 1 so that the pio_sm_claim() calls have time to execute. Now instead of seeing a stream of error messages, I see the program lock up as soon as I plug in a USB drive. After some time, I see on the console
[CYW43] do_ioctl(2, 263, 16): timeout
[CYW43] got unexpected packet 0

and then the LEDs start flashing again, but the flash drive does not enumerate. There must be some other conflict(s) too.
If I comment out the code that initializes the CYW43 and blinks the LED, then flash drive enumerates properly, so I can say my USB hardware works OK.
Are there any PIO operations in the Pico-PIO-USB USB TX code that might conflict with another state machine running in the same PIO?

How about DMA settings?

@sekigon-gonnoc Yep, claiming the DMA channel fixes the problem. I will format a pull request to fix it.

Thanks


Search index is not updated anymore

Newly created resources don't show up in the search results.
Deleting existing resources causes them to still show in search results but as an errored state.
Possibly a regression introduced after the rewrite of commit logic?

I'm confused, I though I saw the e2e tests passed. I'll take a look!

Can't replicate in latest develop


Adds preliminary Bridge-Infura integration

What was wrong?
PandaOps down meant portal-bridge couldn't work.
How was it fixed?
--infura option added to portal-bridge
To-Do

[ ] Add entry to the release notes (may forgo for trivial changes)
[ ] Clean up commit history

Having a global flag for --infura seems okay. I think it's maybe even better to have each request hit pandaops once and then use Infura if it's down (or the pandaops key is missing). That lets us skip adding the CLI flag, and we won't even need a deploy to switch between them.

Closing as this PR was superceded by https://github.com/ethereum/trin/pull/1089


Syntax object.method (without parentheses) is unused

struct S;

impl S {
    fn f(self) {}
}

fn main() {
    let s = S;
    let f = s.f; // error: attempted to take value of method `f` on type `S` :(
}

It's a valuable piece of syntax and it would be a shame not to put it into action some day.
Any plans/ideas how to do it better?
Several variants I can think about:

A method with bound self argument
let f = object.method; // returns a closure

is equvalent to
let f = |args...| { object.method(args...) }

Swift goes this route. C# also allows converting object.method to a delegate, although explicitly.
This is probably the most intuitive variant, but, frankly, I think it's pretty useless in practice (or at least rarely useful).

A variant of UFCS
let f = object.method;

is equvalent to
let f = typeof(object)::method;

or
let f = typeof(object)::with_adjustments::method;

I'm not sure how useful is this. UFCS with adjustments (ref, deref, unsize etc.) would be pretty useful, it would allow libraries to evolve more freely (see https://github.com/rust-lang/rust/pull/26980 for example of what libraries can't do now if they want to keep backward compatibility), but it doesn't strictly need a value (object), only a type (Object). I don't recall any language doing this.

Parentheses elision
let f = object.method;

is equvalent to
let f = object.method(); // errors as usual if >0 arguments are required

This is what D does. Parentheses elision greatly reduces symbolic noise in typical code, but can
probably be confusing sometimes (I don't use D and don't know how confusing it is in practice) and
some corner cases (what happens if method returns an object implementing Fn?) had to be clarified.

Another useful unused syntax, somewhat opposite to object.method is "field UFCS": Object::field.
It would be really great to make Object::field a projection function fn(Object) -> FieldType:
objects.iter().map(Object::field); // Does the obvious thing

However, ownership, i.e. the choice between fn(Object) -> FieldType, fn(&Object) -> &FieldType and
fn(&mut Object) -> &mut FieldType should be taken into account somehow.

Unfortunately, this would probably be backwards incompatible, as fields can share names with methods:
struct Foo {
    frob: &'static str,
}

impl Foo {
    fn frob(&self) -> &'static str { "bar" }
}

fn main() {
    let foo = Foo { frob: "foo" };
    println!("{}", foo.frob);   // foo
    println!("{}", foo.frob()); // bar
}

@P1start
Yeah, I know, but I don't think it's a backward compatibility problem - in case of conflict a field still can be preferred  for object.method and a method can be preferred for Object::field, just like now.

@petrochenkov any plans to pursue this?
I've wanted this way too often and might fit in the 2017 roadmap of improving ergonomics.

@gnzlbg

I've wanted this way too often

What exactly - variant 1, variant 2, variant 3 of object.method, or Object::field or both?

My vote is for variant 1, the others are confusing. Static method lookup should only occur with types and modules, not with bindings.

@petrochenkov variant 1.

@gnzlbg @oli-obk
Could you write an RFC draft then (with motivation, etc)?
I'm really bad (and slow) at writing texts, but I can do a technical review before it's submitted.

I'd like to express my support for variant 1; seems like a nice bit of sugar :)

So I wrote a [Pre-RFC] Unify bindings to all callables in internals. In a nutshell it says that a binding to a callable always return a closure, and when the callable is an object.method, that closure has an environment that captures the object. This basically makes bindings to all callables to work as one might expect, that is, the binding accepts the same arguments that the original callable would have accepted.

My vote is against them all :)

Borrows or moves object despite fn(*) -> * being a Copy otherwise. Very counter-intuitive.
Why not… just use UFCS? There’re also ambiguity issues with typeof(object)::method in generic contexts.
Ewww.

@nagisa

Why not… just use UFCS?

UFCS doesn't do adjustments.
You can't turn |vec| vec.slice_method() into Vec::slice_method because Vec itself doesn't have slice_method, it's only accessible through deref.
I agree though, object.method is not the best syntax for "UFCS with adjustments".

@nagisa

Borrows or moves object despite fn(*) -> * being a Copy otherwise. Very counter-intuitive.

What?  I feel like object.method making a binding is significantly different from what similar syntax already does. struct A { f: fn(Self, ...) -> ... }; let a = A { ... }; a.f for example will not cause a borrow or move to happen, because a.f is a plain function pointer that’s Copyable.
Option 1 is basically a proposal to add a different context-sensitive (something that would “activate” if there was impl A { fn f(self, ...) -> ... { ... } and no field with same name) meaning to a.f which returns something resembling a function pointer, but not quite, while also borrowing or moving the a.

@nagisa that's similar to how calling those two functions look though, to call the fn stored in a field you need a.f(a, ...) (which I'm not sure is even possible), but method calls "magically" allow you to omit the self parameter and automatically borrow/move as needed allowing a.f(...) to work.

struct A { f: fn(Self, ...) -> ... }; let a = A { ... }; a.f for example will not cause a borrow or move to happen, because a.f is a plain function pointer that’s Copyable.

Why is f potentially being a function pointer relevant?  If so, are you mainly concerned about the complexity this adds to the language, or do you think this also introduces some pitfalls?

Is solving all ambiguity problems by changing the operator out of the question?

object -> method is probably a nogo, even though I like it
closure object.method could be a new keyword that only applies if followed by $ident.$ident
object::method because this operation is mostly static, but processes a runtime value
|...| self.method(...) being a new closure syntax that copies all arguments to wherever ... is mentioned in the closure body

out of the question?

Nothing is out of the question :) From the alternatives you provide I still like the let f = object.fn; syntax more because it is more symmetric to the free function binding syntax let ff = free_fn; and I'd rather not introduce a completely new third syntax for binding functions.
Having said this |...| self.method(...) might interact with variadics, so I don't think it could be possible to resolve whether it is good or bad till there is at least a solid path forward for the variadic argument story in Rust.


The credentials file needs to be streamlined

The credentials file, a json file, needs separate json objects.
Split according to

data that is required
data that is generated

Added a new project to the repo.
The project reads the new json format and writes is back to a different file.
The inbetween data can be observed via debugging.


Added Random Emoji Generator

issues #1380
🛠 Issue (Number)
Closes #1380
Description
This is simple website on hovering over emoji everytime , it will show random emoji which is generated using HTML,CSS and Javascript
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] I have made this from my own
[x] I have taken help from some online resourses
[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] The title of my pull request is a short description of the requested changes.

ATTACH SCREEN-SHOTS

@TusharKesarwani @zugzwang03 Please review my PR

@zugzwang03 Changes Done

update branch first

@zugzwang03 Changes Done

@zugzwang03 Added README.md file

@zugzwang03 Please review my changes


Image Compression Roundup

Ran all the images and the images inside BOINC.zip through several lossless compression algorithms.

@denravonska thoughts on removing /contrib/Installer/boinc/boinc/Resources/splash.png while we're at it?  This image is very old and seems to be completely unused.

always wondered why tx_minedoie_WOEI3ooIzGHI.png had such a whacky name. could we just change it to tx_mined? or is it also ununsed?

Nuke them all if they're unused.

Please KISS. remove images in separate pr.

Will create a new PR @tomasbrod


A method with the same name as DU counstructor

Why can't I create a static method with the same name as discriminated union constructor or static method generated from it?
Neither this
type ElementDimensions =
    | Inherited of Length : Dimension
    | TypeSizeDimensions of TypeSize : TypeSize * Length : Dimension
    | CustomDimensions of Profile : Profile * Lenght : Dimension
    static member NewCustomDimensions (width, height, length) =
        CustomDimensions(Profile(width, height), length)

Nor this does work
    static member CustomDimensions (width, height, length) =
        CustomDimensions(Profile(width, height), length)

And I wonder why because the number of parameters is different!
Expected behavior
If the list of parameters of DU constructor and the static method with the same name is different, it compiles well.
Actual behavior
error FS0023: The member 'NewCustomDimensions' can not be defined because the name 'NewCustomDimensions' clashes with the compiled form of the union case 'CustomDimensions' in this type or module
Known Workarounds
[<AutoOpen>]
[<CompilationRepresentation (CompilationRepresentationFlags.ModuleSuffix)>]
module Element =

    open System
    open System.Collections.Immutable
    open FSharp.Collections.Immutable
    open Microsoft.FSharp.Data.UnitSystems.SI.UnitSymbols

    let CustomDimensions (width, height, length) =
        CustomDimensions(Profile(width, height), length)

But it does not work for other .NET languages. I cannot expose an overload for DU case constructor method.
Related information

Windows 10 Pro 14393
.NET Portable Profile259
Visual Studio 2015 Enterprise Update 3

you should post this to visualfsharp repo.

OK, I just wonder why.

because that's the compiler issue repo. this one here is only for packaging the compiler for mono.

mady that sample self-contained:
type Dimension = int
type TypeSize = int
type Length = int
type Profile = | Profile of int*int

type ElementDimensions =
    | Inherited of Length : Dimension
    | TypeSizeDimensions of TypeSize : TypeSize * Length : Dimension
    | CustomDimensions of Profile : Profile * Lenght : Dimension
    static member NewCustomDimensions (width, height, length) =
        CustomDimensions(Profile(width, height), length);;

CreateCustomDimensions would work.

Got it.
Thanks, however it won't look consistent to C# consumer

You probably wouldn't want to expose a DU to a C# consumer anyway.

@7sharp9, why not, it is convenient.
@forki, reposted as https://github.com/Microsoft/visualfsharp/issues/1488

@dsyme this can be closed


execute "asl.exe /d dsdt.bin" output error-asl_ERROR:failed to open LST file -DSDT.TXT

[Enter feedback here]
C:\Desktop\temp>asl.exe /d dsdt.dat
Microsoft ACPI Source Language Assembler Version 5.0.0NT
Copyright (c) 1996,2014 Microsoft Corporation
Compliant with the ACPI 5.0 Specification
asl_ERR: failed to open LST file - DSDT.TXT
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 146c2e57-a40b-33e0-c108-37f7555eda8a
Version Independent ID: 81b0b392-c18a-f083-17fa-7e6dca629a52
Content: Microsoft ASL compiler - Windows drivers
Content Source: windows-driver-docs-pr/bringup/microsoft-asl-compiler.md
Product: windows-hardware
Technology: windows-devices
GitHub Login: @barrygolden
Microsoft Alias: bagold

Thanks for reaching out to the Windows Driver Developer Documentation team. You may have success posting your question about the asl_ERR: failed to open LST file error message in the following forums, where other driver developers and Microsoft engineers can be found.
Hardware and Application Developers on Q&A
NTDEV forum at OSR Online

Thanks for reaching out to the Windows Driver Developer Documentation team. You may have success posting your question about the asl_ERR: failed to open LST file error message in the following forums, where other driver developers and Microsoft engineers can be found.
Hardware and Application Developers on Q&A
NTDEV forum at OSR Online


chore: move to alpine 3.21

Fixes #4064

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

0 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.001%) to 21.074%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

api/app.ts
0
1
0.0%

Totals

Change from base Build<PHONE_NUMBER>9:
-0.001%

Covered Lines:
3952

Relevant Lines:
19946

💛  - Coveralls


Navigation buttons can be tapped even when not displayed.

Using the navigator to navigate from a view with a right button to a view without right button will still allow events to be dispatched to the previous route right button.
ex:

It's an issue with Navigator: https://github.com/facebook/react-native/issues/4559

Oh geez, thanks. I was hoping it would be in ex-navigator, faster to get fixes than in RN.


Rendering order issue

Describe the bug
Rendered image order towards the end of the sequences doesn't match camera motion. E.g. frame 100 appears to be behind frame 99, even though the camera is moving forward.
However, poses reported in CSV output seem to be in the correct order - suggesting this could be a race condition in the rendering queue.
To Reproduce
Steps to reproduce the behavior:

Render an EasySynth sequence with Color images only.
Iterate through rendered images visually and look for order anomalies.

Expected behavior
Images should appear to be following a single smooth motion.
Screenshots
If applicable, add screenshots to help explain your problem.
Configuration (if applicable):

OS: Ubuntu 20.04, UE5
GPU: GeForce 1080Ti

Additional context
Add any other context about the problem here.

I have also seen this issue. I simply delete the last row of data from the EasySynth generated outputs.


fix: custom eth rpc url

combined env override and queryUrl override to simplify useMultiGeth hook
return early from service runner hook if custom settings are present

fixes #156

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


MSID: 99904 Version: 2 DOI: 10.1101/2<IP_ADDRESS>8855

MSID: 99904
Version: 2
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>8855
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=99904
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>8855

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/99904v2
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>8855
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/99904/v2/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

Hi @acollings, in the v1 Assessment we had 'potentially useful' for significance. Here in the v2 we have nothing - is that deliberate?

Hi @fred-atherden it would have been better to have done the same for both (i.e., no term for both, or potentially useful for both), but at this point let's leave it

OK thanks


LangGraph Studio without Human Message ID

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangGraph/LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangGraph/LangChain rather than my code.
[X] I am sure this is better as an issue rather than a GitHub discussion, since this is a LangGraph bug and not a design question.

Example Code
import os
from dotenv import load_dotenv
import sys

load_dotenv()
WORKDIR=os.getenv("WORKDIR")
os.chdir(WORKDIR)
sys.path.append(WORKDIR)

from langgraph.graph import StateGraph, END
from src.utils import State, GraphInput, GraphOutput, GraphConfig
from src.nodes import *
from src.router import *

def defining_nodes(workflow: StateGraph):
    workflow.add_node("llm", answer_query)
    workflow.add_node("summarizing_memory", summarize_memory)

    return workflow

def defining_edges(workflow: StateGraph):
    workflow.add_conditional_edges(
        "llm",
        define_next_step)
    workflow.add_edge("summarizing_memory", END)

    return workflow

workflow = StateGraph(State,
                      input = GraphInput,
                      output = GraphOutput,
                      config_schema = GraphConfig)

workflow.set_entry_point("llm")
workflow = defining_nodes(workflow = workflow)
workflow = defining_edges(workflow = workflow)

app = workflow.compile()

Error Message and Stack Trace (if applicable)
delete_messages = [RemoveMessage(id=m.id) for m in state["messages"][:-2]]
AttributeError: 'dict' object has no attribute 'id'

Description
I developed a simple chatbot system with a memory summarisation feature, but when I test it on LangGraph Studio, I see that the Human Message generated in the UI of LangGraph Studio doesn´t generate an ID. I think it should generate one randomly automatically.
Then, when I implement a summary of the memory, the RemoveMessage fails because the Human Message doesn´t have an associated ID.
Video sample:
https://github.com/user-attachments/assets/bc1c730e-7732-4865-83bd-62492560826a
Here the state:

{
  "values": {
    "messages": [
      {
        "type": "human",
        "content": "Hi, bro!"
      },
      {
        "content": "Hey! How’s it going?",
        "additional_kwargs": {},
        "response_metadata": {
          "finish_reason": "stop",
          "model_name": "chatgpt-4o-latest",
          "system_fingerprint": "fp_61e551c4c2"
        },
        "type": "ai",
        "name": null,
        "id": "run-b424b05f-35a8-44ee-a248-963205798645",
        "example": false,
        "tool_calls": [],
        "invalid_tool_calls": [],
        "usage_metadata": null
      },
      {
        "type": "human",
        "content": "How are you?"
      },
      {
        "content": "I'm just a program, but thanks for asking! How about you?",
        "additional_kwargs": {},
        "response_metadata": {
          "finish_reason": "stop",
          "model_name": "chatgpt-4o-latest",
          "system_fingerprint": "fp_7668e88a74"
        },
        "type": "ai",
        "name": null,
        "id": "run-e28083ac-fe19-49d4-9aeb-23208bec0662",
        "example": false,
        "tool_calls": [],
        "invalid_tool_calls": [],
        "usage_metadata": null
      },
      {
        "type": "human",
        "content": "great"
      },
      {
        "content": "Awesome to hear! What's on your mind today?",
        "additional_kwargs": {},
        "response_metadata": {
          "finish_reason": "stop",
          "model_name": "chatgpt-4o-latest",
          "system_fingerprint": "fp_61e551c4c2"
        },
        "type": "ai",
        "name": null,
        "id": "run-38f86316-f003-445c-91d4-bb6add7d53f6",
        "example": false,
        "tool_calls": [],
        "invalid_tool_calls": [],
        "usage_metadata": null
      }
    ]
  },
  "next": [
    "summarizing_memory"
  ],
  "tasks": [
    {
      "id": "3fa1fcb4-765b-1806-3580-9999beccf13a",
      "name": "summarizing_memory",
      "path": [
        "__pregel_pull",
        "summarizing_memory"
      ],
      "error": "AttributeError(\"'dict' object has no attribute 'id'\")",
      "interrupts": [],
      "state": null
    }
  ],
  "metadata": {
    "step": 7,
    "run_id": "1ef79cc3-7c1d-687b-84da-a966c4b35902",
    "source": "loop",
    "writes": {
      "llm": {
        "messages": [
          {
            "id": "run-38f86316-f003-445c-91d4-bb6add7d53f6",
            "name": null,
            "type": "ai",
            "content": "Awesome to hear! What's on your mind today?",
            "example": false,
            "tool_calls": [],
            "usage_metadata": null,
            "additional_kwargs": {},
            "response_metadata": {
              "model_name": "chatgpt-4o-latest",
              "finish_reason": "stop",
              "system_fingerprint": "fp_61e551c4c2"
            },
            "invalid_tool_calls": []
          }
        ]
      }
    },
    "parents": {},
    "user_id": "",
    "graph_id": "agent",
    "thread_id": "4f1bcf71-7fd9-4df6-bc41-8af9367a8866",
    "thread_ts": "1ef79cbb-cf4f-65f3-8004-e6d3a55f5603",
    "created_by": "system",
    "run_attempt": 1,
    "assistant_id": "fe096781-5601-53d2-b2f6-0d3403f7e9ca",
    "using_summary_in_memory": true
  },
  "created_at": "2024-09-23T16:52:29.787736+00:00",
  "checkpoint_id": "1ef79cc3-85ff-67df-8007-707c3006afa3",
  "parent_checkpoint_id": "1ef79cc3-7d4f-6703-8006-61d7888b21a8"
}

System Info
langchain_community
python-dotenv
langchain_openai
langchain_core
langchain_google_vertexai
langchain
streamlit
langchain-google-genai
langchain-anthropic
langchain-groq
transformers
langgraph
langchain-aws

Hi there! What does your State schema look like? If you're using add_messages, that reducer will typically ensure your message has an ID.
I agree it makes sense to generate an ID for messages originating from the studio. cc @dqbd

Hi there! What does your State schema look like? If you're using add_messages, that reducer will typically ensure your message has an ID.
I agree it makes sense to generate an ID for messages originating from the studio. cc @dqbd

Yes, here more context:
class GraphConfig(BaseModel):
    """
    Initial configuration to trigger the AI system.

    Attributes:
    - qa_model: Select the model for the LLM. Options include 'openai', 'google', 'meta', or 'amazon'.
    - system_prompt: Select the prompt of your conversation.
    - temperature: Select the temperature for the model. Options range from 0 to 1.
    - using_summary_in_memory: If you want to summarize previous messages, place True. Otherwise, False.
    """
    qa_model: Literal[*AVAILABLE_MODELS]
    system_prompt: Literal[*CUSTOM_PROMPTS.keys()]
    temperature: float = Field(ge=0, le=1)
    using_summary_in_memory: bool = False

    @validator("temperature")
    def check_temperature(cls, temperature: float):
        if (temperature < 0.0) | (temperature > 1.0):
            raise ValueError("Temperature should be between 0 and 1")

        return temperature

class State(TypedDict):
    messages: Annotated[List[AnyMessage], operator.add]
    summary: str

class GraphInput(TypedDict):
    """
    The initial message that starts the AI system
    """
    messages: Annotated[List[AnyMessage], operator.add]

class GraphOutput(TypedDict):
    """
    The output of the AI System
    """
    messages: List[AnyMessage]

workflow = StateGraph(State,
                      input = GraphInput,
                      output = GraphOutput,
                      config_schema = GraphConfig)


How to enable Proxy?

We are deploying our code in openshift container and we are unable to communicate with auth0 provider as we need to connect to external world using proxy?
How to use proxy using java-jwt jar?

@rajadilipkolli what do you need the proxy for? This SDK doesn't make use of networking access.

@lbalmaceda : We need proxy to connect to auth server and my bad the code is in jwks-rsa.jar. I should have asked question there.

👍 I'll proceed to close this one.


style(seed): Fix typos

Closes #16871

Pre-Submission Checklist

[x] Your pull request targets the staging branch of freeCodeCamp.
[x] Branch starts with either fix/, feature/, or translate/ (e.g. fix/signin-issue)
[x] You have only one commit (if not, squash them into one commit).
[x] All new and existing tests pass the command npm test. Use git commit --amend to amend any fixes.

Type of Change

[x] Small bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds new functionality)
[ ] Breaking change (fix or feature that would change existing functionality)
[ ] Add new translation (feature adding new translations)

Checklist:

[x] Tested changes locally.
[x] Addressed currently open issue (replace XXXXX with an issue no in next line)

Closes #16871
Description

This pull request fixes the typos mentioned in #16871

Thanks for the PR, the changes look solid. Can you update the commit message to be a little more relevant?
for example:
fix(seed): fixed typos in css grid challenges
Here is how to do so:
git checkout fix/typos-on-css-grid-beta
git commit --amend
Make changes to the commit message
git push origin --force

:sparkles: :sparkles: AWESOME. :sparkles: :sparkles:
Thanks @ganes1410 we look forward to more contributions in future.


HOTFIX: Fix HerderRequest.compareTo()

With KAFKA-3008 (#1788), the implementation does not respect the contract that 'sgn(x.compareTo(y)) == -sgn(y.compareTo(x))'
This fix addresses the hang with JDK8 in DistributedHerderTest.compareTo()

@kkonstantine @ewencp for review

@shikhar maybe we should also introduce a unit test for the invariant you mentioned in the PR description.

@ijuma good point, will add a test

The JDK7 build failed on an unrelated test. https://builds.apache.org/job/kafka-pr-jdk7-scala2.10/41/testReport/junit/org.apache.kafka.streams.integration/QueryableStateIntegrationTest/queryOnRebalance_1_/

pinging @ewencp or @ijuma - this should be good to merge now

LGTM


cant install any extension

Now that im using the inchoo_php7 i cant installed any extension from magento connect, it gives me a error saying that the extension doesnt support my php version. any advice?

The extension in Magento connect all have a package.xml included, which holds some metadata. In this Metadata is also the minimum and maximum version of php, defined by the extension vendor.
The definition looks like this:
<dependencies>
    <required>
       <php>
           <min>MIN</min>
           <max>MAX</max>
       </php>
   </required>
</dependencies>

Most extension I've seen have an maximum version of 6 defined.
One Solution is to use http://freegento.com/ddl-magento-extension.php to download the extension as zipfile and put it "manually" into magento.
I hope this helps a little. If you need further information/help, please let me know.

Be warned, if you try and install an extension via Magento Connect and it has a PHP version restriction, the install will fail but the process will also delete the existing version - if you're doing an upgrade.
What I do myself is try and install or upgrade an extension on a development environment, and if it fails I manually go into the download location for the ZIP file /downloader/.cache/community/, manually extract it into a temporary directory, edit the package.xml to remove the PHP version restriction (usually just removing the <max> directive), and re-archive everything - using e.g. tar czfpP NEW_ARCHIVE_NAME.tgz .
I then download that modified archive and re-install it via Magento Connect.
Incidentally I haven't once had any issue with compatibility with any extension that I've installed this way.  It also has the benefit of having the extension still managed by Magento Connect, so you can uninstall it as necessary and be advised of available upgrades, etc.

The only thing I can add to excellent answers by @renttek and @durzel is that you could contact your extension maker and ask them to make their extensions PHP 7 compatible.


Add a Menu [Feature Request]

I know that you allow for Keyboard Shortcuts, but it would be really nice if there was a Menu for the commands.  Like Tools -> Git Conflict Resolver -> {list of commands}
Honestly, I wont use this plugin that often. So I am not going to always remember which shortcut it is and I don't want to guess as I might do something else.  Would be nice it there was just a simple menu.
Thanks

There are the commands in the command palette. I could add menu entries just wanted to mention them.

Thanks, I am just not use to the Command Palette.
ctrl/cmd  + shft + p
Then type in Git Conflict


Fixes #5751: Camel forge should not reformat java source code if upda…

…ting an existing camel uri in an field annotation.

[merge]


fix: table widget issue where editableCell is undefined

Fixes #16725
Type of change

Please delete options that are not relevant.

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide instructions, so we can reproduce.
Please also list any relevant details for your test configuration.

Test A
Test B

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

/ok-to-test sha=0a2106e

/ok-to-test sha=0a2106e

/ok-to-test sha=0a2106e

/ok-to-test sha=966a704


test boom

Describe what this patch does to fix the issue.
Link to any relevant issues or pull requests.

Please don't use other people's repos for testing purposes.

Apologies, complete accident. Won't happen again!


Players spawn as "ghosts" in freelook after map change and warmup is on.

Like in title. Most players spawn as "ghosts" in freelook. Looks like some kind of validation is missing ?

This has been fixed


Deprecation warning for cleanup and prepare on Rails 5

I am trying to make DelayedJob work on a Rails 5 app.
When running bin/delayed_job start I get deprecation warnings in the log:
DEPRECATION WARNING: cleanup! is deprecated and will be removed from Rails 5.1 (use Rails.application.reloader.reload! instead of cleanup + prepare) (called from <main> at bin/delayed_job:5)

DEPRECATION WARNING: prepare! is deprecated and will be removed from Rails 5.1 (use Rails.application.reloader.prepare! instead) (called from <main> at bin/delayed_job:5)

Delayed::Backend::ActiveRecord::Job Load (0.4ms)  UPDATE "delayed_jobs" SET locked_at = '2016-09-28 07:19:35.686953', locked_by = 'delayed_job host:ubuntu-xenial pid:6922' WHERE id IN (SELECT  "delayed_jobs"."id" FROM "delayed_jobs" WHERE ((run_at <= '2016-09-28 07:19:35.686497' AND (locked_at IS NULL OR locked_at < '2016-09-28 03:19:35.686539') OR locked_by = 'delayed_job host:ubuntu-xenial pid:6922') AND failed_at IS NULL) ORDER BY priority ASC, run_at ASC LIMIT 1 FOR UPDATE) RETURNING *

The offending code starts in the generator template which I guess eventually leads to Worker#reload!

Same here. Any news on this?

This is true for me too.

I'm having the same warnings on rails <IP_ADDRESS>.

I have this too. Here is a temporary solution until delayed_job merges #948:
# config/initializers/dj_rails5_patches.rb
# RAILS 5 patches for delayed_job
# TODO: REMOVE WHEN upstream is updated

module DelayedWorkerPatches
  def reload!
    return unless self.class.reload_app?
    if defined?(ActiveSupport::Reloader)
      Rails.application.reloader.reload!
    else
      ActionDispatch::Reloader.cleanup!
      ActionDispatch::Reloader.prepare!
    end
  end
end

module Delayed
  class Worker
    prepend DelayedWorkerPatches
  end
end

Awesome, @hammady. Thanks for the temporary patch!

Hope to see this fixed soon!

It looks like #948 is merged now. Can the issue be closed?

Looking forward to seeing this go out in the next version!

Who is willing to release the next version?

thank @hammady

Hello, I'm getting a warning that Delayed Job requires activerecord < 5.1 when trying to upgrade to Rails 5.1.  Is the blocker just creating a new version?

Any update on if this issue can be closed?


Add Pygame GUI to the Pygame Wiki

Seems like a good place to advertise the library to new people.
Maybe clean up the section while there.

Done.


Symlink for filenames

This PR is in reference to an issue which we experienced while integrating marathon-logger with loggly. Marathon Logger generates a rsyslog configuration file so as to pass logs to syslog which can be consumed by loggly. But the problem here was that length of mesos's tasks log file path in a configuration file for rsyslog cannot be more than 200 characters 😢 .
We at Indix fixed this issue by creating a symlink for the absolute path for mesos logs for tasks running on a particular machine. This made our life easy here for deploying marathon-logger for all our mesos-marathon based systems.
cc : @ashwanthkumar

@brewkode, there were a few fixes in the PR which are now done.


Migrate void returning async methods to CompletableFuture<?>

Since the callers of the async equivalents of void returning methods do not by definition care about the returned value, these returns can be easily migrated to CompletableFuture<?>. This allows implementations of these methods to directly return a CompletableFuture bearing an arbitrary type without needing to remap it.

This is the first in sequence of issues discovered implementing a new backend for bucket4j at Software AG. The are all centered around various tweaks to the async API to allow for a smoother (and hopefully more performant) integration with backends . If you'd rather a more holistic discussion of the full set of changes on a dev mailing list please let me know.

If you'd rather a more holistic discussion of the full set of changes on a dev mailing list please let me know.

Yes, it is interesting to look at whole list of awkwards.

Declined.


Haiku: Add the utmpx structure

Add the utmpx structure like defined on the haiku headers

P.S. I'm participating in Hacktoberfest 2021. If this PR is up to standard and merged, I'd appreciate if the hacktoberfest-accepted label could be added. Thanks!

r? @JohnTitor
(rust-highfive has picked a reviewer for you, use r? to override)

r=me once the above point is fixed and the commits are squashed into one.

The changes look good, could you squash commits into one?

:hourglass: Testing commit 07d62b8acf1c2875e717695459d2560c177d0546 with merge 8c038960079de0bd6e878bb6e51f91b0fed7611e...

@bors r+

:pushpin: Commit f6ac7ad1cb87d382268c059a6d5041f63f1a0922 has been approved by JohnTitor

:hourglass: Testing commit f6ac7ad1cb87d382268c059a6d5041f63f1a0922 with merge acc47b21be7fcd25d5351333787d81903642bbdf...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-11, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13
Approved by: JohnTitor
Pushing acc47b21be7fcd25d5351333787d81903642bbdf to master...


Make code prettier

"Basically" done now. Code sure is not perfect, but I pulled together constructors where I could, used Properties etc.
Maybe some day I'll go over it and make actual code changes to make it prettier. Also when documentation happens maybe a few things will be changed, but consider it finished.


const for collection literals in annotations.

Annotation arguments must be const in Dart. Special case object and
array literals if they are somewhere within a decorator tree.
Fixes #108.

This might be a nice case for e2e test

LGTM

As for the e2e test, I think that might be too hard right now. We don't have an agreed upon reflection API, so it's not possible to write code that does something with annotations (or decorators), so the integration test cannot really have behaviour that's testable. The TypeScript APIs here are also still somewhat in flux. I'll skip this for now.


NPE: Cannot read the array length because "thunkAddrs" is null

java.lang.NullPointerException: Cannot read the array length because "thunkAddrs" is null
	at ghidraemu.GhidraEmuProvider.getExternalAddresses(GhidraEmuProvider.java:766)
	at ghidraemu.GhidraEmuPlugin.programActivated(GhidraEmuPlugin.java:85)
	at ghidra.app.plugin.ProgramPlugin.processEvent(ProgramPlugin.java:138)
...

This occurred immediately upon activating the plugin for the first time. This was on a Ghidra 10.1 DEV build close to yet not exactly df50264a372b0fa39a244ed703c66cf30359ab08
https://github.com/Nalen98/GhidraEmu/blob/87bc034bdd92f385804507bb83d372229a8bad73/src/main/java/ghidraemu/GhidraEmuProvider.java#L759
It should be && instead of &.

Greetings.
Sorry for precipitate and messy commit which was not a solution. I found an issue working with windows binaries and there was a problem with external functions which were not thunked. It concerns functions, for example, which were called by pointer or symbols marked by Ghidra as "pointer to external function". So now it's fixed and thanks pointing out the problem.

Greetings.
Sorry for precipitate and messy commit which was not a solution. I found an issue working with windows binaries and there was a problem with external functions which were not thunked. It concerns functions, for example, which were called by pointer or symbols marked by Ghidra as "pointer to external function". So now it's fixed and thanks pointing out the problem.

 The cause of this issue though is the use of & instead of &&. While it may work in some cases it will not work when the first condition is a null check because it won't short circuit. A single & is bit wise and, && is logical and.

Thank you. Yeah, that was a typo and I'm confused about this thing


Bump protocol-http version in gemspec

I believe protocol/http/header/priority was added in 0.47.0 of protocol-http. This gem started using it here, but the minimum version of protocol-http in the gemspec is 0.18. This PR bumps the version to 0.47 to ensure that protocol/http/header/priority is available.
Types of Changes

Bug fix.

Contribution

[x] I agree to the Developer's Certificate of Origin 1.1.

Yes, thanks for catching that.


utilize handlebars consistently across all components and document

currently, there are a few different approaches to using handlebars within the app.  All of these work (and they aren't hard to switch from one or the other), but it can be difficult for new devs to know which pattern is the one they should follow.  Discrepancies in the standard "one .hbs file in the root of the componet" include:

Alert - has most of the markup in the examples/*.hbs files
Card, Modal, SecondaryNav, Form - has separate root level components as well as root level components for sub elements

May also be good to document what the correct pattern to use is in the contributing guidelines.

Closed via #399


Workflow changes

We were unnecessarily building inside the lighthouse_test. The subsequent jobs hold_production and deploy_production will run only on master, so no point building for non-master branches. Added filter on build step so that it builds only on master branch

https://github.com/quintype/ace-planning/issues/547


implement custom issue tracker service

gitlab docs:
https://docs.gitlab.com/ce/api/services.html#custom-issue-tracker

I've added omitempty. Thank you


Update gpsctl.conf

Corrected missing # in section [gpsctl].

The setting "refer beidou to glonass if both enabled = no" is the default.
Commenting it out makes no diffence whatsover.


Nested dynamic pages not rendering

Environment

Operating System: Darwin
Node Version:     v18.13.0
Nuxt Version:     3.7.3
CLI Version:      3.8.4
Nitro Version:    2.6.3
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      css, components, app, srcDir, build, devServer, modules, i18n, nitro, site, runtimeConfig, devtools
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Reproduction
Reproduction 1:
https://stackblitz.com/edit/github-5hgjm9?file=pages%2Findex.vue
Reproduction 2:
https://stackblitz.com/edit/github-mmggus?file=pages%2Findex.vue
Describe the bug
I try to render a dynamic page which is nested inside the chats route. Chats is also a page, so I added NuxtPage to it so that it should render the child as well. But, rendering the child does not work, it does log the chatid (and changing meta data like the title etc. all works), but rendering the page does not. Using  instead of NuxtLink does get rid of the warning that the route does not exist, but it still does not render the page correctly.
If there is anymore additional info needed, please let me now.
Additional context
Bug also appears when using in conjunction with the Nuxt Content module, the page does not render correctly all the time. Navigating to blog/the-content-file does not work when there is also a blog.vue file.
Logs
[Vue Router warn]: No match found for location with path "/_nuxt/pages/profile/chats/index.vue?t=6349809384571"

You should use an absolute path:
- <NuxtLink to="chats/1234">
+ <NuxtLink to="/chats/1234">

Otherwise your first reproduction seems to work fine for me.
In your second reproduction the issue is this:
- const chatid = ref(route.value.chatid);
+ const chatid = ref(route.params.chatid);

It's throwing an error because route.value doesn't exist.

Hi Daniel,
Sorry for the inconvenience, created the reproduction too fast. It does not work for me. It renders the [chat] page underneath it (as you can see it outputs the p element with the id) but it does not render it as a new page.
I also use async route middleware on the route which may also influence the results, but that did not do the trick

What do you mean by 'rendering it as a new page'?

Updated this reproduction again:
https://stackblitz.com/edit/github-5hgjm9-wimelt?file=pages%2Findex.vue
As you can see, the actual chat page (the [chatid].vue) does not render as a normal page on a route, but underneath the Chats Overview page. On my project, it does not render at all.
I need to be able to;

Render the chats page, which is nested in profile
Navigate to a dynamic route on profile/chats/[chatid]

Currently, it does navigate to the id, but it still renders the chats page. Also, I see that both the chats and chats/[chatid] page are active in the dev tools while I am on the chats/[chatid] route

Logging route.params.chatid does correctly work, but it just does not display the content in [chatid].vue, also when there is only a template with a single p hello world in it.

See https://nuxt.com/docs/guide/directory-structure/pages/#nested-routes.
You should likely have chats/index.vue and chats/[chatid].vue to achieve what you want.

That did the trick, thank you very much!
Keep up the good work :)


Xcode GM Swift3.0 Support

Now it's out could you help update? Thanks!

I'd recommend https://github.com/IBM-Swift/SwiftyJSON for now.

Thanks

cant get to compile swiftyjson branch swift3 or git IBM-Swift/swiftyjson  :/ Xcode 8 GM

What about using IBM-Swift fork with Carthage, anyone?

I created a pull request in the IBM-Swift fork for Carthage compatibility - you can use my fork in the meantime:
github "zaubara/SwiftyJSON"

Swift3 support is here
Closing this one to cleanup the issue list, feel free to reopen this if needed.
Cheers


Add basic support for TC39

Stages are documented here: https://tc39.github.io/process-document/
ECMArkup is a tool similar to bikeshed which handles more of TC39 things: https://bterlson.github.io/ecmarkup/

Oh hmm things changed place since I last updated. Will need to fix that, but g2g for now.

@tabatkins updated!


fix(bug): fix issue with wrong state of edit field

closes #3

looks good , thanks @daniloff200 !

I'm wondering, will my 2 PRs be counted as related to Hacktoberfest,  because I've made them 5 days earlier
@abhir9 do you have any info about that?

@daniloff200 I guess, it will not , though issue is reopened now , you can raise another PR to fix that , on or after 1 Oct. Ill assign it to you.

Hey @daniloff200 Thanks for contributing to LoginRadius Open Source.  Unfortunately, your current PRs won't be counted towards hacktoberfest but they sure count towards LoginRadius Open Source.  Please fill the form to become eligible for LoginRadius swags. Read more about it at our Engineering Blog

@vyasriday  I mostly was worried about LoginRadius :)
Thanks for the answer!


Add quick filtering

Add the ability to quickly filter by click by method, module or middleware.

Will be released in version 1.7.0


docs failing

https://readthedocs.org/projects/xrft/builds/8751504/
Solving environment: ...working... failed

ResolvePackageNotFound:
  - sphinx=1.6.7

The docs are passing now but haven't been able to figure out how to automate updating the API page in readthedocs. I tried sphinxcontrib-apidoc but it doesn't seem to do what I want...


Architecture

Hello, I'm new to nat instances.
Is the intention with this module, to have 1 module per subnet/AZ in a VPC?
I notice the variables for route table ID's and subnet id's are of type string, and not list. So im thinking i'd need one fck-nat per AZ?
For the HA option - is that HA in the single AZ?

Hi!
The intention is to have at least one NAT instance within the VPC. A user may wish to use a single NAT for every availability zone, one NAT per AZ, or multiple NAT per AZ, depending of the usage.
One instance of this module represents one NAT instance.
As you noticed, the route table is a string rather than a list, which indeed is not adequate to this vision as one may want to configure their NAT to span across multiple subnets. This has been documented in a different branch, and is planned to be addressed, which would allow one to have the route table of multiple subnets to have the NAT route added.
This module, just like the AWS managed NAT gateway, is a resource tied to a specific subnet (but may be used through different subnets and cross AZ). HA mode provide a degree of high availability within one subnet through an auto scaling group.
Hope it clarifies.


[Suggestion] Add an icon for the app

The app has no icon right now, it would be great if an icon could be added to make it look better.
Maybe like this
or this?

I'd love to have an icon.

Do you have some more designs? something more round maybe.

Do you have some more designs? something more round maybe.
Also, I need something original without copyright.

I'm not really good at designing either -- but I have some friends who could design logos. I'll ask them to help :)

@gkpln3 Looks like my friend is busy, so I designed one myself, its 1024x1024px
Idk if you like it 😂 this was my best attempt but it's not that good

@gkpln3 Looks like my friend is busy, so I designed one myself, its 1024x1024px
Idk if you like it 😂 this was my best attempt but it's not that good

edit: re-uploaded cuz the original one sucked

Also, it would be nice if you could add a user interface to the app since the current one shows nothing when run. The UI could be used to quit the app, change settings, show info, update, etc.

@gkpln3 added rounded corners since it would look nicer

It has a transparent background by the way - I tried using it as the app icon and it looks okay.
app icon preview:

This looks cool, maybe just add a small background gradient (bright at the top, dark at the bottom), and send me the png file here?

Here :)

Added in latest release, Thanks! @XInTheDark


Performance issues and freezes while using this tool

Hi, first of all good work creating this, it's easy to use and does the job.
I started using the lib for my nightly automated regression tests in order to capture video records of the tests that are failing, to help with debug.
Since then I'm seeing some errors with Insufficient memory thrown by opencv.
The thing is that the error comes when I try to do some image recognition using a different library that uses opencv.
Yesterday I deactivated screen recording during the tests and the errors are gone.
Maybe there's a memory leak here that prevents opencv to allocate memory for other tasks.
Here is the error I get:
File "C:\GitLab-Runner\builds\hbav6Snu\0\COP_QA\COP\d2c_regression\libs\image_utils.py", line 66, in locate
return pyautogui.locateOnScreen(ELEMENTS_PATH + element_image, minSearchTime=3, confidence=confidence)
File "c:\work_dir\cop_regression\lib\site-packages\pyscreeze_init_.py", line 360, in locateOnScreen
retVal = locate(image, screenshotIm, **kwargs)
File "c:\work_dir\cop_regression\lib\site-packages\pyscreeze_init_.py", line 340, in locate
points = tuple(locateAll(needleImage, haystackImage, **kwargs))
File "c:\work_dir\cop_regression\lib\site-packages\pyscreeze_init_.py", line 219, in _locateAll_opencv
result = cv2.matchTemplate(haystackImage, needleImage, cv2.TM_CCOEFF_NORMED)
cv2.error: OpenCV(4.1.0) C:\projects\opencv-python\opencv\modules\core\src\alloc.cpp:55: error: (-4:Insufficient memory) Failed to allocate 49838424 bytes in function 'cv::OutOfMemoryError'
Also here's the simplified code that I'm using to capture screen records, maybe I'm not using this correctly.
@pytest.fixture(scope="function", autouse=True)
def _capture_screen_record(self):
    screen_recorder.disable_log()
    params = screen_recorder.RecorderParams()
    screen_recorder.init_resources(params)
    screen_recorder.start_video_recording("temp_screen_record.mp4", 20, 4000000, True)
    yield
    screen_recorder.stop_video_recording()
    screen_recorder.free_resources()

Any input is appreciated, thanks

Hi!
"Maybe there's a memory leak here that prevents opencv to allocate memory for other tasks."
I dont think so, at least I checked consumed memory via task manager and its not that much. But maybe machine for your tests has less memory...
Could you check it in your tests?

And try to use with screen_recorder.start_video_recording("temp_screen_record.mp4", 20, 4000000, False) best option here depends on machine you use

Two simple tricks to increase perf of encoder -

https://github.com/Andrey1994/screen_recorder_sdk/blob/master/src/ScreenRecorder/inc/MFEncoder.h#L37 try different formats here, I dont know which one is the best for not powerful machines
Decrease display resolution for test

Thanks for the input @Andrey1994
I'll try to reduce resolution and the other stuff you suggested
I'll also monitor the memory consumption of those process


Storage: Add backupAddressBook(ReadOnlyAddressBook)

Part of #784. Rebased, fixed the compilation error.
Proposed commit message:
Storage saves to a single file path.

Users may want to do a backup of the address book in a different
location.

Let's add Storage#backupAddressBook(ReadOnlyAddressBook).

Note: This PR is used as an example for future developers. Do not merge!

@yamgent this PR is failing 1 test :<

@Zhiyuan-Amos I rebased the thing, and Travis didn't report any problems. Which test is failing for you?

@yamgent When I ran the test last night, I think ErrorDialogGuiTest (smth like that, I recall seeing the words ErrorDialog) was failing. Since it isn't failing now then that's great ^^

Changelog:

Because we changed the way we handled paths (from String to Path), we must now use the Paths class to generate the backup file path:

https://github.com/se-edu/addressbook-level4/blob/dea261987f512a22eb0e604e28eed6287e682cc1/src/main/java/seedu/address/storage/XmlAddressBookStorage.java#L66


WOFF2 Support

In 731c5df4837c6ac0ab6bc62d563a282c6af2100d I added a WOFF2 format for the icon fonts. As far as I read this mime type needs to be set up on the server as well.
Giving this to @loganvolkers for implementation or further delegation.

This was launched yesterday. Closing.


Handle PrestaShop versions before <IP_ADDRESS> + CI fix

Questions
Answers

Description?
Since #440 has been merged, ConfigurationTest::test_intl() is called but this method was introduced in PrestaShop in <IP_ADDRESS> only. This PR aims to check if functions exists before calling them. It also fixes the nightly CI configuration check that is now 8 items long instead of 10. There's no need to put the store into maintenance mode as localhost is considered safe to upgrade. This last configuration error is also fixed.

Type?
bug fix

BC breaks?
no

Deprecations?
no

Fixed ticket?

How to test?
1. From a PrestaShop <IP_ADDRESS>, install this module2. Try to configure it: no exception should be thrownAlso see https://github.com/PrestaShop/autoupgrade/pull/445#issuecomment-1079197168

Possible impacts?

Thanks @atomiix & @florine2623


Cannot defer a task from another task

Hi there! I am having an issue trying to .defer() a task from another task.
Issue
Here's a minimum example:
from procrastinate import AiopgConnector, App

app = App(connector=AiopgConnector())
app.open()

@app.task
def other_task():
    print("Hey! I'm here.")

@app.periodic(cron="* * * * *")
@app.task
def periodic_task(timestamp: Optional[int] = None):
    other_task.defer()

@app.task
def primary_task():
    other_task.defer()

The other_task.defer() fails in my worker process (started as procrastinate --verbose --app=exampleapp.app.app worker) with the following stack trace regardless of whether I defer from the Python shell (app.primary_task.defer()) or when the Periodic tick occurs:
Traceback (most recent call last):
  File "/Users/christopher/Library/Caches/pypoetry/virtualenvs/exampleapp-AzECwUBP-py3.10/lib/python3.10/site-packages/procrastinate/worker.py", line 229, in run_job
    task_result = task(*job_args, **job.task_kwargs)
  File "/Users/christopher/Library/Caches/pypoetry/virtualenvs/exampleapp-AzECwUBP-py3.10/lib/python3.10/site-packages/procrastinate/tasks.py", line 109, in __call__
    return self.func(*args, **kwargs)
  File "/Users/christopher/Projects/exampleapp/src/exampleapp/app.py", line 273, in periodic_task
    other_task.defer()
  File "/Users/christopher/Library/Caches/pypoetry/virtualenvs/exampleapp-AzECwUBP-py3.10/lib/python3.10/site-packages/procrastinate/tasks.py", line 129, in defer
    return self.configure().defer(**task_kwargs)
  File "/Users/christopher/Library/Caches/pypoetry/virtualenvs/exampleapp-AzECwUBP-py3.10/lib/python3.10/site-packages/procrastinate/jobs.py", line 163, in defer
    job = self.job_manager.defer_job(job=job)
  File "/Users/christopher/Library/Caches/pypoetry/virtualenvs/exampleapp-AzECwUBP-py3.10/lib/python3.10/site-packages/procrastinate/manager.py", line 52, in defer_job
    result = self.connector.execute_query_one(
  File "/Users/christopher/Library/Caches/pypoetry/virtualenvs/exampleapp-AzECwUBP-py3.10/lib/python3.10/site-packages/procrastinate/utils.py", line 149, in wrapper
    return sync_await(awaitable=awaitable)
  File "/Users/christopher/Library/Caches/pypoetry/virtualenvs/exampleapp-AzECwUBP-py3.10/lib/python3.10/site-packages/procrastinate/utils.py", line 200, in sync_await
    return loop.run_until_complete(awaitable)
  File "/Users/christopher/.pyenv/versions/3.10.1/lib/python3.10/asyncio/base_events.py", line 617, in run_until_complete
    self._check_running()
  File "/Users/christopher/.pyenv/versions/3.10.1/lib/python3.10/asyncio/base_events.py", line 577, in _check_running
    raise RuntimeError('This event loop is already running')
RuntimeError: This event loop is already running

I could probably work around this with how I structure my code -- I could probably move the logic I wish to defer into a shared function that's called from 2 places, but ideally I'm not forced to do that.
The reason I've structured things this way is that it doesn't seem to be possible to defer a periodic task directly (which may be a separate issue I'm happy to file as well). Obviously in normal use cases you probably wouldn't do this, but while I'm testing things out locally and iterating on development I'd like to be able to invoke a Periodic task directly (rather than waiting for it to run on whatever Cron schedule I've set).
Given the example above:
>>> from exampleapp import app
>>> app.periodic_task.defer()
2022-05-11 12:26:06,444 [DEBUG] procrastinate.jobs :: About to defer job exampleapp.app.periodic_task[None]()
2022-05-11 12:26:06,449 [INFO] procrastinate.jobs :: Deferred job exampleapp.app.periodic_task[87]()
87
>>> app.periodic_task.defer(15)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Task.defer() takes 1 positional argument but 2 were given

The invocation for job number 87 fails with the same RuntimeError given above.
Expected
Without using project-specific jargon, what I'd like to have happen is that I'd like to enqueue task B from within periodic task A. I do not need to wait for the result of B and I would like control to return to A once B is enqueued.
For context, I am coming from a place where I've run a large application using Celery and Rabbit, so I may simply be applying Celery paradigms to Procrastinate incorrectly so please feel free to let me know if that's the case.
Comments
This project is neat and I decided to use it for a small little side project I'm working on. I especially liked for a small side project that I would not be required to set up a separate task queue for running jobs asynchronously and on a schedule. Thanks for the work here!

Damn, that's the sync / async compatibility biting us again :/
As a "small" step, I'd say defining your task like this will likely solve the issue:
@app.periodic(cron="* * * * *")
@app.task
async def periodic_task(timestamp: Optional[int] = None):
    await other_task.defer_async()

But I agree it's not ideal :/

Thanks for the reply @ewjoachim. I'd already figured out the Optional[int] trick with timestamp which worked reasonably well, though I was still running into the later issue with the the async/sync mismatch.
For now, I just ended up splitting up my logic into a "private" function that I can call both from a non-periodic task for testing and periodic task. I don't think I can go full async yet since I've got some other dependencies which don't support it, but thank you for the tip on a possible workaround.

Oh sorry if it wasn't clear. My comment was solely about the async/await stuff, the Optional[int] is copied/pasted from your own snippet above :)
I could be wrong, but I think it shouldn't be too impactful if you declare your function as async but don't actually do async stuff in it. That's kind of the same thing that happens as when procrastinate launches your sync task. The consequence will be that the event loop will not get control back until the end of you task, but if you're doing sync things, I think the event loop doesn't actually need to have control back.

One of my colleagues had a similar problem. He didn't know that the worker runs under asyncio and used asyncio.run in a synchronous task to create a new event loop, leading to a similar error.
We are currently calling sync_to_async in our worker with the default thread_sensitive set to True. I made a quick and dirty attempt, set thread_sensitive to False, and our error was gone (in the end, we rewrote the code of the task to be async). I wonder what the (negative) implications would be if we change our worker code to use thread_sensitive=False.

Asgiref says:

If thread_sensitive is passed, the code will run in the same thread as any
outer code. This is needed for underlying Python code that is not
threadsafe (for example, code which handles SQLite database connections).

So I believe it would be fine most of the time except when people would have used thread unsafe code (especially, code that wouldn't support being called from different threads).
So 1/ changing the default might break a very small number of use cases (I'd say), but it would make a very small number of users (who want to use run async code within sync tasks) easier. No idea if it would make more good than harm.
2/ might be worth looking at the doc seeing if we could make it more obvious in the docs what to do in this situation. Also, we could catch the error and make a specific error message.

Also, let's move to a new issue, this is at least partly unrelated to this issue which was pre-1.0


Issue with Distribute command after withdraw command

Please see the below issues with the distribute command after each miner in the subpool submitted their withdraw request. Any ideas on what would cause the below errors?
$sp-shell.main: load
Standard Config has been file loaded.
Enter "withdraw", "distribute" or "join". Enter "back" to return to main menu.
$sp-shell.load: distribute
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Wallet/Signer testuser was successfully accessed!
Error: There was an issue trying to sign the distribution transaction. Have all miner's sent their withdrawal request?
ErrorVal: head of empty list
java.util.NoSuchElementException: head of empty list
at scala.collection.immutable.Nil$.head(List.scala:430)
at scala.collection.immutable.Nil$.head(List.scala:427)
at contracts.ConsensusStageHelpers$.$anonfun$findValidInputBoxes$1(ConsensusStageHelpers.scala:138)
at scala.collection.immutable.List.map(List.scala:286)
at contracts.ConsensusStageHelpers$.findValidInputBoxes(ConsensusStageHelpers.scala:137)
at app.AppCommands$.$anonfun$distribute$1(AppCommands.scala:258)
at app.AppCommands$.$anonfun$distribute$1$adapted(AppCommands.scala:245)
at org.ergoplatform.appkit.RestApiErgoClient.execute(RestApiErgoClient.java:52)
at app.AppCommands$.distribute(AppCommands.scala:245)
at app.AppCommands$.$anonfun$load$3(AppCommands.scala:163)
at app.AppCommands$.$anonfun$load$3$adapted(AppCommands.scala:156)
at scala.collection.Iterator.foreach(Iterator.scala:941)
at scala.collection.Iterator.foreach$(Iterator.scala:941)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1429)
at app.AppCommands$.load(AppCommands.scala:156)
at app.SubPoolingApp$.$anonfun$main$3(SubPoolingApp.scala:52)
at scala.collection.Iterator.foreach(Iterator.scala:941)
at scala.collection.Iterator.foreach$(Iterator.scala:941)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1429)
at app.SubPoolingApp$.main(SubPoolingApp.scala:43)
at app.SubPoolingApp.main(SubPoolingApp.scala)
StackTrace: ()
$sp-shell.load:

Seems like the consensus address does not have any boxes inside. Can you please try going on https://explorer.ergoplatform.com/en/ and pasting the consensus address into the search bar? Once you've done that, check to make sure that the number of transactions is correct.
The number of transactions should be equal to the number of miners in the subpool. If it is not equal, then the withdraw requests of some of the miners may not have went through. All that means is that those miners will have to send withdraw requests again.

When I paste the consensus address I'm getting the following error on
explorer.ergoplatform.com/en/. Any ideas? I pulled the address from the
subpool_config.json file that was generated.
Unrecognized search pattern. Please try searching by entering address,
block hash or transaction hash
On Mon, Nov 8, 2021 at 4:46 AM Kirat Singh @.***> wrote:

Seems like the consensus address does not have any boxes inside. Can you
please try going on https://explorer.ergoplatform.com/en/ and pasting the
consensus address into the search bar? Once you've done that, check to make
sure that the number of transactions is correct.
The number of transactions should be equal to the number of miners in the
subpool. If it is not equal, then the withdraw requests of some of the
miners may not have went through. All that means is that those miners will
have to send withdraw requests again.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/K-Singh/ergo-subpooling/issues/1#issuecomment-962977900,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA6JJ5GI66SEBWTGH5T7PH3UK6L6TANCNFSM5HHUDHTQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Hmm thats very weird then. Do you mind sending me your holding address so that I can check whats on the explorer?


Unary iteration: nth_operation_callgraph for more subclasses

This speeds up gate counting from a couple seconds to a couple hundred milliseconds on the hubbard model example.

This is a proof of principle for investigating #825. I'll make as draft and "contributions welcome" if someone wants to take this on fully

Has this been done?


Missing get_list_measurements() function

From the API documentation, get_list_measurements() has been listed as a method available for InfluxDBClient object.
However, after installing v4.1.1 and trying to use the method, I get this error:

Traceback (most recent call last):
File "influx.py", line 27, in
pprint(get_measurements())
File "influx.py", line 25, in get_measurements
return client_db.get_list_measurements()
AttributeError: 'InfluxDBClient' object has no attribute 'get_list_measurements'

I checked the clients.py file under /usr/local/lib/python2.7/dist-packages/influxdb and can confirm that the method is missing. This confirmation is the same after downloading the latest release ZIP file from the Releases page

This function was added recently and is not available in the latest packaged release, only on the build from HEAD. See https://github.com/influxdata/influxdb-python/pull/402). The documentation you are looking at is from HEAD, not the latest stable release. Here are the API docs for the 4.1.1 release http://influxdb-python.readthedocs.io/en/stable/api-documentation.html. It will be available in the next versioned release.

Ok. Thank you @xginn8


Added Random Password Generator

I have added a random password generator combining of Uppercase, Lowercase, Digits, and Symbols of desired length.

@sonumahajan pls review it AND MERGE IT


Updated SQLite to v3.41.2

Updated SQLite snapshot to autoconf v3.41.2 for easy version maintenance

Thank you @learning4life !


Spotify UI in Flutter #45

This is my first open Source contribution, in this I want to create a Spotify UI in Flutter

sure go for it


[SMALL-FIX] remove duplicated cases in TestData

A small fix to remove the duplicated test cases in TestData.

Thanks @dongche.
Maybe @sundapeng can help a review.

@jerrychenhf @dongche Sure, I will look into it, thanks.

These tests are testing different plainTexts with same key and iv. They are not duplicated. But I think we can reduce some of them. Thank @dongche

Right, reasonable. Retrieve some cases to ensure every same key having 2 cases of different plainText. Thanks for your feedback, @sundapeng

Thank @dongche for your contribution! Merged to master.


Couldn't cipher the signature

Got an exception when trying to download this video. The exception says: "Couldn't cipher the signature. Maybe YouTube has changed the cipher alogrithm. Notify this issue on GitHub: can't use a string pattern on a byte-like object"
(No idea what the video is of. I just picked an older video so that I could check how my program was going to handle not finding any videos of 720p, 480p, or 360p quality.)

Closing issues, this is a duplicate https://github.com/nficano/pytube/issues/79


fix: 修复下钻组件展示错误操作 icon & 兼容低版本 menu 写法

👀 PR includes

🐛 Bugfix

[x] Solve the issue and close #0

📝 Description

items: [
    {
      key: 'custom-d',
      label: '操作4',
      icon: 'EyeOutlined',
      visible: (cell) => {
        return cell instanceof DataCell;
      },
    },
 ]

🖼 Screenshot

Before
After

🔗 Related issue link

🔍 Self-Check before the merge

[ ] Add or update relevant docs.
[ ] Add or update relevant demos.
[ ] Add or update test case.
[ ] Add or update relevant TypeScript definitions.

:tada: This PR is included in version @antv/s2-v2.1.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version @antv/s2-react-components-v2.1.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


added AWS Redshift keywords

Hi guys,
Many thanks to you for a project!
I'm working on a redshift parser using your library and found no way how to extend keywords besides adding them directly to your  repo

I took the liberty of merging up from main to get CI to pass

Hi @AndrewChubatiuk  -- the tests are failing on this PR -- can you please fix them?

This PR has some feedback that needs implementing, so marking it as draft. Please mark it as ready for review when it is next ready.


adding scope for sale

👷 Deploy Preview for sparkly-mousse-72daf9 processing.

Name
Link

🔨 Latest commit
707cd6e2249d87c41ea42377e30ff9ab5a71d9f9

🔍 Latest deploy log
https://app.netlify.com/sites/sparkly-mousse-72daf9/deploys/62b9083f4046d70008776697


Bug: Documentation update

Contact Details
<EMAIL_ADDRESS>Describe bug
Missing permissions for the policy to be able to backup images and image streams.
Documentation for OADP deployment with S3 backed storage from AWS - https://docs.openshift.com/container-platform/4.10/backup_and_restore/application_backup_and_restore/installing/installing-oadp-aws.html#migration-configuring-aws-s3_installing-oadp-aws
What happened?
Images and imagestreams cannot be backed up because of the permission issues.
The fix would be to add additional permissions "s3:ListBucketMultipartUploads" to the section below:
      {
         "Effect":"Allow",
         "Action":[
            "s3:ListBucket",
            "s3:ListBucketMultipartUploads"
         ],
         "Resource":"arn:aws:s3:::${BUCKET}"
      },

OADP Version
1.0.3 (Stable)
OpenShift Version
4.10
Velero pod logs
time="2022-07-28T15:54:29.750804396Z" level=error msg="error resolving upload: s3aws: AccessDenied: Access Denied\n\tstatus code: 403, request id: 36Z9K5GADB4886WW, host id: H8byEXe+vF1xIFRfuULtzh55/SuEK8sk1xcgbdfgbefgbKJYFGYJG6Ti22qvELsXWeQt4=" go.version=go1.13.4 http.request.contenttype=application/octet-stream http.request.host=oadp-velero-1-aws-registry-route-openshift-adp.apps.mycluster.mydomain.com http.request.id=c27547c6-697a-4ba1-b33c-119281f11a07 http.request.method=PATCH http.request.remoteaddr=<IP_ADDRESS> http.request.uri="/v2/my-nice-project/test-2/blobs/uploads/40ba8729-59f1-4789-8a59-63c7c6940814?_state=kiRZX6kMPbkxnDR8W9UxnvsfhnbehnndhJHGJYfukgFwLWRldi90ZXN0LTIiLCJVVUlEIjoiNDBiYTg3MjktNTlmMS00Nzg5LThhNTktNjNjN2M2OTQwODE0IiwiT2Zmc2V0IjowLCJTdGFydGVkQXQiOiIyMDIyLTA3LTI4VDE1OjU0OjI5LjIwNTM0MzMzMVoifQ%3D%3D" http.request.useragent="containers/5.19.0 (github.com/containers/image)" vars.name=my-nice-project/test-2 vars.uuid=40ba8729-59f1-4789-8a59-63c7c6940814

Restic pod logs
N/A

Operator pod logs
N/A

New issue

[X] This issue is new

We are aware. Issue is being worked on and tracked at https://issues.redhat.com/browse/OADP-419

https://issues.redhat.com/browse/OADP-419 was closed.


Updated README

Fixed parameters list for xVMNetworkAdapter and added examples.

This change is

Thanks Ravi! could you address the comments please.

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, 6 unresolved discussions.

README.md, line 94 at r1 (raw file):

* **VMName**: Name of the VM to attach to. If you want to attach new VM Network adapter to the management OS, set this property to 'Management OS'.
* **MacAddress**: Use this to specify a Static MAC Address. If this parameter is not specified, dynamic MAC Address will be set.
* **Ensure**: Ensures that the VM Network Adapter is Present or Absent.

Would you be so kind to update the datatype and the dsc property type of all parameters?
For example see: xVMDvdDrive and xVMHost. We are making this the standard.

README.md, line 859 at r1 (raw file):

    Import-DscResource -ModuleName PSDesiredStateConfiguration

    xVMNetworkAdapter HostOSAdapter {

Please move the curly brace to a new line (style guideline)

README.md, line 876 at r1 (raw file):

    Import-DscResource -ModuleName PSDesiredStateConfiguration

    xVMNetworkAdapter MyVM01NIC {

Please move the curly brace to a new line (style guideline)

README.md, line 884 at r1 (raw file):

    }

    xVMNetworkAdapter MyVM02NIC {

Please move the curly brace to a new line (style guideline)

README.md, line 892 at r1 (raw file):

    }

    xVMNetworkAdapter MyVM03NIC {

Please move the curly brace to a new line (style guideline)

README.md, line 898 at r1 (raw file):

        VMName = 'MyVM03'
        Ensure = 'Present'
    }

Can you remove the trailing spaces next to the curly brace?

Comments from Reviewable

All complete!

Review status: all files reviewed at latest revision, 6 unresolved discussions.

README.md, line 94 at r1 (raw file):
Previously, bgelens (Ben Gelens) wrote…
Would you be so kind to update the datatype and the dsc property type of all parameters?
For example see: xVMDvdDrive and xVMHost. We are making this the standard.

Done

README.md, line 859 at r1 (raw file):
Previously, bgelens (Ben Gelens) wrote…
Please move the curly brace to a new line (style guideline)

Done

README.md, line 876 at r1 (raw file):
Previously, bgelens (Ben Gelens) wrote…
Please move the curly brace to a new line (style guideline)

Done

README.md, line 884 at r1 (raw file):
Previously, bgelens (Ben Gelens) wrote…
Please move the curly brace to a new line (style guideline)

Done

README.md, line 892 at r1 (raw file):
Previously, bgelens (Ben Gelens) wrote…
Please move the curly brace to a new line (style guideline)

Done

README.md, line 898 at r1 (raw file):
Previously, bgelens (Ben Gelens) wrote…
Can you remove the trailing spaces next to the curly brace?

Done

Comments from Reviewable

Review status: 0 of 1 files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


[Feature request] Mobile Browsers Support

When trying to run the models from a mobile browser it fails.
Mobile browsers have limited storage for webpages (let's assume 100MB since it depends on the browser and smartphone).
When using smaller models like whisper-tiny (STT) or distilbert-base-uncased (QA) it works.
Any ideas on how can we solve it?
I was thinking about pruning big models and having a less than 100MB version for them like Tensorflow Lite. What do you think?

Well, I would say that is up to the user of the library... 😅  It should be their responsibility to choose models that run on their desired platforms.
There are some ways to produce smaller models (e.g., quantization and pruning), but they can only get you so far...
That said, it probably would be good to build up a larger collection of small models (like facebook/detr-resnet-50, which is only 43MB, but can be used for object detection).
If you have some candidates, you can post links to them here

Closing issue as there are models which are able to work on mobile devices. For an example, I have tested Whisper Web on my phone and it can run the quantized versions (~61MB in size).
Overall, if a user of the library wishes to deploy a version of their app to run in mobile browsers, it is their responsibility to choose models which can run in a mobile browser.
Alternatively, some users have found ways to get Transformers.js running natively via react-native. For more information, see this PR.


Getting issue while Opening Drive Picker that is: { "error": "IMMEDIATE_FAILED", "detail": "Request could not be auto-approved

HI,
We are using Drive Picker in our app since many years and It was working fine for all users. Now a days It is working fine for some users and  not working fine for some users. When they are clicking a button(onclick="onApiLoad();") to open a Drive Picker in our app. But Drive Picker does not appear and they are getting the error as below:
{
"error": "IMMEDIATE_FAILED",
"detail": "Request could not be auto-approved."
}
I have taken this error response from developer console of Chrome. But in some case users are able to view Drive Picker and access_token also as below:
{
"token_type": "Bearer",
"access_token": "ya29.a0AfH6SM..............................................",
"scope": "email https://www.googleapis.com/auth/drive https://www.googleapis.com/auth/userinfo.email openid",
"login_hint": "AJDLj6IhozD2z4fIdXJd0w2f8iqU8EQ4-AcwELtcfV3AKE9tKKSPQN1gPcK1IwMhyXUq8mn7usZRwsba9tFJTXXGkt_VeLjkbwik9WiFZvQz_KbKVhQFhPg",
"expires_in": 3599,
"session_state": {
"extraQueryParams": {
"authuser": "0"
}
}
}
Please help us why is this happening with some users ?
Our sample code is as below:
  //The API developer key obtained from the Google Cloud Console.
	var developerKey = '{developerkey value}';

// The Client ID obtained from the Google Cloud Console.
	var clientId = '{clientId value}';

    // Scope to use to access user's Drive.
    var scope = ['https://www.googleapis.com/auth/drive','https://www.googleapis.com/auth/userinfo.email'];

    var pickerApiLoaded = false;
    var oauthToken;

     // Use the API Loader script to load google.picker and gapi.auth.

      function onApiLoad() {
    	   gapi.load('auth', {'callback': onAuthApiLoad});
           gapi.load('picker', {'callback': onPickerApiLoad});
      }

      function onAuthApiLoad() {
        window.gapi.auth.authorize(
            {
              'client_id': clientId,
              'scope': scope,
              'immediate': false
            },
            handleAuthResult);
      }

      function onPickerApiLoad() {
             pickerApiLoaded = true;
             createPicker();
      }

      function handleAuthResult(authResult) {
        if (authResult && !authResult.error) {
            oauthToken = authResult.access_token;
            createPicker();
        }
      }

  // Create and render a Picker object.
  function createPicker() {

    var DocsView  = new google.picker.DocsView (google.picker.ViewId.DOCS)
					.setOwnedByMe(true);
    var picker = new google.picker.PickerBuilder()
        .enableFeature(google.picker.Feature.MULTISELECT_ENABLED)
        .enableFeature(google.picker.Feature.SUPPORT_DRIVES)
        .addView(DocsView)
        .addView(new google.picker.DocsUploadView())
        .setDeveloperKey(developerKey)
        .setOAuthToken(oauthToken)
        .setCallback(pickerCallback)
        .build();
     picker.setVisible(true);
  }

Hey ashraftalib@, we fixed the bug that was causing this issue late last week. Could you check whether you are still observing the issue? For the sake of completeness, also test the flow in Incognito to rule out the possibility of having stale cookies.

@sidharthp I changed the scope from 'https://www.googleapis.com/auth/drive' to' https://www.googleapis.com/auth/drive.file' as per Picker API docs says to use scope: 'https://www.googleapis.com/auth/drive.file'. Now It is working fine for affected users.
But before it was working file in all users with scope:  'https://www.googleapis.com/auth/drive' . Can you tell me Is there any updates in Picker API or the issue has been been resolved ?
Thanks.

@ashraftalib , the issue has been resolved now so I think it should work fine even if you use '.../auth/drive' scope. But if the Picker API doc suggests using the '.../auth/drive.file' scope, it might be better to use that instead.

@sidharthp
Still we the same issue while using scope as : https://www.googleapis.com/auth/drive.readonly
in case opening drive picker. Can you check with the /drive.readonly  It was working since many days now It is not working.