display CU_PARAM_TR_DEFAULT  in checkdrv and what is it?

When I try this function on a server with Tesla GPU(device initialize and other staff is outside the function) , cuModuleLoad returns -1 in the console rather than CU_PARAM_TR_DEFAULT as it is not defined in driver_error_descriptions.
function diagexp(A::CudaArray{Complex64})
    md = CuModule("$dir/src/utils/cuda/cuMatrix.ptx", false)
    diagexp = CuFunction(md, "diagexp_cf")
    nsm = attribute(device(), rt.cudaDevAttrMultiProcessorCount)
    mul = min(32, ceil(Int, length(A)/(256*nsm)))
    expH = CudaArray(Complex64,size(A)...)
    launch(diagexp, mul*nsm, 256, (A,expH,length(A)))
    return expH
end

The CUDA document describe this as

For texture references loaded into the module, use default texunit from texture reference.

But it works fine on my own laptop with a GT730M GPU.
As a freshman in CUDA, I'm not familiar with this error/warning, is there anyone who knows how to solve it?
So I wonder if the checkdrv function should write like this or we should add -1 to the driver_error_descriptions?
function checkdrv(code::Integer)
    if code <= 0
        error(driver_error_descriptions[Int(code)])
    end
    nothing
end

Sorry, I finally found that it is a result of define dir = Pkg.dir("xxx") after I tried to load the module in a CUDA C++ file, which will not lead to the correct directory of the package. But still cannot figure out why it outputs an -1 in this wrapper....

Sorry, I need to re-open this, as this error stops the program again.
I used following code to test if it's the server or bsub's problem:
#include <cuda.h>
#include <stdio.h>

typedef struct
{
    float x;
    float y;
}complex;

int main()
{
    CUdevice device;
    CUcontext context;
    CUmodule module;
    CUfunction kernel;
    CUdeviceptr dptr[2];

    cuInit(0);

    cuDeviceGet(&device, 0);
    cuCtxCreate(&context,CU_CTX_SCHED_AUTO,device);
    int t = cuModuleLoad(&module,"diagexp.ptx");
    cuModuleGetFunction(&kernel,module,"diagexp_cf");
    printf("%d",t);

    #define n_thread 3
    size_t size = n_thread*sizeof(complex);
    cuMemAlloc(&dptr[0],size);
    cuMemAlloc(&dptr[1],size);

    complex *A = (complex *)malloc(3*sizeof(complex));
    complex *C = (complex *)malloc(3*sizeof(complex));
    for(int i=0;i<3;i++)
    {
        A[i].x = i;
        A[i].y = 0;
        C[i].x = 0;
        C[i].y = 0;
    }

    cuMemcpyHtoD(dptr[0],A,size);
    cuMemcpyHtoD(dptr[1],C,size);

    int len = 3;
    void *params[] = {&dptr[0],&dptr[1],&len};
    cuLaunchKernel(kernel,1,1,1,3,1,1,0,NULL,params,0);
    cuCtxSynchronize();

    cuMemcpyDtoH(C,dptr[1],size);
    for(int i=0;i<3;i++)
        printf("%f\t%f\n",C[i].x,C[i].y);

    cuMemFree(dptr[0]);
    cuMemFree(dptr[1]);
    cuModuleUnload(module);
    cuCtxDestroy(context);
    return 0;
}

This works fine both with bsub and laptop.
But the -1 error still occurs when I submit the Julia code to the server. My program is here AdiaComput


outlook mail: tell the LLM to print links

for https://github.com/gptscript-ai/desktop/issues/361

I always see gpt-4o use Markdown, so I think I'm just gonna merge this as is.


[UWP] [1.2 API review] Rename TextBlock's fontStyle to fontType

Automatically generated task. Any updates to the title and body will be overwritten. Do NOT modify the labels.
UWP fix of #2906

@RebeccaAnne is this something you are working on already (ie OK to be moved to InProgress?)


problem with vertical slide

i want to use vertical slide and in each slider use overflow-y:auto,but in slider the content cannot scroll,how can set the property
*hanppened in safari

I have the same problem.. I am using 3 horizontal slides, but on one of them I would like to have a scrollable longer text (not another vertical swipe), but the text gets cut-off at the bottom. Any suggestions?

Issue is closed because of outdated/irrelevant/not actual/needed more information/inactivity.
If this issue is still actual and reproducible for latest version of Swiper, please create new issue and fill the issue template correctly:

Clearly describe the issue including steps to reproduce when it is a bug.
Make sure you fill in the earliest version that you know has the issue.
Provide live link or JSFiddle/Codepen or website with issue


Custom 404 page

Is your feature request related to a problem? Please describe.
I'd like to see a custom 404 page (404.html) when I try to load a page that doesn't exist.
Describe the solution you'd like
An option added to serve a file when there is a 404, where true is equivalent to "404.html", and strings are treated as paths to a file in the root directory.
const server = svrx({ 404: true });

or
const server = svrx({ 404: "some/custom/path/error404.html" });

Describe alternatives you've considered
A plugin might be able to do this, although I haven't investigated thoroughly.

Hi, thanks. This may break fallback option, so we need think about it.


Paynow refactoring

I have update many items and refactored the code in some instance. I am still confused on InitResponse and StatusResponse classes if they should be implemented since Paynow handles them in their servers

ok I have added tests to the project. I have realised its great to implement some of these features and testing them as well. I have deleted some documentation but I believe someone will edit them

Hi @bevennyamande.  I do not see any changes that this PR is bringing to the SDK. If you could please add a bit more information about what you did


fix cluster tile size calculation

Objective
Fixes #4127 & #3596
Solution

Calculate how many tiles we can use per Z slice: n_tiles_xy
Then, estimate the size of each tile in pixels: px_per_tile
Number of tiles across, such that it's less that the screen width: n_tiles_x
Number of tiles down, such the the total is less that n_tiles_xy: n_tiles_y
Then, divide up the screen into tiles to get the actual dimensions of each tile, rounding up, so that we can cover the whole screen.

This, along with the new calculation in update(), should never fail the assertion.
Remaining tasks

[ ] Add a unit test, either exhaustive up to 4k (12 + 12 bits = ~16M, should be pretty quick), or use proptest.

I love property based testing, and would be happy to see it used in our code base.

i've put in a PR (https://github.com/bevyengine/bevy/pull/4148) covering this ground on top of the latest updates. i should have commented on the issues sooner to save your time, sorry.

i've put in a PR (#4148) covering this ground on top of the latest updates. i should have commented on the issues sooner to save your time, sorry.

No problem. I wrote this a while ago, so the only time lost was writing the description.


Add DPG: Sanitation Digital Solutions Platform

Checklist for conducting technical review against DPG Standard:

[ ] Clear Ownership
[ ] Platform Independence
[ ]  Documentation
[ ] Mechanism For Extracting Data
[ ] Do No Harm By Design
[ ] Data Privacy & Security
[ ] Adherence to Standards & Best Practices
[ ] Adherence to Privacy and Applicable Laws
[ ] Inappropriate & Illegal Content
[ ] Protection From Harassment
[ ] Development & Deployment countries


Fastest method

Among the methods to blur the image, which one is the fastest?

Blur small pictures were similar, for blur big picture using JNI is more cost-effective option.
When it comes to choosing BITMAP or ARRAY, this is just personal habits.

Thanks. I also preferred JNI.


Issue with update to version 3.0.0

Hi,
I just encountered an issue after updating to 3.0.0 (from 2.3.0): I don't see any records in Graylog server 😢
The same code with the previous version (2.3.0) of package works fine: minimal repro
Is it possible that the problem is TCP? Or am I missing something?
Program.cs:
using Serilog;
var builder = WebApplication.CreateBuilder(args);
 // ..
builder.Host.UseSerilog((context, config) => {
  config.ReadFrom.Configuration(context.Configuration);
});
// ..

appsettings.json:
{
  "Serilog": {
    "Using": [ "Serilog.Sinks.Console", "Serilog.Sinks.Graylog" ],
    "MinimumLevel": {
      "Default": "Information",
      "Override": {
        //"Microsoft": "Warning" // Zdroj: https://nblumhardt.com/2016/07/serilog-2-minimumlevel-override/
      }
    },
    "WriteTo": [
      { "Name": "Console" },
      {
        "Name": "Graylog",
        "Args": {
          "hostnameOrAddress": "<IP_ADDRESS>",
          "port": "12201",
          "transportType": "Tcp"
        }
      }
    ],
    "Properties": {
      "Application": "GraylogIssueDemo"
    }
  },
}

Hi,
same issue here.
Using code to configure the graylog sink it works, using appsettings.json it does not work any more.

@GodEmperorOfTime
It's very strange, one of these days I'll see why the configuration from the config stopped working


IE 11 Selected value is not reflecting in select control

IE 11 Selected value is not reflecting in select control
Console Error: Object doesn't support this action
File: dropkick.js, Line: 605, Column: 9

Check the value of the select in the console; the selected attribute only applies to options which are initially selected when the DOM loads.

i am using  2.1
Console error fixed with this code ,
var customevt =  document.createEvent('CustomEvent');
if ( !disabled ) {
customevt.initCustomEvent('change',true,true,null);
this.data.select.dispatchEvent(customevt);
}

