dropdown widget crashes on RPI 4 (Raspbian lite) when opening

When running the DropDown example (https://kivy.org/doc/master/api-kivy.uix.dropdown.html)
The widget crashes every time I open the menu (I think it happens on dropdown.open)
Python                 3.7
Kivy             2.0.0rc3
Kivy-Garden      0.1.4
EDIT: it only happens when using the RPI official 7 inch touch screen and touching the widget,
not when using a mouse to click on the dropdown

pi@raspberrypi:~ $ ipython test1.py
WidgetException                           Traceback (most recent call last)
~/test1.py in
33 dropdown.bind(on_select=lambda instance, x: setattr(mainbutton, 'text', x))
34
---> 35 runTouchApp(mainbutton)
~/.local/lib/python3.7/site-packages/kivy/base.py in runTouchApp(widget, embedded)
570
571     try:
--> 572         EventLoop.mainloop()
573     finally:
574         stopTouchApp()
~/.local/lib/python3.7/site-packages/kivy/base.py in mainloop(self)
345         while not self.quit and self.status == 'started':
346             try:
--> 347                 self.idle()
348                 if self.window:
349                     self.window.mainloop()
~/.local/lib/python3.7/site-packages/kivy/base.py in idle(self)
388
389         # read and dispatch input from providers
--> 390         self.dispatch_input()
391
392         # flush all the canvas operation
~/.local/lib/python3.7/site-packages/kivy/base.py in dispatch_input(self)
340         post_dispatch_input = self.post_dispatch_input
341         while input_events:
--> 342             post_dispatch_input(*pop(0))
343
344     def mainloop(self):
~/.local/lib/python3.7/site-packages/kivy/base.py in post_dispatch_input(self, etype, me)
306                         wid.dispatch('on_touch_up', me)
307                 else:
--> 308                     wid.dispatch('on_touch_up', me)
309
310             wid._context.pop()
kivy/_event.pyx in kivy._event.EventDispatcher.dispatch()
~/.local/lib/python3.7/site-packages/kivy/uix/behaviors/button.py in on_touch_up(self, touch)
177         else:
178             self._do_release()
--> 179         self.dispatch('on_release')
180         return True
181
kivy/_event.pyx in kivy._event.EventDispatcher.dispatch()
kivy/_event.pyx in kivy._event.EventObservers.dispatch()
kivy/_event.pyx in kivy._event.EventObservers._dispatch()
~/.local/lib/python3.7/site-packages/kivy/uix/dropdown.py in open(self, widget)
252
253         # attach ourself to the main window
--> 254         self._win.add_widget(self)
255
256     def dismiss(self, *largs):
~/.local/lib/python3.7/site-packages/kivy/core/window/init.py in add_widget(self, widget, canvas)
1305             raise WidgetException(
1306                 'Cannot add %r to window, it already has a parent %r' %
-> 1307                 (widget, widget.parent)
1308             )
1309
WidgetException: Cannot add <kivy.uix.dropdown.DropDown object at 0xb3c31cb0> to window, it already has a parent <kivy.core.window.window_sdl2.WindowSDL object at 0xb3caa7b0>

UPDATE
as suggested here:
https://raspberrypi.stackexchange.com/questions/112430/kivy-on-raspberry-pi-returning-double-on-press-events
Disabling mtdev in ~/.kivy/config.ini seems to solve the issue:
mouse = mouse
#mtdev_%(name)s = probesysfs,provider=mtdev
hid_%(name)s = probesysfs,provider=hidinput

I experience the same. however on touch the dropdown seems to appear on touch and disappear on release of the finger. Works fine using mouse.. Any progress on this issue by any chance?


Forms from django-simple-multitenant

Hi.
I use django form and have to filter my foreign key field by myself and it is not safe and secure. Are you going to make base classes and mixins for forms.ModelForm and maybe some solution for Built-in class-based generic views?

Hi @INovozhilov,
thank you for raising this issue. I think it's a great idea.
Could you show me what you do currently in your forms and views? It would help me in order to fix this issue :)

Of course. Now I have very simple app.
Simple class-based view without form:
class SubscriptionUpdateView(UpdateView):
    model = SubscriptionsType
    fields = ['name', 'price',
              'duration', 'visit_limit']

View with form:
class ClientCreateView(CreateView):
    model = Client
    form_class = ClientForm

Form itself:
class ClientForm(forms.ModelForm):
    class Meta:
        model = Client

        fields = ['name', 'address',
                  'birthday', 'phone_number', 'email_address', 'vk_user_id']

All models have FK to other.
Now, my solution is declare a base class for form and use it instead of ModelForm. But I'm newby in Python and Django and I'm not shure in this solution.
class TenantModelForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super(TenantModelForm, self).__init__(*args, **kwargs)

        tenant = get_current_tenant()
        if tenant:
            for field in self.fields.values():
                if isinstance(field, (forms.ModelChoiceField, forms.ModelMultipleChoiceField,)):
                    # Check if the model being used for the ModelChoiceField has a tenant model field
                    if hasattr(field.queryset.model, 'tenant_id'):
                        # Add filter restricting queryset to values to this tenant only.
                        kwargs = {field.queryset.model.tenant_id: tenant}
                        field.queryset = field.queryset.filter(**kwargs)

This problem arises because Django uses ._base_manager for form handling and not the default_manager which multitenant subclasses. What about applying a filter to base_manager?

@rob101 In the Django dos the say "Don’t filter away any results in this type of manager subclass".
Do you think there will be unintended side effects if a filter is applied to base_manager in this case?
https://docs.djangoproject.com/en/3.0/topics/db/managers/#don-t-filter-away-any-results-in-this-type-of-manager-subclass

@christokritz Yes, most likely this would be problematic.
The other issue faced here is that logically any Tenant Model should have null=False applied to the Tenant FK. In the tenant model mixin the save() method is overridden to apply the current tenant, however, because forms call clean() first it will throw a validationError.

@louiseGrandjonc I understand this project is forked from django-simple-multitenant which is no longer available. However, this fork: https://github.com/phugoid/django-simple-multitenant/blob/master/multitenant/forms.py has a solution; is there any reason you chose not to take it across?

Duplicated in #87


Update index.md

More Information section was empty, a link to MDN Docs was added.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Congrats on your first pull request (PR)! 🎉
Thank you for your contribution to the page! 👍
We're happy to accept these changes, and look forward to future contributions. 📝


Implement ver:lt,gt,eq,lte,gte boolean XPath functions for audit rules to enable version-specific tests.

These compare a string with the application or server version and return true or false.

Implemented in ff907f34c61938e153ceed66443cce3bc982032d.


New release?

Any plans to cut a new release?
The example project does not work with the current v0.3.0 release. It does work when run using the main branch and a local_repository.
To reproduce:

pull the repo
swap the local_repository with an http_archive of the latest relase (v0.3.0)
run bazel run //:gazelle and see errors

The first error has to do with the js_package_file directive unable to opeb the file <dir>/package.json :node_modules. I think it is missing the commit parsing the second argument to that directive added since v0.3.0
I tried removing the second argument (:node_modules) from the js_package_file directive, but got another error. web_assets function not found. Maybe for similar reasons, code added since the v0.3.0 release?

Hi @KlotzAndrew, yes we are planning to release 0.4.0 very soon! I'll write a note here when we do

The new release has been published


Better overview/search for metering points

Synopsis
As a datahub user
it is very unintuitive that I need to know an exact metering point gsrn number
in order to use the UI
Description
We can achieve a better user experience by doing one or more of the following things:

We could expand the search functionality to be able to search for multiple things and get a list of search results limited to the metering points for the logged in user (actor).
We could add a metering point list view with all the metering points for a given logged in user (actor), that the user can sort and select one from to view metering point details.

@MadsBloendAndersen I have a suggestion here to improve the user experience in the UI so it gets easier to use it and navigate through metering points. Would you take a look at it when you have the time and then we can discuss it next week?
This is merely an improvement suggestion and it would be great if we could find the time to immplement some of it.

@ZavezX You have a valid point. But I believe that i has been an active choice, to make the search possibilities so limited at the moment. But it will later be expanded to search for other things than metering point ID, such as , address, MP type, settlement method, grid area, parts of a MP id etc.
But for now, we are only building the the absolute minimum to get by.

@frontend-specialisten @dzhavat isn't that right?

Yea that's right @MadsBloendAndersen


Is v0.12.0 ready for use?

Hey @Lusitaniae, I see that v0.12.0 was tagged in Jan but is still marked pre-release. Is that an oversight or is it not ready for use?
I would love to see #143 included in a release as well. I can open a PR for golang 1.20 as well if you are interested

I was having issues with the CI/CD build last time so I didn't mark it as ready
Yes, please do make a PR

Seeing that other exporters are now moving to GH actions I started a PR moving in that direction too
Including upgrade to go 1.19 and other lib upgrades
https://github.com/Lusitaniae/apache_exporter/pull/147
still getting some errors so if you have ideas on how to address these please let me know!

@Lusitaniae Looks like the issue is prometheus-common https://github.com/prometheus/common/blob/main/go.mod#L16 is using the old version which probably conflicts with the new version.
go mod why -m gopkg.in/alecthomas/kingpin.v2
# gopkg.in/alecthomas/kingpin.v2
github.com/Lusitaniae/apache_exporter
github.com/prometheus/common/promlog/flag
gopkg.in/alecthomas/kingpin.v2


Getting Unknown file extension ".ts" error

Steps to reproduce

Create a simple Node.js project
Install Pinion as a development dependency
Install Typescript as a development dependency
Use the basic example given in the quick start guide to create a code generator
Use the command npx pinion path/to/file.ts to execute the generator created in the previous section

You will get the error below:
Oh no! Something went wrong: Unknown file extension ".ts" for path/to/file.ts

It appears to work fine when I rewrite the generator in JavaScript.
I tried debugging and the error seems to occur in the file below.
https://github.com/featherscloud/pinion/blob/main/packages/pinion/src/utils.ts#L36
Looks like the tsx module is being imported with .ts files but I'm not sure how importing the module is supposed to help.
https://github.com/featherscloud/pinion/blob/main/packages/pinion/src/utils.ts#L33
Apparently, importing a .ts file as in the example below will throw the "Unknown file extension" error. It only works when you use tsx  from the command line like so: npx tsx index.ts.
import { dirname, join } from "path";
import { fileURLToPath } from "url";

