Cropper options

Hi @jerryshew! Thank you for open sourcing this useful library. Wondering if there are configuration options for the following -

Have a circular cropper instead of square or rectangle?
Have the cropper centered on the image when initialized?

Thanks!

@oyeanuj

not plain to do this
can do, but I recently have no time

you can create a pull request.

@jerryshew for 2, can you provide me some starting guidance since you know the code best?

@oyeanuj ok, i will add some comments, apologize for replying too late.

@oyeanuj add comments to each function and some statements.


Address ProjectTheExtensionCrossVersionSpec flakiness

on Windows with Gradle >= 6.5 and < 7.0
by skipping the test on these combinations
Reviewing cheatsheet
Before merging the PR, comments starting with

❌ ❓must be fixed
🤔 💅 should be fixed
💭 may be fixed
🎉 celebrate happy things

@bot-gradle test ACT

I've triggered the following builds for you. Click here to see all build failures.

AllCrossVersionTestsReadyForNightly build

@bot-gradle test and merge

I've triggered a build for you. Click here to see all failures if there's any.

Pre-tested commit build failed. Click here to see all build failures.

Your PR is queued. See the queue page for details.


Add Docker

Add to guides/DevOps

I'd like to work on this, please?

Assigned to @Shristy2404

There's no DevOps folder in guides. Does it need to be created?

Yes @Shristy2404
P.S. Today is the deadline for you.

I opened a pull request. Let me know if any corrections are required.  :)


Added InterfacePropertiesFormat.* columns to the table azure_network_interface

Integration test logs

Logs
Add passing integration test logs here

Example query results

Results
https://github.com/turbot/steampipe-plugin-azure/issues/778#issuecomment-2168184377

@ParthaI the column descriptions are missing periods at the end. Could you please add them wherever applicable?


As a registered user I want to register/create team and assignt to League

Please add login_required decorator to appropriate views (or urls)

Isuue complete and will be added in nearest pull request


Recognize .bb extension as Clojure

Hi!
Would it be possible to recognize .bb files (Babashka scripts) as Clojure? For now Conjure doesn't know anything about them, and I don't see a g:conjure#filetype_suffixes#clojure.

You can set up an autocommand that will recognize the filename extension, .bb, as a Clojure file.
At the Neovim command line, run:
aug my_bb | au! | autocmd my_bb BufNewFile,BufRead *.bb setlocal filetype=clojure

This will confirm that the above command did work correctly:
:au my_bb
--- Autocommands ---
my_bb  BufNewFile
    *.bb      setlocal filetype=clojure
my_bb  BufReadPost
    *.bb      setlocal filetype=clojure

A neat fix @russtoku! Thanks! There's this open issue on clojure.vim too https://github.com/clojure-vim/clojure.vim/issues/38 which I think would be a great place to fix this.
Hopefully we'll see official support in the language plugin some day soon! Maybe we need to contribute it though?
Will close this for now since I think this is a good answer and I don't think Conjure should be controlling your extension to filetype mappings, that could get messy.


Alerts Causing Crash

There have been sever weather alerts in my area the last two days and my weather station color will not boot. It crashes and reboots when it gets to the updating alerts section of the updates.
I commented out that portion of the code, and it boots fine.
/*   drawProgress(90, "Updating alerts...");   WundergroundAlerts *alertClient = new WundergroundAlerts();   alertClient->updateAlerts(alerts, MAX_ALERTS, WUNDERGRROUND_API_KEY, WUNDERGRROUND_LANGUAGE, WUNDERGROUND_COUNTRY, WUNDERGROUND_CITY);   delete alertClient;   alertClient = nullptr; */
I downloaded the json file from wunderground and it is 24KB in size. I have MAX_ALERTS set to 1.
Let me know if any additional info will help.

Could you please post your JSON response from the alerts service here? I
couldn't find any city to test the alerts service
2017-07-14 0:03 GMT+02:00 smithbrandt<EMAIL_ADDRESS>
There have been sever weather alerts in my area the last two days and my
weather station color will not boot. It crashes and reboots when it gets to
the updating alerts section of the updates.
I commented out that portion of the code, and it boots fine.
/* drawProgress(90, "Updating alerts..."); WundergroundAlerts *alertClient
= new WundergroundAlerts(); alertClient->updateAlerts(alerts, MAX_ALERTS,
WUNDERGRROUND_API_KEY, WUNDERGRROUND_LANGUAGE, WUNDERGROUND_COUNTRY,
WUNDERGROUND_CITY); delete alertClient; alertClient = nullptr; */
I downloaded the json file from wunderground and it is 24KB in size. I
have MAX_ALERTS set to 1.
Let me know if any additional info will help.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/squix78/esp8266-weather-station-color/issues/23, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AArwFhYn3uS37ZjDde6qY-xkj6Wcov_cks5sNpQzgaJpZM4OXmVj
.

Here's the JSON file...
Old_Bridge.zip


Packaged as ECMAScript module rather than CommonJS?

Great library, thank you. I'm including it in an Angular project where the CommonJS nature of the package makes it less efficient WRT tree shaking and bundling. Would it be possible to package it as CommonJS? Thank you.
https://web.dev/commonjs-larger-bundles/

I'd be open to generating an ES target as well, how would you propose doing it? Publishing a separate runtypes-es package to NPM a la lodash-es?

That’s great news 🙏🏻 I’m immediately out of my depth with the answer as II’ve never even published an NPM package but for what my uninformed opinion is worth that sounds very sensible. NPM would definitely be the way to go and I assume that a separate package is what would make the most sense

I don't really have the spare cycles to work on this personally but you're welcome to open a PR 🙂 This blog post might be a good starting point: https://2ality.com/2019/10/hybrid-npm-packages.html

Totally get that! I'm similar but happy to take a look, thanks for the blog post!

I've just released a fork of Runtypes, https://github.com/ForbesLindesay/funtypes which has both CommonJS and ESModules bundles. They're also pre-prepared with rollup so you don't need to handle cycles etc. in your bundler of choice.


manifest.json not being downloaded due to inexistent cache directory

Issue Type

[X] Bug Fix
[ ] Feature
[ ] Other

Current/Missing Behaviour
Currently, the cache directory is not created when running the nwbuild CLI, resulting in the error below:

Expected/Proposed Behaviour
Add a step to create the cache directory if it doesn't exist.
Additional Info

Operating System: Ubuntu 22.04
Node version: v18.13.0
NW.js version: 4.0.7

https://github.com/nwutils/nw-builder/blob/d39a6d345edead51ca74c726f44560d554697c2c/src/nwbuild.js#L147-L156
Looks like the create cache dir code is after the getReleaseInfo info command which leads to this error.

hmm, but if the cache dir is not created before the getManifest function call, the manifest.json and SDK are never downloaded.
I opened a PR creating the cache dir before knowing this info, but you can close it if it's wrong.
what do you suggest?

Create cache code:
https://github.com/nwutils/nw-builder/blob/d39a6d345edead51ca74c726f44560d554697c2c/src/nwbuild.js#L147-L156
Get release info code:
https://github.com/nwutils/nw-builder/blob/d39a6d345edead51ca74c726f44560d554697c2c/src/nwbuild.js#L138-L142
Looks like the create cache dir code is after the getReleaseInfo info command which leads to this error.

I guess my intuition was wrong. Something weird is going on. I'll dig into this.

hmm, but if the cache dir is not created before the getManifest function call, the manifest.json and SDK are never downloaded.
I opened PR #771 creating the cache dir before knowing this info, but you can close it if it's wrong.
what do you suggest?

This also does not seem to work:
ayushmxn@Tau:~/tharatau/nw/nw-builder$ npm run demo:nix

><EMAIL_ADDRESS>demo:nix
> cd ./test/e2e && node nix.js

[ DEBUG ] 2023-01-15T20:45:44.469Z nwbuild property is not defined in package.json
[ DEBUG ] 2023-01-15T20:45:44.470Z Cache directory does not exist locally
[ DEBUG ] 2023-01-15T20:45:44.470Z Creating cache directory /home/ayushmxn/tharatau/nw/nw-builder/test/e2e/cache
[ DEBUG ] 2023-01-15T20:45:44.471Z Manifest file does not exist locally
[ DEBUG ] 2023-01-15T20:45:44.471Z Downloading latest manifest file under /home/ayushmxn/tharatau/nw/nw-builder/test/e2e/cache
[ DEBUG ] 2023-01-15T20:45:45.051Z Succesfully cached manifest metadata
[ DEBUG ] 2023-01-15T20:45:45.053Z Store manifest metadata in memory
[ DEBUG ] 2023-01-15T20:45:45.055Z Search for latest specific release data
node:internal/process/promises:288
            triggerUncaughtException(err, true /* fromPromise */);
            ^

[Error: ENOENT: no such file or directory, scandir './build/nix'] {
  errno: -2,
  code: 'ENOENT',
  syscall: 'scandir',
  path: './build/nix'
}

Node.js v18.13.0


Add prefab tests

Issue migrated from https://api.github.com/repos/Jumpscale/prefab9/issues/77, opened by @rkhamis
We desperately need a way to make sure all prefabs build + install + start + stop.
Further functionality can later be added

only implement test on the ones we need today
do a runner in prefab itself,
just iterate over modules see if .test() there and execute

first we need to make sure the builder works well, see other issue.

and lets agree on specs


Adding the Hyper file defragmentation script (python)

@tsjoblad @jonas-eckhardt
This is the python script we reference from the Hyper API Help topic about optimizing Hyper file storage.

I'm closing this pull request as a lot has changed in the repo. I took the .py file from the pr and placed it into my dev branch.


Angular ng-model integration

