[openvino-optimum] Using Model API for model handling and inference

is it still valid?

@ilya-lavrenov work on these changes has been put on hold as there are more important things to be done and merged in Optimum first, as far as I know. These exact commits are also in this repository, on the branch made for AI Workflow project that uses optimum with adapters.

@mzegla I'll close this PR, please feel free to reopen it as soon as it's required.


Question about camera Settings

Hello, I have a questions for you about the camera：
If I want to achieve obstacle avoidance with a drone, if I only have a forward-looking camera, does that mean that the speed direction of the drone must be consistent with the direction of the camera? Otherwise, if the drone moves backwards, then it will not be able to obtain the image behind it, will it not be able to avoid obstacles?
Looking forward to your reply~~

In the case of a drone with 1 camera, yes. However, pyflyt actually allows modularity in drone design, so you can very feasibly have a drone with a camera facing in every direction.

Here is the section of code where the camera is initialized for the quadx model. You could, for example, add a camera2 if you desire with its own properties.

Thank you for your reply. Due to the requirements of my mission, the drone can only carry one front-facing camera. So how do I limit my speed choices? Should we limit the range of actions directly in the action space, or should we punish unreasonable actions in the reward function? Can you give me some guidance?

I would limit your action space, to only forward directions in this case. Penalizing backward movement doesn't mean that an RL agent won't execute it if it produces a better resul. Another alternative is just using some sort of model with history (like R2D2) and giving the agent the full action space so it can recall past information.

Thank you very much for your advice. I'll give it a try。

Hi @jjshoots ,I'm sorry to bother you again, but I would like to ask you the following questions:
In my previous question, you suggested that I limit the movement space and only allow forward movement. Since my task is a quad-rotor UAV, the action adopts speed input, that is, vx,vy,vz, and does not include yaw angle control. After further consideration, I believe that the UAV should not only avoid backward movement, but also ensure that the direction of the forward-looking camera is aligned with the speed direction of the UAV, so as to better avoid collision due to lack of access to obstacle information. I wonder if this understanding is correct? If it is correct, how should I modify it in PyFlyt to meet the above conditions?

PyFlyt is currently not built for that purposes out of the box. There would be pretty weird behavior especially when velocity is zero or near zero -

Where do we look at zero velocity?
Do we need damping for the camera to prevent chaotic angle switching especially at hover?
At what speed does the camera start tracking velocity?

This sounds like opening up a can of worms that I don't have the bandwidth to handle at the moment, but I'd be more than happy if you want to mess with it yourself. The relevant section of code is here. use_gimbal in this case is just an indicator of whether the camera is stabilized for now (pan-tilt 0). You can get the current camera attitude here.

I'm sorry, I don't understand why you mentioned the drone speed zero situation. Also, can use_gimbal help with camera orientation? Airsim before I used, in which airsim DrivetrainType. ForwardOnly can guarantee the yaw angular velocity direction all the time, all I want to know whether PyFlyt  have similar function.

PyFlyt hosts two frame of references, a body frame and a ground frame. Ground frame is attached to the ground, and XYZ is always North-West-Up. Body frame is attached to the UAV, and X is always wherever the UAV is facing.
The camera component is linked to the body frame of the UAV. Wherever the UAV points, the camera will point in the same way. This means that, when the UAV flies backwards, the camera will still be looking forwards (opposite direction of travel), unless the UAV physically turns around by yawing 180 degrees.
What you were suggesting is for the camera to follow the linear velocity of the UAV, regardless of UAV orientation (basically following the UAV's ground frame velocity). This is problematic, when the UAV is hovering, the linear velocity will be oscillating between forward, backward, left, and right relative to the ground frame, causing the camera to be constantly swap directions at hover.
Airsim's forwardonly for drivetrain is not rotating the camera, it is rotating the entire UAV, so that the camera always points in the direction of the UAV. Additionally, they disable the UAV from giving backward velocity commands. If this is what you want, it is easily achievable in PyFlyt. Just set flight mode 5 and disable u from being negative values. This will mean that whatever controller you are using for the UAV, it will only be able to send forward velocity setpoints.
Note that only forward velocity setpoints does not imply only forward velocity. When the drone is forced backwards (such as because of wind or collisions), the physics will still cause the UAV to move backwards, with the camera ending up pointing the wrong way in those scenarios.

Thank you very much for your detailed explanation. In my mission, I wanted to control a QuadX with a camera to track a moving target by velocity input(vx,vy,vz), and there were obstacles in the environment. Therefore, I am worried that when the direction of the camera is inconsistent with the speed direction of the drone, the obstacle information may not be obtained, resulting in a collision. In Airsim, I through Airsim DrivetrainType. ForwardOnly solved this problem. However, as you explained, there are many differences between Airsim and PyFlyt. So, I'm still confused, how do I solve this problem in PyFlyt? In other words, how do I make sure the drone is always getting the correct information about the obstacles?

I would do flight mode 5, then ensure that u > 0, v = 0.You can turn by giving yaw rate commands.

May I ask,are u,v,w the x,y,z velocities in a body frame?Are vp, vq, vr the angular velocities of pitch,roll,yaw?

No worries about asking.
Yes, uvw are body frame linear velocities.
vp, vq, vr are angular velocities in the body frame.

Thanks a lot! You suggest that I turn by giving yaw rate command, may I ask if yaw rate refers to vr? Also, how do I adjust the yaw rate so that the camera is facing in the same direction as the drone's speed?

Here's an example:
"""Spawn a single drone and get its camera image."""
import matplotlib.pyplot as plt
import numpy as np

from PyFlyt.core import Aviary

# the starting position and orientations
start_pos = np.array([[0.0, 0.0, 1.0]])
start_orn = np.array([[0.0, 0.0, 0.0]])

# environment setup
env = Aviary(
    start_pos=start_pos,
    start_orn=start_orn,
    render=True,
    drone_type="quadx",
    drone_options=dict(
        drone_model="primitive_drone",
        use_camera=True,
        camera_fps=30,
    ),
)

# set to velocity control
env.set_mode(5)

# simulate for 1000 steps (1000/120 ~= 8 seconds)
for i in range(999_999):
    if i < 2000:
        # for the first 2000 steps,
        # u=1.0, v=0.0, yaw_rate=0.4, a bit of climb rate so the drone maintains a reasonable height
        env.set_setpoint(0, np.array([1.0, 0.0, 0.4, 0.02]))
    else:
        # for the remaining steps, change directions
        # u=1.0, v=0.0, yaw_rate=-0.4, a bit of climb rate so the drone maintains a reasonable height
        env.set_setpoint(0, np.array([1.0, 0.0, -0.4, 0.02]))
    env.step()

Can you explain to me why yaw_rate is set at 0.4 or -0.4? In other words, what relationship do u and vr need to meet so that the direction of the camera is always consistent with the direction of the drone speed?

There's is no requirement for yaw rate (vr) to be coupled with forward velocity (u). In the example above, 0.4 and -0.4 are just example values indicating a yaw rate of 0.4 radian per second in either directions. You can use any value you want (within reason, you probably don't want to use very big values like > 3).

Thank you very much!


Can we add ReactXP template in VSCode?

Can we add ReactXP template in VSCode since it is developed Microsoft In-house by Skype team?
This will encourage more new react-native developers to kick start with it and improve the framework.

What do you mean by ReactXP "template"?
VS Code out of the box has no builtin React functionality.
So even without understanding what you mean by ReactXP template I suggest that you ask the owners of the React extensions for this.


There is no way to execute a PowerShell script from the Winget configuration file with the Dev Home

Dev Home version
0.301.198.0
Windows build number
10.0.22621.2134
Other software
OS Build Version: 10.0.22621.2134.amd64fre.ni_release.220506-1250
.NET Version: .NET 6.0.18
Steps to reproduce the bug
I'm using the WinGet configuration for installing some necessary applications with components by creating a YAML file and using that from the Dev Home. I did all of them except the SQL Server features. I'm able to install the SQL server, but I could not enable (Install) the "Full-text search" and "FileStream" features of the SQL Server.
And also I am planning to do a lot of custom logic to customize and configurate a necessary applications. I hope this should be  possible with a PowerShell script, but I did find anything to being able to execute a PowerShell script from the winget configuration file.
Expected result
There is should be way to being able to execute a PowerShell script from the winget configuration file and use that from the DevHome
Actual result
There is no way to do that
Included System Information
Physical Memory: 31.78GB (12.67GB free)
Processor Architecture: x64
Included Extensions Information
Extensions:
Microsoft.Windows.DevHome_0.301.198.0_x64__8wekyb3d8bbwe
Microsoft.Windows.DevHomeGitHubExtension_0.300.198.0_x64__8wekyb3d8bbwe

Related: https://github.com/microsoft/winget-cli/issues/3522

Copying my response on the linked issue here:

There is a DSC Script Resource. The primary thing to be cautious of is to make sure your script is idempotent so it can be run multiple times without causing a failure or other unintended side effects.


Store file metadata in database so we don't have to obtain in from NFS

The following Asset attributes are derived from file metadata:

Asset#etag derived from File.stat
Asset#last_modified derived from File.stat
Asset#md5_hexdigest derived from File#read

If we want to switch off NFS, but keep proxying to S3 via Nginx, we'll need to store these values in the database.
The first two are only relevant if we want to continue to avoid unnecessary cache invalidation.
The last one is only relevant if we want to continue to avoid uploading identical asset files to S3 multiple times as per ff2ed6163e80327d5b51f0cabfe16b8013601a84.

I've just realised there is a potential problem with the current functionality as implemented in #240. If an asset's metadata attributes are set in the database and then the asset is updated with a new file, the attributes will not be updated as you might expect. Thus I'm going to re-open this issue and mark #215 & #216 as blocked until this is resolved.

I ran into a bunch of problems trying to run the govuk_assets:store_values_generated_from_file_metadata  Rake task on integration/staging. This task was originally added in #240, but has been gradually sorted out in #250, #251, #252 & #254.
Although I'm now confident this Rake task could be run safely in production, we should hold off running it until the problem mentioned in my last comment is resolved.