const __dirname = dirname(fileURLToPath(import.meta.url));

const fileName = join(__dirname, "test.ts");

console.log(fileName);

import(fileName)
  .then((response) => {
    console.log(response);
  })
  .catch((reason) => {
    console.error(reason);
  });

Expected behavior
The generator should be able to create a readme.md file as described in the docs.
Actual behavior
You will get the error below instead.
Oh no! Something went wrong: Unknown file extension ".ts" for path/to/file.ts

System configuration
I've set the package.josn's type field to module and installed Typescript as a development dependency.
Module versions (especially the part that's not working):
@featherscloud/pinion version 0.5.3
NodeJS version:
18.15.0
Operating System:
Pop!_OS
Browser Version:
N/A
React Native Version:
N/A
Module Loader:
ECMAScript module loader

Importing the TSX module should initialise the TypeScript module loader. I just double checked with the following package.json:
{
  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "type": "module",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "@featherscloud/pinion": "^0.5.3"
  },
  "devDependencies": {
    "typescript": "^5.4.4"
  }
}

On Node v20.10.0 on Mac OS and it appears to run as expected if I put the example file in generate/readme.ts and then run npx pinion generate/readme.ts. The CI tests are running on the latest Ubuntu (with Node 18 and 20) testing the same thing are passing, too. Do you have a repository to reproduce the error?

Thanks for the quick response @daffl.
I tried again with Node v20.12.1 and it works. The issue is probably with versions of Node below 20. It would be useful to include the required Node version in the docs.

You can check out using this repo.
https://github.com/nibble0101/pinion-demo

You're right, I can confirm this. Interesting that CI is passing with Node 18. I'll update the requirements to Node 20

Alright, I updated the dependency requirement so it should throw an error (or at least warning) if you are using an older version. Thank you for reporting this.


Bump version in Dockerfile.template

Also, deleted the travis.yml file because I don't think we are using it. Let me know if otherwise.
Change-type: patch
Signed-off-by: Vipul Gupta (@vipulgupta2048) <EMAIL_ADDRESS>

Wanted to highlight the importance of this pull request with a bump; by default we are all running out of date WiFi-Connect.


Introduction of .integerValue

This PR renames .numberValue to .doubleValue and introduces .integerValue for native Int storing. My rationale is that using Double for both integer numbers and float numbers is inefficient.
This PR is breaking so it is scoped for the next release.

LGTM. should we create a branch for 0.6? If we merge this to master and find a bug in 0.5 we would have to jump through some hoops to fix it.

@paulofaria we can just create branch from tag if needed, it’s really easy. Just checkout -b zewo0.5 0.5.0 — that’s it.

Cool. Can you fix the styling issues, please?

We're using zewodev with master. This will affect other repos right? Those should be updated as well.

that's why I think a branch for 0.6 might be good. I don't know. What you think?

@paulofaria yeah, maybe you’re right here


Issue with Use with Microsoft Azure AD wiki page

Hi @Captain-P-Goldfish
The page "Use with Microsoft Azure AD": https://github.com/Captain-P-Goldfish/scim-for-keycloak/wiki/Use-with-Microsoft-Azure-AD
PS script seems off
"https://$server/auth/realms/$realm/protocol/openid-connect/token"
But should be without auth "https://$server/realms/$realm/protocol/openid-connect/token"
Also would be nice to have an updated screenshot :-)
also here a cURL bash script to get a access_token
curl \
  -d "client_id=scim-from-azure-ad" \
  -d "client_secret=Q5-----removed---------------Huh" \
  -d "grant_type=client_credentials" \
  "https://kc-server.example.com/realms/master/protocol/openid-connect/token" | jq .

fyi: expires_in         : 36000 even tho I have set to 399 days.

Yeah the description is old.
Unfortunately I cannot provide an updated Screenshot since I have no access to a Microsoft Azure AD system myself.
The short expiration time of your token is due to the maximum lifetime settings in your realm.

The Azure screenshot are still good. The KC screenshot and the powershell script need update.
Regarding expiration time:  seems that the client setting: Access Token Lifespan can't be larger then the realm setting: SSO Session Max


[java] Use HTTP interface for parametric test

Motivation
using HTTP instead of gRPC should remove most of the flakiness issues
Changes

Workflow

⚠ Create your PR as draft ⚠
Work on you PR until the CI passes (if something not related to your task is failing, you can ignore it)
Mark it as ready for review

Test logic is modified? -> Get a review from RFC owner. We're working on refining the codeowners file quickly.
Framework is modified, or non obvious usage of it -> get a review from R&P team

:rocket: Once your PR is reviewed, you can merge it!
🛟 #apm-shared-testing 🛟
Reviewer checklist

[x] If PR title starts with [<language>], double-check that only <language> is impacted by the change
[x] No system-tests internal is modified. Otherwise, I have the approval from R&P team
[x] CI is green, or failing jobs are not related to this change (and you are 100% sure about this statement)
[x] A docker base image is modified?

[x] the relevant build-XXX-image label is present

[x] A scenario is added (or removed)?

[x] Get a review from R&P team

@PerfectSlayer is it ok for you? if yes, I'll merge it with my admin powers.

Please all-mighty @cbeauchesne 🙇


Release for Java agent fix

I'd love to see https://github.com/escapestudios-cookbooks/newrelic/commit/bc2d762f9968d845a6b7bb72487448da7eb1a82c in a release on Supermarket, if that's possible. Thank you!

Done - thanks for chasing this one up @martinb3!
Kind regards,
David


Math Shapes

I want to add something for a polar cycloid (like a spirograph) and something like a cardoid (or some other heart shape).
http://mathworld.wolfram.com/Spirograph.html
http://mathworld.wolfram.com/HeartCurve.html

http://www.mathematische-basteleien.de/spirographs.htm
https://www.desmos.com/calculator/qf1zfdjewu

https://youtu.be/fTs4xNTNAPY


Add SingleQuery method，add IsNullOrEmpty in stringquery,fix #811

Now we can get single column query with SingleQuery(...) and SingleQueryAsync(...).
Sometimes,I get the list with string.IsNullOrEmpty,but the string query didn't support,so I add this.
For  #811,I just add a  null judgement.

I manually merged this and renamed the function QueryScalars. Thank you!


Hybrid Container Service Content Validation Issue for github.io website

Section link:

https://azuresdkdocs.blob.core.windows.net/$web/python/azure-mgmt-hybridcontainerservice/1.0.0/index.html

Reason: Format validation issue: 1.0.0 and Microsoft Azure SDK for Python text overlapping.

Section link:

https://azuresdkdocs.blob.core.windows.net/$web/python/azure-mgmt-hybridcontainerservice/1.0.0/index.html

Reason:
Link validation Issue: Broken links.
Repro Steps:
When you open link and click the Module Index of the current page, it cannot display the correct page. The error message is as shown below:

@rohit-ganguly and @lmazuel for notification.

Close this issue as we'll put it into a summarzied one.


feat(operator): add ignoreElements operator

Add ignoreElements operator present in RxJS3/4.

merged with fe1a952
Thanks so much, @jinroh!


Parallel optimization as in original spearmint paper?

Does scikit-optimize do parallel optimization as in the spearmint paper if not, would you be interested in it?
I have a student that wants to work on auto-ml over the summer and we're brainstorming ideas. Pointers welcome.

Currently "constant liar" parallelization approach is used, see eg here (search for 'constant liar'), which is a bit different from the one in the reference. We used this approach due to its simplicity and as it can work with any of the surrogate models used to model the objective and uncertainty in skopt. We also currently support only batch parallelism.
From my point of view, having a more advanced parallel optimization would be great, assuming it  outperforms current approach. I did not check the literature on this tbh, but for example approach in the referenced paper seems to eventually outperform constant liar. So to summarize yes on my side I think it would be great to have more better parallelization :)

P.S. some other ideas that might also be interesting for brainstorming: introduce knowledge transfer, which can be used eg to speed up search for good machine learning parameters, as in here for example. Also scalable black box optimization with neural networks seems pretty cool, maybe something that can be used for some wild tasks like joint selection of features, neural network architecture and learning parameters.  These are some things I would also be very happy personally to see in scikit-optimize :)

I think it would be a nice addition. I'd also be OK with being a mentor to help them find their way around the code base.

