Consider adding a lifetime to Facade and Context

I'm working on improving the soundness of the rust-sdl2 API. Some new changes include giving sdl2::video::Window a lifetime so that it doesn't outlive the "video subsystem", i.e. Window<'a>. The OpenGL context created by SDL2 might also require a lifetime if it's destroyed by SDL_Quit(), but I'm unsure if this is the case right now.
While updating glium_sdl2, I noticed that there's no way to restrict the lifetime of the Context. This currently makes it infeasible to store an SDL window in the backend.
Here's what I'm aiming to do in glium_sdl2, generally:
#[derive(Clone)]
pub struct SDL2Facade<'a> {
    // contains everything related to the current context and its state
    context: Rc<Context<'a>>,

    backend: Rc<SDL2WindowBackend<'a>>,
}

impl<'a> Facade<'a> for SDL2Facade<'a> {
    fn get_context(&self) -> &Rc<Context<'a>> { &self.context }
}

pub struct SDL2WindowBackend<'a> {
    window: UnsafeCell<sdl2::video::Window<'a>>,
    context: sdl2::video::GLContext   // may require <'a>?
}

let backend = Rc::new(try!(SDL2WindowBackend::new(self)));
// The line below is a compilation error in glium 0.7
let context = try!(unsafe { Context::new(backend.clone(), true) });

let display = SDL2Facade {
    context: context,
    backend: backend
};

Ok(display)

Any thoughts on this?

All glium objects (buffers, programs, textures, etc.)  hold a Rc<Context>.
Adding a lifetime parameter to Context would require adding a lifetime parameter to all these objects and to the user's code.

Right. I agree that adding lifetime parameters to everything could be unwieldy, and doing so would be horrible for users.
Maybe there's a way to defer the lifetime check to run-time instead. If the Window/SDL_GLContext is destroyed, then the Context stops working. Is there a "kill switch" available for Context?

You could treat this as a lost context.
When the window is destroyed, is_current returns false and make_current returns an error.

This can be closed. SDL's Window doesn't require a lifetime, and it now contains an Rc that quits SDL2 and the video subsystem.


v2

Breaking changes

graphql is now a peerDependency (v15 or v16)
Update packages
envelop peer dependency is now v2
Throw 400 response if request JSON body parsing throws
graphiql is not included by default anymore.

This shaves off about 1 MB of the worker if not needed!
This can now be done manually, on-demand like so:
import { shouldRenderGraphiQL, getGraphiQLResponse } from 'helix-flare'
// ...
async fetch(request) {
  if (await shouldRenderGraphiQL(request)) {
    return getGraphiQLResponse()
  }
  // ...
}

Bundlers will automatically tree-shake it if it's not included

looks good, how about we add a CHANGELOG.md for keeping track of the changes?

looks good, how about we add a CHANGELOG.md for keeping track of the changes?

Isn't that redundant to the releases tab then?

your right!


Comment box not being reset between classifications

From @tsboyajian :

When a light curve is classified and a comment is made, the next star that is classified has the same comment in the comment box.

I suspect this was the same issue as #276 since that caused JS issues. Reopen if it's still happening.


[pesieve] Use shortcut helper & console app

Change pe-sieve to use VM-Install-Shortcut to create the shortcut for consistency with other tools. Add the consoleApp option to keep the console open after executing pe-sieve.

Thanks for the testing @emtuls!


Cannot launch a RAIL application when multiple monitors are synchronized

Steps to reproduce:

Configure multiple monitors (two are enough) to synchronize picture. For example, in my setup, an external LG monitor is connected to my laptop and it is configured to be a replica of the build-in screen.

Launch a RAIL application with /multimon argument:

xfreerdp3 /v:address /u:user /p:pass /cert:ignore /multimon /app:"||Microsoft Word"

Expected result:
The application should launch.
Actual result:
The application does not launch, and the following errors appear in the console:
[12:50:38:420] [23:47412700] [ERROR][com.freerdp.core.transport] - [transport_read_layer]: BIO_read returned a system error 54: Connection reset by peer
[12:50:38:420] [23:47412700] [ERROR][com.freerdp.core] - [transport_read_layer]: ERRCONNECT_CONNECT_TRANSPORT_FAILED [0x0002000D]

Here is the full trace-level log.
log-does-not-work-trace.log
After some investigation, I found events on the RDP host side:

Error 4405 corresponds to ERRINFO_MONITORGEOMETRYVALIDATIONFAILED: source code reference
In the xfreerdp log there is a monitor-related section:
[12:50:38:416] [23:47412700] [DEBUG][com.freerdp.core.gcc] - [gcc_write_client_monitor_data]: MonitorCount=2
[12:50:38:416] [23:47412700] [DEBUG][com.freerdp.core.gcc] - [gcc_write_client_monitor_data]: Monitor[0]: top=0, left=0, bottom=1599, right=2559, flags=1
[12:50:38:416] [23:47412700] [DEBUG][com.freerdp.core.gcc] - [gcc_write_client_monitor_data]: Monitor[1]: top=0, left=0, bottom=1079, right=1919, flags=0
[12:50:38:416] [23:47412700] [DEBUG][com.freerdp.core.gcc] - [gcc_write_client_monitor_data]: FINISHED

The implementation of the function gcc_write_client_monitor_data in file libfreerdp/core/gcc.c seems compliant with the standard described in <IP_ADDRESS>.6 Client Monitor Data (TS_UD_CS_MONITOR).
I did some experiments with passed coordinates in the gcc_write_client_monitor_data function, and it seems that the server throws an error if the monitor fields overlap, even by one pixel.
Potential Solutions:

Simply avoid passing the /multimon argument when launching the xfreerdp client if monitors are configured to synchronize their displays. This is a non-invasive solution, though I am unsure if it's the best one.
Add a check into this part of gcc_write_client_monitor_data to verify that monitors do not overlap

    // line 2165
    if (settings->MonitorCount > 1 && monitorsDoNotOverlap)
    {
        ...
    }

Option one is less invasive but may not be the most appropriate long-term fix.

@Voxnod

/multimon is redundant for /app rails mode, it is always used.
yes, overlapping monitor layouts are not supported (at all!) maybe we can add a check and terminate right there.

It is quite strange. /multimon always affects rail applications in my setup. Without it I cannot even drag application window on second display. And if I don't pass the argument, the current issue won't occur.
Maybe it has something to do with the fact that I use FreeBSD.

@Voxnod no, nothing OS specific. I´ll check this (maybe I am just remembering it wrong :grin: )

@Voxnod ok, added https://github.com/FreeRDP/FreeRDP/pull/10672 this should prevent connection attempts with such monitor layouts early.

ok, closing as this is an unsupported configuration (sorry)


Exclude subproject/submodules from depdency check

Hi,
Is there way to exclude sub project/modules from the dependency check?
Example;
Project commons {
proj A
proj B
proj C
}
I would like to exclude proj B from the report.
Is this feature available?
Thank you.
Kr,
Ranch

At the moment - not directly.  One could create a suppression file that suppressed everything in the GAV (assuming maven?) for project B.


Workflows stuck in delayed queue since hours/days and never gets executed

Hi There,
If anyone could help me with an issue, we are using ST2 extensively and many workflows runs on the box. The box has good configuration, in terms of memory and CPU.
It has been noticed that workflows gets queued and never gets executed and delayed queue is far too long always when checked.
For example:
If i check the delay queue running the following command (st2 execution list -l --status delayed) , i would be able to see workflows for 2 days before that never made to execution. Because of this , it is seen that other workflows also gets impacted in a way that it takes 50 minutes for a simple workflow to finish that generally takes 10 minutes.
Anybody who can help me here?
Example:

The problem is getting increased as there is a lot of delay. CPU does not seem to be concerning here. Could it be due to the number of triggers that it is receiving?

@arm4b  Any solution here?

Can you show what state your movements are in? I asked the same question today at Slack. I have been troubled for a long time and I am still trying to solve it.

Also, i am getting this error as well.
root@stackstorm:~# st2 execution list -l --status delayed -n 2000 2>/dev/null
ERROR: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response',))

This is a known issue.  If rabbitmq retry connections are exhausted then an action is stuck running forever.  likely your box is experiencing some network issues internally.  Do your workflows create very large context or have very large inputs or outputs?

Thanks @guzzijones for replying.
No underlying network issues are there. Regarding the large inputs and outputs , no these are not very huge. But the things that has been noticed is the amount of triggers it is receiving now a days is huge.
But the main concern is ST2 keeps them in queues for days and never even executes it.

谢谢你的回复。不存在底层网络问题。关于 大的输入和输出 ，不，这些不是很大。但已经注意到的是，它现在每天收到的触发数量是巨大的。
但主要问题是 ST2 让他们排队好几天，甚至从不执行它。

Can you see what state most workflow instances are in?

What is in your st2-workflow-engine logs and st2-action-runner logs.  I bet you see disconnects to rabbit-mq.

@guzzijones
No i could not see rabbit-mq disconnects. Even if i try to purge older workflows it does not do anything and i have to grep IDs and cancel these older workflows manually.
This is a big performance issue.

This is one of the example:

See the requested and scheduled time , 3 hours delay. How could we reduce this delay ? What are the factors that might be we are missing here? Any ideas?

This is one of the example:

See the requested and scheduled time , 3 hours delay. How could we reduce this delay ? What are the factors that might be we are missing here? Any ideas?

It should be blocked. If the performance problem cannot be solved, you can add filtering rules to the rule to confirm which data needs to be processed automatically.

This is one of the example:

See the requested and scheduled time , 3 hours delay. How could we reduce this delay ? What are the factors that might be we are missing here? Any ideas?

It should be blocked. If the performance problem cannot be solved, you can add filtering rules to the rule to confirm which data needs to be processed automatically.


C++ should default not allow insecure connections with TLS

If tlsAllowInsecureConnection is true, then the client doesn't
validate the server's TLS cert, allowing for MITM attacks. This
shouldn't be the default option.

merged as 227e1df in branch-2.1


[FEATURE] Register bitcoin addresses, begin polling

[FOLD] Clean up, remove unnecessary dependency

LGTM :+1:

The build is good and I'm seeing 1 +1s from the following folks:

wilsonianb

As such, I'll attempt to merge and close this pull request.


Add description pages of images

Related to rocker-org/rocker-versioned2#191
It may be clearer to maintain the documentation in this repository and include only a link to the website in the DockerHub.
Merge after #47

I believe I have described the basic description for each image.
I would eventually like to remove the READMEs from DockerHub and just link to this site......

Can you rename base/r-debel.md to base/r-devel.md?


Individual componenets could have @click

What problem does this feature solve?
Making individual componenets having @click event as whole component, I tought that's some of the reasons it must be all wrapped in one tag, but it does not work...
Example:
test.vue: [
<template>

    <anotherTest @click="a" />

</template>

]
'./test/anotherTest.vue': [
<template>

    TEST,
    TEST,
    TEST

</template>

]
It could make workflow at certain places more reasonable.
What does the proposed API look like?
Even vue components should have event handlers, and that handlers could be passed to main wrapping element of component template... See example above.