We've had quite a few problems with all IEs and that event bug. This will hopefully be getting fixed with the next release.

Closing this. Should be fixed with https://github.com/Robdel12/DropKick/commit/d1b348563d0e4bf775b90be1d275bc9513caf0d3


Convert TODO into an issue

Description
Sometimes devs use the keyword TODO in the source code in order to remind themselves to come back and fix that. Yeah, this never happens because they forget about it. Make sure they don't, by having a bot looking for that and creating a GH issue for it automatically.
Acceptance Criteria

[ ] Install https://github.com/marketplace/actions/todo-actions
[ ] Test it if it works and how it looks like. What labels can be applied, etc...

I am assigning you as you will need a free mongodb instance and add some secrets in the settings of the repository see: https://github.com/marketplace/actions/todo-actions#before-you-start

I am using this one: TODO Bot
with the following config:
# Integrate todo bot (https://github.com/probot/probot)
# https://todo.jasonet.co/
todo:
  keyword: ["@todo", "TODO"] # string|string[]
  bodyKeyword: ["@body", "BODY"] # string|string[]
  blobLines: 5                # number|boolean, 0 or false to disable
  autoAssign: true            # string|string[]|boolean
  label: true                 # boolean|string|string[]
  reopenClosed: false         # boolean

It works great. I do not have permissions to "install" integrations in this repo.


Revise the interview based on the decisionmaker's feedback

Revise the interview and get new feedback on the revised interview until you and the decisionmaker are satisfied with it.

This is waiting on assignment to a new team of LIT Clinic students.

This includes issues 77–93, and can be closed once all of those are closed.


Excise DLP.

It is now staged at https://github.com/googleapis/nodejs-dlp
(Do not accept this one until DLP v0.2.0 goes out.)

Coverage remained the same at 100.0% when pulling 3a6cdc667ac1dc18ce20e9cf9e774f26ae3a444f on lukesneeringer:excise-dlp into 4668dfc8be29c039a31c5771be4ef059ebdff91a on GoogleCloudPlatform:master.


Multitenancy: use a different db (connection) per tenant

When running an agency, there may be a need to run physically separate database instances for all/some of the tenants. Currently it is possible to target separate schemas in the same RDBMS, but not using different connections altogether.
Thoughts on feasibility/usefulness of this feature?
It may relate to #1349 and #2102.

Closing as stale -- reopen if needed.


Add "Edit on GitHub" and "Support" Buttons

...like implemented in the ArviZ documentation:

[ ] @cmutel, please provide a hyperlink (to the relevant Cauldron website, or potentially to Tidelift?) for the Support Brightway button.

I think that support should be a separate page/section, with multiple options.
The most important thing people can do now is to help with the documentation; this should be clearly communicated.
We can also offer the option to get commercial support from Cauldron; but we can also let others throw their hat in the ring; @Loisel, @BenPortner please chime in here if you want.
We can also offer DdS memberships or financial donations, though we should be clear this goes more towards organizing Brightway events and Brightway teaching.

Ok, I'll add a Support page that is linked through the button.


Exception at startup on Gigalixir

Everything works as advertised, but I get an exception at startup that I'm curious about.
I have installed headless chrome on Gigalixir using this buildpack: https://elements.heroku.com/buildpacks/heroku/heroku-buildpack-google-chrome.
I have a bog standard implementation of ChromicPDF in my Phoenix 1.6 application.
children = [
  {ChromicPDF, [discard_stderr: false]}
]
opts = [strategy: :one_for_one, name: Readyroom.Supervisor]
Supervisor.start_link(children, opts)

