Support Row Level / Column Level Policy

Summary
Support CLS / RLS application from Main
PR Type: Feature
Status: WIP
Breaking change? No

Codecov Report

Merging #75 (1206fd7) into master (650a684) will decrease coverage by 0.99%.
The diff coverage is 2.22%.

:exclamation: Current head 1206fd7 differs from pull request most recent head bc49865. Consider uploading reports for the commit bc49865 to get more accurate results

@@            Coverage Diff             @@
##           master      #75      +/-   ##
==========================================
- Coverage   65.00%   64.01%   -1.00%
==========================================
  Files         118      118
  Lines        4875     4952      +77
  Branches      246      239       -7
==========================================
+ Hits         3169     3170       +1
- Misses       1706     1782      +76

Flag
Coverage Δ

unittests
64.01% <2.22%> (-1.00%)
:arrow_down:

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

Impacted Files
Coverage Δ

src/main/scala/ai/starlake/config/Settings.scala
84.84% <ø> (ø)

...ai/starlake/job/index/bqload/BigQueryJobBase.scala
24.77% <0.00%> (-25.23%)
:arrow_down:

...starlake/job/index/bqload/BigQueryLoadConfig.scala
88.88% <ø> (ø)

.../starlake/job/index/bqload/BigQueryNativeJob.scala
0.00% <0.00%> (ø)

...i/starlake/job/index/bqload/BigQuerySparkJob.scala
20.00% <0.00%> (+0.26%)
:arrow_up:

...in/scala/ai/starlake/job/ingest/IngestionJob.scala
55.48% <0.00%> (-0.12%)
:arrow_down:

...c/main/scala/ai/starlake/schema/model/Schema.scala
73.38% <ø> (ø)

src/main/scala/com/ebiznext/comet/job/Main.scala
0.00% <0.00%> (ø)

...scala/ai/starlake/workflow/IngestionWorkflow.scala
41.77% <10.52%> (-2.38%)
:arrow_down:

Continue to review full report at Codecov.

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


Memory Leaks... when I did "mat -> Intptr -> mat"

Current I use c++ dll in c#. program flow is like below..

