Add Kotest support for Kotlin/JS

This PR brings Kotest test engine support for Kotlin/JS target test execution.
Replaces #3710.

Looks good to me, if I understand correctly the core thing that was missing was the kotestProcessor/kotlincOptions.
Left some nits, but otherwise looks good

Actually the 2 pieces were missing:

Kotest compiler extension https://github.com/kotest/kotest/blob/master/kotest-framework/kotest-framework-multiplatform-plugin-embeddable-compiler/src/jvmMain/kotlin/io/kotest/framework/multiplatform/embeddablecompiler/JsTransformer.kt
Even if applied, tests won't run without https://mochajs.org/ added (not sure why)

Thanks @0xnm !


Whitespace causes nextSibling to get it wrong

This case occurs if using xmldom and xpath:

If an xml file has whitespace introduced, such as through formatting in Visual Studio or another formatting medium, the .nextSibling.textContent will choose the whitespace over the next node. For example:

Given xml:
<row id="1468866500749"><cell>Tourist Information</cell><cell>SPO/About-South-Pole-Station/Tourist-Information/</cell><cell>ca229252acb13e1ed15a28ac25c412ce</cell><cell>1</cell><cell/></row>
And this code:
views.get('/*', function (req, res) {
     var nodes = xpath.select("//cell[text()='SPO" + req.url + "']", menuDoc);
     var addr = nodes[0].nextSibling.textContent;
     ...

The variable addr will correctly return: ca229252acb13e1ed15a28ac25c412ce.
Given xml:
<row id="1468866500749">
        <cell>Tourist Information</cell>
        <cell>SPO/About-South-Pole-Station/Tourist-Information/</cell>
        <cell>ca229252acb13e1ed15a28ac25c412ce</cell>
        <cell>1</cell>
        <cell/>
</row>

And this code:
views.get('/*', function (req, res) {
     var nodes = xpath.select("//cell[text()='SPO" + req.url + "']", menuDoc);
     var addr = nodes[0].nextSibling.textContent;
     ....

The variable addr will return a carriage return and spaces.
By doing the following to an xml string in advance prevents the error:
str = str.replace(/>\s*/g, '>');  // Remove white space after >
str = str.replace(/\s*</g, '<');  // Remove white space before <

The problem you're describing has nothing to do with this library. The nodes[0] in your code obtains an XML node and this library has no control over what you do with that node or what its siblings are.
Additionally, the behavior you're seeing is correct. The next sibling of that <cell> element is a whitespace text node, and that's what you're getting.
You can utilize XPath to obtain the node you actually want:
var node = xpath.select1("//cell[text()='SPO" + req.url + "']/following-sibling::cell", doc);
var addr = node.textContent;

Thanks!


Wrong Widget name given in Readme

I think the code that you showed in Usage section of readme.md is wrong.
Basically the name of widget is wrong.
Existing:
PieChart(   children: [     PieData(value: 30, color: Colors.red),     PieData(value: 50, color: Colors.blue),   ], )
Should be:
EasyPieChart(   children: [     PieData(value: 30, color: Colors.red),     PieData(value: 50, color: Colors.blue),   ], )

Thank you for pointing this out! The PieChart widget name in the Usage
section is intentional, but I can see how it might be confusing. I'll
review it and update the documentation in the next release to make it
clearer. Appreciate your feedback!
On Wed, 11 Dec 2024, 00:00 Rushikesh Narwade, @.***>
wrote:

I think the code that you showed in Usage section of readme.md is wrong.
Basically the name of widget is wrong.
Existing:
PieChart( children: [ PieData(value: 30, color: Colors.red),
PieData(value: 50, color: Colors.blue), ], )
Should be:
EasyPieChart( children: [ PieData(value: 30, color: Colors.red),
PieData(value: 50, color: Colors.blue), ], )
—
Reply to this email directly, view it on GitHub
https://github.com/Laiq37/easy_pie_chart/issues/7, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMLRZAV6JTMT5UMZANG6DLD2E425XAVCNFSM6AAAAABTL2Z4LGVHI2DSMVQWIX3LMV43ASLTON2WKOZSG4ZTAOJVGY2DANQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


fix(service-worker): fix service worker update notification not triggering

:tada: This PR is included in version 1.0.0-alpha.71 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Build SQL/PPL against OpenSearch 1.0.0-beta1

Description

Build SQL/PPL plugin against OpenSearch 1.0.0-beta1
Rename JDBC jar file name with <IP_ADDRESS>-beta1 suffix

Issues Resolved
N/A
Check List

[ ] New functionality includes testing.

[x] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

testDistribution = "ARCHIVE"

Sure, let me add and rerun CI.


chore: release 0.122.0

:robot: I have created a release *beep* *boop*
0.122.0
google/cloud-firestore 1.10.1
Bug Fixes

fix compatibility with phpspec/prophecy v1.10 (#2525) (ca739c4)

google/cloud-spanner 1.23.0
Features

enable 'FieldMask' param in Instance::reload() method options (#2530) (006487a)

Bug Fixes

fix compatibility with phpspec/prophecy v1.10 (#2525) (ca739c4)

google/cloud-storage 1.17.0
Features

add support for ARCHIVE storage class (#2428) (bb0e3d9)

Bug Fixes

allow mkdir() via stream wrapper when UBL is enabled (#2541) (aef45e7)

This PR was generated with Release Please.

Release is at https://github.com/googleapis/google-cloud-php/releases/tag/v0.122.0


Improve OCI registry client configuration options for devs

Congrats on the 3.8 release! Happy to see OCI-related logic was extracted out of the experimental directory, meaning 3rd party developers can just import Helm and use it.
Precisely, in my team, we'd wanted to use the Helm OCI registry client to interact with OCI registries instead of dealing directly with ORAS. However, I find the current support (as of v3.8.0) quite limited.
More specifically:

We'd need to be able to customize the resolver passed through the oras Registry, as we are adding a custom header and a preconfigured httpclient with the proper auth (not only basic auth but also bearer token)

Currently, the only ClientOption are  ClientOptDebug, ClientOptWriter and ClientOptCredentialsFile, so adding a new one allowing customizing the resolver would make the trick.
Additionally, I'd like to have more LoginOptions as well. Currenlt only LoginOptBasicAuth and LoginOptInsecure are available.
As stated before, we'd like to customize other things like userAgent or authorization headers (or any other header) with arbitrary values.
Relevant file: https://github.com/helm/helm/blob/v3.8.0/pkg/registry/client.go
I don't know what's your roadmap on improving this kind of stuff, but willing to contribute if you want.
Output of helm version: version.BuildInfo{Version:"v3.8.0", GitCommit:"d14138609b01886f544b2025f5000351c9eb092e", GitTreeState:"clean", GoVersion:"go1.17.6"}

@antgamdia would love to have a PR to extend the options available to the registry client


integrate text-to-image apis

https://www.midjourney.com/home/#about
https://beta.dreamstudio.ai/dream

low prio


Standalone Swift - MaaS Remote Check Creation Failing

In standalone swift environments, MaaS remote check creation tasks fail. The when: criteria is trying to match on the first host of each service host group. In a standalone swift environment, most of these services won't exist. These tasks will fail.

TASK: [rpc_maas | Entity {{ lb_name }} count] *********************************
fatal: [1f85f667-logger1] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-infra1] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-object3] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-object1] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-infra1_utility_container-bbe33f9e] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-infra1_keystone_container-043d3d49] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-infra1_galera_container-c9d3d39c] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-infra1_rabbit_mq_container-0e9ba9eb] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-infra1_repo_container-3d08b263] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-object2] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-infra1_memcached_container-5e993342] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-logger1_elasticsearch_container-996a9868] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-infra1_swift_proxy_container-44c71396] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-logger1_rsyslog_container-f50b049f] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-logger1_logstash_container-4bf0d704] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

fatal: [1f85f667-logger1_kibana_container-5e6f7dc1] => error while evaluating conditional: inventory_hostname == groups['cinder_api'][0]

FATAL: all hosts have already failed -- aborting

@rackertom - just in case you've been assigned to this issue to fix it, there is already an open pull request for it https://github.com/rcbops/rpc-openstack/pull/231


#380 - Constraint to save draft

Added max size validation to dynamic content that is saved as a json to DB:

@PayloadMaxSize(): used to decorate requests and validates the whole payload size.
@JsonMaxSize(): used as a property validator for objects that must have a maximum length as a json.

Fixed AppAllExceptionsFilter to show exception details as below:

Confirmed that the Nest's default configuration restricts all body lengths to be a maximum of 100kb. All the other request bodies can be more restrictive than that using @PayloadMaxSize().  Example of log for Nest's default restriction:

Great work on implementing the json constraint. Please have a look at the comments.


Commits request

I'm working on another point from #40 and I want to consult some matters before implementing anything.
It's obvious that List the commits included in an integration will consist of Commit model but... Response JSON is strange in some way and I'd like to clarify naming convention.
Basically integration/id/commits response JSON looks like:
{
	"count": 1,
	"results": [{
		"_id": "62395864c6d0b1fc6536c0ab3a0d2b2d",
		"_rev": "3-ced1cebb3b420512ee66e7a1927e32f2",
		"commits": {
                  []
                },
                "integration": "62395864c6d0b1fc6536c0ab3a0d0733",
		"botID": "38a6d8e59f34d59c810e98f5c6030e02",
		"botTinyID": "23530A6",
		"endedTimeDate": [2015, 7, 7, 14, 15, 20],
		"doc_type": "commit",
		"tinyID": "127FDC7"
	}]
}

IMHO, main object should be called something like IntegrationCommits because there's Commits array inside of it but Commit, itself, doesn't containt fields to be XcodeServerEntity.
What's more, commits array contains an array of repositories which holds actual commits - so another model?
Actual Commit looks like:
{
	"XCSCommitCommitChangeFilePaths": [{
		"status": 4,
		"filePath": "cells/NewProductCell.m"
	}, {
		"status": 4,
		"filePath": "GreetingTextViewController.m"
	}, {
		"status": 4,
		"filePath": "ViewControllers/NewChooseProductViewController.m"
	}],
	"XCSCommitMessage": "Fixed ios7 bug",
	"XCSBlueprintRepositoryID": "715A78DA7313BF688CEE0585F44D4F0B2EAEE4B8",
	"XCSCommitContributor": {
		"XCSContributorEmails"<EMAIL_ADDRESS>		"XCSContributorName": "Foo Bar",
		"XCSContributorDisplayName": "Foo Bar"
	},
	"XCSCommitHash": "aeb85aed37e633b6c9776cb863a39f922cb464d9",
	"XCSCommitTimestamp": "2015-07-07T14:14:29.000Z",
	"XCSCommitTimestampDate": [2015, 7, 7, 14, 14, 29]
}

I have a feeling I'm complicating everything but what do you think - should those models be separated or treated like one big, nested model and inherit from XcodeServerEntity?

Okay - what is the question? :)

Give me a sec... ⏰ I just hit publish by mistake... Still writing question 😜

Feel free to edit the original issue's text, I'll delete my comment :)