When I deploy the app (that is, start it up), I get the following in my logs:
May 10 13:31:52 web.1  | [0510/203152.270745:ERROR:bus.cc(399)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
May 10 13:31:53 web.1  | 20:31:52.778 [info] Tzdata has updated the release from 2021e to 2023c
May 10 13:31:53 web.1  | [0510/203152.794833:ERROR:bus.cc(399)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
May 10 13:31:53 web.1  | [0510/203152.794924:ERROR:bus.cc(399)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
May 10 13:31:53 web.1  | [0510/203152.962836:ERROR:zygote_host_impl_linux.cc(273)] Failed to adjust OOM score of renderer with pid 136: Permission denied (13)
May 10 13:31:53 web.1  |
May 10 13:31:53 web.1  | DevTools listening on ws://[<IP_ADDRESS>](https://my.papertrailapp.com/systems/Staging/events?q=%22<IP_ADDRESS>%22&focus=1593053244161187843&selected=1593053244161187843):9222/devtools/browser/d1471ef4-5134-4181-bf28-51cf718af0ec
May 10 13:31:53 web.1  | [0510/203153.234083:WARNING:bluez_dbus_manager.cc(247)] Floss manager not present, cannot set Floss enable/disable.
May 10 13:31:53 web.1  | [0510/203153.454865:ERROR:zygote_host_impl_linux.cc(273)] Failed to adjust OOM score of renderer with pid 142: Permission denied (13)
May 10 13:31:53 web.1  | Failed to create /app/.cache for shader cache (Permission denied)---disabling.
May 10 13:31:53 web.1  | [0510/203153.597692:WARNING:sandbox_linux.cc(393)] InitializeSandbox() called with multiple threads in process gpu-process.
May 10 13:31:54 web.1  | [0510/203154.629641:ERROR:zygote_host_impl_linux.cc(273)] Failed to adjust OOM score of renderer with pid 187: Permission denied (13)
May 10 13:31:54 web.1  | 20:31:54.596 [error] Task #PID<0.636.0> started from #PID<0.635.0> terminating
May 10 13:31:54 web.1  | ** (ChromicPDF.Browser.ExecutionError) Timeout in Channel.run_protocol/3!
May 10 13:31:54 web.1  |
May 10 13:31:54 web.1  | The underlying GenServer.call/3 exited with a timeout. This happens when the browser was
May 10 13:31:54 web.1  | not able to complete the current operation (= PDF print job) within the configured
May 10 13:31:54 web.1  | 5000 milliseconds.
May 10 13:31:54 web.1  |
May 10 13:31:54 web.1  | If you are printing large PDFs and expect long processing times, please consult the
May 10 13:31:54 web.1  | documentation for the `timeout` option of the session pool.
May 10 13:31:54 web.1  |
May 10 13:31:54 web.1  | If you are *not* printing large PDFs but your print jobs still time out, this is likely a
May 10 13:31:54 web.1  | bug in ChromicPDF. Please open an issue on the issue tracker.
May 10 13:31:54 web.1  |
May 10 13:31:54 web.1  | ---
May 10 13:31:54 web.1  |
May 10 13:31:54 web.1  | Current protocol:
May 10 13:31:54 web.1  |
May 10 13:31:54 web.1  | %ChromicPDF.Protocol{
May 10 13:31:54 web.1  |   steps: [
May 10 13:31:54 web.1  |     await: &ChromicPDF.SpawnSession.page_enabled/2,
May 10 13:31:54 web.1  |     call: &ChromicPDF.ResetTarget.reset_history/2,
May 10 13:31:54 web.1  |     await: &ChromicPDF.ResetTarget.history_reset/2,
May 10 13:31:54 web.1  |     call: &ChromicPDF.ResetTarget.blank/2,
May 10 13:31:54 web.1  |     await: &ChromicPDF.ResetTarget.blanked/2,
May 10 13:31:54 web.1  |     await: &ChromicPDF.ResetTarget.fsl_after_blank/2,
May 10 13:31:54 web.1  |     output: &ChromicPDF.SpawnSession.output/1
May 10 13:31:54 web.1  |   ],
May 10 13:31:54 web.1  |   state: %{
May 10 13:31:54 web.1  |     :__protocol__ => ChromicPDF.SpawnSession,
May 10 13:31:54 web.1  |     :discard_stderr => false,
May 10 13:31:54 web.1  |     :ignore_certificate_errors => false,
May 10 13:31:54 web.1  |     :last_call_id => 6,
May 10 13:31:54 web.1  |     :name => "[FILTERED]",
May 10 13:31:54 web.1  |     :offline => false,
May 10 13:31:54 web.1  |     :unhandled_runtime_exceptions => "[FILTERED]",
May 10 13:31:54 web.1  |     "browserContextId" => "[FILTERED]",
May 10 13:31:54 web.1  |     "sessionId" => "5A0A13F31D49440DC3E696728B9D464C",
May 10 13:31:54 web.1  |     "targetId" => "866DAC95CFEFDC55F41B10EFAC1E6AEB"
May 10 13:31:54 web.1  |   }
May 10 13:31:54 web.1  | }
May 10 13:31:54 web.1  |
May 10 13:31:54 web.1  |     (chromic_pdf 1.9.0) lib/chromic_pdf/pdf/browser/channel.ex:23: ChromicPDF.Browser.Channel.run_protocol/3
May 10 13:31:54 web.1  |     (chromic_pdf 1.9.0) lib/chromic_pdf/pdf/browser/session_pool.ex:154: ChromicPDF.Browser.SessionPool.do_init_worker/1
May 10 13:31:54 web.1  |     (elixir 1.14.2) lib/task/supervised.ex:89: Task.Supervised.invoke_mfa/2
May 10 13:31:54 web.1  |     (elixir 1.14.2) lib/task/supervised.ex:34: Task.Supervised.reply/4
May 10 13:31:54 web.1  |     (stdlib 4.1.1) proc_lib.erl:240: :proc_lib.init_p_do_apply/3
May 10 13:31:54 web.1  | Function: #Function<0.100967843/0 in ChromicPDF.Browser.SessionPool.init_worker/1>
May 10 13:31:54 web.1  |     Args: []

Eventually, things must get straightened out, since I am able to generate (small) PDFs and there are no other errors.
Note, there's a reference to "papertrailapp.com" in those logs. Papertrail is my log management tool. I'm not sure if it's meaningful that their URL is in the Chrome error output. Probably not, but...
Anyway, are exceptions like this at startup to be expected? Is there something I can do to prevent this.
Thanks for the awesome tool.

Hey @petelacey
issues at startup aren't uncommon, unfortunately, see for example #160. In some environments Chrome just seems be a bit sluggish when first launched, which is why we added the warm_up/1 function. You could try calling that before you start your application supervision tree, or alternatively, if you don't want to go through Elixir for this, something like chrome --dump-dom about:blank should do. That might fix the exceptions, but no guarantees.

Eventually, things must get straightened out

Exactly. The exception you're seeing is when chromic tries to spawn sessions (= tabs) in the browser and initialize them. If they die, supervision takes care of creating new ones.

I should have noticed #160 before creating this issue. Sorry about that.
In any event, adding the warm_up call do application.ex did indeed eliminate the error. There are still a fair number of ugly warning being spat out, but they all seem to stem from the being constrained by the docker container that Chrome is running in. Unfortunately, because I'm deploying to a PaaS, I have no influence over this container. It might be time to investigate moving to fly.io.
For now, though, the warnings don't seem to be impacting anything and I am able to generate PDFs, so please consider this issue closed, and thanks again.


Fix all offline created transaction is deleted when we delete one of the transaction

Details

Deleting one transaction will delete the whole iou that is optimistically created while offline.
Fixed Issues

$ https://github.com/Expensify/App/issues/24366
PROPOSAL: https://github.com/Expensify/App/issues/24366#issuecomment-1673558459
Tests

Same as QA Steps

[x] Verify that no errors appear in the JS console

Offline tests

Same as QA Steps
QA Steps

Open any chat without outstanding IOU
Turn off the internet connection
Request money from the chat twice
Click the request preview to open IOU report
Delete the second request/transaction
Verify the second request is pending delete (currently, the pending delete shows a skeleton, there is an issue for this, but I forgot the link)
Verify the IOU report and other request/transaction is not deleted

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://github.com/Expensify/App/assets/50919443/bde7a030-b328-4300-a038-7c1f841e8dc7

Mobile Web - Chrome

https://github.com/Expensify/App/assets/50919443/64e401dd-0b64-4618-8d83-c2650b57af62

Mobile Web - Safari

https://github.com/Expensify/App/assets/50919443/02667779-a4b5-46a3-b86f-8edd7a397463

Desktop

https://github.com/Expensify/App/assets/50919443/785ddfba-f20a-4d2e-b738-48faaad5763b

iOS

https://github.com/Expensify/App/assets/50919443/24c54863-b22a-4dd7-8393-c0d308faee43

Android

https://github.com/Expensify/App/assets/50919443/aa5873da-96d7-4f12-addd-61d6db3d98d1

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

@bernhardoj, I can see 2 issues with this

When we delete a request, it says Cash $0.00 instead of a blank skeleton UI
The total amount requested (in LHN) isn't updated until you go back online and go back to the original chat

@bernhardoj, I was incorrect about the "go back to the original chat" part, it's updated when you go back online (the delay confused me)
https://github.com/Expensify/App/assets/9059945/9e0de9be-b7e3-47d1-acb6-c05857c2c31d

Actually, looks like this has been already resolved in prod, @bernhardoj, could you double-check that, please?
https://github.com/Expensify/App/assets/9059945/45eab3c8-b81c-47ca-a036-5de367966cac

@bondydaa, gentle bump on this

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/bondydaa in version: 1.3.92-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.92-4 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/bondydaa in version: 1.3.93-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.93-1 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Added myself

Welcome to the Cesium community @xtassin!
Can you please send in a Contributor License Agreement (CLA) so that we can review and merge this pull request?
:warning: I noticed that CHANGES.md has not been updated. If this change updates the public API in any way, fixes a bug, or makes any non-trivial update, please add a bullet point to CHANGES.md and comment on this pull request so we know it was updated. For more info, see the Pull Request Guidelines.

I am a bot who helps you make Cesium awesome! Contributions to my configuration are welcome.
:earth_africa: :earth_americas: :earth_asia:

Hi @xtassin, thanks for the PR! You can go ahead and make this change in https://github.com/AnalyticalGraphicsInc/cesium/pull/6641, that way it'll be merged in when your fix goes in.

I'm going to close this.  I left instructions in #6641 for how to add yourself to CONTRIBUTORS.md in that branch.  Thanks!


About reproducing the results in the paper

Hi, I try to reproduce the results, and I follow your guide, run the evaluation.sh, here are the result I got.

I have two questions:
(1) The results reported in the paper or colorization task is evaluated via Cons metrics, but the code is via PSNR. And interestingly, I found they are close on CelebA datasets.

(2) How can I reproduce the results on inpainting task? My results are much poor than yours.
The results I collected from ouput are as followings:

Thanks a lot if you could help me.

oh, I have seen this issue #39 just now.
So in this work the results of inpainting task are very sensitive to the mask used in experiments?

Hi, thanks for finding a typo! The 26.25 is PSNR, and the correct Cons should be 48.87.
As for the Inpainting problem, the results can be quite different depending on your masks. For example, a large mask will be more difficult to restore than a small mask.

Hi, thanks for finding a typo! The 26.25 is PSNR, and the correct Cons should be 48.87.
As for the Inpainting problem, the results can be quite different depending on your masks. For example, a large mask will be more difficult to restore than a small mask.

I still donot understant why PSNR is not suitable for colorization task.

For the colorization problems, a good colorful result may not compete with a black-and-white result in terms of PSNR.

okay, thank you~


Dark mode

Hi,
I tried to add a dark Mode your website, tell me if you see any improvements needed :)
Nice Portfolio BTW

Hey @alexb31, I'm not looking for anyone to submit PRs to this repo at this time, but feel free to fork this repository and modify it as you wish!


Should nesting same name blocks be allowed?

So I was having a conversation with a colleague and I stated that we should not be nesting a BEM block within itself because it can cause CSS selector nightmare.  Below I will show a simple example:

    Hello World

.foo {
  .text {
    .foo--red & {
      color: red;
    }
    .foo--blue & {
      color: blue;
    }
  }
}

This is a very small and hopefully clear example.  What color would .foo__text get?  I can't find any guide that suggests or argues with nesting same named blocks.

I think you are right, it causes unexpected and not desired complexity

I think when you expect nesting like this you have to be more specific, using the > combinator:
.foo {
    &__text {
        .foo--red > & {
            color: red;
        }
        .foo--blue > & {
            color: blue;
        }
    }
}

That can be a potential solution, but it enforces too much on the DOM hierarchy. This also makes it harder to manage the code when there are changes to the DOM.  I think this can work on simple cases.

When you're dealing with recursion, you really don't have a choice.


Upcoming area code 332 not supported

According to NANPA [https://www.nationalnanpa.com/enas/plannedNpasNotInServiceReport.do], the New York area code 332 is planned to come into service on June 10th, 2017.  Currently libphonenumber doesn't support this area code yet.  It would help to get support for this area code before it comes into service so it doesn't cause any interruptions.

@ll-david-le,
Thanks for taking the time to improve libphonenumber!
We are already tracking this issue from our end. We'll update this thread when it's released.

This is fixed in release 8.5.0
https://libphonenumber.appspot.com/phonenumberparser?number=(332)+234+0000&country=US


Support OpenRC

Is your feature request related to a problem? Please describe.
Alpine packages are supported through apk, but you can't manage system services on Alpine Linux yet.
Describe the solution you'd like
Just an operation "openrc". I'd like to help but I have no idea how to write something like this...

👍 totally agree this is much needed.

Finally released this in v1.5!


Compatibility with VAG head units

Hi!
First of all, thanks for the cool project. I stumbled upon it after testing some commercial Android Auto wireless dongles, which all had some issues. Unfortunately, because these things are black boxes, it's difficult to debug them.
I have built the image for the Raspberry Pi 4, but can't get it to run properly. I have tested both with the head unit in my Skoda Fabia III Combi (LG MIB2 Entry device) and with the official Google Desktop Head Unit emulator. Sadly, in both cases it didn't work as expected.
The head unit in my car recognizes the default USB gadget and shows it as connected. When a device is connected, the head unit displays a selection window for Android Auto and MirrorLink, as it supports both protocols. As soon as I select Android Auto, it tries to connect but fails. The head unit then resets the USB connection and displays the selection menu again. This loop can be repeated several times.
The Google Desktop Head Unit simply doesn't do anything. When I start the tool and then connect the Raspberry Pi, nothing happens. It is recognized (number of devices increases from 7 to 8), but not started:
root@zeus:~/Android/Sdk/extras/google/auto$ ./desktop-head-unit -u -i touch
Android Auto - Desktop Head Unit
  Build: 2022-03-30-438482292
  Version: 2.0-linux

ALSA lib pcm.c:2666:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2666:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2666:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
[W]: No configuration specified - using default values.
[E]: Could not load configuration from '~/.android/headunit.ini'.
BoringSSL is the SSL implementation used in the receiver-lib.
Starting link. Requested protocol version: 1.7
[I]: Searching for compatible USB device...
[I]: Found 7 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 7 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 7 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 7 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 8 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 8 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 8 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 8 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 8 USB devices.
[E]: Couldn't find/access compatible USB device.
[E]: Failed to start Google Automotive Link.

My OnePlus 7 Pro on the other hand, is recognized without problems, restarted in accessory mode, and then works as expected:
root@zeus:~/Android/Sdk/extras/google/auto$ ./desktop-head-unit -u -i touch
Android Auto - Desktop Head Unit
  Build: 2022-03-30-438482292
  Version: 2.0-linux

ALSA lib pcm.c:2666:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2666:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2666:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
[W]: No configuration specified - using default values.
[E]: Could not load configuration from '~/.android/headunit.ini'.
BoringSSL is the SSL implementation used in the receiver-lib.
Starting link. Requested protocol version: 1.7
[I]: Searching for compatible USB device...
[I]: Found 7 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 7 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 7 USB devices.
[I]: No device found ready yet, will retry shortly...
[I]: Found 8 USB devices.
[I]: Device 'OnePlus GM1911' (vid=22d9, pid=2764) supports AOAPv2, starting accessory mode...
[I]: No device found ready yet, will retry shortly...
[I]: Found 8 USB devices.
[I]: Found device 'OnePlus GM1911' in accessory mode (vid=18d1, pid=2d00).
[I]: Found accessory: ifnum: 0, rd_ep: 129, wr_ep: 1
[I]: Attaching to USB device...
[I]: Attached!
> Phone reported protocol version 1.7
ssl state=TLS client read_server_hello -1
ssl state=TLS client process_change_cipher_spec -1
ssl state=SSL negotiation finished successfully 1
SSL version=TLSv1.2 Cipher name=ECDHE-RSA-AES128-GCM-SHA256
Verify returned: ok

I did a bit of debugging and it looks like in both cases there is simply no accessory start request arriving at the default USB gadget.
In further testing, I modified /etc/init.d/S92usb_gadget to directly start the accessory gadget instead of the default gadget. Additionally I modified the /root/start_accessory.sh so that aawgd is started directly when a uevent with USB_STATE=CONFIGURED arrives. With this configuration I at least managed to get the desktop head unit working. But the head unit in my car does not recognize the device at all.
Are there any tips I could use to debug further? My understanding is that the Pi must respond to USB packets according to AOA v1.0. However, I have not found any corresponding code on the default gadget that can do this. Is it possible that this is the problem?

Okay, never mind. The desktop head unit emulator does work. It just had a problem writing to the USB device the whole time. Will try to do some more research regarding the car head unit tomorrow.

My understanding is that the Pi must respond to USB packets according to AOA v1.0. However, I have not found any corresponding code on the default gadget that can do this. Is it possible that this is the problem?

This is being handled by the kernel patch which also adds the accessory gadget driver and handles the control requests as required. See aa_wireless_dongle/patches/linux/0001-Backport-and-apply-patches-for-Android-Accessory-mod.patch

I've spent the last few days digging into why this isn't working with my head unit. In the end, it comes down to a few points:

My head unit seems to expect a MTP device. If the connected device isn't one, switching to accessory mode doesn't work.

Apparently, it's a problem to use the GadgetFS vendor and product IDs. Even with the emulation of an MTP device, switching to accessory mode does not work properly. If I take the IDs and strings from my OnePlus 7 Pro instead, it works fine.

aawgd is too slow. After the head unit has requested the switch to accessory mode, there is a timeout (around 6 seconds) within which communication with Android Auto must be established. Otherwise, the USB connection is reset. It simply takes too long to establish a Bluetooth connection with the smartphone and start Android Auto.

I forked the repository and fixed all these issues. With that, it now works relatively reliably for me. Getting the timing right is the hardest part; I had to build some sketchy workarounds for that, which may break some other devices. If you're interested in adopting some of the changes I've made, I'd be happy to open a pull request.
Maybe doing more work in the aawgd daemon would help with the timing problems (like switching between modes and enabling the default gadget). But my C++ knowledge is too bad in order to implement that properly :D

Thanks a lot for the effort and sharing! :)
MTP, yes, I had read somewhere that this might happen, but wasn't a problem with the headunits I tested. But we can change the default USB config to MTP, if this is the case.

Apparently, it's a problem to use the GadgetFS vendor and product IDs. Even with the emulation of an MTP device, switching to accessory mode does not work properly. If I take the IDs and strings from my OnePlus 7 Pro instead, it works fine.

This is very interesting. Does the headunit have whitelisted/blacklisted vendor and product IDs? By any chance was the "0" serial number a problem?

aawgd is too slow. After the head unit has requested the switch to accessory mode, there is a timeout (around 6 seconds) within which communication with Android Auto must be established. Otherwise, the USB connection is reset. It simply takes too long to establish a Bluetooth connection with the smartphone and start Android Auto.

Right, this is a tricky one to fix. Sure we can start USB after bluetooth connection, but even then we can't be sure that Wifi would connect within the timeout. Starting USB after both bluetooth and wifi is connected might work, but that would mean that even if we plug in the dongle to something other than a car, we'd still advertise and connect to a phone.
Other workaround could be, instead of waiting for the bluetooth and wifi connections, we start the AA communication and then start forwarding the connection when phone is available. This would be more work, and I was avoiding this till now to not mess with the actual communication between the headunit and the phone.

Maybe doing more work in the aawgd daemon would help with the timing problems (like switching between modes and enabling the default gadget).

Yes, this is a long pending improvement in my mind. We can definitely do this, might also help with retrying connections in case of failures and other things in future.
Happy to take in PRs for all of these improvements. Though as you said, some parts may be tricky and we might need to come up with the right solutions. :)

This is very interesting. Does the headunit have whitelisted/blacklisted vendor and product IDs? By any chance was the "0" serial number a problem?

That's actually a good question. I didn't explicitly test it with a different serial number but simply copied the details from my phone. I'll test this again when I have time.

Right, this is a tricky one to fix. Sure we can start USB after bluetooth connection, but even then we can't be sure that Wifi would connect within the timeout. Starting USB after both bluetooth and wifi is connected might work, but that would mean that even if we plug in the dongle to something other than a car, we'd still advertise and connect to a phone.

I hacked aawgd so that the default gadget is enabled as soon as the proxy has accepted a client (see here). This indeed causes the connection to the phone to be established even if no car is connected, but that is acceptable in my case.

Happy to take in PRs for all of these improvements. Though as you said, some parts may be tricky and we might need to come up with the right solutions. :)