https://vuejs.org/v2/guide/components.html#Binding-Native-Events-to-Components


Fix QueryHookOptions for @apollo/react-hooks

Implements the solution as suggested by @dotansimha in https://github.com/dotansimha/graphql-code-generator/issues/1863#issuecomment-496586940
It checks whether hooksImportFrom is set to @apollo/react-hooks, if so, it outputs the signature that @apollo/react-hooks expects, otherwise it defaults to the signature that is compatible with react-apollo-hooks.
One quick thing to mention, I tested this change rather quickly by manually editing the visitor in my node_modules, let me know if somethings not right!

Perfect! Thank you @edorivai !


Training time

Hi, thanks for the implementation. Could you provide the (approximate) training time to produce the result in your table in the Readme?

same problem, it seems slow using the code for training BYOL, how can we optim it for fast training?

@guanfuchen
First, training BYOL is slow naturally, due to:

With the same architecture, ResNet-50 for example, BYOL does more than twice forward calculations in comparison to supervised learning.
BYOL, as well as other self-supervised methods such as SimCLR, requires more training epochs to converge. Most of the ablation study results in the paper are reported at 300 epochs while the best performance is reached at 1000 epochs.

Second, self-supervised methods usually use a large batch size, e.g., 4096, for better performance. And there are a lot of efficiency challenges in large-scale distributed training.

BYOL occupies more than twice GPU memory than supervised training. That's to say, it needs twice the amount of GPU cards to ensure the same batch size. Unfortunately, communication costs or throughput will be a major bottleneck under this circumstance.
I adopt synchronized batch normalization (syncBN) in my code. It does an extra synchronization among all the GPU cards during the forward calculation, which is very time-consuming. While the authors have not stressed using syncBN in BYOL, I found that it is hard to reproduce the reported results without syncBN. So I add it back referring to the implementation of SimCLR.

Besides, there are some points that could be optimized. The most important one is data loading. The dataloader assumes reading raw images and then does data augmentations, which is rather slow. You can:

Use better optimized data augmentation library, e.g., albumentations (improves a little)
Use new torchvision versions (with pytorch>=1.7.0) which can apply augmentations to tensors (in batches and on GPUs) (I have not tried)
Use DALI for reading (converting raw images to tfrecords accelerates a lot) and augmentation (however, some augmentation used by BYOL may not be supported by DALI).

Thxs, great answer. DALI is not very flexiable, yes, syncbn is important. I am considering the MOCO, it seems more quick than BYOL, and it does not use SyncBN. @yaox12

another problem about transformation is slow, the cv2.GaussianBlur is very slow. It seems low linear evaluation accuracy using PIL GaussianBlur. This is OpenSelfSup Code about BYOL GaussianBlur transformation.

@guanfuchen

The official implementation of MoCo also uses PIL GaussianBlur, however I haven't tried it because it accepts a single parameter sigma. I kept the implementation as close to the BYOL paper as possible.
albumentations in byol_transform_a.py leads to a similar linear evaluation result but I remember it didn't accelerate much. The color adjustment in byol_transform_a.py may not be correct. You can refer to https://github.com/albumentations-team/albumentations/issues/672 and https://github.com/albumentations-team/albumentations/issues/698 for help. BTW, GaussianBlur has been added to torchvision now, I think it deserves a try.

Thxs @yaox12 , you code is really excelent!!! I will try but the cost is high. I modify the weight decay to 0 using linear evaluation, then the acc is almost same as the origin cv2 implementaion.

@yaox12 Hi, I notice you actually did not use mixed precision in the BYOL training since opt_level is "O0" in your train_config.yaml. Have you tried using opt_level: "O1"? Would opt_level: "O1" cause a significant accuracy drop?

@yaox12 Hi, I notice you actually did not use mixed precision in the BYOL training since opt_level is "O0" in your train_config.yaml. Have you tried using opt_level: "O1"? Would opt_level: "O1" cause a significant accuracy drop?

@youweiliang See #7

@youweiliang See #7

Thx. I have just tried using torch.cuda.amp (PyTorch 1.6) for the mixed prescision training and also observed similar computation time with/without amp. I tend to agree with you on the communication bottleneck.

Thx. I have just tried using torch.cuda.amp (PyTorch 1.6) for the mixed prescision training and also observed similar computation time with/without amp. I tend to agree with you on the communication bottleneck.


How to disable a button when pressed?

Here is my button xaml:
<Button DockPanel.Dock="Bottom" Content="{Binding DownloadUpdatePlayButton}" Command="{Binding installUpdatePlay}" VerticalAlignment="Bottom" Margin="20 0 0 20"  Height="50" Width="200" HorizontalAlignment="Left"></Button>
Is there any way to transfer an instance of the button to DownloadUpdatePlayButton so in this function I know the exact button pressed. I need to in order to disable it after pressed and then enable it once DownloadUpdatePlayButton finishes it's job.

I think the better way would be using IsLoading state that keeps information about all possible options.
Then you can check it for a specific object in CanExecute.
Some pseudo-code to show the idea:
DownloadUpdatePlayButton = new RelayCommand(StartDownloading, p => IsLoaded[p]);

and inside of your StartDownloading:
StartDownloading(int id)
{
    IsLoading[id] = true;
    // process
    IsLoading[id] = false;
}

id is passed via CommandParameter.
If you add more details I will be able to write some sample though.


how set custom headers

apollo: {
  "x-token": "hash",
  "x-auth-token": "hash",
  "x-refresh-token":  "hash",
  headers: {
  },
  clientConfigs: {
    default: {
      // required
      httpEndpoint: "localhost:4000"
    }
  }
}

I also tried this one
apollo: {
  clientConfigs: {
    default: {
      httpEndpoint: 'localhost:4000',
      httpLinkOptions: {
        headers: {
           'x-token': 'hash',
           'x-auth-token': 'hash',
           'x-refresh-token':  'hash'
        }
      }
    }
  }
}

If you want custom headers, something like this will work:
nuxt.config.js
apollo: {
    clientConfigs: {
      default: '~/apollo/client-configs/default.js'
    }
  }

apollo/client-configs/default.js
export default function(context){
    return {
        httpEndpoint: 'yourURLHere',
        httpLinkOptions: {
            headers:{
                'X-Custom-Header': 'value'
            }
        }
    }
}

I have it working with Shopify's API which requires a custom header.

Is it possible to add a dynamic header ?
I am having trouble with Hasura, I need to determine some user roles for access control and these roles need to be added to the header like
x-hasura-role : "user"  or x-hasura-role: "admin"  etc.
according to the logged in user can be dozens of roles so I have to change them dynamically.

@dailycommit Did you find the solution? You can add request-specific context, for example:
apolloClient.query({
    query: GRAPHQL_QUERY,
    variables: {
        var1: "this is a variable"
    },
    context: {
        headers: {
            X-Hasura-Role: "public"
        }
    }
})

hey @mfdeux, yes I found how to do it, thank you 😊👨💻

Just found out you could also do this if you want to dynamically change the endpoint:
apolloClient.query({
    query: GRAPHQL_QUERY,
    variables: {
        var1: "this is a variable"
    },
    context: {
        uri: "https://YOUR_CUSTOM_ENDPOINT",
    }
})

@dailycommit @Youhan do you know how to use dynamic header with subscriptions?

Why it's not possible to pass custom variables in smart queries?
At least it's not in documentation https://github.com/vuejs/vue-apollo/blob/master/docs/api/smart-query.md

Why it's not possible to pass custom variables in smart queries?
At least it's not in documentation https://github.com/vuejs/vue-apollo/blob/master/docs/api/smart-query.md

Ok. I'm taking this back. You can add custom headers in same way like @mfdeux mentioned above even if it's not in docs.
Just keep in mind, that if you want to use for example a vuex store for setting the header then the context must be a function so that you can reference this.
Example:
context() {
    return {
        headers: {
            'X-Examlpe-Header': this.$store.state.example.data
        }
    }
}


Support Datacore V6

Hello Peter,
Thank you for you amazing tool I've been using it for several years now.
3.24.2 build now use a new dcb datacore and unp4k is unable to extract it.
Thanks in advance for your work.

https://github.com/dolkensp/unp4k/tree/feature/dataforge-v6-support Should work - currently going through user testing

Thank you !

Error converting Game.dcb: Object reference not set to an instance of an object

@peter-dolkens  Thank you. Problem solved.

https://github.com/dolkensp/unp4k/tree/feature/dataforge-v6-support Should work - currently going through user testing

Any update on this? is it possible to get a pre released version? :)

nevermind was able to build it using Visual Studio ^^

I downloaded the branch mentioned and I'm still getting the error.
After using Visual Studio to build the projects, I ran the following commands from Terminal in the C:_temp directory:
"C:_code\dolken\src\unp4k\bin\Debug\net47\win-x64\unp4k.exe" "C:\Program Files\Roberts Space Industries\StarCitizen\Game\data.p4k" ".ini"
"C:_code\dolken\src\unp4k\bin\Debug\net47\win-x64\unp4k.exe" "C:\Program Files\Roberts Space Industries\StarCitizen\Game\data.p4k" ".xml"
"C:_code\dolken\src\unp4k\bin\Debug\net47\win-x64\unp4k.exe" "C:\Program Files\Roberts Space Industries\StarCitizen\Game\data.p4k" ".socpak"
After running the above commands, I ran the following:
"C:_code\dolken\src\unforge\bin\Debug\net47\win-x64\unforge.exe" "C:\_temp\Data"
Converting \Game.dcb
Error converting C:\_temp\Data\Game.dcb: The given key was not present in the dictionary.
I've also tried the netcoreapp2.0 vs net47 builds.
Does anyone have any clues as to what I'm doing wrong here?

Shameful update detailing my fix for others.
If you select the feature branch in github and then proceed to open code in Visual Studio, it doesn't open the viewed branch. Visual Studio grabs the default branch, in this case the 'develop' branch.

After looking through things on this branch with @RedMonsterSC, I've determined that the mineable data has been removed from the client side bundle.


Invalid license after upgrading image

💬 Questions and Help
I was using release v0.7.5 happily using Foundry VTT username and password. It fetched license as expected. But I decided to upgrade to the new v0.7.7 using docker-compose pull as stated in README.md file. I use the same data volume. When I try to use my deployment again, logs say (my license is valid):

[error] License verification failed. Please confirm your Foundry Virtual Tabletop software license

I verified that the data/Config/license.json contains valid information, fetched again after last run.
What I am doing wrong? Do I need to create data volume again? I would like to maintain my worlds, plugins and configuration.

I simply restarted Docker after some investigation and it suddenly worked again. No clue what happened, because I did not change anything relevant...


fix(PL-1906): gha, fix handling of BREAKING

Note that the action is the same code as nestoca/conventional-changelog-action@releases/v4, but we this way nobody can change the code and tag under our feet.

Do we really want to maintain a fork? Given that it turns out we don't need to patch anything within the action?
I understand we get some stability guarantees from forking it and referencing a version we control, but we also forgo maintenance from the authors (until we check and sync our fork manually)