I would make a pull request for this, but i find it that devs ussualy fix stuff faster if its just an Issue :D
ng-model doesn't work on "input" element. Where you would expect to apply data of input into your model when you pick date out of picker. Normal input into box is cought by ng-model.
Solution:
Method setValue (line: 850) in conditon if (isValid(targetMoment)) { (line: 881) require to call method input.trigger('input'); after value is set.
Snippet:
                if (isValid(targetMoment)) {
                    date = targetMoment;
                    viewDate = date.clone();
                    input.val(date.format(actualFormat));
                    input.trigger('input'); //Missing line
                    element.data('date', date.format(actualFormat));
                    unset = false;
                    update();
                    notifyEvent({
                        type: 'dp.change',
                        date: date.clone(),
                        oldDate: oldDate
                    });

TestCase:

                    <input id="InputDate" type="text" class="form-control" ng-model="date">

                {{date}}

+1. you saved my day. thanks for sharing. Works flawlessly on my ng app


README updates

Current dependencies on/for this PR:

main

PR #94   👈

This comment was auto-generated by Graphite.


B2A20S20P wrong 0xb9 (capacity remaining Ah)

This is not directly related to esphome-jk-bms project but it is related to reading data from it (I used it as a model to read data over modbus).
I have 2 version of B2A20S20P, one is software v10.08 the other one is software v10.10.
I read them both over BLE or over modbus.
The older version never reports over 277Ah capacity remaining over BLE, but it goes down when pulling from battery. This is ok-ish. What is not ok is that It returns a constant 256Ah regardless (bytes B900000100) over modbus, regardless of the actual charge (the SOC percent is fine).
The newer version (v10.10) reports correctly this value. It goes to 280Ah over BLE and over modbus.
Has anyone encountered this behavior? Is there any way to upgrade the JK BMS firmware?

What is funny is that the SOC percent is working correctly, therefore I compute total_capacity * SOC to get the value of the wrong field. It looks like they are fiddling with bits on each minor release.

In my case the BMS (JK-BD6A17S6P-7.1.0H-UART-TTL) returns always 0x00000000 here (0xb9). The same workaround is in place here: https://github.com/syssi/esphome-jk-bms/blob/main/components/jk_bms/jk_bms.cpp#L304-L305


Update draft for Service navigation, with new decisions

What
Write an updated draft for the Service Navigation.
Why
'More agile' release includes some new decisions for the new Service navigation component., with instructions we've changed into recommendations with requests for feedback.
Related issue: Draft ‘Research on this component’ sections
Who needs to be involved
Content designer
Who needs to review
All squad
### Tasks
- [x] rename all instances of ‘Service header navigation’ to ‘service navigation’
- [x] introduce option to place service name in service navigation as a recommendation we eventually want to implement
- [x] ask services for testing / feedback (also link from update “### Previous versions of the headers”
- [x] Under ‘Slots’, add note to change landmark if needed
- [x] include instructions for blue bar

@Izabela-16 to block some time on Tue (on Friday looks like Charlotte is on all day branding workshop) for @calvin-lau-sig7 @CharlotteDowns to review documentation.


How to started

I'm testing the library but I can't genarate the code after using the command " flutter pub run build_runner build --delete-conflicting-outputs" Do I need to do anything earlier?
[√] Flutter (Channel stable, 3.19.1, on Microsoft Windows [Version 10.0.19045.4651], locale th-TH)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Chrome - develop for the web
[√] Android Studio (version 2021.2)
[√] VS Code (version 1.91.1)
[√] Connected device (3 available)
[√] Network resources

I think that you need to have Flutter v3.22

Added package  json_dynamic_widget_codegen  it work
https://pub.dev/packages/json_dynamic_widget_codegen


CASMINST-4455: provide guidance if goss-firmware-bios-baseline fails

Summary and Scope
Provide more guidance in the event that the goss-firmware-bios-baseline test fails.
Tested on drax:
Result: FAIL
Test Name: Firmware and BIOS versions and baseline
Description: Validates the correct versions of BIOS and firmware; Validates BIOS settings (when available; dependent on vendor). If this test fails, run "/opt/cray/tests/install/livecd/scripts/check_bios_firmware_versions.sh -b" for more information on the failure. On GigaByte NCNs, a value of "null" may indicate that the BIOS/Firmware needs to be reflashed or that a hard AC power cycle is needed.
Severity: 0
Test Summary: Command: firmware_bios_versions: exit-status:
Expected
 <int>: 1
to equal
 <int>: 0
Execution Time: 0.02611800 seconds
Node: ncn-m001

Total Tests: 162, Total Passed: 161, Total Failed: 1, Total Execution Time: 16.5861 seconds

ERROR: Not all tests passed

2022/05/18 15:41:17 exit status 1
drax-ncn-m001-pit:~ #

/backport main


PMID: 9755190

increased chromatin silencing at centromere central core
decreased chromatin silencing at centromere central core

FYPO:0003217 and FYPO:0005315 used to have these names (and text & logical defs), but they were changed after Val argued that chromatin silencing does not occur at the centromere central core - GO:0072692 was  made obsolete. See #2904 and the GO ticket linked there.
I have now improved the asserted parents for these terms - they should have been moved but weren't.
edit file: 2a736df11cb4a1235a331761aa20a2d40cdd3f79
release: c6bb70640c22d92a2fafb32d18a7329d277aaf44

"silencing at the central core" doesn't really make sense as a GO term, because there are no genes to silence here. The phenotype  observation is from the insertion  of a marker gene is OK to have "silencing at the central core" but it would need to be logically defined as "GO:silencing occurs_at "central core". t's an artificial situation...

Thanks. Can we add the requested terms as synonyms if theses are the ones we should use in this case.
I agree it is an artificial situation, because there isn't normally a gene there, but there is obviously something wrong in these mutants.

Yes we should be able to have the phenotype even if the GO term doesn't exist.

Can we add the requested terms as synonyms

The synonyms have been there since the terms were renamed for #2904.

if I search on
increased chromatin silencing at centromere central core
I only find
normal chromatin silencing at centromere central core?

I'll fix that term name, but search behavior is not an ontology issue.

I see, it is called
increased transcriptional repression at centromere central core?

chromatin silencing is a better term name

The entire point of #2904 was to stop using "chromatin silencing at centromere central core" in term names.

The point was to not instantiate "chromatin silencing at centromere central core" in GO.
but chromatin silencing can be increased or decreased at the core as a phenotype.
To say
"transcriotion is repressed ar the core" in GO  is wrong, because transcription doesn't normally occur here.
the phenotype term can exist,  but would need to be logically defined using  "chromatin silencing" and "GO:0000939    "condensed chromosome inner kinetochore"
that's why I said "I think the original term is OK."


move outboard moment and shear equations to aircraft models

test models please

test models please

test models please

test models please

test models please

test models please

test this please

test models please

@galbramc @bqpd looks like macys couldn't install ad for some reason

test this please

I don't know why pip randomly fails to install things. I can't see a consistent pattern...


fix: change Move.toml values to satisfy resource account conditions i…

…n unit tests
Summary

Origin address and resource account configured so Move unit tests pass. (Must be valid source and resource address pair.)

Changelog
Address updates in Move.toml
Testing
movement move test

Closing as @0xmovses is in the process of removing these Move modules from the main branch.

Yeah they've been removed in this PR https://github.com/movementlabsxyz/movement/pull/797


DG: add use cases

Codecov Report

Merging #29 (fd82175) into master (85cd3af) will increase coverage by 0.84%.
The diff coverage is 84.05%.

@@             Coverage Diff              @@
##             master      #29      +/-   ##
============================================
+ Coverage     72.15%   73.00%   +0.84%
- Complexity      399      420      +21
============================================
  Files            70       73       +3
  Lines          1232     1289      +57
  Branches        125      131       +6
============================================
+ Hits            889      941      +52
- Misses          311      315       +4
- Partials         32       33       +1

Impacted Files
Coverage Δ

src/main/java/seedu/address/ui/PersonCard.java
0.00% <0.00%> (ø)

.../java/seedu/address/model/util/SampleDataUtil.java
25.00% <14.28%> (+5.00%)
:arrow_up:

...c/main/java/seedu/address/model/person/Remark.java
75.00% <75.00%> (ø)

...eedu/address/logic/parser/RemarkCommandParser.java
77.77% <77.77%> (ø)

...java/seedu/address/logic/commands/EditCommand.java
97.05% <100.00%> (+0.04%)
:arrow_up:

...va/seedu/address/logic/commands/RemarkCommand.java
100.00% <100.00%> (ø)

...a/seedu/address/logic/parser/AddCommandParser.java
100.00% <100.00%> (ø)

.../seedu/address/logic/parser/AddressBookParser.java
100.00% <100.00%> (ø)

...ain/java/seedu/address/logic/parser/CliSyntax.java
85.71% <100.00%> (+2.38%)
:arrow_up:

...c/main/java/seedu/address/model/person/Person.java
97.82% <100.00%> (+0.20%)
:arrow_up:

... and 4 more

Continue to review full report at Codecov.

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


Reduce overhead of polling perf buffers

In the profiler we develop we use perf buffers to communicate events with userspace. We use this to notify of new processes that we need to generate information for, among other things. We use the default timeout, 300ms. While in the future we might conditionally use ring buffers, we have to support perf buffers for older kernels (<5.8).
While analysing the performance of our own profiler we've noticed that almost 26% of the CPU cycles are spent polling the buffers. It's well known that the Go-C boundary crossing is not cheap (thanks to Go for not following C's ABI!!), which is already documented in this TODO:

https://github.com/aquasecurity/libbpfgo/blob/0aa339608d1efcf54a67be598b07d81c5746f0f5/libbpfgo.go#L1897
Would be curious to know if this is something you've also experienced in Tracee. It would be fantastic to see if implementing this in Go would help here. I think it would!
In the meantime, I've opened https://github.com/aquasecurity/libbpfgo/pull/309 to configure the timeout, which is something we needed even if the overhead were lower, but that can help folks that are willing to reduce overhead despite the higher chances of lost events and higher latency.

Would be curious to know if this is something you've also experienced in Tracee. It would be fantastic to see if implementing this in Go would help here. I think it would!

This is something we have discussed historically indeed. There was an issue opened in Tracee for moving away from the CGO polling logic and implement that in Go (inside libbpfgo).
Maybe the time has come ? @yanivagman FYI

Would be curious to know if this is something you've also experienced in Tracee. It would be fantastic to see if implementing this in Go would help here. I think it would!

This is something we have discussed historically indeed. There was an issue opened in Tracee for moving away from the CGO polling logic and implement that in Go (inside libbpfgo).
Maybe the time has come ? @yanivagman FYI

https://github.com/aquasecurity/libbpfgo/issues/42

This is something we have discussed historically indeed. There was an issue opened in Tracee for moving away from the CGO polling logic and implement that in Go (inside libbpfgo).
Maybe the time has come ? @yanivagman FYI

Yes, indeed we discussed this in the past (https://github.com/aquasecurity/libbpfgo/issues/42).
Like I wrote in the other issue, cgo improved in recent version of go and I didn't see any particular improvement moving to pure go. Yet, I didn't put too much effort into this back then, and it may be a good idea to explore it again if you see a performance impact related to cgo.

FWIW we use Go 1.20


logging artifacts in optuna callback

Adding a method to log artifacts. It requires the user to add user defined attributes called artifact_path and (optionally) artifact_name to the optuna trial.
I am not very happy with that being necessary but I don't see any other way to integrate this functionality into the callback.
The functionality can be tested by following the README.md using  this simple example

Thanks @tibor-mach! I agree it's inelegant but also don't see a more elegant way to include it in the callback.
What worries me is that the optuna callback seems useful only for very shallow use cases, and as soon as we start adding any customization like this, I would rather use the generic dvclive api within the objective function. Do you feel like there is value in this callback?
@daavoo WDYT?

@dberenbaum I was thinking about that too. I guess the callback's basic functionality is nice because all you really need is to add the callback to the study's optimize method - 5 seconds of work, and you get metrics for each trial in your experiment tracking.
However, whenever you want to do anything more complex than that, you are limited by the attributes available in the trial object...you can make workarounds like the one I have in my draft PR and keep adding custom attributes but perhaps it would be more helpful to prepare a few "dvclive optuna recipes" (example scripts like the ones optuna has here).
I would keep the callback as it is, or maybe include the extra feature in my draft PR (but maybe even that is too much already, it still forces you to remember specific keywords and set up user defined attributes for your optuna trials to be of any use) and I would focus on providing such tutorial examples instead. A nice side effect of that is that it familiarizes users with the dvclive API, is a nice developer advocacy material for blogposts or videos and for many common use-cases it can still be more or less copy-paste. Not quite as comfortableas import antigravity but still quite good and the advantage is that it is much easier for the users to see what is actually going on (which I always like, because it allows me to change it without forking libraries and then maintaining those forks :-) )

I lean towards pushing users to use the underlying ML frameworks for this. For the default case, I don't know that users need all the artifacts. It could be surprisingly expensive to keep the model for each trial, and often users will not care about them because they may only be tuning on a subset of data and need to retrain the final params on the full dataset.

I would keep the callback as it is,

I agree with this. The behavior is in line with existing built-in  integrations in optuna (https://optuna.readthedocs.io/en/stable/reference/integration.html) where only metrics and parameters are being logged.

For anything beyond that, we should guide people towards manual use of the API or use the specific ML Framework callback inside the objective function, like:

perhaps it would be more helpful to prepare a few "dvclive optuna recipes" (example scripts like the ones optuna has here).

Agreed. I think this is also relevant regarding the extra stuff @daavoo I would be interested in your opinion on that.
Unfortunately in order to work with the study object, it would still have to be a part of the callback, but the recipes could essentially contain tutorials how to create Callback classes which inherit from the base one that you made.
If Study is not needed then it can be done directly inside the objective function and without the callback, but it is a rather useful and important object in optuna...


Handle security exception when testing if conscrypt should be used

In some containers or environments, a security policy may prevent reading unknown system properties.
As a result, Platform#isConscryptPreferred() is throwing an exception when running OkHttp in our container - because okhttp.platform is not on the whitelist of System Properties which are allowed to be read.
This pull request adds handling for such exceptions so that OkHttpClient initialization doesn't fail.

This is great! Thanks.


Fixes

Replace ad-hoc tempfile solution with tempfile module
Make sure lsdGet is being passed bytes not a string (or it will try to write to / and fail)
library warning to contain filename in case it does fail to write
fix the examples
pad setup.py to contain the README e.g.

Published updated version as ocrd-fork-pylsd at https://pypi.org/project/ocrd-fork-pylsd/. Install it with pip:
pip install 'ocrd-fork-pylsd == 0.0.3'

@kba I recommend removing 73648c6 from this PR branch, because upstream would not want to call their package ocrd-fork-pylsd. So could you please remove the latest commit (and force-push) and instead merge https://github.com/kba/pylsd/tree/fixes into https://github.com/kba/pylsd/tree/pypi-fork?

73648c6 is gone now and pypi-fork up-to-date.


Fully dynamic product URL leads to 404 for other pages that matches the number of URL params/segments

Environment Details

Spartacus:  1.4
Browser: Chrome
OS: Mac

Steps to Reproduce
Configure the product route to be fully dynamic like so
ConfigModule.withConfig({
    routing: {
        routes: {
            product: {
                paths: [
                    ':category/:name/:productCode',
                ]
            }
        }
    }
})

Observed Results
Any URL that has 3 segments is considered by Spartacus as a product page even when they are not.
For example, the following routes will result in a 404 because Spartacus thinks they are all product pages.

URL
Actual
Expected

/category/bags/shoulder-bags
404
Category Page

/cmspage/string/random
404
Content Page

/store-finder/country/US
404
Store Locator

Expected Results
There should be a way to have more specific route matchers.
At a minimum, there should be documentation guideline that having a fully dynamic URL is not possible or recommended.
Offer to Fix
No

Related issue https://github.com/SAP/cloud-commerce-spartacus-storefront/issues/6583

Let's discuss 3 cases, how we can recognize it's a PDP route:

If the PDP route can be recognized by some marker included in the dynamic parameter, a custom URL matcher will help. For example:

/:category/:name/:productCode-x
-x will be hardcoded and that is how you would know it is a product URL

Suppose that we don't have any markers like -x. Then the question is: how to discover it's PDP? As Angular UrlMatchers are synchronous, we can leverage them only if we can figure it out synchronously (i.e. comparing the 3rd parameter against all possible valid product codes upfront). The codes need to be known upfront, i.e:

taken from <meta> tag in runtime or
preloadeded from backend endpoint in APP_INITIALZIER or
hardcoded.

Suppose we need to call the backend endpoint to verify if a current URL is a PDP (i.e call backend to check if 3rd parameter is a valid product code). It's asynchronous, so URL Matcher cannot be used. Here is an idea of solution, however it needs PoC: We would have to process all routes with ** route and recognize the page type in the custom guard/resolver (which can be asynchronous).

@kbalagtey-tacit , which of above is your case?

Thanks, @plabadie ,
I'm glad to see that you are already working on this feature planned for 2.0.
Our use case is 1 & 3.
For 1, we will make use of the workaround you provided while we wait for the proper solution that will come with 2.0.
For 3, I was thinking of a similar solution to solve our issue relating to duplicate pages

Hi @kbalagtey-tacit
For 1. Configurable URL matchers were released in version 2.0.0-next.0 in 4a9c3487e2bae06d984517012af9694c89ce2269 Please give it a try. I hope analyzing the URL synchronously suffices.
For 3. Determining the page type (if it's type of ProductPage, CategoryPage or ContantPage) based on the backend call would be very tricky in Spartacus, we haven't tried it yet and it's currently not on our radar.
Currently Spartacus has a hardcoded logic (in CustomSerializer provided for ngrx RouterStateSerializer) that determines the page type by the presence of the :productCode param. The route parameters were defined during the previous phase - synchronous URL matching.
So starting point could be overwriting the logic of the CustomSerializer. But there is much more (i.e. replacing all Spartacus routes with a one ** route with heavy logic that among other things would call backend to recognize page type.
Tickets that may interest you:

Make part of CustomSerializer extendable https://github.com/SAP/spartacus/issues/7187
General routing improvments https://github.com/SAP/spartacus/issues/7070

Understood, thanks @Platonn for the write-up.


Color palette in the design guideline

Hello, @maprehensive

A typographical error in the hex code for the light shade of blue. It was stated as (E7EEF6) in the palette but (E8EEF6) was written in the diagrammatic description

The background color for forms/sections for dark mode was not stated. The same hex code for the light mode was repeated for the dark mode. I was able to come up with a hex code for the color in the guideline.

Here is me showing the difference between the two hex codes.

@Thimmo I am an outreachy applicant. Please can I work on this task? Thank you.

Hi @maprehensive, I'd like to work on this issue and organizing the color style

Hi, I would like to be assigned to this task. Thank you.

@Thimmo hi, i would like to be assigned to this task


Fixed Small Typo in Emulators Test Name

Fixed Small Typo in Emulators Test Name. I filed #140656 and it was fixed in #142853. I noticed this one there and decided to send a fix.
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

LGTM


Update Stone for Gevulot

https://docs.gevulot.com/gevulot-docs/devnet/integration
https://github.com/gevulotnetwork/gevulot/pull/18

hello @dmirgaleev i would love to work on this :)


business issue

What version of Node.js are you using?
16.15.1
What version of npm are you using?
8.11.0
What operating system are you using?
windows server
What version of SnailyCAD are you currently using?
latest
Describe the Bug
i have my limit set to infinity but one of my members can only create 2 (the create button goes away after that) and when he tries to join he gets the error below. he is in a total of 3 (2 owned 1 joined)
https://media.discordapp.net/attachments/988075841160351804/989498808717152356/Screenshot_2022-06-23_at_12.54.57.png?width=1082&height=676
Expected Behavior
allow him to create/join a business
To Reproduce
No response

Should be fixed


Google login

Reviewer: @amiraliemami
Estimate: 1hr

Ticket
Fixes: AAQ-514
Description
Goal
Allows login using Google Auth
Changes

Added Sign in with Google button
New backend API to handle login and token generation
Minor changes to schema

Future Tasks (optional)

Set access_type or user type to "trial" when logging through google
Restrict # of calls based on account type
Restrict # of content cards based on account type
Publish account

How has this been tested?

Login using your work idinsight account.
CRUD content
CRUD UD
Try playground
Login using your personal google account
CRUD content
CRUD UD
Try playground

NOTE: Only our email addresses are allowed rn. To allow anyone to use their google account, we need to publish this application
To-do before merge (optional)
Checklist
Fill with x for completed. Delete any lines that are not relevant

[x] My code follows the style guidelines of this project
[x] I have reviewed my own code to ensure good quality
[x] I have tested the functionality of my code to ensure it works as intended
[x] I have resolved merge conflicts
[x] I have updated the automated tests (if applicable)
[x] I have updated the requirements (if applicable)
[ ] I have updated the README file (if applicable)
[ ] I have updated affected documentation (if applicable)

Thanks! Just tried this quickly before I review properly. Two initial comments:

The google client ID seems to have issues, when it redirects I just get a blank page so I can't test the google functionality right now, It's actually a 400 error from Google with the message Parameter client_id is not set correctly. I set it as per your slack message.
What's the rational behind making the user_id an integer? We want to use uuids for all IDs so we're not susceptible to enumeration attacks where other user_ids can be guessed if you know one. Ideally we should also change all other IDs to not be integers. If it really has to be an integer,  then we also need to update the values in core_backend/add_users_to_db.py too - currently that's broken because it tries to insert a uuid.hex string. My priors are p strong about the fact that we should be using random strings as IDs though.

Thanks! Just tried this quickly before I review properly. Two initial comments:

The google client ID seems to have issues, when it redirects I just get a blank page so I can't test the google functionality right now, It's actually a 400 error from Google with the message Parameter client_id is not set correctly. I set it as per your slack message.

Hmm... is this a local setup? Did you set it for both the terminals running admin app and backend?
If so, let's debug together tomorrow.

What's the rational behind making the user_id an integer? We want to use uuids for all IDs so we're not susceptible to enumeration attacks where other user_ids can be guessed if you know one. Ideally we should also change all other IDs to not be integers. If it really has to be an integer,  then we also need to update the values in core_backend/add_users_to_db.py too - currently that's broken because it tries to insert a uuid.hex string. My priors are p strong about the fact that we should be using random strings as IDs though.

I changed it so that it would auto-increment and we don't have to define it for each user.
The user never actually sends the user_id right? it's baked into the token that only the backend can decrypt. So no one really knows their userid and even if you guessed it, there is nothing you can do about it since you can decrypt the token.
But I may be missing something and happy to be convinced otherwise. Can you explain why your prior are so strong? Here's what I found :

https://www.reddit.com/r/PostgreSQL/comments/1acojhp/incrementing_id_vs_random_string_performance_best/
https://stackoverflow.com/questions/2551776/database-design-primay-key-id-vs-string
https://chat.openai.com/share/6a7f2050-4a0e-4b9b-b364-413a6fdd84cb

Hmm... is this a local setup? Did you set it for both the terminals running admin app and backend? If so, let's debug together tomorrow.

Oh I only set it for backend in dev setup. I just set it for frontend as well and now the page loads but I get Invalid Google credentials when I try one of my accounts.
I had also tried with docker compose which didn't load the Google auth page, and all that should need is the client ID variable in the .env right?

I changed it so that it would auto-increment and we don't have to define it for each user. The user never actually sends the user_id right? it's baked into the token that only the backend can decrypt. So no one really knows their userid and even if you guessed it, there is nothing you can do about it since you can decrypt the token.
But I may be missing something and happy to be convinced otherwise. Can you explain why your prior are so strong? Here's what I found :

https://www.reddit.com/r/PostgreSQL/comments/1acojhp/incrementing_id_vs_random_string_performance_best/
https://stackoverflow.com/questions/2551776/database-design-primay-key-id-vs-string
https://chat.openai.com/share/6a7f2050-4a0e-4b9b-b364-413a6fdd84cb

I see, you're right it's always encrypted so not exposed. Given the performance gains/readability then I guess it makes sense to have it be an integer. Could you update the ID values in core_backend/add_users_to_db.py to be ints too then?
What do you think about changing the content and query IDs to uuids though? They're exposed as part of our API calls openly.

Oh I only set it for backend in dev setup. I just set it for frontend as well and now the page loads but I get Invalid Google credentials when I try one of my accounts.

Hmm... let me make sure I typed in your email address correctly.

I had also tried with docker compose which didn't load the Google auth page, and all that should need is the client ID variable in the .env right?

Yep! That's all you need. I'll look into it and get back to you.

Oh two more thoughts:

Could you update the docs to say that the client ID env var must be set and where
Could you make whether the Google login button appears dependent on whether that variable exists? Should be easy I imagine. Means we won't have non-functioning components if we decide not to enable it for a client, for example.

Oh two more thoughts:

Could you update the docs to say that the client ID env var must be set and where
Could you make whether the Google login button appears dependent on whether that variable exists? Should be easy I imagine. Means we won't have non-functioning components if we decide not to enable it for a client, for example.

On #1 - we don't do that for any of the env vars. All we say is to take a copy of template.env and set the vars. I think that's sufficient for now.
On #2 - Yep. Makes sense! I'll make the change

Oh two more thoughts:

Could you update the docs to say that the client ID env var must be set and where
Could you make whether the Google login button appears dependent on whether that variable exists? Should be easy I imagine. Means we won't have non-functioning components if we decide not to enable it for a client, for example.

On #1 - we don't do that for any of the env vars. All we say is to take a copy of template.env and set the vars. I think that's sufficient for now. On #2 - Yep. Makes sense! I'll make the change

#2 is a little tricky given how (when) the Google Button Div gets rendered. I'm going to merge in for now and fix it later.


Fix registration of custom operators

While most of the tflite operators/kernels have a Register_* function returning the type TfLiteRegistration,
this is not the the case for custom TFLite Micro Operators. The AddCustom() function of the MicroMutableOpsResolver
still expects a pointer to a static struct.
My proposal to fix this issue:

Update external function prototype for registering custom ops to use a pointer
Dereference pointer when building the registrations array

References:

https://github.com/tensorflow/tensorflow/commit/0bfe9a92d174f1bc4d99ac73e6ff23ffcba83aa4
https://github.com/tensorflow/tensorflow/blob/31b768a3ed1ec731fb012d2053cde06c9d40b755/tensorflow/lite/micro/micro_mutable_op_resolver.h#L82
https://github.com/tensorflow/tensorflow/blob/5dcfc51118817f27fad5246812d83e5dccdc5f72/tensorflow/lite/micro/micro_mutable_op_resolver.h#L497

Please correct me if I am wrong.

I was not sure if pull request should target r2.4 or master. As far as I saw, r2.4 is ahead of master which does not make sense to me.

Looks good, thanks!
The master branch is meant to track tensorflow master, but was not kept up-to-date for quite some time. You can even see that this branch fails because stuff in the CI is outdated.
So this change should go into 2.4 and master as far as I understand, but as far as I remember this was not yet changed for 2.3 right?

@rafzi 7a2f20a00ad99bb52024dd0063b6e19ef800712c was first pushed to r2.3 but reverted afterwards. So yes, it seems like a TF 2.4 "thing".


Fixes a bug in pumi.cpp mentioned in #2161 [bugfix/pumi-dev]

Assignment used instead of equality in else if condition

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

Merged in next for testing...


Backport #1820 and bump minor version 0.30.2

Patch one backports #1820, I believe this is all that is needed for LDK to be able to upgrade to rust-bitcoin v0.30.
Context:

https://github.com/rust-bitcoin/rust-bitcoin/pull/1820
https://github.com/lightningdevkit/rust-lightning/issues/2124

Patch 2 adds a changelog entry and bumps the minor version.

The CI fails are lint "warnings" that should not be fixed when backporting, I guess we need to update CI so when the target branch is not master we don't convert clippy warnings to hard errors.

I don't think it matters if we "backport" lint fixes since they're in hashes anyway.

The CI fails are lint "warnings" and pinning issues, neither of which should not be backported, right?

Correct. CI will never pass on backports because the Rust ecosystem is too big a mess to have a working pipeline for more than a couple weeks without constant babysitting and patching.

...though having said that, part of the reason we have lockfiles in the repo is to prevent "pinning issues" from cropping up.

Tagged and published.
There was already a 0.30.2 tag but as near as I can tell it was some sort of experiment with the new release script, so I just overwrote it.

...though having said that, part of the reason we have lockfiles in the repo is to prevent "pinning issues" from cropping up

IIUC this one stems from using nightly. I suggest we pin nightly for backports but let it run on master. Or even use cron job on master to find new issues and update pins but pin it in PRs as well so that people don't get new lints in unrelated code.

IIUC this one stems from using nightly. I suggest we pin nightly for backports but let it run on master.

Yeah, this sounds like a great idea. Maybe on every release we should create a branch and add a "pin nightly" patch to it, as part of the release process?
Or we could just wait until we have to do a backport, and create the branch then.

I was thinking of having a bot that tests master with latest nightly when the nightly is released - on success update the pin (and nothing else - a trivial one-line commit) on error notify us and we manually resolve it whenever it works for us.

@Kixunil oh, nice, that would be awesome.
For a few weeks we had @realeinherjar doing a bunch of scripting magic here. I'm not sure if he'd be willing to give this a shot or if he's moved on or what.

This is what https://github.com/rust-bitcoin/rust-bitcoin.github.io/blob/bcdce9f961fba200a18352fcd45cc49086c5c3df/.github/workflows/test.yml is doing in the rust-bitcoin.org website.
Let me see if I got this straight: We need a "cron" CI job that tests the master branch with the latest Rust nightly release. If errors, then either a notification or open an issue?
If yes, @Kixunil do you want to work on that, or can I do it?

@realeinherjar yes and on success commit to master the nightly version. Run the job every day after nightly is released (there's a set time of release, I don't remember plus add a buffer of an hour or two)
Go ahead, I have other things to do now.


Avoid beautify inline scripts an styles

Hi !
Your package is the only one that work great for me.
I just want to know if it's possible to avoid "beautify" inline JS and inline CSS included in <script> and <style> tag.
If not, can you please, make it possible as an options :) ?
Thank you

I would love this as well,  compact would be great

I use:

[…]


Visual toggle indicator broken

Description
When using the toggle field, the values change as expected, but the visual indicator isn't shifting.
Steps to reproduce
Clone Tina Grande. Checkout Theme > Typography > try to toggle that h2.
Expected result
The visual toggle would switch.
Actual result
No visual indicator that the value has toggled.
Environment
"gatsby-plugin-tinacms": "^0.1.14-alpha.1",
"gatsby-tinacms-git": "^0.2.12-alpha.1",
"gatsby-tinacms-json": "^0.7.0-alpha.2",
"gatsby-tinacms-remark": "^0.5.0-alpha.1",

Can I give it a go?🚀

@maciekgrzybek You shouldn't have to ask for permission :)

:) Ok, just always want to make sure that no one is already working on it :)

Let's make it a rule of thumb:  if there is no assignee, no open PR, no has-pull-requestlabel on the issue, or request like yours  in a comment, then feel free to work on an issue.

Sounds good :)

Hey @maciekgrzybek, @ncphillips managed to fix this issue here. It was a final-form issue. We wanted to publish this morning without introducing this issue into the release, hence the patch.
Thanks 😄


Move @eth-optimism/dev to dev dependencies

Description
Move @eth-optimism/dev to dev dependencies.


Error When Doing Maven Package

I cloned down the project
copied the endpoint.properties.example to endpoint.properties
Ran mvn clean package
Get this error:
INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] angularjs-portal ................................... SUCCESS [  0.135 s]
[INFO] angularjs-portal-home .............................. FAILURE [  8.187 s]
[INFO] Mock Portal ........................................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 8.432 s
[INFO] Finished at: 2015-11-25T12:24:13-06:00
[INFO] Final Memory: 8M/245M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project angularjs-portal-home: Could not resolve dependencies for project edu.wisc.my.portal.angular:angularjs-portal-home:war:<IP_ADDRESS>-SNAPSHOT: Could not find artifact edu.wisc.my.apps:uw-frame:war:1.3.4-SNAPSHOT in internal (http://code.ku.edu:8082/archiva/repository/internal/) -> [Help 1]

Download uw-frame and run a mvn install. Uw-frame is in the same org as this repo. Or just change the uw-frame version to 1.3.3

running mvn install on uw-frame results in this error:
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.863 s
[INFO] Finished at: 2015-11-25T15:47:04-06:00
[INFO] Final Memory: 14M/209M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.3.2:exec (default) on project uw-frame: Command execution failed. Cannot run program "bower" (in directory "/Users/brucephillips/git/uw-frame/src/main/webapp"): error=2, No such file or directory -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.3.2:exec (default) on project uw-frame: Command execution failed.

changed the pom.xml in module angularjs-portal-home so that the version of uw-frame is 1.3.3 and was then able to build the project.
When I deploy the web.war file into Tomcat webapps where i have uPortal 4.2.1 running and then go to https://localhost:8443/web/expanded (after first logging in to uPortal using the normal uPortal URL I see the MyUW home page and what looks like an AJAX icon spinning - I don't see any of the portlets from my uPortal.
Thank you for the help - we have some managers at University of Kansas who want to see your front end with our uPortal backend.
Bruce

You may have to change which tab you are asking for in the layout feed. Look at app-config.js to change URLs

@phillips1021 to build uw-frame check the dependencies. You need to install bower on your machine.

This is now fixed as 1.3.4-snapshot of frame does not exist. it was updated to point at 1.4.1-snapshot of frame which is available in central-snapshots.


npm version needs update

My team and I are using Slick 1.5.8 in our project via npm. We have been seeing some odd scrolling behavior in our carousels, and it's fixed when we manually use the latest slick.js version from Github. We were wondering if the updates could be published to npm so that we can use them while staying in line with our work process.
Here's a diff showing the current npm version of slick.js on the left, and the most up-to-date version of slick.js from Github on the right: https://www.diffchecker.com/4o0hridn

+1 :)

+1
http://glebbahmutov.com/blog/automatically-publish-to-npm/

This looks like its been fixed! Closing


Editing pluggable storage docs

Moving configuration doc from github link to readthedocs

Codecov Report

Merging #3932 into master will decrease coverage by 0.05%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #3932      +/-   ##
============================================
- Coverage     67.16%   67.11%   -0.06%
  Complexity        4        4
============================================
  Files          1032     1032
  Lines         50907    50907
  Branches       7110     7110
============================================
- Hits          34194    34164      -30
- Misses        14378    14399      +21
- Partials       2335     2344       +9

Impacted Files
Coverage Δ
Complexity Δ

...he/pinot/core/query/pruner/ValidSegmentPruner.java
57.14% <0%> (-28.58%)
0% <0%> (ø)

...a/manager/realtime/RealtimeSegmentDataManager.java
75% <0%> (-25%)
0% <0%> (ø)

...r/validation/RealtimeSegmentValidationManager.java
43.33% <0%> (-15%)
0% <0%> (ø)

.../BrokerResourceOnlineOfflineStateModelFactory.java
49.15% <0%> (-10.17%)
0% <0%> (ø)

...impl/dictionary/FloatOffHeapMutableDictionary.java
78.18% <0%> (-9.1%)
0% <0%> (ø)

...pache/pinot/core/util/SortedRangeIntersection.java
83.82% <0%> (-7.36%)
0% <0%> (ø)

.../impl/dictionary/FloatOnHeapMutableDictionary.java
86.66% <0%> (-6.67%)
0% <0%> (ø)

...e/impl/dictionary/LongOnHeapMutableDictionary.java
88.88% <0%> (-4.45%)
0% <0%> (ø)

...troller/helix/core/retention/RetentionManager.java
75% <0%> (-4.17%)
0% <0%> (ø)

...nsport/netty/PooledNettyClientResourceManager.java
85.41% <0%> (-4.17%)
0% <0%> (ø)

... and 13 more

Continue to review full report at Codecov.

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


Remove the com.google.guave jar from hudi-flink-bundle to avoid conflicts.

Remove the com.google.guava jar from hudi-flink-bundle to avoid conflicts.
Tips

Thank you very much for contributing to Apache Hudi.
Please review https://hudi.apache.org/contributing.html before opening a pull request.

What is the purpose of the pull request
This pull request remove the com.google.guava jar from hudi-flink-bundle to avoid conflicts.
Brief change log

Modify pom.xml in hudi-flink-bundle

Verify this pull request
(Please pick either of the following options)
This pull request is a trivial rework / code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end.
Added HoodieClientWriteTest to verify the change.
Manually verified the change by running a job locally.

Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Codecov Report

Merging #2828 (c709f11) into master (62bb9e1) will decrease coverage by 43.21%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master   #2828       +/-   ##
============================================
- Coverage     52.60%   9.38%   -43.22%
+ Complexity     3709      48     -3661
============================================
  Files           485      54      -431
  Lines         23224    1993    -21231
  Branches       2465     235     -2230
============================================
- Hits          12216     187    -12029
+ Misses         9929    1793     -8136
+ Partials       1079      13     -1066

Flag
Coverage Δ
Complexity Δ

hudicli
?
?

hudiclient
?
?

hudicommon
?
?

hudiflink
?
?

hudihadoopmr
?
?

hudisparkdatasource
?
?

hudisync
?
?

huditimelineservice
?
?

hudiutilities
9.38% <ø> (-60.42%)
48.00 <ø> (-325.00)

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

 Would you please file a jira issue to track this change?

@MINCWANG Thanks for your contribution. Would you please file a jira issue to track this change?

@yanghua     OK, This jira address: https://issues.apache.org/jira/browse/HUDI-1797


[Feat] Dynamic Placeholder Substitution

Issue(s)
#16
Acceptance Criteria fulfillment

[x]  Implemented placeholder identification and substitution for receiver-specific information
[x]  Tested and validated the feature in different messaging scenarios.

Proposed changes (including videos or screenshots)
Screencast from 2024-08-16 19-57-27.webm

Hey @hugocostadev  Please review this after the #15 PR. it's on top of it.

I've added additional features to our system, allowing us to dynamically retrieve and display the username, name, email, and room details. This functionality is now working across various platforms, including Channel, Private groups, Direct Message, and Live Chat.

All good, just missing the README update! ;D

Sure I'll update those

Hey @hugocostadev  sorry for the delay I added the details about the dynamic value in the body placeholder and in README


Adding configuration to force any pet to run

Fairly self-explanatory. Adds a checkbox in the config. Didn't feel like adding it to the panel but it would be cool to have a little run energy orb at some point.

@Mrnice98 Can't add assignees so just doing a mention

@Mrnice98 ping


Added cards to the main page.

Site functionality coming together. Dropdown works, img cards work.
TODO: Make dropdown change image on the background
TODO: Make cards have a hover effect and be darkened by default.

Site functionality coming together. Dropdown works, img cards work.
TODO: Make dropdown change image on the background
TODO: Make cards have a hover effect and be darkened by default.

Ok I will start on the drop-down this week


Drop trait never called on exit

Hello there, I have an issue on program exit where the Drop trait of a PyClass object doesn't get called when python is exitting. I first encountered it in an extension module I am working on, but it seems to happen also when it is rust initializing python.
Here is minimal example
use pyo3::prelude::*;

fn main() {
    println!("starting");
    let a = Python::with_gil(|py| {
        Py::new(py, A::new(1))
    });
    let b = A::new(2);
    drop(b);
    drop(a);    // commenting this changes nothing
    println!("ending");
//     Python::with_gil(|_| {});   // uncomment it to have a being freed
}

#[pyclass]
struct A {
    a: u32,
}
impl A {
    fn new(a: u32) -> Self {
        println!("creating");
        Self {a}
    }
}
impl Drop for A {
    fn drop(&mut self) {
        println!("dropping {}", self.a);
        self.a = 0;
    }
}

Using pyo3==0.21.2 or lower, and python==3.11.2 I get the following output
starting
creating 1
creating 2
dropping 2
ending

I would have expected to see drop 1 somewhere, likely after ending and main exit, when the started python interpreter stops and reacquire its GIL to drop all its objects. Instead it seems the object is never dropped.
If I reacquire the GIL before leaving main (uncommenting the last line) I finally get what's expected.
starting
creating 1
creating 2
dropping 2
ending
dropping 1

In this example, reacquire the GIL at the end of the main seems to be a workaround, but it is not in the case of an extension module where you do not know when the program will stop and thus cannot insert this GIL acquisition.
In my usecase, I need to properly stop rust threads in drop
Do you have an idea of what to do in order to ensure drop will be called ?

Regardless of if this instance can be fixed, relying on destructors being called at program exit is a recipe for sadness when Python is involved.

Is there an alternative for stopping the threads owned by my rust objects when python exits ? For instance a pyo3 function for checking whether the python interpreter is still alive ?

I found my issue, in the end it was not because of pyo3 at all, I had something wrong about the way I was keeping Py<T> instances
So I am able to have the destructor called on exit as long as nothing (like PyQt...) is holding a ref to it !


drivers: display: uc81xx: add support for uc8175

Add support for uc8175 display driver. uc8175 has a slightly different command/data length requirements for certain registers, namely TRES and PTL, compared to uc8176/uc8179
This commit refactors the driver code and such that setting TRES and PTL registers are now done by function pointers provided by config->quirks, by the same token as how it is done for the CDI register

Please drop all of the necessary code reformatting, then we can continue with the review.

Got it, thank you!

@andysan Thanks! please consider becoming a collaborator in this area:
https://docs.zephyrproject.org/latest/project/project_roles.html#collaborator


ci: add typos check and conventional commits check

Codecov Report

Merging #12 (455a80e) into main (60cfc86) will increase coverage by 0.12%.
The diff coverage is n/a.

:exclamation: Current head 455a80e differs from pull request most recent head 6ce3365. Consider uploading reports for the commit 6ce3365 to get more accurate results

@@            Coverage Diff             @@
##             main      #12      +/-   ##
==========================================
+ Coverage   55.28%   55.41%   +0.12%
==========================================
  Files          63       63
  Lines       10359    10359
==========================================
+ Hits         5727     5740      +13
+ Misses       4127     4118       -9
+ Partials      505      501       -4

Impacted Files
Coverage Δ

pkg/controller/group/group_controller.go
69.79% <0.00%> (-0.53%)
:arrow_down:

plugin/tower/pkg/controller/policy/controller.go
80.15% <0.00%> (ø)

pkg/agent/controller/policy/cache/group.go
81.13% <0.00%> (+1.88%)
:arrow_up:

pkg/agent/controller/policy/policy_controller.go
72.03% <0.00%> (+3.08%)
:arrow_up:


[develop]Ponglish, when phone language is other than "supported" in app

If you got set other than supported language, then in Fiszki is some English, some Polish.
-set language for example as Italian
-open fiszki
-go to settings - settings are named in Polish, but other fields are in English (excepted "Clear DB after choose that option)
-learning mode and other activities are in Polish.

Maybe more details ?


etcdctl: bad error message

$  etcdctl member list
context deadline exceeded

If a cluster isn't up then we get a bad error message, perhaps something like:
$  etcdctl member list
etcd cluster is not available or configured

cc @bcwaldon

Closed by #3181


update rebar file -- testing with dch

Overview

Testing recommendations

Related Issues or Pull Requests

Checklist

[ ] Code is written and works correctly;
[ ] Changes are covered by tests;
[ ] Documentation reflects the changes;

gah


Category null

When getting and event the parameter "Category" is always null, but Facebook have this information.
There should be some misconfiguration mapping this parameter.
I noticed on BigFoppa App (EventMap4U), which is using this project, he has the Category field with values.

I can hardly believe that a project building on this can have more info than facebook-events-by-location itself... That'd be quite strange.
I'll have a look anyways.

I just checked this, and it returns categories. It's just the case that not all events have a category set, and therefore it is null subsequently.
Using the example query http://localhost:3000/events?lat=40.710803&lng=-73.964040&distance=100&sort=venue returns the following:
{
	"events": [{
		"id": "231292107336574",
		"name": "Psychic Ills, Purling Hiss (solo), Junk Boys",
		"type": "public",
		"coverPicture": "https://scontent.xx.fbcdn.net/v/t1.0-9/s720x720/17523033_1873883072860361_2212722631830992389_n.jpg?oh=54a67ff8664a2519396e7c4c2ce429b6&oe=598891A8",
		"profilePicture": "https://scontent.xx.fbcdn.net/v/t1.0-0/c<IP_ADDRESS>/p200x200/17523033_1873883072860361_2212722631830992389_n.jpg?oh=cd6f0752129b75ecf6ee710f12010297&oe=598DE025",
		"description": "▁ ▂ ▃ ▅ ▆ ▇ ▉ ▇ ▆ ▅ ▃ ▂ ▁\nFlatBox & Alt Citizen Present\n\nPsychic Ills\nPurling Hiss [solo]\nJunk Boys \nhttps://junkboys.bandcamp.com/releases\n\nTickets: https://www.ticketfly.com/purchase/event/1445829\n21+\nSubscribe to our events here: http://bit.ly/2fAjRpr\n▁ ▂ ▃ ▅ ▆ ▇ ▉ ▇ ▆ ▅ ▃ ▂ ▁",
		"distance": "89",
		"startTime": "2017-04-28T20:00:00-0400",
		"endTime": "2017-04-28T23:59:00-0400",
		"timeFromNow": 1359437,
		"category": null,
		"stats": {
			"attending": 62,
			"declined": 0,
			"maybe": 182,
			"noreply": 193
		},
		"venue": {
			"id": "460616340718401",
			"name": "Baby's All Right",
			"about"<EMAIL_ADDRESS>			"emails"<EMAIL_ADDRESS>			"coverPicture": "https://scontent.xx.fbcdn.net/v/t31.0-8/s720x720/16300274_1190598481053513_5678512810993788559_o.jpg?oh=dba6f85205e1c39c2b63ef34595116b3&oe=59587314",
			"profilePicture": "https://scontent.xx.fbcdn.net/v/t1.0-1/p200x200/1480734_642185745894792_5820988503650852577_n.png?oh=c1b2de32d966516538b97e2d3515af69&oe=5984652D",
			"location": {
				"city": "Brooklyn",
				"country": "United States",
				"latitude": 40.71012,
				"longitude": -73.96348,
				"state": "NY",
				"street": "146 Broadway",
				"zip": "11211"
			}
		}
	}, {
		"id": "275643622860012",
		"name": "Daniel Bachman",
		"type": "public",
		"coverPicture": "https://scontent.xx.fbcdn.net/v/t31.0-8/s720x720/17350033_10158669599025227_4131069402485456306_o.jpg?oh=ff1e74ed7cf19639361d13d45612e195&oe=5993CCE5",
		"profilePicture": "https://scontent.xx.fbcdn.net/v/t1.0-0/c<IP_ADDRESS>/p200x200/17424935_10158669599025227_4131069402485456306_n.jpg?oh=1bb6e973d129d7ef60ffde472e446d1f&oe=59540701",
		"description": "◥◣ Daniel Bachman\n\n== at Baby's All Right\n== 8 PM // $12 // 18+\n\n➟ TICKETS: http://ticketf.ly/2n4zC9r\n\n--\n\nwith love from PopGun Presents\n\nsign up for our newsletter: http://eepurl.com/bntZDT\nsubscribe to our events calendar: http://j.mp/popgunevents\nearn free tickets to popgun shows by signing up for our street team:http://bit.ly/2aa9lPZ",
		"distance": "89",
		"startTime": "2017-06-30T20:00:00-0400",
		"endTime": "2017-06-30T23:30:00-0400",
		"timeFromNow": 6802637,
		"category": "MUSIC_EVENT",
		"stats": {
			"attending": 15,
			"declined": 0,
			"maybe": 33,
			"noreply": 0
		},
		"venue": {
			"id": "460616340718401",
			"name": "Baby's All Right",
			"about"<EMAIL_ADDRESS>			"emails"<EMAIL_ADDRESS>			"coverPicture": "https://scontent.xx.fbcdn.net/v/t31.0-8/s720x720/16300274_1190598481053513_5678512810993788559_o.jpg?oh=dba6f85205e1c39c2b63ef34595116b3&oe=59587314",
			"profilePicture": "https://scontent.xx.fbcdn.net/v/t1.0-1/p200x200/1480734_642185745894792_5820988503650852577_n.png?oh=c1b2de32d966516538b97e2d3515af69&oe=5984652D",
			"location": {
				"city": "Brooklyn",
				"country": "United States",
				"latitude": 40.71012,
				"longitude": -73.96348,
				"state": "NY",
				"street": "146 Broadway",
				"zip": "11211"
			}
		}
	},
        ...
     ]
}

The second event has a category.

I think that Facebook returns a list of category's per event. For example: "Local Business", "Arts & Crafts Store" or on another event: "Arts & Entertainement" or on another event: "Non profit Organization", "College & University".
Can it be the category of the Page and not the Event Itself?
By this I mean if the Page that publish the event as category it could cool if the Category field that this server reply include the page category?
Greetings.

I don't really understand what you mean. The category is derived from the event itself, see https://github.com/tobilg/facebook-events-by-location-core/blob/master/lib/eventSearch.js#L203, and not the place.
Also, the categories of the pages don't need to have anything to do with the actual events.

Hello. I think you are correct in your analysis about the categories @tobilg , but the category in the events most of the times is null.
In facebook.com, the events page, at the bottom we have the group Categories, I guess they are using Page categories.
Are you open to change your request, adding the fields category and/or category_list (don't know which one is the correct one) to the pulled page information?
Thanks.

@Tobilg My app is not using your code. But from you I got the idea of finding events thru the place search. For showing that idea I am grateful.
In my code I am also taking category and category_list from the page of the place listing the event (you call this venue). My idea here is that category of the page often corresponds to type of event.
In the US the events category is nearly always set, but not in Europe. I guess the US-version has category as a mandatory field for event.
/Big

I just pushed the version 0.7.0 which contains the venue.category and venue.categoryList fields.


Update for Godot 3.1.x

The goal of this PR is to make GDSQLite compile and function for Godot 3.1.x on Windows, OSX and Linux.
This pull request makes a number of changes:

Updates the SConstruct file to input the correct godot_cpp library
Removes the old binaries from the demo folder
Updates godot_cpp submodule to the 3.1 tag
Cleans up some of the demo project
Adds the OSX dynamic library to the GDNative library

I have tested this commit as follows:

Windows

Compiled for 32 and 64 bit on Windows 10 Home 64-bit
Demo ran with both 32 and 64 bit versions

OSX

Compiled for 64 bit on OS X Yosemite 10.10.5

(32 bit support was deprecated with macOS High Sierra)

Demo ran with the 64 bit version

Linux

Compiled for 32 and 64 bit on Debian 4.9.0 64-bit virtual machine
Demo ran on 64 bit version, could not get 32 bit Godot working to test

Closes #30

Much appreciated, thank you! 😁


How to ingest data without duplication allowed?

With documentation, there is :

Data ID: An identifier for the data represented by this row. We do not impose a requirement that Data IDs are globally unique but they should be unique for the adapter. Therefore, the pairing of Internal Adapter ID and Data ID define a unique identifier for a data element. An example of a data ID for vector data would be the feature ID.

according to that, Adapter ID and Data ID define a unique identifier, so how to ingest data without duplication allowed?
now, my index looks like
adapter_id                 data_id
4	......              places.12
4	......              places.12

Why this happened?
The values of adapter_id and data_id in these two records are the same
i want to get a single record without a duplicated one, how can i do?

I find the cassandra's table definition :
**primary key (partition, adapter_id, sort, data_id, vis, nano_time, field_mask, value, num_duplicates)**

Any way to custom this ?

Not sure why you'd why exactly you'd want to customize that primary key, you can give it the data ID to be unique, and other things like sort and partition key come from the index (which again you could customize but probably don't want to).
The issue is most likely that you are inserting rows into the index with the same adapter ID and data ID but different sort keys.  This would happen, for example, if you were using a spatial index and the rows had different geometries (or similarly a temporal index with different date/times).  In these rare cases you would want to delete the row prior to ingesting.  The num_duplicates identifier that we tack onto the primary key is a hint that we intentionally are storing duplicates, and this can happen in rare circumstances such as if you are storing a time range (consider a track that has a start time and and end time) and that time range crosses a periodicity boundary on a temporal index (because time is unbounded, we place it on the space filling curve by applying a periodicity such as a year which is our default but can be configured, so in the case of a year periodicity if the track started on Dec. 31 and ended on Jan 1 for example, we have to insert 2 rows on each side of the boundary and we maintain that with the hint num_duplicates).  Hopefully that adds some clarity to your situation - as mentioned most likely you are inserting a data ID multiple times with different sort keys, such as different geometries within a spatial index, which will require deleting the previous one prior to insertion in that case.

Thx for your reply, Where can i find the sort keys ?  My situation is that:  The data written twice is just the same

Do you have a "ROUND_ROBIN" partition strategy on your index (such as described in this add index help output, https://locationtech.github.io/geowave/latest/userguide.html#help-command)?  This partition strategy would by design add random partition keys even to identical rows and explain this behavior you're seeing.


Adding Additional Data-Attribute Configurations

Adding data attribute configurations for:

The maximum amount and element can be scaled (very similar to the min-scale attr)
Preventing the movement of a pinch zoom element until it's first zoomed in.

@googlebot I signed it!

On Oct 5, 2019 at 10:47 PM, googlebot<EMAIL_ADDRESS>wrote:
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
📝  Please visit  https://cla.developers.google.com/  to sign.
Once you've signed (or fixed any issues), please reply here with  @googlebot I signed it!  and we'll verify it.
What to do if you already signed the CLA
Individual signers
It's possible we don't have your GitHub username or you're using a different email address on your commit. Check  your existing CLA data  and verify that your  email is set on your git commits.
Corporate signers
Your company has a Point of Contact who decides which employees are authorized to participate. Ask your POC to be added to the group of authorized contributors. If you don't know who your Point of Contact is, direct the Google project maintainer to  go/cla#troubleshoot  (Public version).
The email used to register you as an authorized contributor must be the email used for the Git commit. Check  your existing CLA data  and verify that your  email is set on your git commits.
The email used to register you as an authorized contributor must also be  attached to your GitHub account.
ℹ  Googlers:  Go here  for more info.
—
You are receiving this because you authored the thread.
Reply to this email directly,   view it on GitHub, or   mute the thread.


Bump bindgen version

Attempting to consume this package from one which uses a later version of bindgen, and it seems like the differing version of clang-sys dependencies don't play nicely together. Not entirely sure why possibly/probably due to linking against the system libclang library?... Assuming we need to bump the version of bindgen.
This is the error:
cargo build \
    --release \
    --target="aarch64-unknown-linux-musl" \
    --manifest-path="memory-manager/Cargo.toml" \
    --target-dir="/workplace/jgowans/build-aarch64/memory-manager"
    Updating crates.io index
error: failed to select a version for `clang-sys`.
    ... required by package `bindgen v0.56.0`
    ... which is depended on by `memory-manager v0.1.0 (/workplace/jgowans/memory-manager/memory-manager)`
versions that meet the requirements `>=1.0.0, <2.0.0` are: 1.0.3, 1.0.2, 1.0.1, 1.0.0

the package `clang-sys` links to the native library `clang`, but it conflicts with a previous package which links to `clang` as well:
package `clang-sys v0.28.0`
    ... which is depended on by `bindgen v0.51.0`
    ... which is depended on by `userfaultfd-sys v0.2.1`
    ... which is depended on by `userfaultfd v0.2.1`
    ... which is depended on by `memory-manager v0.1.0 (/workplace/jgowans/memory-manager/memory-manager)`

failed to select a version for `clang-sys` which could resolve this conflict
Makefile.dev:32: recipe for target 'build' failed
make: *** [build] Error 101

Thanks Pat!
Done both changes. I've added the runtime feature flag to bindgen as recommended in the change log: https://github.com/rust-lang/rust-bindgen/blob/master/CHANGELOG.md#0520
Without it it doesn't seem to find libclang properly...
error: failed to run custom build command for `clang-sys v1.0.3`

Caused by:
  process didn't exit successfully: `/workplace/jgowans/userfaultfd-rs/target/debug/build/clang-sys-5b940c21bebf34cf/build-script-build` (exit code: 101)
  --- stderr
  thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: "couldn\'t find any valid shared libraries matching: [\'libclang.so\', \'libclang-*.so\'], set the `LIBCLANG_PATH` environment variable to a path where one of these files can be found (invalid: [])"', /home/ANT.AMAZON.COM/jgowans/.cargo/registry/src/github.com-1ecc6299db9ec823/clang-sys-1.0.3/build/dynamic.rs:211:45
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Not entirely sure why...

Yeah, the runtime flag looks like the right choice. It just wasn't a thing as of 0.51

I had not seen that changelog, thanks. I agree the runtime feature seems like the one we want turned on.

@jgowans released as 0.3.0 due to the major semver bump on the bindgen dependency. Thank you!


Watching directories

Two minor tweaks to --reload:

--reload . does not work (as "." is erroneously considered hidden). (We also now consider ".." to be not hidden.)
Explicitly wait on directories, to pick up new files (this has only been tested under Linux)

Thanks for the patch - interesting! So the two changes are:

Add the directories explicitly to the list of things to watch. Seems very reasonable. Do you have to put the trailing slash on the end? If not, I'd rather we didn't - since it's implying a semantic difference that isn't there.
Allowing . as the argument. An interesting approach, but I wonder if there's a simpler way around. At the moment with listContentsInside we check the predicate, then descend if it passes. However, even if the user passes .git as their initial folder, they probably do want to go inside it there. Therefore, how about keeping the original predicate, but changing the function to check after, so whatever the user passes initially will escape scrutiny?

Both seem good ideas.

The trailing slash because when creating the directories to notify on, we use map takeDirectory files, but some of the files are actually directories. Without a trailing slash this would actually wait on the parent directory. This could be cooked some other way if you prefer, though I guess returning directories and files separately from listContentsInside still implies that semantic difference, and I'd prefer not to make an IO call to check if it is a file or directory. What do you suggest?

Good point, that does sound better.

OK, you point about / makes a lot of sense. But now I'm wondering if waiting for a directory really works? The way the wait code works is by waiting the watcher, and then checking all the files it cares about and seeing if any have modification time changes. I suspect if it is working for you, that's because the modification time thing fails entirely, and then you're going down the failure path of give up and reload anyway. I don't disagree it is a good idea though!

I'm not following you here, sorry. Looking at the loop in recheck, I don't see where the give-up-and-reload-anyway path is.
In any case, I'm not seeing any difference between files and directories: (snippets from verbose output, file first, then directory)
%NOTIFY: Modified "/home/ben/dev/ghcid/test-reload-dir/file" 2019-02-28 17:54:55.859643896 UTC False
%WAITING: Notify signaled
%RELOADING: test-reload-dir/file

Reloading...
  test-reload-dir/file

%NOTIFY: Unknown "/home/ben/dev/ghcid/test-reload-dir/" 2019-02-28 17:56:24.521966815 UTC "Attributes {isDirectory = True, maybeFilePath = Nothing}"
%NOTIFY: Modified "/home/ben/dev/ghcid/test-reload-dir" 2019-02-28 17:56:24.521954763 UTC True
%WAITING: Notify signaled
%RELOADING: test-reload-dir/

Reloading...
  test-reload-dir/

(As an aside, it does seem a bit silly that the notifier tells us what file it was notifing about, only for us to throw the information away and poll all files for modification times!)
(Another aside, the logic for polling seems broken: we sleep the requested time on the first iteration (in waitFiles, but unless there was a change, we then loop in recheck and this sleeps for only 0.1 seconds)

To address your remarks:

There is no give up and reload branch, my bad.
The loop through modification times is for safety - we might get spurious notifies. The simplest thing was just to check everything, and it should be on a relatively small number of files, so not a big deal.
What I don't see is how new files will escape recheck - won't they not change because getModTime doesn't see them so will just call recheck again?

Ah, I think I see what you mean. Indeed new files will be unseen by recheck, but the directory's modTime changes when a new file is created inside it, and this is what triggers escaping recheck (indeed, this is the point of adding directories to the watchlist).

I hadn't thought of the modtime on a directory - OK - that makes sense then. Can we get a comment to that effect somewhere, otherwise I'm going to forget again.
Happy to merge once we switch to checking the predicate after listing rather than before.

Done and done. I think this is ready to merge now.

I agree! Thanks a lot.

Would you like a release with this change incorporated? I'm happy either way (otherwise it will go in when I next have a larger batch of changes).

Actually, I think there's enough in to justify a release, so doing one now.


[BugFix] fix the inconsistent behavior of JDBC external table with version 2.4

What type of PR is this：

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #14235
Problem Summary(Required) ：

fix some inconsistent behavior of JDBC external table with version 2.4, which is introduced by https://github.com/StarRocks/starrocks/pull/9944

when the length of string type exceeds the limit, the query will return an error in version 2.4, but the previous optimization doesn't handle this case, so I add checking logic to do this after we get_result_from_boxed_array.

in some cases, the java class type of result in ResultSetMetadata is not consistent with it in real return data.
for example,FLOAT type in oracle gives java.lang.Double in resultSetMetaData, but the result type is BigDecimal when we getObject from resultSet.
in version 2.4, we get the value by calling doubleValue() method through JNI, avoiding this problem.
But after the previous optimization, JDBCScanner will create an object array according to the type in ResultSetMetadata, and an error will occur when assigning BigDecimal to Double.
I made some changes to getNextChunk to fix it by casting the result object to the target type as before.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[x] 2.5
[ ] 2.4
[ ] 2.3
[ ] 2.2

run starrocks_admit_test

run starrocks_be_unittest

run starrocks_admit_test

@Mergifyio backport branch-2.5


[SPARK-26921[R][DOCS][FOLLOWUP] Document Arrow optimization and vectorized R APIs

What changes were proposed in this pull request?
There are few suspect in the newly added doc. Open this followup to fix it and a typo.
How was this patch tested?
N/A

cc @HyukjinKwon

Test build #105078 has started for PR 24514 at commit 3fed12f.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/10369/
Test PASSed.

Test build #105078 has finished for PR 24514 at commit 3fed12f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/105078/
Test PASSed.


Revert using two connections

Revert "Use separate connection for read/write (#57)"
Bump spear to 1.3.1

Spear 1.3.1 fixes the issue :)


blazingStarText has no efffect

Currently blazingStarText has no effect. Also the woah div should have text first for this to show effect...

Would you suggest changing the woah div to text on blazingStarText and blackMirrorText?


ENH: Support python 2.

Initial cut of support for python 2.
Notable deficiencies:

Removes keyword-only args from several API functions.

Changes BytesIO.getbuffer() to BytesIO.getvalue(). This is almost
certainly a significant performance regression for large loads. At the
very least, it should be made conditional by python version.  It's an
open question whether the extra copy incurred by calling getvalue()
makes this even worth doing. If not, we'd probably have to vendor a
py2-compat BytesIO-like object to support zero-copy reads.

Not sure if this is actually worth doing, but, I was seeing unreasonable memory usage for fundamentals queries on Q over the weekend, and wanted to at least test to see if warp_prism improved that situation.

In Python 2 cStringIO has a C API where you can read from the underlying buffer.
There is a capsule called cStringIO_CAPI which exports a structure with a read function. You can pass -1 to read the whole thing as a char*. This doesn't copy the data. This can't be merged as is because of the getvalue call.
Even with the getvalue call was this better for fundies?

Even with the getvalue call was this better for fundies?

Don't know, I haven't actually used this yet other than getting the tests to pass in py2.


Tests code improvements

var replaced with const

anonymous functions replaced with arrow functions

PI value replaced with Math.PI constant

equal replaced with strictEqual since the first one was deprecated

[x] tests

[x] linter

equal replaced with strictEqual since the first one was deprecated

The better way to do this is by loading assert like this: const assert = require('assert/strict'), or if we're willing to drop support for older versions of node: const assert = require('node:assert/strict').


K8s Operator guide default resource limits in example.yaml do not work for recommended machine types

In our K8s operator docs for GKE, we have a section that covers resource limits. Our guide walks users through creating a GKE cluster with the machine type as n1-standard-4.
gcloud container clusters create cockroachdb --machine-type n1-standard-4
In the resource limits section, we guide the user to set resource limits on their cluster, however we do not recommend values that will work with the n1-standard-4 machine type.
resources:
    requests:
      cpu: "4"
      memory: "16Gi"
    limits:
      cpu: "4"
      memory: "16Gi"

This results in errors when trying to apply the example.yaml file to the cluster:
Events:
 Type   Reason      Age         From        Message
 ----   ------      ----        ----        -------
 Warning FailedScheduling 31s (x12 over 13m) default-scheduler 0/3 nodes are available: 3 Insufficient cpu, 3 Insufficient memory.

We should instead recommend the user updates their resource limits to cpu: "2"  and memory: "8Gi" so that their example file will work with the suggested machine type in the guide.
Note: Google lists the hardware resources for these machines as:

So there are only 15 GB of ram available. Google does list 4 vCPUs, however, so I'm unclear why K8s is unable to schedule due to the CPU limit. Dropping to 2 CPUs was required in order to get my cluster to spin up successfully though.

cc @johnrk

I'm moving this to the K8s Operator repo. This is an Engineering issue.


Mine_levels not being respected

It appears that the mine_levels is not being respected.
Mine_entrance is set to the following
mine_entrance = {x = -4330, y = 66, z = 4210}
mine_levels is set to the following
mine_levels = {
{level = 10, chance = 0.2},
{level = 20, chance = 0.2},
{level = 30, chance = 0.2},
{level = 40, chance = 0.2},
{level = 50, chance = 0.2},

}
11 mining turtles are currently in use. turtles currently and only mine level 60 (59y foot level) which is not even an option.
system left running for ~1-2 hours plenty of branch mining but no depth

I have found a work around for this issue.
- disk number
it appears that the configuration file stored in disk#\hub_files\config.lua is not read when setting up the mine_levels section.
- Computer number
The config stored in computer#\config.lua is used for the mine_levels section.


Feature/master/systemd compatibility

Ensure => 'absent' for initd softlink on systems with systemd like ubuntu 16.04 etc.

@bjeske Thanks a lot for your contribution. Before I can merge it could you please make sure that all tests passes? And if you could do a rebase so we only have one commit to merge would also be great.

@tobru I've rebased, squashed and added tests for this PR in #94, as I'm looking to move to the upstream for a customer rather than a fork.
@bjeske The commit is still under your name in the new PR, but squashed and tests fixed

Merged in #94


Restructure engine samples into directories

Part of #226

Makes engine samples directories instead of single source files, which allows them to have their own assets/components folders.
Fix cubinhos generate module bug which prevented two targets in the same binary dir from both defining their own components.
Modernize the scene sample:

use lower case component IDs
use component code gen syntax
remove obsolete code
use debug query to print world debug info

Add core::initializeLogger to Cubos constructor to make the game code cleaner.

Further simplification on samples like cars depends on having plugins like windowPlugin and rendererPlugin merged, so it will be left to a future PR.


Software app does not function

you have to install the package gnome-software-packagekit-plugin for it to work

In XTerm I ran:
pacman -S gnome-software-packagekit-plugin
typed Y, installed the package and then rebooted.
It worked.


Adding support for Radial Search in Neural Query

What/Why
What are you proposing?
Adding support for Radial Search in Neural Query
What users have asked for this feature?
Users connecting to Opensearch using Java Client
What problems are you trying to solve?
Currently the Java SDK only takes 'k' as part of Neural Query, whereas from Opensearch 2.15, we can pass min_score / max_distance as part of neural query. But I dont see these options with Java Client.
What is the developer experience going to be?
Devlopers can directly use that feature instead of moving to GenericClient.
Are there any security considerations?
No
Are there any breaking changes to the API
No
What is the user experience going to be?
Developers can build queries with ease.
Are there breaking changes to the User Experience?
No Breaking changes
Why should it be built? Any reason not to?
To make it in sync with latest Radial search features in Opensearch 2.15 features.
What will it take to execute?
Some enhancements to NeuralSearch query builders.
Any remaining open questions?
No

I would start by checking whether this is supported in https://github.com/opensearch-project/opensearch-api-specification (might need changes, and a test). We are working on code generation from spec #366 so this will get covered this way.

Thanks for your reply.
But, Won't NeuralQuery also support this features? Currently, we can set the value of 'k' while forming a neural query.
e.g. For the below query:
"query": {
        "hybrid": {
          "queries": [
            {
              "match": {
                "distilled_content": {
                  "query": "what is the plants game"
                }
              }
            },
            {
              "neural": {
                "article_embedding": {
                  "query_text": "what is the plants game",
                  "model_id": "9KvnbZABfxmyMZwietnR",
                  "k": 5
                }
              }
            }
          ]
        }
      }

We can write using Java client like this:
Query.of(h -> h
				.hybrid(q -> q
				.queries(Arrays.asList(
						new MatchQuery.Builder().field(DISTILLED_CONTENT).query(FieldValue.of(request.getQuery())).build().toQuery(),
						new NeuralQuery.Builder().field(ARTICLE_EMBEDDING).queryText(request.getQuery()).modelId("9KvnbZABfxmyMZwietnR").k(5).build().toQuery()))));

But, if I try to use radial search options of min_score or max_distance, I cant find similar options with Java Client.
e.g.
"query": {
    "neural": {
      "article_embedding": {
        "query_text": "plants vs. zombies",
        "model_id": "9KvnbZABfxmyMZwietnR",
        "min_score": "0.50"
      }
    }
  }

Support for this was added as part of version 2.16.0 of the client


testing non pooled request session

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#1386  👈
#1336 : 4 other dependent PRs (#1343 , #1373 , #1374  and 1 other)
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @jlewitt1 and the rest of your teammates on  Graphite


Application state management - launch

Adds the space-truckers application initialization logic and launch event handling.
Contributes to #32

Changes so far in the commits pushed:

refactoring to extract the planet creation into factory methods
design improvements via refactoring
hiding of html ui on button click
BJS loading scene and screen management

Added a quick-hack fsm that uses function* generators to manage application state
Main menu loads after initialization -- no cutscene yet to play
THEME SONG!!! Plays when the main menu appears

#40 is an experimental branch that uses an NPM package to provide the state machine logic - @RaananW do you have any experience with libraries like this with BJS, and any reason to use or not use them?

Here's a diagram I drew showing the different application versus game states and how they interact. Many elements will have state machines of their own; I've omitted most of them to keep the big picture more clear


User: Add "claim puffies" button for the new user (and handle multiple clicks)

Solved in a bit better way.


Release YANK 0.23.4

Is it safe to merge despite the errors? They don't look related to YANK on a first search through the logs.

Looks fine to me

Thank you!


Ability to define class names

Thanks for the great plugin!
We are using css modules, which basically manages class names to avoid name conflicts. Therefore, it would be useful to be able to define the class names by yourself.
As far as I can see from the source, this is not currently possible?
As an example:
import styles from './styles.module.css';
// ...
stickybits(element, { useStickyClasses: true, classNames: { isStuck: styles.isStuck } });

Will be working on this ASAP. ~Thanks for your note.

@massive done! Sorry for the wait. 👌


Fresh clone make test complains of missing HSpec and QuickCheck

All the files fail to build because it doesn't know how to find the dependencies. Did you mean to put this in a stack project so the dependencies are all in place?
Some error examples.
test/42_maybe_monoids.hs:1:1: error:
    Failed to load interface for ‘Test.Hspec’
    Use -v to see a list of the files searched for.

test/42_maybe_monoids.hs:2:1: error:
    Failed to load interface for ‘Test.QuickCheck’
    Use -v to see a list of the files searched for.

test/02_list_comprehensions.hs:1:1: error:
    Failed to load interface for ‘Test.Hspec’
    Use -v to see a list of the files searched for.

test/02_list_comprehensions.hs:2:1: error:
    Failed to load interface for ‘Test.QuickCheck’
    Use -v to see a list of the files searched for.

Good point. I installed HSpec globally, that way I can run the tests without compilation via runhaskell. That resembles of an interpreted language environment.
I'll look into how to set up that environment.

I had some success at installing Hspec with Stack by adding a cabal file:
name:                katas
version:             <IP_ADDRESS>
cabal-version:       >=1.10

test-suite katas-test
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  build-depends:       base
                     , hspec
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  default-language:    Haskell2010

And an almost empty stack.yaml:
resolver: lts-8.23

packages:
- '.'
extra-deps:

flags: {}

extra-package-dbs: []

And then changing make test to run this:
@$(foreach file,$(FILES), stack runghc $(file);)

It runs the tests, but all at once. I'm not sure this is the expected behaviour, but hopefully that will help at least a little!
I'm still not great at Haskell, so looking forward to working through these exercises!

@cjwebb - would you mind sending your changes in a PR? I'd like to test out your solution. Thanks!

I can do, when it works! I tried reverting and reapplying all my changes, and it doesn't work 😢
I think I must have installed HSpec globally with Stack.
I'll post again if I can get a reproducible change working, but as I said, I'm still not great at Haskell!

I changed the project to use Stack and HSpec. Closing it.


React Frontend

work with the react to create the different pages of the site

Hi, I would like to work on this. May I know if there is predesigned wireframe of the project?

Everyone worked on the frontend at some point and it turned out great!


Create new UI elements to enable must-gather operation on selected cluster

Create new UI elements to enable must-gather operation on selected cluster

First pull request:
https://github.com/RedHatInsights/insights-operator-web-ui/pull/2

Second pull request:
https://github.com/RedHatInsights/insights-operator-web-ui/pull/3


[5.1] Include onceUsingId on Guard contract.

Proposal to include onceUsingId on Guard contract.
Better autocomplete when using IDE.

Please send to 5.2. This is a breaking change.