(#352 is another issue on a method of parallel optimisation (qEI))

@amueller, I am a student researcher at Oak Ridge National Lab and have been working on distributing the optimization methods in scikit-optimize on our clusters. I have a working approach that distributes smaller subregions of the hyperparameter search space for the sequential models to search over.
https://github.com/scikit-optimize/scikit-optimize/issues/401 is related to that project where I am looking for the best way to store the many results of all of the distributed runs.
I would be more than happy to talk with you more about what I have been working on if you are interested.

Both the strategy proposed in the paper and the one currently implemented are sequential in nature which means at least API wise, it should not be too difficult to integrate it. Here are the differences
Constant-liar.

Once you have the first N points, you use the SMBO loop to get a suggestion, X_{N+1}
To get X_{N+2}, you lie about the value at X_{N+1} to be a lie so that now you have {N+1} points and continue from 1.

We know it sucks, but as @iaroslav-ai mentions we took it as an opportunity to get the API right.
Strategy proposed in the paper:

To get X_{N+2}, you sample y number of values from the posterior P(Y | X_{N+1}, ((X_1, y_1), .... (X_N, y_N)). Once you have these samples, you can compute the expected acquisition function using MC approximations and then return X_{N+2} that maximizes this.

Disadvantages:

For each of the y values sampled from the posterior, you would have to fit a new GP and compute the acquisition function value at these points which is expensive.
How to optimize? I would assume they would use a fine-grid to optimize the expected acquisition function and not use any numerical-gradient based techniques since this function itself is not too cheap.

@Young-Todd Your approach is definitely interesting, feel free to open a new issue or a pull request in the form of a notebook if you want to demonstrate how to use scikit-optimize to distribute the search-space among different Optimizer or even more directly into the Optimizer API if you feel that is possible.
This is just so that the attention does not get distributed (no pun intended) :-)

@MechCoder (you seem to know these things) How does q-EI (see for example https://arxiv.org/pdf/1602.05149.pdf but don't think this is the original qEI paper) fit into these different methods?

q-EI is not sequential in nature. It is an extension of EI to handle multiple points.
EI(x) = - E(min(f(x) - f*, 0)), it gives a reward proportional to how much f(x) is smaller than the previous minimum f*
qEI(x1, x2, ..... xN) = -E(min(t(x1, x2, .. xN) - f*, 0)) where t(x1, x2, .. xN) equals min(f(x1), f(x2) ... f(xN)), it gives a reward proportional to how much the minimum of the N points is smaller than the previous minimum f*
You can obtain closed-form solution for EI and thus have access to gradients while in q-EI you can only make MC approximations from the joint posterior distribution of P(f(x1), f(x2) .. f(xN))

So should we start with qEl or the Spearmint method? You say it's sequential in nature. What do you mean by that? Is there any comparison of this with qEl?

I have no opinion on qEI vs spearmint method, just wanted mentioned it.

By sequential, I mean that while suggesting n points, in a sequential method for suggesting the second point, you would need the first point, (for example, the algorithm currently implemented)
For q-EI, you generate the n points at one go. This is because this is a special acquisition function that takes n number of points as arguments and returns 1 value.

Well in the spearmint method you generate the points one-by-one from what I remember, but you don't need the actual values, because you integrate them out, right?

I think what @MechCoder was trying to say is that because acquisition is optimized over a single point in Spearmint method, it is easier to implement with current API.
I also think so, thus my suggestion would be to start with Spearmint method, for which no optimization over multiple points necessary. I see it as an extension of Constant Liar strategy, where instead of a single lie, multiple lies are generated (ideally all possible, but this is not feasible of course) and then outputs of different surrogates are averaged. So it could work like this.

Generate m combinations of objective assignment to n unlabeled points, using eg mean and std of surrogate fitted on the "labeled" points
Use only these m instances of (y_1, y_2, ...) for approximation of integral during the optimization of acquisition function (it is fixed during generation of new point). Calculate probabilities of different (y_1, y_2, ...) using the mean and std obtained from "supervised" surrogate.

Then a Constant Liar of some flavor is just a special instance of above when m = 1.

@betatim Hi Tim, I'm @amueller 's student working on this project. Currently moving on to study skopt's code. I would update my progress in this post.

Welcome 👋
I find a good way to get into the code base is to solve some of the issues marked as "easy" before starting on something big. Also open a PR as soon as possible instead of waiting till you think it is perfect. Having small chunks of code to look at and see how it grows makes it much easier to review than one 200 line diff :)

Thanks, Tim. Gotcha! I'll try as you said.

I'm having some doubts on where to add the sampling parameters. Shall I update the Optimizer class  acq_optimizer_kwargs with two more sampling-related parameters? (As demonstrated in this commit.) What's the best position to add this?
Also should I change the name of sampling (as the original sampling is point wise max likelihood sampling), or I add mcmc_slice as a choice under sampling?


try new key for pushing

Since I added branch protection the zotero bot can no longer push to main.  This should fix this according to documentation here: https://github.com/ad-m/github-push-action

Replaced by #255 with the branch on the upstream


update Spanish subdivision flags from upstream

This PR adds the Spanish subdivision flags from the upstream fonttools/region-flags repo, which are extracted from Wikipedia.
I checked the correctness of these flags manually.

@googlebot I signed it!

Dropped in favor of an in improved PR.


Convert Yahoo error message from XML to JSON

... for example using module xml2js (https://www.npmjs.com/package/xml2js).

We're deprecating this project so the issue won't be fixed.


Fix flag name for Azure CLI credential

Description
Fix flag name for Azure CLI credential
Issue reference
We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.
Please reference the issue this PR will close: #196
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[x] Code compiles correctly
[ ] Created/updated tests
[x] Unit tests passing

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (5614b07) 48.44% compared to head (9d65fba) 48.44%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #197   +/-   ##
=======================================
  Coverage   48.44%   48.44%
=======================================
  Files          72       72
  Lines        3625     3625
=======================================
  Hits         1756     1756
  Misses       1854     1854
  Partials       15       15

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


Remove: GitHub.GitHubDesktop.Beta version 2.8.1-beta1

## .\Tools\YamlCreate.ps1 -SkipPRCheck -Mode 5 -PackageIdentifier GitHub.GitHubDesktop.Beta -PackageVersion 2.8.1-beta1

[X] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.0 schema?

Microsoft Reviewers: Open in CodeFlow

/azp run


route() helper takes last domain in central domains list (config/tenancy.php)

Bug description
The problem seems present if you have more than one central domain in domains list (config/tenenacy.php key central_domains), and try to use route() helper. The helper return the LAST domain in domains list with the provided URI.
Steps to reproduce
In config/tenancy.php add more than one domain:
'central_domains' => [
        'first.domain.local',
        'second.domain.local',
],

In routes/web.php add some routes with name:
Route::get('/', function () {
    return view('central.homepage');
});

Route::get('/home', [HomeController::class, 'index'])->name('home');

Route::view('about', 'about')->name('about');

In HomeController@index call dd(route('home')).
Connect to the application using http://first.domain.local/home and the result will be http://second.domain.local/home
Expected behavior
The expected behavior should be the same domain calling the application, so based on the example: http://first.domain.local/home
Laravel version
8.83.15
stancl/tenancy version
3.5.7

Right now I've solved using route('home', [], false) and this will generate a /home link that work in my blade file.
But this remain an issue.

How exactly are you registering the routes? It feels like you're looping through the central domains and registering them on all domains so it picks the last one for the domain() scope.

See the note here https://tenancyforlaravel.com/docs/v3/routes/#central-routes


Add Polychrom

@jake-figma, hi! Could you please review this pull request?

Hey @mikhin - would love to shout you out on LinkedIn or Twitter. If you have either of those accounts and would like to be shouted out - let me know!

@akbarbmirza, aww, thank you so much for your support — it's much appreciated!
We have slowly started to familiarize the audience with Polychrom and the APCA methodology.
For example, Roman, the author of the idea and design of Polychrom, wrote a thread about updates in the latest version of the plugin:

On Twitter - https://x.com/romanshamin_en/status/1709674967007195642?s=20
On LinkedIn - https://www.linkedin.com/posts/roman-shamin_polychrom-figma-community-activity-7115449344345972736-K7iU

So, it is possible to use these posts :)

@akbarbmirza, btw, I wrote a thread on what's going on under the hood of the Polychrom frontend:

https://twitter.com/mikhin97959/status/1711342704406172109
https://www.linkedin.com/pulse/frontend-polychrom-figma-plugin-element-background-search-yuri-mikhin/

If you find this interesting, I would be very honored if you would share it :)


Won't compile: libsmartcalc doesn't exist

I tried to test this project but it looks like the dependancy libsmartcalc no longer exists, this is the output I get:
❯ cargo install --path .
  Installing smartcalc-tui v1.0.1 (/home/user/projects/smartcalc-tui)
    Updating crates.io index
    Updating git repository `https://github.com/erhanbaris/smartcalc`
error: failed to compile `smartcalc-tui v1.0.1 (/home/user/projects/smartcalc-tui)`, intermediate artifacts can be found at `/home/user/projects/smartcalc-tui/target`

Caused by:
  no matching package found
  searched package name: `libsmartcalc`
  perhaps you meant:      smartcalc
  location searched: https://github.com/erhanbaris/smartcalc
  required by package `smartcalc-tui v1.0.1 (/home/user/projects/smartcalc-tui)`

replacing libsmartcalc with smartcalc produces the following errors:
❯ cargo install --path .
  Installing smartcalc-tui v1.0.1 (/home/user/projects/smartcalc-tui)
    Updating crates.io index
    Updating git repository `https://github.com/erhanbaris/smartcalc`
   Compiling smartcalc v1.0.4 (https://github.com/erhanbaris/smartcalc#507ed954)
   Compiling smartcalc-tui v1.0.1 (/home/user/projects/smartcalc-tui)
error[E0432]: unresolved import `smartcalc::executer`
  --> src/lib.rs:55:28
   |
55 |             use smartcalc::executer::initialize;
   |                            ^^^^^^^^ could not find `executer` in `smartcalc`

error[E0603]: module `app` is private
  --> src/lib.rs:54:28
   |
54 |             use smartcalc::app::{ExecuteLine, ExecuteLineResult, SmartCalc};
   |                            ^^^ private module
   |
note: the module `app` is defined here
  --> /home/user/.cargo/git/checkouts/smartcalc-d93f0c50fe48d91c/507ed95/src/lib.rs:26:1
   |
26 | pub(crate) mod app;
   | ^^^^^^^^^^^^^^^^^^^

warning: ignoring -C extra-filename flag due to -o flag

Some errors have detailed explanations: E0432, E0603.
For more information about an error, try `rustc --explain E0432`.
warning: `smartcalc-tui` (lib) generated 1 warning
error: failed to compile `smartcalc-tui v1.0.1 (/home/user/projects/smartcalc-tui)`, intermediate artifacts can be found at `/home/user/projects/smartcalc-tui/target`

Caused by:
  could not compile `smartcalc-tui` due to 2 previous errors; 1 warning emitted

Thanks for catching this! Looks like the upstream project has been reorganized - I'll get on a fix now.


Fix bpmodloader conversion error

Description
See commit message: 79b328f47196c9092c07413b6a8454f5ba01f4ec
Fixes #396 and #365
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Is/requires documentation update
[ ] Other... Please describe:

How Has This Been Tested?
See commit message: 79b328f47196c9092c07413b6a8454f5ba01f4ec
Checklist

[x] I have performed a self-review of my own code.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] I have made corresponding changes to the documentation.
[x] I have added the necessary description of this PR to the changelog, and I have followed the same format as other entries.
[x] Any dependent changes have been merged and published in downstream modules.

Screenshots (if appropriate)
Additional context
Add any other context about the pull request here.