I filed #3 and #4. All the other changes are too hacky for me to merge them here :D
Thanks again for the cool project. Since I've fixed all the issues for my particular case and the project now works that way for me, we're welcome to close this issue if you'd like. Otherwise, we can leave it open in case someone else wants to contribute to it :)

Hi guys! Amazing work, thanks for enabling my car to do wireless AA!
For my car/phone combo(suzuki scross 2022+pixel 6) definitely the MTP implementation works quite reliably using a pi zero w. I do have a weird issue, if I delete/forget the bluetooth AA device from my pixel 6 then I can never reconnect it unless I reimage the sdcard. The error I get on my phone at least is that the pin number is incorrect although no pin prompt shows up. Not a huge issue as I don't have to forget the AA device anyway but if you want to take a look let me know if I can help in any way, collect logs etc. I did test with the original release build and also from a self build of @BluemediaGER master repo.
Cheers guys!

I do have a weird issue, if I delete/forget the bluetooth AA device from my pixel 6 then I can never reconnect it unless I reimage the sdcard. The error I get on my phone at least is that the pin number is incorrect although no pin prompt shows up. Not a huge issue as I don't have to forget the AA device anyway but if you want to take a look let me know if I can help in any way, collect logs etc. I did test with the original release build and also from a self build of @BluemediaGER master repo.

Could you please create another issue for this? I also faced this while testing, and would like if we can find a fix!

Ah looks like you beat me up to it. Thanks for fixing that.

Maybe doing more work in the aawgd daemon would help with the timing problems (like switching between modes and enabling the default gadget).

I've moved enabling the gadget to aawgd in de8f94961e1595fe223bc62a1aa18275f234937d. This should make it much easier and cleaner to switch between modes after accepting the tcp client by moving UsbManager::instance().enableDefaultAndWaitForAccessroy(); call. We can maybe do this behind a config as well (we need some way to easily set the config first, but  we can use env variables if nothing else to start with.)

