Basic Email Templating, Confirmation Logic & Mobile Styling Fixes

Can close #84, #99, and #117.
I made a text and HTML version of the "email templates," which is really just one mediocre template right now. Django recommends an alternate version of the email for weird browsers and email clients.
Some of the parts of the app looked really strange on mobile, so I tried to fix it as much as possible on smaller screen sizes.
The confirmation logic includes a URL to confirm a reservation and two Django template filters to calculate confirmed reservations from a set. Also fixed all of the "available" and "taken" counts that had to be changed.

Not necessarily. Project level templates can be used for system level
templates. Account creation, and Password reset emails for example fall
into this category. But I can see that these email templates are coupled
with the functionality of “app” so it makes sense to put these there in
hindsight. I just wanted to clarify this. Also, it may not be useful to
extend base in email templates. Instead you may want to create an email
base instead.
-Mr. L
On Thu, Mar 17, 2022 at 4:34 PM Seamus Smith @.***>
wrote:

@.**** requested changes on this pull request.
I probably should have been a bit more clear about where to put the email
templates.
When I said I wanted the email templates in the /email/layouts/
directory, I was referring to the template import path name, the path you
use to reference to the template. I probably should have made this more
clear, and I plan to update the documentation on our template directory
schema.
I'll give you a rundown on how we store our templates:
Django looks at the templates folder of each app in a project and allows
developers to refer to them without using a relative directory, like for
instance, the template with the path /app/templates/app/pages/index.html
can be referred to as /app/pages/index.html. The reason why the front-end
templates are in an extra /app/ folder is to create a separation of
concerns. If we have all of our templates in the base template folder, we
would run into name collisions and it would be, in general, very messy.
When we need templates for other things, like emails, we would have
another folder called email in our /app/templates/ folder. The folder
structure could probably follow in the footsteps of our app templates,
with the whole components layouts pages schema. pages in this case could
be renamed to something more sensible like emails.
Our templates usually also extend from a base template to reduce code
duplication on things like headers and footers. In the case of emails, our
base template would most likely have a header and a signature at the end.
This template would sensibly go in the /emails/layouts/base.html
template directory.
I hope this clears any confusion.
In ratatoskr/app/urls.py
https://github.com/worcestertechnicalhighschool/ratatoskr/pull/118#discussion_r829477262
:

@@ -14,6 +14,7 @@
path('schedule/schedule:schedule/create-timeslots', views.create_timeslots, name='create-timeslots'),
path('schedule/schedule:schedule/datetime:date/reserve/timeslot:timeslot', views.reserve_timeslot, name='reserve-timeslot'),
path('schedule/schedule:schedule/datetime:date/view/timeslot:timeslot', views.view_reservations, name='view-reservations'),

path('confirm/int:reservation', views.confirm_reservation, name='confirm-reservation'),

You should probably use the new model URL converters. We have them for
Schedule, TimeSlot, and Reservation. These URL converters allow us to
eliminate that one line of code used for fetching the data from the
database. You can look at how these converters are implemented in the
app.converters module.
In this case here, you would change the int:reservation to
reservation:reservation to take advantage of the URL converter.
—
Reply to this email directly, view it on GitHub
https://github.com/worcestertechnicalhighschool/ratatoskr/pull/118#pullrequestreview-913669066,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADBZIJ6XASS2UKEN6432U4DVAOJN5ANCNFSM5Q7AD3JA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message
ID: <worcestertechnicalhighschool/ratatoskr/pull/118/review/913669066@
github.com>

--
JEFF LEBOEUF, MIS
TEACHER, PROGRAMMING AND WEB DEVELOPMENT
WORCESTER TECHNICAL HIGH SCHOOL
ONE Officer Manny Familia Way, WORCESTER, MA 01507
C:<PHONE_NUMBER>E: @.***
@.***>
--
*
*
This is an email account managed by the Worcester Public Schools,
Worcester, MA.  This email and any files transmitted with it are
confidential and intended solely for the use of the individual or entity to
whom they are addressed. If you have received this email in error, please
notify the sender.

Fixed the issues with the email templates and the URL for confirmation. Also added cancellation URL to close #120. Didn't have time today to convert primary keys to UUIDs for reservations. There were some issues with using custom converters with the UUID data type... Good luck


⚠ Fortnite has degraded performance

In 416cf3c, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1498 ms

Resolved: Fortnite performance has improved in f38dc63.


Adding Path Object to Typespec for CLU

@Zach-King2 go through the error and a couple warnings in https://dev.azure.com/azure-sdk/internal/_build/results?buildId=2894774&view=logs&j=e37a1bb9-a190-5269-3a0e-37469dfbe682&t=09cb0672-20c5-5dce-4552-dad3f3e96fd3 and see if you can resolve those. For the missing file under eng/, just copy it. Assuming no changes when the feature branch is merged, it won't make a difference.

@Zach-King2 go through the error and a couple warnings in https://dev.azure.com/azure-sdk/internal/_build/results?buildId=2894774&view=logs&j=e37a1bb9-a190-5269-3a0e-37469dfbe682&t=09cb0672-20c5-5dce-4552-dad3f3e96fd3 and see if you can resolve those. For the missing file under eng/, just copy it. Assuming no changes when the feature branch is merged, it won't make a difference.

I took a look and the tsconfig.json file is in eng/tools/TypeSpecValidation. I'm not sure why its not being recognized, I didn't make any changes in this folder.

@Zach-King2 go through the error and a couple warnings in https://dev.azure.com/azure-sdk/internal/_build/results?buildId=2894774&view=logs&j=e37a1bb9-a190-5269-3a0e-37469dfbe682&t=09cb0672-20c5-5dce-4552-dad3f3e96fd3 and see if you can resolve those. For the missing file under eng/, just copy it. Assuming no changes when the feature branch is merged, it won't make a difference.

I took a look and the tsconfig.json file is in eng/tools/TypeSpecValidation. I'm not sure why its not being recognized, I didn't make any changes in this folder.

@heaths Could this be related to the compiler issue?

@heaths Could this be related to the compiler issue?

Not sure. @allenjzhang can someone take a look? It seems files are up to date with what's in main. Long-term, we need a solution that works across feature branches since we want - need - teams to be using feature branches until they are ready to publish. Constantly having to merge main is going to be problematic.

Please see the comments above to fix the item. They should get you green on the TypeSpec validation & Model validation errors. @mikeharder, the APIView step is failing. Is it there a pipeline fix?
Oh, also more linting rules RESTApi board asked have been added. Those warnings require you to add more @doc or /** */ to many of the enum/properties. Please fix all warnings as well. Thx

@allenjzhang thank you. The PR is incomplete e.g., comments, because this is very much a work in progress; though, I agree something should be added as much as possible to make this green. @Zach-King2 sounds like adding comments as you author models would be best. You can just copy/paste, of course.

Some failures are expected for now. @Zach-King2 will start a new PR to fill out most/all the remaining models that should fix almost all the remaining issues that aren't tooling-related.


Encode revision in remote URL

Required to support accessing PRs on the HF Hub. e.g.,
const pipe = await pipeline('task', 'model', {
   revision: 'refs/pr/1', // Access files from PR
});

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


echomsg left dangling

On 802a0d9 an echomsg was left dangling at https://github.com/vim/vim/commit/802a0d902fca423acb15f835d7b09183883d79a0#diff-9aa7419d9504f85f995d943175f49e46R95. It shows up anytime a tex or related file is open.

cc @cecamp
closing. I am sure, charles will submit a new version soon. Thanks.

Sorry but I don't see a reason to close the issue before the fact? Specifically I (or anyone interested) miss the notification for when it's really fixed.

Fixed by v7.4.1986 at https://github.com/vim/vim/commit/e18dbe865d190e74fb5d43ac8bc6ac22507d0223#diff-9aa7419d9504f85f995d943175f49e46L95 ....


Error while enabling mqtt

Version used: 1.2.0
Going to settings, enable MQTT, save:
Response error: 500
I'm using MQTT in several other devices, without any issue.
Error reported in the log:
Logger: aiohttp.server
Source: custom_components/alarmo/alarm_control_panel.py:228
First occurred: 8:15:58 AM (4 occurrences)
Last logged: 8:17:55 AM

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_protocol.py", line 422, in _handle_request
    resp = await self._request_handler(request)
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_app.py", line 499, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_middlewares.py", line 118, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 172, in forwarded_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 18, in request_context_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 127, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 129, in handle
    result = await result
  File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 60, in wrapper
    result = await method(view, request, *args, **kwargs)
  File "/config/custom_components/alarmo/websockets.py", line 98, in post
    await coordinator.async_update_config(data)
  File "/config/custom_components/alarmo/__init__.py", line 107, in async_update_config
    await self.config_callback()
  File "/config/custom_components/alarmo/alarm_control_panel.py", line 228, in async_reload_config
    await self._unsubscribe_topics()
TypeError: object NoneType can't be used in 'await' expression

I accidently came across this bug myself as well.
It's a pretty harmless bug (after restarting HA all is OK and your settings are stored), but i will make sure to fix it.

I just released v1.3.0 which should fix this issue.
Please try it out and close the issue if it is resolved.

Just updated. but now the integration does not work.
Logger: homeassistant.setup
Source: setup.py:138
First occurred: 5:07:19 PM (1 occurrences)
Last logged: 5:07:19 PM

Setup failed for alarmo: Integration not found.

Do you use HACS?
I accidently published this release with a folder 'alarmo' in the zip file, it caused the HACS installation to create an /alarmo/alarmo folder.
I'm quite new with this stuff, sorry about that.

yes. I used Hacs

Then please move the files one directory up, or try to reinstall with HACS (i corrected the release zip).

Alarmo installation is now ok via Hacs.
But I still can't see the alarmo mqtt message in my broker.
Is there any config/setting for mqtt, behind state and command topic ?

never mind. Got it now! Thanks.
Closing the issue


WIP : Feature/Suggest Widget

Description
As part of editor simplification and new navigation, this change set address the widget suggestion feature. Based on some basic rules(which will look for specific fields and records count) the suggested widget is sent along with executed query response.
Fixes #4960
Type of change

New feature (non-breaking change which adds functionality)

How Has This Been Tested?

Unit Tests
Manual testing

Checklist:

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[X] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[X] My changes generate no new warnings
[X] I have added tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes

@AnaghHegde, I don't know if this is in scope for this but wanted to put it out here in case we want to do this.
I see that the suggested widget field is declared to be just a String, right? Could we not suggest multiple widget types in the future? Like, for an array of objects with width and height of people, both a table widget and a chart widget could be good suggestions right? In that sense, should we make this a List<String> instead?
Taking that thought a bit further, what if we could identify that the response data has a users array, for which a table widget is ideal, and it also has a history array, for which a chart widget is ideal, for example. Then we could tell the frontend with a map like {".users": "TABLE_WIDGET", ".history": "CHART_WIDGET"}, so the UI can show two suggested widgets for different pieces of data in the response. If we want to go this way, we'll want a Map<String, String> instead.
Its possible I'm thinking too much here. @Nikhil-Nandagopal, do the above sound too farfetched? 😄
For today's case though, the implementation looks good. Lets add a few tests and we should be ready to merge.

@AnaghHegde, I don't know if this is in scope for this but wanted to put it out here in case we want to do this.
I see that the suggested widget field is declared to be just a String, right? Could we not suggest multiple widget types in the future? Like, for an array of objects with width and height of people, both a table widget and a chart widget could be good suggestions right? In that sense, should we make this a List<String> instead?
Taking that thought a bit further, what if we could identify that the response data has a users array, for which a table widget is ideal, and it also has a history array, for which a chart widget is ideal, for example. Then we could tell the frontend with a map like {".users": "TABLE_WIDGET", ".history": "CHART_WIDGET"}, so the UI can show two suggested widgets for different pieces of data in the response. If we want to go this way, we'll want a Map<String, String> instead.
Its possible I'm thinking too much here. @Nikhil-Nandagopal, do the above sound too farfetched? 😄
For today's case though, the implementation looks good. Lets add a few tests and we should be ready to merge.

Not at all. Infact the basic requirement is to suggest 1 table, 1 list, 1 select, 1 chart and 1 text if possible


Slider arrows don't display under Vite

Hi - I set up a sliding banner using the "Slider" under React and it worked fine.
I ported it to run under Vite and everything ran fine (images showed/slid, buttons worked, etc.) , except that the little arrows in the buttons did not show.   I suspect it's a problem with the .css files under Vite that are somehow not showing the svg paths used to render the arrows on the buttons, but I haven't been able to figure out how to resolve this.
Original (under React):

Under Vite: (note missing arrows on banner)

Thanks for raising the issue. This will be looked into. You can probably use custom arrows for now as documented here https://react-slideshow-image.netlify.app/?path=/story/examples-customarrows--page

Thanks!  That sounds like a good idea.  Will give it a try when I can.

I did a quick try and it didn't work, per se ... but I was able to substitute a different arrow rendering method (just used a < and a > symbol instead of the svg) and it worked.  So that approach should let me work around the issue.  Thanks!


TS migration: < UsageGuidelines />, < VisualDescription />

Monday ticket
CSS modules migration guideline

SergeyRoyt Please assign this to me

Closed thanks to @Kritik-J !


Generate wallet with desired suffix by randomizing mnemonics

Add --suffix <some_literal> parameter to wallet create command which randomizes mnemonics until the desired some_literal end of the address occurs. This could work both for Oasis native addresses as well as the Ethereum hex-encoded ones. My educated guess would say it should be possible to generate around 5 characters-long desired suffix on an average Core 7 CPU.

i'm sure there's a phishing tool for that


[e2e]: generic push main default slsa3

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/3326102920
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.push.main.default.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.push.main.default.slsa3.yml
Trigger: push
Branch: main
Date: Wed Oct 26 04:08:22 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/3334401624
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.push.main.default.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.push.main.default.slsa3.yml
Trigger: push
Branch: main
Date: Thu Oct 27 04:14:05 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/3366805253
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.push.main.default.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.push.main.default.slsa3.yml
Trigger: push
Branch: main
Date: Tue Nov  1 04:51:55 UTC 2022
Tests are passing now. Closing this issue.


Coat roughening convolution formula

Essentially, an improved version of the Standard Surface roughening formula. We need to suggest some approximation, as implementations need to account for this somehow. As discussed on Slack, thinking about the roughening as a convolution suggests an "as simple as possible" physically-based formula for the effect. I assume this is closer to the ground truth than the ad-hoc Standard-Surface formula, but verifying that would require more work.
See the interactive graphs here for the difference between the Standard Surface (green) and convolution (blue) formulas:  https://www.desmos.com/calculator/tvvzlmjqin

To be more clear, we should cross reference this formula in the dielectric and metal sections, to remind the reader to apply the roughening if the coat is present.

Using (rb^4+rc^4)^(1/4) has to be clamped at 1.0 for implementations that have a limit (as @peterkutz mentioned, for example because of tabulated energy compensation tables). So you get something like this:

If that discontinuity bothers you, the following formula is almost the same but is smooth everywhere:
(1-(1-rb^4)(1-rc^4))^(1/4)

I think the current wording in the spec is totally fine, no need to change it. Just pointing out an alternative that would be very close.
Depending on where we end up with respect to anisotropy for coat vs base, we may need to generalize the formula to operate on the 2x2 matrix of alpha values (haven't thought about exactly what the math should be, but its probably a similar kind of formula that would come back to @portsmouth's one in the isotropic case).

Nice suggestion and visualization @fpsunflower. It's nice that your modified formula produces very similar values across most of the domain while avoiding the discontinuity. It also meets all of the other requirements such as producing an output at least as large as the inputs.
In case it's easier to read or reason about, here's a different way of writing it:
\begin{equation}
r'\mathrm{B} = \bigl( r^4\mathrm{B} + r^4_\mathrm{C} \bigr - r^4_\mathrm{B} r^4_\mathrm{C})^\frac{1}{4}
\end{equation}

Thanks Chris, that's a nice formula. I plotted it here (where green is mine, dashed green is yours, blue is Standard Surface, red is max):
https://www.desmos.com/calculator/svkp9j7kwc

Your formula is very close to the original one, unless the base roughness is quite large. I think it would be fine to re-word the section to say, the convolution would give this result, but we suggest your modification to ensure the curve is close to that but smooth between the [0,1] endpoints.

In case it's easier to read or reason about, here's a different way of writing it:

$$
\left( r^4_\mathrm{B} + r^4_\mathrm{C} - r^4_\mathrm{B} \, r^4_\mathrm{C} \right)^4
$$
That has a somewhat nice similarity to the Standard Surface formula, which is the same but just removing the fourth powers:
$$
r_\mathrm{B} + r_\mathrm{C} - r_\mathrm{B} \, r_\mathrm{C}
$$

Depending on where we end up with respect to anisotropy for coat vs base, we may need to generalize the formula to operate on the 2x2 matrix of alpha values (haven't thought about exactly what the math should be, but its probably a similar kind of formula that would come back to @portsmouth's one in the isotropic case).

I posted a possible sketch of the math for that on Slack:

One thought for a more principled approach is to approximate the NDFs of coat and base as 2d Gaussians in slope space, say Gc, Gb  (with principle axes and std-devs given by the alphas and T, B for coat/base), which is the Beckmann model, then the roughened base could be taken to have the alphas of the Gaussian NDF given by their convolution Gc * Gb which is found (it turns out) by just adding the covariance matrices of coat and base. That would also take into account the anisotropy of coat or base.

Though I think the math for that is intimidating enough that it is too much for the spec. Ideally someone should investigate whether a scheme like that works, and verify with some Monte Carlo simulations.

The reality will obviously be more complex (the full BRDF of coat-on-base involving accounting for all possible scattering paths within the coat, and a term with the two NDFs being integrated together is just one lowest-order part of that.

Actually the NDF of the coat should presumably count more highly in the mix, since the ray has to pass through the coat boundary twice, even if only bounces once on the base surface..
So a more realistic formula might involve doubling the contribution variance of the coat, i.e.
$$
\left( r^4_\mathrm{B} + 2r^4_\mathrm{C} \right)^\frac{1}{4}
$$
Then the base roughness saturates to 1 at:
$$
r^*_\mathrm{C} = \Bigl( \frac{1 - r^4_B}{2} \Bigr)^\frac{1}{4}
$$
e.g. a smooth base becomes maximally rough at $r^_\mathrm{C}$ = 0.840, rather than at $r^_\mathrm{C}$ = 1.
If you do that, I'm not sure it makes sense to try to smoothen out the discontinuity.
https://www.desmos.com/calculator/a1zi3pjtib

Re-wording in  https://github.com/AcademySoftwareFoundation/OpenPBR/pull/172/commits/6c66e3b0251011e7e7fc253c1bebad3ad34f0e41

The MaterialX implementation of this is needed. (Just need to decide which formula..).

I tried rendering a model with a shiny metal base, covered by a coat with a textured roughness (driven by noise). The renders below show the result with both the formulas suggested above. This suggests at least that the difference between them is pretty negligible.

Approx formula
Accurate formula

I added a simple MaterialX implementation of the more realistic coat roughening formula as in Equation 55 from the spec shown above, replacing the old Standard Surface one.
The clamped version seems fine to use, and more principled than the approximate version of Equation 56 (which I removed from the spec text as well).

Current PR adds roughening as a short sub-section of the coat discussion:

Ready to merge.

This change looks good to me, @portsmouth, and I'm fine to merge this work once we've validated rendering of the updated implementation in MaterialX 1.39.

@portsmouth I addressed two very minor typos in the reference implementation, and I'm now getting successful renders of coated materials in the MaterialX Viewer:

One unusual behavior that I should call out, though, is that neither specular_roughness_anisotropy nor coat_roughness_anisotropy seem to have any visual effect on our open_pbr_carpaint.mtlx example.
If I set coat_weight to zero, then specular_roughness_anisotropy has the expected effect on the shape of specular highlights, but when coat_weight is set to one, neither of these anisotropy controls have any noticeable effect on the rendered output.
Could this be a bug in our reference implementation, or is this behavior actually expected given the latest OpenPBR specification?

Thanks for the typo fixes.
If I load the "car-paint" material, and dial the coat anisotropy, then indeed the anisotropy doesn't seem to show up (i.e. the sun reflection doesn't smear). But this just seems to be a case of what Zap was complaining about, i.e. when the coat roughness is zero, coat anisotropy doesn't do anything.. (i.e. the roughness stays at zero, in both directions).  That is by design, yes.
Also...  in this material, the specular and coat IORs are equal (!). So the specular lobe is not showing up at all. So that accounts for the specular anisotropy not showing up either.
If you make the roughness non-zero and the IORs differ, then you will see the effect of the anisotropy in both lobes.
If you think that's unintuitive, we can discuss in the meeting (but it's the behavior of the spec, correctly implemented, I think).
So anyway, I think the PR is good to go, as we've verified it now in MaterialX.