Note to maintainers (particularly @Buckminsterfullerene02): The checklist in the pull request template doesn't mention whether all checks are required and some of the checks don't suggest that you should check them if they aren't applicable.
I have left two boxes unchecked as I found those not to be applicable to this pull request.
I checked the dependent changes box because the wording implies that I can can do so even if it's not applicable to this pull request.

Hmm yeah I think the PR template is a bit OTT, I should trim it down to be something less "filtered" i.e. removing checklists and making sure people have made a commit updating changelog/docs if required


Updated upstream

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

no CLA needed here, these are upstream changes


bookened token

Related Issue
Supports #95
What does this PR do?
bookend token
Description of Changes
bookend token
What gif most accurately describes how I feel towards this PR?

Why was this moved to "in progress?" Doesn't a pull request waiting for code review belong in the review/QA column?

Why was this moved to "in progress?" Doesn't a pull request waiting for code review belong in the review/QA column?

Not sure. I don't recall when/why this happened.


Bug #2 -- sprite goes off page.

Describe the bug
When I press the left arrow the player sprite will go off the page but there are no scrollbars.
To Reproduce
Steps to reproduce the behavior:

Go to '<IP_ADDRESS>/object/game.html'
Click on the left arrow key
See error

Expected behavior
I expected it to stop at the edge of the page because of this code in the Player class's move method:
if ($('.player').css('left') == '0%') {
    $('.player').css('left', '50%');
    $('.player').css('top', '0%');
    console.log('stopped');
} else if ($('.player').css('right') == '0%') {
    $('.player').css('left', '50%');
    $('.player').css('left', '0%');
    console.log('stopped');
}

It doesn't even show the stopped log in the console.
/cc @elijahparker

Now there is a error message: [Violation] 'keydown' handler took 182ms. It is classified as Verbose.

@elijahparker fixed it.


Allow prop to force all uppercase

Hello, I'd like to see a way to be able to force all the characters to appear as uppercase. I have a PR ready that adds a new prop called 'forceUppercase: boolean' that just changes the input on handleOnChange to be uppercase. Do you find this useful? I would need it for my application.

hi @bill-vatomic , if you found a use-case for that, i don't see any reasons why not to have this functionality.
please make sure tests are passing and your PR is linked to this issue.

Hello! I've added a testcase for the forceUppercase prop. The PR for this issue is here: #46
The motive for this is my application which generates codes that are always uppercase. This allows the user to type either case and still match their invite code.

Hi. Has this been added yet? I tried it out, but it didn't seem to work.
<ReactCodeInput                   type='text'                   fields={6}                   autoFocus={false}                   forceUppercase={true}                 />

https://github.com/40818419/react-code-input/blob/master/src/ReactCodeInput.js
here you can find your code, i would suggest you add some unit tests

Didn't work. I even tried changing the initial value from false to true. It's cool. Thanks anyway

There actually is a unit test for it, but I will take a look at this when I wake up tomorrow morning.

Did the build for this PR fail or something? I checked again, and this works as expected when I test on the dev-page using 'yarn start'. You can checkout my code and run the dev server, and see it working.

@Samesh @bill-vatomic  i added "forceUpdate" story.
https://40818419.github.io/react-code-input/?selectedKind=ReactCodeInput&selectedStory=Force Uppercase
PS: if you look at action logger, values are also uppercased.
i think we can close this issue

Would be helpful if you updated API on your README to show forceUppercase prop! I found a solution here but would have spent way less time if the info was at the right place.


Protolathes show two servers with single ID in Research Server Selection

Description
Protolathes show two servers with single ID in Research Server Selection. Something is borked.
Reproduction
Use protolathe, click the button.
Screenshots

Something something lathe code stinky and needs a refactor

Reproduced in local environment, figured out the issue, will create PR for it


can you please provide the pretrained model ??

Hello, good job for PoseFeat. My work requires descriptor networks. Can you please provide the pre-trained model, thanks!

Sorry，we have no plan to release the model weights now, and we may release the model after the journal extension has been published.


Functions declared in ternary statement don't work properly

[x] I have checked issues with bug label and found no duplicates

Expected Behavior
When defining a function in a ternary statement, I would expect the resulting documentation to show that there is a function. For example
export const minOrMax = Math.random() < 0.5
  ? (a: number, b: number) : number => Math.max(a, b)
  : (a: number, b: number) : number => Math.min(a, b);

minOrMax here can be multiple things, but they are both functions and they both have the same signature, I would expect the docs to show a function called minOrMax with the signature (a: number, b: number) : number.
Actual Behavior
The actual output shows the defined function as a variable with the whole source of the ternary as its "value". For an example, here was a function I tried to make to shim Object.values() in this way.

The source for the above is:
export const objectValues: {<T>(object: Object<T>): T[]} = Object.values
	? <T>(object: Object<T>): T[] => Object.values(object)
	: <T>(object: Object<T>): T[] => {
		const keys = Object.keys(object);
		const values = new Array(keys.length);

		for (let i = 0; i < keys.length; i++) {
			values[i] = object[keys[i]];
		}

		return values;
	};

In 0.20 the source under "expected behavior" produces:

The second example, modified slightly since I don't have an Object<T> type:
export const objectValues: {<T>(object: Object<T>): T[]} = Object.values
	? <T>(object: Object<T>): T[] => Object.values(object)
	: <T>(object: Object<T>): T[] => {
		const keys = Object.keys(object);
		const values = new Array(keys.length);

		for (let i = 0; i < keys.length; i++) {
			values[i] = object[keys[i]];
		}

		return values;
	};

Renders as:


[5.8] Make Eloquent::newCollection a static method

I stumbled upon #6476 when wondering myself why this wasn't a static method.
This is not a breaking change because static methods may also be called on instances.
Resubmitting for 5.8 per #27491
Update: @GrahamCampbell comment on the PR for 5.7 makes a good point that if this method has been overridden, it would be a breaking change.

Breaking change for all the people overriding it and also it could need to be static if people generate different collections based on some internal state of the model they are calling it on.


Xbox1

I think this game is amazing but my only issue is that it is not on Xbox one and I think you could make a lot of money💸💸by putting it on consoles / Xbox 1 plz respond and tell me if you like my idea/issue at<EMAIL_ADDRESS>

Duplicate of issue #1


Add CLI

nice! thank you!

Thank you @jonschlinkert, great work. I've just used it on smarbanner.js.


memoized resolve

Summary
Memoize isFile() within default_resolver. Add memoized isDirectory(). Check that a directory exists before attempting to resolve files within that directory.

This provides a huge performance boost to module resolution.
Test plan

Oh this is super awesome, I'm so glad you are working on this. I'm however afraid that this will not work for things like Jest's watch mode because files may change over time of Jest's usage and the resolution algorithm should work with what is currently on the system, not what used to be there in the past.
To solve this, the Resolver class is able to be instantiated. We can merge the resolution logic into the base class and use a cache within there, and each test will receive it's own copy of the resolver, which will be recreated for individual test runs.
This will not share the resolution logic between two individual test files, so won't be as fast as it could get, but within the dependency graph of a single test, the performance optimization should still apply. We can also change this to memoize for the duration of a single test run, and that would be fine with me, but there is no concept in the worker process that manages the lifetime of a full test run, so we'd have to introduce those hooks somewhere in the workers, which is hard because they are supposed to be stateless. For now, I'd encourage moving all the memoization logic into the Resolver class. Does that make sense to you?

Moving discussion back to #2925, since this will take several stages and multiple PRs. I'm not familiar enough with Jest's codebase to see an easy path beyond the memoization within a single test which you describe. Unfortunately, I don't think that alone will provide enough of a performance boost for Jest to be usable with our codebase.


Refactoring from fetch to XMLHttpRequest should not break consumers of my library

This was discussed at some length on Matrix starting around here, but I want to capture it on this tracker so it doesn't get lost.
I think that it is not reasonable to ask every user, even those who are not using async contexts themselves, to know that Promise.prototype.then is a fundamentally different kind of thing than other mechanisms of scheduling callbacks, like XMLHttpRequest.prototype.onload.
That is, if I am not myself using async contexts, I absolutely should not have to know that a normally transparent refactoring like going from
function makeRequestThen(callback) {
  fetch(url).then(x => x.text()).then(result => callback(null, result), err => callback(err))
}

to
function makeRequestThen(callback) {
  const req = new XMLHttpRequest();
  req.addEventListener('load', () => callback(null, req.responseText));
  req.addEventListener('error', err => callback(err));
  req.open('GET', url);
  req.send();
}