Honestly, we're not losing anything by having them inherit from XcodeServerEntity. We get a couple of nice parsing behaviors this way. So I'd suggest making all of our objects inherit from XcodeServerEntity, even Repository (which it isn't at the moment, but I think it should be now).
Yeah, IntegrationCommits sounds like a good model object. Commit, will be another one. Then, Contributor might be another one.
Not sure about the list of repositories, can you paste that here as well?

I don't have this JSON fragment as all of my Bots are configured to have only one repository but from the naming you can guess that commits can contain an array. In case of one configured repository it looks like:
{
  "commits": {
    "715A78DA7313BF688CEE0585F44D4F0B2EAEE4B8": {
      "XCSCommitCommitChangeFilePaths": [
        {
          "status": 4,
          "filePath": "cells/NewProductCell.m"
        },
        {
          "status": 4,
          "filePath": "GreetingTextViewController.m"
        },
        {
          "status": 4,
          "filePath": "ViewControllers/NewChooseProductViewController.m"
        }
      ],
      "XCSCommitMessage": "Fixed ios7 bug",
      "XCSBlueprintRepositoryID": "715A78DA7313BF688CEE0585F44D4F0B2EAEE4B8",
      "XCSCommitContributor": {
        "XCSContributorEmails": [
<EMAIL_ADDRESS>        ],
        "XCSContributorName": "Foo Bar",
        "XCSContributorDisplayName": "Foo Bar"
      },
      "XCSCommitHash": "aeb85aed37e633b6c9776cb863a39f922cb464d9",
      "XCSCommitTimestamp": "2015-07-07T14:14:29.000Z",
      "XCSCommitTimestampDate": [2015, 7, 7, 14, 14, 29]
    }
  }
}

So, "715A78DA7313BF688CEE0585F44D4F0B2EAEE4B8" is a XCSBlueprintRepositoryID and I think it's logical that it can turn to be an array but I'm not 100% sure...

Hmm I doubt that. As you can see in XCSContributorEmails, for example, even with one entry it's still an array. And this makes sense - an integration runs only on one repository. And XCSBlueprintRepositoryID gives you the id of the blueprint of the repo that ran. So I think we're fine just having it as a String.

👍
In that case IntegrationCommits will have property of type [Commits], right?

Hmm only now I noticed that commits are a dictionary, not an array. Could you please post the whole output, both parts above in one JSON? Thanks

I'll do it later and I'll try to prove many repositories scenario, so it'll turn into array of dictionaries.
Give me time, I need some 🍖🍗🍲

I've checked multi-repository thing and it looks like you're right @czechboy0 - there will be only one repo and this view proves it:

Regarding whole JSON, here you go:
{
	"count": 1,
	"results": [{
		"_id": "272167d4affaf38ea93c6e403d001c60",
		"_rev": "3-d856e17d2e88237b37c190591ddaaa48",
		"commits": {
			"A36AEFA3F9FF1F738E92F0C497C14977DCE02B97": [{
				"XCSCommitCommitChangeFilePaths": [{
					"status": 4,
					"filePath": "Podfile.lock"
				}],
				"XCSCommitMessage": "new pods\n",
				"XCSBlueprintRepositoryID": "A36AEFA3F9FF1F738E92F0C497C14977DCE02B97",
				"XCSCommitContributor": {
					"XCSContributorEmails"<EMAIL_ADDRESS>					"XCSContributorName": "Honza Dvorsky",
					"XCSContributorDisplayName": "Honza Dvorsky"
				},
				"XCSCommitHash": "deeca3728ed42406ee34e595feff4ed3bb78efb4",
				"XCSCommitTimestamp": "2015-07-20T13:36:04.000Z",
				"XCSCommitTimestampDate": [2015, 7, 20, 13, 36, 4, 0]
			}, {
				"XCSCommitCommitChangeFilePaths": [{
					"status": 4,
					"filePath": "README.md"
				}],
				"XCSCommitMessage": "more emoji",
				"XCSBlueprintRepositoryID": "A36AEFA3F9FF1F738E92F0C497C14977DCE02B97",
				"XCSCommitContributor": {
					"XCSContributorEmails"<EMAIL_ADDRESS>					"XCSContributorName": "Honza Dvorsky",
					"XCSContributorDisplayName": "Honza Dvorsky"
				},
				"XCSCommitHash": "9f54f31ceffc89ddf735be250e911238631494aa",
				"XCSCommitTimestamp": "2015-07-19T10:23:10.000Z",
				"XCSCommitTimestampDate": [2015, 7, 19, 10, 23, 10, 0]
			}, {
				"XCSCommitCommitChangeFilePaths": [{
					"status": 4,
					"filePath": "CHANGELOG.md"
				}],
				"XCSCommitMessage": "changelog\n",
				"XCSBlueprintRepositoryID": "A36AEFA3F9FF1F738E92F0C497C14977DCE02B97",
				"XCSCommitContributor": {
					"XCSContributorEmails"<EMAIL_ADDRESS>					"XCSContributorName": "Honza Dvorsky",
					"XCSContributorDisplayName": "Honza Dvorsky"
				},
				"XCSCommitHash": "98438eee1e8d891b34c777b57485f1ac251e5b1b",
				"XCSCommitTimestamp": "2015-07-18T18:12:02.000Z",
				"XCSCommitTimestampDate": [2015, 7, 18, 18, 12, 2, 0]
			}, {
				"XCSCommitCommitChangeFilePaths": [],
				"XCSCommitMessage": "Merge pull request #72 from czechboy0/hd/cocoapods\n\nSwitching to CocoaPods",
				"XCSBlueprintRepositoryID": "A36AEFA3F9FF1F738E92F0C497C14977DCE02B97",
				"XCSCommitContributor": {
					"XCSContributorEmails"<EMAIL_ADDRESS>					"XCSContributorName": "Honza Dvorsky",
					"XCSContributorDisplayName": "Honza Dvorsky"
				},
				"XCSCommitHash": "43653e7e9dcefab8089c05641d4a013002df9ff6",
				"XCSCommitTimestamp": "2015-07-18T14:11:19.000Z",
				"XCSCommitTimestampDate": [2015, 7, 18, 14, 11, 19, 0]
			}, {
				"XCSCommitCommitChangeFilePaths": [{
					"status": 4,
					"filePath": "XcodeServerSDK.podspec"
				}],
				"XCSCommitMessage": "new proper version\n",
				"XCSBlueprintRepositoryID": "A36AEFA3F9FF1F738E92F0C497C14977DCE02B97",
				"XCSCommitContributor": {
					"XCSContributorEmails"<EMAIL_ADDRESS>					"XCSContributorName": "Honza Dvorsky",
					"XCSContributorDisplayName": "Honza Dvorsky"
				},
				"XCSCommitHash": "64526cb1dbe14b954c6edb080a9ae483b7fdfa2b",
				"XCSCommitTimestamp": "2015-07-18T14:10:16.000Z",
				"XCSCommitTimestampDate": [2015, 7, 18, 14, 10, 16, 0]
			}]
		},
		"integration": "272167d4affaf38ea93c6e403d000d3a",
		"botID": "272167d4affaf38ea93c6e403d0004c3",
		"botTinyID": "F977308",
		"endedTimeDate": [2015, 7, 20, 19, 36, 50, 237],
		"doc_type": "commit",
		"tinyID": "30C0AE6"
	}]
}

Hmm my guess is if you have git submodules, the commits field (a dictionary) will map from each repository's id to its array of commits. So I guess we have to map our models the same way. Commit needs to be of type [String: [Commit]].

IntegrationCommits will be a merge of Bot and Integration with Dictionary of commits... I'm looking for some logic here... 😏

Just the Bot's id. It's all about the Commits in the end though.

Nevermind... Sometimes I just need to bite my tounge before a click comment... 😶
I'll sit on this tomorrow and will provide a proposal model for this. Thanks for your help! Much appreciated 👍

Anything else in this thread, @cojoj? Otherwise I'll close it.

Sure, close it as for now we've move all of our conversation to #77 😉


Print both vulnerabilities and violations tables if needed

[x] The pull request is targeting the dev branch.
[x] The code has been validated to compile successfully by running go vet ./....
[x] The code has been formatted properly using go fmt ./....
[x] All static analysis checks passed.
[x] All tests have passed. If this feature is not already covered by the tests, new tests have been added.
[x] All changes are detailed at the description. if not already covered at JFrog Documentation, new documentation have been added.

If --vuln flag was provided in table format. we only printed the vulnerabilities and not both

After upgrading the jf cli from 2.63.2 to 2.67.0, it is no longer printing the Security Violations and License Compliance Violations table in the console output.


Add option to remove old deployment logs

Logs can be quite large so an option to delete the logs would be useful, even automatically with a cronjob or by selecting options in the admin screen which then queues a job

Turns out the amount of data is far less than I thought.... an install with 4600 deployments most with 2 servers in each project and the DB is only 100mb


grpc_http1_bridge: add config to enable HTTP status codes for grpc trailers-only response

Signed-off-by: Samra Belachew<EMAIL_ADDRESS>
For an explanation of how to fill out the fields, please see the relevant section
in PULL_REQUESTS.md
Commit Message: set HTTP status codes for trailers only grpc responses through configuration
Additional Description: See issue for details; reverted PR was asked to wrap new logic in a configuration and utilize grpcToHttpStatus() method.
Risk Level: Low
Testing: Unit
Docs Changes:
Fixes issue #14872

/retest

/retest

@htuch, I changed the PR to only modify v3 but let me know if it is necessary to update v2 and I'll add it back in.


Suvoda page and scraper doesn't work. Warning sign appear!

ENVIRONMENT:
https://admin.peviitor.ro/
Browser: Chrome
Device: Laptop
OS: Windows 10
STEPS TO REPRODUCE:
Enter URL in browser
Go to "https://admin.peviitor.ro/" and check "Suvoda"
Click on "Vizualizare joburi"
Check diagram / graphic for run of scraper
Clikc on button "Scaperi"
Click on "Scrapy_peviitor_jobs"
Go to scarer "suvoda_spider.py"
Click on ruleaza
EXPECTED RESULTS:
Diagram show scraper work for curent day.
Scraper run.
ACTUAL RESULTS:
Scraper don't work from 28 September 2024 - see below screenshot:

Scraper don't work, give warning label - see below screenshot:

On 15.12.2024 page have same problems. Nothing was changed until nou


Failures on [cfe] Handle potentially constant type expression in is expression

There are new test failures on [cfe] Handle potentially constant type expression in is expression.
The tests
dart2js_extra/interceptor_named_arguments_test RuntimeError (expected Pass)
dart2js_extra/js_interop_optional_arg_test RuntimeError (expected Pass)

are failing on configurations
dart2js-hostasserts-strong-linux-x64-chrome
dart2js-hostasserts-strong-linux-x64-d8

Hmm, I can't reproduce these locally on master, so closing for now. It's possible they were also fixed by 1ac89cd5b3ed6dde5830fc3c3b8c14a07ee79916. We're just starting the burndown process for NNBD strong mode test regressions, so feel free to approve such failures for now and expect them to show up in our regression queries.


Not possible to install in WSL2

I'm trying v0.2.1 and the install gets stuck when I try to install it in WSL2 (Ubuntu + W11). So basically can't use it cause it's disabled in workspace unless I manage to install it in remote WSL

That's problematic yeah as I don't use Windows, I'll try to look at my Parallels on Mac

Could be fixed with the path fixes of v0.5.0.
I'm closing this, but feel free to open it whenever you find this same issue again

@Patabugen Hey buddy, thanks for letting me know. I just gave it a try again and the install process is working now 👍😄


Update AbstractQueryValidator.cs

Hi Benjamin,
I think in allow method it should be:
CanFilter(key, exp);
CanSelect(key, exp);
CanOrder(key, exp);
CanExpand(key, exp);

I intentionally left Expand out of the AllowAll method, because Expand can only be used on classes.
And since Select/Order/Filter cannot be used on classes I intentionally separated them!

Ok, I remove CanExpand(key, exp). I add CanFilter(key, exp) instead CanSelect(key, exp) because of duplication of CanSelect(key, exp) in your code.

Thank you!


Infinite looping when calling Triton from torch inductor

Hi! I'm trying to use pytorch inductor to compile the following snippet but the compilation will never end.
import torch
x = torch.rand([2,1,1,1], device='cuda')
def forward():
    a = x.argmax(3) # [2,1,1]
    b = a.max(2).values #[2,1]
    c = b.sum(0) # [1]
    return torch.add(b, c)
fn_compiled = torch.compile(forward)
print(fn_compiled())

The hottest function calls given by perf top are:
  58.03%  libtriton.so                    [.] mlir::multiRootTopologicalSort
  16.37%  libtriton.so                    [.] llvm::DenseMap<mlir::Operation*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<mlir::Operation*, void>, llvm::detail::DenseSetPair<mlir::Operation
  12.57%  libtriton.so                    [.] mlir::(anonymous namespace)::DFSState::addToReadyQueue
   3.37%  libtriton.so                    [.] mlir::Value::getDefiningOp

FYI, the same issue in PyTorch repo: https://github.com/pytorch/pytorch/issues/96662

Kernel in question is pretty benign
@persistent_reduction(
    size_hints=[1, 2],
    reduction_hint=ReductionHint.INNER,
    filename=__file__,
    meta={'signature': {0: '*i64', 1: 'i32', 2: 'i32'}, 'device': 0, 'constants': {}, 'mutated_arg_names': [], 'configs': [instance_descriptor(divisible_by_16=(0,), equal_to_1=())]}
)
@triton.jit
def triton_(out_ptr1, xnumel, rnumel, XBLOCK : tl.constexpr, RBLOCK : tl.constexpr):
    xnumel = 1
    rnumel = 2
    xoffset = tl.program_id(0) * XBLOCK
    xindex = xoffset + tl.arange(0, XBLOCK)[:, None]
    xmask = xindex < xnumel
    rindex = tl.arange(0, RBLOCK)[None, :]
    rmask = rindex < rnumel
    r0 = rindex
    tmp0 = 0
    tmp2 = tl.where(rmask, tmp0, 0)
    tmp3 = tl.sum(tmp2, 1)[:, None]
    tmp4 = tmp0 + tmp3
    tl.store(out_ptr1 + (r0 + tl.zeros([XBLOCK, RBLOCK], tl.int32)), tmp4, rmask)

Note both args to tl.where are scalars, but that should still be legal? Also, replacing tmp0 with tl tensor:
 tmp0 = tl.zeros([XBLOCK, RBLOCK], tl.int32)

doesn't help, compilation still hangs.

😱 @Jokeren  I think it's happening in the multiRootTopologicalSort. Any idea what may be going on?

@ptillet It's might be that multiRootTopologicalSort doesn't return correct results? But it's not that multiRootTopologicalSort is hanging there since it's been called many times

It's caused by SimplifyReduceCvt

Ah. Seems like it's my code :) I'll take a look tomorrow.

Thanks!

Hi, I think the problematic code has the following pattern:
%1 = make_range %0
%2 = convert_layout %1
%3 = reduce %2

So if we push forward %2, we would miss an opportunity to fold make_range and convert_layout. Then in the backward phase:
%1 = make_range %0
%2 = reduce %1
%3 = convert_layout %2

Because %3 is cheap to rematerialize, we will push %3 backward across %2 so that we see make_range followed with convert_layout again.
To solve the problem, we probably have two options:

Instead of matching the reduce operation, let's match the convert_layout operation in SimplifyReduceCvt. This way we don't miss higher priority rewrite patterns like RematerializeBackward and SimplifyConversion. We need to set SimplifyConversion's benefit = 4, RematerializeBackward's benefit = 3, and RematerializeForward's benefit = 2.
Let's still match reduce in SimplifyReduceCvt, but we should failure if convert_layout before reduce can be optimized, which indicates that simulateBackwardRematerialization(cvt) <= 0.


chore: myapp to 0.0.1

chore: Promote myapp to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kakumar: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

promotion-build
73da6d9a761513a3ba72c8987533d9d09283413b
link
/test this

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


[GitHub] Add Code Signing service label

Summary
The focus of these changes is to a new service label for Code Signing to the common label set in support of the client library under development.

/check-enforcer override


Added sriram to profiles.json

Hey can you please recheck the process, you have modified the build files.

No i don’t do any modifications other than the profiles.json
I just synced the fork to the latest version and updated them committed and
pushed
On Mon, 16 Oct 2023 at 2:37 PM, gdsc-kits-admin @.***>
wrote:

Closed #39 https://github.com/gdsc-kits/hacktober2023/pull/39.
—
Reply to this email directly, view it on GitHub
https://github.com/gdsc-kits/hacktober2023/pull/39#event-10662443409,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATMEVCBNRLOAUMXVQWC4NELX7T2L3ANCNFSM6AAAAAA6BETF4Y
.
You are receiving this because you authored the thread.Message ID:
@.***>

Can you try doing it once again?
We will get in touch if the issue still persists.
Connect. Learn. Grow
Renuka RajpuriaGDSC Lead 2023-24
Karunya Institute of Technology and Sciences
Phone:<PHONE_NUMBER>
Email: @.***
On Mon, Oct 16, 2023 at 2:40 PM Sri Ram M S @.***>
wrote:

No i don’t do any modifications other than the profiles.json
I just synced the fork to the latest version and updated them committed
and
pushed
On Mon, 16 Oct 2023 at 2:37 PM, gdsc-kits-admin @.***>
wrote:

Closed #39 https://github.com/gdsc-kits/hacktober2023/pull/39.
—
Reply to this email directly, view it on GitHub
https://github.com/gdsc-kits/hacktober2023/pull/39#event-10662443409,
or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/ATMEVCBNRLOAUMXVQWC4NELX7T2L3ANCNFSM6AAAAAA6BETF4Y>

.
You are receiving this because you authored the thread.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://github.com/gdsc-kits/hacktober2023/pull/39#issuecomment-1764049749,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BCNOPX5NMLD43RS5Q3UT26DX7T2YVANCNFSM6AAAAAA6BETF4Y
.
You are receiving this because you modified the open/close state.Message
ID: @.***>


Expose function test

Description
The test was based on this guide. The in-memory-cache part was skipped on purpose.
Suggested changes for the future:
Create a namespace once per all test suites, create a function afterwards. Perform all other tests and leave the expose the function part for the end. This will save up a lot of time waiting for the function to be ready.
Changes proposed in this pull request:

Improve namespace deletion a little bit (still not perfect).
get the Function code dynamically from the Guide
create an API Rule for the function
check if the generated host is valid
make a request to the host and check the response

Related issue(s)

/retest

/test pre-busola-ui-test

/test pre-busola-ui-test

/test pre-busola-ui-test

/retest

/test pre-busola-ui-test


Add fast_tensor_util.cpp to .gitignore

While working on building TensorFlow I noticed that a file fast_tensor_util.cpp is generated:
ubuntu@ubuntu:~/tensorflow$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Untracked files:
  (use "git add <file>..." to include in what will be committed)

        tensorflow/python/framework/fast_tensor_util.cpp

nothing added to commit but untracked files present (use "git add" to track)
ubuntu@ubuntu:~/tensorflow$

This fix adds fast_tensor_util.cpp to .gitignore so that it will not be added inadvertently when adding commit with git add -A.
Signed-off-by: Yong Tang<EMAIL_ADDRESS>

Can one of the admins verify this patch?


DRUID:  Using 'No Zookeeper on Master' option for cluster deployment; issue with showing up all co-ordinator host and other host names as localhost in router concole

Trying to deploy Druid Cluster for the first time and facing issue around hostname, despite of deploying it on different machines in console it looks all service registered as localhost.
Mainly following https://druid.apache.org/docs/latest/tutorials/cluster.html

Affected Version
0.21.0
The Druid version where the problem was encountered.
Description

Cluster size

1 master, 2 data and 1 Query server as mentioned in https://druid.apache.org/docs/latest/tutorials/cluster.html

Configurations in use

druid.extensions.loadList=["mysql-metadata-storage", "druid-s3-extensions", "druid-hdfs-storage", "druid-kafka-indexing-service", "druid-datasketches"]
If you have a different version of Hadoop, place your Hadoop client jar files in your hadoop-dependencies directory
and uncomment the line below to point to your directory.
#druid.extensions.hadoopDependenciesDir=/my/dir/hadoop-dependencies

Hostname

druid.host=localhost

Logging

Log all runtime properties on startup. Disable to avoid logging properties on startup:
druid.startup.logging.logProperties=true

Zookeeper

druid.zk.service.host=<MasterNodeIP_MASKED>:2181
druid.zk.paths.base=/druid

Metadata storage

For Derby server on your Druid Coordinator (only viable in a cluster with a single Coordinator, no fail-over):
#druid.metadata.storage.type=derby
#druid.metadata.storage.connector.connectURI=jdbc:derby://localhost:1527/var/druid/metadata.db;create=true
#druid.metadata.storage.connector.host=localhost
#druid.metadata.storage.connector.port=1527
For MySQL (make sure to include the MySQL JDBC driver on the classpath):
druid.metadata.storage.type=mysql
druid.metadata.storage.connector.connectURI=jdbc:mysql://:3306/xxxx
druid.metadata.storage.connector.user=
druid.metadata.storage.connector.password=
For PostgreSQL:
#druid.metadata.storage.type=postgresql
#druid.metadata.storage.connector.connectURI=jdbc:postgresql://db.example.com:5432/druid
#druid.metadata.storage.connector.user=...
#druid.metadata.storage.connector.password=...

Deep storage

For local disk (only viable in a cluster if this is a network mount):
druid.storage.type=local
druid.storage.storageDirectory=var/druid/segments
For HDFS:
#druid.storage.type=hdfs
#druid.storage.storageDirectory=/druid/segments
For S3:
#druid.storage.type=s3
#druid.storage.bucket=your-bucket
#druid.storage.baseKey=druid/segments
#druid.s3.accessKey=...
#druid.s3.secretKey=...

Indexing service logs

For local disk (only viable in a cluster if this is a network mount):
druid.indexer.logs.type=file
druid.indexer.logs.directory=var/druid/indexing-logs
For HDFS:
#druid.indexer.logs.type=hdfs
#druid.indexer.logs.directory=/druid/indexing-logs
For S3:
#druid.indexer.logs.type=s3
#druid.indexer.logs.s3Bucket=your-bucket
#druid.indexer.logs.s3Prefix=druid/indexing-logs

Service discovery

druid.selectors.indexing.serviceName=druid/overlord
druid.selectors.coordinator.serviceName=druid/coordinator

Monitoring

druid.monitoring.monitors=["org.apache.druid.java.util.metrics.JvmMonitor"]
druid.emitter=noop
druid.emitter.logging.logLevel=info
Storage type of double columns
ommiting this will lead to index double as float at the storage layer
druid.indexing.doubleStorage=double

Security

druid.server.hiddenProperties=["druid.s3.accessKey","druid.s3.secretKey","druid.metadata.storage.connector.password"]

SQL

druid.sql.enable=true

Lookups

druid.lookup.enableLookupSyncOnStartup=false

Steps to reproduce the problem

Just following the cluster deployment steps here https://druid.apache.org/docs/latest/tutorials/cluster.html

The error message or stack traces encountered. Providing more context, such as nearby log messages or even entire logs, can be helpful.
Looks the problem is zookeeper is not working for service discovery and all services are registered as localhost. So, java.net.ConnectException: Connection refused: localhost/<IP_ADDRESS>:8081

Below are logs from router and broker logs,

at java.lang.Thread.run(Thread.java:748) [?:1.8.0_292]
2021-05-29T11:31:37,217 INFO [main] com.sun.jersey.server.impl.application.WebApplicationImpl - Initiating Jersey application, version 'Jersey: 1.19.3 10/24/2016 03:43 PM'
2021-05-29T11:31:37,613 INFO [main] org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.s.ServletContextHandler@70d3cdbf{/,jar:file:/home/druid/druid_0.21/apache-druid-0.21.0/lib/druid-console-0.21.0.jar!/org/apache/druid/console,AVAILABLE}
2021-05-29T11:31:37,617 INFO [main] org.eclipse.jetty.server.AbstractConnector - Started<EMAIL_ADDRESS>(http/1.1)}{<IP_ADDRESS>:8888}
2021-05-29T11:31:37,617 INFO [main] org.eclipse.jetty.server.Server - Started @4846ms
2021-05-29T11:31:37,632 INFO [main] org.apache.druid.java.util.common.lifecycle.Lifecycle - Starting lifecycle [module] stage [ANNOUNCEMENTS]
2021-05-29T11:31:37,636 INFO [main] org.apache.druid.curator.discovery.CuratorServiceAnnouncer - Announcing service[DruidNode{serviceName='druid/router', host='localhost', bindOnHost=false, port=-1, plaintextPort=8888, enablePlaintextPort=true, tlsPort=-1, enableTlsPort=false}]
2021-05-29T11:31:37,658 INFO [main] org.apache.druid.curator.discovery.CuratorDruidNodeAnnouncer - Announced self [{"druidNode":{"service":"druid/router","host":"localhost","bindOnHost":false,"plaintextPort":8888,"port":-1,"tlsPort":-1,"enablePlaintextPort":true,"enableTlsPort":false},"nodeType":"router","services":{}}].
2021-05-29T11:31:37,658 INFO [main] org.apache.druid.java.util.common.lifecycle.Lifecycle - Successfully started lifecycle [module]
2021-05-29T11:31:40,108 INFO [NodeRoleWatcher[BROKER]] org.apache.druid.discovery.BaseNodeRoleWatcher - Node[http://localhost:8082] of role[broker] detected.
2021-05-29T11:32:37,143 WARN [HttpClient-Netty-Boss-0] org.jboss.netty.channel.SimpleChannelUpstreamHandler - EXCEPTION, please implement org.jboss.netty.handler.codec.http.HttpContentDecompressor.exceptionCaught() for proper handling.
java.net.ConnectException: Connection refused: localhost/<IP_ADDRESS>:8081
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[?:1.8.0_292]
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:716) ~[?:1.8.0_292]
at org.jboss.netty.channel.socket.nio.NioClientBoss.connect(NioClientBoss.java:152) ~[netty-3.10.6.Final.jar:?]
at org.jboss.netty.channel.socket.nio.NioClientBoss.processSelectedKeys(NioClientBoss.java:105) [netty-3.10.6.Final.jar:?]
at org.jboss.netty.channel.socket.nio.NioClientBoss.process(NioClientBoss.java:79) [netty-3.10.6.Final.jar:?]
at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:337) [netty-3.10.6.Final.jar:?]
at org.jboss.netty.channel.socket.nio.NioClientBoss.run(NioClientBoss.java:42) [netty-3.10.6.Final.jar:?]
at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) [netty-3.10.6.Final.jar:?]
at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) [netty-3.10.6.Final.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_292]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_292]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_292]