Got it, and I'm fine to merge this latest pull request, as the specification and reference implementation are aligned.  It's arguable that we can do a better job of making these behaviors intuitive, e.g. making sure there's always a visual impact associated with moving the anisotropy slider, but I'll leave that judgement to artists with more production experience.

Here is an example of the coat roughening behaving correctly (IMO), including anisotropy.
The coat and spec IORs are different.  The coat is slightly rougher than the spec. Both are highly anisotropic.
Without the coat (just the spec lobe, tight stretched highlight)

With the coat (highlight of coat and spec superimposed, coat highlight much broader).

This does show one defect of the roughening formula, in that the anisotropy of the base lobe is not affected. In fact, an isotropic rough coat should cause the base lobe to become less anisotropic. But we opted to neglect such anisotropy effects for now. (Later we could try to improve that though, for sure).

Another thing to note, is that the weird brightening around the edge of the lower image above, is the "TIR" artifact -- which shows up here because the coat IOR is higher than the spec.
So the spec lobe "thinks" that the rays are incoming from a higher IOR, so TIR occurs. Which is false, as the rays actually pass through the coat and bend, eliminating that TIR.
The PR https://github.com/AcademySoftwareFoundation/OpenPBR/pull/166 proposes a discussion of this with a suggested practical solution. I will attempt to fix this up in time for the meeting, to incorporate Peter's suggestions.


[Bug] condition update take affect when source data record is equal to the destination data record in the specified column

Steps to reproduce the behavior (Required)
mysql> CREATE TABLE IF NOT EXISTS detail_demo2 ( id   BIGINT,  pass  LARGEINT,  info  LARGEINT) ENGINE=OLAP PRIMARY KEY(id) DISTRIBUTED BY HASH(id) BUCKETS 1 PROPERTIES ("replication_num" = "1");
Query OK, 0 rows affected (0.24 sec)

mysql> insert into detail_demo2 values(1, 1, 1);
Query OK, 1 row affected (0.09 sec)
{'label':'insert_8944925b-a6b4-11ed-890a-02424283676b', 'status':'VISIBLE', 'txnId':'37021'}

mysql> insert into detail_demo2 values(2, 2, 2);
Query OK, 1 row affected (0.04 sec)
{'label':'insert_8c56663c-a6b4-11ed-890a-02424283676b', 'status':'VISIBLE', 'txnId':'37022'}

mysql> select * from detail_demo2;
+------+------+------+
| id   | pass | info |
+------+------+------+
|    1 | 1    | 1    |
|    2 | 2    | 2    |
+------+------+------+
2 rows in set (0.02 sec)

Prepare test.csv:
2,2,200

And execute condition update:
curl --location-trusted -u root: -H "column_separator:," -H "merge_condition:pass" -H "columns:id,pass,info" -T test.csv -XPUT http://<IP_ADDRESS>:8530/api/tt1/detail_demo2/_stream_load

mysql> select * from detail_demo2;
+------+------+------+
| id   | pass | info |
+------+------+------+
|    1 | 1    | 1    |
|    2 | 2    | 200  |
+------+------+------+

Expected behavior (Required)
In doc https://docs.starrocks.io/en-us/latest/loading/Load_to_Primary_Key_tables#conditional-updates , it says :
the update from a source record to a destination record takes effect only when the source data record has a larger value than the destination data record in the specified column.

StarRocks version (Required)

2.5.0

The behavior is ok, need to fix the doc.


turning parsed QueryDict values to list

Describe the bug
while using it in DRF, it will return QueryDict with values type of list only , it will append all values to an extra list and return it with an extra layer of list.
To Reproduce
for example:
here is the multipart/FormDate sent by client in browser using react native:
ticket_detail[0][description]: some lorem ipsum
title: current subject
department: general-department
and here is the parsed QueryDict :
<QueryDict: {'ticket_detail': [[{'description': 'some lorem ipsum'}]], 'title': ['current subject'], 'department': ['general-department']}>
as you can see it parse the "title: current subject" to "'title': ['current subject']" with value type of a list, which was expected to be str.
Screenshots

and thank you for your great work!

Hey, you have a options to not convert it to querydict, in settings.py :
DRF_NESTED_MULTIPART_PARSER = { 	"querydict": False }

Hey, you have a options to not convert it to querydict, in settings.py :
DRF_NESTED_MULTIPART_PARSER = { 	"querydict": False }
Related #7

thank you very much for your response


Reproduce input parameters of cbuildgen to create CMakeLists.txt

In order to split the process of CMakeLists.txt file creation and the actual build, I'm trying to hook into cbuild and cbuildgen.
Here is stated that

cbuild replicates the steps of pack-aware IDEs with the following build flow:

Call cbuildgen to generate a packlist with URLs of missing software packs. If packs are missing:
Call cpackget to download and install missing software packs.
Call cbuildgen to generate a CMakeLists.txt file.
Call CMake to compile the project source code into the binary image using the specified CMake generator.

So, I thought to reproduce the call to cbuildgen, just to create the CMakeLists.txt files which are needed by some linting tools. I don't need the whole build in that case.
An additional application would be the VSCode cmake-tools extension to quickly change build targets without lots of copy & paste.
What exactly does cbuild to? In the code I see that it modifies (creates?) RTE folders, but I can't find the place where cbuildgen or any other class methods from the folder are called.
Can you describe how the process works?
Thanks!

cbuildgen <context>.cprj cmake

should just generate the CMakeLists.txt which I think is what you are asking for.
The RTE update (generating the RTE_Components.h) should only be invoked if you call --update-rte.
What are you seeing?
In early versions of the tools we actually used a shell script rather than a go application.
https://github.com/Open-CMSIS-Pack/devtools/releases/download/tools%2Fbuildmgr%2F0.10.5/cbuild_install.sh
after installation you will find the cbuild.sh in the bin folder.
Maybe that helps?

@jankap was the above information useful?

@jankap was the above information useful?

Yes, it works, thank you.


refactor(rust): added serde default value

Added
default serde value for newly added config field default
OUTPUT:

Checks

[x] All commits in this Pull Request are signed and Verified by Github.
[x] All commits in this Pull Request follow the Ockam commit message convention.
[x] I accept the Ockam Community Code of Conduct.
[x] I have accepted the Ockam Contributor License Agreement by adding my Git/Github details in a row at the end of the CONTRIBUTORS.csv file in a separate pull request to the build-trust/ockam-contributors repository.

@michealkeines thank you, that looks great

Thank you for another awesome contribution! 🎉 🎊


ValueError: Failed to parse SNlM0e nonce value from the response. Refresh the Gemini web page or access Gemini in a new incognito browser to resend cookies.  If issue continues, export browser cookies, set manually. See auth section 3.

Hello Again I'm using GeminiClient = Gemini(auto_cookies=True)
But I got this error :
if len(getattr(self, "cookies", {})) > 5:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: object of type 'NoneType' has no len()

same

thanks, but a new problem occured.
ValueError                                Traceback (most recent call last)
Cell In[6], [line 2](vscode-notebook-cell:?execution_count=6&line=2)
      [1](vscode-notebook-cell:?execution_count=6&line=1) from gemini import Gemini
----> [2](vscode-notebook-cell:?execution_count=6&line=2) GeminiClient = Gemini(auto_cookies=True)
      [3](vscode-notebook-cell:?execution_count=6&line=3) # GeminiClient = Gemini(auto_cookies=True, target_cookies = ["__Secure-1PSID", "__Secure-1PSIDTS"]) # Can select cookies.
      [4](vscode-notebook-cell:?execution_count=6&line=4) response = GeminiClient.generate_content("Hello, Gemini. What's the weather like in Seoul today?")

File [c:\Users\user\anaconda3\envs\geminiapi\lib\site-packages\gemini\core.py:71](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:71), in Gemini.__init__(self, session, cookies, cookie_fp, auto_cookies, target_cookies, timeout, proxies)
     [69](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:69) self.proxies = proxies or {}
     [70](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:70) self.timeout = timeout
---> [71](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:71) self.session = session or self._initialize_session()
     [72](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:72) self.base_url: str = URLs.BASE_URL.value
     [73](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:73) self.parser = ResponseParser(cookies=self.cookies)

File [c:\Users\user\anaconda3\envs\geminiapi\lib\site-packages\gemini\core.py:114](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:114), in Gemini._initialize_session(self)
    [111](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:111) elif self.auto_cookies == True:
    [112](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:112)     self._set_cookies_automatically()
--> [114](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:114) self._set_sid_and_nonce()
    [116](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:116) return session

File [c:\Users\user\anaconda3\envs\geminiapi\lib\site-packages\gemini\core.py:162](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:162), in Gemini._set_sid_and_nonce(self)
    [160](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:160)     raise ConnectionError(f"Request failed: {e}")
    [161](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:161) except ValueError as e:
--> [162](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:162)     raise e  # Re-raise the exception after it's caught
...
    [160](file:///C:/Users/user/anaconda3/envs/geminiapi/lib/site-packages/gemini/core.py:160)     raise ConnectionError(f"Request failed: {e}")

ValueError: Failed to parse SNlM0e nonce value from the response.
Refresh the Gemini web page or access Gemini in a new incognito browser to resend cookies.
If issue continues, export browser cookies, set manually. See auth section 3.

Cookie behavior may vary based on location and Google account settings. Try cookies beyond the next set.
However, automated cookie collection requires further experimentation.
Even valid cookies may not work on different servers. Removing all accounts synced with Chrome and trying a new account is advised.
If the issue persists, refer to section 3 at Gemini API Authentication for instructions on re-entering cookie values. Note, even valid cookies may fail depending on the server, PC, or account sync status. Experiment with different approaches.

Firstly, try this codes as sequencially:
from gemini import Gemini

GeminiClient = Gemini(auto_cookies=True)

GeminiClient = Gemini(auto_cookies=True, target_cookies = ["__Secure-1PSIDCC"])

GeminiClient = Gemini(auto_cookies=True, target_cookies = ["__Secure-1PSID", "__Secure-1PSIDTS"])

GeminiClient = Gemini(auto_cookies=True, target_cookies = ["__Secure-1PSIDCC", " __Secure-1PSID", "__Secure-1PSIDTS", "NID"])

response = GeminiClient.generate_content("Hello, Gemini. What's the weather like in Seoul today?")
print(response.payload)

Thanks for your reply. I tried all the codes you provided, and even when I add cookies manaully, the error still exsits. I think it may have nothing to do with automated cookie collection.

versatile712
Realted this issue #14.
I have a cookie set that works on one laptop for nearly a month, but not on another, only returning empty responses. It might need more handling related to RotateCookie and exceptions, but I'm too busy with important schedules to spend much time on it.
Please share any solutions you find. I couldn't capture the nonce value with auto cookie but had no issues otherwise.
It might be necessary to reset all data through logins and logouts in different environments and properly define it using the ExportCookie extension.
Once I'm free, I plan to experiment with various accounts to find a solution.

@dsdanielpark
Hello! Is it possible to use the automatic collection option on a remote server without GUI?

Very thanks

Problem Fixed but new Problem is shown 😑🤣
ValueError: Failed to parse SNlM0e nonce value from the response.
Refresh the Gemini web page or access Gemini in a new incognito browser to resend cookies.
If issue continues, export browser cookies, set manually. See auth section 3.

Usercodersystem
This is what I plan to fix. I will check RotateCookie endpoint!
I have importanct interview tomorrow! I will fix that issue until next weekend.

OK very thanks for answering me:)

Is there an update on this yet? I am also having the same issue

I've got the same problem

rahulp7801, ilmal
Have you tried using all the cookies after resetting all account information in the browser (if necessary, log out and erase all information)?

Just tried it, the same err:
ValueError: Failed to parse SNlM0e nonce value from the response. Refresh the Gemini web page or access Gemini in a new incognito browser to resend cookies.  If issue continues, export browser cookies, set manually. See auth section 3.

@ilmal try another browser like Firefox or same

Same issue, Now i back to older version, it works smoothly

Thank you, pushed it back to v2.2.1 and now I get another err:
raise ValueError("All parsing strategies failed.")
ValueError: All parsing strategies failed.

I cant find an prev issue with this err, anyone know what causes this?
Also, thanks for all the help! :)

In fact, there's no significant change in the logic used across versions. However, I've also observed that the same cookies work on one laptop but not on another.
Thus, it might be beneficial to refresh and retry cookies in various environments.
To reiterate, once the entire cookie set is established, it tends to remain stable on a single PC for a long time.
galihmrd
Could you tell me what version you used?
ilmal
Hello,
There has been no change in the auth token collection algorithm between versions 2.4.2 and 2.4.1, though there might be changes in the parsing method.
You can check as follows:
There are four parsing methods, and version 2.4.2 tries various parsing approaches. Therefore, ensure that the payload received before parsing is correct.
from gemini import Gemini

cookies = {} # Cookies may vary by account or region. Consider sending the entire cookie file.
GeminiClient = Gemini(cookies=cookies) # You can use various args

response_text, response_status = GeminiClient.send_request("Hello, Gemini. What's the weather like in Seoul today?")
print(response_text)

Now I'm using version 2.2.1

Now I'm using version 2.2.1

Could you kindly try to use version 2.4.1?
On a same PC using same Cookies, using different enviroment (e.g., via conda env conda create -n temp)
Thank you!

I tried using another laptop with another browser, but still got the same problem. Not sure what I can do to force a cookie refresh.

ilmal

If you're using the Chrome browser, first log out of all accounts, including synced accounts, to prevent the browser from remembering any accounts.
Alternatively, download a completely new browser and try using an extension to export all cookies.
Lastly, create a new Google account, set the location to Ukraine or another country, then log in using a browser with no account information and export all cookies.

I recommend trying the third method with a new browser and suggest attempting it locally rather than on servers like Colab.

Hi, guys! ilmal, galihmrd, Usercodersystem, rahulp7801, OlegRuban-ai, versatile712
Sorry, It's my mistake.
I may fixed this issue. Try to use 2.4.2

As stated in the readme, it's essential to experiment in various environments to determine where target_cookies function effectively. However, in my case, providing the entire set of cookies when experimenting with accounts in Korea, Ukraine, and the USA via VPN proved to be effective. Therefore, I believe that providing the complete set of cookies works well.
Most of the errors seem to occur due to the inability to reset cookies remaining in the browser or the presence of other account information in Chrome, although I haven't been able to confirm this due to time constraints. Nonetheless, I strongly believe that resetting the browser and manually updating the cookie values are crucial. (Refer to the last advice about using a different browser if unsure.)

Firstly, regarding the issue with cookies, I have update "all" option in target_cookies arguments.
If you wish to experiment with the current cookie values, simply provide the desired cookie key values as arguments in the form of a 1D list to target_cookies.
target_cookies=["__Secure-1PSID", "__Secure-1PSIDTS"]
GeminiClient = Gemini(auto_cookies=True, target_cookies=target_cookies)