I've just realised there is a potential problem with the current functionality as implemented in #240. If an asset's metadata attributes are set in the database and then the asset is updated with a new file, the attributes will not be updated as you might expect.

This has been addressed in #257 which has been merged and deployed to integration. I'm going to leave #215 & #216 marked as blocked until this change has been deployed to production.

We also need to run the assets:store_values_generated_from_file_metadata Rake task in production before this issue can be closed.

#257 has now been deployed to staging and production and the Rake task has been run, so I'm going to close this issue.


Security hardening guide for scheduler configuration

Creating a scheduler hardening guide as a part of https://github.com/kubernetes/sig-security/issues/30.
Page preview  - https://deploy-preview-45080--kubernetes-io-main-staging.netlify.app/docs/concepts/security/hardening-guide/scheduler/
HackMD Page for collaboration - https://hackmd.io/@anshumantripathi/By7z2BSsa

/sig security

@kubernetes/sig-security-pr-reviews please take a look

I'd like to see the two points from https://github.com/kubernetes/website/pull/45080#discussion_r1525376245 addressed
Once they are, please squash the commits down in this PR.

@kubernetes/sig-security-pr-reviews please take a look at this one. SIG Scheduling can confirm details where appropriate.

See https://github.com/kubernetes/website/pull/45080#discussion_r1884185848 for some relevant commentary about where these docs should live.


New Tools: Draw Shapes (rectangle, circle), Line & Line Curve, Flip & Rotate Canvas

I think these new drawing tools will be very convenient. Specifically, you can quickly draw a rectangle or circle when using these tools. And quickly drawing straight lines connected from the first and last points will also be faster when you use a 'pencil' and applying them is also very easy because we already have the Bresenham algorithm function available.

And also tools that help us rotate and flip the canvas

And also tools that help us rotate and flip the canvas. And I think 90° rotations would be perfect.

Feel free to get started on this issue btw, if you want. :)


Slow performance on get_orders

I'm experiencing a strange performance issue for this API call in v10.1.0:
v9.61:    duration: <1s
curl -X POST http://api1.counterparty.io:4000/api/ --user rpc:rpc --data-binary "{ "method": "g
et_orders", "params": {  "filters": [{"field": "status", "op": "=", "value": "open" } , {"field": "g
et_asset", "op": "=", "value": "XCP" } , {"field": "get_quantity", "op": "^>=", "value": "3800000000
"} ] ,  "filterop": "AND" ,  "start_block": 799000  }, "jsonrpc": "2.0", "id": 0 }"
v10.1.0:  duration: 7s+  (often times out at 30s)
curl -X POST https://api.counterparty.io:4000/api/ --user rpc:rpc --data-binary "{ "method": "g
et_orders", "params": {  "filters": [{"field": "status", "op": "=", "value": "open" } , {"field": "g
et_asset", "op": "=", "value": "XCP" } , {"field": "get_quantity", "op": "^>=", "value": "3800000000
"} ] ,  "filterop": "AND" ,  "start_block": 799000  }, "jsonrpc": "2.0", "id": 0 }"

I'm also experiencing this. Sometimes taking >10s in v10 vs <1s for most in v9. PEPECASH shows these big time discrepancies also, so I assume all assets with large histories will show the same... (And I think this is also linked.)
There are tradeoffs to such deep architectural changes.
I still hope this can be solved with minimal adjustments.
But eventually, if the no-updates approach is kept for good, then I believe a complete schema redesign will be appropriate. Because trying to fit the old assumptions into this new approach is surfacing weird inconsistencies.
With a new DB design, I believe many of these issues (and others) can be resolved.

Thanks for the heads up @niftyboss1 ! We'll see what we can do to fix this. 👌

@niftyboss1  what is the end goal of this request?
With API v2 the best way to achieve the same thing is to use the /events/OPEN_ORDER endpoint and filter at the client level the results. There is no index on the quantity field and the orders table is now much larger, for this reason there are no plans for the moment to add a filter on this field.

(discussed with @ouziel-slama offline) GET /events/ shouldn't be necessary for most use cases.
Right now, at least with API v2, /assets/XCP/orders takes around 5s (and by default returns only open orders), and then you can filter on the client. I think that's rather slow but probably within reason, given the query.
We're going to add a cache so that the call will be instant if it's made twice on the same node in a given block (https://github.com/CounterpartyXCP/counterparty-core/pull/1747)—which will be very useful for public nodes—and we're also adding a new call /orders/ASSET1/ASSET2 which takes less than 1s for XCP + BTC e.g. (https://github.com/CounterpartyXCP/counterparty-core/pull/1749)—which will make local wallets etc. responsive.


Strange inference issues in const constructor default parameters

Consider the following code:
abstract class Equality<E> {}

class DefaultEquality<E> implements Equality<E> {
  const DefaultEquality();
}

class SetEquality<E> implements Equality<E> {
  const SetEquality([Equality<E> inner = const DefaultEquality()]);
}

This produces no analysis warnings, which is what I'd expect. However, if I add
the following method:
void main() {
  const SetEquality<String>();
}

I get the following:
[info] The object type 'DefaultEquality<E>' cannot be assigned to a parameter of type 'Equality<String>'

There are a few issues here. First, it's not clear what this message is trying
to communicate; as far as I can tell, the code is entirely valid. Second, the
fact that the info is only printed when the code is used rather than when it's
defined is a problem, because it means we can't reliably run strong-mode
analysis on our code to know whether it will be warning-clean for our users.

Great catch!
Just a guess, it sounds like a bug in the constant evaluator, since that's only triggered when you instantiate a constant. That could also explain why it's a "hint". Here's a repro that doesn't require strong mode:
abstract class Equality<E> {}
class DefaultEquality<E> implements Equality<E> {
  const DefaultEquality();
}
class SetEquality<E> implements Equality<E> {
  const SetEquality([Equality<E> inner = const DefaultEquality<E>()]);
}
main() {
  const SetEquality<String>();
}

$ dartanalyzer test.dart
Analyzing [test.dart]...
[error] The constant creation cannot use a type parameter (test.dart, line 8, col 64)
[info] The object type 'DefaultEquality<E>' cannot be assigned to a parameter of type 'Equality<String>' (test.dart, line 12, col 3)
1 error found.

Strong mode is losing the "constant creation cannot use a type parameter" error. I guess because we infer the <E>, probably ErrorVerifier only checks AST structure and not the actual DartType.
I'm not sure why spec mode decided to disallow the type parameter there.

Gentle ping.
We have fixed our 'collection' package to 1.4.0 to avoid analyzer errors that break our build using a newer version.

thanks for the ping @gabeschine . No promises but I'll try and get to this one sooner rather than later :)

CC @bwilkerson who might be able to help with this...
So I dug into this a bit. I think it can happen with fields too. Either way, strong mode infers a generic type argument for the default value/field initializer object. And it has to: otherwise it's a hole in the strong mode type system (or we'd have to reject these kinds of constants, not a good outcome either). But as Dart 1 didn't support type args there, Analyzer's constant evaluation engine didn't either for the same reason.
For default parameters and fields, Analyzer just gets the previously computed constant value that is cached on the element model. So there wouldn't be a way to apply the type argument at that point in the code (or at least, not that I can tell). We'd need the ability to evaluate it in context.
My guess is we need something similar to "constructor initializers" ... it looks like those AST nodes are exposed on the element model. There's also code to handle resynthesizing the AST for them needed. Then the AST is evaluated during the course of evaluating a constant constructor  If we had something like that for the default parameter value expressions & field initializers, we'd get the right value because we could compute them in the context of the current type argument. It would have some performance cost, but we could maybe save some work in ConstantVerifier (where the default value is currently computed).
I was debugging it with this test case (inferred_type_test.dart):
  void test_infersConstantGenericTypeArg() {
    // Regression test for https://github.com/dart-lang/sdk/issues/26141
    checkFile('''
abstract class Equality<E> {}
class DefaultEquality<E> implements Equality<E> {
  const DefaultEquality();
}
class SetEquality<E> implements Equality<E> {
  const SetEquality([Equality<E> inner = const DefaultEquality()]);
}
main() {
  const SetEquality<String>();
}
    ''');
  }

Error code is one of CONST_CONSTRUCTOR_PARAM_TYPE_MISMATCH or CONST_CONSTRUCTOR_FIELD_TYPE_MISMATCH. I found the place where things go wrong in evaluateConstructorCall (in the "Now evaluate the constructor declaration." section). So that's where, if the AST was available for the default value (& field initializers), we'd be able to compute it.
Does this sound like it's on the right track?