2021-05-29T11:51:37,382 ERROR [CoordinatorRuleManager-Exec--0] org.apache.druid.server.router.CoordinatorRuleManager - Exception while polling for rules
org.apache.druid.java.util.common.IOE: Retries exhausted, couldn't fulfill request to [http://localhost:8081/druid/coordinator/v1/rules].
at org.apache.druid.discovery.DruidLeaderClient.go(DruidLeaderClient.java:221) ~[druid-server-0.21.0.jar:0.21.0]

Any debugging that you have already done
Tried With Zookeeper on Master command as in bin/start-cluster-master-with-zk-server

https://druid.apache.org/docs/latest/tutorials/cluster.html and same issue, all services are still registered as localhost in console and router and broker same as above.

Thanks in advance for any insight about it.

Found the issue, it was due to common.runtime.properties config druid.host=localhost, do not configure druid.host=localhost when deploying as cluster, it will use the in-process function InetAddress.getLocalHost().getCanonicalHostName() to get the hostname, which is very convenient 🙇
Wondering why this basic step was not mentioned in the official document 🤦 Please update it; took me almost few hours to figure out and this https://www.programmersought.com/article/25355543579/ helped. Thanks for the blog 🙇♂

Have found out the root cause and commented above.


Feature/bootstrap 4