I have update "all" option of target_cookies variable in 3e41cedd23ec0cb874289fd7d75503d95001fc52
This will be released in 2.4.4, Thus you can install github version by using this command. (pip install git+https://github.com/dsdanielpark/Gemini-API.git)
GeminiClient = Gemini(auto_cookies=True, target_cookies="all")

Lastly, as you suggested, manually providing cookies is indeed crucial!
However, it's advisable to completely log out of the browser to forcefully reset the cookie values. If handling this aspect with Chrome poses difficulty, consider using alternative browsers like Firefox or Brave and try using the "Export Cookie" extension!
I strongly recommend exporting cookies through a browser other than Chrome.
After reinstalling the cookie values manually, please give it a try.
Once you succeed once, please remain hopeful!
Sincere gratitude for your consistent feedback!
Wishing you success.

Tried everything on this thread, still getting the issue:
Refresh the Gemini web page or access Gemini in a new incognito browser to resend cookies.
If issue continues, export browser cookies, set manually. See auth section 3.```

skills-up
Authentication issues are likely related to account or IP problems. Have you considered using a paid VPN or services like Crawbase, and have you tried passing all cookies?

I tried incognito mode, and even tor browser (despite its sluggishness). I've also passed all the cookies manually. Still the same issue persists.

Have you followed all the instructions in the authentication section?

If you have used it successfully before but encountered authentication issues:

There could be a temporary block from Google’s peer side, which may last a few hours to several days.

If you have never been able to use it properly:

You might not receive proper requests due to errors like 429 or CAPTCHAs.
While TOR or other browsers may not have cached cookies, making cookie collection straightforward, the code-level requests are likely still coming from your server or personal laptop’s IP. The Tor browser, despite having a browser-side VPN, does not mask your IP for REST formatted requests. Consider using a proxy server to bypass IP restrictions.

Due to the multitude of factor involved, I’m unable to provide package-level debugging. It’s possible that regional, account, or IP-based factors are affecting functionality.


Fix alignment for tiles and buttons on home page for docs

fixes #43147

You mean screenshot of the preview?

We can raise a separate issue for that

Pinging for confirmation @reylejano @sftim
Should a new issue be raised? or all the discussions and changes should be done in this PR?

/retitle Fixes alignment for tiles and buttons on home page for docs
I can't see why we would need a new issue.

As it stands, this PR does not appear to fix the misalignment.
.
It might still be useful but it's not really a fix for https://github.com/kubernetes/website/issues/43147

/retitle Fix alignment for tiles and buttons on home page for docs

@sftim
The issue mentioned to changes the places of the columns with one another I did the same. Can you pls highlight on what changes do you want here?

Ah OK, let me edit the issue and PR title to match the proposed solution.

/retitle Reorder docs home page tiles (fix alignment)

/lgtm
/approve


[Bug]: Clearing filter on the query editor causes suggested widget panel to collapse

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Clearing filter on the query editor causes suggested widget panel to collapse
Steps To Reproduce

Run any query on the query editor
Switch between tabs on the debugger and observe the suggested widget panel (snipping mode feature) stays in place
Clear filter on the logs tab and observe suggested widget panel collapses as seen in the video
Switch between debugger tabs again and the panel comes back

https://www.loom.com/share/4056e41d785f47a68009a837df4713de
Public Sample App
No response
Version
Cloud

not able to reproduce this anymore


adding parrallel for loop

i didn't change any logic, and tried to write it in the most clearer way
let me know if there are any issues , i can change it again
Maor

@maorn great!!
i will try it on my machine today or tomorrow.

@maorn this is looking great.
i added a few questions.
Also i think it would be useful to add a n_jobs=... argument to the GAM constructor. And when n_jobs==1 we should avoid running any parallelism. here is my reasonning:

i've read a few problems with multiprocessing on OSX ('fork' vs 'spawn', ...)
we can use this to benchmark the speeds of parallel execution vs serial execution. in my own experiments i keep running into the typical case where parallelism doesnt help because numpy already performs some parallelism on basic linear algebra operations.

also keeping a note here for later use

intel recommendations
dask backend

Also i think it would be useful to add a n_jobs=... argument to the GAM constructor. And when n_jobs==1 we should avoid running any parallelism
Maor: this is a good idea , i used it my code, i didn't want to change it in your code ( i usually use 1.5*cpu_count() to keep my machine on 100% CPU).
please notice that in case of n_jobs=1 you may want to run the function directly (avoid the Pool code) since running it with 1 will still activate the multi process with one process (hence no time will be saved).

@maorn thanks very much for the code and the explanations. this is super helpful.
I have one last question:
what is the speedup required for us to use parallel code?
for example if this parallelism boosted speeds by 4x then we would probably like to use it.
but what if we only see a speed increase of 1%?
then is it worth it? i think it becomes a more difficult to decide whether we want to maintain (improve, fix, debug, etc) additional functionality.
anyways... just something ive been thinkin about.
i still need to do a speed test.
did you do one?

i haven't done a speed test yet,do you run any profiling tools on this code?
i would start by running profiler and then checking which code should be improved (or converted into parallel execution)
i will try to run parallel test later this week

@maorn here are some small profiling experiments i tried
https://github.com/dswah/pyGAM/issues/190


[SPARK-41708][SQL][FOLLOWUP]  Override toString method of FileIndex

What changes were proposed in this pull request?
The main change of this pr is to fix suggestions of https://github.com/apache/spark/pull/39598#discussion_r1071213911:

revert the change of https://github.com/apache/spark/pull/39598
override toString method of FileIndex to print className with rootPaths
change the replacement rule of SQLQueryTestHelper#replaceNotIncludedMsg method for file://xxx/clsName/ path to replace one by one instead of replacing the longest match

Why are the changes needed?
Fix suggestions of https://github.com/apache/spark/pull/39598#discussion_r1071213911
Does this PR introduce any user-facing change?
No
How was this patch tested?

Pass GitHub Actions
Manually  test build/sbt "sql/testOnly org.apache.spark.sql.SQLQueryTestSuite" -Pscala-2.13 , run successful

Merged to master.


handle retrofit errors similar to feign errors fixes #116

@uschi2000

@eshlin

very nice. just to confirm: this doesn't break any compatibility, right?

awesome - looks great. thanks for implementing. +1

ping

made util instead of enum
there's no backcompat break

build broken, otherwise +1

@uschi2000 build isn't broken? can you merge?


Add hacktoberfest and wiremock GitHub topics

Hi @beltram I would appreciate it if you could add the hacktoberfest and wiremock topis to the repository. I have no permission to do that. As agreed, I will take care of triage

Done 👍🏼


fix: Add pending operators and fix === and !==

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


how to get values not it the html tag eg.span tag

    I have an issue where the value I want to get isn't in the span tag but beside it

    Published By <a<EMAIL_ADDRESS>University Relations Directorate |                                    Monday October 3, 2022  |    2:27 pm
how do I go about writing it
Originally posted by @davidAg9 in https://github.com/PuerkitoBio/goquery/issues/298#issuecomment-1306141148

Hello David,
You can see an example of how to get that here: https://github.com/PuerkitoBio/goquery/issues/287#issuecomment-471043149
Basically, what you can do is get the parent node via a selector, and then iterate over the selection returned by Contents() (as it is the only one that selects not only HTML elements but all types of nodes, like text and comments) and look for the text nodes to extract the text. What you have there is somewhat weird HTML (in the sense that usually, the spans are there to hold some text, but here it is empty - though with CSS class - and the text is in-between), but anyway sometimes we have to work with broken HTML so that may be your case.
For example:
const data = `

		 Published By <a<EMAIL_ADDRESS>University Relations Directorate |   Monday October 3, 2022 |  2:27 pm

`

func main() {
	doc, err := goquery.NewDocumentFromReader(strings.NewReader(data))
	if err != nil {
		log.Fatal(err)
	}

	doc.Find("p").Contents().Each(func(i int, s *goquery.Selection) {
		if goquery.NodeName(s) == "#text" {
			fmt.Printf(">>> (%d) >>> %s\n", i, s.Text())
		}
	})
}

This would print (note that it doesn't get the "University Relations Directorate" as it is not a "free text" element, it is text inside the  element):
>>> (0) >>>

>>> (2) >>>  Published By
>>> (4) >>>  |
>>> (6) >>>  Monday October 3, 2022 |
>>> (8) >>>  2:27 pm

Hope this helps!
Martin

Thanks you very much


ADR draft: product image versioning

Based on the discussion from today's architecture review meeting.

I think it's worth looking at what others are doing in this regard. Google's Spark operator for example, provides a clear version matrix: https://github.com/GoogleCloudPlatform/spark-on-k8s-operator

Looks reasonable to me. Might want to change title of one of them, and add the product image one to the nav toc.


Update Makefile

This isn't passing precheck. We should check why

Ok this is due to changes in PDK make targets.


Support toolchain with optimization levels included in multilib configurations

As a way to provide both space and speed optimized versions of every library provided by a toolchain, one option I'm exploring is adding optimization level to the existing multilib infrastructure. With this, specifying -Os during the linking phase will cause the compiler driver to adjust the link path to point at a directory containing libraries also build with -Os.
To make this work in Zephyr, a couple of changes are required:

CMAKE_C_FLAGS_${CMAKE_BUILD_TYPE} must match  ${OPTIMIZATION_FLAG}. That's because multi-lib semantics are different from how optimization flags are otherwise used. The multi-lib matcher only looks for the presence of the -Os flag; further -O2 or -O3 flags later in the command line have no impact. As a result, when you set CMAKE_BUILD_TYPE to MinSizeRel and CMAKE_C_FLAGS_MINSIZEREL contains '-Os', that drives the multi-lib code to select the space optimized libraries.
Library paths generated by the compiler now depend on the optimization level. That affects the computation of gcc's LIBC_LIBRARY_DIR and LIBGCC_DIR variables. Neither of these is needed to locate any libraries; the compiler driver will already look for those in the correct multi-lib directory anyways, so I've removed their default computations. However, there is one case where LIBGCC_DIR is used to fine object files: crtbegin.o and crtend.o. I've created a function, compiler_file_name which uses the gcc --print-file-name option to search for those files. Because those file names are needed well after OPTIMIZATION_FLAG is set, we can add that to the gcc command line and have it perform the full multi-lib search for us.

With these changes, I've got -Os and -O2 tests for at least a few cases working using locally-built SDK toolchains that include the necessary changes.
Size:
$ west build -b qemu_cortex_m3 samples/hello_world -- -DCONFIG_SIZE_OPTIMIZATIONS=y
...
Memory region         Used Size  Region Size  %age Used
           FLASH:        8122 B       256 KB      3.10%
             RAM:          4 KB        64 KB      6.25%
        IDT_LIST:          0 GB        32 KB      0.00%

Speed:
$ west build -b qemu_cortex_m3 samples/hello_world -- -DCONFIG_SPEED_OPTIMIZATIONS=y
...
Memory region         Used Size  Region Size  %age Used
           FLASH:        9350 B       256 KB      3.57%
             RAM:          4 KB        64 KB      6.25%
        IDT_LIST:          0 GB        32 KB      0.00%

Note that this extends to all toolchain-provided libraries, including newlib and libstdc++.

I mean, sure, better to have a fast memcpy() than not (and, OK, picolibc looked to be benching a bit behind our own built-in and newlib). But really we shouldn't have been calling libc at all in that case and eating complexity here may not be as good a tradeoff as it sounds (though this doesn't look so bad at all).

Picolibc is providing the size-optimized version by default while newlib is build with speed optimizations turned on. We could always hack up the picolibc code to always provide speed-optimized copy code; it already has the fast-strcmp option which was added to make Dhrystone results better (ick).

We could always hack up the picolibc code to always provide speed-optimized copy code

That actually sounds like it might be the best default to me if the rig is there to change the optimizations on per-module levels.  Really just mem{cpy,move,set}() would surely be all that Zephyr cares about (we make very sparing use of the string library).

We could always hack up the picolibc code to always provide speed-optimized copy code

That actually sounds like it might be the best default to me if the rig is there to change the optimizations on per-module levels. Really just mem{cpy,move,set}() would surely be all that Zephyr cares about (we make very sparing use of the string library).

Getting the toolchain libraries all built with -Os means we also get -Os versions of libgcc and libstdc++. The latter is probably of interest to anyone using C++ in their apps where space is an issue (hard for me to imagine, but?).
And, of course, applications using more of the C library than core Zephyr might have a deeper interest in the space/speed tradeoff here.
I just don't know; using the multilib stuff to enable this feature seems like a modest change, instead of having a wealth of per-API configuration bits? I assume we wouldn't always want speed-optimized memcpy?


Wrong timer function resulting in regular charging stop

Describe the bug
Charging process in interrupted with period of timer "enable: delay: 3m" in evcc.yaml. Ot starts again and the cycle repeats until the car is disconnected or refuses to start over again.
Tha charging mode does not affect the behavior. Tested in "Solar" and in "Fast". Also the current PV power generation does not influence the charging interruption.
The timer  counting down during charging in "Solar" mode is on enclosed screenshot as well as time plot of charging power with visible interuptions.
The observed behavior is after the update to v0.116.0. Older versions not affected.

Steps to reproduce

Connect the car.
Set the charging mode.
Car is then charging with interuptions.
...

Configuration details
network:
  # schema is the HTTP schema
  # setting to `https` does not enable https, it only changes the way URLs are generated
  schema: http
  # host is the hostname or IP address
  # if the host name contains a `.local` suffix, the name will be announced on MDNS
  # docker: MDNS announcements don't work. host must be set to the docker host's name.
  host: evcc.local
  # port is the listening port for UI and api
  # evcc will listen on all available interfaces
  port: 7070

interval: 10s # control cycle interval

# sponsor token enables optional features (request at https://cloud.evcc.io)
# sponsortoken:

# log settings
log: info
levels:
  site: debug
  lp-1: debug
  lp-2: debug

# meter definitions
# name can be freely chosen and is used as reference when assigning meters to site and loadpoints
# for documentation see https://docs.evcc.io/docs/devices/meters
meters:
  - type: custom
    name: grid
    power:
      source: mqtt
      topic: evcc/tometers/grid
      timeout: 30s
      scale: -1

  - type: custom
    name: pv
    power:
      source: mqtt
      topic: evcc/tometers/pv
      timeout: 30s
      scale: 1

  - type: custom
    name: battery
    power:
      source: mqtt
      topic: evcc/tometers/battery
      timeout: 30s
      scale: 1
    soc:
      source: mqtt
      topic: evcc/tometers/batterysoc
      timeout: 30s
      scale: 1

# charger definitions
# name can be freely chosen and is used as reference when assigning charger to vehicle
# for documentation see https://docs.evcc.io/docs/devices/chargers
chargers:
  - name: Pravy_WB
    type: template
    template: alfen
    # Modbus TCP
    modbus: tcpip
    id: 1
    host: <IP_ADDRESS> # Hostname
    port: 502 # Port

  - name: Levy_WB
    type: template
    template: alfen
    # Modbus TCP
    modbus: tcpip
    id: 1
    host: <IP_ADDRESS> # Hostname
    port: 502 # Port

vehicles:
  - name: E-C4
    type: template
    template: citroen
    title: E-C4 # Wird in der Benutzeroberfläche angezeigt # Optional
    user<EMAIL_ADDRESS># Benutzerkonto (bspw. E-Mail Adresse, User Id, etc.)
    password: xxxxx # Passwort des Benutzerkontos (bei führenden Nullen bitte in einfache Hochkommata setzen)
    vin: xxxx # Erforderlich, wenn mehrere Fahrzeuge des Herstellers vorhanden sind # Optional
    capacity: 50 # Akku-Kapazität in kWh # Optional

# site describes the EVU connection, PV and home battery
site:
  title: Domov # display name for UI
  meters:
    grid: grid # grid meter
    pvs:
      - pv # list of pv inverters/ meters
    battery: battery # battery meter
  prioritySoC: 65 # give home battery priority up to this soc (empty to disable)
  bufferSoC: 95 # ignore home battery discharge above soc (empty to disable)
  residualPower: 100

# loadpoint describes the charger, charge meter and connected vehicle
loadpoints:

  - title: Levé stání # display name for UI
    charger: Levy_WB # charger
    mode: "pv" # set default charge mode, use "off" to disable by default if charger is publicly available
    vehicle: # set default vehicle (disables vehicle detection)
    resetOnDisconnect: true # set defaults when vehicle disconnects
    soc:
      # polling defines usage of the vehicle APIs
      # Modifying the default settings it NOT recommended. It MAY deplete your vehicle's battery
      # or lead to vehicle manufacturer banning you from API use. USE AT YOUR OWN RISK.
      poll:
        # poll mode defines under which condition the vehicle API is called:
        #   charging: update vehicle ONLY when charging (this is the recommended default)
        #   connected: update vehicle when connected (not only charging), interval defines how often
        #   always: always update vehicle regardless of connection state, interval defines how often (only supported for single vehicle)
        mode: connected
        # poll interval defines how often the vehicle API may be polled if NOT charging
        interval: 90m
      min: 0 # immediately charge to 0% regardless of mode unless "off" (disabled)
      target: 90 # always charge to 100%
      estimate: true # set false to disable interpolating between api updates (not recommended)
    phases: 0 # electrical connection (normal charger: default 3 for 3 phase, 1p3p charger: 0 for "auto" or 1/3 for fixed phases)
    enable: # pv mode enable behavior
      delay: 3m # threshold must be exceeded for this long
      threshold: -0 # grid power threshold (in Watts, negative=export). If zero, export must exceed minimum charge power to enable
    disable: # pv mode disable behavior
      delay: 5m # threshold must be exceeded for this long
      threshold: 0 # maximum import power (W)
    guardDuration: 10m # switch charger contactor not more often than this (default 5m)
    minCurrent: 6 # minimum charge current (default 6A)
    maxCurrent: 14 # maximum charge current (default 16A)

  - title: Pravé stání # display name for UI
    charger: Pravy_WB # charger
    mode: "pv" # set default charge mode, use "off" to disable by default if charger is publicly available
    vehicle: E-C4 # set default vehicle (disables vehicle detection)
    resetOnDisconnect: true # set defaults when vehicle disconnects
    soc:
      # polling defines usage of the vehicle APIs
      # Modifying the default settings it NOT recommended. It MAY deplete your vehicle's battery
      # or lead to vehicle manufacturer banning you from API use. USE AT YOUR OWN RISK.
      poll:
        # poll mode defines under which condition the vehicle API is called:
        #   charging: update vehicle ONLY when charging (this is the recommended default)
        #   connected: update vehicle when connected (not only charging), interval defines how often
        #   always: always update vehicle regardless of connection state, interval defines how often (only supported for single vehicle)
        mode: connected
        # poll interval defines how often the vehicle API may be polled if NOT charging
        interval: 90m
      min: 0 # immediately charge to 0% regardless of mode unless "off" (disabled)
      target: 90 # always charge to 100%
      estimate: true # set false to disable interpolating between api updates (not recommended)
    phases: 0 # electrical connection (normal charger: default 3 for 3 phase, 1p3p charger: 0 for "auto" or 1/3 for fixed phases)
    enable: # pv mode enable behavior
      delay: 3m # threshold must be exceeded for this long
      threshold: 0 # grid power threshold (in Watts, negative=export). If zero, export must exceed minimum charge power to enable
    disable: # pv mode disable behavior
      delay: 5m # threshold must be exceeded for this long
      threshold: 0 # maximum import power (W)
    guardDuration: 10m # switch charger contactor not more often than this (default 5m)
    minCurrent: 6 # minimum charge current (default 6A)
    maxCurrent: 14 # maximum charge current (default 16A)

Log details
How to acces the log when evcc is runing under HAOS as a addon?

What type of operating system are you running?
Linux
Version
No response

@tafx you can lower your kw capacity for your car a little bit (5%) because it is used for calculqtion and see if it helps as a workaround.

@Hofyyy @andig
So I observed the log and found out that evcc is restarting after 3 mins that is causing the interuption.
Here is the part of the log but is not perfect as I am pasting it from Home Assistant addon window.
EVCC log.txt

Your short log has 3 restarts of evcc for unknown reason


exclude Handlebars.SafeString from escaping

this implementation is handlebars-specific.

in case developers explicitly marked an input as safe, we will honor the setting and avoid applying any escaping to it.
for unsupported output expression contexts such as inside

CLA is valid!

alright. the implementation of the filters are consistent with the implementation of handlebars.


New sample script: Create custom views to differentiate SharePoint news page types in Site Pages library

Docs

Author
João Ferreira

Original Post
How to effectively manage SharePoint news

Description
Create custom views to differentiate News types in Site Pages library

Keywords
SharePoint

@rabwill - I would like to contribute towards this and @sprider will guide/mentor me as i am a first time contributor . Kindly, assign this to me.

Hi @yeshwanthjagannath all yours! We don't assign anyone to an issue before their first contribution is in but you are more than welcome to pick this up 😊 . Thank you!

Hi @rabwill - Thank you, i have registered for the first time contribution session today, so should have that covered :)

@rabwill - Post analysis, figured we will need an add view cmdlet in the CLI, therefore, will resume working on this once issue #1834  is completed, since this cmdlet would have to be a pre-requisite for this script to be developed.

removing the on hold as the related issue was done 💪 and we could start working on this sample
@yeshwanthjagannath are you maybe still interested in this one ?

Can I work on this?

@nanddeepn the stage is yours 👍


Support for packit instance configuration

This will allow users to specify packit instances (=deployments) that will work on the configured jobs.
Nothing will change for the current users of the production instance, but the stage application will stop reacting to the stage jobs. And users need to specify that explicitly. => Do we want to start with some warning? Create an issue? Or, just fix that manually? (Note that not doing the filtering stops us from using stage instance for downstream.)
Next steps (after merging):

[ ] update our projects to react to stage instances
[ ] set up a stage FAS identity that will use prod Fedora instances (We can specify, which instance will handle what.)
[ ] document the option

Requires: packit/packit#1531
RELEASE NOTES BEGIN
There is a new packit_instances key that you can use to specify the Packit instances you want to use for working on your jobs.
Nothing will change for our production users, but users of our stage instance need to use this key to preserve the support of the stage instance -- they can set both stg and prod in the packit_instances list to use both, or use just one. Just be careful with the downstream jobs where both instances work with the same services. This new option works like other Packit options so you can set it on the top level and/or (re)define it on the job level. More information about our staging instance can be found here: https://github.com/packit/packit/discussions/1530
RELEASE NOTES END

recheck

recheck


Updated ssh configuration in base Dockerfile

The pull request addresses only one issue

Won't allow ssh into the container as 'without-password' is now replaced with 'prohibit-password' in Xenial.

Is there a JIRA ticket for this PR?

The Dockerfile has been fully rewritten since this PR. @techmaniack is there additional functionality still needed or can this PR be closed?

+1 to close this

@greghogan +1 to close


Update to prost 0.10 and tonic 0.7

Description
Rolls up a bunch of dependency updates and code regeneration for the gRPC/protobuf stack.

PR author checklist:

[ ] Added changelog entry, using unclog.
[ ] Added tests: integration (for Hermes) or unit/mock tests (for modules).
[ ] Linked to GitHub issue.
[ ] Updated code comments and documentation (e.g., docs/).

Reviewer checklist:

[ ] Reviewed Files changed in the GitHub PR explorer.
[ ] Manually tested (in case integration/unit/mock tests are absent).

Like #2100, this is blocked by https://github.com/confio/ics23/pull/84


Upgrade to LaxarJS v2

Widget should be upgraded for LaxarJS v2 compatibility.
This does not encompass de-Angularization.

Breaking: layout feature will be removed

Implemented on master (v4.0.0).
BREAKING CHANGE
The laxar-popup-widget (previously aka ax-popup-widget) was upgraded to LaxarJS v2. As an AngularJS v1 widget, it now requires the laxar-angular-adapter.
The widget should now be installed using npm.
Since with LaxarJS the possibility to load a layout within a widget was removed, the according feature content.layout also had to be removed. As a replacement it is now possible to configure the name of an area that is provided by the widget. The feature is area.name with "content" as default value.
If a specific layout is needed within that area, simply use the embedded layout mechanism for pages.


[KYUUBI #2184] Manage test failures with kyuubi spark nightly build - operation listener *** FAILED ***

Why are the changes needed?
Test failures - operation listener *** FAILED ***
https://github.com/apache/incubator-kyuubi/issues/2184
Scheduler pool *** FAILED ***
#2185
How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[x] Run test locally before make a pull request

#2185 This pr can also solve this issue

Codecov Report

Merging #2190 (a7f5842) into master (db98799) will decrease coverage by 0.00%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #2190      +/-   ##
============================================
- Coverage     61.50%   61.49%   -0.01%
+ Complexity      124       69      -55
============================================
  Files           325      329       +4
  Lines         15598    15718     +120
  Branches       1999     2008       +9
============================================
+ Hits           9593     9666      +73
- Misses         5190     5233      +43
- Partials        815      819       +4

Impacted Files
Coverage Δ

.../apache/kyuubi/client/KyuubiSyncThriftClient.scala
85.27% <0.00%> (-5.64%)
:arrow_down:

...engine/trino/operation/TrinoOperationManager.scala
90.47% <0.00%> (-4.53%)
:arrow_down:

.../org/apache/kyuubi/engine/hive/HiveSQLEngine.scala
75.00% <0.00%> (-2.78%)
:arrow_down:

...ache/kyuubi/engine/flink/FlinkProcessBuilder.scala
71.95% <0.00%> (-2.74%)
:arrow_down:

...ain/scala/org/apache/kyuubi/engine/EngineRef.scala
82.52% <0.00%> (-2.63%)
:arrow_down:

...ine/flink/operation/FlinkSQLOperationManager.scala
87.17% <0.00%> (-2.30%)
:arrow_down:

...mon/src/main/scala/org/apache/kyuubi/Logging.scala
39.72% <0.00%> (-1.37%)
:arrow_down:

...apache/kyuubi/server/api/v1/SessionsResource.scala
67.52% <0.00%> (-0.71%)
:arrow_down:

...a/org/apache/kyuubi/metrics/MetricsConstants.scala
100.00% <0.00%> (ø)

...org/apache/kyuubi/operation/OperationManager.scala
90.32% <0.00%> (ø)

... and 14 more

Continue to review full report at Codecov.

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

thanks, merged to master


ERROR: Unknown format code 'b' for object of type 'str'

Description:
"ykman info" command results in error "ERROR: Unknown format code 'b' for object of type 'str'"
$ ykman info
Device type: YubiKey 5 NFC
Serial number: xxxxxxxx
Firmware version: 5.2.4
Form factor: Keychain (USB-A)
Enabled USB interfaces: OTP, FIDO, CCID
NFC transport is enabled

ERROR: Unknown format code 'b' for object of type 'str'

Environment:
$ uname -a
Linux sbtpkub 6.8.0-36-generic #36-Ubuntu SMP PREEMPT_DYNAMIC Mon Jun 10 10:49:14 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

$ ykman --version
YubiKey Manager (ykman) version: 5.5.0

$ snap list | grep ykman
ykman                        5.5.0                       9      latest/stable    aoilinux        -

Thank you for report problems.
Revert to version 5.4.0 now for stable channel.
Will look into it.

Seems like a upstream problem, i've tested on ubuntu 22.04 vm and encountered same results.
Already filed a issue in upstream repo.

https://github.com/Yubico/yubikey-manager/issues/619#issuecomment-2199528455
Confirmed by upstream. Waitting for fix.

Version 5.5.1 fixed.


Prepopulate with filter values

This is meant to take advantage of association filters once implemented as discussed in the this thread.
Allowing new entries created through the Association UI to pre-populate the filtered fields using the provided values.

@jonmifsud Could this be turned on/off ?

At the moment no, I was assuming if you're filtering a 'create new' button you'd want any entries created from that create new button to be pre-populated with the required values.
If I want Articles from the "News" section creating a new one should pre-fill that field with news. But if you think it makes sense to be optional we just have to see where's best to store the 'prefill / no-prefill' information. I'm thinking with the filtering options which have been added to the core PR would be the most appropriate place. but open to suggestions.

you'd want any entries created from that create new button to be pre-populated with the required values.

I do no think so...
I totally understand your point and it is valid. But I sometimes deal with clients that are not super tech savvy and this would confuse them...

Understand your point too. Would you think this should be a site-wide or a field setting?

Would you think this should be a site-wide or a field setting?

Thought question. I think I would rather see it at a section level (just like filtering).

I'm not up-to-date with the Symphony core development: is this ready to be pulled or does the code still need to be reviewed and adjusted?

@jonmifsud needs to add a setting for this.


SOAPUI crashes as soon as we run Testsuite

SOAPUI crashes as soon as we run Testsuite
SOAPUI version 5.7.0

@findmanish  : Can you please share more details about the issue. Share me the logs. I checked it on my machine and I am not facing any issue with TestSuite level execution. Please follow below setups.

Go to SOAPUI installation directory and open cmd.
Navigate to folder BIN
In cmd, type soapui.bat.
This will open SOAPUI, trigger the TestSuite.
Go back to CMD window and share the screenshot of the exception.

Closing this thread as no information received to debug the issue.


My second revup foo

Topic: foo2
Relative: foo

#
head
base
diff
date
summary

0
36d377b6
22ac5a78
diff
Dec 21 22:07 PM
1 file changed, 1 insertion(+)

Reviews in this chain:
└https://github.com/john-oneill-skydio/revup-sandbox/pull/1 My first revup foo
　└https://github.com/john-oneill-skydio/revup-sandbox/pull/3 My second revup foo


chore: Add dependabot configuration

Feature or Problem
Helps keep dependencies up-to-date.
I defaulted to daily for the interval, but I could see this being something that also gets scheduled for weekly cadence, maybe first thing on Monday morning?
Related Issues

Release Information

Consumer Impact

Testing

Unit Test(s)

Acceptance or Integration

Manual Verification

I'm good with this, I think I would prefer weekly just to have a batch on Monday but we can always change either way 😄

Weekly it is!


Removing references to LEVELDB_ENVIRONMENT_PLUGIN.

Removing these references in order to clean up and allow the plugin to be used on all platforms.

Didn't make it in time to approve, but nice! We shouldn't leak those kinds of details in OSS libraries


AutoEncoder to Transform Norm Data

Add model to do auto encoder and then transform norm input by using auto encoder.

Logic can be,
Norm call train to train a encoder model and then apply new model to norm output data.

In the future, de-noising auto encoder can also be added.


chore: update analytics-provider-segment wrapper

Description
Which issue(s) does this PR fix

Fixes:  https://issues.redhat.com/browse/RHIDP-4849

PR acceptance criteria
Please make sure that the following steps are complete:

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

How to test changes / Special notes to the reviewer

Will rebase again after https://github.com/janus-idp/backstage-showcase/pull/1908 is merged


BIGIP to version 16.1 in GWLB solution, readme files updates

It doesnt matter, but should there be a standard on the example throughput sizes?


Escape quotes in formatter IR display

Summary
The use of quotes inside of strings currently breaks the code highlighting in the playground.
This PR escapes " when printing the formatter IR and adds support for string escape sequences to all grammars in the playground.

Test Plan

Current dependencies on/for this PR:

main

PR #5906   👈

This comment was auto-generated by Graphite.


S3EncryptionClient not picking up access/secret key and region of the wrapped S3Client object

Problem:
My code is roughly
    val s3ClientObject =
      S3Client
        .builder()
        .credentialsProvider(
              StaticCredentialsProvider.create(
                AwsBasicCredentials.create(
                  spec.accessKey.get,
                  getSecretKey(metadataEncryptionUtils)
                )
              )
        )
       .region(REGION.US_EAST_1)

The above builder object works fine, i am able to create bucket / upload data etc.
Now when I use S3EncryptionClient by wrapping above such as
    val encObject =
      S3EncryptionClient
        .builder()
        .rsaKeyPair(userKeys)
        .enableLegacyUnauthenticatedModes(true)
        .enableLegacyWrappingAlgorithms(true)
        .wrappedClient(s3ClientObject)
        .build()

Instantiation of above fails
Unable to load region from any of the providers in the chain software.amazon.awssdk.regions.providers.DefaultAwsRegionProviderChain@4917a741: [software.amazon.awssdk.regions.providers.SystemSettingsRegionProvider@4d05b931: Unable to load region from system settings. Region must be specified either via environment variable (AWS_REGION) or  system property (aws.region)., software.amazon.awssdk.regions.providers.AwsProfileRegionProvider@5cffd11d: No region provided in profile: default, software.amazon.awssdk.regions.providers.InstanceProfileRegionProvider@7dae9ff4: Unable to contact EC2 metadata service.]

If I specify an AWS region manually such as
System.setProperty("aws.region", "us-east-1")
val encObject =
      S3EncryptionClient
      ......

It then fails with error
Failed to upload file aws_legacy_cse_upload_file to bucket xxxxxxxxxxxxxxxxx with key xxxxxxxxxx-v2: software.amazon.awssdk.core.exception.SdkClientException: Unable to load credentials from any of the providers in the chain AwsCredentialsProviderChain(credentialsProviders=[SystemPropertyCredentialsProvider(), EnvironmentVariableCredentialsProvider(), WebIdentityTokenCredentialsProvider(), ProfileCredentialsProvider(profileName=default, profileFile=ProfileFile(profilesAndSectionsMap=[])), ContainerCredentialsProvider(), InstanceProfileCredentialsProvider()]) : [SystemPropertyCredentialsProvider(): Unable to load credentials from system settings. Access key must be specified either via environment variable (AWS_ACCESS_KEY_ID) or system property (aws.accessKeyId)., EnvironmentVariableCredentialsProvider(): Unable to load credentials from system settings. Access key must be specified either via environment variable (AWS_ACCESS_KEY_ID) or system property (aws.accessKeyId)., WebIdentityTokenCredentialsProvider(): Either the environment variable AWS_WEB_IDENTITY_TOKEN_FILE or the javaproperty aws.webIdentityTokenFile must be set., ProfileCredentialsProvider(profileName=default, profileFile=ProfileFile(profilesAndSectionsMap=[])): Profile file contained no credentials for profile 'default': ProfileFile(profilesAndSectionsMap=[]), ContainerCredentialsProvider(): Cannot fetch credentials from container - neither AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI environment variables are set., InstanceProfileCredentialsProvider(): Failed to load credentials from IMDS.]

Basically, the S3EncryptionClient is NOT picking up the credentials, region anything from the base S3Client.
Solution:
Make S3EncryptionClient use the wrapped clients.

Hello Sid, thanks for reaching out.
If you're using the non-async S3EncryptionClient, you need will need to pass a configured S3AsyncClient into the S3EncryptionClient as well, like so:
    val encObject =
      S3EncryptionClient
        .builder()
        .rsaKeyPair(userKeys)
        .enableLegacyUnauthenticatedModes(true)
        .enableLegacyWrappingAlgorithms(true)
        .wrappedClient(s3ClientObject)
        .wrappedAsyncClient(s3AsyncClientObject)
        .build()

See https://github.com/aws/amazon-s3-encryption-client-java/issues/226 for a feature request which consolidates client configuration.
Feel free to reach out again if you still have issues, thanks!


Avoid stealing focus on mouse hover if focus owner is a text field

Using many cast_to for both LineEdit and TextEdit looked ugly so I added a text_field (could be named retain_focus instead?) member flag to Control. It should make it simpler if adding new text field like controls later. Closes #2473
There may be a better way to do this, if you don't want that new variable in Control.

Thanks! I ended up implementing this from my side with a little different code (used a virtual function instead to not have to add a bool to every control), but it works fine!


Added a third example

Thanks Jack, but your site isn't really demonstrating anything with instafeed.js that the existing examples don't already. Plus, seeing as it's your own portfolio, this could be misconstrued as you just trying to add a free plug for your site 😉.

That is fine benjamin-hull. Just as an example for the future but it is understandable. 😉


Updating grav core deletes backups

If grav/backup contains some backup.zip files, then by updating grav core this folder gets cleared.

Replicated. Upgrading Grav probably shouldn't touch the backups folder

This is now fixed. Was an issue with our builder not excluding the backup folder, ever since we forced the folder presence in the repository via .gitkeep.
I also updated the update package for v0.9.37 without the backup folder in it.


Update deps.

The big change here is upgrading to webpack@5.  Along with it all other dependencies were upgraded.
Due to some webpackisms, the former code to split files out into js/, css/, and images/ was failing to work in production mode.  That was just disabled and the tools now put everything in one directory.  It's not as pretty (IMHO), but should work fine for almost every use case.
Note this is similar to @aljones15 work in https://github.com/digitalbazaar/bedrock-webpack/tree/use-webpack-v5.

Updated in https://github.com/digitalbazaar/bedrock-webpack/pull/41.

@davidlehn, can we close this one and delete the branch?

Closing in favor of https://github.com/digitalbazaar/bedrock-webpack/pull/41.


Need to warmup production cache for app_dev

Sinds the update to 3.2 i needed to run cache:warmup --env=prod even when running the application in development mode.
If this was not done the application would not function correctly because its using the doctrine proxies from prod in this cache folder.
By running cache:warmup --env=prod my app was able to run without any problems.

Environment are not tied together, I don't understand why warming up the prod env could have an impact on dev, because the difference is made at the very beginning of the code, in the console or in the front controller 😕
I feel like there is an issue somewhere 😕

Closing as it looks like a problem not related to Symfony. Feel free to reopen with more details about how to reproduce this issue.


add a parameter in submitRing function to control the minial amount the ring will be settled.

This should be done inside a new RingInterceptor.


Add JUnit reporter

Closes #568
PR aims to implement a reporter for generating JUnit xml. Without --reporter-options it will output the results to the console. By providing path value, the reporter will try to put the output into the file.
Added small "fast-xml-parser" package to the knip package.
Also updated the docs with info about Junit reporter.

Is there still interest in wrapping up this pull request?

Yeah, absolutely.
Thanks for the reminder.
That's how bitbucket diplays the test results file.

And partial source of that file.
knip-test-example.txt
Had to convert it from xml to txt to be able to attach it here.

This is the actual output from junit reporter on Bitbucket pipelines run on the live project:

And this is part of the output xml file that was reported after running knip (in txt because Github won't allow to attach xml file). I've cut some sensitive data from the file (that's why issues count don't match with the image from BB).
test-knip-report.txt

I feel like we could improve the output a bit.
For instance, I see this in one section:

json.Unused devDependencies  package     ⋁
1 Unused devDependencies - postcss-scss
2
3 Unused devDependencies: "postcss-scss" inside package.json
4

Maybe all unused devDependencies of a file can go into a single foldout, without the duplication? Eg:

Unused devDependencies in package.json     ⋁
1 postcss-scss
2 postcss-syntax

Doesn't need to be perfect, but I wonder how close we can get to something more like this?

 If yes, then more compact output without duplications should be possible.


Fixes #502 and #1267

This pull request tries to fix issue #502 and also the issue I have raised i.e. #1267
The solution for #502 kind of worked for my problem as well to add a check of the active currencies when creating a new product.

Strange.
I raised a properly documented issue. Went through other issues to see if there exist a solution
and based on that, raise a PR to solve the issue.
If you are closing the issue at least comment on why you feel this is not proper. I genuinely wanted to contribute and wanted to help solve that issue.
@glennjacobs

Strange.
I raised a properly documented issue. Went through other issues to see if there exist a solution
and based on that, raise a PR to solve the issue.
If you are closing the issue at least comment on why you feel this is not proper. I genuinely wanted to contribute and wanted to help solve that issue.
@glennjacobs

I have on your referenced issue quite comprehensively.

Yes, I understood your stand for my issue of #1267. So, for now I guess I will work with that solution.
However, the PR also sovles #502
If you are solving that also with some other approach, then yes I would be fine.

I will have to check that old issue, but I don't believe this is the solution.


Handle file unix attributes

Fix for #36.

They say this does not work in some case (cf. https://github.com/mhr3/unzip-stream/issues/36#issuecomment-805833312).
Zip format, or execute environment?

There being bad case, close this for now.


Expose default port in Dockerfile

I know I can override the port through env and bindings, but I use Traefik. With Traefik I don't have to bind any internal port to outside port if the port is defined in the dockerfile.
It automatically detects the internal port (when exposed) and routes traffic through it through the Docker vnets. If you agree, I will create a pull request for it.

Apologies for the delay - yes, please open a PR to add the appropriate EXPOSE 7070/tcp directive.


Stage 4 Criteria

[x] Tests merged
[x] Implementations

[x] v8: https://chromium-review.googlesource.com/c/v8/v8/+/4166662 (in v114)
[x] sm: https://bugzilla.mozilla.org/show_bug.cgi?id=1841113 (v117, behind a flag) https://bugzilla.mozilla.org/show_bug.cgi?id=1865103 (tracking unflagging) - unflagged in v122
[ ] jsc
[x] serenity (their site claims test262 passes: https://serenityos.github.io/libjs-website/test262/per-file/?path=test/built-ins/ArrayBuffer/prototype)
[x] es-shims: https://npmjs.com/arraybuffer.prototype.transfer / https://npmjs.com/arraybuffer.prototype.transfertofixedlength / https://npmjs.com/arraybuffer.prototype.detached

[x] spec PR

[ ] editor-approved

[ ] consensus

JSC has landed the feature: https://github.com/WebKit/WebKit/pull/20087
Not sure when it will hit stable Safari though.


[New Feature]: Implement a basic reference trigger script that calls the OD API notify call

Checked for duplicates

Yes - I've already checked

Alternatives considered

Yes - and alternatives don't suffice

Related problems

N/A

Describe the feature request
The feature will be a simple reference trigger program.  It will simply call the OD API "processing expected soon" endpoint.
Most likely this will just be a simple shell script or python program that uses curl (or similar) to call the endpoint, and verify that it invokes the endpoint as expected.

Gerald working on getting end-to-end example working, but is working on a toy example of a trigger that uses watchdog to watch for a file arriving in a directory. Also working on a client library, that wraps the REST API calls.

More complete documentation (on GitBook), and the remaining eventBridge trigger need to be completed, then this ticket can be closed.

Simple reference triggers are implemented.  See changelog:  https://github.com/unity-sds/unity-on-demand/blob/main/CHANGELOG.md


Access to pre-trained models

Hey, Hope you are doing good!!
Excellent work and model.

Thanks in Advance!!

Hi @jaytimbadia, thanks for your interest in the project!
Unfortunately I don't have pre-trained models publicly available. :(


Distributed Counter works not according to the settings

Describe your configuration

Extension name: firestore-counter
Extension version: 0.2.2
Configuration values (redact info where appropriate):

Document path for internal state: firebase_ext/sharded_counter
Frequency for controllerCore function to be run (in minutes): 1440

Describe the problem
So the problem is that it's start working for every new shard and works the period of time even if new doesn't come. This lead functions work 24/7 and increase the price of using it. Also it ignores Frequency that i set and just works whenever new write comes
Steps to reproduce:
Just install the extensions
Expected result
Works only at 1440minutes timer
Actual result
Works every shard written

I solved my problem by delete onWrite trigger function. But this is backdoor solution i think

Update: problem now solved, now worker works always here is logs
3:04:20.446 PM ext-firestore-counter-worker Function execution started
3:05:05.694 PM ext-firestore-counter-worker Function execution took 45249 ms, finished with status: 'ok'
3:05:06.545 PM ext-firestore-counter-worker Function execution started
3:05:51.662 PM ext-firestore-counter-worker Function execution took 45118 ms, finished with status: 'ok'
3:05:52.247 PM ext-firestore-counter-worker Function execution started
3:06:37.441 PM ext-firestore-counter-worker Function execution took 45195 ms, finished with status: 'ok'
3:06:37.909 PM ext-firestore-counter-worker Function execution started
3:07:23.120 PM ext-firestore-counter-worker Function execution took 45211 ms, finished with status: 'ok'
3:07:23.556 PM ext-firestore-counter-worker Function execution started
3:08:08.762 PM ext-firestore-counter-worker Function execution took 45207 ms, finished with status: 'ok'
3:08:09.146 PM ext-firestore-counter-worker Function execution started

@firebase/invertase @kevinthecheung this seems like a good opportunity to update the firestore-counter preinstall with more info about how billing works (and what the different functions do)

I assume there are 2 logic behind this: work only at intervals and work 24/7. Maybe the solution would be to add a switch from one logic to another so that it will be possible to satisfy the needs of both those who need to collect values once a period, and those who need a live update of the values as soon as they appear.

Let's see if this is WAI or is this a bug, and then decide what the best action is

Hi @Monabr
We recently merged some changes to improve the Firestore counter https://github.com/firebase/extensions/pull/817/files.
The latest version is 0.2.5 https://firebase.google.com/products/extensions/firebase-firestore-counter.
Do you still have the issues on the latest version?

Closing following updates. Happy to re-open if instructions can be updated or additional bug issues have been found.


Added synch batch norm

Hi Yassine,
The file related to synch batch norm seems to be changed, so does the requirement for config file. What does the new config need related to this change?

Hi, there is a new option "use_synch_bnorm", it is False by default, set it ti true if you want to aggregate the gradients from the multiple Gpus and then update the BN patameters.
for the requirement file, just ignore it, the change is just a new PIL version.


crashes when zooming in

The program crashes every time I try to zoom in or to move the image across.

OS: Windows 10

I guess the problem can be solved by simply converting the float to int by modifying the line of code causing the TypeError to bar.setValue(int(...)).
Hope it helps.


chore: add patches to assist development

Acceptance Criteria

add patches to assist development

Security Checklist

[ ] Make sure you do not include new dependencies in the project unless strictly necessary and do not include dev-dependencies as production ones. More dependencies increase the possibility of one of them being hijacked and affecting us.

I agree with @glevco, it would be more practical to refactor this to use env variables
This way, we could even have "dev" versions of the wallet deployed in a CD