@jmesserly I think the "non-strong-mode" example you gave (https://github.com/dart-lang/sdk/issues/26141#issuecomment-203674961) is correctly reporting an error.  It is a compile-time error if T does not denote a class accessible in the current scope. It is a compile-time error if T is a deferred type (19.1). In particular, T may not be a type variable. If T is a parameterized type, it is a compile-time error if T includes a type variable among its type arguments.

Based on that, I think the error "The constant creation cannot use a type parameter" is correct. Later (https://github.com/dart-lang/sdk/issues/26141#issuecomment-232112897), you wrote:

Either way, strong mode infers a generic type argument for the default value/field initializer object.

But isn't it a problem if strong mode is inferring a type argument for the const constructor invocation if that argument is a type parameter? It seems like inference shouldn't produce a result that cannot be expressed in the language.
That aside, I think the original code ought not to be producing a hint. It seems to me that the constructor ought to be treated as being equivalent to:
const SetEquality([Equality<E> inner = const DefaultEquality<dynamic>()]);

which removes the original hint, but produces what I think is a strong mode error on the default value in the constructor declaration:
ERROR: Type check failed: const DefaultEquality<dynamic>() (DefaultEquality<dynamic>) is not of type Equality<E> (test.dart:27)

tl;dr I'm confused about what the right semantics are here in strong mode, and want to understand what the right behavior of analyzer is before trying to figure out how to implement it.

tl;dr I'm confused about what the right semantics are here in strong mode, and want to understand what the right behavior of analyzer is before trying to figure out how to implement it.

oops, my bad, I should've written up chat with @leafpetersen. But yes in Strong Mode it is intended to infer the type there.

It seems like inference shouldn't produce a result that cannot be expressed in the language.

yeah definitely, that is a problem too :). Both explicit and inferred should be supported. We considered it a bit less serious of a problem if inference provides a way to express the desired behavior. (Also explicitly writing it hits the same problem as inference, so we'd have to fix this issue either way).

And also yeah, totally agree, this is only a Strong mode issue. Dart 1 type system can get away with the unsoundness of implicit-dynamic instantiation.

Getting back to this one... how would we add this capability to constant evaluation? My thought was to have default values & field initializers be evaluated in a similar way to the constructor initializers. I think that would get us to consistent behavior for all of them in strong mode.
I can also go ahead and add support for explicit <E> in strong mode, so folks don't have to rely on inference

We're starting to hit this because our dependencies are starting to depend on more recent versions of the collection package...

I'm working on it now. Had been hoping for a bit of feedback on the approach, but in the meantime I'm forging ahead. It's quite an involved change now due to Analyzer summaries, but I'm making progress... (I think :) )

Great! I think I worked out how to disable the errant errors in the meantime.

https://codereview.chromium.org/2167263002

I'm making progress on that CL, btw, only thing left is to figure out redirecting factory constructors.

reverted due to a non-strong-mode failure, working on a quick fix there & re-landing

and the fix for that is rolled into https://codereview.chromium.org/2196483002/


Convert one fs-extra to workspace.fs

There were only 3 instances in the UI package where fs-extra is used.  However, the workspace.fs API is severely lacking in features and I was unable to remove two of the calls.
Here is a list of the API calls:

https://github.com/microsoft/vscode-azuretools/blob/main/ui/src/getPackageInfo.ts#L26
For this call, I can get the Uri and open it as a file, but it doesn't ensure it's a JSON and it returns a Uint8Array so I'd have to treat it as a Buffer.  Kind of annoying and not nearly as convenient.
https://github.com/microsoft/vscode-azuretools/blob/main/ui/src/utils/createTemporaryFile.ts#L16
I could definitely fandangle some logic to have similar behavior to ensure, but I feel like that defeats the point of using ensureFile in the first place.

Futhermore, the call I did replace ends up looking quite a bit messier that I'm not sure that it's worth converting over just yet.  I'll look into other extensions though, where readFile is more commonly used, but thought I'd put this up

Closing in favor of https://github.com/microsoft/vscode-azurestorage/pull/986/files/8f9cba8a79eb067e700315f50303f0aedff0b5ef..35eeffafacc583681721fa57cd7dd101ad0fe205


WIP add support for EIP1559 and CIP42 to ContractKit (wallet-base)

Description
This WIP Change adds eip1559 and cip42 signing / serialization. recovery to Contractkit (actually to wallet-base and wallet-local and celo/connect, as these are were the actions happens)
Other changes
Describe any minor or "drive-by" changes here.
Tested
New and Old tests
Related issues

Fixes #10447

Backwards compatibility
No. Deprecated Functions related to gasPrice have been removed.
Documentation

closed for https://github.com/celo-org/celo-monorepo/pull/10483


[WIP] TMA Version of HSTU (Autotuned)

Based on #57, this version uses the autotuned to toggle use of TMA.

@manman-ren @embg

@manman-ren Updated, let me know what you think. Will try and get this running with the OSS benchmark launcher.

looks good! Thanks

looks good! Thanks

went ahead and cleaned up the autotuning setup. I also got a test launcher running but I am not sure if it is doing things correctly


Always add vtable to struct?

Is there a way to always add a vtable to structs that implement an interface?
When such a type is directly used (without an interface or second type implementing this interface) in some shader this vtable space is often removed. This makes it hard to reuse buffers in cases with and without vtable. Is there an option to always add the vtable for interface implementations?
interface IShape {}

struct Sphere : IShape {
    float radius;
};
struct Cube : IShape {
    float size;
};

StructuredBuffer<IShape> shapes;
// if typeconformance includes Sphere and Cube -> radius/size starts at offset 16 bytes (vtable)
// if typeconformance includes just Sphere -> radius starts at offset 0 bytes (no vtable)

StructuredBuffer<Sphere> spheres;
// radius starts at offset 0 bytes (no vtable)

This makes it really hard to manage the backend buffer of shapes/spheres, would be nice if interface types would always include the vtable.

I think this is a bug and the data layout should be stable by always include the 16byte header.

Shouldn't Sphere or Cube also have the header (since they implement an Interface), even if their types are used directly?
Right now something like StructuredBuffer<Sphere> does not have the 16 bit header. What if I call a function that wants an IShape with this?

No, concrete types should not have the header. Interface conformance is not the same as inheritance.
when passing a concrete type value to IShape, slang will”box” the value by appending the header, and pass the composite to the callee.

Ok good to know that this will not change, then I will work around that


Feature question / suggestion: Insertion via iterators

Hi, currently all insert() / emplace() functions take const CharT* key, size_type key_size parameters.
I have a use-case to allow inserting via iterators instead (I need to insert a std::string / std::string_view backwards) and have started to add these functions. However, it's quickly snowballing so before I continue I'm wondering if this is something you have tried yourself? If it's ultimately not possible I'd like to know! If it's worth pursuing, and contributing back to you, it will most likely end up with the engine of the library being written to use iterators and supplying std::string / std::string_view, {const Char*T, size_type} wrappers over these new functions. What do you think about this?

Hi,
Thank you for the suggestion. It isn't something I considered before but it may be an interesting addition.
After looking a bit how feasible it is, I think the main problem will be with the Hash and KeyEqual template parameters used in array_hash. Ideally I'd like to avoid any breaking change but the API of these two function objects takes a contiguous buffer and a size. This makes it easy to call most hash libraries functions which usually have a similar API.
We could change it to a pair of iterators but this would mean that we can't use std::hash<std::string_view> anymore and I'd like to continue to rely on it as integrating a good and well-optimized hash function in the library is troublesome. We'd also have to see how to take care of the backward-compatibility.
Thibaut

Good point about 3rd party hash functions. That's probably a deal breaker unless insert/emplace have additional overloads, or new insert_reversed/emplace_reversed functions, that take the hash code directly. It could get a bit messy. I will experiement with it a bit.


undefined symbol: _ZN3c104cuda9SetDeviceEi

----> 4 gptq_model = exllama_set_max_input_length(gptq_model, max_input_length=7504)
/usr/local/lib/python3.10/dist-packages/auto_gptq/utils/exllama_utils.py in exllama_set_max_input_length(model, max_input_length)
15
16     # The import is set here to avoid a global import. Arguably this is quite ugly, it would be better to have lazy loading.
---> 17     from exllama_kernels import cleanup_buffers_cuda, prepare_buffers
18
19     if not model.quantize_config.desc_act:
ImportError: /usr/local/lib/python3.10/dist-packages/exllama_kernels.cpython-310-x86_64-linux-gnu.so: undefined symbol: _ZN3c104cuda9SetDeviceEi

You're using a prebuilt wheel that doesn't match your PyTorch version. The 0.0.21 wheels are built for PyTorch 2.3.0, and I've included some 2.2.0 versions for Windows. If you're on a different version you'll have to install the JIT version or build from source (either option needs the CUDA Toolkit to be installed.)


MQM/ESA quality control

Random corruption of consecutive characters & check error spans
Incorrect/misplaced translation & check score

@snukky How and when can this be reported to Appraise?

Add 2 attention checks (see https://github.com/zouharvi/error-span-annotations) that get displayed in the admin console under quality.

Resolved in 305354a61a497f4a3f8e9cd3002ff26522769abf.

I think we will also need to support our usual QC as in other tasks, which is based on score differences between "TGT" and corresponding "BAD" items, and then reported on the campaign-status page. Maybe we should open a separate issue for this?

For MQM there is no segment score though. Also the screenshots are of the campaign-status page. Or do you mean something else?
I'm happy to implement things but currently it's very vaguely defined (e.g. what are bad segments and how many of them are there?) and given the schedule, I just went ahead implemented the rudimentary checks of two manually corrupted documents.

What we do with the BAD segments is that we take an n-gram of words from a segment and replace it with an n-gram of the same length from a different segment.
But it became an issue that it is too trivial for annotators to discover. At least it is better than randomly scrambled characters which could be ovious even without reading

A follow up research (not in this iteration) could be to try generating quality control itemsvia LLM.
Basically asking it to update reference in a particular manner ("negate the segment", change the noun for different, remove particular phrase and polish the rest)

For MQM there is no segment score though

We can calculate it on the fly based on their error type/severity weighting.

how do we create BAD segments

It's in the WMT batch generation scripts.

what does score mean for MQM

Not important for QC. BAD refs should have more errors/higher severity, i.e., lower score than TGT, which is all what's needed.

A follow up research (not in this iteration) could be to try generating quality control itemsvia LLM.

We have had another method for BAD refs generation using contextual LMs, but it has never got to a trail testing.

Basically, if you use the WMT batch generation script for generating the batches (I hope we do that), then the only missing part is small update of the campaign_status view.

Basically, if you use the WMT batch generation script for generating the batches

Unfortunately not at all. There are some details with the MQM/ESA and so I prepare them here: https://github.com/zouharvi/error-span-annotations/blob/main/appraise-preparation/mqm_human_wmt.py

Okay, that's fine too. The code for BAD refs generation can be extracted from there and reused too.

Chaned to dynamic perturbations https://github.com/zouharvi/error-span-annotations/commit/a55f1f7048ce43244fe5c4a81a4f1ccd3b59a843
On Appraise side updated the scoring.


[5.7] Add artisanWithoutMock test method

Related to: https://github.com/orchestral/testbench/issues/229
Alternative solution: #25574
Adds ability to call artisan without mock for one command only and not disable mocking for all the test.
Before:
public function test_something()
{
    $this->withoutMockingConsoleOutput();
    $output = $this->artisan('foo:bar', [
        'id' => 1,
    ]);

    // We have no way to call artisan with mocking for this test anymore
}

After:
public function test_something()
{
    $output = $this->artisanWithoutMock('foo:bar', [
        'id' => 1,
    ]);

    $this->artisan('baz:bar', [
        'id' => 1,
    ])->assertExitCode(0);
}

Thanks @crynobone for the idea :+1:

Can you not just work it into the PendingCommand? $this->artisan('foo')->withoutMocking()->run()?

You've already merged alternative solution #25574, so this PR could be closed.
Now could be called like this:
$this->artisan('foo')->run();


Looking for maintainer

I no longer have time to look after this repository, and I haven't worked with Freeswitch in many years.
If you're interested in actively maintaining this library please let me know.

Hi, englercj!  thank you very much for your great contribution, I now have a VoIP system using your code. So far I've just used your library directly and haven't delved into it. If you trust me, I am willing to spend time maintaining such a good library.


Unable to teleport.

I have the mods AdvancedPortals and TargetPortal. Was working just fine until the update yesterday. Whenever I approach a portal, I get an errorlog spam:
[Error  : Unity Log] NullReferenceException: Object reference not set to an instance of an object
Stack trace:
JotunnBackpacks.Patches+IsTeleportable_Patch.Postfix (Inventory __instance, System.Boolean& __result) (at <3bca9fa9a03a4469b0f3f0642c1d8537>:0)
(wrapper dynamic-method) Inventory.DMDInventory::IsTeleportable(Inventory)
(wrapper dynamic-method) Humanoid.DMDHumanoid::IsTeleportable(Humanoid)
(wrapper dynamic-method) TargetPortal.Map.DMDTargetPortal.Map::HandlePortalClick()
TargetPortal.Map+MapLeftClick.Prefix () (at :0)
(wrapper dynamic-method) Minimap.DMDMinimap::OnMapLeftClick(Minimap)
Minimap.OnMapLeftUp (UIInputHandler handler) (at <35c0f7aa1999477788815a7bf78200d7>:0)
UIInputHandler.OnPointerUp (UnityEngine.EventSystems.PointerEventData eventData) (at <183b5f79b9804fb7af30e9ae5218e583>:0)
UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerUpHandler handler, UnityEngine.EventSystems.BaseEventData eventData) (at <67859b8eac9e4f3b99606821e32b26c6>:0)
UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) (at <67859b8eac9e4f3b99606821e32b26c6>:0)
UnityEngine.EventSystems.EventSystem:Update()
Some of this looks like other mods failing, but since the only applicable mod that changed was this backpack one, shit seems broke yo. (What happens is I go to a portal, it opens a map as part of the TargetPortal mod, and when I click the desired location, nothing happens and instead drags the map around no matter how I click.)