It's a supply chain concern. By referencing a (mutable) tag from a repo, we lose the ability to validate upstream code changes, know when things have changed, or know if the author suddenly made the repro private or deleted.


2021-12-07 GUARD-2226 ChannelAdvisor-Service-Not-Responding-SOAP-Fix

Channel Advisor SOAP implements the SOAP Client for http interactions and has event handlers (Opening, Opened, Closing, Closed, Faulted) that update the LastNetworkActivityTime.
I found out that for loop http requests (for example when calling soapClient.DoesSkuExistList inside foreach in the DoSkusExist method), the update actually happens only once during the first iteration and does not work further.
I don't think we can do anything about it other than slightly change the implementation and update LastNetworkActivityTime manually before and after the call and on error (as it was implemented for Channel Advisor REST services).

@maxim-saltanov-skuvault
Does the inherited ServiceBaseAbstr provide the manual updates to _LastNetworkActivityTime  you are referring to or is this PR just the removing of the RefreshLastNetworkActivityTime and TrackSoapClientNetworkActivity methods from the SOAP client?

@maxim-saltanov-skuvault
Does the inherited ServiceBaseAbstr provide the manual updates to _LastNetworkActivityTime you are referring to or is this PR just the removing of the RefreshLastNetworkActivityTime and TrackSoapClientNetworkActivity methods from the SOAP client?

It implements manual updates to LastNetworkActivityTime in the services methods and removal of TrackSoapClientNetworkActivity from SOAP clients.

@maxim-saltanov-skuvault
Does the inherited ServiceBaseAbstr provide the manual updates to _LastNetworkActivityTime you are referring to or is this PR just the removing of the RefreshLastNetworkActivityTime and TrackSoapClientNetworkActivity methods from the SOAP client?

@nathan-skuvault
It implements manual updates to LastNetworkActivityTime in the services methods and removal of TrackSoapClientNetworkActivity from SOAP clients.

@maxim-saltanov-skuvault , In addition to the inline comment, I have these overall questions:

After these changes do we still log LastNetworkActivityTime? Perhaps using AdditionalLogInfo. Can't tell after a brief look.

@maxim-skuvault yes, as I remember we log this date exactly there

You might be already aware of this. Since there's a pending VT-5350 PR here, when we deploy this to QA we'll need to include the VT-5350 changes, but this release branch is good. Don't pull VT-5350 changes into this release branch since we'll be releasing without VT-5350 changes. There's a thread somewhere on Slack.

@maxim-skuvault yes, sure, I remember about it, thanks for remind


Haskell in ES6: Part 1

Originally posted 2015-11-12.
This post is the first in a series that will be dedicated to implementating native versions of Haskell functions according to JavaScript ES6 standards. Full source can be found in this GitHub repo. You are more than welcome to contribute!
ƒ.comp

Function composition.

(.) :: (b -> c) -> (a -> b) -> a -> c

/**
 * Function composition
 * @param ...fs functions to compose
 * @return composed function
 **/
export function comp (...fs) {
  return (v, ...args) =>
    fs.reduceRight(
      (g, f) => f(g, ...args), v
    );
}

Examples
var add = x => x + x,
    pow = x => x * x,
    inv = x => 1 / x;

var comp = ƒ.comp(add, pow, inv);

comp(1); // => 2
/**
 * Explained:
 * 1) inv 1 / 1 => 1
 * 2) pow 1 * 1 => 1
 * 3) add 1 + 1 => 2
 **/

comp(4); // => 1/8

ƒ.flip

flip f takes its (first) two arguments in the reverse order of f.

flip :: (a -> b -> c) -> b -> a -> c

/**
 * Flip function arguments
 * @param f function to flip
 * @return f applied with args in reverse order
 **/
export function flip (f) {
  return (a, b, ...args) =>
    f(b, a, ...args);
}

Examples
var add = (a, b) => a / b,
    three = (a, b, c) => [a, b, c],
    flip = ƒ.flip(add);

flip(10, 5); // => 1/2
flip(1, 10); // => 10

flip = ƒ.flip(three);
flip(1, 2, 3); // => [2, 1, 3]

ƒ.until

until p f yields the result of applying f until p holds.

until :: (a -> Bool) -> (a -> a) -> a -> a

/**
 * Applies a function which is passed as the second argument to
 * the third argument and it comapares the result with the condition,
 * if the condition evaluates to true, it prints the result, if not,
 * it passes the result to the function and repeats the cycle as long
 * as the condition is matched
 * @param condition condition to be applied to f
 * @param f function to match against
 * @return result if condition is true else repeat cycle
 **/
export function until (condition, f) {
  return (...args) => {
    var r = f(...args);
    return condition(r) ? r : until(condition, f)(r);
  };
}

Examples
var condition = x => x > 100,
    inc = x => x + 1,
    until = ƒ.until(condition, inc);

until(0); // => 101

condition = x => x === 5;
until = ƒ.until(condition, inc);

until(3); // => 5

List operations

head extracts the first element of a list, which must be non-empty.
last extracts the last element of a list, which must be finite and non-empty.
tail extracts the elements after the head of a list, which must be non-empty.
init returns all the elements of a list except the last one. The list must be non-empty.

head :: [a] -> a
last :: [a] -> a
tail :: [a] -> [a]
init :: [a] -> [a]

export function head (xs) { return xs[0]; }
export function last (xs) { return xs[xs.length - 1]; }
export function tail (xs) { return xs.slice(1); }
export function init (xs) { return xs.slice(0, -1); }

Examples
ƒ.head([5, 27, 3, 1]); // => 5
ƒ.last([5, 27, 3, 1]); // => 1
ƒ.tail([5, 27, 3, 1]); // => [27, 3, 1]
ƒ.init([5, 27, 3, 1]); // => [5, 27, 3]

Special folds

concat yields the concatenation of all the elements of a container of lists.
concatMap maps a function over all the elements of a container and concatenate the resulting lists.

concat :: Foldable t => t [a] -> [a]
concatMap :: Foldable t => (a -> [b]) -> t a -> [b]

export function concat (...xs) {
  return xs.reduce(
    (a, b) => a.concat(b)
  );
}

export function concatMap (f, ...xs) {
  return concat(xs.map(f));
}

Examples
ƒ.concat([5], [27], [3]); // => [5, 27, 3]
ƒ.concatMap(x => 'hi ' + x, 1, [[2]], 3); // => ['hi 1', 'hi 2', 'hi 3']

ƒ.zip and ƒ.zipWith

zip takes two lists and returns a list of corresponding pairs. If one input list is short, excess elements of the longer list are discarded."
zipWith generalises zip by zipping with the function given as the first argument, instead of a tupling function. For example, zipWith (+) is applied to two lists to produce the list of corresponding sums."

zip :: [a] -> [b] -> [(a, b)]
zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]

/**
 * Zip two arrays into a list of n-ples
 * @param ...xs arrays to zip
 * @return a list of of n-ples
 **/
export function zip (...xs) {
  var r = [],
      nple = [],
      length = Math.min(null, ...xs.map(x => x.length));

  for (var i = 0; i < length; i++) {
    xs.forEach(
      x => nple.push(x[i])
    );

    r.push(nple);
    nple = [];
  }

  return r;
}

/**
 * Generalises zip by zipping with the function given
 * as the first argument, instead of a tupling function.
 * @param op function to zip with
 * @param ...xs arrays to zip
 * @return array zipped with the op function
 **/
export function zipWith (op, ...xs) {
  zip(...xs).map(
    (x) => x.reduce(op)
  );
}

Examples
var a = [0, 1, 2],
    b = [3, 4, 5],
    c = [6, 7, 8];

ƒ.zip(a, b); // => [[0, 3], [1, 4], [2, 5]]
ƒ.zipWith((a, b) => a + b, a, b, c); // => [9, 12, 15]

mistake in zip function:
export function zip (...xs) {
  var r = [],
      nple = [],
      // should be: length = Math.min(...xs.map(x => x.length))
      // or: length = Math.min.call(null, ...xs.map(x => x.length))
      length = Math.min(null, ...xs.map(x => x.length));

  for (var i = 0; i < length; i++) {
    xs.forEach(
      x => nple.push(x[i])
    );

    r.push(nple);
    nple = [];
  }

  return r;
}

Thanks, fixed!


Tileset editor decompile

Decompile support for the tileset field editor. Marking as draft because I need to confirm what the  block is going to look like.
It works by using the //% blockIdentity="" annotation. Because of that, I had to tweak the emitting for the tileset to add that comment annotation to all the user tiles. I'll also have another PR that does the same for pxt-arcade and all of the gallery tiles (hence the change to pxt buildsprites)

Here's the relevant PR in arcade: https://github.com/microsoft/pxt-arcade/pull/1534


feat: add test OTP support for mobile app reviews

When developers build mobile apps that use phone login, they need to provide pre-determined phone numbers and OTPs that will work so that automated and manual app reviewers (that work at Apple's AppStore or Google's Play Store) can test and confirm compliance with the phone system.
Those reviewers / systems cannot be expected to provide their own phone number.
Developers can thus set up the following environment variable:
GOTRUE_EXTERNAL_SMS_TEST_OTP="<phone-1>=<otp-1>, <phone-2>=<otp-2>..."
GOTRUE_EXTERNAL_SMS_TEST_OTP_VALID_UNTIL="<ISO date time>"

SMS messages are not sent to those test phone numbers. Furthermore after the validity period has expired, they will automatically not be used. This enhances the security so that people don't forget test OTPs accidentally.
Incidentally this makes it possible to use phone number logins when developing locally.

I will be very happy to see this soon available. Any progress on it?

I will be very happy to see this soon available. Any progress on it?

Got held up with some other work, but am going to continue working on it.

This is an awesome feature! I'm glad it's almost ready to go!
How long will it take for the changes to be available once the code has been merged?

@kdewald - generally a version update happens within two weeks or less

How can we use it, do we wait the supabase-cli to be updated or we can overwrite versions?

@azlekov the CLI is usually updated around the same time as Supabase Auth. We'd advise against overwriting the version unless absolutely necessary as you may get different behaviour from what you will get from your hosted Supabase instance.

Just a follow-up question on this topic. Is there an expected timeline for this feature to be available in https://github.com/supabase/supabase? It doesn't have to be very precise, but I would like to plan accordingly if possible.
Thanks!

PR for Supabase Dashboard: https://github.com/supabase/supabase/pull/16811

@hf It seems that there's a bug that's happening to multiple users around this feature: https://github.com/supabase/supabase/pull/16811#issuecomment-1710555306


Add security policy

Using the following guide, please add a security policy to the repository.
https://docs.github.com/en/code-security/getting-started/adding-a-security-policy-to-your-repository

Security policy added here.


Remove log statements in addons/adyen.cardtype.js

We use this part of the library to identify card types, and the logspam caused by console.log inside there is an irritation. Can we please take them out?

Yes. Makes sense. Will do this in the next iteration.

Hi
Are you talking about thoses logs ?