[c++] get some image, then return the Mat data.
[c# -1] get the data and then convert to Mat data (IntPtr -> Mat)
[c# -1] enqueue that image data. transfer that queue to second c# script.
[c# -2] get image data from first c# script.
[c# -2]  dequeue and then use that image

Environment
Windows 10
Example code:
Here is the [c# - 1] Code
[DllImport("Camera_Connector")]
public static extern IntPtr GetImageFrame();
private Queue OrigianlFrame = new Queue();
// get mat format from camera
IntPtr image = GetImageFrame();
// conver intptr to mat
Mat frame = new Mat(image);
// store original frame in queue
OrigianlFrame.Enqueue(frame);
Here is the [c# - 2] Code
// Image Processing ///
Mat copy_image = OriginalFrame.Dequeue();
. . . .
//////////////////////////
Comments
When I execute the program, program quits just few minutes after.
I think that problem is memory leaks.
How can I solve this problem? Help me!!

Do you call copy_image.Dispose(); ?
I do not recommend this method, because you may suffer from difficult and confusing errors. The OpenCV and C++ runtime versions of your C++ program must be the same as the OpenCvSharp's dependencies. It is desirable and safe to write all your programs in C++ or all in C#.

I did use copy_image.Dispose() ... but still occurs the memory leaks....;;

Please check if memory leak occurs even if you erase all image processing code.
I can only say that you should call Dispose thoroughly. Calling GC.Collect regularly may also be effective. https://github.com/shimat/opencvsharp/issues/559
Or it may have failed to release cv::Mat memory due to a problem with C++ described above.


Running a node, what is staking?

I have the Windows app on Windows 10. Under my profile, then System, there is Node Management.

Under that area, what is Staking Address and how is it used?
Is it required to run a node?
Does the user running a node have to put up POC to run a node?
Is there a link about running a node that has more complete information?

Thank you to devs doing all this work to get this going. I really do appreciate it.
Thank you.

The launch of the node in the desktop application is still under development. Additional information will appear with the release of the feature.


feat: add scaffolder actions plugins

Description
Add scaffolder actions for quay, regex, sonarqube, servicenow
Per https://redhat-internal.slack.com/archives/C05HGAR2DT5/p1700654673164509?thread_ts=1700250550.958579&cid=C05HGAR2DT5
Which issue(s) does this PR fix
N/A
PR acceptance criteria
Please make sure that the following steps are complete:

[ ] GitHub Actions are completed and successful
[ ] Unit Tests are updated and passing
[ ] E2E Tests are updated and passing
[ ] Documentation is updated if necessary (requirement for new features)
[ ] Add a screenshot if the change is UX/UI related

How to test changes / Special notes to the reviewer

/approve
/lgtm

no need to configure regex and quay plugins in dynamic-plugins.default.yaml? If not, then +1.

Correct. Regex and quay do not have any app-config.yaml settings available therefore we do not need to provide pluginConfig for them.

But I notice janus-idp-backstage-scaffolder-backend-module-sonarqube is set to disabled. Are these other two enabled by default? Should we be explicit with disabled: false ?

Correct, since quay and regex do not require any settings, they are enabled by default as per https://docs.google.com/spreadsheets/d/1dNUAGTeosEzreX9fxFTW1Vq3oGCbHroZ_DFEL8sjfjY/edit?disco=AAABBIH-PLE
The other 2 are disabled, since they require config values to be provided by user.


Converting XNA Matrix to JMatrix for TransformedShape

It seems my rotated models are appearing different than the collision shapes in Jitter. Here is how I'm converting them:
   public static JMatrix ToJMatrix(this Matrix matrix)    {        return new JMatrix(            matrix.M11, matrix.M12, matrix.M13,            matrix.M21, matrix.M22, matrix.M23,            matrix.M31, matrix.M32, matrix.M33        );    }
Is this correct?
I'm then creating a transformedshape:
 TransformedShape tfs1 = new(boxShape, center,rotationMatrix.ToJMatrix());

This looks okay. It depends on the definition of your transformations. Did you try to set the transpose, i.e. flipping Mxy to Myx. If this does not resolve the problem you can try to debug the transformation by utilizing RigidBody.DebugDraw to show where Jitter sees the shape in world space.

Okay I had no idea about the debug drawer, very handy thank you.
For any XNA/Monogame user which might stumble upon this in the future, here's a rough implementation of the IDebugDrawer I quickly whipped up. It's not terribly efficient and has a lot of room for improvement but it should give you a base.
public class JitterDebugDrawer : IDebugDrawer
 {
     private GraphicsDevice _graphics;
     private BasicEffect _basicEffect;
     private VertexPositionColor[] _verticies;
     private ushort _vertexCount;
     private ushort _triangleCount;
     public JitterDebugDrawer(GraphicsDevice graphics)
     {
         _graphics = graphics;
         _basicEffect = new BasicEffect(_graphics);
     }

     public void DrawPoint(in JVector p)
     {
         var vertices = new[] { new VertexPositionColor(p.ToXnaVector(), Color.Red) };
         _graphics.DrawUserPrimitives(PrimitiveType.PointList, vertices, 0, 1);
     }

     public void DrawSegment(in JVector pA, in JVector pB)
     {
         var vertices = new[] { new VertexPositionColor(pA.ToXnaVector(), Color.Blue), new VertexPositionColor(pB.ToXnaVector(), Color.Blue) };
         _graphics.DrawUserPrimitives(PrimitiveType.LineList, vertices, 0, 1);
     }
     public void PrepareForRigidBody()
     {
         _vertexCount = 0;
         _triangleCount = 0;

         RasterizerState rasterState = new RasterizerState();
         rasterState.CullMode = CullMode.CullCounterClockwiseFace;
         _graphics.RasterizerState = rasterState;

         _basicEffect.View = Game1.Camera3D.ViewMatrix;
         _basicEffect.Projection = Game1.Camera3D.ProjectionMatrix;
         _basicEffect.CurrentTechnique.Passes[0].Apply();

         _basicEffect.VertexColorEnabled = true;
         _verticies = new VertexPositionColor[ushort.MaxValue];

     }

     public void DrawRigidBody()
     {
         _graphics.DrawUserPrimitives(PrimitiveType.TriangleList, _verticies, 0, _triangleCount);

     }
     public void DrawTriangle(in JVector pA, in JVector pB, in JVector pC)
     {
         _verticies[_vertexCount] = new VertexPositionColor(pA.ToXnaVector(), Color.Green);
         _vertexCount++;
         _verticies[_vertexCount] = new VertexPositionColor(pB.ToXnaVector(), Color.Green);
         _vertexCount++;

         _verticies[_vertexCount] = new VertexPositionColor(pC.ToXnaVector(), Color.Green);
         _vertexCount++;

         _triangleCount++;

     }
 }

Very nice. Have you been able to debug/fix the problem with the XNA<->Jitter conversation?

Unfortunately not. Here's my code for placing the rigid body on top of the visual model. Note that I am extracting bounding boxes from my mesh and using those as a list of shapes. From the gif you can see that the correct mesh is placed when no rotation occurs, but things go south quickly with any sort of rotation. It could very well be that my math is off however, as some of the boxes seems to be completely out of place in relation to one another

:

     public void CreateFromMeshes(VoxelModel voxelModel, Vector3 position, Quaternion rotation)
     {

         ColliderType = ColliderType.Static;
         List<Shape> shapes = new();

         List<BoundingBox> boundingBoxes = VertexElementExtractor.CreateBoundingBox(voxelModel.StructureInfo.CollisionModel);
         foreach (BoundingBox boundingBox in boundingBoxes)
         {
             Vector3 center = (boundingBox.Max + boundingBox.Min) * 0.5f;

             Vector3 boxDimensions = boundingBox.Max - boundingBox.Min;

             rotation.Normalize();

             Matrix rotationMatrix = Matrix.CreateFromQuaternion(rotation);

             BoxShape boxShape = new BoxShape(boxDimensions.ToJitterVector());
             TransformedShape tfs1 = new(boxShape, center.ToJitterVector(),rotationMatrix.ToJMatrix());
             shapes.Add(tfs1);

         }

         CreateBody(World.CreateRigidBody());

         Body.Tag = this;
         Body.AddShape(shapes);
         Body.IsStatic = true;
         Body.Position = position.ToJitterVector();

     }

This looks interesting. Is there a reason why you do not just build the (unrotated) house using box shapes and then apply the rotation and position of the house to the body?

Oh. I had no idea you could do that. Yes that completely solved it lol. Thank you a bunch, also I've made a pull request to add JitterPhysics2 to the official Monogame suggested libraries (there currently are no suggested 3D physics engines!) so hopefully that gets merged soon! Thanks for all your hard work


Unable to complete market buy orders & limit orders not completing

As you can see from the below attached screenshot. The error from console. Market sells work as expected. Limit orders also do not match as expected. The only thing currently working as expected is the market sell for orders.

Note: limit orders will stay/show on the exchange however the spread is incorrectly displayed. Please check the second attached image for reference.

Using the Kovan Network on Ubuntu 18.04.2

Limit orders also do not match as expected

Can you expand on this, what behaviour are you expecting?

Yes, as you can see in the second image there is one buy limit and one sell limit order that has been placed for 0.001 weth and 1 zrx.
These orders are not being filled automatically as I would expect.

@bitstashco this automated matching is not a current feature for the Open Orderbook model. As it crosses a boundary of active participation, an activity some teams desire to avoid.
In the real world, the opportunity for profit attracts actors in ecosystem to match, rather than the operator of Launch Kit.

I understand, we are simply testing how things work with 0x. The primary issue was that market buys were not going through and giving an error on the initial install.

As to an update to the issue. I have tested with 0 fees and everything works as expected. There for some reason are some issues when setting a fee amount on kovan for market buy orders.
I guess this is a similar issue with the back-end as well as it mentions:
RPC_URL -- Update with your node url. NOTE: Kovan doesn't work on INFURA with the current version of the OrderWatcher.
Which could be why the order produces an error. I do appreciate your fast response and time helping.

RPC_URL -- Update with your node url. NOTE: Kovan doesn't work on INFURA with the current version of the OrderWatcher. Oops this is now out of date as INFURA got an upgrade!
I'll try and reproduce what you're seeing. Did you deposit ETH into WETH (there's two flows depending if the user has WETH or only ETH)? Were there any fees on the orders?

Yes I deposited ETH and converted it to WETH I also got ZRX as well. I then split the balances into 3 addresses for testing. Fee address #1 and trading accounts #2 and #3.
I have tested on Kovan and Ropsten the error has occurred on both test networks.
I set the maker and takers fees to 0.01 ZRX.
Everything was left default except for the eth address for fees.
Regarding the flows, on Kovan & Ropsten I tested with converted eth (weth) and without for the market buys and it produced the same error.


Upgrade for 3.0.0-preview8.19405.7

Hello! Ive merged this work outside the PR. Thank yoU!

Thanks Gutemberg I appreciate the library!


removed unstable gate from crate_authors

The cargo feature it depends on has been available since april, I think we can make this stable now.

Thanks! @homu r+

:pushpin: Commit 3398b64 has been approved by kbknapp

:hourglass: Testing commit 3398b64 with merge 84a0875...

:sunny: Test successful - status


SoxBindings doesn't release GIL.

Following discussion in #4, SoxBindings "works" in multithreading in that it doesn't fail, but it doesn't let you actually use multi-threading. We can fix that by releasing the GIL in the C extension.

Is there any reason we can't use multiprocessing instead? The GIL isn't so much of an issue in that case. Or does it introduce too much overhead?


Tooltip in table being displayed far from cell

components: UncontrolledTooltip
reactstrap version #6.4.x
import method es
react version #16.4.1
bootstrap version #4.0.0

What is happening?
When populating a table where each cell contains a tooltip, the tooltips for the cell are being displayed far from the cell.

Note that in the image above, I am highlighting the row starting with 2H20
What should be happening?
Tooltip should be displayed immediately above the cell. Also, how can I display HTML in the tooltip like the original Bootstrap component?
Steps to reproduce issue

Generate a table using basic HTML (no reactstrap components)
Create a (tr) row with an enclosed (td) and (UncontrolledTooltip).
Tooltip is displayed far from cell

Code
import React from 'react'
import ReactDOM from 'react-dom'
import { UncontrolledTooltip } from 'reactstrap';

      Test

      {px}
      <UncontrolledTooltip
        placement="top"
        delay={{show: 50, hide: 0}}
        target={key}
        key={key + '_tooltip'}>
        {title}
      </UncontrolledTooltip>

Just tried with using the Table boostrap component as per the following code:
import React from 'react'
import ReactDOM from 'react-dom'
import { UncontrolledTooltip } from 'reactstrap';

      Test

      {px}
      <UncontrolledTooltip
        placement="top"
        delay={{show: 50, hide: 0}}
        target={key}
        key={key + '_tooltip'}>
        {title}
      </UncontrolledTooltip>

And facing the same issue.

One observation I've made is it seems the bug occurs due to scrolling. The further I scroll down the page, the further the tooltip is from the cell.

At the top of the page, the tooltip is displayed correctly.

I'm not able to reproduce based on the example code provided. If possible, can you recreate this with one of the online tools (like stackblitz)
Here is what I got when I tried: https://stackblitz.com/edit/reactstrap-v6-hubdr5?file=Example.js

You are right, I created an extremely long example of the version you posted and it works fine.
Looking around, I see someone posted a similar issue before where the tooltip was using the page coordinate instead of the mouse coordinates to position the tooltip.
Could it be another library I am importing?
I understand this is no longer related to reactstrap but would appreciate any help I can get.
Moataz

Actually, I found what the issue is! I was setting zoom level for the body element to 75% and that was somehow messing up the positioning of the tooltip. I've removed the zoom level and it is perfect now, thanks!


refactor(connector): added amount conversion framework for multisafepay

Type of Change

[x] Refactoring

Description

This PR adds amount conversion framework to  Multisafepay and It will work in MinorUnit
Additional Changes

[ ] This PR modifies the API contract
[ ] This PR modifies the database schema
[ ] This PR modifies application configuration/environment variables

Motivation and Context

How did you test it?

Flows Tested in Multisafepay:
Request:
curl --location 'http://<IP_ADDRESS>:8080/payments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: dev_ZrazARzPyLENQIsZtQhOBxyj6ZInbkSYFWFZwyOXZlZhbCiV2jt3jreOSg1TdbQn' \
--data-raw '{
    "amount": 6540,
    "currency": "USD",
    "confirm": true,
    "capture_method": "automatic",
    "capture_on": "2022-09-10T10:11:12Z",
    "amount_to_capture": 6540,
    "customer_id": "StripeCustomer",
    "email"<EMAIL_ADDRESS>    "name": "John Doe",
    "phone": "999999999",
    "phone_country_code": "+1",
    "description": "Its my first payment request",
    "authentication_type": "no_three_ds",
    "return_url": "https://duck.com",
    "payment_method": "card",
    "payment_method_data": {
        "card": {
            "card_number": "4242424242424242",
            "card_exp_month": "10",
            "card_exp_year": "25",
            "card_holder_name": "joseph Doe",
            "card_cvc": "123"
        }
    },
    "billing": {
        "address": {
            "line1": "1467",
            "line2": "Harrison Street",
            "line3": "Harrison Street",
            "city": "San Fransico",
            "state": "California",
            "zip": "94122",
            "country": "US",
            "first_name": "someone",
            "last_name": "happy"
        }
    },
    "routing": {
        "type": "single",
        "data": "multisafepay"
    },
    "shipping": {
        "address": {
            "line1": "1467",
            "line2": "Harrison Street",
            "line3": "Harrison Street",
            "city": "San Fransico",
            "state": "California",
            "zip": "94122",
            "country": "US",
            "first_name": "someone",
            "last_name": "happy"
        }
    },
    "statement_descriptor_name": "joseph",
    "statement_descriptor_suffix": "JS",
    "metadata": {
        "udf1": "value1",
        "new_customer": "true",
        "login_date": "2019-09-10T10:11:12Z"
    }
}'

Checklist

[ ] I formatted the code cargo +nightly fmt --all
[ ] I addressed lints thrown by cargo clippy
[ ] I reviewed the submitted code
[ ] I added unit tests for my changes where possible

#[serde_with::skip_serializing_none]
#[derive(Clone, Debug, PartialEq, Deserialize, Serialize)]
pub struct Item {
    pub name: String,
    pub unit_price: f64,
    pub description: Option<String>,
    pub quantity: i64,
}

in the above struct the unit_price should be FloatMajorUnit, though we are sending this data as None to the connector it should be marked as our domain type, please look into these in other pr's as well

Sure I will on them


TimesTen database support

Original author<EMAIL_ADDRESS>(May 17, 2013 12:46:16)
Please see pull request: https://github.com/flyway/flyway/pull/24
Original issue: http://code.google.com/p/flyway/issues/detail?id=490

Closing due to lack of interest.


Avoid dynamic creation of ArrayMethods classes and new wrapjaggedmethods decorator

Hi, I suggest here a fix for the issue I explained in https://github.com/scikit-hep/awkward-array/pull/120.
The problem is the dynamic creation of classes in the _unwrapped_jagged function, which causes classes which you would expect to have the same type to actually not the same type.
I suggest two solution approaches which both work for my use case.

create the new types ass class members (not instance members) of the classes that use them
create the new types outside of the class, just in the scope of the file

I applied solution 2) to the from_ptetaphim function. Creating the types outside the class actually has one more cool benefit: you can use the types with a new decorator I called for now wrapjaggedmethod, which takes care of the _normalize_arrays, _unwrapped_jagged and re-wrapping into a jagged array for you.
I hope these Ideas could be useful to reduce code duplication as well. What to you think? Sorry again for initially implementing a lousy unit test which didn't catch this before...

If I understand correctly, this wrapjagged is exactly what I was looking for in https://github.com/CoffeaTeam/fnal-column-analysis-tools/issues/60#issuecomment-473594305
This is a procedure we use often in that package, it would be good for the facility to be available in awkward itself.

I was just about to give awkward a new semimajor version, which is a thing that would be required if we want to introduce a cross-repo dependency like this.
The whole file uproot_methods/wrapjagged.py could be moved into awkward/util.py. Do you want me to do that?

To me that sounds like a good idea! I would also suggest to decorate all the other from_xyz methods with wrapjaggedmethod, to close the circle. I would volunteer to do that quickly.
The name wrapjaggedmethod is probably not optimal by the way, because it suggest it can only be with classmethods and not with regular functions.

@guitargeek Could you create a PR of how you'd like it to look in awkward and then in uproot-methods? I understand that the uproot-methods PR won't succeed until the awkward PR is deployed, at least to a prerelease. I'm going to start a prerelease cycle for all three to get the machinery started.
If it's a large project, please let me know and we'll put it off for later. I want to have a pip-installable version for a talk on Wednesday. Thanks!

This makes implementing a few non-ufunc numpy ops trivial, so would be very useful I think!
Perhaps the broader idea is a decorator that wraps a function that normally accepts numpy arrays and allows it to be used with awkward (i.e. not just jagged) arrays?

@nsmith- If you mean "any function," then that's too broad. I don't see a way to do it in general.
The important thing right now—at the threshold of awkward version 0.9.0, is to get in the API dependencies between awkward and uproot-methods to get the functionality above to work. We need general names, because we can't change names until the next semimajor version, but we can leave holes for additional functionality. For instance, the wrapper might only work on JaggedArrays right now, but we name it something general and let it raise NotImplementedError on non-JaggedArray cases. As long as the non-JaggedArray cases can be implemented in only one repo—awkward and not uproot-methods, for instance—then we can do that at any time and it wouldn't require a new version. It would be a future awkward feature, not a combined awkward/uproot-methods feature, like this one.

Alright, is it ok if I quickly come up with two PRs each in awkward and uproot-methods and then we can continue discussing? For now I will rename the decorator to just awkwardfunction I think, but maybe you will find a better name.

Yes, focus on the two PRs—no new capabilities, just organizing this capability better. The name will have to explain what it does in contrast to other awkward.util functions, "awkwardfunction" doesn't tell me anything. It would still be correct to call this "wrap" and "unwrap", right? How about unwrap_awkward and wrap_awkward?
I used the word "normalize" in a CS way while that function was private (with an underscore). If it's public and physicists will see it, there's a chance of confusion (making the norm 1). Maybe it should be called uniformly_awkward? It makes all the given arrays have the same structure.

Haha right awkwarfunction is a terribly generic name!
Not all functions have to be public, the underscore could still exist for everything else than the decorator.
It could be:
_normalize_arrays -> _unwrap_awkward
_unwrap_jagged -> _wrap_awkward
wrapjaggedmethod -> ?? (the decorator)

If uproot-methods is going to call it, the methods must be public. (Underscore means we're free to change it, but if another library, like uproot-methods, depends on it, then changing it would break that without us knowing. That happened once—it's a disaster I'd like to avoid.)
I'm confused by your mapping. Why does "unwrap" become "wrap"? That's the opposite. What _normalize_arrays did wasn't wrapping or unwrapping—it was getting all the arrays in a set to the same level of jaggedness, even if some were scalars or flat arrays. (E.g. allows us to set jagged arrays on pt, eta, phi but a scalar on mass.)

scikit-hep/awkward-array#122


[DEV] update jooq version 3.18.6 and vertx  4.4.5

i update the version of jooq and vertx link to ticket #225
i fix the issue on jsonb issue also

@jklingsporn Is anything holding back this PR?


Slugify heading IDs instead of escaping?

Issue Summary
This is how the IDs look now in Cyrillic (russian):

They should look something like this:

Is this the correct behavior? I expected IDs to be generated in the same way as slugs.
Steps to Reproduce

Create a heading with non-latin text.
Check the generated heading ID.

Ghost Version
4.27.2
Node.js Version
16.13.1
How did you install Ghost?
ghost install local
Database type
SQLite3
Browser & OS version
No response
Relevant log / error output
No response
Code of Conduct

[X] I agree to be friendly and polite to people in this repository

Hey @nag - this behaviour is by design, so that

links or urls are displayed by browsers they will appear as native characters

Hey @nag - this behaviour is by design, so that

when links or urls are displayed by browsers they will appear as native characters

I can confirm this issue. While using accented characters I get some ugly IDs which break the use of for example a TOC.
Looking at ? for example, they are actually removed from the generated IDs but not ¿¡!= %C2%A1%C2%BF
Why not keep it like the Post Url slugs? All special characters are removed and accented ones are turned into A-Z, a-z.
It's been almost a decade and Ghost's still lacking in multilingual support compared to WP.


Invalid instance in docs

In the readme, you have:
new ActiveCampaign("https://ACCOUNT.api-us1.com", {{KEY}});

In ES6, {KEY} is equivalent to { KEY: KEY }, which would lead me to believe that the right way to create a new instance would be something like:
const ac = new ActiveCampaign('https://account.api-us1.com', {
    KEY: 'some key',
});

When instead, it's actually:
const ac = new ActiveCampaign('https://account.api-us1.com', 'some key');

Hey @leebenson, the example provided is Handlebar syntax, ie, there are two brackets present, not one. This was to suggest that this was a value that needed to be replaced in your implementation.

IMO that's ambiguous/unclear, since {{KEY}} is valid JS if KEY is a defined value.
Would be better to surround KEY in quotes, to represent the string the constructor is expecting.

@leebenson We'll be rewriting the README for the next major release and will adjust this so that it's more clear. However, double brackets {{}} are not valid JS syntax. You're right that that would be valid syntax if it were {KEY} and that can lead to confusion so we'll make that change for sure.

it's valid in this context:
someFunction = KEY => {{KEY}}

The first curly brace denotes a block; the second is an object literal. Nothing is returned in this example because the object is used as a statement, but it still runs.
My point is: It's ambiguous to see it in a readme.


feat: GET /v1/collections/{collection_uuid}

#TICKET_NUMBER

Reviewers
Functional:
@Bento007
Readability:
@nayib-jose-gloria

Changes

add GET /v1/collections/{collection_uuid}
consolidate shared logic for this route and the index route GET /v1/collections
consolidate schema definitions shared by these two routes in curation-api.yml

QA steps (optional)
Notes for Reviewer

Need to add a couple more tests still...


docs(gateway): resharding example

Resharding is an often asked about feature, so I thought there should be an official example. The contents are pretty bare, like all examples, and although I think this should be improved, this PR did not feel like the appropriate time.

I'm waiting to look at this one until after #1952


V 0.9.11 installation Bosch KM200 no entities

After new installation via "IVT => HTTP" only the "RC300/RC310/Nefit Moduline 3000" with one device but w/o any entities ist there.
Home Assistant 2020.12.2, Bosch thermostat V 0.9.11
I've also tested to install via NEFIT(XMPP only). => Unknown error occurred
and
IVT => XMPP => Unknown error occurred
bosch_scan_2021.01.02.pdf

Check logs.
I can't reproduce testing out your json bosch_scan.

Check out if you have such info in your logs:
2021-01-03 16:22:22 DEBUG (MainThread) [bosch_thermostat_client.gateway.ivt_gateway] Found supported device {'value': 'RC300', 'name': 'RC300/RC310/Nefit Moduline 3000', 'type': 'RC300'} with
 id 158
2021-01-03 16:22:22 DEBUG (MainThread) [bosch_thermostat_client.gateway.ivt_gateway] Using model RC300 as database schema
2021-01-03 16:22:22 DEBUG (MainThread) [bosch_thermostat_client.db] Attempt to load database from file /.../core/venv/lib/python3.9/site-packages/bosch_thermostat_client/db/rc300.json
2021-01-03 16:22:22 DEBUG (MainThread) [bosch_thermostat_client.gateway.base_gateway] Loading database: RC300                                                                                2021-01-03 16:22:22 DEBUG (MainThread) [custom_components.bosch] Bosch BUS detected: EMS

Check logs.
I can't reproduce testing out your json bosch_scan.

Check out if you have such info in your logs:
2021-01-03 16:22:22 DEBUG (MainThread) [bosch_thermostat_client.gateway.ivt_gateway] Found supported device {'value': 'RC300', 'name': 'RC300/RC310/Nefit Moduline 3000', 'type': 'RC300'} with
 id 158
2021-01-03 16:22:22 DEBUG (MainThread) [bosch_thermostat_client.gateway.ivt_gateway] Using model RC300 as database schema
2021-01-03 16:22:22 DEBUG (MainThread) [bosch_thermostat_client.db] Attempt to load database from file /.../core/venv/lib/python3.9/site-packages/bosch_thermostat_client/db/rc300.json
2021-01-03 16:22:22 DEBUG (MainThread) [bosch_thermostat_client.gateway.base_gateway] Loading database: RC300                                                                                2021-01-03 16:22:22 DEBUG (MainThread) [custom_components.bosch] Bosch BUS detected: EMS

I dont know whats necessary to do. There is nothing.

I dont know whats necessary to do. There is nothing.

turn on debug logs and paste all lines with 'bosch' in it

turn on debug logs and paste all lines with 'bosch' in it

Hello,
I have the same problem. It started after upgrade core to release 2020.12.1. All Bosch CC entities were unavailable so I tried to "reinstall" Bosch CC but after installation, there are no heating circuits, water heater or solar heater devices - as in the @tempo3's picture. Here is part of log after installation:
2021-01-04 11:49:48 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1753427920] Received {'type': 'frontend/get_translations', 'language': 'sk', 'category': 'config', 'integration': 'bosch', 'id': 32}
2021-01-04 11:49:48 DEBUG (MainThread[homeassistant.components.websocket_api.http.connection] [1753427920] Sending {'id': 32, 'type': 'result', 'success': True, 'result': {'resources': {'component.bosch.config.title': 'Bosch thermostat', 'component.bosch.config.step.choose_type.title': 'Choose device type.', 'component.bosch.config.step.choose_type.data.device_type': 'Choose type of your device.', 'component.bosch.config.step.http_config.title': 'Bosch thermostat HTTP config', 'component.bosch.config.step.http_config.data.address': 'IP address', 'component.bosch.config.step.http_config.data.access_token': 'Access token', 'component.bosch.config.step.http_config.data.password': 'Password', 'component.bosch.config.step.xmpp_config.title': 'Bosch thermostat XMPP config', 'component.bosch.config.step.xmpp_config.data.address': 'Serial number of device', 'component.bosch.config.step.xmpp_config.data.access_token': 'Access token', 'component.bosch.config.step.xmpp_config.data.password': 'Password', 'component.bosch.config.step.protocol.title': 'Bosch IVT Protocol. HTTP is local. XMPP is cloud!', 'component.bosch.config.step.protocol.data.Protocol': 'Either http or xmpp', 'component.bosch.config.error.service_unavailable': 'No service available', 'component.bosch.config.abort.faulty_credentials': 'Bad user credentials or wrong IP', 'component.bosch.config.abort.already_configured': 'Controller site is already configured', 'component.bosch.config.abort.unknown': 'Unknown reason. Check LOGS.'}}}                          2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/uuid
2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/bus
2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/versionFirmware
2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/brand
2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/info
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/systemType
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/DateTime
2021-01-04 11:50:17 DEBUG (MainThread) [custom_components.bosch.config_flow] Adding entry.
2021-01-04 11:50:17 INFO (MainThread) [homeassistant.setup] Setting up bosch
2021-01-04 11:50:17 INFO (MainThread) [homeassistant.setup] Setup of domain bosch took 0.0 seconds
2021-01-04 11:50:17 INFO (MainThread) [custom_components.bosch] Setting up Bosch component version 0.9.2.
2021-01-04 11:50:17 DEBUG (MainThread) [custom_components.bosch] Checking connection to Bosch gateway as <IP_ADDRESS>.
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/uuid
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/bus
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/versionFirmware
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/brand
2021-01-04 11:50:18 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/info
2021-01-04 11:50:18 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/systemType
2021-01-04 11:50:18 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/DateTime
2021-01-04 11:50:18 DEBUG (MainThread) [custom_components.bosch] Bosch BUS detected: EMS
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.util.json] JSON file not found: /config/custom_bosch_db.json
2021-01-04 11:50:18 INFO (MainThread) [custom_components.bosch] Bosch initialized.
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event service_registered[L]: domain=bosch, service=debug_scan>
2021-01-04 11:50:18 DEBUG (MainThread) [custom_components.bosch] Bosch component registered with platforms [].
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1753427920] Sending {"id": 7, "type": "event", "event": {"event_type": "service_registered", "data": {"domain": "bosch", "service": "debug_scan"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.540040+00:00", "context": {"id": "4a2bc05f64e23a23db8636eca1749060", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1798905784] Sending {"id": 20, "type": "event", "event": {"event_type": "service_registered", "data": {"domain": "bosch", "service": "debug_scan"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.540040+00:00", "context": {"id": "4a2bc05f64e23a23db8636eca1749060", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event component_loaded[L]: component=bosch>
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1798905784] Sending {"id": 18, "type": "event", "event": {"event_type": "component_loaded", "data": {"component": "bosch"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.548520+00:00", "context": {"id": "668bfa0c175448dc1dfda6bb1492acd0", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1798905784] Sending {"id": 24, "type": "event", "event": {"event_type": "component_loaded", "data": {"component": "bosch"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.548520+00:00", "context": {"id": "668bfa0c175448dc1dfda6bb1492acd0", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1753427920] Sending {"id": 4, "type": "event", "event": {"event_type": "component_loaded", "data": {"component": "bosch"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.548520+00:00", "context": {"id": "668bfa0c175448dc1dfda6bb1492acd0", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1753427920] Sending {"id": 17, "type": "event", "event": {"event_type": "component_loaded", "data": {"component": "bosch"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.548520+00:00", "context": {"id": "668bfa0c175448dc1dfda6bb1492acd0", "parent_id": null, "user_id": null}}}
I am runnig HA on R-Pi 3b+ and have Buderus web-gate Logamatic KM200.

Hello,
I have the same problem. It started after upgrade core to release 2020.12.1. All Bosch CC entities were unavailable so I tried to "reinstall" Bosch CC but after installation, there are no heating circuits, water heater or solar heater devices - as in the @tempo3's picture. Here is part of log after installation:
2021-01-04 11:49:48 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1753427920] Received {'type': 'frontend/get_translations', 'language': 'sk', 'category': 'config', 'integration': 'bosch', 'id': 32}
2021-01-04 11:49:48 DEBUG (MainThread[homeassistant.components.websocket_api.http.connection] [1753427920] Sending {'id': 32, 'type': 'result', 'success': True, 'result': {'resources': {'component.bosch.config.title': 'Bosch thermostat', 'component.bosch.config.step.choose_type.title': 'Choose device type.', 'component.bosch.config.step.choose_type.data.device_type': 'Choose type of your device.', 'component.bosch.config.step.http_config.title': 'Bosch thermostat HTTP config', 'component.bosch.config.step.http_config.data.address': 'IP address', 'component.bosch.config.step.http_config.data.access_token': 'Access token', 'component.bosch.config.step.http_config.data.password': 'Password', 'component.bosch.config.step.xmpp_config.title': 'Bosch thermostat XMPP config', 'component.bosch.config.step.xmpp_config.data.address': 'Serial number of device', 'component.bosch.config.step.xmpp_config.data.access_token': 'Access token', 'component.bosch.config.step.xmpp_config.data.password': 'Password', 'component.bosch.config.step.protocol.title': 'Bosch IVT Protocol. HTTP is local. XMPP is cloud!', 'component.bosch.config.step.protocol.data.Protocol': 'Either http or xmpp', 'component.bosch.config.error.service_unavailable': 'No service available', 'component.bosch.config.abort.faulty_credentials': 'Bad user credentials or wrong IP', 'component.bosch.config.abort.already_configured': 'Controller site is already configured', 'component.bosch.config.abort.unknown': 'Unknown reason. Check LOGS.'}}}                          2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/uuid
2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/bus
2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/versionFirmware
2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/brand
2021-01-04 11:50:16 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/info
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/systemType
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/DateTime
2021-01-04 11:50:17 DEBUG (MainThread) [custom_components.bosch.config_flow] Adding entry.
2021-01-04 11:50:17 INFO (MainThread) [homeassistant.setup] Setting up bosch
2021-01-04 11:50:17 INFO (MainThread) [homeassistant.setup] Setup of domain bosch took 0.0 seconds
2021-01-04 11:50:17 INFO (MainThread) [custom_components.bosch] Setting up Bosch component version 0.9.2.
2021-01-04 11:50:17 DEBUG (MainThread) [custom_components.bosch] Checking connection to Bosch gateway as <IP_ADDRESS>.
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/uuid
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/bus
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/versionFirmware
2021-01-04 11:50:17 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/brand
2021-01-04 11:50:18 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/info
2021-01-04 11:50:18 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /system/systemType
2021-01-04 11:50:18 DEBUG (MainThread) [bosch_thermostat_client.connectors.http] Sending GET request to /gateway/DateTime
2021-01-04 11:50:18 DEBUG (MainThread) [custom_components.bosch] Bosch BUS detected: EMS
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.util.json] JSON file not found: /config/custom_bosch_db.json
2021-01-04 11:50:18 INFO (MainThread) [custom_components.bosch] Bosch initialized.
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event service_registered[L]: domain=bosch, service=debug_scan>
2021-01-04 11:50:18 DEBUG (MainThread) [custom_components.bosch] Bosch component registered with platforms [].
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1753427920] Sending {"id": 7, "type": "event", "event": {"event_type": "service_registered", "data": {"domain": "bosch", "service": "debug_scan"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.540040+00:00", "context": {"id": "4a2bc05f64e23a23db8636eca1749060", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1798905784] Sending {"id": 20, "type": "event", "event": {"event_type": "service_registered", "data": {"domain": "bosch", "service": "debug_scan"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.540040+00:00", "context": {"id": "4a2bc05f64e23a23db8636eca1749060", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event component_loaded[L]: component=bosch>
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1798905784] Sending {"id": 18, "type": "event", "event": {"event_type": "component_loaded", "data": {"component": "bosch"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.548520+00:00", "context": {"id": "668bfa0c175448dc1dfda6bb1492acd0", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1798905784] Sending {"id": 24, "type": "event", "event": {"event_type": "component_loaded", "data": {"component": "bosch"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.548520+00:00", "context": {"id": "668bfa0c175448dc1dfda6bb1492acd0", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1753427920] Sending {"id": 4, "type": "event", "event": {"event_type": "component_loaded", "data": {"component": "bosch"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.548520+00:00", "context": {"id": "668bfa0c175448dc1dfda6bb1492acd0", "parent_id": null, "user_id": null}}}
2021-01-04 11:50:18 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [1753427920] Sending {"id": 17, "type": "event", "event": {"event_type": "component_loaded", "data": {"component": "bosch"}, "origin": "LOCAL", "time_fired": "2021-01-04T10:50:18.548520+00:00", "context": {"id": "668bfa0c175448dc1dfda6bb1492acd0", "parent_id": null, "user_id": null}}}
I am runnig HA on R-Pi 3b+ and have Buderus web-gate Logamatic KM200.

@tomasko25 you're using v0.9.2. Probably firmware've been updated in December so upgrade component and I guess it should work.

@tomasko25 you're using v0.9.2. Probably firmware've been updated in December so upgrade component and I guess it should work.

I did't realize I installed not lastest version. Now it is working. Thank you @pszafer!

I did't realize I installed not lastest version. Now it is working. Thank you @pszafer!

@pszafer Thanks a lot in advance. I have now deleted the integration again, including  renaming the folder custom_components/bosch in bosch-xxx before installed again. Everything is as before, but now it works.
The last open point is this error message:
Logger: homeassistant.helpers.integration_platform
Source: loader.py:429
First occurred: 17:17:57 (4 occurrences)
Last logged: 17:17:57
Unexpected error importing bosch/group.py
Unexpected error importing bosch/system_health.py
Unexpected error importing bosch/logbook.py
Unexpected error importing bosch/media_source.py
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/integration_platform.py", line 30, in _process
platform = integration.get_platform(platform_name)
File "/usr/src/homeassistant/homeassistant/loader.py", line 424, in get_platform
cache[full_name] = self._import_platform(platform_name)
File "/usr/src/homeassistant/homeassistant/loader.py", line 429, in _import_platform
return importlib.import_module(f"{self.pkg_path}.{platform_name}")
File "/usr/local/lib/python3.8/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1014, in _gcd_import
File "", line 991, in _find_and_load
File "", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'custom_components.bosch-xxx.group'

@pszafer Thanks a lot in advance. I have now deleted the integration again, including  renaming the folder custom_components/bosch in bosch-xxx before installed again. Everything is as before, but now it works.
The last open point is this error message:
Logger: homeassistant.helpers.integration_platform
Source: loader.py:429
First occurred: 17:17:57 (4 occurrences)
Last logged: 17:17:57
Unexpected error importing bosch/group.py
Unexpected error importing bosch/system_health.py
Unexpected error importing bosch/logbook.py
Unexpected error importing bosch/media_source.py
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/integration_platform.py", line 30, in _process
platform = integration.get_platform(platform_name)
File "/usr/src/homeassistant/homeassistant/loader.py", line 424, in get_platform
cache[full_name] = self._import_platform(platform_name)
File "/usr/src/homeassistant/homeassistant/loader.py", line 429, in _import_platform
return importlib.import_module(f"{self.pkg_path}.{platform_name}")
File "/usr/local/lib/python3.8/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1014, in _gcd_import
File "", line 991, in _find_and_load
File "", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'custom_components.bosch-xxx.group'

I don't know what you did, but seems that you renamed wrong folder.
media_source, logbook, system_health etc -> all those are internal Home Assistant modules, there is nothing in my lib like this.

I don't know what you did, but seems that you renamed wrong folder.
media_source, logbook, system_health etc -> all those are internal Home Assistant modules, there is nothing in my lib like this.

Thanks a lot again for this terrific integration of the Bosch/Buderus device.

Thanks a lot again for this terrific integration of the Bosch/Buderus device.


Import issues and type stubs

This might be an issue with me lacking python skills.
import random
import sys
import os
#sys.path.insert(0, 'script/runtime')
#from nodes import *
#from script.runtime.nodes import *

sys.path.insert(0, '../../')
import folder_paths
sys.path.insert(0, 'src')
from comfy_script.runtime import *
load()
from comfy_script.runtime.nodes import *

####################
# Randomize script #
####################

#
# Config
#

# set to true if sdxl, false if sd 1.5
xl = True

# needs to have checkpoints and loras divided in SDXL and SD 1.5 folders, embeddings needs to be divided into positive and negative folders
xl_folder_name = "xl"
sd1_5_folder_name = "sd1.5"

pos_folder_name = "pos"
neg_folder_name = "neg"

# number of images to create
images = 10

# checkpoint
randomize_checkpoint = True
# used if randomize_checkpoint is false
default_checkpoint = "xl\turbovisionxlSuperFastXLBasedOnNew_alphaV0101Bakedvae.safetensors"

# lora
randomize_lora = True
number_of_loras = 3
lora_min_value = 0.1
lora_max_value = 2
# default lora setup using CRLoRAStack, used if randomize_lora is false, if you have more then 3 loras you need to modify the code
default_lora_stack = ('On', r'xl\LCMTurboMix_LCM_Sampler.safetensors', 1, 1, 'On', r'xl\xl_more_art-full_v1.safetensors', 1, 1, 'On', r'xl\add-detail-xl.safetensors', 1, 1)

# prompt
fully_randomized_prompt = False # TODO use https://github.com/adieyal/comfyui-dynamicprompts to generate random prompt
positive_prompt = "Shot Size - extreme wide shot,( Marrakech market at night time:1.5), Moroccan young beautiful woman, smiling, exotic, (loose hijab:0.1)"
negative_prompt = "(worst quality, low quality, normal quality:2), blurry, depth of field, nsfw"
randomize_positive_embeddings = True
randomize_negative_embeddings = True
embeddings_positive_min_value = 0.1
embeddings_positive_max_value = 2
embeddings_negative_min_value = 0.1
embeddings_negative_max_value = 2

# freeu
randomize_freeu = True
min_freeu_values = [0.5, 0.5, 0.2, 0.1]
max_freeu_values = [3, 3, 2, 1]
# used if randomize_freeu is set to false
default_freeu_values = (1.3, 1.4, 0.9, 0.2)

# code taken from impact.utils
def add_folder_path_and_extensions(folder_name, full_folder_paths, extensions):
    # Iterate over the list of full folder paths
    for full_folder_path in full_folder_paths:
        # Use the provided function to add each model folder path
        folder_paths.add_model_folder_path(folder_name, full_folder_path)

    # Now handle the extensions. If the folder name already exists, update the extensions
    if folder_name in folder_paths.folder_names_and_paths:
        # Unpack the current paths and extensions
        current_paths, current_extensions = folder_paths.folder_names_and_paths[folder_name]
        # Update the extensions set with the new extensions
        updated_extensions = current_extensions | extensions
        # Reassign the updated tuple back to the dictionary
        folder_paths.folder_names_and_paths[folder_name] = (current_paths, updated_extensions)
    else:
        # If the folder name was not present, add_model_folder_path would have added it with the last path
        # Now we just need to update the set of extensions as it would be an empty set
        # Also ensure that all paths are included (since add_model_folder_path adds only one path at a time)
        folder_paths.folder_names_and_paths[folder_name] = (full_folder_paths, extensions)

model_path = folder_paths.models_dir
add_folder_path_and_extensions("loras", [os.path.join(model_path, "loras")], folder_paths.supported_pt_extensions)
add_folder_path_and_extensions("loras_xl", [os.path.join(model_path, "loras", xl_folder_name)], folder_paths.supported_pt_extensions)
add_folder_path_and_extensions("loras_sd1.5", [os.path.join(model_path, "loras", sd1_5_folder_name)], folder_paths.supported_pt_extensions)

add_folder_path_and_extensions("checkpoints", [os.path.join(model_path, "checkpoints")], folder_paths.supported_pt_extensions)
add_folder_path_and_extensions("checkpoints_xl", [os.path.join(model_path, "checkpoints", xl_folder_name)], folder_paths.supported_pt_extensions)
add_folder_path_and_extensions("checkpoints_sd1.5", [os.path.join(model_path, "checkpoints", sd1_5_folder_name)], folder_paths.supported_pt_extensions)

add_folder_path_and_extensions("embeddings", [os.path.join(model_path, "embeddings")], folder_paths.supported_pt_extensions)
add_folder_path_and_extensions("embeddings_pos", [os.path.join(model_path, "embeddings", pos_folder_name)], folder_paths.supported_pt_extensions)
add_folder_path_and_extensions("embeddings_neg", [os.path.join(model_path, "embeddings", neg_folder_name)], folder_paths.supported_pt_extensions)

def get_random_loras():
    if xl == True:
        loras = [xl_folder_name + "/" + x for x in folder_paths.get_filename_list("loras_xl")]
    else:
        loras = [sd1_5_folder_name + "/" + x for x in folder_paths.get_filename_list("loras_sd1.5")]
    return random.sample(loras, number_of_loras)

def get_lora_strength():
    return random.uniform(lora_min_value, lora_max_value)

def get_random_checkpoint():
    if xl == True:
        checkpoints = [xl_folder_name + "/" + x for x in folder_paths.get_filename_list("checkpoints_xl")]
    else:
        checkpoints = [sd1_5_folder_name + "/" + x for x in folder_paths.get_filename_list("checkpoints_sd1.5")]
    return random.choice(checkpoints)

def get_positive_embedding_strength():
    return random.uniform(embeddings_positive_min_value, embeddings_positive_max_value)

def get_random_pos_embedding():
    pos_embeddings = [pos_folder_name + "/" + x for x in folder_paths.get_filename_list("embeddings_pos")]
    num_of_embeddings = random.randint(0, len(pos_embeddings))
    if num_of_embeddings == 0:
        return ""
    samples = random.sample(pos_embeddings, num_of_embeddings)
    string = ""
    for sample in samples:
        string += ", (embedding:" + sample + ":" + str(get_positive_embedding_strength()) + ")"
    return string

def get_negative_embedding_strength():
    return random.uniform(embeddings_negative_min_value, embeddings_negative_max_value)

def get_random_neg_embedding():
    neg_embeddings = [neg_folder_name + "/" + x for x in folder_paths.get_filename_list("embeddings_neg")]
    num_of_embeddings = random.randint(0, len(neg_embeddings))
    if num_of_embeddings == 0:
        return ""
    samples = random.sample(neg_embeddings, num_of_embeddings)
    string = ""
    for sample in samples:
        string += ", (embedding:" + sample + ":" + str(get_negative_embedding_strength()) + ")"
    return string

def get_random_freeu_values():
    return (random.uniform(min_freeu_values[0],max_freeu_values[0]),random.uniform(min_freeu_values[1],max_freeu_values[1]),
            random.uniform(min_freeu_values[2],max_freeu_values[2]),random.uniform(min_freeu_values[3],max_freeu_values[3]))

with Workflow():
    # checkpoint
    if randomize_checkpoint == True:
        model, clip, vae = CheckpointLoaderSimple(get_random_checkpoint())
    else:
        model, clip, vae = CheckpointLoaderSimple(default_checkpoint)

    # loras
    if randomize_lora == True:
        loras = get_random_loras()
        for lora in loras:
            model, clip = LoraLoader(model, clip, lora, get_lora_strength(), get_lora_strength())
    else:
        lora_stack, _ = CRLoRAStack(default_lora_stack)
        model, clip, _ = CRApplyLoRAStack(model, clip, lora_stack)

    # freeu
    if randomize_freeu == True:
        model = FreeUV2(model, get_random_freeu_values())
    else:
        model = FreeUV2(model, default_freeu_values)

    # positive prompt
    if randomize_positive_embeddings == True:
        pos_string = positive_prompt + get_random_pos_embedding()
    else:
        pos_string = positive_prompt

    pos_cond = CLIPTextEncode(pos_string, clip)

    # negative prompt
    if randomize_negative_embeddings == True:
        neg_string = negative_prompt + get_random_neg_embedding()
    else:
        neg_string = negative_prompt

    neg_cond = CLIPTextEncode(neg_string, clip)

Gives error:
Traceback (most recent call last):
  File "C:\Users\lingo\Desktop\ComfyUI\custom_nodes\ComfyScript\test.py", line 170, in <module>
    model = FreeUV2(model, get_random_freeu_values())
            ^^^^^^^
NameError: name 'FreeUV2' is not defined

Uncomment line 4 and 5 and it works
FreeUV2 is not recognized in VS Code, uncomment line 6 and it is recognized but script gives error:
Traceback (most recent call last):
  File "C:\Users\lingo\Desktop\ComfyUI\custom_nodes\ComfyScript\test.py", line 6, in <module>
    from script.runtime.nodes import *
ModuleNotFoundError: No module named 'script.runtime.nodes'

Not sure if this is how type stubs should be imported, new to python. The script is work in progress btw.

It's strange if CheckpointLoaderSimple works but FreeUV2 doesn't. And line 4 and 5 shouldn't work since script/runtime/nodes.py doesn't exist after v0.3 (there is a nodes directory at the repository root, but it doesn't have FreeUV2).
As for VS Code, it uses a static Python analyzer, so sys.path.insert(0, 'src') won't make the type stub file be used.
Can you delete the script directory, run python -m pip install -e . at the repository root, and try again?

I did a fresh install.
sys.path.insert(0, 'src\comfy_script\runtime')
from nodes import *

Is needed to avoid NameError: name 'FreeUV2' is not defined

All classes are recognized in VS Code now though which is good.

I've tried your script on my machine. It works without issue (the error is because no output node), both with sys.path.insert(0, 'src') and without.

Weird, I will complete the script and get back to you if the error still persists.

sys.path.insert(0, 'src\comfy_script\runtime')
from nodes import *

This shouldn't work if it's copied from the script. \r will be treated as special chars, r'src\comfy_script\runtime' is what actually needed. With this path, from nodes import * will import nodes/__init__.py and do nothing since it is empty:

Now I get it. When the runtime is used with ComfyUI loaded, it will get nodes info by import nodes instead of accessing the API.  And sys.path.insert(0, '../../') will make the runtime think ComfyUI is loaded. As for FreeUV2, it's actually FreeU_V2 in ComfyUI, so it can't be used but CheckpointLoaderSimple can.
It's now fixed. Thanks very much for your test.


Don't crash when a property name ends with Changed

Looks like this also only happens when the property value is an expression.


TODO List ❗

Reformat blackjack.py to not use global variables anymore, this will likely require an entire rework and rewrite of the code.
Create a GUI version of the game (only do this step if global variables are removed from blackjack.py).
Any other features or improvements to the game or readme file would be greatly appreciated!

Reformat blackjack.py to not use global variables anymore, this will likely require an entire rework and rewrite of the code.

You could try an object-oriented approach.
You would create a Player object with the desired attributes, e.g. player_cards, presence, etc. By using this approach, it would allow you to declare any players and you wouldn't be confined to 3.


At remote command execution the working dir can not be empty

https://github.com/jossef/vmwc/blob/495ed130ecd614f0e87191a6ea5636a232c1d1eb/vmwc/__init__.py#L693
Hi there,
in the line above the working dir has a default value of None.
It seems to be bad, neither the None nor the empty string did work for me, it worked only when I added the path of the command to the working directory.
used:
remote guest: windows 2016 server
vmware: esx 6.0
pyvmomi <IP_ADDRESS>7.5-1
python 3.6.3
BR,
George

thanks for the report
when provided with None I'm thinking about using the dirname of the program_path as a fallback
will that work for you?

making working_directory a mandatory parameter


Add C library for binary format + WIP basic compression

Binary format:

✅ Writes ~8x faster than JSON writer
✅ Outputs ~3x smaller files than JSON

WIP compression:

❌ Significantly more complex format
❌ Requires a mutex lock around TraceBegin() calls
❌ No ingest implemented yet in binparse.odin; results untested
✅ Writes an additional ~1.2-1.5x faster than uncompressed binary, making it ~9-10x faster than JSON
✅ Outputs ~5x smaller files than JSON
✅ Probably reads >1.1x faster than uncompressed binary

See also #5 for a json2bin converter in Odin that implements writing the (uncompressed) binary format. Hardly production quality, but it makes obtaining binary traces a bit easier.
As for compression with LZ4, JSON:
lz4 -1 trace.json
Compressed filename will be : trace.json.lz4
Compressed 876710 bytes into 113183 bytes ==> 12.91%

lz4 -9 trace.json
Compressed filename will be : trace.json.lz4
Compressed 876710 bytes into 78361 bytes ==> 8.94%

lz4 -12 trace.json
Compressed filename will be : trace.json.lz4
Compressed 876710 bytes into 77703 bytes ==> 8.86%

Binary:
lz4 -1 trace.flint
Compressed filename will be : trace.flint.lz4
Compressed 566520 bytes into 106317 bytes ==> 18.77%

lz4 -9 trace.flint
Compressed filename will be : trace.flint.lz4
Compressed 566520 bytes into 74717 bytes ==> 13.19%

lz4 -12 trace.flint
Compressed filename will be : trace.flint.lz4
Compressed 566520 bytes into 74642 bytes ==> 13.18%


feat: add support for except clause on wildcards

Closes: #687

Proposed follow on: https://github.com/AugustoFKL


Revamp expanded columns

Commit:

The columns now reflect the location of the value in the JSON. I hate to
change the column names from under those using the SDK, but we've
received feedback that it's hard to tell how to read these column names.
The minor fix is when a valueCodeableConcept does not have coding
values.

Check out the tests for the full example set, but here's one in particular to show how the columns relate to the data:
def test_parsing_extension_with_race():
    input_dict = [
        {
            "url": "http://hl7.org/fhir/StructureDefinition/us-core-race",
            "valueCodeableConcept": {
                "text": "race",
                "coding": [
                    {
                        "code": "2106-3",
                        "system": "http://hl7.org/fhir/v3/Race",
                        "display": "white",
                    }
                ],
            },
        },
        {
            "url": "http://hl7.org/fhir/StructureDefinition/us-core-ethnicity",
            "valueCodeableConcept": {
                "text": "ethnicity",
                "coding": [
                    {
                        "code": "2186-5",
                        "system": "http://hl7.org/fhir/v3/Ethnicity",
                        "display": "not hispanic or latino",
                    }
                ],
            },
        },
    ]

    assert generic_codeable_to_dict(input_dict) == {
        "url__hl7.org/fhir/StructureDefinition/us-core-race__valueCodeableConcept_text": "race",
        "url__hl7.org/fhir/StructureDefinition/us-core-race__valueCodeableConcept_coding_system__hl7.org/fhir/v3/Race__code": "2106-3",
        "url__hl7.org/fhir/StructureDefinition/us-core-race__valueCodeableConcept_coding_system__hl7.org/fhir/v3/Race__display": "white",
        "url__hl7.org/fhir/StructureDefinition/us-core-ethnicity__valueCodeableConcept_text": "ethnicity",
        "url__hl7.org/fhir/StructureDefinition/us-core-ethnicity__valueCodeableConcept_coding_system__hl7.org/fhir/v3/Ethnicity__code": "2186-5",
        "url__hl7.org/fhir/StructureDefinition/us-core-ethnicity__valueCodeableConcept_coding_system__hl7.org/fhir/v3/Ethnicity__display": "not hispanic or latino",
    }

Because we are changing the expected column names, we at least should cut these changes with a minor version bump. Don't think it merits a major version bump, but might be worth discussing with the rest of the class.

Because we are changing the expected column names, we at least should cut these changes with a minor version bump. Don't think it merits a major version bump, but might be worth discussing with the rest of the class.

Yes, I'll definitely make sure this is cut as version 0.17.0 (current is 0.16.0). I think that's acceptable since we are pre-1.0.

Looking through the test cases, I think this will definitely clear up the confusion around unpacking nested columns.  💯


Autocalibration at startup

Backport automatic gyro startup calibration to 1.5.x branch.
@ndousse I prefer to have a single branch for the releases following 1.5.0 (ie. branch release/1.5.x). If this is tested and is enough for a new release, you can create a release (here v1.5.1) pointing to the last commit of the branch release/1.5.x
Do you agree?

should we merge this?


add helper function so its easier to just override the default port

add helper function so its easier to just override the default port

Refer to this link for build results (access rights to CI server needed):
https://fabric8-ci.fusesource.com/job/fabric8-quickstarts-master-pullreq/268/
Test PASSed.


[SUGGESTION] Triggerbot that will lock onto enemies for you and shoot

Would be nice if a triggerbot like that could be added so I can semirage with this cheat.

Aimlock ??

Would be nice if a triggerbot like that could be added so I can semirage with this cheat.

why lmao,

use both aimlock and trigger bot simultaneously

create a second bind for aimbot in the source. Then just bind that secondary key to your trigger key. profit.

create a second bind for aimbot in the source.


[User Story] As an intermediate user, I can update details of any student easily

... so that I can keep my records accurate and up to date.

Closed in PR #90


Swapped Netty-4 DirectBuffers for HeapBuffers in for decoders.

[Current coverage][cc-pull] is 75.34%

Merging [#57][cc-pull] into [master][cc-base-branch] will not change coverage

@@             master        #57   diff @@
==========================================
  Files            18         18
  Lines           734        734
  Methods         724        724
  Messages          0          0
  Branches         10         10
==========================================
  Hits            553        553
  Misses          181        181
  Partials          0          0

Powered by Codecov. Last updated by [53e7e51...a6c9285][cc-compare]
[cc-base-branch]: https://codecov.io/gh/finagle/roc/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/finagle/roc/compare/53e7e51dde1f4bda74d28edb2a6043ea3f1ac5e1...a6c9285851a0c475b4c05271ee3aa71394ce517c
[cc-pull]: https://codecov.io/gh/finagle/roc/pull/57?src=pr


Version 2.0.0 significantly slower

Took me some time to find the culprit, but after upgrading to sqlitedict 2.0.0 the writing is significantly slower.
I am writing with:
with SqliteDict("tmp.db") as tmp:
    tmp["tmp"] = 1

Is this expected due to some new functionality?

Definitely not expected. Thanks for reporting.
IIRC we merged some contributions around nested exception handling, which could be the culprit. I can't think of anything else.
@psinger are you able to pinpoint the issue please? Or at least provide a minimal reproducible example.

Yes, sure, so you can run for example:
from sqlitedict import SqliteDict
def insert():
    for j in range(100):
        with SqliteDict("tmp.db") as d:
            d["tmp"] = j
            d.commit()

%time insert()

Runtime for version 1.7.0:
CPU times: user 113 ms, sys: 32.3 ms, total: 145 ms
Wall time: 115 ms

Runtime for version 2.0.0:
CPU times: user 147 ms, sys: 54.4 ms, total: 202 ms
Wall time: 10.2 s

Oh wow, that's a huge regression. Thanks again for reporting.
Are you able to look into it? The surface of changes between 1.7 and 2.0 is pretty small, so hopefully that's not hard. We might have to revert some commits and make a bugfix release.

Sorry, I will not have time to look into it, I migrated back to 1.7.0 for the time being.

I can't reproduce this here (MacOS, Py3.9):
sergeyich:sqlitedict misha$ cat repro.py
import tempfile
from sqlitedict import SqliteDict
def insert():
    with tempfile.NamedTemporaryFile() as tmp:
        for j in range(100):
            with SqliteDict(tmp.name) as d:
                d["tmp"] = j
                d.commit()
insert()
sergeyich:sqlitedict misha$ time python3.9 repro.py

real    0m10.033s
user    0m0.237s
sys     0m0.246s

What OS and Python version, @psinger ?

I think I've found the commit that caused the problem, now trying to work out why something so trivial is causing such a performance regression:
$ git bisect log
git bisect start
# bad: [fdaf06167eebbd22ecd6932ac54487d4f3db1713] update changelog
git bisect bad fdaf06167eebbd22ecd6932ac54487d4f3db1713
# good: [ca6758fadd55e4ee7f36b26e3a39558954e91bc6] update author_email to work with PyPI
git bisect good ca6758fadd55e4ee7f36b26e3a39558954e91bc6
# good: [d5db9e67ecfd9908c06efa9d7a4a9e3e9145550c] More cleanup for flake8
git bisect good d5db9e67ecfd9908c06efa9d7a4a9e3e9145550c
# good: [e6a81f0558b6aa0e4bf4984466c6373d3aee2b52] README.rst: update performance notes.
git bisect good e6a81f0558b6aa0e4bf4984466c6373d3aee2b52
# bad: [12f023652674cd9e061c806fd1d50e3c1958f68d] minimum supported Py version is 3.7
git bisect bad 12f023652674cd9e061c806fd1d50e3c1958f68d
# bad: [3f2df9bb557e3351bc16843612e9090d7f5ba784] update python-package.yml
git bisect bad 3f2df9bb557e3351bc16843612e9090d7f5ba784
# bad: [bb8087ceb4408c0e10e3591912a7596b9448358d] Update sqlitedict.py
git bisect bad bb8087ceb4408c0e10e3591912a7596b9448358d
# bad: [90c16aeaaa69c831c7f71370d560e880c5d630ae] Rename initialized variable to not collide with superclass'es internal one
git bisect bad 90c16aeaaa69c831c7f71370d560e880c5d630ae
# first bad commit: [90c16aeaaa69c831c7f71370d560e880c5d630ae] Rename initialized variable to not collide with superclass'es internal one

https://github.com/RaRe-Technologies/sqlitedict/commit/90c16aeaaa69c831c7f71370d560e880c5d630ae

That's just variable renaming....sounds unlikely it could cause any issues.

Right, but before it was called self._initialized with the same functionality.

It's not quite the same functionality, because the superclass defines that variable and changes its value as it sees fit.
$ grep -B 10 _initialized<EMAIL_ADDRESS>--max-count 1

class Thread:
    """A class that represents a thread of control.

    This class can be safely subclassed in a limited fashion. There are two ways
    to specify the activity: by passing a callable object to the constructor, or
    by overriding the run() method in a subclass.

    """

    _initialized = False

Basically, the problem itself isn't the commit in question. The problem is the way that sqlitedict is attempting to handle a race condition.
The commit merely unmasks the problem. I suspect that because that race condition handling has been effectively disabled prior to the commit, the race condition may not be such a big deal after all.
I'll have to think about it some more, but I think I see what's going on here.

Is the sleep necessary? Just removing it could fix the issue.

Interestingly, cannot reproduce on Py3.9 Linux:
(testenv) misha@cabron:~/git/sqlitedict$ python --version
Python 3.9.14
(testenv) misha@cabron:~/git/sqlitedict$ time python repro.py

real    0m0.107s
user    0m0.090s
sys     0m0.016s


Create /dev/input/by-path entry

When a gamepad connects, an entry is created in /dev/input/jsX, however Steam games seem to rely on /dev/input/by-path (such as /dev/input/by-path/pci-0000:00:14.0-usb-0:2:1.0-joystick).
I suppose I could create a symlink manually, but I was wondering if there isn't a cleaner way to do this?
Thanks in advance.

I couldn't find an easy way to do that just with uinput. I'm unsure if this is even possible. However, you can write udev rules to achieve this. Sadly, I didn't have time to play around with that.


(PUP-5959) Add test to ensure static catalog file params match defaults

When inlining file metadata, we sometimes hardcode the default values
for the links and source_permissions parameters to match
the real file type defaults.
This commit adds a new test case to ensure that the values we've
hardcoded actually match those defaults. Should they ever change,
this test will fail, thus notifying us that our hardcoded values
need to change.
This is being done with a test rather than retrieving the defaults
during compilation due to the fact that determining said defaults
requires instantiated file resources, which depend on knowing which
file provider to use. Creating a new dummy file resource on the
master is clunky and inelegant.

Letting appveyor test the Windows side of this.

Looks like a rebase is needed?

@joshcooper rebased.


Same model trained with different TF versions has much less trainable parameters

Hi,
I trained the same architecture with different TF versions 2.2.0 and 2.4.0 and got much less trainable parameters with 2.4.0 according to model.summary report, as you can see in the attached image. What is the reason for such a large difference?

Maybe some of the parameters are just frozen for training

@aviaisr ,
Could you please update TensorFlow to the latest stable version v.2.7 and let us know if you are facing the same error. Thanks!

@aviaisr ,
In order to expedite the trouble-shooting process, could you please provide the complete code and dataset to reproduce the issue reported here.

Also Could you please update TensorFlow to the latest stable version v.2.7 and let us know if you are facing the same error. Thanks!

I added the main training lines for each model to this notebook. Also, I described the differences between the training config. Architecture is the same.
Regarding the dataset, I trained the model on millions of images.
https://colab.research.google.com/drive/14rghRb2-0kknbCfSnxcU3WR4mI8mL9La?authuser=1#scrollTo=TWL3gEpKIm0B
Thanks

Maybe some of the parameters are just frozen for training

But why will it happen if I didn't change anything to freeze the weights?
I mainly just added weight decay regularization and changed the loss type, and of course the TF version.

@aviaisr ,
I do not have access to the link you have provided. Could you please provide the required permissions to view the files.

Updated link:
https://colab.research.google.com/drive/14rghRb2-0kknbCfSnxcU3WR4mI8mL9La?usp=sharing

Hi,
I just saw the following:
Load model + compile false
Total params: 3,136,005
Trainable params: 911,913
Non-trainable params: 2,224,092
Load weights
Total params: 3,136,005
Trainable params: 3,101,673
Non-trainable params: 34,332

@aviaisr Looks like there are other differences (other than TF versions) between the two models. I couldn't run your colab.
Can you please share a standalone code to reproduce the issue? For comparing model.summary, we don't need training part of the code. Thanks!


[pymon] restarting due to opened...

tried running a flask app , didn't work. got this message instead: [pymon] restarting due to opened...

Sorry, could you share more information:

Your file structure
Command you're using to run the file

I have the same situation. Here is my structure.
.
├── config
├── core
│   ├── callbacks.py
│   ├── database
│   │   ├── __init__.py
│   │   ├── methods
│   │   │   └── __init__.py
│   │   └── models
│   │       └── __init__.py
│   ├── filters
│   │   ├── basic.py
│   │   └── __init__.py
│   ├── handlers
│   │   ├── basic.py
│   │   └── __init__.py
│   ├── __init__.py
│   ├── keyboards
│   │   ├── basic.py
│   │   └── __init__.py
│   ├── middlewares
│   │   └── __init__.py
│   ├── states
│   │   ├── __init__.py
│   │   └── states.py
│   ├── text_of_buttons.py
│   ├── texts.py
│   └── utils
│       ├── __init__.py
│       ├── message_parser.py
│       ├── registry.py
│       ├── routers.py
│       └── settings.py
├── database
├── docker-compose.yml
├── Dockerfile
├── main.py
├── poetry.lock
└── pyproject.toml

What does the command output?

I have the same issue. Was trying to run a Language Model from GPT4ALL. Its running fine using python example.py, but via pymon, it just shows this
$ pymon test.py
[pymon] starting `python test.py`
[pymon] restarting due to opened...

I'm running this in Linux. More Specifically, A codespace with Ubuntu 22.04

@el-protoman The issue is that Flask requires apps to be run with its own command flask --app run, but py-mon simply runs the Python file intended. This is definitely an opportunity for a very useful feature, I'll try to get on it this weekend :)

I have the same issue. Was trying to run a Language Model from GPT4ALL. Its running fine using python example.py, but via pymon, it just shows this
I'm unsure about this use case though, considering it works fine for you when you simply run it with python. I've never used GPT4ALL but I'll try to investigate when I can. Thanks for reporting the issue :)


yarn test failing due to superstruct dependency

When I pull a fresh copy of this repo, I get the following error from Jest:
 FAIL  src/App.test.tsx
  ● Test suite failed to run

    TypeError: superstruct.instance is not a function

      1 | import type { PublicKey } from<EMAIL_ADDRESS>      2 |
    > 3 | import Wallet from "@project-serum/sol-wallet-adapter";
        | ^
      4 | import { Transaction } from<EMAIL_ADDRESS>      5 | import { Button, Modal } from "antd";
      6 | import EventEmitter from "eventemitter3";

      at Object.<anonymous> (node_modules/@solana/web3.js/src/connection.ts:45:3)
      at Object.<anonymous> (node_modules/@project-serum/sol-wallet-adapter/dist/index.js:4:15)
      at Object.<anonymous> (src/contexts/wallet.tsx:3:1)
      at Object.<anonymous> (src/routes.tsx:3:1)
      at Object.<anonymous> (src/App.tsx:3:1)
      at Object.<anonymous> (src/App.test.tsx:3:1)
      at processTicksAndRejections (node:internal/process/task_queues:93:5)

I think it has something to do with the @solana/web3.js dependency being different in the @project-serum sub-dependencies, but not quite sure.

Bump!

Just opened a PR for this, sorry for the delay I just got around to it 😬


Work with pug babel plugin?

How might we make this plugin work with babel-plugin-transform-react-pug?
For example, ESLint reports three errors on the code below:

React is defined but never used (because it doesn't detect the JSX)
onClick is assigned a value but never used
pug is not defined

import React from 'react';

const Button = (props) => {
  const onClick = () => {
    props.onClick();
  };

  return pug`
    button(onClick=onClick)
      = props.label
  `;
};

export default Button;

@jpap @EricBeReal hey, I started working on eslint-plugin-react-pug. It's very new but it solves those issues.

@ezhlobo nice work! I've personally moved onto TypeScript/TSLint, but will definitely check out your ESLint plugin for reference.

I'd say a separate linter plugin is the right solution here; this plugin is for react.


Using a User's information about which other list of Users it is following within AWS Personalize Recipe

Hi,
I am using AWS Personalize to build a personalized recommender system using a social networking application's data. I had the below question:

Is there a way to introduce the effect of following another User by a given User.
Essentially should it have an impact the personalized feed of a User, given the User follows a list of other Users ?
If yes, what should be the impact, in what magnitude, and how do we use this "User Following Other Users" information within Amazon Personalize.

Thanks!

Take a look at the following blog post:
https://aws.amazon.com/blogs/machine-learning/attendee-matchmaking-at-virtual-events-with-amazon-personalize/


Darwin gtk2/pygtk quartz backend

Motivation for this change
I wanted to use a pygtk based application on darwin and noticed that it relied on the X11 backend of gtk which leads to trouble in multi screen setups (lost windows out of screen). Using the quartz backend also leads to a nicer display of the applications.
This Pull Request adjust GTK2 based on the work from #20658. I aimed to keep the changes to the GTK2 Derivation as close as possible to the other PR. The main change is that I added the CoreText dependencies to cairo and pango, so that fonts are actually visible.
Due to #12346 starting the applications still needs a twist by using something like DYLD_FRAMEWORK_PATH=/System/Library/Frameworks.
Things done

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[ ] NixOS
[X] macOS
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

Regarding the binaries I've tested gtk-demo and pygtk-demo, those worked fine.

I've done some more experiments, it appears to me as if ApplicationServices should go into the propagatedBuildInputs of cairo.

This breaks gnome2.gtksourceview. It now reports the following error.
checking for IGE_MAC... no
configure: error: Package requirements (ige-mac-integration) were not met:

No package 'ige-mac-integration' found

You may need to package some extra libraries (https://github.com/rhult/ige-mac-integration).

Uh, it might cause a few more issues like that I guess. I'll try to add ige-mac-integration and make things work.

@vbgl think I got the gtksourceview issue figured out. Do you have any suggestions how I could best check how much this change might affect other packages?

Indeed, gtksourceview now builds. But this PR breaks coqide, inkscape, zim: they build but crash on startup.

@johbo nox-review and https://github.com/NixOS/nixpkgs/issues/19045#issuecomment-256920869

Hmm, it seems that all gtk2 based applications will suffer from https://github.com/NixOS/nixpkgs/issues/12346 until we get that sorted. I wonder if it would be better to make this gtk2 change opt-in and build by default for X11 until that's solved.

cc @lnl7 @copumpkin

Looks like about ~1400 packages will rebuild, I think that's still ok to do on master.


Capacity Pool not extended after payment made

We extended our capacity pool and also made the payment and got the chatflow success message , but when we see on the Dashboard it is not extended and also when making a Kubernetes Cluster , it does not appear in the Pools Available list:
This is the capacity pool:

As you see there is no expiration time here or compute units  , we had specified 1 month.
In Kubernetes Solutions , our extended Pool does not appear also

In the logs there is no ERROR reported.
In the Deployed workloads we see that the required Network Resources were indeed being deployed:

I can see the mentioned pool here. It indeed doesn't have any cus but it has sus.
Can you please add more info to help investigate the issue regarding:

How many CUs and SUs did you choose when extending?
What is the amount of money you paid to extend it? You can see the transaction of you wallet in jsng using j.clients.stellar.YOURWALLETNAME.list_transactions()

@OmarElawady , i chose 4 CUs and 4 SUs when extending  and i paid 1488 :

I  also choose duration unit as 1 Month but i cannot see any expiry time in the dashboard too.

The transaction succeeded with the same amount and it can be listed here, but the money is still in this wallet, which means it didn't get transferred to the farmer's wallet.

is it possible that you waited for a long time before making the transaction ? Like u went to have lunch or coffee ? just wondering.
I am asking because the only way your transaction to get marked as 'canceled' on the system without a refund is that the transaction has been already set to canceled THEN you made the transaction.

I set "manually" the expiration date of your reservation to 1 more hour in the future and the payment got processed. Can u please check that the pool has been updated with correct capacity ?

@siddiquagig close please if your problem is resolved.

Yes indeed , it is solved now , and i waited for like an hour on the payment screen , was waiting for the tokens to be sent to my wallet and then make the payment.


add: missing unit tests for all the features implemented since the merge of develop to main

Wrong section


[WIP] Remove default arguments for Endpoint initializer

As discussed in #1247, the fact that Endpoint has default values of .get & .requestPlain can be a point of confusion when users are creating their own Endpoints.

This is cool, thanks @SD10! Did you also check Demo project if it needs updating anywhere?

@sunshinejr I meant to check the docs and forgot. I will shift this to WIP and take care of it. About the demo app -- I'm guilty of not even thinking about that. I will do this too 😅

No worries! We have 2 projects right now that we have to check whenever developing stuff so it happens often, to me as well. We should take care of consolidating them (#891) in the near future so it is easier for us.

Codecov Report

Merging #1249 into 9.0.0-dev will not change coverage.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           9.0.0-dev    #1249   +/-   ##
==========================================
  Coverage      81.59%   81.59%
==========================================
  Files             24       24
  Lines            766      766
==========================================
  Hits             625      625
  Misses           141      141

Impacted Files
Coverage Δ

Sources/Moya/Endpoint.swift
92.3% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Hmm, I thought about it for a while and I don't think there is time for another breaking change. What we can do is to remove default parameter from the task property and release it as a patch. This way we won't have a breaking change. Just need to confirm docs/tests/demo, but I believe not much (if any) will have to be changed. We can think about the the rest parameters in 10.0.
What do you think, @SD10?

@sunshinejr Sorry I didn't get a chance to follow up on this. I will do this in a couple hours from now. Why don't you want to do this breaking change? Am I holding things up?

First of all we would have to do some checks, then break semver and in the end probably test it a bit more. Having removed only task default property probably will be an easier one for 9.0.0 and we could follow this up in 10.0. I think we just need to release 9.0 in a few.

@sunshinejr No problem, good thoughts. It's good to know when to draw the line. I noticed there are no changes in the demo app or the docs. We weren't using the default values in the docs. I opened up a fresh PR so I'm closing this one.


Break out "20 character limit in DFP" note to shared fragment

It appears in a few places now.

This text doesn't seem to exist anymore.


Extra line is added when template is inserted

My template is
"- {{ text }} - [{{ location }}]({{ appLink }}) {% if note %}{{ note }} {% endif %}"
(without a trailing new line)
and the goal is that it comes out as

quote linkid
quote linkid2
quote...

It does come out with extra spaces though:

quote linkid

quote linkid

quote linkid

The extra space causes the quotes to be double-spaced instead of condensed.

Just tested this, works on my machine. @retospect: Did you check if you have any trailing linebreaks / whitespaces?
Template:
- {{ text }} -- [{{ location }}]({{ appLink }}) {% if note %}{{ note }} {% endif %}

Result:
## Highlights
- YoloR has many features... -- [43]()  ^ref-11627
- YOLOR, you can enroll in our YOLOR course here. -- [54]()  ^ref-17234

I think this issue can be closed.


ATOMIC

One can create tasks based on the atomic data, where the task definitions define the edges/relations in their dataset:
https://allenai.org/data/atomic-2020

This one is huge and has a lot of varieties, many tasks can be done using this. Same is true for Conceptnet.

I looked at this dataset. I thought of defining the edges/relations task and several classification tasks based on the meaning (Physical-Entity Commonsense, Social-Interaction Commonsense, and Event-Centered Commonsense) and the relations. I might be able to define 27 tasks based on this dataset. How many tasks and which tasks are desirable?

 Different relations produce different tasks.
Re: How many tasks: No such estimate, more the better :)

@yeganehkordi If you're still working on this and need help, I can collaborate and take up some tasks

@ashok-arjun Thanks! I haven't started working on the classification tasks based on the meaning (Physical-Entity Commonsense, Social-Interaction Commonsense, and Event-Centered Commonsense). Feel free to take them.

Got it, take your time!

Are these tasks merged in? Don't remember seeing them ...

No, Actually I was a bit busy. I'll create a pull request soon.

@yeganehkordi  I just finished working on +ve and -ve examples + instances for about 20 tasks of this manner. Could I please open the PR?

Well, I don't know exactly what to do in this case. @danyaljj Is it okay if we keep both tasks? I guess we had the same problem with stereoset tasks before.

I am not quite sure. Send whatever PRs you have. We'll resolve the issue based on the PR content.


Bad source for surface go wifi

https://github.com/NixOS/nixos-hardware/blob/41775780a0b6b32b3d32dcc32bb9bc6df809062d/microsoft/surface/firmware/surface-go/ath10k/ath10k-replace.nix#L5
^ this doesn't exist
https://github.com/NixOS/nixos-hardware/blob/41775780a0b6b32b3d32dcc32bb9bc6df809062d/microsoft/surface/repos.nix#L10-L15
https://github.com/kvalo/ath10k-firmware/tree/84b47062aab31d67156e0a3ef593a6999a12864b

cc @mexisme who contributed this.

Thanks.
Will try to look tonight; I have an idea what may have happened.

I take it this has been fixed?

I take it this has been fixed?

see https://github.com/NixOS/nixos-hardware/pull/374 maybe you can push the fix over the finish line.

fixed.


TFIDF vectorizer

I'd want to be able to do TF-IDF calculations in Dask in a similar fashion as in apache spark. https://spark.apache.org/docs/latest/mllib-feature-extraction.html
Right now, counting/hashing vectorizer are similar and it does exist. They’re in Dask-ML and are the same as TFIDF without the normalization/function.
Another implementation exists in rapids/cuml, but not sure how easy it'd be to translate it to the Dask framework.
https://github.com/rapidsai/cuml/blob/cdb14e7de6a40d8d707d29b2889a89aa553125ee/python/cuml/feature_extraction/_tfidf_vectorizer.py.

I think this issue belongs in Dask-ML. @TomAugspurger is it possible to move this issue over there?
I'm not seeing tfidf normalization in CountVectorizer or HashingVectorizer. The documentation of HashingVectorizer specifically mentions the following:

There are also a couple of cons (vs using a CountVectorizer with an in-memory vocabulary):

...
no IDF weighting as this would render the transformer stateful.

One method to resolve this issue would be to implement TfIdfTransformer.fit.


sile: Note exta dependencies when built with older Luas

See discussion in #172749.
Specifically, this comment.
The compat53 LuaRock is only need by SILE on Lua prior to 5.3. An earlier PR that changed the default from 5.2 to 5.4 overlooked this.
Additionally, the bit32 LuaRock is needed for Lua 5.1. This was never spotted because 5.2 was the default and it didn't matter.
The bit32 dependency could be skipped on LuaJIT which provides an alternative built in that SILE also supports (luabitop), but I wasn't sure about the syntax for that here. It won't hurt this way, it just isn't fully optimized.

thanks for the various fixes but on master cca7c716c29a15e6653cb3fc4d7e08eacb726993 I get
nix-build -A sile
error: Package ‘lua5.4-lua-zlib-1.2-1’ in /home/teto/nixpkgs3/pkgs/development/lua-modules/generated-packages.nix:1443 is marked as broken, refusing to evaluate.

let's try to enable tests. Will try to improve the  testing lua infra on my side

@teto lua-zlib being broken was also noted in other PRs but people were having trouble trying to figure out how to handle it, partly because there were 4 different things broken: the Lua binary wrapper, these dependencies, the zlib build breakage, and compat53 having the wrong max version. This PR was to pick off one of those. #172749 is handling another. The zlib thing should be fixed separately, and yes I suppose that needs better testing.


Add-TeamChannelUser not recognized (PS module version 1.1.6)

Hi,
Still like to re-open this. Version 1.1.6 should be GA but that still have no Add-TeamChannelUser CMDLet.
PS C:\> Get-Command -Module MicrosoftTeams -Name add*

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Add-TeamUser                                       1.1.6      MicrosoftTeams

Hello @Petri-X how are you? Hope you are doing good.
Correct, Add-TeamChannelUser is still in the preview module version and is not in the GA version (yet).
Let me know if I understood your inquiry.
Thanks

Hello @Petri-X how are you? Hope you are doing good.
Correct, Add-TeamChannelUser is still in the preview module version and is not in the GA version (yet).
Let me know if I understood your inquiry.
Thanks

@get-itips
Oh !? What do you mean by that? When doing installation via PowerShell I'm getting 1.1.6
Also PS callery looks like this:

There is a clear differences between 1.1.6 and others. And see the amount of downloads, and you are saying that is having bugs..?
So what is the valid version then?

@get-itips
Oh !? What do you mean by that? When doing installation via PowerShell I'm getting 1.1.6
Also PS callery looks like this:

There is a clear differences between 1.1.6 and others. And see the amount of downloads, and you are saying that is having bugs..?
So what is the valid version then?

Hello @Petri-X
Thanks for returning! I hope you have a great day.
In this article, you can see the difference between the modules and how to install a specific version.
https://docs.microsoft.com/en-us/microsoftteams/teams-powershell-overview

Teams PowerShell is available on PowerShell Gallery in two release types.
General Availability (GA): Production-ready cmdlets, updated monthly.
Public Preview: Early access to features. May be updated more frequently than GA.

As here we are limited to documentation issues, did you identify a documentation issue I can take care of? Otherwise, if you want to reach the team behind the development of the Teams Ps module, I recommend https://microsoftteams.uservoice.com/
Thank you

Hello @Petri-X
Thanks for returning! I hope you have a great day.
In this article, you can see the difference between the modules and how to install a specific version.
https://docs.microsoft.com/en-us/microsoftteams/teams-powershell-overview

Teams PowerShell is available on PowerShell Gallery in two release types.
General Availability (GA): Production-ready cmdlets, updated monthly.
Public Preview: Early access to features. May be updated more frequently than GA.

As here we are limited to documentation issues, did you identify a documentation issue I can take care of? Otherwise, if you want to reach the team behind the development of the Teams Ps module, I recommend https://microsoftteams.uservoice.com/
Thank you

Aah, okay, so you are saying your team has remove that CMDLet from the GA module.
CMDLet statuses
Sorry, perhaps I read this incorrectly :D

Aah, okay, so you are saying your team has remove that CMDLet from the GA module.
CMDLet statuses
Sorry, perhaps I read this incorrectly :D

Aah, okay, so you are saying your team has remove that CMDLet from the GA module.
CMDLet statuses
Sorry, perhaps I read this incorrectly :D

Hello @Petri-X
The table that you shared says that Add-TeamChannelUser is not in the GA version of the module (currently the 1.1.6) and is available in the Public Preview version.
Thanks for returning and sharing your feedback!

Aah, okay, so you are saying your team has remove that CMDLet from the GA module.
CMDLet statuses
Sorry, perhaps I read this incorrectly :D

Hello @Petri-X
The table that you shared says that Add-TeamChannelUser is not in the GA version of the module (currently the 1.1.6) and is available in the Public Preview version.
Thanks for returning and sharing your feedback!