I did some testing and saw that just this mod with only dependents brakes portals they connect but the portal dose not spawn in and i get this string of text
[Error  : Unity Log] NullReferenceException: Object reference not set to an instance of an object
Stack trace:
JotunnBackpacks.Patches+IsTeleportable_Patch.Postfix (Inventory __instance, System.Boolean& __result) (at <3bca9fa9a03a4469b0f3f0642c1d8537>:0)
(wrapper dynamic-method) Inventory.DMDInventory::IsTeleportable(Inventory)
Humanoid.IsTeleportable () (at <49d9aaa0119f4006a902669e02c0ad15>:0)
TeleportWorld.UpdatePortal () (at <49d9aaa0119f4006a902669e02c0ad15>:0)
so the mod brakes portals with out the use of other mods


Fix proto parsing

Fixes proto parsing bug

Description

Fixed the bug which causes ingestion halt for invalid proto message
When Druid encounters an invalid protobuf kafka message, the ingestion on that partition gets halted as hasNext() method of the FilteringCloseableInputRowIterator.java gets stuck in a endless while loop, until maxParseExceptions is reached.
The fix is to seek the byte buffer to its limit whenever there's a parsing failure. This would allow the buffer to move on and not get stuck at the same place.

Release note

For tips about how to write a good release note, see Release notes.

Key changed/added classes in this PR

MyFoo
OurBar
TheirBaz

This PR has:

[ ] been self-reviewed.