Yes it should be removed as soon as possible since it appears in production.
Any updates about when it will be shipped ?
Best regards

Hi
Any updates about when it will be shipped ?
Best regards

Hi
Any updates about when it will be shipped ?
Best regards


fix(event_handler): CORS Behaviour changes

Issue number: #4589
Summary
Ensures CORS behaviour is correct.
Changes

Please provide a summary of what's being changed

Scenario
Old Behaviour
New Behaviour

Default/Empty CORSConfig
Sets Origin header as ACA-Origin regardless
Returns *, disables ACA-Credentials

CORSConfig has allowed_origins
Sets Origin header as ACA-Origin regardless
Returns correct origin for ACA-Origin

CORSConfig is set with domains and * in allowed_origins
Sets Origin header as ACA-Origin regardless
If no matching Origin is found, it will return * and disables ACA-Credentials

The disabling of Access-Control-Allow-Credentials to prevent server-side credentials being returned to non-named origins.
User experience

Please share what the user experience looks like before and after this change

Checklist
If your change doesn't seem to apply, please leave them unchecked.

[X] Meet tenets criteria
[X] I have performed a self-review of this change
[X] Changes have been tested
[X] Changes are documented
[X] PR title follows conventional commit semantics

Is this a breaking change?
RFC issue number:
Checklist:

[ ] Migration process documented
[ ] Implement warnings (if it can live side by side)

Acknowledgment
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

Starting the review.


feat(terraformrun): passing extra args to init plan and appy cmd

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 35.71429% with 18 lines in your changes missing coverage. Please review.

Project coverage is 50.89%. Comparing base (d1a7ba6) to head (5fab275).

Files with missing lines
Patch %
Lines

internal/controllers/terraformrun/pod.go
0.00%
15 Missing and 3 partials :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #417      +/-   ##
==========================================
- Coverage   50.99%   50.89%   -0.10%
==========================================
  Files          73       73
  Lines        4334     4362      +28
==========================================
+ Hits         2210     2220      +10
- Misses       1935     1950      +15
- Partials      189      192       +3

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


IncompatibleClassChangeError

When running the first espresso test from step 7 i got this error:
java.lang.IncompatibleClassChangeError: com.example.android.testing.notes.notes.NotesActivity
the only way i was able to fix it was to include in the gradle file:
androidTestCompile ("com.android.support.test.espresso:espresso-contrib:$rootProject.ext.espressoVersion") {
exclude group: 'com.android.support', module: 'appcompat'
exclude group: 'com.android.support', module: 'support-v4'
exclude module: 'recyclerview-v7'
}
Am i doing something wrong?
Btw, great codelab :)

Thanks, no you don't i committed a fix to the master branch yesterday to fix this until a tools bug is resolved! I will cherry pick the master changes into the step branches today or tomorrow. I update this issue once that's done...

This was fixed in the codelab for 1.5. But the ultimate fix for correct handling of transitive deps in the Gradle Android Plugin directly was released in version 2.0.0-alpha1


ValidatorServiceProvider using deprecated classes

"Deprecated: The Symfony\Component\Validator\Validator class is deprecated since version 2.5 and will be removed in 3.0. Use the Symfony\Component\Validator\Validator\RecursiveValidator class instead. in /.../vendor/symfony/validator/Symfony/Component/Validator/Validator.php on line 14"

Fixed in the 1.3 branch.


fix(vscode-extension): improve console output when tsp-server not found

print more messages when resolving tsp-server executable
improve configuration setting description

fix #5080

All changed packages have been documented.

:white_check_mark: typespec-vscode

Show changes
typespec-vscode - fix ✏

improve console output when tsp-server not found

logger.debug will only print messages when you debug an extension. So any info which users may be interested at should be printed using logger.info and above
improve the configuration setting description to be aligned with the latest behavior

You can try these changes here

🛝 Playground
🌐 Website
📚 Next docs
🛝 VSCode Extension


Simplify the conversion of repeated meshes into instances

After culling, Godot groups together objects that use the same mesh(?) and fuses them into a single instanced draw call. The first object in the group is rendered with the draw call, and the rest are skipped.
Previously, this skipping was accomplished by shifting around a loop index. This PR changes it to a more standard if (...) {continue;}, making it more multithreading-friendly (note that multithreaded rendering is currently disabled, likely due to bugs).
Passes the regression test here: https://github.com/godotengine/godot-benchmarks/issues/34
Not tested on https://github.com/Calinou/godot-rendering-tests

Why close?


[StyleCop] Fix all the warnings in the AI.Luis.Tests project

Reorder methods and fields
Create new file for a class
Add trailing comma
Remove spaces

Promoted to MS # 1427


Replace assertUnreachable with fail

assertUnreachable was removed in https://github.com/IronLanguages/ironpython3/pull/561 and should be replaced with fail in tests.

I'm trying to work on this issue and I'm wondering if using Tests/run.py is still the preferred way to run the python tests under Tests? If not, what is the preferred way to test this issue to see if I got it working?

Preferred way to run all tests is via pwsh make.ps1 test-all. You can also run a specific test with test-something. Although this one is kind of hard to test since by definition the code should be unreachable. :smile:


dspace handle matcher

Coverage increased (+0.006%) to 95.324% when pulling d07494ed5094fcab8023bac4890f49b9f08fe01f on dspace-handle-matcher into ca6ef02791c96d7b44023d8a41fae176f2dd2ada on master.


Make item upgrades have an adaptive sprite

By editing the global section from DATAS.BIN loaded on boot inside the RAM, we can dynamically change the sprite of an item. It would be interesting to incorporate inside func_alter_item_id instructions setting the sprite pointer value for that item upgrade.
It would basically do the same iterative process to find tier+2 instead of tier+1, and set the sprite for that item upgrade to this new item's sprite.

As suggested by Spiriax, it would also be cool to have the corresponding item name being displayed instead of having "X upgrade" displayed.


Inconsistent state in mapMutationsToProps

Originally posted by @deoqc on apollo-client:

I am using redux-form and have 2 forms (lets say FormA and FormB, 'living' in state.form.FormA and state.form.FormB).
The problem is that FormB is not always showing in the state when using mapMutationsToProps, but it is correct in mapStateToProps or in the store (as shown by devtools).

To be more precise, my code is something like this:
const mapMutationsToProps = ({ state }) => ({
  onMutation: () => ({
    mutation: `
      mutation myAwesomeMutation (
        $formKeys: String!
      ) {
        awesomeMutation(
          formKeys: $formKeys
        ) {
          passThroughtInput
        }
      }
    `,
    variables: {
      formKeys: JSON.stringify(Object.keys(state.form)),
    },
  })
});

and the mutation only returns the same input (passThroughtInput === formKeys)
To check, I also have the following:
const mapStateToProps = (state) => ({
  formKeys: JSON.stringify(Object.keys(state.form)),
});

The callback to the onMutation prints the results on console, and the formKeys is in a Text tag on screen, and also using devtools (so I compare the 3).
As said before, mapStateToProps and store devtools are correct. Mutation is missing (at least most of the time) the state.FormB key (but showing state.FormA).
If you guys don't have any clues, I can try to do a reproducible repo.

@stubailo @deoqc This happens because mapMutationsToProps is called on render of the child component, but is not called on subsequent state changes. I'll work on updating it to support state changes to rebuild the mutation action.
Will let you know when it is improved!

Hmm, perhaps we could instead just use the current store state? Rather than initializing a function that includes the state?

@stubailo we could pass a method to get the state which would give more dynamic options:
Option 1
const mapMutationsToProps = ({ getState }) => ({
  onMutation: () => ({
    mutation: `
      mutation myAwesomeMutation (
        $formKeys: String!
      ) {
        awesomeMutation(
          formKeys: $formKeys
        ) {
          passThroughtInput
        }
      }
    `,
    variables: {
      formKeys: JSON.stringify(Object.keys(getState().form)),
    },
  })
});