Hey 👋
I ported the frontend to Bootstrap 4 & sass and added an new "Dark Mode"
Instructions how to compile:

npm install -g grunt-cli (Only needed if grunt is not installed yet)
cd static-assets
npm install
grunt
Optionally: Install https://chrome.google.com/webstore/detail/livereload/jnihajbhpnppcggbcgedagnkighmdlei?hl=en so the browser reloads automatically after each style change.

TODOS:
Add an option in the User Dashboard to activate/disable dark mode.
it's in empty_base.html Line 22: <body class="{% if league %}theme-{{league.theme}}{% endif %} dark">.
The class .dark should be toggled by this option.
Hit me on Slack if there are any questions 👍

I'm not in favour of depending on node/grunt just for this. We should figure out a different way to do the build/dependencies for bootstrap4.

@lakinwecker compilation is only done locally and the compiled CSS files are in git.
So there would be no need to install/run anything on the server…
Here's my reasoning for using grunt:
It allows for fast compilation and live reloading in the browser when working on the styles plus some other very useful tools like auto-prefixing/minification/linting/csscomb.
grunt is also the main tool used by bootstrap themselves.
Can't really see a good alternative at the moment but very open to hear your suggestions!

I'm not debating whether grunt/npm are good tools. They are.  I'm just generally opposed to adding more dependencies if there is an easy enough way to handle them with the existing dependencies.  I'm not sure there is an easy way, but I think there probably is.
I may not have time to look into it myself, so I'll wait until cyanfish reviews it and see if he agrees.
Also, typically static assets go into the heltour/tournament/static - is that where the build products go?

I followed your instructions and:
➜  grunt
zsh: command not found: grunt

Yes - compiled assets go there.
We can also easily move the static-assets folder somewhere else to make it cleaner.
I wasn't really sure where the best place is for the source files so I added them there.
RE grunt:
The following things are the minimal requirements for compilation:

sass to css compilation (obviously ¯_(ツ)_/¯)
autoprefixer (needed to support older browsers and vendor prefixes - also required by bootstrap so no way around that)
Minification
CSS Comb support (although this one we could ditch, potentially if we're good/strict at writing CSS)

Optionally: Live reloading for the browser for ease of development…

@lakinwecker
If you don't have grunt you need to do
npm install -g grunt-cli
I'll also add to the readme and initial comment 👍

./node_modules/.bin/grunt also works.

@lakinwecker found this: https://github.com/jrief/django-sass-processor
Seems to cover our requirements, apart from 4 and 5 which are not strictly required.

I can setup a watch command to watch and recompile scss on changes very easily. You can also use a browser plugin to reload with the .css files change as well.
The autoprefixer thing is harder to get around. The project you linked above also requires node to be installed in order to use the autoprefixer.    Do we use that in our code, or is that only a boot strap dependency? Do we have to compile bootstrap from source, or could we pre-build it and use sass for our changes only?

If we have to install node to get autoprefixing, then I don't see a reason to avoid using other node based dependencies.  At which point the usage of grunt or not becomes a non-issue.

We should be able to use a pre-built version of Bootstrap. And in general we shouldn't need prefixes if we're only supporting the browsers that lichess supports.

Re: Autoprefixesr:
We're using Bootstrap's variables to define a lot of things and compile using that there and also we can easily comment out unused things in the future. That was we don't really need to overwrite anything that isn't necessary.
Same thing goes for "our" code: It would be quite a bit of work to do all the prefixes etc manually but it would certainly be doable there.
As for using bootstrap precompiled: I'm not a big fan tbh because we would losing a lot of the flexibility and slickness what makes bootstrap a great framework.
Main plus thing of using bootstrap from source is modularity and variables and not having to override/duplicate code.

And in general we shouldn't need prefixes if we're only supporting the browsers that lichess supports.

Unfortunately that isn't the case. Even the latest versions of browsers sometimes still need prefixes for certain things. It's a bit of a jungle out there, still…

Okay. My initial thoughts on this:

Love the look. It's great.
I can definitely do the toggle.
There is too much going on in this PR. It will be prohibitively difficult to do a thorough review.

Ideally this would be split up into multiple PRs, for example:

Add the SASS tooling
SASSify the existing code
Migrate to Bootstrap 4
Add the dark mode

If we can get a more manageable portion of the changes to a new PR, then we can review and discuss those changes in isolation, get it merged, then repeat.

@cyanfish thanks for the feedback and happy you like the look.
Heres' my feedback:
Yes - I understand it's a pretty huge PR…
Regarding the splitting: I'm not sure if there's an easy ways to split everything easily because all the parts are connected, basically – especially Point 2 and 3 (I updated to Bootstrap 4 when moving to sass so I had to do some markup changes and incorporated/adjusted and split the existing styles afterwards)
What I could do is to make a separate PR for the tooling (Basically everything that lives in /static-assets, one for the Bootstrap 4  markup changes and a third for the dark theme (which is basically just one sass file…)
Would that help you manage it better?
Other option is that maybe we go through the whole thing together on a Slack call?
Let me know what the best way is for you and I'll try and do that.

I can definitely do the toggle.
I'm not sure what you mean by this

He means he will implement the user profile setting for switching to dark mode.

That kind of split will definitely help. Basically I need to be able to see useful diffs.

Ok. Good opportunity for me to learn how to cherry-pick! 😄
Also I learned my lesson. I really got carried away there last night (started off just quickly wanting to add the dark theme and ended up porting the whole frontend to BS4...)
I'll probably get around to it tomorrow 👍

Ok @cyanfish I split it in two:

#299 – Frontend Tooling / SCSS / Grunt etc.
#300 – Markup Changed related to Bootstrap 4

Hope this helps! I'll also add some comments to some key files/changes if I get around to it later. 👍

I pulled in the dark mode css changes (as well as switching to SCSS). I left out the Bootstrap 4 + tooling changes since I don't think it provides enough value for the complexity it adds.

Closing for now, let me know if you want to discuss the tooling/bootstrap changes more


Support Expected in dynamoDB updateItem

DynamoDB supports Expected on UpdateItems http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html.
moto does not have that implemented, so this PR adds support for provided Expected on update_item requests.

Coverage decreased (-0.09%) to 93.422% when pulling be07fbda523592c4d29b30453e1f182a9dce630a on gregsterin:support-expected-in-ddbv2-update-item into e079fab9e3feacceed868e3fb0db10ec6be30a6b on spulec:master.

@spulec

Thanks!


how to make "payins/preauthorized/direct/" with mangopay2-nodejs-sdk

I'm trying to make a payment through a CardPreAuthorization. In the documentation, I don't see how to do the "payins/preauthorized/direc /" which is supposed to activate the payment within 7 days of the CardPreAuthorization.

Hi @khan-developpement
We're looking into it
Max

Hi @khan-developpement
We're looking into it
Max

Hi @khan-developpement
the flow is as follows

Register Card https://docs.mangopay.com/endpoints/v2.01/cards#e177_the-card-registration-object

Using CardId create preauthorization
https://docs.mangopay.com/endpoints/v2.01/preauthorizations#e184_create-a-preauthorization

Using PreauthorizationIdcreate payin
https://docs.mangopay.com/endpoints/v2.01/payins#e279_create-a-card-preauthorized-payin

The specific payin call is here =>
https://github.com/Mangopay/mangopay2-nodejs-sdk/blob/master/lib/services/PayIns.js
using var PayInPaymentDetailsPreAuthorized = require('../models/PayInPaymentDetailsPreAuthorized');
Let us know if the issue persists
max

Hi @khan-developpement
the flow is as follows

Register Card https://docs.mangopay.com/endpoints/v2.01/cards#e177_the-card-registration-object

Using CardId create preauthorization
https://docs.mangopay.com/endpoints/v2.01/preauthorizations#e184_create-a-preauthorization

Using PreauthorizationIdcreate payin
https://docs.mangopay.com/endpoints/v2.01/payins#e279_create-a-card-preauthorized-payin

The specific payin call is here =>
https://github.com/Mangopay/mangopay2-nodejs-sdk/blob/master/lib/services/PayIns.js
using var PayInPaymentDetailsPreAuthorized = require('../models/PayInPaymentDetailsPreAuthorized');
Let us know if the issue persists
max

Hi @khan-developpement
There's a good example in our testing file, line 120
https://github.com/Mangopay/mangopay2-nodejs-sdk/blob/master/test/services/PayIns.js

Hi @khan-developpement
There's a good example in our testing file, line 120
https://github.com/Mangopay/mangopay2-nodejs-sdk/blob/master/test/services/PayIns.js

Thank you so much. I just tested. It is OK for me.

Thank you so much. I just tested. It is OK for me.


Please add Cheeky4n6monkey scripts

https://github.com/cheeky4n6monkey/4n6-scripts

These are already in SIFT. https://github.com/sans-dfir/sift-saltstack/blob/master/sift/scripts/4n6.sls


[Do not Merge] [WIP] Combine.perKeyWithBucketing: Combiner for reducing key cardinality

Combine.perKeyWithBucketing(childCombiner, numBuckets) applies the child
combiner to the PCollection using numberOfBuckets number of intermediate keys.
This is a POC, sending it now to share and get early feedback.
TODO: Add tests, pick better names.
Example usage
input.apply(Combine.perKeyWithBucketing(yourCombineFn, desiredNumKeys))

Closing this in favor of https://github.com/apache/beam/pull/33318


Migrating the CI CD from Travis to GitHub Actions

I would like to make a proposal to migrate the Continuous Integration and Delivery of this project to GitHub Actions from Travis CI.
If you find this interesting I can start working on it immediately, and we can make discuss more steps to take to integrate Sonar analysis and deploying to maven central.

👍

👍

Hi @yurishkuro,
Thank you for the response.
Can you please assign me this issue?

Hi @yurishkuro,
Thank you for the response.
Can you please assign me this issue?

travis-ci.org is going away, and we've seen travis-ci.com impose odd limits, so those would be primary motivations to migrate away from travis.

travis-ci.org is going away, and we've seen travis-ci.com impose odd limits, so those would be primary motivations to migrate away from travis.

Thanks, I'll keep you posted as I make progress.

Thanks, I'll keep you posted as I make progress.


Test against the big list of naught strings

Just came across https://github.com/minimaxir/big-list-of-naughty-strings. Might be handy for testing against.

feel free to add a test for this


keepassx-community: Text and images are cut-off

On both the latest nixpkgs-unstable and on master (08639bcd134) the keepassx-community looks very broken. This is probably something to do with Qt, but I only noticed it with this app.
To Reproduce
Steps to reproduce the behavior:

start keepassxc

Expected behavior
Readable text and images
Screenshots

Notify maintainers
@jonafato
@turion
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

system: "x86_64-linux"
host os: Linux 5.4.58, NixOS, 20.09.git.aa9a4f5f185 (Nightingale)
multi-user?: yes
sandbox: no
version: nix-env (Nix) 2.3.7
channels(root): "nixos-20.09pre238896.16fc531784a"
channels(tom): ""
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
  - keepassx-community
# a list of nixos modules affected by the problem
module:

Works fine for me (master on Arch Linux)
Do you have display scaling, and if so how is it configured?

(I feel like I've seen similar issues in the past due to display scaling misconfigurations)

I also can't reproduce (NixOS unstable, GNOME).

Hmm strange, I am not using any display scaling. Currently I am using lightdm + awesome wm on x11.
Using a different theme does not seem to make a difference.
All dialog windows also have the same issue:

Resizing the window has a small effect on how the text is clipped.
Tall:

Less tall:

It looks like some qt issue. However, I cannot reproduce this issue with some other qt apps.
Dolphin emu uses Qt:

So apparently it does have something to do with scaling. (However still not using any display scaling as far as i know)
Setting QT_SCALE_FACTOR_ROUNDING_POLICY=Round as seen in https://github.com/keepassxreboot/keepassxc/issues/5015#issuecomment-658133457 fixes my issue.
QT_SCALE_FACTOR_ROUNDING_POLICY=Round keepassxc

That's weird. As far as I can see, nothing in nixpkgs ever sets that variable. So it's maybe an interaction with another QT app you're using?

I guess we could wrap keepassxc in such a way that it always has this environment variable set on runtime. But I'd like to see someone else confirm the bug as well before applying such a change.

(Either way, congrats on getting keepass usable again!)

Hi @turion,
For now I just apply that hot-fix for myself by setting environment.variables. I agree that we should wait for others to have this same issue before merging any kind fix into nixpkgs.
These are the only QT related variables set before using a fix:
> env | grep '^QT'
QTWEBKIT_PLUGIN_PATH=/home/tom/.nix-profile/lib/mozilla/plugins/:/etc/profiles/per-user/tom/lib/mozilla/plugins/:/nix/var/nix/profiles/default/lib/mozilla/plugins/:/run/current-system/sw/lib/mozilla/plugins/
QT_PLUGIN_PATH=/home/tom/.nix-profile/lib/qt4/plugins:/home/tom/.nix-profile/lib/kde4/plugins:/etc/profiles/per-user/tom/lib/qt4/plugins:/etc/profiles/per-user/tom/lib/kde4/plugins:/nix/var/nix/profiles/default/lib/qt4/plugins:/nix/var/nix/profiles/default/lib/kde4/plugins:/run/current-system/sw/lib/qt4/plugins:/run/current-system/sw/lib/kde4/plugins

They don't seem to be very relevant

This is the closest i got by bisecting:
good: 50c060d13dc55b673435f05119c968720c97b0c5
bad:   67af42e35ff6e233f301bdd26c774cef1c236025
So probably the commit d4c607aa715086f265f7a711c9dcb9e90a063a92 which updates qt5 from 5.12.7 to 5.14.2 broke keepassxc for me.

Indeed reverting that commit, or just specifying Qt 5.12 for keepassxc works fine. See 7ff4990a96146df4abb45d9c6ca6504694cae39e.

This issue appears to be fixed for me in KeePassXC version 2.6.1 :tada:
I'm closing this issue.


Replace Searc with Search

There was a mis-spelling in the document.  Minor edit.

@dstrome are you a delegated authority for this? Just a small spelling error correction.

Thanks @johnwildes , I'll merge the PR.


Allow --no-edit for gps amend-patch

Many times when I amend a commit I don't need to edit the comment, some way to support the  git --no-edit flag would be great!

This has been integrated.


Tracking Issue: Miden Client [WIP]

Miden Client
Users use Miden Clients to interact in the network. The backend of any wallet that is used in Miden will be a Miden Client. Miden Clients consist of several components.

Transaction Prover (shared with the Miden Node)
Signature Module
Wallet Interface
Wallet Database

Prerequisites #29 (When the transaction kernel is done, we can start with the transaction prover module).
Transaction Prover
The Transaction Prover will be able to prove the correctness of a transaction. This is needed for Client-side proving our USP. See #50
Signature Module
The Client must be able to sign transactions and messages using the optimized Falcon verification. #56
Wallet Interface (UI / Smart Contract)
The Miden Client needs an interface to an account on the Miden rollup. It must be able to read on-chain data. Additionally, the Miden Client should provide an interface to a user or an API to an existing wallet like MetaMask Snaps. Should be covered in #22
Wallet Database
The Miden Client needs to be able to store all necessary account data. See #57

We don't use those issues


chore: update llama.h

indicies -> indices

Thanks for the patch but this is vendored code from the upstream llama.cpp repository, so you need to submit the change there.


Indicate to user a new vsc def is required

Consultant pointed out these docs are not quite clear. We need to indicate a new vsc must be created.

/lgtm


Selling a vehicle is not atomic

How to reproduce:
Put single item into valuable vehicle.
Unload to ammobox.
Open Vehicle Management.
Spam sell the vehicle a couple of times.
Stop before the unloading finishes.
Then, rinse and repeat.

Ive tried this numerous times and wasnt able to succeed. It looks like doing this is impossible.

I had the same experience: was also not able to reproduce. Will close for now, and see if @Sharayde can give us more context.

I was using CUP, but when you unload an ammo box into a vehicle using the menu, and then spam the button to sell the vehicle, it used to not remove the vehicle, and if you did it with something absurdly expensive, you could make infinite cash. Since that was back in April, it might have been patched out already. I would see if I could recreate it myself but I'm lazy.


Change MTU?

I can't see this documented anywhere, so thus the question:  Is it possible to change the MTU (Maximum transmission unit) setting using Azure CNI?  I see other network plugins, eg Calico have this functionality.  Sometimes it's necessary to adjust for compatibility with routers\firewalls.  If not, then this issue is a feature request.

Further to this, this is what happens when I try to change a container's MTU from default (1500) to 1400:
sudo ifconfig eth0 mtu 1400 up
SIOCSIFMTU: Operation not permitted
SIOCSIFFLAGS: Operation not permitted

@holmesb  we do not have a plan to support this right now. if there is a valid scenario for this in Azure, we are open to revisit the requirement with the reason.


Deployment

Deployment
As a boot camp student,
I want the prework notes to be structured on a webpage,
So that I can easily find and read the information.
GIVEN a Prework Study Guide website,
WHEN I visit the website using the URL,
THEN I can access my website from any browser

Published via Github pages at https://jsalazar99.github.io/prework-study-guide/


Can groovyfx use other JavaFX library like JFoenix

Hi,
I'm trying to include JFoenix widgets into groovyfx example, here a sample:
@Grapes([
	@Grab('org.codehaus.groovyfx:groovyfx:0.4.0'),
	@Grab('com.jfoenix:jfoenix:8.0.3')
])

import static groovyx.javafx.GroovyFX.start
import com.jfoenix.controls.JFXTextField

start {
    stage(title: 'GroovyFX with jFoenix', visible: true) {
        scene(fill: BLACK, width: 500, height: 250) {
            hbox(padding: 60) {
                text(text: 'Groovy', font: '80pt sanserif') {
                    fill linearGradient(endX: 0, stops: [PALEGREEN, SEAGREEN])
                }
                text(text: 'FX', font: '80pt sanserif') {
                    fill linearGradient(endX: 0, stops: [CYAN, DODGERBLUE])
                    effect dropShadow(color: DODGERBLUE, radius: 25, spread: 0.25)
                }
            }
        }
    }
}

This example is working fine, and you can see I could import some jfoenix controls without any error or warning on console log, now how can groovyfx builder handle/show jfoenix controls ?

if you want to have it named, you can register the name in the bean factory:
https://github.com/groovyfx-project/groovyfx/blob/master/src/demo/groovy/CustomFieldDemo.groovy
for anonymous use, you can use the 'node' or 'container' scenegraph wrappers.
Happy coding
Dierk

Am 11.05.2018 um 13:14 schrieb bitsnaps<EMAIL_ADDRESS>Hi,
I'm trying to include JFoenix widgets into groovyfx example, here a sample:
`@Grapes([
@grab('org.codehaus.groovyfx:groovyfx:0.4.0'),
@grab('com.jfoenix:jfoenix:8.0.3')
])
import static groovyx.javafx.GroovyFX.start
import com.jfoenix.controls.JFXTextField
start {
stage(title: 'GroovyFX with jFoenix', visible: true) {
scene(fill: BLACK, width: 500, height: 250) {
hbox(padding: 60) {
text(text: 'Groovy', font: '80pt sanserif') {
fill linearGradient(endX: 0, stops: [PALEGREEN, SEAGREEN])
}
text(text: 'FX', font: '80pt sanserif') {
fill linearGradient(endX: 0, stops: [CYAN, DODGERBLUE])
effect dropShadow(color: DODGERBLUE, radius: 25, spread: 0.25)
}
}
}
}
}
`
This example is working fine, and you can see I could import some jfoenix controls without any error or warning on console log, now how can groovyfx builder handle/show jfoenix controls ?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Great! it works and it was great :)
https://gist.github.com/bitsnaps/8a04c04519b22a9833a88cd5e0b9ddb1

🤓

Am 11.05.2018 um 16:04 schrieb bitsnaps<EMAIL_ADDRESS>Great! it works and it was great :)
https://gist.github.com/bitsnaps/8a04c04519b22a9833a88cd5e0b9ddb1
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.


Project development

Hi. I wanted to know how is the actual development of this project. Im very interested into using/contributing to it, since my team requires (at least) a bookshelf-model to json-api bidirectional mapping tool. Is there any comment, recommendation on these questions?

Hey @ShadowManu! The development is presently stalled, but I am very open to contributions!

Is there any place I can talk to you guys? I have some ideas and questions, but that's more of a casual conversation than a GitHub issue.

Sorry for the slow reply here @ShadowManu. You can find me in #endpoints on freenode!


Resource Reference Include Match Fix

In the previous implementation, the matchesInclude_hasTargetResourceType_matched would fail. This PR fixes the issue in the match function by making it possible to take the target type into account. We are making use of this implementation to find the included resources to create a Bundle response.

This would fix #5966. It looks good to me!


Audit SDK naming for similarity

Where possible, we should use similarly-named fields and methods across the supported SDKs.
This issue is to audit the names and produce issues to reconcile differences as much as possible.

We compared names here: https://docs.google.com/spreadsheets/d/1dkUsz9z2kffj3F4xylxFjkdR9eOfAEerbqIvr-j2ufI/edit#gid=0
There's roughly a 90% overlap. Differences are mostly atrributable to the builder pattern. Closing.


sdk_ext does not build

I have one image recipe, which calls inherit populate_sdk_qt5 in order to build a host SDK.
Is this the correct way to do it?
Like this I am able to build a "classic" SDK.
bitbake core-image-minimal-qt5 -c populate_sdk builds and I am able to install the SDK and build a qt-hello-world application with it.
If I try to build an extensible SDK (bitbake core-image-minimal-qt5 -c populate_sdk_ext) against the same image recipe it fails:
pokyuser@df75ff077351:/workdir/build/multi-v7-ml$ bitbake core-image-minimal-qt5 -c populate_sdk_ext
NOTE: Started PRServer with DBfile: /workdir/build/multi-v7-ml/cache/prserv.sqlite3, IP: <IP_ADDRESS>, PORT: 44587, PID: 2463121
Loading cache: 100% |#########################################################################################################################################| Time: 0:00:00
Loaded 3373 entries from dependency cache.
Parsing recipes: 100% |#######################################################################################################################################| Time: 0:00:01
Parsing of 2263 .bb files complete (2262 cached, 1 parsed). 3374 targets, 372 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION           = "1.46.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "universal"
TARGET_SYS           = "arm-resy-linux-gnueabi"
MACHINE              = "multi-v7-ml"
DISTRO               = "resy"
DISTRO_VERSION       = "3.1.2"
TUNE_FEATURES        = "arm armv7a vfp thumb callconvention-hard"
TARGET_FPU           = "hard"
meta
meta-poky
meta-yocto-bsp       = "2020-08-28-dunfell-3.1.2+:d3d80fa6fbf15189f6183a33c95fa90053535ae2"
meta-multi-v7-ml-bsp = "dunfell:30a525012dcc6017beb3bdb735b53b6b07908303"
meta-u-boot-wic-bsp  = "dunfell:4dbfc93ee3fe797cee5a25ef7a389eeaec70f418"
meta-resy            = "dunfell:2968f06c1e400131e15bd726808a43195eec8c16"
meta-oe
meta-networking
meta-filesystems
meta-python          = "2020-04-30-dunfell-3.1:17fd382f3467e20308924499b7531ae8b789f056"
meta-qt5             = "2020-09-08-dunfell:0e7015f7a86dda995a39662edbb5c26da647c496"

Initialising tasks: 100% |####################################################################################################################################| Time: 0:00:04
Sstate summary: Wanted 0 Found 0 Missed 0 Current 2716 (0% match, 100% complete)
NOTE: Executing Tasks
ERROR: core-image-minimal-qt5-1.0-r0 do_populate_sdk_ext: Error executing a python function in exec_python_func() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:do_populate_sdk_ext(d)
     0003:
File: '/workdir/sources/poky/meta/classes/populate_sdk_ext.bbclass', lineno: 700, function: do_populate_sdk_ext
     0696:        bb.fatal('The extensible SDK can currently only be built for the same architecture as the machine being built on - SDK_ARCH is set to %s (likely via setting SDKMACHINE) which is different from the architecture of the build machine (%s). Unable to continue.' % (d.getVar('SDK_ARCH'), d.getVar('BUILD_ARCH')))
     0697:
     0698:    d.setVar('SDK_INSTALL_TARGETS', get_sdk_install_targets(d))
     0699:    if d.getVar('SDK_INCLUDE_BUILDTOOLS') == '1':
 *** 0700:        buildtools_fn = get_current_buildtools(d)
     0701:    else:
     0702:        buildtools_fn = None
     0703:    d.setVar('SDK_REQUIRED_UTILITIES', get_sdk_required_utilities(buildtools_fn, d))
     0704:    d.setVar('SDK_BUILDTOOLS_INSTALLER', buildtools_fn)
File: '/workdir/sources/poky/meta/classes/populate_sdk_ext.bbclass', lineno: 539, function: get_current_buildtools
     0535:    """Get the file name of the current buildtools installer"""
     0536:    import glob
     0537:    btfiles = glob.glob(os.path.join(d.getVar('SDK_DEPLOY'), '*-buildtools-nativesdk-standalone-*.sh'))
     0538:    btfiles.sort(key=os.path.getctime)
 *** 0539:    return os.path.basename(btfiles[-1])
     0540:
     0541:def get_sdk_required_utilities(buildtools_fn, d):
     0542:    """Find required utilities that aren't provided by the buildtools"""
     0543:    sanity_required_utilities = (d.getVar('SANITY_REQUIRED_UTILITIES') or '').split()
Exception: IndexError: list index out of range

ERROR: Logfile of failure stored in: /workdir/build/multi-v7-ml/tmp/work/multi_v7_ml-resy-linux-gnueabi/core-image-minimal-qt5/1.0-r0/temp/log.do_populate_sdk_ext.2463195
ERROR: Task (/workdir/sources/poky/../meta-resy/dynamic-layers/qt5-layer/recipes-core/images/core-image-minimal-qt5.bb:do_populate_sdk_ext) failed with exit code '1'
NOTE: Tasks Summary: Attempted 6446 tasks of which 6444 didn't need to be rerun and 1 failed.
NOTE: The errors for this build are stored in /workdir/build/multi-v7-ml/tmp/log/error-report/error_report_20200909212134.txt
You can send the errors to a reports server by running:
  send-error-report /workdir/build/multi-v7-ml/tmp/log/error-report/error_report_20200909212134.txt [-s server]
NOTE: The contents of these logs will be posted in public if you use the above command with the default server. Please ensure you remove any identifying or proprietary information when prompted before sending.
NOTE: Writing buildhistory
NOTE: Writing buildhistory took: 4 seconds

Summary: 1 task failed:
  /workdir/sources/poky/../meta-resy/dynamic-layers/qt5-layer/recipes-core/images/core-image-minimal-qt5.bb:do_populate_sdk_ext
Summary: There was 1 ERROR message shown, returning a non-zero exit code.

Just to add one more thing here, which I noticed. If I install the "classic" SDK I get  29: gcc: not found which puzzles me a bit, since someone needs now a host gcc to install the SDK?
+ cd /home/student/yocto-download/20200910-1
+ cd toolchain/x86_64
+ ./resy-glibc-x86_64-core-image-minimal-qt5-armv7at2hf-vfp-multi-v7-ml-toolchain-3.1.2.sh -d /opt/resy/3.1.2/multi-v7-ml/imx6q-phytec-mira-rdk-nand-qt -y
./resy-glibc-x86_64-core-image-minimal-qt5-armv7at2hf-vfp-multi-v7-ml-toolchain-3.1.2.sh: 29: gcc: not found
Resy (Reliable Embedded Systems Reference Distro) SDK installer version 3.1.2
=============================================================================
You are about to install the SDK to "/datastore/opt/resy/3.1.2/multi-v7-ml/imx6q-phytec-mira-rdk-nand-qt". Proceed [Y/n]? Y
Extracting SDK.................................................................................................................................................................................................................................................................................done
Setting it up...done
SDK has been successfully set up and is ready to be used.
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 $ . /datastore/opt/resy/3.1.2/multi-v7-ml/imx6q-phytec-mira-rdk-nand-qt/environment-setup-armv7at2hf-vfp-resy-linux-gnueab

I managed to build the extensible SDK (just included qtbase in my image to make it build)  and when I am trying to install it refuses with this error:
$ ./resy-glibc-x86_64-core-image-minimal-qt5-armv7at2hf-vfp-multi-v7-ml-toolchain-ext-3.1.2.sh -d /opt/ext-sdk/resy/3.1.2/multi-v7-ml-qt5/imx6q-phytec-mira-rdk-nand/
./resy-glibc-x86_64-core-image-minimal-qt5-armv7at2hf-vfp-multi-v7-ml-toolchain-ext-3.1.2.sh: 29: gcc: not found
Resy (Reliable Embedded Systems Reference Distro) Extensible SDK installer version 3.1.2
========================================================================================
ERROR: the SDK requires the following missing utilities, please install them:  diffstat gcc g++

I updated the issues here:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=14047
It looks like if I inherit populate_sdk_qt5 in my image recipe and build a "classic" SDK things work as expected, but it breaks the extensible SDK

It breaks the relocation code

sdk@8403dfb9ef3a:/workdir/build/multi-v7-ml-qt5/tmp/deploy/sdk$ ./resy-glibc-x86_64-core-image-minimal-qt5-armv7at2hf-vfp-multi-v7-ml-toolchain-ext-3.1.2.sh
Resy (Reliable Embedded Systems Reference Distro) Extensible SDK installer version 3.1.2
========================================================================================
Enter target directory for SDK (default: ~/resy_sdk): /projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext
You are about to install the SDK to "/projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext". Proceed [Y/n]? Y
Extracting SDK................................................................................................................................................................................................................................................................................................................................done
Setting it up...
Extracting buildtools...
Preparing build system...
Parsing recipes: 100% |#######################################################################################################################################| Time: 0:01:47
Initialising tasks: 100% |####################################################################################################################################| Time: 0:00:03
Checking sstate mirror object availability: 100% |############################################################################################################| Time: 0:00:00
Loading cache: 100% |#########################################################################################################################################| Time: 0:00:00
Parsing recipes: 100% |#######################################################################################################################################| Time: 0:00:00
Initialising tasks: 100% |####################################################################################################################################| Time: 0:00:00
done
SDK environment now set up; additionally you may now run devtool to perform development tasks.
Run devtool --help for further details.
/projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext/sysroots/x86_64-resysdk-linux/usr/bin/python3: error while loading shared libraries: libpython3.8.so.1.0: cannot open shared object file: No such file or directory
post-relocate command "/projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext/sysroots/x86_64-resysdk-linux/post-relocate-setup.d/meson-setup.py /projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext" failed with status 127
SDK has been successfully set up and is ready to be used.
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 $ . /projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext/environment-setup-armv7at2hf-vfp-resy-linux-gnueabi
sdk@8403dfb9ef3a:/workdir/build/multi-v7-ml-qt5/tmp/deploy/sdk$

This seems to be correct:
strings /projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext/buildtools/sysroots/x86_64-resysdk-linux/usr/bin/python3.8.real
/projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext/buildtools/sysroots/x86_64-resysdk-linux/lib/ld-linux-x86-64.so.2
...

But this is wrong
strings /projects/sdk/3.1.2/qt5-armv7at2hf-vfp/sdk_ext/sysroots/x86_64-resysdk-linux/usr/bin/python3.8.real
/opt/resy/3.1.2/sysroots/x86_64-resysdk-linux/lib/ld-linux-x86-64.so.2
...


v1.2 rc

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Resolves: #26
Summary:
Please summarize the scope of the changes you have submitted, what the intent of the work is and anything that describes the before/after state of the project.
Merge in v1.2 release candidate to main branch.
Type of change:
Please delete options that are not relevant.

[ ] New capability
[ ] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[x] Other (merge release candidate)

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

https://github.com/AlaskaAirlines/auro-flightline/pull/23 has been removed from this RC. Once this is merged, a new v1.3-rc branch should be created and the aforementioned PR should be rebased off of that branch.

:tada: This PR is included in version 1.1.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


JIRA 428 - Similar style fix

when an app had a really long title. it was wrapping the text and overflowing like above. Now it should truncate with elipses like:

@blynch11p @mleeBoeing

:+1:


python3Packages.maestral: 1.9.3 -> 1.9.4, maestral-qt: 1.9.3 -> 1.9.4

Description of changes
https://github.com/samschott/maestral/releases/tag/v1.9.4
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 325941 at 025db4d9 run on x86_64-linux 1

3 packages built successfully:

maestral (python312Packages.maestral)
maestral-gui
python311Packages.maestral


source-map-inline-sources uses Windows paths on Windows

I was running npm run dist on Bootstrap v4-dev branch and I notice that the map files have the paths with Windows separator. I don't think that's right.
{"version":3,"sources":["../../scss/bootstrap.scss","../../scss/_print.scss","dist/css/bootstrap.css","../../scss/_reboot.scss"

vs this on Windows
{"version":3,"sources":["..\\..\\scss\\bootstrap.scss","..\\..\\scss\\_print.scss","dist\\css\\bootstrap.css","..\\..\\scss\\_reboot.scss"

/CC @jakubpawlowicz
Using v4.1.7.

OK, this might not be an issue, but is it really needed to use Windows separator?

You built it on Windows, right? I wonder how such source map is interpreted by a non-Windows browser, e.g. Chrome on Mac.

Yeah.
That is why I think always using the nix separator is better.

I think we already force UNIX path separator to URLs.

Then it would make sense to do the same here too? I don't seem to have any issues with the unix separator on Windows for sourcemaps.

Worth making it simpler. Scheduling for 4.2.

@jakubpawlowicz: so any news about this? It makes collaboration with people on different OS'es than I am hard and messy. :/

For backwards compatibility I'd rather add it as an option defaulting to sth like { lineBreak: 'system' } where user can override it with 'unix', 'windows', or 'lf', 'crlf', also see https://github.com/jakubpawlowicz/clean-css/issues/238

I don't think the current behavior is right but I haven't read the spec. If the specs allow Windows paths then what you suggest makes sense, otherwise this should be considered a bug and just fixed.
#238 makes sense, totally. Usually I don't hit this because I try to set LF on the repo side plus the CSS are usually one line so no line ending :P

@jakubpawlowicz: can you please take care of this? I'm pretty sure the current behavior is non-standard even if it works.

Sure, we can have a switch in 4.2 as described above. Then default it to unix from v5. Does it sound right?

Sounds good, although, I don't see why one would even need the paths to be Windows-like, when clearly, using unix works everywhere...

Me neither but I work with *nix systems only so can't tell if there's a use case for CRLF.

I use Windows machines, and I see no use case for this. Browsers work just fine with unix separators.

I mean, it's like with URLs; both might work, but what do we use?
I can't find anything in the specs so I guess this should be handled like URLs.
Thus, this isn't a feature request, rather a bug report and no feature should be added; the original behavior should be changed to use unix paths.

@jakubpawlowicz: any news?

Hi @jakubpawlowicz, just to add one more upvote to this!
And I've also found that on Windows the minification adds a CRLF in the packed line:

but the comment lines are ok:

@jakubpawlowicz: ping

Fixed in master, in 4.2.0 soon.

Awesome, thanks @jakubpawlowicz !

4.2.0 is out - have a look at breakWith in https://github.com/jakubpawlowicz/clean-css#formatting-options

@jakubpawlowicz: this issue was about the path separator though. Is this addressed in 4.2.0 too?
How can I specify the format option to enforce \n via the CLI?
Thanks!

Ooops, I somehow focused on the breaksWith. Will add an option to configure that too.
Re CLI you can use cleancss --format breaksWith=lf or cleancss --format breaksWith=unix. Just added it to CLI readme.

Thanks for the help!
Yeah, the path separator is still an issue with 4.2.0.

Do you use CLI or some sort of 3rd party library on top of clean-css?

@jakubpawlowicz: nope. https://github.com/twbs/bootstrap/blob/v4-dev/package.json#L36

It's in our CLI so it has to be fixed there - that's the line: https://github.com/jakubpawlowicz/clean-css-cli/blob/master/index.js#L249

Yeah, but I'm still seeing one CRLF line just before the sourceMappingURL locally on Windows if I just do npm run css-minify

@jakubpawlowicz: yeah that line is wrong. It shouldn't be OS dependent. It should take into consideration the breaksWith option.

^ is fixed in CLI 4.2.1

@jakubpawlowicz: definitely not fixed.

I made an issue in the CLI repo about the line endings issue https://github.com/jakubpawlowicz/clean-css-cli/issues/26

@Johann-S: any chance you could have a look? It doesn't seem there's enough interest to fix this and it definitely affects us.

Would love some news on this as well.

@jakubpawlowicz so about this is issue, which is still present on master. I believe you should always use Linux path separators in sourcemaps. If this issue is solved, then only the linebreak issue is left to fix (https://github.com/jakubpawlowicz/clean-css-cli/issues/26 but probably here too) and we should be able to get reproducible builds regardless of OS.

Won't fix as clean-css is going into maintenance mode.

That's a pity because this is a real bug.

PRs are welcomed!


Typeargs are being parsed incorrectly

As you can see, they're being parsed totally wrong.

This hacky workaround is working for now, but it would be nicer if this were to be fixed properly:

This was fixed a while ago and I forgot to close the issue.


Fetching data from database (Sql, Oracle etc) using TagUI

Hi
I need to fetch some user data from my SQL database for sending mail/message to particular user. Could you please guide me how I can interact to database and get/update/delete the record using TagUI?
Is there any tool that support the same and I need to download the same? or something else. I want the whole process automate. Please help.

This is a duplicate issue, see https://github.com/kelaberetiv/TagUI/issues/112 on how to run SQL statements to read and write to your database. The idea is to generate a SQL script to be executed by your database command line tool.
It will be different tool depending on your database. After printing the output, will have to parse to extract the data. Above issue has example.

Closing issue for now until further inputs, but let me know if any question!


Subscriptions hooked to model CUD operations

Feature Request Type

Core functionality

Description
Using Jayden Windle's graphene-subscriptions, it's straightforward to hook model Create, Update, Delete (CUD) operations to a subscription, which is a foundational feature of using subscriptions with django.
For this to work in strawberry-django there are three pieces of that puzzle:

✓ strawberry itself needs to supports subscriptions (which it does, and that's well-documented)
✓ django needs to be set up to support subscriptions (django-strawberry documents how to set that up using channels)
❓ strawberry-django needs to handle model CUD events, to trigger updates for subscribers to model queries (so that updates are made as the model changes).

I'm not sure if this has been done yet with django-strawberry (perhaps there's something I can't see in the code and isn't documented yet).
Is there anyone who has achieved this who can share how they do it?

Upvote & Fund

We're using Polar.sh so you can upvote and help fund this issue.
We receive the funding once the issue is completed & confirmed by you.
Thank you in advance for helping prioritize & fund our backlog.

I have some thoughts on the matter yes.  This was actually something I've been working on inside our OneSila project.
How I solved it, from memory:
-> A model subscription class that exposes turns any model into a subscription with some light configuration
-> A django post-save signal that is attached to the subscription mechanism that pushed the change to the frontend.
This was a good fit for us, since we have a lot of backend logic and tasks that run async.  But if your idea is frontend-heavy, then you could considering a similar approach except that where you complete the CUD mutation you can:
-> Trigger a custom signal
-> Catch it in the strawberry app on any model
-> Push the changes to the frontend
It's been a while since I worked on this functionality, and sadly it never made it in the lib.  But as I've expressed then, I'd be happy to work together with anyone wanting to improve the subscriptions.
Long story short - give me a few days to dig into my codebase and make some notes.  Happy to share what I have.

@thclark just had some time to go through the code.
How I solved this inside OneSila is not by hooking the subscriptions into the mutations.  Instead leveraging Django's nice signal-system, I choose to hook them into the post-save signals.  That's more holistic measure rather than forcing updates through CUD operations.  It's just native behaviour.  If you handle it outside of the Django-way you'll just limit the usability especially for applications that handle a lot of work in background tasks like huey/celery or have other integrations that push and pull information.
Once a mutation has completed, it will trigger a post-save anyway since the instance will have changed.
That part, comes with a bit of refresh code which is declared on the receiver like so:
@receiver(post_save)
def mymodel__subscription__post_save(sender, instance, **kwargs):
    """
    This is to be sent on the every post_save or relevant signal
    """
    refresh_subscription_receiver(instance)

Every post-save will just work.  You could add the behaviour to more signals and create custom ones. But that just seems like overkill.   The refresh_subscription_receiver code looks like:
from asgiref.sync import async_to_sync
from strawberry.relay import to_base64
import channels.layers

def get_group(instance):
    return f"{instance.__class__.__name__}"

def get_msg_type(instance):
    group = get_group(instance)
    return f"{group}_{instance.id}"

def get_msg(instance):
    return {'type': get_msg_type(instance)}

def refresh_subscription_receiver(instance):
    group = get_group(instance)
    msg = get_msg(instance)

    channel_layer = channels.layers.get_channel_layer()
    async_to_sync(channel_layer.group_send)(group=group, message=msg)

This would probably benefit from introspecting and updating related-models like M2M and FK relations should there be updates that trickle through.
We can now receive changes to models from the backend once subscribed to an instance.
Great.  But how do we even subscribe to model instance?
This part of the puzzle was solved for our use-case by declaring the field in the Subscription class:
class Subscription:
    @subscription
    async def company(self, info: Info, pk: str) -> AsyncGenerator[CompanyType, None]:
        async for i in model_subscriber(info=info, pk=pk, model=Company):
            yield i

Personally I'd like to see more something along the lines of company: AsyncGenerator[CompanyType, None] = model_subscription_field(Company) but I haven't gotten that far yet.
So in that declaration you will find the crucial method model_subscriber which looks like:
from django.db.models import Model

from strawberry import type
from strawberry import subscription
from strawberry.relay.types import GlobalID
from strawberry.types import Info

from typing import AsyncGenerator, Any

async def model_subscriber(info: Info, pk: GlobalID, model: Model) -> AsyncGenerator[Any, None]:
    publisher = ModelInstanceSubscribePublisher(info=info, pk=pk, model=model)
    async for msg in publisher.await_messages():
        yield msg

This field wrapper relies on the actual mechanics found in the Publisher class:
from strawberry_django.auth.utils import get_current_user
from strawberry.relay.utils import from_base64
from asgiref.sync import sync_to_async
from channels.db import database_sync_to_async

class ModelInstanceSubscribePublisher:
    """
    This Publisher is capable of subscribing and publishing updated instances
    to graphql subscriptions.

    It expects to be called with the Info context from strawberry django,
    the instance pk and the model.

    It can be used like so:
    ```
    publisher = ModelInstanceSubscribePublisher(info=info, pk=pk, model=model)
    async for msg in publisher.await_messages():
        yield msg
    ```

    """

    def __init__(self, info: Info, pk: GlobalID, model: Model):
        self.info = info
        self.pk = pk
        self.model = model

        self.ws = info.context["ws"]
        self.channel_layer = self.ws.channel_layer

    async def verify_logged_in(self):
        user = get_current_user(self.info)

        if user.is_anonymous:
            raise Exception("No access")

    async def verify_return_type(self):
        return_type = self.info.return_type.__name__
        requested_type = self.decode_global_id_type()

        if return_type != requested_type:
            msg = f"Requested GlobalID of type {return_type} instead of {requested_type}"
            raise TypeError(msg)

    def get_queryset(self):
        return self.model.objects.all()

    def get_instance(self, pk):
        return self.get_queryset().get(pk=pk)

    def decode_global_id_type(self):
        global_id_type, _ = from_base64(self.pk)
        return global_id_type

    def decode_pk(self):
        _, pk = from_base64(self.pk)
        return pk

    @database_sync_to_async
    def set_instance(self):
        pk = self.decode_pk()
        instance = self.get_instance(pk)
        self.instance = instance

    @sync_to_async
    def refresh_instance(self):
        self.instance.refresh_from_db()
        return self.instance

    @property
    def group(self):
        return get_group(self.instance)

    @property
    def msg_type(self):
        return get_msg_type(self.instance)

    @property
    def msg(self):
        return get_msg(self.instance)

    async def subscribe(self):
        await self.channel_layer.group_add(self.group, self.ws.channel_name)

    async def send_message(self):
        await self.channel_layer.group_send(group=self.group, message=self.msg)

    async def send_initial_message(self):
        await self.send_message()

    async def await_messages(self):
        await self.verify_logged_in()
        await self.verify_return_type()
        await self.set_instance()
        await self.subscribe()
        await self.send_initial_message()

        async with self.ws.listen_to_channel(type=self.msg_type, groups=[self.group]) as messages:
            async for msg in messages:
                yield await self.refresh_instance()

From this code, I did remove a few things that are specific to our application user design.
@bellini666 will probably be able to point out which protections and securities we're missing here that would be called in normal queries.  My personal code-style is also significantly different from the library, I prefer a class based approach with many small methods. The library is built more around larger methods.
At the time, the library wasn't quite ready to do these things out of the box.  I would have happily completed it, but couldn't find traction to help out especially on the last part.
How to setup the subscriptions / channels have been added to the library some time ago, including documentation how to setup channels with a fresh router and a few more things: https://strawberry-graphql.github.io/strawberry-graphql-django/guide/subscriptions/
If you want to see how I fitted it into the large scheme of things:

https://github.com/OneSila/OneSilaHeadless/tree/master/OneSila/core/schema/core/subscriptions
https://github.com/OneSila/OneSilaHeadless/tree/master/OneSila/contacts/schema
https://github.com/OneSila/OneSilaHeadless/blob/master/OneSila/OneSila/asgi.py

There you are.  Admittedly it was quite the effort taking it this far. I hope with the 3 of us we can take it further so that subscriptions "just work".

@sdobbelaere this is amazing! Thank you, really nice work. Here's how I recommend proceeding:

I have channels and ASGI set up already, I'll try to hook up the rest of your code on a simple model.
If (big if!) I can get it to work, let's compare solutions.

I won't be able to share the complete codebase publicly but I'll pull out the relevant bits and paste them here.

We identify commonalities in the API as key bits to go in the library

(I'm guessing on first sight that the ModelInstanceSubscribePublisher class will be common and the rest will be app-specific)

We add the relevant parts to strawberry-django, the create a kitchen-sink example server to check it works and see what the DX is like.
Document the above.

The first two steps there from my side will not be at all fast, as it's a non-commercial side project for which I need this, but I'll try and get to it in the coming weeks.
An Aside (practical usage)
Vaguely related, if anyone's interested in a real-world application of strawberry: I volunteer with the International Electrotechnical Committee and we're working on a digital standard for Wind Turbine specifications. My side project mentioned above is a tool that'll allow people to collaboratively create, update and share Wind Turbine specifications.

@thclark Glad you like it.  It took good bit of R&D / Deep diving into the lib to get there.  Overall it was designed to be usable with minimal effort - so you should be able to get it to work quite easily if I did my work right.
It's designed for everything to be common except for the actual field declaration:
class Subscription:
    @subscription
    async def company(self, info: Info, pk: str) -> AsyncGenerator[CompanyType, None]:
        async for i in model_subscriber(info=info, pk=pk, model=Company):
            yield I

Depending how the week starts after the weekend, I might do a PR with some docs to have a public starting point.
Unfortunately I don't have the availability off the bat to deep dive for all the potential missing use cases.  Currently this could be considered "experimental".
As for your side-project, entirely alien world to me. So I'll be keeping an eye out for it.  In my case, I'm working on a Saas Smart Enterprise solution which my colleague and I are building entirely publicly.  It's early days still, but if interested check it out: https://github.com/OneSila you can also see how I implemented strawberry for the first time.


How to remove specific routes from AutoTracking ?

If you are reporting a bug, please fill in below. Otherwise feel free to remove this template entirely.
Description
Not able to remove Specific route from Google Auto Tracking.
What are you reporting?
Expected behavior
Tell us what you think should happen.
Actual behavior
Tell us what actually happens.
Environment
Run this command in the project folder and fill in their results:
npm ls vue-gtag:
Then, specify:

Operating system:
Browser and version:

Reproducible Demo
Please take the time to create a new app that reproduces the issue or at least some code example
Demonstrable issues gets fixed faster.

:tada: This issue has been resolved in version 1.15.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Reduce csv cache size

Disable for cache for CSV resource
Add OnlyMetadata option to ClusterServiceVersion watch setup
Replace the use of operatorsv1alpha1.ClusterServiceVersion type
with unstructured.Unstructured in the get CSV operation. This
ensures that Get operations on CSV resource are not cached as
unstructured.Unstructured based client operations are not cached
by default in the manager default client.
Ref: https://github.com/kubernetes-sigs/controller-runtime/blob/cd0058ad295c268da1e7233e609a9a18dd60b5f6/pkg/client/split.go#L115
Upgrade go version, controller-runtime and k8s libraries

/hold
this patch disable caching ClusterServiceVersion "get" calls using the manager ClientDisableCacheFor. This will stop working (quietly) if the get call is made using a different ClusterServiceVersion api version.
Hence, it might be better to leverage on cacheUnstructured = false in default new client function. This means we will have to use unstructured.Unstructured to get CSV instead of typed CSV object.

/hold cancel

current main branch (full csv object caching)
25000 csv

this patch (metadata only caching of csv)
25000 csv

both both approaches survived pod restarts with 25000 csv.
i shall create additional csvs (10000+) and see the limit at which the full object caching goes  OOM.

over extended periods (~24hours) pods based on full CSV caching (main) restarted 41 times.
however, the pods with metadata only caching (this patch) were never restarted.
both were run on clusters which had 35k CSVs.

full csv caching
35k csv
almost 41 restart overnight

metadata only caching (this pr)
25k csv
0 restarts overnight

/lgtm


kubernetes: null pointer exception when secret does not exist

Hello
When Kubernetes secret not found I got error:
2019-03-20 11:12:11.012 ERROR 8 --- [TaskScheduler-1] o.s.s.s.TaskUtils$LoggingErrorHandler : Unexpected error occurred in scheduled task.
java.lang.NullPointerException: null
2019-03-20 11:12:10.978 INFO 8 --- [TaskScheduler-1] d.k.v.k.scheduler.ScheduledRefresh : Start refresh of secret...

this should fix #11 right?

Yes, this PR fixes secrets creation for the first time.

I pulled and built this PR and tested it against both #11 and #12 test scenarios in my cluster and I still have the same errors.
If I get some more time, I'll try to debug further.

Hi @bazzuka,
thank you very much for the merge request, I appended one commit and merged it :-)