is in fact a breaking change, because the former preserves the context for callback and the latter does not.
So either Promise.prototype.then should not automatically wrap its argument in the current context, or we should require of hosts that any mechanism for scheduling callbacks which might run in a later tick or turn should automatically wrap their argument in the current context.
(Or I'm misunderstanding how this whole proposal works, which is still possible.)

I believe the Web Platform should perform a wrap in the latter case as well. We'll need to develop a much more detailed model for this before Stage 3.

Note in the particular case: fetch(url).then(x => x.text()).then(result => callback(null, result), err => callback(err)) has different semantics than the onload/onerror above. Namely if callback throws.

or we should require of hosts that any mechanism for scheduling callbacks which might run in a later tick or turn should automatically wrap their argument in the current context.

That sounds very reasonable.

has different semantics than the onload/onerror above. Namely if callback throws

Yeah, it was just meant to be an off-the-cuff example; I didn't try to make it actually equivalent. That said, what's the difference you're pointing at? Only the fetch one will trigger the unhandled rejection handler, I guess; is there something else I'm missing?

Only the fetch one will trigger the unhandled rejection handler, as opposed to the onerror handler, I guess; is there something else I'm missing?

Basically you got the important one:

The fetch throwing rejects a promise so it will trigger an unhandled rejection if "callback" throws whereas the onload will trigger a global error event (in browsers).

There are a few others like:

If you returns a rejected promise from the fetch example where the error came from might surprise you, but in general "return value".
The this value being the XHR object vs. undefined.

But the important point was that we need a mechanism for hosts to specify what context a continuation runs in.

Related: https://github.com/tc39/proposal-async-context/issues/19


Add mac 🖥, tv 📺 & watch ⌚ support for Carthage

This PR builds on my previous contributions and adds cross platform Carthage support to the project.
I've followed the convention used by RxOptional, Actions and other RxSwiftCommunity projects by having a scheme and target per platform.  As annoying as it is adding any new source files to all 4 targets, it seems like it's not possible to have a single target and include all of the flavours of RxSwift - however, I'd be more than happy to be corrected.
Finally, I've removed _Pods.xcodeproj as it's a dead symbolic link.

@simonrice I am testing this locally we'll merge afterwords.

@bobgodwinx take all the time you need ⏳

@simonrice would recommend this approach for this pr


Improve UX and UI design for Jarbas

What is the problem?
The website has some rough edges in regards to usability and layout. I outlined some here:

How can this be addressed?
I propose a first "bugfixing" approach to fix padding, whitespace and inconsistencies to almost all of the "in your face" problems. However, some others will have to be rethought:

Adding a simpler searching mechanism, search by text
Move the current search to an advanced search page
Have a page for individual results and collective search results to remove the unneeded whitespace cluttering individual pages
Adding helpful explanations to uncommon financial terms

Who could help with this issue?
I am willing to do it. Someone which is more experienced with the searching capabilities (such as full text search, etc) could help with the available possibilities for a simpler searching UI, autocompleting identifiers and other kinds of labeling.
Labels
[enhancement] [documentation]

Awesome, @fer22f! Thanks for that. Loved it ❤
There are also great ideas in this archived issue: https://github.com/okfn-brasil/jarbas/issues/61 Who ever is willing to take this improvements on, I do recommend following this old thread ; )

Someone which is more experienced with the searching capabilities (such as full text search, etc) could help with the available possibilities for a simpler searching UI, autocompleting identifiers and other kinds of labeling.

Let me know how to help you. I can provide the back-end for features not covered by the current API.

What do you think about filter tabs?

In the coming week or so, I will request to merge this first set of fixes (without adding the more complicated stuff like adding new views), it basically works the same way as before, it's just a better UI.

I like it! Incremental enhancements instead of throwing it all away and starting over sometimes is the way to go : )


xcode_backend_test.dart will fail if flutter precache hasn't run.

This relies on the real cache containing iOS artifacts for the test case "Xcode backend fails for on unsupported configuration combinations".

We should remove these entirely if we're going to disable them, but it probably makes sense to keep them around until we get rid of or at least greatly pare down xcode_backend.sh

I believe this test is actually testing bad real behavior, I think it also fails if a customer opened ios/Runner.xcworkspace in Xcode without caching the ios artifacts.

Right, the problem is the xcode backend script is copying out of the cache - really the tool should be doing this so that we can validate and run precache if need be.
If we fix that, we could also fix the test


Grav Plugin change of ownership request...

A change of ownership has been request for this plugin here:  https://github.com/getgrav/grav/issues/2728
Please let me know if you are going to continue to support this plugin, or if we should switch to the forked version.
Cheers!
Andy

Ok, due to lack of response, i'm going to switch GPM to the fork.


fix: updating CNI to v1.5.10 for dropgz

Reason for Change:
Updating to the latest CNI so we can build a new version of dropgz
Issue Fixed:

Requirements:

[ ] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] relevant PR labels added

Notes:

Bypassing the checks as this only updates CNI version in dropgz that is currently used by dualstack only. This will allow us to unblock all PRs which are blocked due to dualstack pipeline failure


Update Godel to 2.16.0

Resolves #131
Note that if the repository was cloned previous to this commit, the end user must upgrade godel using the update command.
./godelw update

Codecov Report

Merging #148 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #148   +/-   ##
=======================================
  Coverage   76.41%   76.41%
=======================================
  Files          17       17
  Lines         564      564
=======================================
  Hits          431      431
  Misses        133      133

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 e231592...2f89337. Read the comment docs.


pod: add TCP/TLS e2e benchmark

Why

Task of #517
Checklist

[x] I have made corresponding changes to the tests
[ ] ~I have made corresponding changes to the documentation~
[x] I have run the app using my feature and ensured that no functionality is broken

Code merged in https://github.com/fleek-network/ursa/pull/519.


putListingsItem example, to create/update offer for an ASIN

I am trying to use the putListingsItem operation which was added by @altruer in #64.
const res = await sellingPartner.callAPI({
  operation: "putListingsItem",
  endpoint: "listingsItems",
  path: {
    sellerId: process.env.AMAZON_SELLER_ID,
    sku: PRODUCT_SKU
  },
  query: {
    marketplaceIds: [MARKETPLACE_ID],
  },
  body: {
    productType: "COMPUTER_DRIVE_OR_STORAGE",
    requirements: "LISTING_OFFER_ONLY",
    attributes: {
      "condition_type": [{
        "value": "new_new",
        "marketplace_id": MARKETPLACE_ID
      }],
      "external_product_id": [{
        "value": "B07FP5L3ZQ", // < This is the ASIN
        "marketplace_id": MARKETPLACE_ID
      }],
      "external_product_type": [{
        "value": "ASIN",
        "marketplace_id": MARKETPLACE_ID
      }],
    }
  }
})

The error I am getting is:
...
{ message: 'The attributes are invalid.',
severity: 'ERROR',
attributeName: 'item_sku' }
...

Any help on this would be highly appreciated.

Don't see any docs about how attributes should look like
But in attributes Amazon returns via GET request there is no item_sku field

I just thought I should follow the same fields like in the spreadsheet used to upload the data to Amazon.
Indeed, the docs are very unclear...
Any ideas whom we should ask for docs/solution, @altruer?
I have been trying to contact Amazon support and they only sent me canned/generated responses which is frustrating... 😭

Let's wait for their answers, we can try to check different body alternatives, but it sound like reverse engineering😀

@amz-tools Any help on this would be really welcome... It has been a couple of weeks/months since I am have been struggling with this.

@IonicaBizau, @altruer
Haven't worked with it yet, but some things that might be helpful if you haven't already checked that. First of all there's a Listings Items Guide that might be helpful.
Then there's the productTypeDefinitions endpoint, which will return a link to the schema which is quite extensive, but should be very helpful in finding the right structure to pass.
In order to get the schema link for the example above you would call it like this:
let res = await sellingPartner.callAPI({
  operation:'productTypeDefinitions.getDefinitionsProductType',
  path:{
    productType:'COMPUTER_DRIVE_OR_STORAGE'
  },
  query:{
    sellerId:process.env.AMAZON_SELLER_ID,
    requirements:'LISTING_OFFER_ONLY',
    marketplaceIds:[MARKETPLACE_ID]
  }
});

At least for us, when I search the schema, I can't find external_product_id or external_product_type as values, only something called externally_assigned_product_identifier.

That was helpful to see the schema, but I am still wondering how to pass the ASIN that we want to pot the offer for.
Any ideas on that? In the spreadsheet it would be under the external_product_id column.

Even the item_name which appears in the example from the docs it not present in the schema...
Btw, thanks for adding the getDefinitionsProductType! The schema helps a lot.

@IonicaBizau,
if I read the schema of getDefinitionsProductType right the ASIN must be passed as merchant_suggested_asin. As an alternative to the ASIN you could use one of UPC/EAN/GTIN as externally_assigned_product_identifier. But either merchant_suggested_asin or externally_assigned_product_identifier must be used as an identifier.