I've moved enabling the gadget to aawgd in https://github.com/nisargjhaveri/AAWirelessDongle/commit/de8f94961e1595fe223bc62a1aa18275f234937d. This should make it much easier and cleaner to switch between modes after accepting the tcp client by moving UsbManager::instance().enableDefaultAndWaitForAccessroy(); call.

Nice; that's a good step forward. Thanks for your work!

I just performed some more testing with my head unit and want to share the results:
Timing is unfortunately still a problem. Even with the changes from https://github.com/nisargjhaveri/AAWirelessDongle/commit/de8f94961e1595fe223bc62a1aa18275f234937d, it's like two seconds too slow.

Other workaround could be, instead of waiting for the bluetooth and wifi connections, we start the AA communication and then start forwarding the connection when phone is available. This would be more work, and I was avoiding this till now to not mess with the actual communication between the headunit and the phone.

I think this will be the only option that reliably resolves these timing issues. I don't know the details about the AA protocol, but may it be possible to just perform the handshake and send some dummy data to the head unit while waiting for the phone to connect? That would at least avoid the need for a full-blown protocol implementation.

Apparently, it's a problem to use the GadgetFS vendor and product IDs. Even with the emulation of an MTP device, switching to accessory mode does not work properly. If I take the IDs and strings from my OnePlus 7 Pro instead, it works fine.

This is very interesting. Does the headunit have whitelisted/blacklisted vendor and product IDs? By any chance was the "0" serial number a problem?

I did test that today, and I can confidently say that it wasn't the serial number. Even with a non-zero serial number and the MTP change, switching to accessory mode doesn't work. I also observed that some of the cheap commercial dongles get recognized as Xiaomi phones. I still don't know if it's a white or blacklist (my guess would be a blacklist), but faking IDs seems necessary for some head units.

Timing is unfortunately still a problem. Even with the changes from https://github.com/nisargjhaveri/AAWirelessDongle/commit/de8f94961e1595fe223bc62a1aa18275f234937d, it's like two seconds too slow.

Just so that I understand correctly, timing is still a problem with your fork as well, or just with the master with the new changes?

I think this will be the only option that reliably resolves these timing issues. I don't know the details about the AA protocol, but may it be possible to just perform the handshake and send some dummy data to the head unit while waiting for the phone to connect? That would at least avoid the need for a full-blown protocol implementation.

We could try this out. Needs a little play around, but I believe the first message in the communication is essentially exchanging version info, and we might be able to fake it.
We could also once try to delay enabling the accessory gadget after getting the accessory start request. On Android, there seems to be a mechanism to choose apps if multiple apps can handle a particular accessory, which can take time as it requires user action. Not sure but maybe the head unit might have larger timeout there?