[ ] using the concurrency checklist (Remove this item if the PR doesn't have any relation to concurrency.)

[ ] added documentation for new or modified features or behaviors.
[ ] a release note entry in the PR description.
[ ] added Javadocs for most classes and all non-trivial methods. Linked related entities via Javadoc links.
[ ] added or updated version, license, or notice information in licenses.yaml
[ ] added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
[ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold for code coverage is met.
[ ] added integration tests.
[ ] been tested in a test Druid cluster.

Closing as its redone in https://github.com/confluentinc/druid/pull/211/files

Closing as this is redone in https://github.com/confluentinc/druid/pull/220


Fixed Knight Quest Trophies (1.21).

Updated files for Knight Quest information. Using the folllowing version of Knight Quest: https://www.curseforge.com/minecraft/mc-mods/knight-quest-reforged.

Oh, I wasnt even aware the original version was discontinued! Thanks for catching this!
I went and looked at the trophies in-game, and they look fine minus the eld knight one. When scaling trophies I try to keep the mob 1 block or below in height, and that model is a bit too big atm. Happy to adjust it myself if you want but youre more than welcome to do it yourself

Gotcha. Scaled it down now so the trophy is around the same size as the Wither's.


Use serde_derive via derive feature on serde

This is the recommended way to do this in the serde docs.

This is for the dev dependency only, so won't impact dependent crates of indexmap, so it won't run afoul of https://github.com/serde-rs/serde/issues/2584

As you note by that issue, that recommendation is being reconsidered. I don't see any point in changing here -- what would we be fixing by doing so?

I think best to close this!


Keyboard focus control

It should be possible to control the UI entirely using a keyboard or a controller.
By the way, all references to IsButton*/IsKey* functions should be moved to a single module to allow overriding them per tree.

This could be achieved by having a struct of this kind in the tree:
struct FocusDirection {
    GluiNode focusContext;
    GluiInput previous, next;
    GluiInput top, left, right, bottom;
}

After a container node finds a focused node, it should immediately assign as many fields as appropriate, and so should any of its ancestors. For example, let's consider this layout:
vframe(
    hello = button("Hello"),
    hframe(
        a = button("World 1"),
        b = button("World 2"),
        c = button("World 3"),
    ),
)

The moment a focused node finishes its drawImpl() call, Node.draw(Rectangle) would assign focusContext to self. Its parent should check if the focusContext matches the node after drawing it and if so, update the FocusDirection struct.
Let's assume b is the focused node. Its parent, hframe knows its siblings so it can fill the fields previous = left = a and next = right = c. After this, the focusContext would change to the hframe.
Further, the vframe would update missing fields as it can — in this case, it'd be exclusively top = hello.
Updating the focus direction could be enforced by making it happen through a tree.updateFocus call. If Node.draw finishes without the focusContext equaling this, it would trigger an error, as the focus direction crawler would effectively be broken.


Feature Request - Have FreeEed automatically upload shmcloud config files to SolrCloud

My last commit, switches to the Collections API if it detects SolrCloud instead of traditional Solr.  However one change is the you have to preload the shmcloud config into SolrCloud.  I run the below line to manually add these files, but we should automate the client to add them if they are not present.
./cloud-scripts/zkcli.sh -cmd upconfig -zkhost <IP_ADDRESS>:9983 -confdir ~/FreeEed-dev/FreeEed/config/solr/shmcloud/conf -confname shmcloud

not now


Need help using the program.

I am not a programmer at all and I do not understand this, I am not familiar with variables and the programming language. I am ashamed to ask this question, but no matter what I do and no matter what I write, I can’t figure it out. 😢
What do you need to enter on the command line to download a specific profile? I used the guide but it did not help me at all, what am I doing wrong

?

It happened to me too, and as it says there, try ".\instaloader". So do ".\instaloader nameoftheprofilehere" and then Enter, without the quotes.
Greetings.

I am not a programmer at all and I do not understand this, I am not familiar with variables and the programming language. I am ashamed to ask this question, but no matter what I do and no matter what I write, I can’t figure it out. 😢 What do you need to enter on the command line to download a specific profile? I used the guide but it did not help me at all, what am I doing wrong  ?

It happened to me too, and as it says there, try ".\instaloader". So do ".\instaloader nameoftheprofilehere" and then Enter, without the quotes.
Greetings.

Thank you very much. It really worked.

It happened to me too, and as it says there, try ".\instaloader". So do ".\instaloader nameoftheprofilehere" and then hit Enter, without the quotes.
Greetings.

Thank you very much. It really worked.

Glad to heard that it worked!!!
Greetings.


Link to oreilly Oriole

Was finally announced today.
Todo: find link, but I'm on my phone right now.

http://www.oreilly.com/oriole/
I'm already having to stop myself from mentally pronouncing it Oh-rye-uh-lee

Also, cool - I had no idea this was in the works. I've just watched through Peter Norvig's regexes example. It's a really nice concept.

This is really cool.

Also, cool - I had no idea this was in the works. I've just watched through Peter Norvig's regexes example. It's a really nice concept.

Yeah, sorry, this was not really "secret", we had a demo a couple of weeks ago in BIDS, and last week at JupyterDays, with a friendly request not talk about it publicly.

So are we just linking this?

Also this is their press release as well.
http://www.oreilly.com/pub/pr/3223

So are we just linking this?

Linking a write a few lines. I think it's enought.It goes well with the new peter norvig notebook posted last week. And the important part is that oriole use jupyter under the hood.


Crash on exit MFCMapi (Outlook 2016)

Hello,
Outlook 2016 16.0.8229.2073 always crashes when I exit MFCMapi.  I login to simple profile with single PST store configured (no imap4 no exchange etc). When i exit MFCMapi i always get crash at Mso20win32client.dll!61b5854e(). I know this is not MFCMapi bug, but maybe there is some workaround for this? Like some new undocumented flag for MAPILogonEx or Logoff?
Step to reproduce:

Have Outlook profile with single local pst store
Run MFCMapi
Login
Exit MFCMapi

It crashes Unhandled exception at 0x61B5854E (Mso20win32client.dll) in MFCMapi.exe: 0xC0000005: Access violation writing location 0x00000000.

The same with Outlook 16.0.8229.2086.

This should be fixed in Outlook by now.


Syntax Error on bookings table

It seems that there is a syntax error when on the bookings table (i.e. /bookings). Get this error:  syntax error, unexpected 'Event' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) (View: /var/www/booking/resources/views/booking/overview.blade.php)
Using dev branch (latest). Master branch has no difference.

@TomGrozev I just cloned the repository on a random PC and set up what's needed. I also created 2 different events (one of them multi-city, because that one works different), but don't see any errors.
That view nowadays loads in a Liverwire component (introduced by #191 and added to master in v2.1.0), did you do composer install after getting the latest changes?


Pool and cancellable

merge new stuff + pub struct CancelTokenHandle(pub i64, pub i64) compiles.
I'm unsure of what nativeVisionUtils should be. Perhaps you forgot to put the code for it? Also there's no CancelTokenHandle

@fzyzcjy I believe you meant for
pub fn cancel_token_new(sub_pool_id: i64) -> Result<CancelTokenHandle> {
    Ok(CancelTokenHandle::get_pool().put_object(sub_pool_id, Arc::new(CancelToken::new())))
}

pub fn cancel_token_cancel(cancel_token: CancelTokenHandle) -> Result<()> {
    let cancel_token = CancelTokenHandle::get_pool().get_cloned_object(cancel_token)?;
    cancel_token.cancel();
    Ok(())
}

pub fn cancel_token_remove(cancel_token: CancelTokenHandle) -> Result<()> {
    CancelTokenHandle::get_pool().remove_object(cancel_token);
    Ok(())
}

to be callable from Dart like on here:
static Future<FrbCancelableFuture<R>> create<R>({
   required int subPoolId,
   required FrbCancelableFutureRunner<R> runner,
 }) async {
   final ans = FrbCancelableFuture<R>._(
       await nativeVisionUtils.cancelTokenNew(subPoolId: subPoolId));
   unawaited(ans._run(runner));
   return ans;
 }

This is not in the api.rs, but I guess it should be there so code is generated for it?

Nice try! The main problem is described here: https://github.com/fzyzcjy/flutter_rust_bridge/pull/333#issuecomment-1037079219. So may I know your plan to solve it?

problem https://github.com/fzyzcjy/flutter_rust_bridge/pull/333#issuecomment-1037079219 didn't bother me. I though of creating a macro that generates this stuff:
cancel_tokenize!(CancelTokenHandle);
The problem is on the dart side:
static Future<FrbCancelableFuture<R>> create<R>({
   required int subPoolId,
   required FrbCancelableFutureRunner<R> runner,
 }) async {
   final ans = FrbCancelableFuture<R>._(
       await nativeVisionUtils.cancelTokenNew(subPoolId: subPoolId));
   unawaited(ans._run(runner));
   return ans;
 }

like, what would nativeVisionUtils be?

like, what would nativeVisionUtils be?

nativeVisionUtils is indeed nothing but the auto-generated dart things from api.rs.
That is (part of) the problem - if we put these code in frb_dart, we do not have access to the auto-generated dart code.
One approach may be, we can do something like (rough draft, just random naming to show rough idea):
// frb_dart

abstract class FrbCancelTokenApiInterface {
  cancelTokenNew(int subpoolid);
}

static Future<FrbCancelableFuture<R>> create<R>({
  required FrbCancelTokenApiInterface api,
   required int subPoolId,
   required FrbCancelableFutureRunner<R> runner,
 }) async {
   final ans = FrbCancelableFuture<R>._(
       await api.cancelTokenNew(subPoolId: subPoolId));
   unawaited(ans._run(runner));
   return ans;
 }

// user's code

// or, we can provide a flag to automatically inject `implemets FrbCancelTokenApiInterface` in the [generated code](https://github.com/fzyzcjy/flutter_rust_bridge/blob/d1097eae26f1bed4231945062cdad142b28f645e/frb_example/pure_dart/dart/lib/bridge_generated.dart#L18)
class MyApi extends FlutterRustBridgeExample implements FrbCancelTokenApiInterface {}

create(api: myapi, ...)


Add scale tests for multiple NodePools and multiple EC2NodeClasses

Description
Right now, we don't have any scale testing that exists for validating running at high-scale when it comes to a large number of NodePools or EC2NodeClasses. Without these tests, we are flying a little blind when it comes to understanding things like:

Whether we will run scheduling quickly enough with this many options
Whether we will use too much memory when calculating the InstanceTypes from this number of NodePools and EC2NodeClasses

Having a test like this might have caught a regression that was found in v0.32.x with respect to the memory utilization that Karpenter uses when it has a large number of EC2NodeClasses or AWSNodeTemplates present.

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

@paddy-bedraggled are you still interested on working on this issue?

Tests run with -benchm flag if we wish to track memory as well as scheduling/operation speeds


Roll Flutter Engine from 32c468507b32 to 398f5d3bdc2f (3 revisions)

https://github.com/flutter/engine/compare/32c468507b32...398f5d3bdc2f
2023-01-04<EMAIL_ADDRESS>Roll Skia from 15d36b15bca1 to 9423a8a0fc2d (37 revisions) (flutter/engine#38631)
2023-01-04<EMAIL_ADDRESS>Roll Dart SDK from f6dcb8b0b5d3 to 0b064bc49557 (1 revision) (flutter/engine#38630)
2023-01-04<EMAIL_ADDRESS>Roll Dart SDK from 617e70c95f5b to f6dcb8b0b5d3 (7 revisions) (flutter/engine#38626)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


Decentralized SocialFi: The Future of Social Finance

Decentralized SoFi: The Future of Social Media Finance
Social Media is one of the most useful mediums for sharing thoughts, information, jokes, and connecting with people in general. It has created opportunities for people to create local groups, and communities and engage with them. People today love to write blogs, tweets, articles, videos, and audio to interact with the people they love. Social Media was created to empower people from all races, communities, religions, and genders to connect and share their problems, solutions, and values.
But today, the major social media like Facebook, Twitter, Instagram, etc. are centralized by nature that giving the power to these companies rather than the individuals who share the content.
Decentralized Social Finance
Decentralized social media is the key to solving this problem. It promotes free speech, and ownership of the content and resists censorship. It solves the issues that come with centralization and actually empowers the content creators to share, and engage with their communities.
In the session, I will be talking about how Decentralized Social Finance can come to reality using Blockchains like SubSocial and protocols like Lens.
The session is targeted at intermediate builders having some experience with web development. No need to know much about blockchain itself (will be covering basics). It will be a zero to hero session where the attendee will not just understand the importance of decentralized social finance but will also get to build one.
Target Audience: Newbies in Blockchain space / Transitioning from web2 to web3
Talk type: 60 min Teach me something
Submission Type: Alone
About me:
I am currently working at Subsocial as DevEx and React Developer. I have been on the software development journey since the age of 12. I have created multiple social media projects from scratch and they are being used by people for sharing their thoughts, and ideas and connecting with people. I have been into blockchain development for the past year and worked with several companies.
https://tusharojha.com
About Subsocial:
It’s a blockchain developed especially for building social finance apps. It’s a substrate-based chain and uses IPFS to store metadata. Using Substrate also allows Subsocial to connect to the Polkadot and Kusama networks. It enables web2 builders to create decentralized social media using their JS SDK easily.
It is an open platform that allows anyone to launch their own decentralized censorship-resistant social networks and marketplaces. Subsocial will help you create your own decentralized version of the popular sites we see today, such as Medium, Twitter, Reddit, Instagram, Discourse, Patreon, OnlyFans, and more.
https://subsocial.network

@ojas-rajankar Is there any update on this?
When will you be announcing the shortlisted talks?


Completely refactor XCM Router and XCM API

Completely refactor both XCM Router and XCM API to new standard to match XCM SDK design.

Solved in https://github.com/paraspell/docs/commit/6352e29fae83cb02ef9cac2f2e9b9c8d337e624e


Destruction of collections of CqlValue is needlessly costly

If you deserialize a collection into a CqlValue e.g. as CqlValue::List which holds a Vec<CqlValue> or if you create a Vec<CqlValue> directly to pass it as a parameter to the driver, the deallocation of such vector can take significant amount of time due to calling the destructors of individual items. This shows as drop_in_place being high in the profile.
The compiler does not know if the items stored in the collection are of primitive type like e.g. CqlValue::Float or more complex objects that must be actively dropped.
This problem could be solved by providing your own wrapper for Vec<CqlValue> that could register if all inserted values are of primitive types at runtime, and if so, could just skip the destruction of them (I'm quote surprised you don't even need unsafe for that!), hence going from O(n) destruction to O(1). Such wrapper then could be used as the representation for CqlValue::List, CqlValue::Set, CqlValue::Vector.
You can look in the #1022 (it is not perfect solution, but I got about 60% speedup on float vectors just from that optimization).

I think this may not be needed soon with the deserialization refactor (@wprzytula )

@pkolaczk Thanks for pointing out this nonobvious inefficiency! With the new deserialization refactor (see #1057), CqlValue won't be even created, so its destructor's cost stops being an issue for most users (apart from those who are going to keep using Row and CqlValue for dynamic purposes). Having said that, I believe introducing the optimisation you suggested is not worth the increase in code complexity. Do you agree?


Plotting of examples in the documentation fails

All the code blocks with 'plot' in them don't work out of the box (like the ones in [Digital-analog quantum computing]) for:
NameError: name 'plot' is not defined. Did you mean: 'float'?
Also, in some of the blocks torch is used but not loaded at each block (and I guess they should be independent?)
Used with matplotlib is 3.7.3.

Ahh nice catch, the plot/scatter functions are hidden for some reason. Will fix!
The blocks where torch is used but not imported in the block itself have a previous block that loaded torch. We didn’t manage to write completely self sufficient code blocks all the time without have tons of repeating things.


Release 0.18.0-m0

Scheduled release date: Jan 29, 2024
This is a tracker to aggregate issues that should be part of 0.18.0-m0.
Please add specific Issues or PRs prefixed with the "Depends on" keyword
Depends on https://github.com/submariner-io/shipyard/pull/1539
Depends on https://github.com/submariner-io/shipyard/pull/1538
Make sure to follow the manual steps listed below before starting the release process.
Manual Steps
For detailed information regarding each step, please check: https://submariner.io/development/building-testing/ci-maintenance/

[ ] Custom GitHub Actions
[ ] GitHub Actions
[ ] Kubernetes Versions
[ ] Shipyard Linting Image Software

Release: https://github.com/submariner-io/releases/releases/tag/v0.18.0-m0


In Android Chrome the pointerdown event triggers twice

What is your Test Scenario?

Click an element on Android Chrome.
What is the Current behavior?

Received 2 pointerdown events.
What is the Expected behavior?

Receive 1 pointerdown event.
What is your web application and your TestCafe test code?

Connecting 1 remote browser(s)...
Navigate to the following URL from each remote browser.
Connect URL: http://<IP_ADDRESS>:10240/browser/connect
CONNECTED Chrome 88.0.4324.93 / Android 7.1.2
 Running tests in:
 - Chrome 88.0.4324.93 / Android 7.1.2

 Test Touch
 ✖ Test Touch

   1) AssertionError: expected 'pointerdownpointerdown' to deeply equal 'pointerdown'

      + expected - actual

      -'pointerdownpointerdown'
      +'pointerdown'

      Browser: Chrome 88.0.4324.93 / Android 7.1.2

         3 |fixture `Test Touch`
         4 |    .page `./touchevent.html`
         5 |
         6 |test('Test Touch', async t => {
         7 |    await t.click('#content')
       > 8 |        .expect(Selector('#log').innerText).eql('pointerdown');
         9 |});

         at <anonymous> (/Users/rudyhuang/IdeaProjects/testcafe/test-touch.js:8:45)
         at asyncGeneratorStep (/Users/rudyhuang/IdeaProjects/testcafe/test-touch.js:1:230)
         at _next (/Users/rudyhuang/IdeaProjects/testcafe/test-touch.js:1:568)
         at <anonymous> (/Users/rudyhuang/IdeaProjects/testcafe/test-touch.js:1:733)
         at <anonymous> (/Users/rudyhuang/IdeaProjects/testcafe/test-touch.js:1:474)
         at <anonymous> (/Users/rudyhuang/IdeaProjects/testcafe/test-touch.js:6:5)

 1/1 failed (5s)

Screenshots:

Steps to Reproduce:

Save the HTML (touchevent.html) and test js
Execute TestCafe using remote or "chrome:emulation:device=Pixel 2"

testcafe remote --ports 10240,10241 test-touch.js
testcafe "chrome:emulation:device=Pixel 2" test-touch.js

See the error...

Your Environment details:

testcafe version: 1.10.1
node.js version: v14.15.0
command-line arguments: testcafe remote --ports 10240,10241 test-touch.js
browser name and version: Chrome 88.0.4324.93
platform and version: Android 7.1.2 (Using BlueStacks 4 mac)
other:

@scribetw
Hello,
Thank you for the example. I reproduced the issue. Our team will examine this case and check for a suitable solution.

@scribetw
Hello,
Thank you for the example. I reproduced the issue. Our team will examine this case and check for a suitable solution.

fixed in https://github.com/DevExpress/testcafe-hammerhead/pull/2718


v4: Bootstrap Modal with tooltips and popover

Hover to a tooltip inside a modal and or clicking to show a popover inside a modal disable it's hide function. Can check on your documentation for the live demo of the bug: http://v4-alpha.getbootstrap.com/components/modal/#tooltips-and-popovers once you open the modal try to hover on a tooltip or clicking the popover button.

Dupe of #22021.


[Snyk] Security upgrade debian from buster-slim to 10.12-slim

This PR was automatically created by Snyk using the credentials of a real user.Keeping your Docker base image up-to-date means you’ll benefit from security fixes in the latest version of your chosen image.
Changes included in this PR

Dockerfile

We recommend upgrading to debian:10.12-slim, as this image has only 70 known vulnerabilities. To do this, merge this pull request, then verify your application still works as expected.
Some of the most important vulnerabilities in your base image include:

Severity
Issue
Exploit Maturity

CVE-2022-1664 SNYK-DEBIAN10-DPKG-2847944
No Known Exploit

Information Exposure SNYK-DEBIAN10-GCC8-347558
No Known Exploit

Information Exposure SNYK-DEBIAN10-GCC8-347558
No Known Exploit

Information Exposure SNYK-DEBIAN10-GCC8-347558
No Known Exploit

Information Exposure SNYK-DEBIAN10-UTILLINUX-2401082
No Known Exploit

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Learn about vulnerability in an interactive lesson of Snyk Learn.

Snyk has been removed from the organization.


fontconfig: clean up

This brings the build closer to the bionic package and makes sure to use the system fonts.

This brings the build closer to the bionic package

Again the same question as from PR of pulseaudio: what do you mean by this? (and for what?)

and makes sure to use the system fonts

Now this is quite interesting 👀

Thanks for the PR


Add guides to docs

This reproposes #313 with additional changes to make the guides work.

What is the current state of this PR? I'd love to get the guides page set up and would be happy to help if there's more work to be done here.

It needs a review.

LGTM, sorry you had to wait. Merged.

@fhemberger no problem.


Is it possible to push stuff down at the bottom while scrolling?

@aligajani I'm not sure I understand the question. Can you explain in more detail please?

@yasir-rafiq Have you tried using reinit method after you added your dynamic content?

can you explain how I can use this method?

@yasir-rafiq Are you using it via jQuery or vanilla js?

js

var Sticky = new hcSticky('#element');

// some code that appends the data to page

// after that you refresh the sticky
Sticky.refresh();


clientv3: lease keep alive loop should send reqs immediately

when lease client resets lease keep alive stream, sendKeepAliveLoop() should send out keep alive reqs immediately instead of waiting for 500ms.

LGTM. defer to @heyitsanthony

lgtm once greenlights

merging.


Error compiling for Delphi 10.4 Sydney - Skia.Package.RTL.dproj - Win32

I have been trying to install the latest version of Skia4Delphi, but in both recommended ways to install it (GetIt or Setup), a message error keeps appearing. I'm attaching the message here (it asked to report this issue). How should I proceed?

Hi @ViniciusAguiar23! Thank you very much to report the issue.

Could you send us the Build.Logs.txt file? This file generated in the installation folder when an error occurs).
What edition is your RAD Studio? (Community, Trial, Started...)

I need to confirm through Build.Logs.txt, but I'll tell you that it's probably the same problem as issue 7 - Error to install the component in Delphi 10.4.2. This problem is especially common with Brazilians because ACBr takes up a lot of space in the IDE's Library Path. I indicated a workaround for his problem, but this specific problem has been resolved and will be available in the next release later this month.

I was unable to locate the file you asked, I tried looking the folder where it was installed, but i couldn't find it. My RAD Studio is neither Community nor Trial, it's a paid license version. Should I try the workaround you suggested?

Do you have ACBr installed? If so, then it's definitely the same problem and you can try the workaround.
About the Build.Logs.txt, in addition to it being saved in the installation folder, clicking Ok on the error message will open our issues page and the notepad with the contents of Build.Logs.txt.

Do you have ACBr installed? If so, then it's definitely the same problem and you can try the workaround. About the Build.Logs.txt, in addition to it being saved in the installation folder, clicking Ok on the error message will open our issues page and the notepad with the contents of Build.Logs.txt.

I don't have ACBr installed. When I clicked Ok on the error message, it opened the issue page, but it didn't open the notepad. I'm sending you the folder where Skia4Delphi was installed, so maybe you can help me find the file

I just discovered a problem: installing via GetIt is not generating the Build.Logs.txt (I will fix this in the next release as well).
Do the following:

Open RAD Studio and uninstall via GetIt.
Close RAD Studio and install Skia4Delphi using our setup: Skia4Delphi_2.0.1_Setup.exe

Any questions can send me on WhatsApp +55 38 98816-9152 or Telegram @viniciusfbb

Issue accepted. In fact there are some problems with the current installer. The entire installation process needs to be improved and/or redone.

The problem was solved in new release. Please download new version 3.0.0.


Make tar use default options

This unsets TAR_OPTIONS to ensure tar operates with default settings. In my environment, I have TAR_OPTIONS=--one-top-level, which breaks extraction in get.sh:
[INFO]  Finding release for channel latest
[INFO]  Using v0.4.2 as release
[INFO]  Downloading hash https://github.com/acorn-io/acorn/releases/download/v0.4.2/checksums.txt
[INFO]  Downloading archive https://github.com/acorn-io/acorn/releases/download/v0.4.2/acorn-v0.4.2-linux-amd64.tar.gz
[INFO]  Verifying binary download
tar: acorn: Cannot open: File exists
tar: Exiting with failure status due to previous errors

Signed-off-by: Stephen Benjamin<EMAIL_ADDRESS>

closing due to age


Assignment inside function call?

What is this line here doing?
const identifier = this.template.slice(this.index, this.index = i);

I can't figure out what the this.index = 1 means. Does it assign i to this.index?

for example, this.index equals 1, and I equal 2, then the slice method will be .slice(1, 2). This is a short syntax.

Here's a fiddle. Appearently this does assign i to this.index and uses this new value as a parameter to the .slice function.


#1636 add lombok annotation processor

Issue

The JDK23 build is Red 🟥 , because Lombok annotation processor is not configured as required.
Change

🟢 The build is green
Enable Lombok annotation processor to make the build green under JDK23
General checklist

[x] There are no breaking changes
[ ] I have added unit and integration tests for my change
[ ] I have manually run all the unit and integration tests in the module I have added/changed, and they are all green
[ ] I have manually run all the unit and integration tests in the core and main modules, and they are all green

[ ] I have added/updated the documentation
[ ] I have added an example in the examples repo (only for "big" features)
[ ] I have added/updated Spring Boot starter(s) (if applicable)

Checklist for adding new maven module

[ ] I have added my new module in the root pom.xml and langchain4j-bom/pom.xml

Checklist for adding new embedding store integration

[ ] I have added a {NameOfIntegration}EmbeddingStoreIT that extends from either EmbeddingStoreIT or EmbeddingStoreWithFilteringIT
[ ] I have added a {NameOfIntegration}EmbeddingStoreRemovalIT that extends from EmbeddingStoreWithRemovalIT

Checklist for changing existing embedding store integration

[ ] I have manually verified that the {NameOfIntegration}EmbeddingStore works correctly with the data persisted using the latest released version of LangChain4j

@langchain4j , let's make "Java CI / java_build" required for PRs

#2107 is discovered

@langchain4j , let's make "Java CI / java_build" required for PRs after merging this one

Currently, the following checks are required: compliance, java_build (17) and java_build (21). I will include java_build (23)

I've also added:

Codacy Static Code Analysis
upload-patch


Host and guest /etc/hosts ignore aliases

config.hostmanager.enabled = true
config.hostmanager.manage_host = true
config.hostmanager.ignore_private_ip = true # doesn't matter if this is set to true or false
config.vm.hostname = 'example.com'
config.hostmanager.aliases = [
  'example.com',
  'example.es',
]

Everything works fine, but:

The guest only get the hostname. It does not get the aliases.
The host doesn't get anything at all. I do see a "Checking hosts file" step flash by. Does that check pass when really it shouldn't?

I also tried running vagrant hostmanager <global ID>, but the results were the same.
I feel like I must be making a really dumb mistake, so pointing out of that would be greatly appreciated.

Update: Adding a private IP fixed the lack of provisioning of the host. This is probably a vagrant-parallels issue; its boxes have their own internal private IPs, but I guess vagrant-hostmanager wasn't able to see it unless I explicitly defined one. I'll ask them about it.
I'm still wondering why the aliases are not being processed properly.

Appears to be resolved - please reopen if not the case.


+workspace-new': don't show doom-fallback-buffer'

+workspace-new shows doom-fallback-buffer using switch-to-buffer to add it
to the workspace, which is annoying, as that buffer is usually not interesting
in new workspaces. Use persp-add-buffer instead.
Fixes #3990.

Hi, thanks for the PR but I cannot accept it. The purpose of switching to the fallback buffer is not add it to the current workspace, it's to ensure that a blank workspace starts with the fallback buffer. If you want to change this behavior, add a hook to projectile-after-switch-project-hook or change +workspaces-switch-project-function to something that changes the buffer before prompting. Thanks for the PR anyway.


Change the searched word and its taboo words when click on "next word" button

Fixed bug, now the Unordered list resets


Documentation on new syntax

Hello, thanking for making this. I have no idea how to use this language though. How do I do FFI (e.g. call C functions)?

Thank you for your interest. As you can see, this is a WIP project. So FFI is not fully supported yet.
However, technically, you can achieve it as follows.

(1) Create a project via neut build foo
(2) cd to the project and edit the file in source into something like this:
define main(): i64 =
  magic external(myFunction, 3: i64) // general form: magic external(FUNCTION_NAME, ARG_1, ..., ARG_N)
end

(3) Run neut build at the root of the project. This should result in an error like this:
error: the child process `clang` failed with the following message (exitcode = 1):
       Undefined symbols for architecture x86_64:
         "_myFunction", referenced from:
             _main in buz.o
             _this.buz::main in buz.o
       ld: symbol(s) not found for architecture x86_64
       clang: error: linker command failed with exit code 1 (use -v to see invocation)

... and we now have an LLVM IR in /target/artifact/foo.ll. The head of the file should be something like this:
declare fastcc i8* @free(i8*)
declare fastcc i8* @malloc(i8*)
declare fastcc i8* @myFunction(i8*)
(...)

We can use this ordinary LLVM IR to achieve FFI.
(4) Create test.c at the root of the repository with the following content:
int myFunction(int input) {
  return input * 3;
}

(5) Run clang test.c target/artifact/buz.ll. This should create the usual a.out.
(6) Execute a.out and see the result:
~/Desktop/foo
❯ ./a.out
~/Desktop/foo
❯ $?
zsh: command not found: 9 # ← (= 3 * 3)

... Yes, tedious. The beloved flavor of a WIP project.
I'll add neut build --emit-llvm or something like that to emit LLVM IR without clang errors in some future, but since I'm recently rewriting this project for better formulation, it might take a while. (I'm currently reformalizing arrays, and I'll also have to update the readme, etc.)
For the time being, you might be able to get rough idea of the new syntax via the (embarrassingly sketchy) files in /test/data/.
I hope you enjoy.

Thanks!

The generated LLVM is not quite right. I think it works only based on platform ABI.
The signature is not right:
declare fastcc i8* @myFunction(i8*)

Good catch, thanks. I think I need to add a way to specify the signature of an external function. I'll add it to my todo list.


Best Individual

The code right now only returns a small collection of metrics, it seems to me that from the linked paper and also running the code, that the best individual itself is not returned at the end (unless I missed something).
Or for that matter, no solutions to the function seem to be provided at all, just the best fitness values, best constraint value, ...etc.
Wouldn't it be really useful to provide the solution which actually has the best fitness?

Thanks for bringing this up, this is certainly something I'd like to add in the near future!


Allow more props in radix-slot (TypeScript)

Feature request
Overview
radix-slot's props extend React.HTMLAttributes<HTMLElement>. That is fine most of the time, but for more specialized scenarios, one may want to pass down more props. For example, if building a wrapper for form elements, you may need to forward the "name" prop, which isn't part of HTMLAttributes.
Aside for the types, radix-slot fully works with this scenario. Just need to make TypeScript happy.
Examples in other libraries
Not public, but right now I used the nuclear approach, and reexported my own slot, using the following snippet. It's not great because now it allows any and all attributes, but it unblocked me. I wonder if it could be improved by allowing passing generic types directly, or a factory function that returns a custom component with the exact props one may want.
import { Slot as ReactSlot } from "@radix-ui/react-slot";

export interface SlotProps extends React.AllHTMLAttributes<HTMLElement> {
	children?: React.ReactNode;
}

const Slot = ReactSlot as React.ForwardRefExoticComponent<
	SlotProps & React.RefAttributes<HTMLElement>
>;

export { Slot };

I could see something like this:
const CustomSlot = createSlot<React.InputHTMLAttributes>();
<Custom slot ....>
Who does this impact? Who is this for?
Specialized slot use cases. I hit it when trying to modify Shadcn/ui's Form component to work better with Remix. Shadcn normally uses react-hook-form, which is client side and doesn't always need name props. Or you can set the name prop on the child component yourself.
But I wanted the wrapper component to get the name prop and pass it down to the child automatically. The types are currently preventing that.
Additional context
The reexport example above works fine and is an okay workaround, but something upstream would be great.

I used this variant

I think that making Slot a generic would be nice
type SlotPropsGeneric<Attr extends React.HTMLAttributes<HTMLElement> = React.HTMLAttributes<HTMLElement>> = Attr & {
    children?: React.ReactNode;
};

type ElementAttributes<El extends HTMLElement> = El extends HTMLInputElement
    ? React.InputHTMLAttributes<El>
    : React.HTMLAttributes<El>;

type SlotGeneric<T extends HTMLElement> = React.ForwardRefExoticComponent<
    SlotPropsGeneric<ElementAttributes<T>> & React.RefAttributes<T>
>;

const InputSlot = Slot as SlotGeneric<HTMLInputElement>;

I came here to open an issue but found this one. Any updates regarding the generic props for Slot?
This is how we will use it:
function GenericSlot<P = React.HTMLAttributes<HTMLElement>>(props: SlotProps & P) {
	return <Slot {...props} />;
}

return (
	<GenericSlot<React.ComponentProps<"svg">>
		width={"100"}
		height={undefined}
		className="w-[50px] md:w-[100px]"
	>
		{children}
	</GenericSlot>
);


Upgrade live-common

includes https://github.com/LedgerHQ/ledger-live-common/releases/tag/v17.5.0
includes https://github.com/LedgerHQ/ledger-live-common/releases/tag/v17.6.0
includes https://github.com/LedgerHQ/ledger-live-common/releases/tag/v17.6.1
includes https://github.com/LedgerHQ/ledger-live-common/releases/tag/v17.7.0
other minor libs upgrade
fixes https://ledgerhq.atlassian.net/browse/LL-4034
fixes https://ledgerhq.atlassian.net/browse/LL-2943
OperationDetail countervalues is using the operation date

Type
maintenance

We will test on TestFlight build.

We will test on TestFlight build.


Metrics for local storage write failures

What did you do?
I ran Prometheus out of disk space
What did you expect to see?
An increment in prometheus_local_storage_series_ops_errors_total on the /metrics of the struggling prometheus. Alternatively, an equivalent change in the metrics which I could use to drive an alert when this happens again.
What did you see instead? Under which circumstances?
No clear signal appeared in the metrics. Instead, the problem was discovered when RPCs to alertmanager failed often enough that I read the stderr log of the failing prometheus and saw all the "Error while checkpointing[...] no space left on device" logs created by MemorySeriesStorage.loop.

Prometheus version:
1.1.3 (plus some local mods which aren't related)

Logs:

time="2016-10-17T13:49:43-04:00" level=error msg="Error while checkpointing: write /var/opt/prometheus/state/heads.db.tmp: no space left on device" source="storage.go:1158"
time="2016-10-17T13:49:43-04:00" level=info msg="Checkpointing in-memory metrics and chunks..." source="persistence.go:548"

Did prometheus_local_storage_persist_errors_total go up at least?

Maybe there is a way to solve the problem in a more general case, as in monitoring available disk space and use prometheus predict_linear to alert a few minutes/hours/days before the server would run out of disk or hit 80% or whatever makes sense in your case. I've seen this being used to monitor file descriptor saturation in a similar way.

The relevant metrics in the current metrics layout is indeed prometheus_local_storage_persist_errors_total.

Persist errors appeared about 50 minutes after the first logged write-failure. I was missing alert rules for it, but such a long delay makes me think that there's something else that could be done.

A logged write failure should definitely also increase a suitable counter.
Unless it's from within LevelDB... different story. ;-/

Might be that we just don't count failures to write a checkpoint in prometheus_local_storage_persist_errors_total, and for some reason, there weren't any chunks to persist in your set-up. I'll check that out and fix as appropriate.


add meta require for search engine

Tell a word about this web page and tell the details of the webpage.

It’s good.first I will edit it and sorry

no worries at all, you can update this pull request or close it and create a new one. Let me know if you have any questions


Several ZMQ sockets get created and left behind

Running stress_test.py results in several zmq sockets being created and left behind. Possible that the new peer connection method or socket bind gets called more than necessary.
Commit: https://github.com/hamon-in/librtcdcpp/commit/02a384a40e3d0939ba743b124fc8b31836ee497e (Branch protobuf)

eee8fa4fd91a06c5003440a908fec2e7be869df5 fixes this.


Replace dynamically generated errors with constants

Only errors that contain static text message were replaced since they remain constant until the end of runtime.
Packages cell, compare, keys, message, session now contain more error constants, one may use them to compare with error returned by some function from the same package.
ErrOverflow will be deprecated starting from 0.14.0, ErrOutOfMemory is recommended instead due to more understandable name.
Checklist

[X] The coding guidelines are followed
[X] Changelog is updated

@Lagovas could you please approve the PR or tell what exactly is still missing?


Option for account removal

In the long run we need a link in the UI which removes the account and all data.

When the user asks for account termination, we cannot delete the user completly if there is already a publication.

Duplicate of #358


Support MapField[New feature]

is that possible to add a hashMap as field to store data ,eg.
@Documents
public class Student{
@Id
String id;
@Indexed
Map<String,Integer> courseMap;
}

I don't see why not, let me do some testing first...

Ok, in a free-form map inside a JSON document, the serialization is easy, problem is with what to index... Let me explain:

You could index all the key names by their JSON Path but that would mean that the framework would have to detect the names being added and generate new schema fields dynamically - probably a no go
We would need to create a special properties for @Indexed Maps and the user would have to provide a comma separated list of keys for which to create index fields, and the query builder would have know how to assemble those queries
Also, the Metamodels would need to create entries for each of those keys too

So let me pass the idea around the other OM maintainers and see if it is something that makes sense having.

many thanks for quick response

I ran into this exact need just now, is there any progress or plans feature wise?

@slorello89 Steve, can you think of a way to make something like this work? Free-form Map/Dictionary in a JSON object?

@bsbodden @slorello89
any solution can do follow:
//-------------obj
@Document
FeedDoc{
String id;
@Indexed
Map<String,Integer> likeMap;
}
/////////----------buessiness logic
FeedDoc feed=dao.findById("xxxx");
Map<String,Integer> dbMap=feed.getLikeMap();
dbMap.put("abc",dbMap.get("abc")+1）;
feed.setLikeMap(dbMap);
dao.save(feed);
/// then i can continue to change this map's value for different key


Add missing imports of euler_number and perimeter_crofton

These functions had been implemented, but were missing from the __init__.py in skimage.measure. This was not caught because the test cases had imported them from the private submodule!

@gpucibot merge

Currently users could only obtain these only via import from a private submodule:
from cucim.skimage.measure._regionprops import euler_number, perimeter_crofton

while the fix here makes it available via

from cucim.skimage.measure import euler_number, perimeter_crofton

Thanks Greg! 🙏


CAMEL-18957: converted mongodb tests to the new camel-test-infra-core

Checkstyle issue is related to this: https://issues.apache.org/jira/browse/CAMEL-18975.
I'll look at it tomorrow.


feature crear vista perfil & iconos perfil, productos

Description
Please include a summary of the change.
fixes # (#140 #138)
Screenshots
#140

#138

If applicable, add screenshots about your changes
Type of change
Please delete options that are not relevant.

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

How to test it
If applicable, describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

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

Checklist:

[ ] Doesn't break the current code.
[ ] Passes linters and test, also is building.
[ ] Doesn't have spelling or grammatical problems.
[ ] Doesn't have unnecessary comments or debugging code.
[ ] The branch is updated with the last dev branch changes.

@angelik0828 what do you think of the change in the back button?

Tested on local.
It will require more work to add functionality but that can be handled in another PR.
Added active state for new links

Tested on deployment

Would need a little bit of more work visually but will merge to fix that as Bugs

❌ The create product button is not there validate what happened


Fixes bool filters, add new bool filters, and add createdAt and updatedAt to get_transactions

This PR does the following:
Fixes Bool Filter Default Behavior

Resolves an issue with bool filters where the default behavior, when not explicitly provided, incorrectly defaulted to False, resulting in unintended filter application. The fix ensures that if bool filters are not provided, the filter is not applied.

Introduces Two New Bool Filters

Adds two new bool filters, imported_from_mint and synced_from_institution, providing more detail in filtering transactions based on their import source.

Transaction Response Enhancements

Includes createdAt and updatedAt fields in the transaction response.

Please let me know if there's anything I should change or any feedback. Thanks!

Will fix https://github.com/hammem/monarchmoney/pull/41

Thanks all!


AST: add names to global idents

Instead having crate + (non-empty) path, make crate + path + name

Fixed by #177 and other PRs.


Improve common_gates docstrings

Bundle of minor fixes for docstrings in common_gates.py.

Automerge cancelled: A status check is failing.

Failure is spontaneous kernel death in notebook; will retry when available.


Pull request for  #8: Error in applying plugin from a shared script

Hi,
here are the proposed changes to allow plugin application from an external gradle script.
Changes in main directory are quite straightforward, I just applied the plugins by full qualified name.
I needed more changes in the test directory, also because I develop on Windows, so I had to introduce some variants on process execution, depending on the actual os where the build is run.

I think, the last commit 30d7c94 is wrong, it does effectively disable the release. The reason, why it is necessary to check for the PULL_REQUEST environment variable, is ajoberstar/gradle-git#137.
Since 18d6a5a did succeed on travis, I think I should merge this commit into master.
Why did you introduce the last commit?

Ah, now I see, why you did the last commit. Can you please try
diff --git a/.travis.yml b/.travis.yml
index e731452..53fd763 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -23,8 +23,6 @@ before_install:
 install:
   - echo "skip default gradlew assemble"
 script:
-#  - ./gradlew release cobertura -Dorg.ajoberstar.grgit.auth.username=${GH_TOKEN} -Dorg.ajoberstar.grgit.auth.password -Dgradle.publish.key=${GRADLE_KEY} -Dgradle.publish.secret=${GRADLE_SECRET} --info --stacktrace
-#  - '[ "${TRAVIS_PULL_REQUEST}" = "false" ] && ./gradlew release cobertura -Dorg.ajoberstar.grgit.auth.username=${GH_TOKEN} -Dorg.ajoberstar.grgit.auth.password -Dgradle.publish.key=${GRADLE_KEY} -Dgradle.publish.secret=${GRADLE_SECRET} --info --stacktrace || true'
-  - './gradlew test --info --stacktrace'
+  - [ "${TRAVIS_PULL_REQUEST}" = "false" ] && ./gradlew release cobertura -Dorg.ajoberstar.grgit.auth.username=${GH_TOKEN} -Dorg.ajoberstar.grgit.auth.password -Dgradle.publish.key=${GRADLE_KEY} -Dgradle.publish.secret=${GRADLE_SECRET} --info --stacktrace || ./gradlew build cobertura --info --stacktrace
 after_success:
   - ./gradlew coveralls

The SemanticReleaseIntegrationAuxScriptSpec does not succeed on master. I don't know yet why. Today I don't have time to have a look. I will try to fix it tomorrow.


Users cannot add an answer to a question that is older than 30 days

Issue #12
This is my first go at it, but we haven't discussed what the front end will look like. Do we want to remove the new answer form from the page if the question is older than 30 days?

From my point of view, I think we either have a flag(expired) on question and have job run daily to update questions that over 30 days or leave as it is and have a method Question#expired? in question model.
The advantage of adding a flag to question model, it will be easier to query and faster with partial index.
I totally agree we shouldn't show new answer form instead we might want to show somewhere either text description or badge status to tell to users.

We'll still need to add an error to any answer object that comes through- in case someone tries getting past the missing form with a POST request. But I can move the logic to the Question model and query that to see if we'll allow the new answer to be added.
Anyone else have an opinion on the flag/method debate?

Maybe we could add a can_be_answered? method to the question model.  Then we could check that whenever a user tries to answer a question?  I'll look into implementing it tomorrow, it has been a long week at work so I haven't had much time to look over the source code yet

I've already started working on it. I can commit the updates with the updated tests either tonight or tomorrow.

Just saw your method. Looks good to me. I'll get started on some other issues tomorrow.

I've committed some updates based on the feedback I got. I decided to hold off on a con job task for now since it could be a pain for people who are hosting on Heroku. Let me know what you guys think.

I've made updates to use a boolean value and run a job each night at 2:30 am to update questions that need to be closed.

I dug through this, one line at a time and this is the only way I could get all the tests to pass.

Any more feedback on this or can it be merged?

Unless anyone has anything else to add I'm going to merge this.