Option 2
const mapMutationsToProps = ({ getState }) => {
  const state = getState()
  if (state.boolValue) {
   return { // other mutation }
  }
 return {
  onMutation: () => ({
    mutation: `
      mutation myAwesomeMutation (
        $formKeys: String!
      ) {
        awesomeMutation(
          formKeys: $formKeys
        ) {
          passThroughtInput
        }
      }
    `,
    variables: {
      formKeys: JSON.stringify(Object.keys(getState().form)),
    },
  })
 }
};

Hmm, this seems a bit odd and kinda encourages people to start doing interesting stuff with getState which ruins the "declarative-ness" of the current API. Perhaps we should just rebuild the mutations.

@jbaxleyiii I can think in some use cases - like signup vs login w/ username vs login w/ email - that I would be tempted to put the logic there like the Option 2. But I think should be better to just have a function that do these logic and call the correct static mutation.
@stubailo Vote for keeping the initial proposed API mapMutationsToProps = ({ state, ownProps, ...}) but with the current state for sure.
Also, the getState or state discussion should be orthogonal w/ having a dynamic mutation like Option 2, no?

@deoqc what are your thoughts around #51?


Maximum Context length Surpassed while using Sequential Planner

Describe the bug
We are trying to create an Azure DevOps connector using Azure DevOps's openapi.json specification file. I keep running into context length exceeded errors. Is this because the openapi.json file is too big? or has too many functions within it?
How can I go about reducing the context length for the sequential planner? Is there a way to make sure we don't surpass the context length when importing openapi json files?
Does this mean that the more skills I import / register, the more I'm going to see this error?
Appreciate the help!
Something went wrong while rendering the semantic function or while executing the text completion. Function: SequentialPlanner_Excluded.funcb8f56bd3dfa84937821f8793cd3d222e. Error: Invalid request: The request is not valid, HTTP status: 400. Details: This model's maximum context length is 8192 tokens. However, your messages resulted in 8282 tokens. Please reduce the length of the messages.
[2023-07-04T00:01:43.744Z] Status: 400 (model_error)
[2023-07-04T00:01:43.746Z] ErrorCode: context_length_exceeded
[2023-07-04T00:01:43.748Z]
[2023-07-04T00:01:43.755Z] Content:
[2023-07-04T00:01:43.758Z] {
  "error": {
    "message": "This model's maximum context length is 8192 tokens. However, your messages resulted in 8282 tokens. Please reduce the length of the messages.",
    "type": "invalid_request_error",
    "param": "messages",
    "code": "context_length_exceeded"
  }
}

To Reproduce
Steps to reproduce the behavior:

Import an openapi.json specification file for azure devops - Azure DevOps WorkItemTracking openapi.json spec file
Create a sequential planner along with a few other skills.
 var plan = await planner.CreatePlanAsync(goal); will throw the below errors and result in a plan with 0 steps.

Screenshots
If applicable, add screenshots to help explain your problem.

Expected behavior
A plan is created using the available skills.
Note: I have been able to create a plan, but it intermittently works. Most of the time, it fails with the context length exceeded error.
**Desktop (please complete the following information): **

OS: Windows
IDE:Visual Studio
NuGet Package Version - 0.16.230615.1-preview, 0.17.230629.1-preview

Additional context
WIthout the openapi spec file, the planner works fine. So it seems that the ADO openapi skill is the culprit. I have tried to reduce the number of functions from the openapi file, it still throws the error. I even trimmed the file down to the one API I need, it still threw. So I am now very confused about what is causing this error.

Thanks @evchaki . Please let us know when the blog is posted. Thanks!

Hey @animeshj9 ,
To adjust the MaxTokens allowed, you can make use of the SequentialPlannerConfig. The default value is set to 1024. If you reduce this value, you might achieve workable plans. For guidance on overriding this value, take a look at the EmailSample and other examples.
Here's an example of how to set MaxTokens:
planner = new SequentialPlanner(kernel, new SequentialPlannerConfig { MaxTokens = maxTokens });

Furthermore, if you're interested, we have a blog post that discusses utilizing a memory store to filter and limit the functions accessible to the planner. You can find it here: Semantic Kernel Planners: Sequential Planner.
For leveraging memory and embeddings to identify pertinent skills within the planner, it's important to set the 'Memory' property in the planner configuration. Here's an example of how to do it:
// IMPORTANT: To use memory and embeddings to find relevant skills in the planner, set the 'Memory' property on the planner config.
var planner = new SequentialPlanner(kernel, new SequentialPlannerConfig { RelevancyThreshold = 0.5, Memory = kernel.Memory });

Feel free to explore these options and let us know if you have any further questions or need assistance.

Closing issue as designed.

Closing as designed.


[feat] Implement the functionality of _checkOnlyProfileOwner

Down below is the function that is to be implemented in the contract but in cairo.
https://github.com/allo-protocol/allo-v2/blob/4dd0ea34a504a16ac90e80f49a5570b8be9b30e9/contracts/core/Registry.sol#L331
Resources :
https://book.cairo-lang.org/title-page.html
https://book.cairo-lang.org/ch16-02-00-composability-and-components.html?highlight=assert#example-an-ownable-component
If you have any doubts over on how to implement something similar to this you can try discovering few cairo code bases such as :
Unruggable memecoin : https://github.com/keep-starknet-strange/unruggable.meme/tree/main/packages/contracts/src
Blobstream : https://github.com/keep-starknet-strange/blobstream-starknet/tree/main/src
Exclusively for Starknet India team - To onboard new devs from India
Estimated Time taken to complete - 2-3 days (Max)

I would like to take this issue.

Sorry @AkankshaAttavar , this issue is no longer needed or valid.


Help message about --contract-name of etherscan_verify script is out of date

Currently seven names are accepted, not just three that are currently documented.
   help='Contract name. Options: EndpointRegistry | SecretRegistry | TokenNetworkRegistry',

Probably it makes sense to define a list of all contract names once and generate this string out of that list.

Note: now the same file has a list of all relevant contract names.


Potential bug: Car polling conflicts with car scheduled charging

I'm not sure if this is a bug, but if it is it may be worth considering what we can do to avoid it.
In the past couple of weeks I've been noticing that the car starts charging as soon as I connect the plug of my EVSE instead of respecting whatever it is configured in the app.
Example:

In the MG app I configure scheduled charging from 22:00 until 06:00
I get home at 18:16:00
The gateway detects that the charger was plugged in at 18:17:11
The gateway detects that the car starts charging at 18:19:29 (instead of waiting until 22:00)

Looking at the gateway logs I see:
2023-07-29 16:15:35,248 Updating vehicle status
2023-07-29 16:15:51,556 Updating charging status

(1) Car gets parked and charger is physically connected
2023-07-29 16:16:38,594 Updating vehicle status
2023-07-29 16:16:54,959 Updating charging status

(2) Here the gateway detects the charger being plugged in, but  the battery is not yet charging
2023-07-29 16:19:12,480 Updating vehicle status
2023-07-29 16:19:29,475 Updating charging status

(3) Here the gateway detects that the car is charging
I have a feeling that the polling that happened between (1) and (2) was the trigger for the car to start charging

Confirmed by using the official MG App by another user:
"If I set the scheduled recharge I no longer have to open the App from the phone, if I open the app the car wakes up and the recharge starts I tried several times and it always did this"
This is quite serious and worth discussing @tosate

That means as soon as the gateway detects the scheduled charging, it should not request the status until the charging time window starts?
Polling the messages does not wake-up the car.
What about requesting the scheduled charging? Does this information originates from the car or from the server? Probably from the server, right?
So maybe this is how it works. You schedule the charging and the server triggers it by waking up the car.

Unfortunately it's all car-side. I've done a couple of tests and managed to reproduce it only if:

The charger is connected
The car is not running
The car is queried a couple of times
There's no delay between car state and charge state queries (the two API calls we do at every poll)

My bet is that this is either a race condition inside the BMS/OBC (It gets confused about the time?) or it is done on purpose when it notices a low enough level on the 12V volt battery.
I had the second happen by mistake (I had an infinite loop in my code) and the BMS started charging the 12V battery as soon as it got below 12.4V

Looking at the charts of the past month I'm going to exclude the 12V battery being too low.
Looking at what the car does, the refresh of the car state wakes up a lot of systems, while the refresh of the charging state seems to do almost nothing.
Given we can detect if the car is charging just by looking at the current flow (A) I'll test-drive a new version that only refreshes that

That means we try the following:

We query the vehicle state only after receiving a motor start notification
As soon as we detect that the engine is not running we query the charging state only

Would this work?

Okay, my mistake. We don't read the scheduled charging from the server, we learn about it because the user configures it through the MQTT gateway.

That means we try the following:

We query the vehicle state only after receiving a motor start notification
As soon as we detect that the engine is not running we query the charging state only

Would this work?

I think so, that should minimize the number of systems that gets woken up when the car is off. Incidentally, the scheduled charging info is provided by the same api call

We can either use this to detect if the car is charging:
charge_status.charging_gun_state and charge_mgmt_data.get_current() < 0
or we can study what chargingType does. Right now:

0/1 is probably not charging
3 is probably driving
6 I've seen it during AC charging (both single phase and 3-phase)
7 I've seen it during DC fast charging

I could imagine

0: not charging, not plugged-in
1: not charging, plugged-in
3: driving
6: slow charging
7: fast charging

Do you save the history of the MQTT topics? While MQTT browser is running on my laptop, it saves the history for each topic. But this history is gone after closing the application. Does your MQTT server store the history?

I think this could be done with HA even for values within a JSON value

I could imagine

0: not charging, not plugged-in
1: not charging, plugged-in
3: driving
6: slow charging
7: fast charging

Do you save the history of the MQTT topics? While MQTT browser is running on my laptop, it saves the history for each topic. But this history is gone after closing the application. Does your MQTT server store the history?

I dump almost everything into influxdb using telegraf:
# INPUT PLUGINS
[[inputs.mqtt_consumer]]
    servers = ["tcp://mqtt-mosquitto:1883"]
    username = "$MQTT_USERNAME"
    password = "$MQTT_PASSWORD"

    persistent_session = true
    client_id = "telegraf-saic"
    qos = 1

    data_format = "csv"
    csv_column_names = ["value"]
    csv_header_row_count = 0

    topics = [
      "saic/+/vehicles/+/#",
      "saic/+/bms/#",

    ]
    topic_tag = ""
    [[inputs.mqtt_consumer.topic_parsing]]
        topic = "saic/+/vehicles/+/+/+"
        measurement = "_/_/_/_/measurement/_"
        tags = "_/_/_/vin/_/field_name"

    [[inputs.mqtt_consumer.topic_parsing]]
        topic = "saic/+/bms/+"
        measurement = "_/_/measurement/_"
        tags = "_/vin/_/field_name"

[[processors.starlark]]
  source = '''
def apply(metric):
  if 'field_name' in metric.tags:
    metric.fields[str(metric.tags['field_name'])] = metric.fields['value']
    metric.fields.pop('value',None)
    metric.tags.pop('field_name', None)
  return metric

It took me the entire day to set this up, but I think it's working now.
The configuration above does not store the JSON requests and responses.
I think it would not capture the chargingType value.
How do you access or visualize the data? Are you using Grafana?
I have just send some queries with postman.

chargingType is exposed by itself in its own topic, so you should have it (I do).

I use the influxdb UI itself, it's pretty basic but it gets the job done for simple analysis like this

I have modified the refresh so that it queries the charging status only during charging. You can find this in the branch no-vehicle-state-while-charging. With this modification, I have also moved ABRP into the MQTT gateway.
I am not sure if requesting the charging status only minimizes the number of systems that get woken up when the car is off. The display still turns on during refresh.

I have modified the refresh so that it queries the charging status only during charging. You can find this in the branch no-vehicle-state-while-charging. With this modification, I have also moved ABRP into the MQTT gateway.
I am not sure if requesting the charging status only minimizes the number of systems that get woken up when the car is off. The display still turns on during refresh.

I think this causes issues if we start e.g. the A/C while the car is charging. Then the car state won't be refreshed and we won't get any info about the A/C state. The same goes for the internal car temp (if I want to check the interior temp)

Okay, this is why you did not implement this yet ;-)
I just wanted to try it out. Maybe I will take over the ABRP part into the 0.4.-rc branch. But this has to wait until my holidays are over.


magic mirror - add metrics to time the compare algorithm

https://github.com/stolostron/config-policy-controller/issues/340

/retest

/retest

That only works for Prow. You'll need to relaunch it using the GitHub UI.


Delete layout for inventory setups

Sometimes I've significantly changed a setup and would like to redo the layout. Especially with duplicates this can be quite annoying currently.
For normal bank tabs you can simply delete the layout and re-enable it to get a clean start. I seem unable to do this with inventory setups. Even if you delete the inventory setup and then re-create it with the same name, the layout is remembered.
I would like it if there was some way to delete a layout for an inventory setup. Perhaps an entry on the auto-layout button right click menu for "reset layout"?

I can see how this would be useful. The inventory setups integration does have some weak points, since I don't use inventory setups and don't run into these issues XD.
I think the best way to do this would be somehow through auto-layout, e.g. have a dropdown menu that lets you pick zigzag/preset/reset. Plus, the auto-layout confirmation interface would keep people from accidentally deleting their layouts with a misclick.

This would be great. Is there a way to manually delete the layouts (as in, go to file, press delete)?


add helium floating brower

Closing in favour of https://github.com/caskroom/homebrew-cask/pull/10598.
Please read the cask token reference. Casks need to follow a specific name pattern, to avoid duplicates.


Validation on form submit only

Is there a way to disable validation on field blur?

No, that's literally how the plugin works.


Option to Disable the Splash Screen.

What feature do you want to get added on the base engine?
I know this could be hassle-free by pressing enter, but how about it becomes MORE hassle-free by an option in the options menu somewhere, so for every bootup, the startup state will automatically skip to the title screen, unless the option is set to false.
the option concept is somewhat like this:

To test your sight, and reliability, please select the option of what should NOT be requested.
Stage Editor and 6K+ support.

sure I can do that

thank you! @moxie-coder

thank you! @moxie-coder

np


Doesn't auto-install direnv if asdf is already installed

I have asdf installed, but not direnv and I get:
unknown command: direnv. Perhaps you have to reshim?

I ran into the same issue

I don't use this anymore, but I'd be happy to merge this PR for you!

@redxtech that would be great!


Path to deprecation for loading revocation actions as Python modules

As discussed with @THS-on and @mpeters , there is not an advantage of running revocation actions as Python modules, and it would be better to directly execute both Python and non-Python scripts. However, the code running revocation actions this way cannot be immediately changed, because it would break existing revocation actions that are already in use.
Unless there are objections, I propose the following steps:

Put a deprecation warning on running rev actions as Python modules for at least one major version
After the warning has been in place for at least one major version, remove this method of running the revocation actions

Not stale :)

We now removed the Python agent, so I'm closing this.


Dev 0.5.1

Codecov Report

Merging #30 (6d25899) into master (32835b1) will not change coverage.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##           master      #30   +/-   ##
=======================================
  Coverage   94.20%   94.20%
=======================================
  Files          15       15
  Lines        1675     1675
=======================================
  Hits         1578     1578
  Misses         97       97

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


For some feeds, no items are recognised

For some RSS feeds, no items are recognised (after refreshing, the unread articles count remains at 0/0).
One such feed is the table of contents for the SIAM Review:
http://epubs.siam.org/action/showFeed?jc=siread&type=etoc&feed=rss
The W3C Feed Validation Service reports that it is a valid RSS feed:
https://validator.w3.org/feed/check.cgi?url=http%3A%2F%2Fepubs.siam.org%2Faction%2FshowFeed%3Fjc%3Dsiread%26type%3Detoc%26feed%3Drss
I can work-around the problem by using an Atom feed with the same content, but the inability to read some feeds is annoying.
I am using 1.1.8, but the bug was also present in the previous stable release.

Starting with 1.1.8 the linked feed should work.
Using the latest development version, I do get 40 unread articles when adding the feed.
Since the feed/site doesn't publish articles regularly, I guess your issue is a dup of https://github.com/miniflux/miniflux/issues/397.

I just tried adding the RSS feed again, and this time new aricles were recognised.
Since these are dated 5th Nov (yesterday), they should have been there when I tried a few hours ago, so I don't think the problem is a dup of #397.
However, since I can no longer reproduce the problem I'll close the issue.


[Concurrency] NFC: Switch tests to use -strict-concurrency=complete…

… instead of -warn-concurrency
-warn-concurrency is outdated. We still need to update swift-ide-test to recognize the new flag.

@swift-ci please test


Bug in EncryptionProvider

It is possible to create new ciphertexts which decrypt properly by shifting some chiphertext into IV field.
original

{ iv: '5QvWn2kaNqXWQSxyV+QTtQ==',
  value: 'HdUgjzuah7ustqD7MvfUd1QfrorhhUI2eoX86amemME=',
  mac: '5405d05343fc98191a136a25575b34a4e818c14d154f8df24b38ed8e305f706b' }

tampered

 { iv: '5QvWn2kaNqXWQSxyV+QTtQ==HdUgjzuah7ustqD7MvfUd',
  value: '1QfrorhhUI2eoX86amemME=',
  mac: '5405d05343fc98191a136a25575b34a4e818c14d154f8df24b38ed8e305f706b' }

Either validate IV properly before continuing (buf = Buffer.from(iv, 'base64')).length === 16 && buf.toString('base64') === iv or better add IV as first block of value (payload.value = IV || CT) and handle decryption accordingly.

Hey @slicklash !
Could you please write a payload that I can try on my own machine?
Thanks.

const Encryption = require('./index.js')

const ConfigProvider = { get: (x) => x === 'app.appKey' ? 'mantasmantas1234' : 'aes-128-cbc' }

const oracle = new Encryption(ConfigProvider)

const encode = x => oracle.base64Encode(JSON.stringify(x))

const payloads = [
    {
        iv: '5QvWn2kaNqXWQSxyV+QTtQ==',
        value: 'HdUgjzuah7ustqD7MvfUd1QfrorhhUI2eoX86amemME=',
        mac: '5405d05343fc98191a136a25575b34a4e818c14d154f8df24b38ed8e305f706b'
    },
    {
        iv: '5QvWn2kaNqXWQSxyV+QTtQ==HdUgjzuah7ustqD7MvfUd',
        value: '1QfrorhhUI2eoX86amemME=',
        mac: '5405d05343fc98191a136a25575b34a4e818c14d154f8df24b38ed8e305f706b'
    }
]

payloads.forEach(x => { oracle.decrypt(encode(x)) })

@RomainLanz Are you able to produce a bug?

The issue here is that we are concatenating iv and value to create the hash.
hash (iv, value) {
  return this.hashHmac('sha256', iv + value, this.appKey)
}

So the two payloads provided by @slicklash will be the same after the concatenation.
The encoded iv should have a length of 24 (like every 16 char string compiled to base64).
To prevent a modification of the iv we could add a verification about the length of the encoded iv before the decoding.
if (payload.iv.length !== 24) {
  throw CE.RuntimeException.invalidEncryptionPayload()
}

If you agree with this solution I'll create a PR @thetutlage, @slicklash

@RomainLanz, @thetutlage. It should fail faster. No need to do 3 expensive HMAC operations (getJsonPayload calls validMac). Put the check inside invalidPayload.
invalidPayload (data) {
    return typeof data !== 'object' || typeof data.iv !== 'string' || data.iv.length !== 24 || !data.hasOwnProperty('value') || !data.hasOwnProperty('mac')
}

@slicklash If we put the test in invalidPayload it will fail after mine.
It cannot be before getting the JSONified payload.

Ok, let me create a PR and add a failing test.

@RomainLanz @slicklash Will check it soon.

Changed it a lot in 4.0, if one can share a failing tests for 4.0, I will be happy to consider it


"Rename Profile" crashes the program

Describe the bug
If you select the "Rename Profile" command from the drop-down list, the program crashes.
To Reproduce
Steps to reproduce the behavior:

Download installer/executable for release <IP_ADDRESS>.
Run installer/executable.
Add a new profile.
Restart the program.
Select "Rename Profile" from the drop-down list.

Expected behavior
I expected to be able to rename my profile.
Desktop (please complete the following information):

OS: Windows 11 24H2 (Build 26100.1457)

Additional context
The program doesn't crash right away but only after around three to four seconds. Maybe it's trying to access a file in the background?

Thanks, I'll try and reproduce and will push a fix once done

This is also happening for me. It also applies to the "Duplicate Profile" button, so assume it has something to do with accessing the current profile. Maybe a null reference?

Find the issue, will be pushing a new version shortly

Fixed and pushed, re launch app to update


Explain Execution Plan shows only 4 columns

Description
Trying this feature, I do not get options to choose some other valuable information (time...) such as displayed on the wiki
My view:

Wiki page:
https://dbeaver.com/docs/dbeaver/Query-Execution-Plan/#simple-plan-view
Not sure why.
DBeaver Version
community  <IP_ADDRESS>408181605
Operating System
Windows
Database and driver
MySql
Steps to reproduce
No response
Additional context
No response

Hi, @m3c-ode
Different databases have different number of columns in Execution plan. Mysql has the ones you observe.


Instagram Messages

It won't let me start any conversation

same as #235

Pls read the previous issues before creating new ones.


ARTEMIS-1676 Support overriding of JAVA_ARGS via env variable

I something similar possible for artemis.profile.cmd also?

Yes it's possible. We would need to test it on a windows machine.  That profile is actually structured differently

@mtaylor can you update the Windows artemis.profile.cmd, I can test it on Windows.

closing will reopen with suggestions


RSA

I'd love to see this developed to the point where a song version of RSA encryption would be feasible.

Have you got a link to the algorithm? What is the language missing? I say this as I thought 'There is no random()' but there is enough to build a simple RGN function.

https://gist.github.com/JonCooperWorks/5314103 for example (just the first result I found).
As far as I can tell we're mostly missing string/array operations - how to get each letter of a string, letter to ansi, joining an array to a string.

There seem to be 3 or 4 array proposals. Has anyone implemented one yet?
Once we get arrays we might just be able to use the array manipulation
syntax on strings like python and JavaScript do
On Tue, 18 Sep 2018, 06:38 Marcin Ruszkiewicz<EMAIL_ADDRESS>wrote:

https://gist.github.com/JonCooperWorks/5314103 for example (just the
first result I found).
As far as I can tell we're mostly missing string/array operations - how to
get each letter of a string, letter to ansi, joining an array to a string.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/dylanbeattie/rockstar/issues/7#issuecomment-422261646,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAN_zqrzooWpa0z7QKBoosZlZBvfnT67ks5ucIbbgaJpZM4VZ9Os
.


Requirements

Hi,
Can you please tell what are all the requirements when installing daft. I'm using python 3.9.
The error I am getting while installing is
"ERROR: Could not find a version that satisfies the requirement ray==1.13.0 (from getdaft) (from versions: none)
ERROR: No matching distribution found for ray==1.13.0".

Hi, Thanks for reaching out! The requirements for daft can be found here.
Did you mind sharing how you are installing daft?

Also would be great if you could share your operating system!

Hi,
I am using windows 10.
I am installing daft using "pip install" getdaft command in cmnd prmpt. Is there something i need to install or have on my pc before doing this?

Hi @jagadhees-ravi - it seems that your setup is having trouble finding the version of Ray (which is a dependency of Daft) that satisfies its requirements.
I see that Ray has distributions for Windows but only for Python 3.7 onwards: https://pypi.org/project/ray/1.13.0/#files
What version of Python are you using?

Hi Jaychia, I am using Python 3.10 version. I have installed ray 1.13 also and it's still not working.
Below message is the new error i'm getting now.
"ERROR: Failed building wheel for getdaft
Failed to build getdaft
ERROR: Could not build wheels for getdaft, which is required to install pyproject.toml-based projects"

Hi Jaychia, I am using Python 3.10 version. I have installed ray 1.13 also and it's still not working. Below message is the new error i'm getting now. "ERROR: Failed building wheel for getdaft Failed to build getdaft ERROR: Could not build wheels for getdaft, which is required to install pyproject.toml-based projects"

Thanks @jagadhees-ravi, we have opened an issue #235 to build wheels for Windows so that you won't need to build from source. Your system is likely not equipped for building daft from source and that is why you are having this error. For now, if you have access to a Mac/Linux machine we would suggest that in the meantime.
Will update when ready!

Thanks @jaychia, Hope issue #235 will be resolved in no time.


feat: when scheduler blocks cdn, resource does not initialize cdn

Signed-off-by: Gaius<EMAIL_ADDRESS>
Description

When scheduler blocks cdn, resource does not initialize cdn.

Related Issue

Motivation and Context

Screenshots (if appropriate)
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation Update (if none of the other choices apply)

Checklist

[x] Code compiles correctly.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Codecov Report

Merging #1081 (dfb40b2) into main (4dca630) will decrease coverage by 0.03%.
The diff coverage is 62.50%.

@@            Coverage Diff             @@
##             main    #1081      +/-   ##
==========================================
- Coverage   45.87%   45.84%   -0.04%
==========================================
  Files         129      129
  Lines        9543     9541       -2
==========================================
- Hits         4378     4374       -4
- Misses       4671     4673       +2
  Partials      494      494

Flag
Coverage Δ

Object-compatibility-e2etests
?

e2etests
?

unittests
45.84% <62.50%> (-0.04%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

scheduler/config/config.go
0.00% <0.00%> (ø)

scheduler/resource/resource.go
82.60% <100.00%> (ø)

cdn/supervisor/progress/progress.go
91.04% <0.00%> (-5.98%)
:arrow_down:


Replace lshEncodedFeatures with reducedFeatures

Elasticsearch 8 allows us to run approximate-nearest-neighbour queries on dense vectors directly, with a maximum vector dimensionality of 1024. Previously, we've used locality sensitive hashing as a workaround to make our image feature vectors comparable as text. Knn queries mean that's no longer necessary.
This PR removes the LSH encoding of feature vectors and directly returns a subset of vectors from the feature extractor.

Is this ready for somebody to review?

I think so! @paul-butcher what do you reckon?

The one failing test was caused by a flaky error somewhere inside Docker Compose in the relation embedder tests; I've re-run the test.


Unexpected "Object is possibly undefined" error

Bug Report
Hi, I stumbled upon this weird behavior that I couldn't wrap my head around. I searched with "object is possibly undefined bug typescript github" on Google and went through the first 5-6 bugs but didn't find any which quite resembled this case. I am new to Typescript so it is entirely possible that this is expected behavior. If that's the case I apologize and humbly ask for an explanation. Thanks!

🔎 Search Terms

"Object is possibly undefined"
🕗 Version & Regression Information

This is the behavior in every version I tried, and I reviewed the FAQ for entries about "common-bugs-that-arent-bugs."

⏯ Playground Link

Playground link with relevant code
💻 Code

interface TestInterface {
    optionalParam?: {
        [key: string]: string;
    };
}

const result: TestInterface = {
    optionalParam: {
        Key1: "Value1",
    },
};

result.optionalParam["Key2"] = "Value2"; // 'result.optionalParam' is possibly 'undefined'.

🙁 Actual behavior
'result.optionalParam' is possibly 'undefined' error on the last line.
🙂 Expected behavior
Code compiles without any errors. optionalParam is typed as though it can be undefined however, in the example above result.optionalParam is clearly defined. There is no code in between result initialization and result.optionalParam which could set it to undefined. So, this should've worked I think.

Duplicate of #50357.

Hi Martin, thanks for pointing me to the duplicate. I've read through that and #47920 several times over the past 2 days but I couldn't make sense of it. The discussion at #47920 is unfortunately a bit too complicated for me. Could you please let me know (or point me to) if this functionality should be implemented some other way and/or is this not supported by Typescript yet?
The comment at https://github.com/microsoft/TypeScript/issues/50357#issuecomment-1220602103 says to use -
const anObject: Required<Pick<typeof anotherVar, LongListOfKeys>> = {
  // object initializer with keys from LongListOfKeys
}

But, what are Required and Pick? I didn't get that.


Known limitation for scheduled backups: Need update permissions

To use the BACKUP INTO syntax on scheduled backups, you must have update permissions (in the bucket)
Slack convo
cc: @mwang1026

Is this a known limitation, or just a privileges requirement? That is, does it differ from expected behavior and do we intend to change that behavior?

I think at the time I made this issue, @mwang1026 mentioned it as a known limitation but after re-reading the convo, it seems like this is just a privileges requirement. Michael, can you confirm?

I think it's a privileges requirement, but specifically a storage level requirement rather than a CockroachDB requirement. For example, the IAM user you're using to talk to s3 for your backups must have update to whatever directory you're backing up to.


Laradock - Failed to connect to localhost port 80: Connection refused

I'm using laradock and trying to run php artisan opcache:clear in the workspace container where my projects are located. Any ideas?

You run it from inside laradock ?

Yeah, running it from inside the laradock workspace container.
It also seems to be having issues running on Forge. This is the error:
[Appstract\LushHttp\Exception\LushRequestException]
The requested URL returned error: 404 Not Found

If you have opcache enabled already, then you need to restart nginx. Else try to run composer dump-autoload -o, php artisan clear-compiled, php artisan cache:clear and php artisan optimize

Unfortunately, the results are still the same.
Opcache is enabled and I restarted nginx, as well as ran those commands you mentioned.
php -i | grep "opcache"

/etc/php/7.0/cli/conf.d/10-opcache.ini,
opcache.blacklist_filename => no value => no value
opcache.consistency_checks => 0 => 0
opcache.dups_fix => Off => Off
opcache.enable => On => On
opcache.enable_cli => Off => Off
opcache.enable_file_override => Off => Off
opcache.error_log => no value => no value
opcache.fast_shutdown => 0 => 0
opcache.file_cache => no value => no value
opcache.file_cache_consistency_checks => 1 => 1
opcache.file_cache_only => 0 => 0
opcache.file_update_protection => 2 => 2
opcache.force_restart_timeout => 180 => 180
opcache.huge_code_pages => Off => Off
opcache.inherited_hack => On => On
opcache.interned_strings_buffer => 4 => 4
opcache.lockfile_path => /tmp => /tmp
opcache.log_verbosity_level => 1 => 1
opcache.max_accelerated_files => 2000 => 2000
opcache.max_file_size => 0 => 0
opcache.max_wasted_percentage => 5 => 5
opcache.memory_consumption => 64 => 64
opcache.optimization_level => 0x7FFFBFFF => 0x7FFFBFFF
opcache.preferred_memory_model => no value => no value
opcache.protect_memory => 0 => 0
opcache.restrict_api => no value => no value
opcache.revalidate_freq => 2 => 2
opcache.revalidate_path => Off => Off
opcache.save_comments => 1 => 1
opcache.use_cwd => On => On
opcache.validate_timestamps => On => On

Any ideas?

Do you use config caching or routing caching? Also, can you try the update from yesterday (1.1) ?

I'm using config caching and route caching, which I cleared as well. I also just tried v1.1 and still getting the same "connection refused" error.
Have you (or anyone) tested this inside of a docker container before and it work as expected? The weird part is it's not even working on Laravel Forge.

I have not tested it in Docker, only homestead and Forge without problems. So I can not say something about the connection issue with Docker.
The 404 issue is probably one of the two problems; caching issue or wrong APP_URL.
The command makes a request to <APP_URL>/opcache-api/ it registers the routes so they should be accessible.

Thanks @ovanschie, I got it working in Forge!

What was the problem?

I actually ended up having to restart the php-fpm service (which turns out clears opcache as well).

That is right, good to know it works on Forge now.

In my case, first i clear the cache:
php artisan api:cache

second:
service php7.1-fpm restart

BTW, when you set url in your env file, do not forget the http:// or https:// prefix

Not sure if this helps anyone but for me the issue was on our test server we had an extra forward-slash "/" at the end of the APP_URL
So having APP_URL=https://example.test/ breaks but without the last "/" it doesn't

For anyone who uses Laradock for local development, I fix this problem by changing /etc/hosts of workspace container.
First, use docker ps and find Nginx container ID.
Then run docker inspect NGINX_CONTAINER_ID and find "IPAddress" in output.
 "Networks": {
  "laradock_backend": {
    ...
    "Gateway": "<IP_ADDRESS>",
    "IPAddress": "<IP_ADDRESS>", // THIS
    ...
  }
 }

Enter the workspace container.
docker exec -it WORKSPACE_CONTAINER_ID /bin/bash

Edit /etc/hosts:
vi /etc/hosts
and add your Nginx IP and your website virtual host like this:
x.x.x.x     virtualhost.local

Which in my case was:
<IP_ADDRESS>     site.local


Mention nohash_hasher

nohash_hasher seem to be an interesting replacement for HashMap/HashSet when using integers as keys.

Addressed here. Thank you for the suggestion.

Thank you for adding it.
I have one question: I have read a couple of times that under certain circumstances this the nohash_hasher might be slower than other implementations. However, I have not found any explanations for what those "certain circumstances" may be. Do you have any idea?

It's going to depend on the distribution of your keys, and how likely collisions are. That stackoverflow question has some discussion of this in the comments.


DataGrid checkbox issue

I found that I need to ckick at each cell twice to have possibility to check or uncheck checbox if it not focuesd already. Could it be made that I dont need to focus first and then my click will apply, but check or uncheck with one click?

Yeah...I know about that...I've already a very big fight with the DataGrid trying to get around it...

OK...when I first did the style I really banged my head against that one...but now I've taken a different tack and have got a solution which won't require any user input.  Just got to tidy it up.


improvement QeProcessorImpl#registerQuery should be removed

Proposed changes
QeProcessorImpl#registerQuery should be removed

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall

run buildall


"Skype ビジネスおよびマイクロソフトのチーム" needs to be replaced with "Skype for Business と Microsoft Teams".

https://docs.microsoft.com/en-us/office365/enterprise/managing-office-365-endpoints

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 8762d73c-32fc-a4f9-162a-b81ae4052ea3
Version Independent ID: 554cc99d-b929-8db0-7ab7-0f666438e8cf
Content: Managing Office 365 endpoints
Content Source: Enterprise/managing-office-365-endpoints.md
Service: o365-administration
GitHub Login: @JoeDavies-MSFT
Microsoft Alias: josephd

@hyoshioka0128 - thanks for the feedback, I'll get this over to the Enterprise content team to correct the localization issue.

@hyoshioka0128 Thank you for reporting this issue. However we will not fix the over-translation of Skype for Business and Microsoft Teams at this time. It is a known issue that some of our Product names are being unnecessarily translated by the machine translation tool. We are investigating a tool solution to fix these issues. At this time we can not fix each issue individually.


Create mentor mentee relationship

WHY

Closes #14

WHAT
Implemented Mentor-mentee relationship, still working on a function to retrieve all mentees for a particular mentor. Ensured deletion of a mentor does not affect mentees
TESTING
Postman
Pytest

I was thinking about a way to get all the mentees of a particular mentor, making it easier for each mentor to have access to all their mentees. It will be a simple function that groups all mentees who have a similar mentor_email address linked to their profile and return it as a list.

sounds good! Keep going and let me know if you encounter any challenges.

Instead of just putting the ticket number, put

Closes

Instead of just putting the ticket number, put:

Closes #issue_number

Also make your commit messages more descriptive. "update" is not descriptive enough for a commit message
You could have written "removed column role from model" or something of the sort.

An endpoint to list all mentees of a mentor would be more relevant.

An endpoint to list all mentees of a mentor would be more relevant.

I agree!!

If I get where you are going to should I add actions in the update user method... example of actions are assign mentor, upload picture....etc


Fixed #25788 -- Enabled the cached template loader if debug is False.

https://code.djangoproject.com/ticket/25788
Updated from https://github.com/django/django/pull/6954 to fix tests. A few tests relied on the default loaders and needed to have them specified so the cached loader isn't used instead.

Darn, I noticed GitHub changed the author on the commit when I merged using the green button. Sorry @harrislapiroff!

Great work! Thanks you @harrislapiroff for implementing this :-)


Automatically add 'registered' group to depositors of Default Admin Set

Descriptive summary
targeting v1.0.0
Rationale
We do this in master and should consider backporting this work, else the sharing tab disappears and the relationships tab appears with no values in the Admin Set dropdown.
Expected behavior
Actual behavior
Steps to reproduce the behavior
Related work

Fixed on master in https://github.com/projecthydra-labs/hyrax/pull/717

Fixed by https://github.com/projecthydra-labs/hyrax/pull/887


Build Flutter macOS artifacts with ARM architecture slice

Stop requiring developers to install Rosetta on Apple Silicon, and ship macOS artifacts with both x86_64 and arm64 capabilities.

[ ] idevicesyslog
[ ] idevicescreenshot
[ ] iproxy
[x] https://github.com/flutter/flutter/pull/115042
[x] https://flutter-review.googlesource.com/c/recipes/+/32934
[x] https://github.com/flutter/flutter/issues/106763
[x] https://github.com/flutter/flutter/issues/110227
[x] https://github.com/flutter/flutter/issues/110226
[x] https://github.com/flutter/flutter/issues/109892
[ ] https://github.com/flutter/flutter/issues/101138
[ ] Update website to remove Rosetta setup instructions
[ ] Ask Chromium to remove Rosetta from Mac bots, reverting https://chrome-internal.googlesource.com/infra/puppet/+/6ed442c2c821fb2aeb0bf7f5f367d096b5da391a, see also https://bugs.chromium.org/p/chromium/issues/detail?id=1354817

The autotools ones can do something like (I'm sure this is missing something important):
./autogen.sh CC="xcrun gcc -isysroot /path/to/xcode/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk" \
    CXX="xcrun g++ -isysroot /path/to/xcode/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk" \
    CPPFLAGS="-arch arm64" CFLAGS="-arch arm64" --host arm-apple-darwin

Then lipod together with the x86_64 executables.

hi,I want to help to modify the what you said ./autogen.sh.
But as far as I know, the zip files of show below is download from http://flutter-storage.com/flutter_infra_release/ios-usb-dependencies/XXX/ + XXX.version.  And the zip files is uploaded by googler .What can I do to help fix it ？ And am I commit  a M1 support./autogen.sh to belong repo like autogen.sh directly is ok?

The autotools flags are something like (I'm sure this is missing something important):
./autogen.sh CC="xcrun gcc -isysroot /path/to/xcode/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk" \
    CXX="xcrun g++ -isysroot /path/to/xcode/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk" \
    CPPFLAGS="-arch arm64" CFLAGS="-arch arm64" --host arm-apple-darwin

Then lipod together with the x86_64 executables.

hi,I want to help to modify the what you said ./autogen.sh.
But as far as I know, the zip files of show below is download from http://flutter-storage.com/flutter_infra_release/ios-usb-dependencies/XXX/ + XXX.version. And the zip files is uploaded by googler .What can I do to help fix it ？ And am I commit a M1 support./autogen.sh to belong repo like autogen.sh directly is ok?

I have a question to this. Bought the new Mac M1 Pro, with the expectation of faster unit and widget tests, but actually the tests complete slower on the M1 Pro then on the Mac with Intel i9 2019. Has this something to do that there are still some flutter things running under Rosetta or is it due to the fact that the Intel i9 performs better on multi core? I assume running tests is primarily a multi core operation.

While dart indeed supports arm64, flutter is still shipping the intel version of dart.
https://github.com/flutter/flutter/issues/60118

Ok two followups:

Is this the reason for the performance decrease from Intel to M1 OR is it the slower multi core speed?
When are they planning to include it into Flutter?

I reopened https://github.com/flutter/flutter/issues/86926, you can follow along on shipping the arm dart SDK there.
This issue is only tracking adding the architecture slice for the listed binaries.

I was curious about outstanding offenders and while most are gen_snapshot related there are a handful of others. Looking forward to this being resolved as I'm trying to avoid installing Rosetta on this new machine almost two years post arm64 transition.
find . -type f -exec file -- {} + | grep 'executable x86_64'

Thanks for all of the efforts in this direction!

Hello, I'm a Flutter beginner.
I want to build a macOS Flutter app specifically for the ARM architecture on arm-macos. I don't care about iOS/x64-macos and don't like rosetta.
Are there any workarounds?

+1 seriously, there are no more Intel Macs being made.

+1 still waiting too.

Still require Rosetta.  Is this really complete?

The fix was reverted, reopening https://github.com/flutter/engine/pull/52913

idevicesyslog and idevicescreenshot are barely used and can maybe be deleted?  iproxy is the trickier one since it's still used to forward to the vm service port. Fortunately, I believe the tool doesn't just automatically require Rosetta, like in the doctor, but instead complains if there's a ebadarch or if gensnapshot doesn't run.

gen_snapshot_arm64 and gen_snapshot_x64 for macOS are now migrated to universal binaries on master branch. iOS/Android gen_snapshots will be landing next.

gen_snapshot_arm64 executables for iOS builds are migrated to universal binaries on master branch as of https://github.com/flutter/flutter/pull/152278. Android gen_snapshots will be landing next.

I expect I won't make any progress on this until Q1 of 2025 given current priorities.


Cannot use the library in Angular without importing the markerclustererplus library

I cannot use this library with angular without installing the markerclustererplus library.
Environment details

<EMAIL_ADDRESS>"3.47.4" and "@googlemaps/markerclusterer": "1.0.24"
Windows 11
Angular v13.2.3

Steps to reproduce

Download npm i @googlemaps/markerclusterer
Download npm i @types/google.maps --save-dev
Create a component and use it as bellow
Do not forget to add the GoogleMapsModule in the import

Code example
<google-map #googleMap width="100%" height="100%" (idle)="initClusterer($event)">
  <map-marker-clusterer *ngIf="googleMap?.googleMap">
    <ng-container *ngFor="let i of items">
      <ng-container *ngIf="i.categories | haveCategory: targetCategory">
        <map-marker #markerElem [position]="i.position"> </map-marker>
      </ng-container>
    </ng-container>
  </map-marker-clusterer>
</google-map>

@ViewChild('googleMap', { static: true }) googleMap: GoogleMap
markerCluster?: MarkerClusterer

initClusterer(e) {
    console.log('initClusterer', e)
    if (!this.googleMap?.googleMap || this.markerCluster) return

    console.log(this.googleMap, this.googleMap.googleMap)
    this.markerCluster = new MarkerClusterer({
      map: this.googleMap.googleMap,
      markers: this.markerElem,
    })
}

Then works as soon as I do add the following in my index.html
<script<EMAIL_ADDRESS>Stack trace
vendor.js:91237 ERROR Error: MarkerClusterer class not found, cannot construct a marker cluster. Please install the MarkerClustererPlus library: https://github.com/googlemaps/js-markerclustererplus
    at MapMarkerClusterer.ngOnInit (vendor.js:125746:15)

@rbalet Thank you for opening this issue. 🙏
Please check out these other resources that might be applicable:

Support Console - If you have a support contract.
Discord - chat with other developers
StackOverflow - use the google-maps tag
Google Maps Platform issue trackers

This is an automated message, feel free to ignore.

@rbalet Please take a moment to fill out this short survey. Thank you!
This is an automated message, feel free to ignore.

The component <map-marker-clusterer> needs to be updated to use this library. It seems to be using the old. Closing this as it is not related to this library.


Fix Web Safari Signin page layout

@johnmlee101  Can you please review this?
Details

Fixed Issues

$ #4110
Tests

Tested the Signin page on Chrome, Safari, Firefox
Tested on Mobile browsers for any breaks
Tested on iPad

QA Steps

Tested On

[x] Web
[x] Mobile Web
[x] Desktop
[x] iOS
[x] Android

Screenshots

Web

Mobile Web

Desktop

iOS

Android

🚀 Deployed to staging by @nickmurray47 in version: 1.0.88-3 🚀

platform
result

🤖 android 🤖
cancelled 🔪

🖥 desktop 🖥
cancelled 🔪

🍎 iOS 🍎
cancelled 🔪

🕸 web 🕸
success ✅

@mananjadhav it looks like there is a warning on the sign-in page related to this, can you please fix?

🚀 Deployed to production by @roryabraham in version: 1.0.90-2 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


Proposal: Slack for org chat

Addressing #9
The current scanpy Slack, but someone else pays for it.

Helmholtz either can’t or won’t apply for reduced slack pricing. The bill is currently over 1000 euro a year, and thats without making it open.
We would get an 85% discount by having slack paid for by an organization who will get the discount. This could be saverse with a numfocus membership, but we need to get that set up.

Pros:

Very easy
Everyone is familiar with slack
We don’t lose any history (any migration path will lose all private history)

Cons:

Not cheap. It won’t be expensive, but it is a continuous drag on resources
Some other org needs to volunteer

Simply too expensive imo. The nf-core slack is more than 2300 people. Now we will start smaller, but the more we grow the more ridiculous this expensive becomes.
Alternative would only be to ignore the 10k messaging limit, but IMO history is very important.

What about mattermost?
Works pretty much the same as slack and can either be self-hosted (open source edition), or there's a managed version for 149$/year, independent of the number of users.

What about mattermost? Works pretty much the same as slack and can either be self-hosted (open source edition), or there's a managed version for 149$/year, independent of the number of users.

I like it :) Theislab is actually running on mattermost.
But had the impression that @ivirshup was never the biggest fan of it.

Maybe it's good with threading. Most of the labs mattermost channels become pretty useless with the "all messages go to main but we still call it threads". So many conversations get confused or just drop.
Also, didn't Fabian say something about us switching to slack yesterday?

Maybe it's good with threading. Most of the labs mattermost channels become pretty useless with the "all messages go to main but we still call it threads". So many conversations get confused or just drop.
Also, didn't Fabian say something about us switching to slack yesterday?

Yeah, I also prefer the Slacklike threads.
I didn't hear or read him saying that.

But I can live with the MM ones.

I think you're setting the bar too low 😉

I didn't hear or read him saying that.

Here

But I can live with the MM ones.

I think you're setting the bar too low 😉

I didn't hear or read him saying that.

Here

I read that but had the impression that he meant the Scanpy Slack or just mixed up some words. This kinda stuff would be discussed more broadly.

On the topic of mattermost, can one turn on a "recent threads" or "recent DMs" feed? Been realizing I use those a lot in slack.

On the topic of mattermost, can one turn on a "recent threads" or "recent DMs" feed? Been realizing I use those a lot in slack.

I don't know TBH.

Closing due to agreement to go for #16


Update README.hbs

Fixed gulp task definition in documentation as otherwise task is not completed properly.

cheers bro ;)


wrap CRD watcher error

Signed-off-by: Wayne Witzel III<EMAIL_ADDRESS>

hi , on which version this fix has been released ?