Exactly! This is the almost working version of the code, which actually creates the offer, but the country of origin is incomplete. I am not sure if that is required, but the offer is marked as Incomplete/Inactive in the inventory:
const res = await sellingPartner.callAPI({
  operation: "putListingsItem",
  endpoint: "listingsItems",
  path: {
    sellerId: process.env.AMAZON_SELLER_ID,
    sku: "581286-B21-7-3"
  },
  query: {
    marketplaceIds: ['A1F83G8C2ARO7P'],
  },
  body: {
    productType: "COMPUTER_DRIVE_OR_STORAGE",
    requirements: "LISTING_OFFER_ONLY",
    attributes: {
      merchant_suggested_asin: [{
        "value": "B07FP5L3ZQ",
        "marketplace_id": MARKETPLACE_ID
      }],
      "condition_type": [{
        "value": "used_like_new",
        "marketplace_id": MARKETPLACE_ID
      }],
      "purchasable_offer": [{
        "currency": "GBP",
        "our_price": [{
          "schedule": [{
            "value_with_tax": 74.98
          }]
        }],
        "marketplace_id": MARKETPLACE_ID
      }],
      "fulfillment_availability": [{
        "fulfillment_channel_code": "DEFAULT",
        quantity: 7
      }]
    }
  }
})```

I also tried the tutorial using the feeds api, and have the same problem: how to pass the country of origin in the flat file?

Not quite sure if "DEFAULT" really is a valid fulfillment_channel_code. Have you tried AMAZON_EU (if UK stilll counts as EU :-) )?  If you do FBM instead of FBA then the description says the fulfillment_channel_code should be left empty...whatever thats supposed to mean. Empty string? Or skipping the field completely?

@amz-tools The country of origin refers to where the product was made from what I understand (so it can be, let's say, China). I am not quite sure if it required at all, but even with DEFAULT, the country of origin is not filled into the product form.
The schema dictates that the fulfillment_channel_code field is required and mentions the DEFAULT value.
Do you have experience of updating the inventory in Amazon either using putListItem or the feeds API, without user interaction (e.g. approval request etc)? That is what I am trying to do and if possible, it would be great to connect to help me.

		"fulfillment_availability": {
			"type": "array",
			"minItems": 1,
			"minUniqueItems": 1,
			"maxUniqueItems": 1,
			"selectors": ["fulfillment_channel_code"],
			"items": {
				"type": "object",
				"required": ["fulfillment_channel_code"],
				"properties": {
					"fulfillment_channel_code": {
						"$comment": "For those merchants using Amazon fulfillment services, this designates which fulfillment network will be used. Specifying a value other than DEFAULT will cancel the Merchant-fulfilled offering.",
						"title": "Fulfillment Channel Code",
						"description": "For those merchants using Amazon fulfillment services, this designates which fulfillment network will be used. Specifying a value other than DEFAULT will cancel the Merchant-fulfilled offering.",
						"editable": true,
						"hidden": false,
						"examples": ["AMAZON_NA"],
						"type": "string"
					},
					"is_inventory_available": {
						"$comment": "If true the SKU is always available. If false the SKU is not available.",
						"title": "Inventory Available",
						"description": "If true the SKU is always available. If false the SKU is not available.",
						"editable": true,
						"hidden": false,
						"examples": ["True"],
						"type": "boolean",
						"enum": [true, false],
						"enumNames": ["Yes", "No"]
					},
					"lead_time_to_ship_max_days": {
						"$comment": "Indicates the time, in days, between when you receive an order for an item and when you can ship the item.",
						"title": "Handling Time",
						"description": "Provide the time, in days, between when you receive an order for an item and when you can ship the item",
						"editable": true,
						"hidden": false,
						"examples": ["5"],
						"type": "integer"
					},
					"quantity": {
						"$comment": "Enter the quantity of the item you are making available for sale. This is your current inventory commitment (as a whole number)",
						"title": "Quantity",
						"description": "Enter the quantity of the item you are making available for sale. This is your current inventory commitment (as a whole number)",
						"editable": true,
						"hidden": false,
						"examples": ["152"],
						"type": "integer"
					},
					"restock_date": {
						"$comment": "Date that product will be restocked",
						"title": "Restock Date",
						"description": "Date that product will be restocked",
						"editable": true,
						"hidden": false,
						"examples": ["5/5/20"],
						"type": "string",
						"oneOf": [{
							"type": "string",
							"format": "date"
						}, {
							"type": "string",
							"format": "date-time"
						}]
					}
				},
				"additionalProperties": false
			}
		},

@IonicaBizau We are not yet using the listingsItem operations, but we do use the feeds operations to update various things like quantities, but I am not aware of what exactly we are updating via feeds. I would have to ask in our team what exactly is being updated, but I am sure it doesn't require additional user interaction.
We are planning to have a closer look at the listingsItem operations and see what feeds operations can be replaced by it, but for now I am afraid we are not too much into it in order to help.
Maybe there's somebody else around here who is already using the listingsItem endpoint and got it working?

@IonicaBizau Two more things that just came to me: Are you having the write permissions for the ASIN you are trying to update? And is maybe patchListingsItem what you want to use instead of putListingsItem? I just saw that putListingsItem creates or fully updates a listing, whereas patchListingsItem allows you to only update some parts of it.

...
attributes: {
          country_of_origin: [
            {
              value: 'UK',
              marketplace_id: MARKETPLACE_ID,
            },
          ],
...

This is the invalid attribute:
"external_product_type": [{         "value": "ASIN",         "marketplace_id": MARKETPLACE_ID  }]
external_product_id is defined as:
"external_product_id": [{       "value": "B07FP5L3ZQ",        "type": "asin", // < Identifiers MUST be lowercase       "marketplace_id": MARKETPLACE_ID  }]

is that any is familiar with how to convert one JSON to another JSON structure in TypeScript


Solutions are deleted upon successful submission of challenges

Describe the Issue
Work-in-progress code for a challenge persists indefinitely, through signouts, closing and re-opening the browser, and rebooting the computer; however, as soon as the challenge is completed and "Submit and go to the next challenge" is clicked, the user's solution is deleted and replaced with the original boilerplate code presented at the beginning of the challenge.
This means that users cannot go back and review past code in order to see how they once solved a challenge, or to refactor it and create an improved solution.
The effect appears to be the same on any challenge.
Affected Page
https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/basic-javascript/use-recursion-to-create-a-countdown
Steps to Reproduce

Go to the challenge page.
Enter an acceptable solution.
Leave and return to verify that the solution has been cached.
Click on "Run the tests" followed by "Submit and go to the next challenge"
Return to the challenge page and see that the solution has been erased, the same as if you had clicked on "Reset all code"

Expected behavior
It is expected that the user's solution should persist after submission.
Screenshots
No response
System

Device: Laptop PC
OS: Windows 11
Browser: Chrome
Version: 107.0.5304.107 (Official Build) (64-bit)

Additional context
No response

I believe that this is the affected code, from /client/src/templates/Challenges/redux/code-storage-epic.js:
function clearCodeEpic(action$, state$) {
  return action$.pipe(
    ofType(appTypes.submitComplete, actionTypes.resetChallenge),
    tap(() => {
      const { id } = challengeMetaSelector(state$.value);
      store.remove(id);
    }),
    ignoreElements()
  );
}

Am I correct?

This has come up quite a few times. Here's several issues with related discussions - some have links to other related issues:
-https://github.com/freeCodeCamp/freeCodeCamp/issues/17485
-https://github.com/freeCodeCamp/freeCodeCamp/issues/34479
-https://github.com/freeCodeCamp/freeCodeCamp/issues/36599
-https://github.com/freeCodeCamp/freeCodeCamp/issues/36626
I don't think this is something we are going to change.


PopClip/Alfred for Hyper

Allows you to run a command from text selection using PopClip and anywhere text input using Alfred.

Checklist for submitting a resource to awesome-hyper:

[x ] Title: The title for the addition uses its npm title (hyper-example) or the resource's title.
[x] Link: The link for the addition uses the npmjs.com link (https://www.npmjs.com/package/hyper-example) or the resource's full URI.
[x] Repository: The package.json file of the resource contains repository information.
[x] Visual: There is a visual representation of what the addition does in its source repository.
[x] Location: The awesome addition is in the correct category or sub-category.

If it's a plugin or resource, put your awesome item at the BOTTOM of the correct section.
If it's a theme, insert it according to the ALPHABETICAL order.

[x] Description: I've written a short (one sentence) description for the addition in the README.md.
[x] Downloads: I've added a download stats badge in the second column ([![npm](https://img.shields.io/npm/dm/hyper-example.svg?label=DL)]())

Sorry for the trouble....I am a rookie here indeed. Thanks, I will figure this out.

Closing this since it's unlikely to be merged.
Feel free to open a new PR that follows our guidelines.


Allow system registration by UUID vs TPM

Describe the solution you'd like:
Utilizing the System UUID as an option vs requiring the use of TPM for a system identifier.
This will enable deployments

If the hardware does not support TPM
If the virtualization platform does not support TPM
If TPM is not enabled or not preferred/incompatible.

@fgiudici I think you are the most experienced with the TPM auth back and forth between the cleint and operator, do you think it would be possible to do the same with a different identifier? Maybe using the uuid of the machine? Maybe using the uuid as a seed for the tpm emulation?

The TPM module is used to securely identify the on-boarding machine.
TPM emulation was mainly introduced for testing purposes and does not provide secure identification of the registering machine.
We can introduce other type of authentication for machine identification (e.g., a secret and/or a UUID), they wouldn't anyway match the security of what we can do with TPM.
As long as we also introduce a way to enforce machine auth for registration in the operator ( via TPM, UUID, ...) I don't have any concern to allow registering without TPM.

It would also be helpful to annotate the MachineInventory associated with how the machine authenticated itself. This would allow an admin to quickly confirm their security posture.

Dropping a note here about TPM emulation: when emulated-tpm-seed is set to 0 (or when it is not specified) in the MachineRegistration, we end up to use a seed of 1 during client registration.
Enforcing a seed of 0 (manually editing the registration yaml and putting 'emulated-tpm-seed: 0') , will perform TPM emulation using random keys. While this would be the way to allow multiple hosts without TPM to use the same ISO to register to the elemental operator, this actually doesn't work due to an issue in the tpm library we rely on (see https://github.com/rancher-sandbox/go-tpm/issues/6).
While we can fix the library, I think there is no reason to use TPM to register if the machine has no TPM: using a random key that we will throw away after registration makes no sense.
So, better to invest in an alternate authentication method (e.g., free enrollment), to be tracked in the MachineInventory through a label and/or an annotation.

For the short term, would it make sense to have -1 map to using some portion of a unique-ish identifier (serial number?) as the bits for the seed?

This is weird because with my patch at #282 I was able to boot, enroll and deploy a cluster into a node with a random tpm seed... what are the issues that you are seeing? I could not find any!

#282 is perfect 🚀
I mean, the original library allows random TPM keys generation (not binded to a unique seed) putting 0 as seed. In that case, it will not work.
Your patch randomize the initial seed, and that works pretty well! 🎉

This is kind of done already with the random TPM seed based of the UUID of the machine?


Avoid the term whitelist

This term was replaced with allowedList. See e.g. https://tools.ietf.org/id/draft-knodel-terminology-00.html
for a rationale.

This looks good to me, thanks for picking up on my original request.

Any updates on this PR?

Thanks, will plan to get this in for 1.14.1.

I am happy to make the noted changes BTW, LMK.

Thanks - rolled this mostly in to #1464 with a few minor changes (called it Safelist, mainly)


Add UI Enhancements

This PR is a follow up to #10740.
Based on some internal testing and feedback I have added some UI enhancements to the task that ensure the layout remains consistent with existing fields.

Hey @Ajay-MS, any chance of you reviewing this before your next release cycle? 🙂

PR looks OK to me. I will tryout the UI and will merge the PR soon.


Update CI node versions

Drop 8, add 14
Devops pipelines still uses the UI so I'll have to change that manually

node 13 passed, the status reporting is just confused because I changed the pipeline to use node 14 after the run started


feat: add Trivialization.tendsto_nhds_iff

This lemma generalizes FiberBundle.continuousWithinAt_totalSpace.
Also add a version with equality of filters.

Thanks!
bors merge


Removed static from class definition.

The actual code does not have static. With static it won't compile.

@gazialankus this looks like an improvement, thanks!


Fix several memory leaks in the Swift interface

I've found that a small dmonly swift run with on-the-fly velociraptor eventually crashes with an out of memory error. Running in ddt shows that it's leaking memory on each velociraptor invocation, mainly because the pfof array in InvokeVelociraptorHydro doesn't get deallocated. This merge request fixes that and a couple of much smaller leaks.
There's still one more leak I haven't tracked down. The array returned by BuildPGList sometimes isn't deallocated but I don't know which call to BuildPGList is the problem.

Thanks John. I had similar fixes but hadn't had a chance to test and push.


Clusternator server repo

github repo
npm repo
@yuri can you create a clusternator-server repository on npm, please and thank you :)

@rafkhan @yuri github-repo has been created for the server portion, https://github.com/rangle/the-clusternator-server

@rafkhan nothing has been pushed to the server portion yet and the repo has been there for nearly two months. What part of the code base needs to be moved there?

@e-schultz no usable progress has been made on the server component since the client still isn't fully finished yet

@e-schultz all development is being done in this repo, can you delete clusternator-server?


GNOME Extensions

Think about if I want to handle or at least document GNOME
Extensions
https://github.com/maoschanz/emoji-selector-for-gnome

https://github.com/gTile/gTile

https://github.com/spin83/multi-monitors-add-on
git clone git://github.com/spin83/multi-monitors-add-on.git
cd multi-monitors-add-on
cp -r multi-monitors-add-on@spin83 ~/.local/share/gnome-shell/extensions/

This can serve as notes later but not planning on scripting this right now


Layer blend and opacity

It seems layer blend and opacity are not supported at the moment. Not using heaps-aseprite directly but noticed that by reading the code (and seeing opacity not taken into account in LDtk).
In my journey to implement aseprite support for Ceramic, I ported original aseprite's blend functions to Haxe, that you can find here: https://github.com/ceramic-engine/ceramic/blob/master/plugins/ase/runtime/src/ceramic/AsepriteBlendFuncs.hx
Sharing that as it could be interesting to use that in heaps-aseprite as well to improve support of layer blend/opacity (and make that work in LDtk as well?).
The actual parsing of ase data in Ceramic, also using the blend functions, can be found there: https://github.com/ceramic-engine/ceramic/blob/master/plugins/ase/runtime/src/ceramic/AsepriteParser.hx

I guess you'd need to provide your own color type if you use this AsepriteBlendFuncs file, as my implementation is using an abstract specific to Ceramic, but should be easy to adapt so far.


Update jira extension

Description

Fixes #12674
Screencast

Checklist

[ ] I read the extension guidelines
[ ] I read the documentation about publishing
[ ] I ran npm run build and tested this distribution build in Raycast
[ ] I checked that files in the assets folder are used by the extension itself
[ ] I checked that assets used by the README are placed outside of the metadata folder

I've just added a little code that proves that the issue list is being searched locally and that the expected behavior can be achieved by tinkering with a list item's keywords.
In order to test it, just run the Open Issues command, for example, and search by the numeric id instead of the full issue id.

@jesperorb did you change your Raycast handle?

Sorry if I didn't make myself clear in the first place but I this is not a fix yet but rather a workaround to show that the search within a list in Raycast may be broken. As per the official docs:

The search bar allows users to interact quickly with list items. By default, List.Items are displayed if the user's input can be (fuzzy) matched to the item's title or keywords.

I assume that in the context of the Jira extension, the above feature will allow me to search for Jira issues that have the key PROJ-123 just by typing 123 but that's not the case unless I add 123 to the list of keywords (as you can see in the changes).
So if someone from the team could check that this is expected behavior...

Hey @thomaslombart. Did you have the time to review this?

I can see there are some conflicts, and the PR is still a draft. Could you look into it and mark it as ready so I know when to test it?


native_dio_adapter does not support onReceiveProgress and onSendProgress

Package
native_dio_adapter
Version
0.1.0
Output of flutter doctor -v
[✓] Flutter (Channel stable, 3.10.1, on macOS 13.4 22F66 darwin-arm64, locale en-UA)
    • Flutter version 3.10.1 on channel stable at /Users/vovchara/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision d3d8effc68 (10 days ago), 2023-05-16 17:59:05 -0700
    • Engine revision b4fb11214d
    • Dart version 3.0.1
    • DevTools version 2.23.1

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/vovchara/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)

[✓] VS Code (version 1.78.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.64.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 13.4 22F66 darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 113.0.5672.126

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Dart Version
3.0.1
Steps to Reproduce
Provide onReceiveProgress and/or onSendProgress callback to any request method.
Expected Result
Callback is called the same way as without native adapter.
Actual Result
Callback is called only once after download is done.

onReceiveProgress also doesn't work with dio_http2_adapter

Awesome, thank you for the upcoming PR. Yes, please create a separate issue for dio_http2_adapter.

I am not sure about how to fix onSendProgress because adapter converts the request object to http package request for easy integration.

I was afraid of that. I think in the future we should get rid of that conversion layer, but that was the easiest way to get it working quickly. Additionally, while it's still experimental it can change at anytime, so using http as a target also kept the maintenance work to a minimum.

I think in the future we should get rid of that conversion layer

That won't help to fix onSendProgress. cupertino_http and cronet_http drains the stream before sending the whole body to the native code. We need either to make PR with stream body implementation into their repo or create a new implementation of native clients here.

Oh I didn't know that. Then there should be an issue on their repo about that problem.

I think that is desired behavior for them. They don't have any use cases for request streams, as there is no way to set the request body as a stream in http package.

I made a future request for cupertino_http package and when this is merged StreamingRequest will be working as intended. This should open the door for the implementation of onSendProgress.
https://github.com/dart-lang/http/issues/974
https://github.com/dart-lang/http/pull/975

dart-lang/http#974
dart-lang/http#975

They don't seem to be blocking anymore. Would you take another look if it requires further implementations? @Vovcharaa

@AlexV525 It definitely requires implementation of the condition when to use StreamedRequest in native clients.
Should it be when onSendProgress callback is provided?
Or should we create a new field in RequestOptions for that?

@AlexV525
https://github.com/dart-lang/http/issues/974#issuecomment-1641850725
This prevents onSendProgress from working correctly.

That doesn't prevent implementing it in this native_dio_adapter tho. And then as soon as the cupertino_http package supports it, native_dio_adapter will too

I agree.
The only question is when we want to use StreamedRequest because for simple requests streams could be slower in the case of native clients.
https://github.com/dart-lang/http/blob/b2067710f88980fc0fee43ec3380bce089f001db/pkgs/cupertino_http/lib/src/cupertino_client.dart#L255-L256

Should it be when onSendProgress callback is provided?

I think this would be good at this moment.


Tensor Inspector Tutorial

Description
Tutorial for this PR: https://github.com/apache/incubator-mxnet/pull/15490
Need images uploaded here: https://github.com/dmlc/web-data/pull/194
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[ ] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant JIRA issue created (except PRs with tiny changes)
[ ] Changes are complete (i.e. I finished coding on this PR)
[ ] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[ ] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
Check the API doc at http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[ ] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[ ] Feature1, tests, (and when applicable, API doc)
[ ] Feature2, tests, (and when applicable, API doc)

Comments

If this change is a backward incompatible change, why must this change be made.
Interesting edge cases to note here

@ChaiBapchya Thanks for the thoughtful review!

@mxnet-label-bot add [Operator, NDArray, Visualization, pr-work-in-progress]

@access2rohit @sandeep-krishnamurthy The tutorial is ready for review. After applying your suggestions I will replace the image url to the ones I uploaded to dmlc/web-data so don't worry for image names or urls for now

@aaronmarkham - Can you please help review? Thanks!

@ChaiBapchya @IvyBazan Thanks for the very detailed revision suggestions! I've made the changes locally, and after my images are ready, I will change the image url's in the doc as well. Very excited to have it posted so that developers can start using!

Haha you guys are BREATHTAKING

Thanks @Zha0q1 @IvyBazan @ChaiBapchya @larroy @apeforest @marcoabreu


port Nuvoton NPCX series

This is my first time creating a pull request on Zephyr project.
It is blocked before the following items are passed:

Pull request in https://github.com/zephyrproject-rtos/hal_nuvoton/pull/2
Add more information in the commit message.
Sanity check.

Hi @sjg20:
I have modified the changes based on your comments and set the default debugging interface from jtag to swd for further usage. Please take a look at it.
Although I don't set this PR as "Ready for review " since it is blocked by the other PR (zephyrproject-rtos/hal_nuvoton#2) now, any comment is still appreciated. Thanks.

I still left few comments tody. I will reply to them tomorrow. Updated some changes modified by suggestions.

From my other comment in the nuvton_hal repository, I think this is were we want to have a device read/write funtion that uses the devices base address that is passed in as a parameter here instead of using hardcoded absolute locations. (The hard-coded offsets within a device still make sense though)

Hi @jettr
Consider what you wrote about base address, I wonder it might be a good idea to replace register layout macros with a structure. For example:
/* Universal Asynchronous Receiver-Transmitter (UART) device registers /
typedef struct uart_reg {
volatile uint8_t UTBUF; / Offset: 0x000 /
volatile uint8_t reserved1;
volatile uint8_t URBUF; / Offset: 0x002 /
volatile uint8_t reserved2;
volatile uint8_t UICTRL; / Offset: 0x004 /
volatile uint8_t reserved3;
volatile uint8_t USTAT; / Offset: 0x006 /
volatile uint8_t reserved4;
volatile uint8_t UFRS; / Offset: 0x008 /
volatile uint8_t reserved5;
volatile uint8_t UMDSL; / Offset: 0x00A /
volatile uint8_t reserved6;
volatile uint8_t UBAUD; / Offset: 0x00C /
volatile uint8_t reserved7;
volatile uint8_t UPSR; / Offset: 0x00E /
volatile uint8_t reserved8[17];
volatile uint8_t UFTSTS; / Offset: 0x020 /
volatile uint8_t UFRSTS; / Offset: 0x022 /
volatile uint8_t UFTCTL; / Offset: 0x024 /
volatile uint8_t UFRCTL; / Offset: 0x026 */
} uart_reg_t;
Then  'NPCX_URBUF(inst)' will become 'inst->URBUF'. It might look more straight forward.
But it will change PR a lot. How do you think?

From my other comment in the nuvton_hal repository, I think this is were we want to have a device read/write funtion that uses the devices base address that is passed in as a parameter here instead of using hardcoded absolute locations. (The hard-coded offsets within a device still make sense though)

Hi @jettr
Consider what you wrote about base address, I wonder it might be a good idea to replace register layout macros with a structure. For example:
/* Universal Asynchronous Receiver-Transmitter (UART) device registers / typedef struct uart_reg { volatile uint8_t UTBUF; / > ....
} uart_reg_t;
Then 'NPCX_URBUF(inst)' will become 'inst->URBUF'. It might look more straight forward.
But it will change PR a lot. How do you think?

I think that would be a good way to have the code be self-documenting and easy to read. I like the idea.

OK, I will spend a couple days to arrange this PR.

Hi @jettr , @sjg20 and @ioannisg :
Finally, this PR passed the sanity tests although I spent more time than expected. Compared with the previous PR, it includes:

Introduce ecst python scripts for composing the header used by npcx ROM code.
In this PR, we replace the ecst binary executed file with python scripts. It is easier for the tool to maintain different npcx EC series and passes sanity checks. Please notice I also removed the header definition in C since its functionality is replaced with python scripts, too.
Replace register layout macros with a structure definition. (soc/reg/reg_def.h)
A device structure makes the driver look more straight forward and easier to read if we passed a device base address through DT. We also did lots of tests to make sure the following PRs introduce npcx gpio/intc/pwm/adc drivers work properly.

Please review it and any comment is highly appreciated.

Hi @jettr
Sorry for the inconvenience. I had left 'Done' and thought the reviewers resolve it if the change is OK. (I'm still not familiar with GitHub UI.) For the new comments today, I left two for further discussions and resolved the others. Thanks again for reviewing it.

@MulinChao

It is blocked before the following items are passed:
Pull request in zephyrproject-rtos/hal_nuvoton#2

This is no longer a requirement I see, you are not updating west.yml so I assume that PR can be closed?

@MulinChao please rebase

@MulinChao there seems to be a binary file here:
https://github.com/zephyrproject-rtos/zephyr/pull/26636/files#diff-ad97dcc77ddc8bde8ca17f94e39c764f
Can you please explain what this file actually does and why does it need to be on the tree? We don't have binary files in the tree in general.

This binary file is a small firmware binary file which is in charge of programming a target firmware binary image into the internal flash of npcx chip. The flow includes:

@MulinChao could this binary be part of openocd (of which we have a fork) or be placed elsewhere?

If it is not a general case in zephyr project, we can submit the source of this small firmware. But I need to study how to build a second firmware binary image in zephyr environment. If anyone has any good ideas about building the second image, please give your comment freely. Thanks.

Typically those type of firmware loaders are pre-built and included in the flashing tool. If that is not possible then I rather include the binary than build this every time for the user, but we do need a bit more people weighing in.

This binary file is a small firmware binary file which is in charge of programming a target firmware binary image into the internal flash of npcx chip. The flow includes:

@MulinChao could this binary be part of openocd (of which we have a fork) or be placed elsewhere?
@carlescufi Do you mean moving this file or related sources to https://github.com/zephyrproject-rtos/openocd? If so, I need to spend time studying how to do it.

This binary file is a small firmware binary file which is in charge of programming a target firmware binary image into the internal flash of npcx chip. The flow includes:

@MulinChao could this binary be part of openocd (of which we have a fork) or be placed elsewhere?

@carlescufi Do you mean moving this file or related sources to https://github.com/zephyrproject-rtos/openocd? If so, I need to spend time studying how to do it.

Yes, that's exactly what I mean. Possibly the file itself, I see no problem with having a binary file there

@carlescufi Do you mean moving this file or related sources to https://github.com/zephyrproject-rtos/openocd? If so, I need to spend time studying how to do it.

Yes, that's exactly what I mean. Possibly the file itself, I see no problem with having a binary file there

Hi @carlescufi
Thanks for your suggestion. We decide to move flash scripts and loader image sources to openocd repository. I have removed the binary file and related configuration files in this PR. Flashing npcx chips will be supported by openocd directly.

@carlescufi Do you mean moving this file or related sources to https://github.com/zephyrproject-rtos/openocd? If so, I need to spend time studying how to do it.

Yes, that's exactly what I mean. Possibly the file itself, I see no problem with having a binary file there

Hi @carlescufi
Thanks for your suggestion. We decide to move flash scripts and loader image sources to openocd repository. I have removed the binary file and related configuration files in this PR. Flashing npcx chips will be supported by openocd directly.

Thanks @MulinChao!


Updated Spreedly::Environment for Google Pay

Objective
This PR adds the ability for spreedly to send Google Payment token.
How
The idea behind this PR is let clients continue sending the payment token as they currently do and let spreedly decide if this is google pay token or a good old payment token. This is done by looking at the token which will be a string, if the string has the words good_pay we generate a google pay XML for Spreedly. If not we generate the good old XML.
Here is an example of what Spreedly requires for Google:
https://docs.spreedly.com/guides/google-pay/#transactions
<transaction>
      <amount>1122</amount>
      <currency_code>USD</currency_code>
      <google_pay>
        <payment_data>
          <![CDATA[{"signature":"MEUCIA6SGVRwhOyeYRkeDUUNwB/kGtyfQAlOsg7NZydT17u/AiEA48BhWGQEF1EbEU0J+m8eSK3rTfhok9QqpiFVbME+Ky0\u003d","protocolVersion":"ECv1","signedMessage":"{\"encryptedMessage\":\"3v4IcT/eovIDP2WF8iRUy4qWQnE9Cx0vQxIZ5f9i3Emv3Tzs1AzvB7cxXhxrjp9FVIzdOwsZAPAsm03gvoYq8Xdr70XvrVRd2MFwQhMC7IV/uEsthw4JsR8oCkbI5v/zqhu2B+JodFgavNliHcpKBgijy2D6bpx7jXEkM39M/L4oBObFxFrhVSLA1GjOV6A5gLAXNXt0ffkCYekihqAyJrWlk3sCBDCF5SUiAKEIOIZtzZLgusxjVp6ufZHOHm/53uhAi6JWSJ1E6G5aaYGtULYdwgURHtxN5OIzQPYlEGctaQd5tgfCsBFfGkYyN1GRNgclbaLzAfk/Jn7/6IVKuV0ol3xubTcnjGTZXwtTjiEyYDoz1yVqB9ViMmJa55L6nBtbbAkcNEgAi7dPnrbvBGEP7QWsNT9D71g8SWrlRTCYUAOyuamaQhofG4ul1IVjmltdAy2BHBWpqgJnR9kczydQyE7uDiqhSC1/0eG8GCGIqoi8XfOioGXfMyLZ1p2ZcNK9ECjzUrH/edrwgtShxgWuWMwQTM4DQlVTAA/R4DVs192YWZcc7jm5wLqZ0+XEaPuighJM1Ps1Egeccg\\u003d\\u003d\",\"ephemeralPublicKey\":\"BA2SvF9BdCX7Tl1wwRkyLzTfqhctobhZgSugC9Cz77XNUCBOBMfFyJQt506PUs89D6IJZZfOkZopy0shRF9Uph4\\u003d\",\"tag\":\"Uhin1BE7KAuuiam7eEQFimRUDd9Xn6tZc2fClTpfrXQ\\u003d\"}"}
]]>
        </payment_data>
        <test_card_number>4111111111111111</test_card_number> <!-- Remove in production -->
      </google_pay>
    </transaction>

Discussed with Pavan and we are getting back a different looking token than what the spreedly docs are showing. We decided to leave this here until we have the front end done and can have some better example of what the token will look like.

We have one more repo for spreedly gem https://github.com/GiveCorps/spreedly-gem/commits/master, I see 3 weeks back commit on that repo by @hoenth . Should we continue with that repo or should we merge that changes here ?.
I do not have write permission for this repo.


add editorial set and edit quotation section

Is your feature request related to a problem? Please describe.
Digital Design would like to pull from your open source type sets in future
Describe the solution you'd like
We would like you to add editorial set to your repo and change current quotation-01 to quotation-02 so that we can add a smaller quotation-01 to the set. See quotation sizes here: https://www.ibm.com/standards/web/elements/type-usage.html
Describe alternatives you've considered
We've been testing quote sizes with teams like Watson and the current quotation is too large for certain, less punchy scenarios
Additional context
Wonil may have more light on the quotation issue

Closing in favor of #104


NSKeyValueCoding tests fail on OSX

Also if we could Aggerate -> Aggregate it'd be nice
[ RUN      ] NSKeyValueCoding.AggerateFunctionUnionOfObjectsSet
unknown file: Failure
Unknown C++ exception thrown in the test body.
[  FAILED  ] NSKeyValueCoding.AggerateFunctionUnionOfObjectsSet (0 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionSumDict
unknown file: Failure
Unknown C++ exception thrown in the test body.
[  FAILED  ] NSKeyValueCoding.AggerateFunctionSumDict (1 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionCountDict
[       OK ] NSKeyValueCoding.AggerateFunctionCountDict (0 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionMaxDict
unknown file: Failure
Unknown C++ exception thrown in the test body.
[  FAILED  ] NSKeyValueCoding.AggerateFunctionMaxDict (0 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionMinDict
unknown file: Failure
Unknown C++ exception thrown in the test body.
[  FAILED  ] NSKeyValueCoding.AggerateFunctionMinDict (0 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionAvgDict
unknown file: Failure
Unknown C++ exception thrown in the test body.
[  FAILED  ] NSKeyValueCoding.AggerateFunctionAvgDict (0 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionDistinctUnionOfObjectsDict
unknown file: Failure
Unknown C++ exception thrown in the test body.
[  FAILED  ] NSKeyValueCoding.AggerateFunctionDistinctUnionOfObjectsDict (0 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionUnionOfObjectsDict
[       OK ] NSKeyValueCoding.AggerateFunctionUnionOfObjectsDict (0 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionNullLeafArray
Foundation/NSKeyValueCodingTests.mm:228: Failure
Expected: [result valueForKeyPath<EMAIL_ADDRESS>throws an exception.
Actual: it doesn't.
[  FAILED  ] NSKeyValueCoding.AggerateFunctionNullLeafArray (0 ms)
[ RUN      ] NSKeyValueCoding.AggerateFunctionNullLeafSet
Foundation/NSKeyValueCodingTests.mm:235: Failure
Expected: [result valueForKeyPath<EMAIL_ADDRESS>throws an exception.
Actual: it doesn't.
[  FAILED  ] NSKeyValueCoding.AggerateFunctionNullLeafSet (0 ms)

This reflects a design deficiency in our implementation of aggregate functions.
Where we have one global class that implements these for everybody, it looks like they're class-specific on the reference platform. This allows them to disable unionOfSets on NSSet, and sum, min, max on NSDictionary.