what if, when the rpi boot , it starts android auto showing a black screen (or a message saying something like "Waiting for phone"),  and then wait for the phone and when it's ready start showing the real android auto on the phone? I think that this way probably it can also fix #7. I take this idea from an Airplay Dongle I had, probably it's for the same issue (although it's a different protocol...)

That would be the perfect solution, but it requires a full protocol implementation and is much more complex, than simply proxying the connection to the phone. The Pi would also have to do more processing, since it needs to re-encrypt the traffic (Android Auto uses TLS).

With both versions. My fork works often, but not always. The main problem with it is that the USB port in my car gets power as soon as I unlock the doors. If I don't turn on the head unit fast enough (for example, because I load something into the trunk first), I have to restart the Pi manually because the auto-established connection has already timed out. It's not a solution, but more of a hacky workaround to make it work at all.

What if we trigger the bluetooth connection on first accessory start request, and then restart the gadget when when the phone is available? Does that work by any change?

That would be the perfect solution, but it requires a full protocol implementation and is much more complex, than simply proxying the connection to the phone. The Pi would also have to do more processing, since it needs to re-encrypt the traffic (Android Auto uses TLS).

Maybe we can take some "inspiration" from here...  https://github.com/adrianalin/meta-aacs

Doing "proxy" is not that hard, the hard part are certificates. Headunits check if certificate sent by phone is signed by Google. We can dump such certificate from APK, but always it will have only few months lifetime, so every few months, it will be required to upload new dumped certificate. Also, right now, dumping the cert from APK is possible (it's not easiest way, but not great, not terrible), but Google can anytime change this and this will be not possible / very hard to do.
The idea about gateway making directly the connection to Headunit and then waiting for phone is real (if we have certs mentioned upper), Headunit don't need much info about phone, and phone tells when really start Android Auto (but Headunit can request it), so we can wait until real phone will connect to gateway.
Although, this way introduces to many challenges, and by my opinion, the current method is the best one.

What if we trigger the bluetooth connection on first accessory start request, and then restart the gadget when when the phone is available? Does that work by any change?

That may work, but probably not in my case.
My head unit shows a selection menu if you connect a device to it. It allows you to select between Android Auto and MirrorLink (this video shows how that looks). The problem is that the accessory start request is only sent after the Android Auto button has been pressed. The head unit remembers if the connected device was last used with Android Auto and will start it automatically the next time. But if the connection fails for some reason (e.g. because of a timeout), it will not start AA automatically until you have manually selected it again.
There must be some mechanism to force-start Android Auto on the head unit, however. I observed that with the cheap dongles from Amazon, which somehow started Android Auto on their own every time I connected them. But my problem with these was that the whole head unit crashed every time, about 3 seconds after AA was started. That was the main reason for me to start fiddling around with your project :)

There must be some mechanism to force-start Android Auto on the head unit, however.

As far as my knowledge reaches, there is no way for phone to force AA session.
Only thing which might be the "force" is that the phone is already in accessory mode.
To confirm this theory, please connect cheap dongle from Amazon to PC and send the lsusb here.
(From older comment):

After the head unit has requested the switch to accessory mode, there is a timeout (around 6 seconds) within which communication with Android Auto must be established

This is strange, this is what headunits should not do...
About the handshake, by my opinion, this can be best in terms of timing:

Phone connects to BT
RPi starts gadget mode, and waits for HU to tell it to switch to accessory mode
When accessory is started, RPi will send via RFCOMM info about where to connect etc.
Done!

Only issue here is that it might take some time until the phone will really connect to wifi and try to connect to server.
This can be fixed by sending RFCOMM command to phone when the RPi starts classic device gadget mode, and if phone will connect sooner than accessory mode is ready (doubt), it will cache the packet which phone/headunit wanted to send, and then it will send it when both parties are ready.

As far as my knowledge reaches, there is no way for phone to force AA session.
Only thing which might be the "force" is that the phone is already in accessory mode.
To confirm this theory, please connect cheap dongle from Amazon to PC and send the lsusb here.

Unfortunately, I have already returned them, as they did not work for me. However, I did take a look at their behavior beforehand and they do not start directly in accessory mode. As mentioned in a previous comment, they first appear as a Xiaomi phone in MTP mode. I also tried to Man-in-the-middle the entire USB communication with Wireshark, but unfortunately I couldn't really get that to work due to the lack of proper tooling.

This is strange, this is what headunits should not do...

But it does, unfortunately. I would simply say that Volkswagen doesn't have the best software quality if even a connected USB device is able to crash the entire infontainment system lol

About the handshake, by my opinion, this can be best in terms of timing:

Phone connects to BT
RPi starts gadget mode, and waits for HU to tell it to switch to accessory mode
When accessory is started, RPi will send via RFCOMM info about where to connect etc.
Done!

I'll try to hack that together. Currently it is only about 1 to 1.5 seconds too slow.

But it does, unfortunately. I would simply say that Volkswagen doesn't have the best software quality if even a connected USB device is able to crash the entire infontainment system lol

Google have strict AA certification procedure, so I am surprised that this passed it :D

We could also once try to delay enabling the accessory gadget after getting the accessory start request. On Android, there seems to be a mechanism to choose apps if multiple apps can handle a particular accessory, which can take time as it requires user action. Not sure but maybe the head unit might have larger timeout there?

@nisargjhaveri That idea is on point! I moved the UsbManager::instance().switchToAccessoryGadget() call from the uevent handler to the proxy handlers handleClient() function. The head unit waits a long time (more than 30 seconds) for the "phone" to switch to accessory mode. As a result, it now works 100% reliable.
Currently the default gadget stays active until the accesory gadget is started, because the switchToAccessoryGadget() call also handles the deactivation of the default gadget. This is probably not ideal yet, but works anyway.

Good to know that this worked! Though, not sure if this will this will work for everyone. Let me try once and we can see how we can merge this in main, now that we do the switching part in aawgd itself.

@BluemediaGER if you're still up for some more experimentation, check out the builds from #25. It might help with the connection timeout issue as well, without delaying the switchToAccessoryGadget call.

@nisargjhaveri Thanks for the ping, that looks awesome! I will definitely test that when I have time.

Hello, and thank you for the awesome project, tried it for a present, for one of my friends, it didn't worked almost at all unfortunately :(
My friends car is a Skoda octavia 3, has the big discovery pro(mib2.5, no knob) , my s23 ultra, worked on and off, his s22 didnt worked at all, I tried build 25 as specified above, and the the main build, 25 had a bigger success rate, which was not really reliable.
Afterwards i tried on my fathers car(passat b8) with a discovery media(mib 2) that one did not work at all, tried my phone, and a oneplus 7t, tried on all usb ports, and without anything else plugged inside.
The device I used is a raspberry pi zero 2w
Also, the device works flawlessly when it use it with the android auto emulator
My question is, how should I debug it, as the project is great, and would you guys be interested in starting a little wiki, of working cars + phones combo ? I'm guessing we could maybe find how to make it work better, in a faster way
Regards, happy new year, and all the respect to this awesome awesome project

@cosminmocan, you can ssh into the Pi after it tries to connect to the car and get some logs out. You can start with /var/log/messages.
The default wifi password is "ConnectAAWirelessDongle" as defined in hostapd.conf. You can ssh using root/password for now, defined in relevant defconfigs, e.g. raspberrypi0w_defconfig.

Great, will be doing that as soon as i get a hold of another vag car !
Thanks again man, truly outstanding work you have done here

Just wanted to let everyone know, the optimistic_phone_connection branch worked for all the vag vehicles that I tested which are:

Passat B8 with a discovery media ( sluggish but works )
Skoda Octavia 3 with a the mib2.5 discover pro ( works like butter)
I had no interruptions with my tests, both were 30+ minutes and the phones tested were a s23 ultra and a s24 ultra running android 14

An outstanding piece of work this whole project!

#35 has been merged. The latest builds should work on more head units. Thanks everyone for the contributions.


Demo: disabling shadow casting on the floor makes the shadows blocky

Happens only when blur is enabled

VSM requires some valid background value, otherwise the blur will not work correctly (the shadow maps are cleared with Infinity)

Added an info box to the pipeline asset's editor in e16db9451c1ca21f561c2017d2016b5171491e25


Add method for counting widgets matching a finder

Sometimes we need to count widgets in some dynamic scenarios (very rare, but they occur) or to make test development/debugging easier.
Now we can do it this way:
final count = $(someFinder).evaluate().length;
We could wrap it up in a method called on finder.
To discuss: if we should call .hitTestable() implicitly or not.

final count = $(someFinder).existingCount; visibleCount

We decided it's not important.


Add a scanner for demand zone and supply zone

Request from telegram trader: @pravmahar and @tg_sachinn
Add a scanner for demand zone and supply zone

Rally Base Rally (RBR) Zones: These zones occur after a rally (upward price movement), followed by a period of consolidation (base formation), and then another rally. Smart money often forms positions here as it suggests a strong uptrend continuation.
Rally Base Drop (RBD) Zones: In this case, there is a rally, followed by a base formation, but instead of another rally, the price drops. Smart money may position themselves here in anticipation of a potential trend reversal.
Drop Base Rally (DBR) Zones: These zones form when there is a drop in price, followed by a base formation, and then a rally. Smart money may take positions here, expecting a trend reversal to the upside.
Drop Base Drop (DBD) Zones: In this scenario, the price drops, then forms a base, but subsequently continues to drop. Smart money might take bearish positions here, anticipating further downward movement.

https://www.flowbank.com/en/research/price-action-trading-strategy-supply-demand-zones
https://www.tradingview.com/support/solutions/43000713306-time-price-opportunities-tpo/

@03sachin and @anoopvempeny -
Can you please describe how you'd like to view the results in a tabular view that will make sense to users like yourself? I don't intend to include charts/graphs in the screener yet.

@03sachin and @Anoopvempeny - Would you like to respond ?

Yes can we test this?

@03sachin and @Anoopvempeny -
Can you please describe how you'd like to view the results in a tabular view that will make sense to users like yourself? I don't intend to include charts/graphs in the screener yet.

Yes tabular will do
Stock Name
Time Frame of Scanning
Price value of Proximal line
Price value of Distal lines

Also there is one important concept that zone is Tested or fresh
If possible add this as well


High / Low not translated to dutch

I'm using your plugin on a clients website, and everything translates nicely into dutch, except for the high & low temperature strings.
I'm using the shortcode with the language var set to NL.
I've already looked at the template files but I can't seem to find a way to translate them without editing the plugin core files.
I've attached a screenshot to illustratue the issue.
Edit: I'd be happy to supply the translations if needed.

You can update the translations here: https://translate.wordpress.org/projects/wp-plugins/wunderground
Thanks!


Geocoding dialog should be enabled in visualization view

PROS

[x] GEO button in table view enabled.
[x] No geocoding data dialog will appear when a layer without data or geo info is added.
[ ] Georeference this layer will be visible in the editor in a visualization view.

CONS

Each layer added without data or geo data, will make No-geo dialog appear.

cc @saleiva @iriberri @javisantana

Frontend tests were OK :+1: (details)

We had a problem with options_menu dropdown. It wasn't created each time user clicked over 'edit' link. That means models (in short, dataLayer) didn't change and "layer" options was always for the same table, not the active one.

Frontend tests were OK :+1: (details)

Code seems ok :+1:

Last call @javisantana and @saleiva.


fix(cpu-profiler): use per-CPU BPF maps

Not sure how to test it effectively tho
Closes #520

cc @javierhonduco

@maxbrunet This is somewhat deprecated now. Should we close it or do you want to update it?

We can close, it'll be probably easier to create a new one if we are still interested in the experiment


Enable Lead Matching

Critical Changes
Changes
Issues Closed

Testing Process and Feedback:

Create Leads only - PASS

Works well. Will create the lead record and match on an existing lead, if exists and rules are set appropriately
Create Lead with Contact Matching. - PASS
Works as expected.  Will first look for matching contact. If no match, it'll create a Lead record.

Match Lead - PASS

Works as expected. Will find matching lead, similar to the Contact matching process.

Manual Convert Lead - PASS

Works as expected. Will convert the lead, look up related Event Registration and add new Contact on Event Registration

Auto Convert Lead (foreign to Summit Events) - FAIL

Created an APEX class and flow to facilitate the Auto Convert Contact matching. This was leveraged with a hardcoded value on the Custom Metadata where I created a Boolean fields called "Auto Convert Lead" and it flows to the newly created Lead as "True", installed the Auto Convert Lead Apex Class and a Flow to run the class when the Boolean field equals true. While the Lead Converts to a Contact, the triggers facilitated during the Manual conversion process don't fire.
-Manually facilitated the Auto Convert Lead. - PASS
When manually updating the boolean field to fire the same flow and apex class to "auto" convert the lead, it works as expected. The Lead converts to a Contact, as if done manually by clicking the "Convert Lead" button. The Event Registration updates the Contact value appropriately and the matching log updated appropriately.

@jimhubert and @matt-hubert, please see my above testing notes.  Everything seems to work great OTHER THAN a foreign auto lead conversion process that triggers on an "after save" record.  When I fired the auto conversion manually, it worked as expected. Sharing as we may just want to document that there is potential for duplicates if you utilize Lead Creation and auto convert Leads to Contacts. Saying this as I don't see an actual issue here.
The flaw in auto converting a lead when using Lead matching only is that Summit Events offers Contact Matching AND Lead Matching, which would facilitate the same expectations of a Lead being Auto converted. If someone is wanting to Auto-Convert a Lead from Summit Events, they should only do so on matching leads. Realistically, those wanting to convert a matched lead to create a Contact should allow the Event Registration to serve as a "lead", creating a contact if a matching contact doesn't exist.
Question: With the Lead Matching, should on a match, an update value element be added to the Custom Metadata function? asking based on various use cases for Leads as well as the auto convert process.  The way I have it setup, it only works on a new create as a match doesn't update the field to trigger the flow. per my previous comments, this use case isn't valid, but other may warrant an ability to update a Lead Record. This is also potentially currently out of scope.
Need:

Help Text on "Matching Only"

@rdblake21 On your question about auto-converting Leads to Contacts on Insert:  If they are auto-converting Contacts on Insert then they should not be using Lead Matching Rules in Summit Events, as it is designed to work with existing Leads and there isn't any value added to build functionality to match on a newly created Lead that is always auto-converted 1/2 second later.  I will add this expectation to the documentation when we publish that.

@rdblake21  On your question about adding an "update" value element to the Custom Metadata function - this is a good idea, but I agree it is out of scope for this task.  I have created a new issue for this functionality https://github.com/SFDO-Community-Sprints/Summit-Events-App/issues/332 and look forward to discussing more for a future sprint.


modify sql3 package

The current sql package is dated.

This article is a good read.

This article assists the earlier article and talks about sharding database when you need to grow data. Usually, a events table is found in all projects.


Fix includes inside extern

@manojgop can you please verify that Rust is building correctly with this change.

@manojgop can you please verify that Rust is building correctly with this change.

I attempted to build the Rust bindings but ran into some errors unrelated to these changes. The rust bindings don't build out of the box, at least for me. I get lots of errors regarding versions and editions. I'm going to go ahead and merge this change while Manoj continues working on the Rust bindings.

@manojgop can you please verify that Rust is building correctly with this change.

I attempted to build the Rust bindings but ran into some errors unrelated to these changes. The rust bindings don't build out of the box, at least for me. I get lots of errors regarding versions and editions. I'm going to go ahead and merge this change while Manoj continues working on the Rust bindings.

@jeffreybshaw - Is clang installed. sudo apt-get install clang. What's output of cargo --version ? It could be due to clang not installed.


Rename AccountDataType.dataTypeId to AccountDataType.id

Summary
Aiming to be consistent with the decisions taken in this discussion https://github.com/safe-global/safe-client-gateway/pull/1715#discussion_r1668372234, this PR changes dataTypeId to id in the route layer entity AccountDataType.
Changes

Rename AccountDataType.dataTypeId to AccountDataType.id.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

1 of 2 (50.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.04%) to 48.165%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/routes/accounts/entities/account-data-type.entity.ts
1
2
50.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.04%

Covered Lines:
4246

Relevant Lines:
7078

💛  - Coveralls


BillionGraves

Figure out why it seems to be broken

It broke because they enabled https and we were only looking at http.


CML PR for 3-remote-experiments-0c3d0d1 9174f069

Automated commits for https://github.com/iterative/demo-bank-customer-churn/commit/9174f0695f63b0a0416a46019d9c6b568da4c86f created by CML.

cb249ee
Metrics

Path
f1
f1_by_geo.France
f1_by_geo.Germany
f1_by_geo.Spain
roc_auc
roc_auc_by_geo.France
roc_auc_by_geo.Germany
roc_auc_by_geo.Spain

metrics/metrics.json
0.60382
0.52564
0.66307
0.61935
0.85931
0.84235
0.84375
0.86379

Confusion Matrix


Pull request with type [CREATE] for user [bobmn] and object type [TaskSequence] - titled [How to add command line options for OS Upgrade]

Automated pull request from the Configuration Manager community hub.

Could you add online link to documentation for OSDSetupAdditionalUpgradeOptions

Changes made - added read me and link to Windows Setup upgrade command lines


Reference to non-existent field 'rootfilters'

Hi,
When I run the script on 'person_final.mat' of VOC2010 models as:
mat2xml('person_final.mat','person.xml')
it give me the error:
Reference to non-existent field 'rootfilters'.
Please help me solve this error. Thank you.

Actually since all the xml models are supplied for ensuring that OpenCV can work with them right here: https://github.com/Itseez/opencv_contrib/tree/master/modules/latentsvm/testdata/latentsvm/models_VOC2007_cascade
This can be closed down.

Looks like raw data files should be converted to structured format first.
This function can help: https://github.com/rbgirshick/voc-dpm/blob/master/star-cascade/grammar2simple.m As I can see, the output of this function will be compatible with the mat2xml function.

Thanks for the link @mshabunin!


Missing headers in netlist_simulator_controller

Describe the bug
The files saleae_directory.h and saleae_file.h are missing #include <cstdint> leading to failing builds on some linux platforms.

Which distribution / version are we talking about? I'd like to install a VM to reproduce and verify the fix.


Add a leading character

wget's progress bar looks like this:
l_mkl_2020.2.254.tgz.1                              14%[===============>                                                                                ]  74.55M   750KB/s    eta 13m 22s^C

You can see it has this leading > character. I think it'd be cool if your library supported this kind of leading character.

@FreeMasen any chance I can trick you into implementing this tiny feature? :)

It seems like a good feature. I will see if I can't get it together.

Thanks for the request, sorry it took so long! This is now merged and published as v0.2.1


TypeError: cannot pickle 'weakref' object when running examples

I have installed elephas in a clean python environment using the pip command provided in the readme, and am running into the following error when trying to get the examples running.
For the mllib_lib.py one I am starting it with
spark-submit --driver-memory 1G ./mllib_mlp.py

and getting the following error
Traceback (most recent call last):
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/serializers.py", line 458, in dumps
    return cloudpickle.dumps(obj, pickle_protocol)
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/cloudpickle/cloudpickle_fast.py", line 73, in dumps
    cp.dump(obj)
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/cloudpickle/cloudpickle_fast.py", line 602, in dump
    return Pickler.dump(self, obj)
TypeError: cannot pickle 'weakref' object
Traceback (most recent call last):
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/serializers.py", line 458, in dumps
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/cloudpickle/cloudpickle_fast.py", line 73, in dumps
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/cloudpickle/cloudpickle_fast.py", line 602, in dump
TypeError: cannot pickle 'weakref' object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/nmoran/code/elephas/elephas/examples/mllib_mlp.py", line 58, in <module>
    spark_model.fit(lp_rdd, epochs=5, batch_size=32, verbose=0,
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/elephas/spark_model.py", line 335, in fit
    self._fit(rdd=rdd, epochs=epochs, batch_size=batch_size,
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/elephas/spark_model.py", line 220, in _fit
    training_outcomes = rdd.mapPartitions(worker.train).collect()
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/rdd.py", line 1197, in collect
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/rdd.py", line 3505, in _jrdd
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/rdd.py", line 3362, in _wrap_function
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/rdd.py", line 3345, in _prepare_for_python_RDD
  File "/home/nmoran/miniconda3/envs/elephas/lib/python3.8/site-packages/pyspark/python/lib/pyspark.zip/pyspark/serializers.py", line 468, in dumps
_pickle.PicklingError: Could not serialize object: TypeError: cannot pickle 'weakref' object

Hello @nmoran , thank you for the test! I have debugged the issue - after some testing, it looks like we are not compatible with the latest version of Tensorflow (2.11). As such, I have pinned the requirements to <= 2.10 at the moment. It should now be working - please test it out when you get the chance!

Correction: the latest is now 3.4.3 - 3.4.2 had an installation error due to a change in setup.py which I've resolved.

Great, working now!


Sign in for Copilot in WSL has problems

Type: Bug
When using copilot in VSCode in WSL, I'm frequently asked to sign in to github, notifications claim that sign in was has not completed. During the time when it is asking or attempting to sign in (takes several minutes) copilot does not work, but once notified that it was not able to log in and I need to finish authorising, it works. Which runs counter to the notifications. I haven't used outside of WSL that much, but it does seem to sign in appropriately. It seems that every new window also prompts to sign into github for copilot again. This is unexpected, unnecessary, redundant and aggrivating.
 That has been resolved. However, I don't understand why/how copilot was working if it wasn't authenticated...

Hi @b1ackhawk-uh60 sounds like you're unblocked here now. Must have been a blip on GitHub's end.
My guess is that what you were seeing was Copilot asking to you log in with a few additional permissions which allows for some faster searches and a few other features, but if that fails we fall back to a token that can't do as much but still can function.
Let us know if you see this issue in the future!


Not able to pass a third party type to function for Blazorworker

I am running into the issue of passing a file type into the function in runasync as shown here:
var service = await worker.CreateBackgroundServiceAsync<ExcelService>(
			  options => options
			  .AddConventionalAssemblyOfService()
			  .AddAssemblies("BlazorInputFile.dll")
			  .AddAssemblies("DocumentFormat.OpenXml.dll")
			  .AddAssemblies("DocumentFormat.OpenXml.Packaging.dll")
			  .AddAssemblies("DocumentFormat.OpenXml.Spreadsheet.dll")
			  .AddAssemblies("System.IO.Packaging.dll")
			  .AddAssemblies("System.Xml.Linq.dll")
			);
var result = await service.RunAsync(s => s.GetLinesFromSheet(files));

and I recieve error:
System.Runtime.Serialization.SerializationException: Error converting type: Type 'BlazorInputFile.FileListEntryImpl[]' with data contract name 'ArrayOfFileListEntryImpl:http://schemas.datacontract.org/2004/07/BlazorInputFile' is not expected.`

files is of type IFileEntry[] from the BlazorInputFile package. Is there a way to let the serviceworker know how to serialize this?

Maybe, but far from simple.
The serialization of the expression depends on the default expression serializer: https://github.com/Tewr/BlazorWorker/blob/master/src/BlazorWorker.WorkerBackgroundService/SerializeLinqExpressionSerializer.cs
There is no simple way of replacing this serializer with you own implementation, nor configuring serialization for a specific type... I had plans to make it configurable somehow, however the intention has never become practice. It's difficult to design a simple API around this stuff and also pass it over the process border.
Id suggest serializing any unsupported type by yourself and pass it over using a byte array or a string.

@bpyzik  Do you mean IFileListEntry ? https://github.com/SteveSandersonMS/BlazorInputFile/blob/master/BlazorInputFile/IFileListEntry.cs
That interface has a stream reference. Streams are, by their nature, not serializable. There is an issue open for supporting streams though.

Id suggest serializing any unsupported type by yourself and pass it over using a byte array or a string.

Scrolling issues during the implementation phase and found this comment. Very useful tip as I was having issues passing semi-complex objects to the workers. We have our own serialization to BSON (Binary json) configured so I decided to just use that manually on the main thread and worker side for serialization and deserialization. I tried going down the rabbit hole of getting the built in serialization to work with our complex Data Model but it ended up getting harder and harder and eventually started messing with our own serialization functions...

Closed by #98


[tcgc] support typespec common paging

support typespec common paging.
currently, typspec does not support using pageable decorator in nested properties, related test is skipped.

All changed packages have been documented.

:white_check_mark: @azure-tools/typespec-client-generator-core

Show changes
@azure-tools/typespec-client-generator-core - feature ✏

support typespec common paging

@azure-tools/typespec-client-generator-core - fix ✏

use the right path parameter name when filtering method parameter

@azure-tools/typespec-client-generator-core - feature ✏

remove none visibility property for model

You can try these changes here

🛝 Playground
🌐 Website
📚 Next docs

added test for getPropertyPathFromModel


can't set the time of ubuntu

win10: 1709
ubuntu:16.04.3
when I set the time of ubuntu ,the ubuntu change back soon.
How can I set the time of ubuntu ?
``

I think date is linked to Windows time.

It's stubbed. But use case.


Dividing by 1000 can often round straight down to 0

This is already resolved by #212 which will be the basis of the next release.


Update UserGuide ToC and UI annotation

Codecov Report

Merging #206 (2c2ec60) into master (bc9a2af) will increase coverage by 2.50%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #206      +/-   ##
============================================
+ Coverage     52.46%   54.97%   +2.50%
- Complexity      630      658      +28
============================================
  Files           120      120
  Lines          2878     2887       +9
  Branches        346      348       +2
============================================
+ Hits           1510     1587      +77
+ Misses         1278     1204      -74
- Partials         90       96       +6

Impacted Files
Coverage Δ

...a/seedu/address/ui/infopage/TimetableInfoPage.java
0.00% <0.00%> (ø)

...ain/java/seedu/address/model/tuition/Timeslot.java
54.05% <0.00%> (+10.81%)
:arrow_up:

...in/java/seedu/address/model/tuition/Timetable.java
74.19% <0.00%> (+74.19%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update bc9a2af...2c2ec60. Read the comment docs.


Update NOTICE

https://github.com/xerial/snappy-java/issues/308

@imsudiproy Thanks for the fix. Merged

@xerial you're welcome. Sorry for the late response.


Skiplink container fails WAVE accessibility scan

The skiplink container fails the WAVE Evaluation Tool accessibility scan because of low contrast.
A way to fix this would be to make the skiplink container background not display at all using background: none, rather than setting it to black.
Error report, run on gov.uk:

This is one of those things that only theoretically fails but practically it doesn't, because the skip link is not visible until focussed. And when it's focussed, the colour contrast passes.

Following the launch of the GOV.UK Design System, GOV.UK Template will now only get major bug fixes and security patches, so I'm going to close this.


[BUG] IPAdapter nodes labeled as Bizyair nodes? Despite I haven't installed Bizyair.

Describe the Bug
Today, I discovered that all IPAdapter Nodes are labeled as 'Bizyair node'.
I verified that I haven't installed the Bizyair node.
Additionally, I tried uninstalling and reinstalling IPAdapter_plus, but the issue persists.
Then
I downloaded a fresh copy of ComfyUIi portable and installed ComfyUI_IPAdapter_plus,
Then open the ComfyUIin a new browser, and IPAdater Nodes are still labeled as bizyair node.
Snapshots

Environment

OS: [e.g., Windows 11]
Browser: [e.g., chrome, ]

This might be related to the ComfyUI manager. After I downgraded the ComfyUI manager to a previous commit, this issue was resolved.
I'll update this bug in ComfyUI manager repo.
Please help me mark this closed or delete this issue.

all right, thanks for your issue.


[bal-tabs] - in accordion the line is not set the first time

only on native iPad

https://github.com/baloise/design-system/issues/692


Quick fix: use superagent when sending Cypress test report

Summary
(Experimental) Use superagent when sending Cypress test report since there seemed to be an issue with axios.
Ticket Link
none, not working on daily Cypress report

Merging now to see how it goes on Jenkins.


Add configuration variables

Add variables which can be inserted onto other configuration options
This would look like:
variables = {
    focus-color = "#FF0000",
}

# ... snip

switcher_color = "${focus-color}"

I've looked into this, and my current suggestion would be rather hacky. Read the toml into a String, have a separate struct implementing Deserialize parse the variables into a HashMap, substitute the variables in-memory using regex, deserialize the resulting config, merge with default configuration. If that sounds reasonable enough, I'll start working on a PR for it.

I think this is a good way to initially implement it. I would be very open to seeing a PR with this.


Styling, sizing and alignment fixes

Description
Issue: STEAM-1076
A bunch of random styling, sizing and alignment changes to get the app more in line with the mockup
Important Changes

Rankings section and Main viz now match in height
Subcategory table and Longitudinal section now match in height and alignment
Modified subcategory and longitudinal section title's to match style
Added a bit of padding below Coverage Overview and it's description
A few misc. reorganizations and comments added to clean up some complicated sections

Some possible issues to note for future styling changes / resizing:

I once again encountered weird issues with the ResponsiveContainer component on the line chart. I removed the height parameter to try and make it just flex and fill the containing div, but that made the whole graph disappear so I ended up having to add a fixed tailwind height class to it
I had to give both sections that use overflow for a scroll bar (Rankings and Subcategories) a fixed height. Any other dynamic height changing would result in the container growing to fill space and not properly using a scrollbar. There might be some other way to not use a fixed height and keep the scroll bar but I couldn't figure it out for now.

Testing Recommendations

Run the app and check for the changes mentioned above
Compare the app to the mockup to check for any other small styling changes that may need to be made

Checklists
Submitter:

[ ] This PR describes why these changes were made.
[ ] This PR is into the correct branch.
[ ] This PR includes the correct JIRA issue reference.
[ ] Code diff has been reviewed (it does not contain: additional white space, not applicable code changes, debug statements, etc.)

@ACCT1 :

[ ] Code is maintainable and reusable, reuses existing code and infrastructure where appropriate, and accomplishes the task’s purpose
[ ] You have tried to break the code
[ ] Tested all recommendations listed in the "Testing Recommendations" section. The application behaves as expected with this PR.

A few other small changes that could be made:

The container for the dashboard shouldn't be full width; it should be responsive, but have a max width. This is supported by native tailwind classes
The Ranking title and list should be vertically aligned by having the same x-padding. This can be done indirectly by making sure that both the ranking list and ranking title have the same x-padding as a matter of coincidence, or directly by moving the x-padding (and maybe y-padding too) to the container itself. The directy approach will still require a pb-4 on the ranking/title header container.
The mockups use a bold font-weight on the axes labels. Not sure how easy or hard that is with Recharts, but something to look into.
Mockups have a little patient logo next to the OverallCoverage patient count.
There could also be a bit more right-padding on the horizontal color bar next to each ranking item; they're a bit squished right now.
Maybe a smaller y-padding on the table-header items? py-2?

So far the changes that have been made look really good!

This looks fantastic


can add a function to convert a rect image to round corner

sharp("front_face.png", {radius: 50})
like cloudinary

Hello, I'd probably use an SVG containing a rounded-corner rectangle and use the overlayWith operation's cutout option.
Perhaps try something like the following (untested):
const rect = new Buffer(
  '<svg><rect x="0" y="0" width="100%" height="100%" rx="50" ry="50"/></svg>'
);

sharp('front_face.png').overlayWith(rect), { cutout: true })...

http://sharp.dimens.io/en/stable/api/#overlaywithimage-options

events.js:160
      throw er; // Unhandled 'error' event
      ^

Error: Input buffer contains unsupported image format
    at Error (native)

sorry,i try but get the error like this.

 let iconStream,iconBuffer;
                if(query.ei){
                    let eiBuffer = yield getEI(query.ei);
                    iconStream = sharp(eiBuffer);
                }
                else{
                    iconStream = sharp(path.join(__dirname,'img/05.jpg'));
                }

                iconBuffer = yield iconStream
                    .resize(Math.round(qrInfo.width/5),Math.round(qrInfo.height/5))
                    .background({r:255,g:255,b:255,a:1})
                    .extend(2)
                    .toBuffer();

                const rect = new Buffer(
                    '<svg><rect x="0" y="0" width="100%" height="100%" rx="50" ry="50"/></svg>'
                );
                //overlayWith(iconBuffer).
                let compositStream = qrStream.overlayWith(iconBuffer);//.overlayWith(rect, { cutout: true });

it's ok ,but the iconBuffer overlay to the qrStream is no round corner.I need one.

The following code applies rounded corners to the<PHONE_NUMBER>_aca715a2ee_o.jpg test fixture.
const sharp = require('sharp');

const rect = new Buffer(
  '<svg><rect x="0" y="0" width="200" height="200" rx="50" ry="50"/></svg>'
);

sharp('2569067123_aca715a2ee_o.jpg')
  .resize(200, 200)
  .overlayWith(rect, { cutout: true })
  .toFile('565.png', function(err, info) {
    console.log(info);
  });

The output is:
{ format: 'png',
  width: 200,
  height: 200,
  channels: 4,
  size: 80873 }

Is this the kind of thing you were looking for?

The code just works!
Thanks,  @lovell.

I'll assume no news is good news here but feel free to re-open if help is still required.

Sorry to re-open this, but which blend mode should I use to recreate this behavior with the composite method?

The answer to my above question for anyone wondering is dest-in.