Add support for fully matrix-free Mass and Diffusion operators using libCEED

This PR adds fully matrix-free operators using libCEED for the Mass and Diffusion Integrators. It also adds matrix-free diagonal assembly using @jeremylt 's work.

PR
Author
Editor
Reviewers
Assignment
Approval
Merge

#1670
@YohannDudouit
@v-dobrev
@pazner + @delyank
08/20/20
⌛due 09/03/20
⌛due 09/10/20

@pazner @delyank You can test this feature by modifying ex1, you need to use SetAssemblyLevel(AssemblyLevel::NONE); on the BilinearForm.

@pazner I added a constructor to CeedData to initialize the fields to nullptr.

@pazner @delyank You can test this feature by modifying ex1, you need to use SetAssemblyLevel(AssemblyLevel::NONE); on the BilinearForm.

Do you plan to add the SetAssemblyLevel(AssemblyLevel::NONE); officially in the examples (particularly, ex1), probably using another flag and parameter (like -mf and bool mf;)? Is it supposed to be done in a separate PR?
At a glance, I like the PR and the code looks clean and it seems that it adds only (or almost only) new functionality without modifying existent functionality. Apparently, this is related and interacts with other PRs.
I would like to look at it and play with it a bit more.

@delyank The is a recurring request, but SetAssemblyLevel(AssemblyLevel::NONE) will not be in ex1 to keep it simple. (We were wondering also for AssemblyLevel::ELEMENT and AssemblyLevel::FULL)
@delyank @pazner If you don't have concerns about the style/design, I can merge it to #1719 and test it there.

@delyank The is a recurring request, but SetAssemblyLevel(AssemblyLevel::NONE) will not be in ex1 to keep it simple. (We were wondering also for AssemblyLevel::ELEMENT and AssemblyLevel::FULL)

OK. So the discussion on the examples is separate from this PR.

@delyank @pazner If you don't have concerns about the style/design, I can merge it to #1719 and test it there.

I have no concerns about the design or style. You will need to resolve the merging anyway once things get merged in next one by one.

@delyank The idea is that I merge everything in #1719 so that we have only one PR to merge into next at the end.

@delyank The idea is that I merge everything in #1719 so that we have only one PR to merge into next at the end.

I am confused -- should this review continue or not?

@tzanio Sure, I'm just making it easier to merge in next by solving all the merge conflicts ahead in #1719 .

@tzanio Sure, I'm just making it easier to merge in next by solving all the merge conflicts ahead in #1719 .

I think I understand. You mean that when you merge this into #1719, then #1719 can only be approved after this one is approved, since #1719 is like a PR against this current PR. That is, it is like extending on top of this PR.

@pazner @delyank Once you've reviewed and approved this PR, could you please check that the merge in #1719 looks good to you, and if it does write "The merge of #1670 in #1719 looks good to me."
I will close this PR afterwards in favor of #1719 to avoid complex merge conflicts for the editors.

@pazner @delyank Once you've reviewed and approved this PR, could you please check that the merge in #1719 looks good to you, and if it does write "The merge of #1670 in #1719 looks good to me."
I will close this PR afterwards in favor of #1719 to avoid complex merge conflicts for the editors.

I think there are still some issues with the destructor ~CeedData() (for example, with fully matrix-free, build_oper won't be created but will be destroyed).

So long as the pointer to the build operator is set to NULL in the matrix free case, it should be ok. It is safe to pass NULL to a libCEED destructor.

So long as the pointer to the build operator is set to NULL in the matrix free case, it should be ok. It is safe to pass NULL to a libCEED destructor.

Currently these pointers are uninitialized, so they may not be NULL. Looks like these pointers are NULL-initialized in #1713, so this will be fixed after the PRs are merged into #1719.
I want to make sure this fix doesn't fall through the cracks in the merge process.

@pazner I think this is fixed in #1719

Okay: this PR is now approved and merged into https://github.com/mfem/mfem/tree/yohann/test-ceed, so I'll mark it as approved and merged in the table in the first comment. Then, for clarity, I'll switch the target branch to be https://github.com/mfem/mfem/tree/yohann/test-ceed and that should automatically change the state of the PR to "merged", I think.

GitHub is not letting me switch the target branch to 'yohann/test-ceed' because:
There are no new commits between base branch 'yohann/test-ceed' and head branch 'yohann/ceed-mf'

Because of that, I'll simply close this PR.


Cannot place POST form inside spirig componet that makes post requests unrelated to that form

Below is my component. It uses buttons to swap its content which also includes POST form. Form itself is not supposed to be reactive in any way. When form is present in component, i get error 500 when i make sprig request using buttons:
craft\web\View::renderTemplate(): Argument #1 ($template) must be of type string, null given, called in C:\xampp8\htdocs\test_updates\vendor\putyourlightson\craft-sprig-core\src\controllers\ComponentsController.php on line 62
It seems that sprig is making request to commerce/cart/update-cart which gets redirected (code 302) to actions/sprig-core/components/render, but without any parameters.
When i remove form, sprig requests are made correctly. If i keep form and remove s-method="post" attribute from buttons i dont get error 500, but 400 instead:
Post request required
{% set variantParam = 'variant' %}

{# set product #}
{% set product = craft.products.id(productId).one() %}

{# set variant #}
{% set variant = product.defaultVariant %}

{# change variant if url param is present #}
{% if product.variants|filter(v => v.id == craft.app.request.getParam(variantParam)) is not empty %}
	{% set variant = product.variants|filter(v => v.id == craft.app.request.getParam(variantParam))|first %}
{% endif %}

	{# basket #}
	<form action="" method="post">
		{{ actionInput('commerce/cart/update-cart') }}
		{{ csrfInput() }}
		{{ hiddenInput('purchasableId', variant.id) }}
		<button>Add to cart</button>
	</form>

	{# variant switcher #}
	{% if product.variants|length > 1 %}

		{% for option in product.variants %}
			<button
				class="{{variant.id == option.id ? 'is-selected'}}"
				sprig
				s-push-url="?{{variantParam ~ '=' ~ option.id}}"
				s-replace="#sprig"
				s-val:{{variantParam}}="{{ option.id }}"
				s-indicator="#preloader"
				s-method="post"
			>
				{{option.sku}}
			</button>
		{% endfor %}

	{% endif %}

I'm not seeing a question here, but if you want to avoid the form being part of the Sprig re-rendering, then you can put an s-disable attribute on it.
<form s-disable action="" method="post">

@bencroker
I tried that, but it didnt halped. When i add s-disable to form, it is rendered as
<form action="" method="post" s-disable="" data-hx-disable="" data-sprig-parsed="">
Is data-sprig-parsed, suggesting that sprig didnt ignored it after all?

Ok, seems I forgot that s-disable only disables re-rendering, not what is submitted. Try this?

@bencroker
Thank you, this helped. But why including this in the request made bu buttons stops the form from being processed instead? Not sure i completly understand it.

By default, all input fields in a component are submitted in the Sprig request. If you inspect the component, you'll see data-hx-include="this" on it. In your case, this includes the action input field, which causes issues. By limiting what is submitted to only the buttons, you avoid the issue.

@bencroker
Thank you!


ComposeNamingLowercase false positive with Circuit

Do you think the ComposeNamingLowercase lint rule (and others?) should be Circuit aware, since "ComposeNamingLowercase" don't apply to Circuit's presenters which return a state: https://slackhq.github.io/circuit/presenter/
@Composable
fun CounterPresenter(): CounterState {
  var count by rememberRetained { mutableStateOf(0) }
  ...

We expose a config option for this case and recommend just using that. Does that work?
<issue id="ComposeNamingUppercase,ComposeNamingLowercase">
    <option name="allowed-composable-function-names" value=".*Presenter"/>
</issue>

Nice, I actually use
    <issue id="ComposeNamingLowercase" >
        <!-- Exclude Circuit's presenters, don't apply (https://slackhq.github.io/circuit/presenter/) -->
        <ignore regexp="/presenter/" />
    </issue>

But I'll use your suggestion. Closing issue.


Geofire query doesn't work in android

I'm trying to make an Android application that uses Firebase. To save the location I do the following:
   geoFire.setLocation(documentReference.getId(), new GeoLocation(latitude, longitude));
Where documentReference.getId () is the ID saved previously. And to do the want with the radio do the following:
    final GeoQuery geoQuery = geoFire.
                    queryAtLocation(new GeoLocation(usuario.getLatitude(), usuario.getLongitude()), radius);
            geoQuery.addGeoQueryEventListener(new GeoQueryEventListener() {
                @Override
                public void onKeyEntered(String key, GeoLocation location) {
                    System.out.println(String.format("Key %s entered the search area at [%f,%f]", key, location.latitude, location.longitude));
                }

I do not understand why it does not recover what I'm saving, if I'm sure the distance is less than what I put on the radio. Any ideas? I am completely new with Firebase and with GeoFire.
In the Firebase rules I have put this:
    {
      "rules": {
        ".read": "auth != null",
        ".write": "auth != null",
        "geofire": {
          ".read": "true",
            ".indexOn": ["g"]
          }
        }
    }

If I look for the location with geofire through the key, it returns it correctly

Have you checked out the CompletionListener parameter and see if you get anything useful from that?

I have encountered this bug too. I have an item set 100m from the center, but the GeoQuery will not get this item unless the search radius is set to something awfully huge like 8000km!
The code below works with the radius set to 8000km.
geoQuery = geoFire.queryAtLocation(new GeoLocation(58.540825, 17.072655), 8000);
The code below does NOT work with the radius set to 1km. Even though the item is 100m away from inital center.
geoQuery = geoFire.queryAtLocation(new GeoLocation(58.540825, 17.072655), 1);

Can we be sure the Geohash is calculated properly on both sides (client + backend) ?

This what the debugging shows when putting in a query for:
 geoQuery = geoFire.queryAtLocation(new GeoLocation(58.540825, 17.072655), 8000);

Just a wild guess as it is very late in the night at the moment for me, but in the second picture it looks like we are trying to order by child "g", but will it actually go into each UID and order by G? Because is it not currently trying to order by "g" even though it does not have access to "g" because it is nested into each UID that exists in "userLocations".

I may be wrong here, but it seems maybe something is wrong with the GeoHash that gets created when the radius is set to a lower number.
For the code below, the query search for a startValue of 'u6h' and endValue of 'u6n'. This will not find the GeoHash in the database which starts with 't69', if I am not mistaken.
geoQuery = geoFire.queryAtLocation(new GeoLocation(58.540825, 17.072655), 100);

I have no idea on how to move forward from now on... @vanniktech does this look familiar to you?

It does not but it sounds like my assumption from the first place is correct.

Can we be sure the Geohash is calculated properly on both sides (client + backend) ?

We could calculate the Geohash and then see whether one of the parties (client or backend) calculates this wrong or whether this might be wrong in your database from an import of the initial data. There are also unit tests for calculating those hashes.

I just tried adding this test to the GeoQueryTest class and it still passes:
@Test
public void keyEnteredSmallRadius() throws InterruptedException {
    double centerLat = 58.540825;
    double centerLong = 17.072655;

    GeoFire geoFire = newTestGeoFire();
    setLoc(geoFire, "0", centerLat, centerLong, true);
    setLoc(geoFire, "1", centerLat + 0.005, centerLong, true);

    GeoQuery query = geoFire.queryAtLocation(new GeoLocation(centerLat, centerLong), 1);

    GeoQueryEventTestListener testListener = new GeoQueryEventTestListener();
    query.addGeoQueryEventListener(testListener);

    waitForGeoFireReady(geoFire);

    Set<String> events = new HashSet<String>();
    events.add(GeoQueryEventTestListener.keyEntered("0", centerLat, centerLong));
    events.add(GeoQueryEventTestListener.keyEntered("1", centerLat + 0.005, centerLong));

    testListener.expectEvents(events);

    query.removeAllListeners();
}

This is as expected:

So while we still need to figure out what's going on, I don't think there's a fundamental issue in the distance calculations here.

I solved the problem by creating a new Android Virtual Device. The Nexus 5 AVD was not sending the GPS data correctly for some reason, moving the decimal point for the latitude and longitude randomly. At quick glances the values seem good, however, upon later inspection I found it did not send the correct values every time. This is weird because I was restarting the device and every time I got the same longitude and latitudes but the decimal was moved randomly.
If somebody has this issue, I would recommend looking at the longitude and latitude you are entering into the setLocation method. They could be wrong. If they are wrong, create a new AVD and try it.

@diblaze so would you say we can close this issue?  And thanks for following up!

Yes, this issue is closable. Hopefully, the solution works for @lexayon and future coders who stumble upon this issue.
Thanks for the help!

Closing this issue.  @lexayon if you have more evidence that something more is going on I am happy to re-open it.

Let's add this unit test case to our test suite to make sure we won't regress?

The existing test case is almost exactly the same, I just wanted to prove
that it would also pass with the specific lat/long pair in this issue.
On Thu, Dec 7, 2017, 11:35 PM Niklas Baudy<EMAIL_ADDRESS>wrote:

Let's add this unit test case to our test suite to make sure we won't
regress?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/firebase/geofire-java/issues/84#issuecomment-350194593,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIEw6k7NmP1M7F13YGOcBJ22ekYxzLsmks5s-ObLgaJpZM4Qg_m1
.

Alright that works. Thanks :)

@diblaze @vanniktech  Problem yet not solved! Similar problem persists in Android

@samedson


Creating a new dashboard should not show a red overlay

When clicking on "autogenerate dashboard", sometimes a red overlay transition state appears that says "creating metrics dashboard for source". When it comes and goes quickly, it's hard to read, but seeing the red color makes it feel like something bad happened.
At the very least, we should change the color of this overlay to something more neutral. But we should also consider how this feels when the overlay comes and goes in a split second. It's frustrating when you can't read what it says because it's gone so quickly.

Yeah I very much agree. In general I find these whole page takeover interstitials quite distracting, and I don't really think they're necessary. I think we should not need to prevent users from having any access to the UI while we're doing these operations, it should be possible for users to still click around, scroll, do a bit of navigation without the whole app basically locking down and freezing. It would be enough to just show a progress bar Or something to let users know when an action we're doing for them in the background is complete. but locking the UI can be a bad experience


Conditional operators only count one instance.

The conditional operators seem to always give a frequency count of 1.
For example x_1 * x_2 * x_3 * x_4 * x_5 gives the tree:

and gives conditional operators:

So, it only tracks the first instance of the conditional.

I look into that.


Update phpList

Update phpList to be compatible with PHP 8.x:

https://discuss.phplist.org/t/is-php-8-x-x-supported-by-phplist/8371
https://www.phplist.org/manual/books/phplist-manual/page/upgrading-a-manual-installation

Manual upgrade to 3.6.12 worked.


[Table] Filterable column header padding adjustment

What package is this for?

[x] React
[ ] Angular

Summary
The padding around the filterable column headers has been adjusted to try and give the most space possible to the text field, while at the same time remaining visually separated from column-to-column. This has also been adjusted with better consideration to filterable right-aligned columns and selectable + filterable columns.
Proposed styling

Red lines & interaction states

This is a good one to do. It is used almost everywhere and has always looked a bit sloppy.

The design shows short and default column heights but the PAL Table component currently has the sizes xs, sm, md, lg and xl. Do we need a design for all the sizes?
Example xs:

Example  xl:

The design shows left and right alignment but the Table also support text alignment center. Do we need to include that in the design?

If multisort is active here will be an overflow button in the column header. I guess we should take that into consideration as well, what padding, what alignment etc? There is also the resize handle to consider:

And there is yet another variable here which is the column grouping with white separators between the columns, how should that look?

All in all the column headers can get very crowded and complex and the developer implementing this issue needs to be aware of the all the different scenarios, including when the columns are all dynamically resized.

@ben-bacon Please see above

@bjornalm Thanks for linking some more instances! Here are my thoughts:

Do we need a design for all the sizes?

No, I think we should just support the sizes listed in the original post for now, those map to Carbon sizes. That would be lg and sm variants in the Watson IoT nomenclature.

the Table also supports text alignment center. Do we need to include that in the design?

No, center-aligned columns should follow the guidance reserving them for icon-only rows.

If multisort is active there will be an overflow button in the column header. I guess we should take that into consideration as well, what padding, what alignment etc?

The column header text should follow truncation guidance for column headers with icon buttons. The "text box" should be the element that gets smaller, while retaining it's original element boundaries, when more icon buttons are present.

How should the different filters react when the column is resized

Interesting issue here, if we're constrained to the inherited max width then that is fine. It looks a little odd, but it is usable. I think preferably the dropdown/input width is tied to the width of the column, but that is just for visual fit and finish's sake, and does not add a considerable amount of usability.

And there is yet another variable here which is the column grouping with white separators between the columns, how should that look?

With the added 4px padding outside of the column filter, the column grouping separator should fit between the adjoining filter inputs.

If nothing is being broken but the column filter as it is now, I don't think this update will exacerbate any issues as it decreases the width of the filter input and only adds vertical padding below the input. But let me know if that line of thinking is wrong and we can iron out any budding issues.

@ben-bacon Thanks for clarifying.

About the sizes, should we not open an issue to have the table row sizes aligned with carbon? I think the difference will be a reoccurring source of confusion.

-About resizing, how about a min size? Should we allow this, e.g. only the chevron is visible due to the limited space:

@bjornalm I agree about the confusion part but I think that depends on how many teams we have using the bespoke sizes. Do we have any insight on that? Carbon is also moving to a new nomenclature and property sizing in v11 - I'm unsure if the data table will have every size or just the ones they have now. They have already updated the names od the sizes they have now here. But when v11 happens we should align IoT's row sizes with their naming and sizing.
On resizing, no, we should always try to show some of the column's content. Is there a minimum size inherited from the carbon component?

@bjornalm I agree about the confusion part but I think that depends on how many teams we have using the bespoke sizes. Do we have any insight on that? Carbon is also moving to a new nomenclature and property sizing in v11 - I'm unsure if the data table will have every size or just the ones they have now. They have already updated the names od the sizes they have now here. But when v11 happens we should align IoT's row sizes with their naming and sizing.

@davidicus do you know?

On resizing, no, we should always try to show some of the column's content. Is there a minimum size inherited from the carbon component?

No I don't think so, but we have a min-width for the columns in PAL. Perhaps we should increase the min column width if the table is filterable, so that something from the filter value is always visible?

@bjornalm I unfortunately do not have any data of prop usage.

@davidicus FYI, created a new feature request to increase the min width when filtering as suggested above
https://github.com/carbon-design-system/carbon-addons-iot-react/issues/3387


Implement search for Entities

Remover Cassettes e rodar teste quando o endpoint estiver na sandbox do MyFinance

:shipit: released on version 1.1.0


Can we use PhoBERT-base Tokenizer for PhoBERT-large model and vice versa?

Hi @datquocnguyen ,
Both PhoBERT-base Tokenizer and PhoBERT-large Tokenizer have the same vocab size = 64001. Then the question is can we use PhoBERT-base Tokenizer for PhoBERT-large model and vice versa? It means can we use only one of them to tokenize the dataset and use that prepared tokenized tensor dataset to do fine-tuning on downstream tasks for both PhoBERT-base Tokenizer and PhoBERT-large to save preparing time :)

Both pre-trained PhoBERT-base and PhoBERT-large models use the same tokenizer PhobertTokenizer.

Thank you!


Update Get-Location to Get-Locations

Related to #7
Would it be possible to simply update this cmdlet to Get-Locations? This resolves the name conflict.

`PackageManagement\Install-Package : A command with name 'Get-Location' is already available on this system. This module 'SnipeitPS' may override the existing commands. If you still want to install this module 'SnipeitPS', use -AllowClobber parameter.
At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\<IP_ADDRESS>\PSModule.psm1:1772 char:21

...          $null = PackageManagement\Install-Package @PSBoundParameters

                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : InvalidOperation: (Microsoft.Power....InstallPackage:InstallPackage) [Install-Package], Exception
FullyQualifiedErrorId : CommandAlreadyAvailable,Validate-ModuleCommandAlreadyAvailable,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackage`

Im renaming this to get-locations and set-locations etc. This will be a breaking change which is why I’ve been putting it off, this will be done in next push which will be later today

Fixed in #26


docs(guides): Removed unnecessary publicPath option

In the Dynamic Imports section inside Code-Splitting Guide,
output.publicPath option isn't always required to use output.chunkFilename.

Thanks!


Progress event(s) for FormData requests

Hi! Thank you for creating this package, it's a lifesaver when it comes to generic multipart/formdata requests.
Is there a way to consume file upload progress event(s)?
Consider this a feature request, if it doesn't exist yet, or please point me in a direction if it's possible to implement

Want the same.

I'm afraid I haven't. I couldn't pursue it further due to limited time constraints. I'm hoping package authoring team might have some pointers

I have no idea about it yet, because neither HttpClientRequest nor HttpClient didn't  provide some way to listen the progress event.

I made sample app which shows how to implement upload/download with progress bar, so maybe you find it useful to make dio.fileupload.
https://github.com/salk52/Flutter-File-Upload-Download

Yes, you are right.  But nevertheless this still works for displaying progess and I'll try to explain why. First of all sink.add(data); should be call first, then  onUploadProgress(byteCount, totalByteLength);
Calling sink.close(); is crucial for this example. Stream reads bytes in chunks and transforms them into network stream by sink.close() which is synchronous call. So if sink.close() cant add bytes to underlaying network stream it will throw an exception. So if you start uplading 100 MB file, and you turn off wifi on emulator/phone, the progress will stop. So you indirectly know that bytes are sent or not.

fixed!
response = await dio.post(
  "http://www.dtworkroom.com/doris/1/2.0.0/test",
  data: {"aa": "bb" * 22},
  onUploadProgress: (int sent, int total) {
    print("$sent $total");
  },
);

onUploadProgress

is it possible to connect this upload progress with a steam to handle on our bloc part for displaying progress instead a callbak ?

onUploadProgress

is it possible to connect this upload progress with a steam to handle on our bloc part for displaying progress instead a callbak ?

I have the same question. I wanted to yield state updates with the current download progress but it seems that it's only a callback. Any ideas on implementing this in a future release?

Ok, so I searched around and stumbled across this answer.
So you can create a StreamController before your request and add events via onReceiveProgress callback. I did this for downloading, I guess you can also do it for uploading.
This worked for me. Hope it helps someone.
StreamController<int> progressStreamController = new StreamController();
dio.get(
  event.url,
  onReceiveProgress: (received, total) {
      progressStreamController.add(((received / total) * 100).round());
  },
  options: Options(
      responseType: ResponseType.bytes,
      followRedirects: false,
      validateStatus: (status) {
          return status < 500;
      }),
).then((Response response) async {
  //Do whatever you want with the response
}).whenComplete(() => progressStreamController.close());

await for (int p in progressStreamController.stream) {
    yield DownloadingUpdate(progress: p);
}

  onUploadProgress: (int sent, int total) {
    print("$sent $total");
  },

Where is from this onUploadProgress i updated to the last version dio: ^4.0.0 and still have The named parameter 'onUploadProgress' isn't defined..

  onUploadProgress: (int sent, int total) {
    print("$sent $total");
  },

Where is from this onUploadProgress i updated to the last version dio: ^4.0.0 and still have The named parameter 'onUploadProgress' isn't defined..
Ok i use:
Dio().download(serverName+'/download', savePath,
      options: Options(method: 'POST', headers: {HttpHeaders.acceptEncodingHeader: "*"},),
      data:  FormData.fromMap(params),
      onReceiveProgress: (received, total) {
        callBack(received, total);
      });

How about on uploading progress?

@ariefwijaya From their docs it looks like you use the onSendProgress method in a POST request:
response = await dio.post(   'http://www.dtworkroom.com/doris/1/2.0.0/test',   data: {'aa': 'bb' * 22},   onSendProgress: (int sent, int total) {     print('$sent $total');   }, );


Is there a Time-out for an Effect?

Is there a way to cancel an Effect, used for a request, after it starts through an time-out?

Hi @BrunoCerberus, since Effect is just a standard Combine publisher you can use its timeout operator to achieve what you want. If you use a TestScheduler you'll even be able to write tests for the behavior.

Nice, thanks a lot for the help, discovered that I can use a .timeout(_:Scheduler) right before a catchToEffect 🙃


feat: prompt caching

Is your feature request related to a problem? Please describe.
The official Claude API supports prompt caching, but using this bedrock access gateway does not meaning it costs up to 90% more.
Describe the feature you'd like
Prompt caching - https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching
Additional context
N/A

Prompt caching in Bedrock is still in preview. May consider adding the support once it's GA.


Add 'Markdown Numbered Headers' link to README

@jonasbn
Hello, please review my PR.
In according to this comment, I want to add link for that plugin. Please let me know if there are more suitable section or titles for adding it.
Thanks.

This change is

@jonasbn Thanks, and sorry for silly mistakes...
I modified these.

plugiin > plugin
markdown > Markdown
plugin > plugins

Nevermind silly mistakes, that is why we review 👍🏻😃


An error can run in develop mode, but this error is reported in production mode

Describe the bug

When i run in develop mode, all of my code and web pages work fine. but when i used production mode, one of my svelte files didn't run(load function include in this files)
this is the first time for me to submit issue in svelte-kit community, there are a lot of irregularities please point out and criticize. ♪(･ω･)ﾉ
hope there's a great man who can help me (๑′ᴗ‵๑)

Reproduction

npm run build
npm run preview

when i click on the category page(the corresponding svelte file is category-[id].svelte and category-[id].json.js)

I got a error like this.

Logs
(base) zhengyan@duanyudeMacBook-Pro ddy-website % npm run preview

><EMAIL_ADDRESS>preview
> svelte-kit preview

  SvelteKit v1.0.0-next.326

  local:   http://localhost:3000
  network: not exposed
  network: not exposed
  network: not exposed

  Use --host to expose server to other devices on this network

ReferenceError: i is not defined
    at get (file:///Users/zhengyan/Desktop/ddy-website/.svelte-kit/output/server/entries/endpoints/api/photography/category-_id_.json.js:9:10)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async render_endpoint (file:///Users/zhengyan/Desktop/ddy-website/.svelte-kit/output/server/index.js:186:20)
    at async resolve (file:///Users/zhengyan/Desktop/ddy-website/.svelte-kit/output/server/index.js:2189:53)
    at async respond (file:///Users/zhengyan/Desktop/ddy-website/.svelte-kit/output/server/index.js:2146:22)
    at async file:///Users/zhengyan/Desktop/ddy-website/node_modules/@sveltejs/kit/dist/chunks/index5.js:139:5

System Info
System:
    OS: macOS 12.0.1
    CPU: (8) x64 Intel(R) Core(TM) i5-8279U CPU @ 2.40GHz
    Memory: 21.69 MB / 8.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.14.0 - /usr/local/bin/node
    npm: 8.3.1 - /usr/local/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 101.0.4951.64
    Safari: 15.1
  npmPackages:
    @sveltejs/adapter-auto: next => 1.0.0-next.40
    @sveltejs/adapter-node: ^1.0.0-next.73 => 1.0.0-next.73
    @sveltejs/kit: next => 1.0.0-next.326
    autoprefixer: ^10.4.7 => 10.4.7
    daisyui: ^2.14.3 => 2.14.3
    nprogress: ^0.2.0 => 0.2.0
    postcss: ^8.4.13 => 8.4.13
    svelte: ^3.44.0 => 3.48.0
    svelte-typewriter: ^3.0.0-alpha.11 => 3.0.0-alpha.11
    sveltekit-embed: ^0.0.5 => 0.0.5
    tailwindcss: ^3.0.24 => 3.0.24

Severity
serious, but I can work around it
Additional Information
No response

We need a clonable repository with a minimal reproduction.

I have modified it according to your requirements. (#^.^#)

I'm more curious how this would work in dev, as it shouldn't work in either environment:
- for (i = 0; i < number, i++) {
+ for (let i = 0; i < number, i++) {

The error is telling you what's wrong. i isn't declared (you need to use let or var).

Oh my god.  Thank you so much. I solved this problem.
 It is possible that dev mode is less stringent about code review?

Probably this?

Probably this?

yes. The i is not declared. Thank you so much (•̀ᴗ•́)و

@ddy-ddy
Happens to all of us! 😉


powerd: init at 1.0.0

Motivation for this change
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Notify maintainers
cc @

@GrahamcOfBorg build powerd

This software doesn't consider charge mode, always executing command. So I think its not viable.


Incorrect ADC code to voltage conversion formula

is this a bug? can you provide more details?

is this a bug? can you provide more details?

Yes this is a bug, I'm Opening a PR soon


LoadBalance annotation的支持

Your question
请问LoadBalance是否支持annotation版本
Your scenes
describe your use scenes (why need this feature)
Your advice
describe the advice or solution you'd like
Environment

Starter version:
JVM version (e.g. java -version):
OS version (e.g. uname -a):
Maven version:
IDE version:

supported in https://github.com/alipay/sofa-rpc-boot-projects/pull/121


microbit_hal: Consistent values for mic levels

HAL implementers need to work with both
microbit_hal_level_detector_callback and
microbit_hal_microphone_set_threshold. It's confusing for the former to
use 1 and 2 and the latter 0 and 1 to represent low and high.
Consistently use 1 and 2 via the HAL defines.

Instead of this I think we should make two new defines to set the threshold (the existing ones are event numbers), because these two sets are conceptually independent.
Eg:
#define MICROBIT_HAL_MICROPHONE_SET_THRESHOLD_LOW (0)
#define MICROBIT_HAL_MICROPHONE_SET_THRESHOLD_HIGH (1)

And probably rename the existing ones to:
#define MICROBIT_HAL_MICROPHONE_EVT_THRESHOLD_LOW (0)
#define MICROBIT_HAL_MICROPHONE_EVT_THRESHOLD_HIGH (1)

As discussed elsewhere, I implemented my above suggestion in a1be53a8ed0501609d869c3147bf47effa38a0a5 and 804c5fee4fd12e786e3815ef37aaefd5649153fa


[GHSA-cwvm-v4w8-q58c] Blind local file inclusion

Updates

Affected products

Comments
The fix in GitPython 3.1.35 was incomplete, as discussed in https://github.com/gitpython-developers/GitPython/pull/1672. A new release, https://github.com/gitpython-developers/GitPython/releases/tag/3.1.37, includes a proper fix. The maintainer has updated the advisory associated with the repository, https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-cwvm-v4w8-q58c, to indicate that the fully patched version is 3.1.37 instead of any earlier version.
This change proposes the corresponding change in the GitHub Advisory Database, which would make both advisories convey the same, up-to-date information. The maintainer of GitPython, @Byron, has requested that this be done (https://github.com/gitpython-developers/GitPython/pull/1672#issuecomment-1731007627, https://github.com/gitpython-developers/GitPython/pull/1672#issuecomment-1732511789).
This is based on a preference, in this case, to update the existing advisory and not to create a new one (as noted in the linked comments above). However, if this change to the advisory would not be sufficient to raise Dependabot alerts, that may be relevant.

Hi there @stsewd and @Byron! A community member has suggested an improvement to your security advisory. If approved, this change will affect the global advisory listed at github.com/advisories. It will not affect the version listed in your project repository.
This change will be reviewed by our highly-trained Security Curation Team. If you have thoughts or feedback, please share them in a comment here! If this PR has already been closed, you can start a new community contribution for this advisory

👋 This pull request has been marked as stale because it has been open with no activity.  If you do nothing this pull request will be closed eventually by the stale bot. Please see CONTRIBUTING.md for more policy details.

I'm hoping this can still be reviewed by a member of the Security Curation Team.

If it can be merged, then that would update GitHub's global advisory database to include the version that really fixes the bug, which I think may result in automated tools such as Dependabot can notify users of the update (maybe a reviewer can speak to this).
If for any reason that is considered not to be feasible or appropriate, then alternatives can be explored, as noted in the description in this PR (see discussion in https://github.com/gitpython-developers/GitPython/pull/1672 for full context).

Apologies on the delay. Getting to this now 🙇


[Question]: How I can increase video bright and quaity?

Hi @m1k1o,
In the screenshot you can see the same "webpage" throught Neko and on client browser. How can I improve the video quality to make it more comfortable? Thanks

By tweaking various encoding parameters, making the resolution bigger. I think it's out of scope for neko-rooms.


Error launching browser: command 'js-debug-companion.launchAndAttach' not found

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.61.2
OS Version: Windows 10 Pro (10.0.19043)

Steps to Reproduce:

Run an app in wsl2. Set up a debugger for chrome or node app.
Get a connection failed to connect error somehow.
Click the popup that takes you to the JavaScript Debugger Extension (built-in).
Click 'disable`. Restart VSCode
Retry running debugger.
Get this error:
Error launching browser: command 'js-debug-companion.launchAndAttach' not found
Check the JavaScript Debugger. It is enabled.

I suddenly ran into an issue where my configured chrome docker debugger for an app was failing to connect upon startup. Clicking on the popup brought me to the JavaScript Debugger Extension. I know that this is a built-in feature but I figured I'll try disabling and reenabling it. See what happens. After hitting 'disable' and restarting VSCode, running the debugger immediately throws the above error (6). I go back to the JavaScript Debugger extension but it shows itself as enabled.
I've tried reinstalling VSCode for Windows no change. I've tried other projects, launch configurations doesn't matters same error persists. Debugging apps within windows is fine. Only wsl based ones fail.
What needs to be done for this?

Click 'disable`. Restart VSCode

I'm thinking you disabled the JS Debug Companion here. That causes the that command, contributed by the disabled extension, to not show.

Get a connection failed to connect error somehow.
Click the popup that takes you to the JavaScript Debugger Extension (built-in).

I'm not familiar with this popup, do you recall any details or can you grab a screenshot of it? ( @aeschli do you know? )

you may disble the js-debug-companion  extension
see more :https://github.com/microsoft/vscode-js-debug-companion#js-debug-companion


Synchronize event listeners when run in plain console

Context
We synchronize incoming events for the chain of OutputEventListeners in ThrottlingOutputEventListener when run in rich console. The same does not happen when run in plain console which hypothetically leads to NoSuchElementException described in https://github.com/gradle/gradle/issues/3465 (see stack trace in description of issue). So far the user and I couldn't create a minimalistic, reproducible example.
I ran the change through the performance tests and all kept passing so I don't expect a regression on that front. After reviewing the change we could let the user try out the change with a nightly with their real-world project to see if it fixes the issue.

This can't be the cause, as output is already synchronized. Let's get a reproducible test case first before we make changes.

This can't be the cause, as output is already synchronized.

Thanks for the pointer. I guess we need additional synchronization in ThrottlingOutputEventListener then because we also create additional events with the scheduler.

Let's get a reproducible test case first before we make changes.

OK, I will ask the reporter of the issue again. So far we couldn't condense the issue to a minimal example yet that reproduces the issue. I think I am going to shelve this for now until somebody can successfully recreate the issue.


"Sample Code" should be allowed as a valid heading

Currently we disallow "Sample Code" as a heading in our documentation. This should be allowed as a legal heading, see https://github.com/flutter/flutter/pull/33460#discussion_r289548479 for discussion.
/cc @Hixie @gspencergoog

Looks like this got resolved, I am seeing a couple of "sample code" heading in our dos.


Publish on Spark Packages Main Repository

Hi @sramirez,
Would you like to make a release of this package on the Spark Packages Maven Repo? There is an sbt-plugin called sbt-spark-package that would help you make the release straight from your sbt console. All you need to do is set a couple configurations.
Publishing on the Spark Packages Repo will bump your ranking on the website, and will fill in the How To section, which users can use to include your package in their work.
Please let me know if you have any comments/questions/suggestions!
Best,
Burak

Hi @brkyvz,
Yesterday I finished the uploading process with success, although with some problems. I also tried to use this tool for scala but I had some problems with the plugin. Concretely, I obtained a recurrent error about spName, which was not recognized by sbt. I tried to copy some build.sbt and plugins.sbt from other packages with still the same problem :(
I'll upload a release for my other package about feature selection.
Thanks for your attention.

Hi @sramirez, Thank you for the feedback. I'll document the import of Keys better. Because you have a Build.scala file, you unfortunately need to import explicitly. Did you still have problems even after import sbtsparkpackage.SparkPackagePlugin.autoImport._?
I would greatly appreciate any more feedback you might have!
Thanks,
Burak

Hi,
No way. I've tried in many ways, but I always fail. I am not very used to sbt. I think there is a problem with import order between project folder and build.sbt.
This is the result for the second package: infotheoretic-feature-selection:
[info] Loading project definition from /home/sramirez/git/spark-infotheoretic-feature-selection/project
[info] Updating {file:/home/sramirez/git/spark-infotheoretic-feature-selection/project/}spark-infotheoretic-feature-selection-build...
[info] Resolving org.scala-sbt#compiler-interface;0.13.1 ...
[info] Done updating.
/home/sramirez/git/spark-infotheoretic-feature-selection/build.sbt:19: error: not found: value sparkPackageName
sparkPackageName := "sramirez/infotheoretic-feature-selection"

I'm not sure if this has anything to do with your difficulties, but I think the package
should be org.apache.spark... and not org.apache.
In the sbt file, I think it should be
organization := "org.apache.spark",
instead of
organization := "org.apache",
That way it appears in the same place as lots of other spark-* libs in the local ivy2 and maven2 repos. I made this change in my fork, but did not do a PR for it.

@barrybecker4, could you do a PR with your build.sbt, please? It'd be nice to have a build.sbt in the project.

I did not add a new build.sbt file. I just made a few tweaks to the existing project/Build.scala file. I don't know enough about sbt to say what the correct thing to do is. Probably there should be a build.sbt file at the top level, but I am currently able to run "sbt assembly" from the command line so maybe its ok for now.


Fixed #24099 -- Removed contenttype.name deprecated field

This finsishes the work started on #16803.

Interesting. Removing the field from the database would make it harder for me to switch back and forth between 1.8 and 1.7, but I could always migrate, and then add a backward-compatible nullable column in the database by hand for 1.7.

Missing deprecation timeline and release note, otherwise LGTM.

I've noticed the migration is not reversible because the name field is not nullable. Does someone know about a workaround?

The backwards migration is failing with an IntegrityError when re-adding the non-nullable field, so I don't see how the RunPython operation would fix that.

You could split this into several migrations: first remove the non-null constraint, then do the data migration, then remove the field.

First you need an AlterField that sets the field to null=True, then the RunPython to propagate the values for the backwards direction and last the RemoveField

I had expected that the migration below "just works" but it triggers an error:
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.db import models, migrations

def add_legacy_name(apps, schema_editor):
    ContentType = apps.get_model('contenttypes', 'ContentType')
    for ct in ContentType.objects.all():
        try:
            ct.name = apps.get_model(ct.app_label, ct.model)
        except:
            ct.name = ct.model
        ct.save()

class Migration(migrations.Migration):

    dependencies = [
        ('contenttypes', '0001_initial'),
    ]

    operations = [
        migrations.AlterModelOptions(
            name='contenttype',
            options={'verbose_name': 'content type', 'verbose_name_plural': 'content types'},
        ),
        migrations.AlterField(
            model_name='contenttype',
            name='name',
            field=models.CharField(max_length=100, null=True),
        ),
        migrations.RunPython(
            lambda apps, schema_editor: None,
            add_legacy_name
        ),
        migrations.RemoveField(
            model_name='contenttype',
            name='name',
        ),
    ]

  Unapplying contenttypes.0002_remove_content_type_name...Traceback (most recent call last):
  File "/home/markus/Coding/django/django/db/models/options.py", line 550, in get_field
    return self.fields_map[field_name]
KeyError: 'name'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/markus/Coding/django/django/core/management/__init__.py", line 338, in execute_from_command_line
    utility.execute()
  File "/home/markus/Coding/django/django/core/management/__init__.py", line 330, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/markus/Coding/django/django/core/management/base.py", line 390, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/markus/Coding/django/django/core/management/base.py", line 444, in execute
    output = self.handle(*args, **options)
  File "/home/markus/Coding/django/django/core/management/commands/migrate.py", line 213, in handle
    executor.migrate(targets, plan, fake=options.get("fake", False))
  File "/home/markus/Coding/django/django/db/migrations/executor.py", line 73, in migrate
    state = self.unapply_migration(state, migration, fake=fake)
  File "/home/markus/Coding/django/django/db/migrations/executor.py", line 127, in unapply_migration
    state = migration.unapply(state, schema_editor)
  File "/home/markus/Coding/django/django/db/migrations/migration.py", line 146, in unapply
    operation.database_backwards(self.app_label, schema_editor, from_state, to_state)
  File "/home/markus/Coding/django/django/db/migrations/operations/fields.py", line 205, in database_backwards
    self.database_forwards(app_label, schema_editor, from_state, to_state)
  File "/home/markus/Coding/django/django/db/migrations/operations/fields.py", line 188, in database_forwards
    from_field = from_model._meta.get_field(self.name)
  File "/home/markus/Coding/django/django/db/models/options.py", line 552, in get_field
    raise FieldDoesNotExist('%s has no field named %r' % (self.object_name, field_name))
django.core.exceptions.FieldDoesNotExist: ContentType has no field named 'name'

Same thing if you break it up into multiple files?

Yes, problem still persists. I try to figure out what's happening. I suspect the RemoveField operation to not add the field again due to the changes in optimizing the migrate process.

I put a PR together that fixes some larger bugs in the way Django passed the project state between operations. It needs some more tests.

Markus, do you know if there is more work to do or should we be able to proceed with this now?

A rebase should work fine with the migrations posted above. I'll try it out.

Looks like we need a solid solution for the post_migrate problem. Otherwise name is still accessed even though it might not be a model field.

Merged in b4ac23290772e0c11379eb2dfb81c750b7052b66


Answer Checker

Dataman Answer Checker
User Stories

As a parent, I want to use the answer checker to track my child's progress, so I can know how well they're doing

Added handling of floating point numbers by using regex to parse input in from /answer_check


Content Ownership Ambiguity! (Logo)

According to Terms of Services, Section A: Defenitions, part 7:

“Content” refers to content featured or displayed through the Website, including without limitation code, text, data, articles, images, photographs, graphics, software, applications, packages, designs, features, and other materials that are available on the Website or otherwise available through the Service. "Content" also includes Services. “User-Generated Content” is Content, written or otherwise, created or uploaded by our Users. "Your Content" is Content that you create or own.

By that way, there's more on this topic on section D. User-Generated Content, third part, first paragraph :

3. Ownership of Content, Right to Post, and License Grants
You retain ownership of and responsibility for Your Content. If you're posting anything you did not create yourself or do not own the rights to, **you agree that you are responsible for any Content you post; ** that you will ONLY submit Content that you have the right to post; and that you will fully comply with any third party licenses relating to Content you post.

In bried, I guess there might be some kind of legal issues w/ this Mr. Hashemi logo and stuff.

The current Mr. Hashemi's programming logo is about 25 years old and I don't think this photo even had copy right at those days (and if had it's still valid!).
We will design a proper logo very soon though.
Let me know if you have any idea about its look and feel :)


Merge Intervals

`
import itertools
def merge(intervals):
new_intervals = []
# Checking that the list of intervals given is longer than 1
# As if there is only one interval we just return the list
if (len(intervals) <= 1):
return intervals
# Now we can iterate through the list assigning the merged
# Values to our new_intervals list
for a, b in itertools.combinations(intervals, 2):
new_intervals = x_overlap_y(a, b)
print(new_intervals)
def  x_overlap_y(x, y):
a = x[0]
b = x[1]
c = y[0]
d = y[1]
if ((a - c) * (b - d) > 0):
return [[a, b], [c,d]]
else:
front = c if (a - c > 0) else a
back = b if (b - d > 0) else d
return [front, back]
`


Why are (most) endpoints pluralized?

I'm starting out trying to be a Legit Programmer, and I read some tutorials on how to design REST apis.
My question, Why are most of the endpoints pluralized? I get the impression that there aren't hard and fast rules, but it seems like people consider singular noun endpoints as the "right" way to do it. I'm thinking about reformulating your endpoints as singular nouns. I can send you a PR if you want for this.
More important, I'd like to hear your rationale behind this design decision.

Thanks for creating an issue.

Why are most of the endpoints pluralized? I get the impression that there aren't hard and fast rules...

You're right. There really aren't any rules written in stone. https://www.google.com/search?q=rest+apis+singular+or+plural
I guess my thought at the time was /accounts allows you to read the collection/list of accounts and /accounts/:id let's you read a specific account.

I'm thinking about reformulating your endpoints as singular nouns. I can send you a PR if you want for this.

That's find if you want to do that for your project, I don't see a need to change Frame.


Scroll to Top button bug

The Scroll to Top button gets hidden behind the cards and other stuff on the page.

It should be visible clearly above everything.

I can fix this issue.
Can you please assign this to me so that I can start working.

Can i contribute on this?

@SahityaRoy  Maybe I can help on this issue. Could you please assign this to me?
I see this problem still happens (https://sahityaroy.github.io/E-Learning-freesite/)

@SahityaRoy Is this issue still open? i can fix this and also it would look more appropriate if the button gets positioned at the bottom corner of the page.


Formalize the name of the nested Field in a list

Is your feature request related to a problem or challenge? Please describe what you are trying to do.
As discussed in https://github.com/apache/datafusion/pull/13468#discussion_r1848580504, currently it is a convention to have list field member fields (i.e. the inner field) names be item. However this is not formalized in any way, and consequently there's a large number of item literals thrown around the codebase.
Describe the solution you'd like
Add a Field::LIST_FIELD_DEFAULT_NAME constant set to item, and use it in Field::new_list_field.
Also replace any calls to Field::new with explicit item name to use Field::new_list_field instead.
Describe alternatives you've considered
Could also make a free-standing as opposed to an associated constant (or not extract into a constant at all).
Additional context
Spin-off out of https://github.com/apache/datafusion/pull/13468

label_issue.py automatically added labels {'parquet'} from #6785

label_issue.py automatically added labels {'arrow'} from #6785

label_issue.py automatically added labels {'arrow-flight'} from #6785


You cannot have a Bin Type Code setup for both Receive and Pick like this doc. says

Please fix this one.  Had a Partner trying to follow instruction on here, but keep getting errors.  The problem is with this here:
To set up the warehouse for cross-docking
Set up at least one cross-dock bin, if you are using bins. Set up a cross-dock zone, if you are using directed put-away and pick.
A cross-dock bin has the Cross-Dock Bin field selected and must have both Receive and Pick bin types selected. For more information, see Create Bins and Set Up Bin Types.
If you try to setup a Bin Type with both Receive and Pick, you get an error.  You could never do this.  It should really be a Pick and Put-away type of a bin....just like our Cronus database.  Thank you.
The same bad info is on our NAV Docs site too for Cross Docs...
https://docs.microsoft.com/en-us/dynamics-nav-app/warehouse-how-to-cross-dock-items

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: a304e3ff-0989-546f-9f9e-3c4de58b481d
Version Independent ID: b7cf3be8-e789-fd7d-0852-a5b912a0dcd7
Content: How to Cross-Dock Items - Business Central
Content Source: business-central/warehouse-how-to-cross-dock-items.md
Service: dynamics365-business-central
GitHub Login: @SorenGP
Microsoft Alias: edupont

internal workitem: 490886


Can't use with Roboelectric tests

Hi @Commit451, thanks for providing this, it's very handy.
I'm trying to use bypasses within Robolectric tests and it's failing, it says it can't find Bypass classes:
"java.lang.NoClassDefFoundError: Could not initialize class in.uncod.android.bypass.Bypass"
Wondering if you have seen this before? Robolectric is able to load other Android Libraries fine.

That is quite strange... Is this on an open source project where I can see the setup and do some troubleshooting? Otherwise, I will have to figure out Robolectric and see what I can find out.

It's a private repo, but it should be easy to reproduce with a simple project too, I'm not doing anything fancy. I will debug Roboelectric to see what's going on.

I tried to do this but didn't work. I shouldn't be required anyways, since I'm using RobolectricGradleTestRunner.

It seems Robolectric doesn't support native libs :(:
https://github.com/robolectric/robolectric/issues/1171

I don't use Robolectric but I do use Mockito, and I had the same issue. I ended up wrapping Bypass in another class that simply proxied the methods I needed (in this case, markdownToSpannable(String))
public class BypassWrapper {
    private final Bypass mBypass;

    public BypassWrapper(final Bypass bypass) {
      mBypass = bypass;
    }

    public CharSequence markdownToSpannable(final String s) {
      return mBypass.markdownToSpannable(s);
    }
}

and then I mocked that wrapper class.

Had to do the same, @dpkirchner

Good to know, I really have no ideas on how or if this can be fixed, but I will add this to the README for others to see.


Split OSD tests by CI group

Is your feature request related to a problem? Please describe
Currently OSD tests are run all together. OSD has a lot of tests that when all run together fail consistently.
Describe the solution you'd like
We should split the OSD tests by CI groups similar to the OSD CI and now the FTR CI as well
Describe alternatives you've considered
No response
Additional context
No response

Will discuss with the team regarding the split of cgroups through test_finder.sh before adding components in OSD test manifest.
Thanks.

Current metrics:
ci-runn+    1525    1353 99 21:11 pts/1    03:27:09 /home/ci-runner/.cache/Cypress/9.5.4/Cypress/Cypress --no-sandbox -- --run-project /tmp/tmphionwti_/OpenSearch-Dashboards --browser electron --env SECURITY_ENABLED=true,openSearchUrl=https://localhost:9200,WAIT_FOR_LOADER_BUFFER_MS=3000 --headed false --spec cypre
ps -p 1525 -o etime
    ELAPSED
   01:55:46

  Running:  core-opensearch-dashboards/opensearch-dashboards/apps/vis_builder/da          (27 of 57)
            shboard.spec.js

  Visualization Builder Dashboard Tests
    ✓ Should have valid visualizations (25439ms)
    ✓ Should be able to add a visualization

We have noticed when running OSD core integTest, after entering Security test mode it took nearly 2hrs to reach 27/57 test cases.
This next test case also seems hang as after 36min it still didnt move to another.
Thanks.

When trying to use CYPRESS_NO_COMMEND_LOG=1 in opensearch-project/opensearch-dashboards-functional-test#1428, we see issues related to this test. It also shows up errors in another approach of opensearch-project/opensearch-build#4796:

  Running:  core-opensearch-dashboards/opensearch-dashboards/apps/vis_builder/ba          (26 of 57)
            sic.spec.js

  Visualization Builder Base Tests
    ✓ Show existing visualizations in Visualize and navigate to it (21988ms)
    ✓ Navigate to Visualization Builder from Create Visualization (8311ms)
    1) Create new basic metric visualization
    2) Be able to add/ edit and remove a field
    3) Be able to save a visualization

  2 passing (5m)
  3 failing

  1) Visualization Builder Base Tests
       Create new basic metric visualization:
     AssertionError: Timed out retrying after 60000ms: Expected to find element: `[data-test-subj="homeIcon"]`, but never found it.
      at Context.eval (http://localhost:5601/__cypress/tests?p=cypress/integration/core-opensearch-dashboards/opensearch-dashboards/apps/vis_builder/basic.spec.js:600:13)

  2) Visualization Builder Base Tests
       Be able to add/ edit and remove a field:
     AssertionError: Timed out retrying after 60000ms: Expected to find element: `[data-test-subj="homeIcon"]`, but never found it.
      at Context.eval (http://localhost:5601/__cypress/tests?p=cypress/integration/core-opensearch-dashboards/opensearch-dashboards/apps/vis_builder/basic.spec.js:600:13)

  3) Visualization Builder Base Tests
       Be able to save a visualization:
     AssertionError: Timed out retrying after 60000ms: Expected to find element: `[data-test-subj="homeIcon"]`, but never found it.
      at Context.eval (http://localhost:5601/__cypress/tests?p=cypress/integration/core-opensearch-dashboards/opensearch-dashboards/apps/vis_builder/basic.spec.js:600:13)

Related to: https://github.com/opensearch-project/opensearch-dashboards-functional-test/blame/2.15/cypress/integration/core-opensearch-dashboards/opensearch-dashboards/apps/vis_builder/basic.spec.js#L55-L57
It was suggested by team to reduce the defaultCommandTimeout from 60s to 10s in this PR: https://github.com/opensearch-project/opensearch-dashboards-functional-test/pull/1418/files#diff-db1f8bb89a89d5b089b39a2af3c27ab75092f1844a158eca0a76445d513d9044
Also this change has failed many other OSD plugins tests as documented in https://github.com/opensearch-project/OpenSearch/issues/14442, therefore we revert the above change in https://github.com/opensearch-project/opensearch-dashboards-functional-test/pull/1421.
There are 2 approaches right now to resolve this:

Team push for root cause the exact issue and fix on test cases
Infra try to only apply the defaultCommandTimeout with 10s just for OSD Core and try to pass the checks.

Thanks.

After doing the following changes we now see a consistent failure on this error on NOSEC on ARM64/X64 TAR.
Running:  core-opensearch-dashboards/opensearch-dashboards/apps/vis_type_table            (3 of 5)
            /embed.spec.js

  table visualization in embedded mode
    ✓ Should open table vis in embedded mode (31196ms)
    ✓ Should allow to filter in embedded mode (10004ms)
    ✓ Should filter for value in embedded mode (15156ms)
    1) Should filter out value in embedded mode

  3 passing (2m)
  1 failing

  1) table visualization in embedded mode
       Should filter out value in embedded mode:
     CypressError: Timed out retrying after 60050ms: `cy.click()` failed because this element is detached from the DOM.

`<button class="euiButtonEmpty euiButtonEmpty--primary euiButtonEmpty--small" type="button" aria-label="Filter out value: 0" data-test-subj="filterOutValue">...</button>`

Cypress requires elements be attached in the DOM to interact with them.

The previous command that ran was:

  > `cy.find()`

This DOM element likely became detached somewhere between the previous and current command.

Common situations why this happens:
  - Your JS framework re-rendered asynchronously
  - Your app code reacted to an event firing and removed the element

You typically need to re-query for the element or add 'guards' which delay Cypress from running new commands.

https://on.cypress.io/element-has-detached-from-dom
      at $Cy.ensureAttached (http://localhost:5601/__cypress/runner/cypress_runner.js:163936:76)
      at runAllChecks (http://localhost:5601/__cypress/runner/cypress_runner.js:150536:12)
      at retryActionability (http://localhost:5601/__cypress/runner/cypress_runner.js:150616:16)
      at tryCatcher (http://localhost:5601/__cypress/runner/cypress_runner.js:13022:23)
      at Function.Promise.attempt.Promise.try (http://localhost:5601/__cypress/runner/cypress_runner.js:10296:29)
      at whenStable (http://localhost:5601/__cypress/runner/cypress_runner.js:168808:63)
      at http://localhost:5601/__cypress/runner/cypress_runner.js:168305:14
      at tryCatcher (http://localhost:5601/__cypress/runner/cypress_runner.js:13022:23)
      at Promise._settlePromiseFromHandler (http://localhost:5601/__cypress/runner/cypress_runner.js:10957:31)
      at Promise._settlePromise (http://localhost:5601/__cypress/runner/cypress_runner.js:11014:18)
      at Promise._settlePromise0 (http://localhost:5601/__cypress/runner/cypress_runner.js:11059:10)
      at Promise._settlePromises (http://localhost:5601/__cypress/runner/cypress_runner.js:11139:18)
      at Promise._fulfill (http://localhost:5601/__cypress/runner/cypress_runner.js:11083:18)
      at http://localhost:5601/__cypress/runner/cypress_runner.js:12697:46
  From Your Spec Code:
      at Context.eval (http://localhost:5601/__cypress/tests?p=cypress/support/index.js:3171:3)

The previous comments vis builder related errors are resolved after combing https://github.com/opensearch-project/opensearch-build/pull/4796 and 10s reduce on defaultCommandTimeout.

After more tries I realize my initial implementation of changing 60s to 10s is noop due to cypress only accept int instead of str as value type for defaultCommandTimeout.
This means if we apply the 10s correctly, the test will immediately fail from the start due to not enough wait:

  Running:  core-opensearch-dashboards/opensearch-dashboards/apps/vis_type_table            (1 of 5)
            /basic.spec.js

  table visualization basic functions
    1) "before all" hook for "Should apply changed params and allow to reset"

  0 passing (26s)
  1 failing

  1) table visualization basic functions
       "before all" hook for "Should apply changed params and allow to reset":
     AssertionError: Timed out retrying after 10000ms: Expected to find element: `[data-test-subj="superDatePickerstartDatePopoverButton"],[data-test-subj="superDatePickerShowDatesButton"]`, but never found it.

Because this error occurred during a `before all` hook we are skipping the remaining tests in the current suite: `table visualization basic f...`
      at Context.eval (http://localhost:5601/__cypress/tests?p=cypress/support/index.js:1304:110)

So we back to use 60s for all test.

We have identified that the ftrepo is using ubuntu-latest while jenkins is using alma8.
Opened an issue to track this so ftrepo is onboarding jenkins ci images.

https://github.com/opensearch-project/opensearch-dashboards-functional-test/issues/1430

OSD Core test running on Windows is facing a json formatting issue and failed:
osd-core-jsonissue-stdout.txt
Related to this: https://github.com/opensearch-project/OpenSearch-Dashboards/pull/6970 it seems like.
cc: @AMoo-Miki to take a look on this.
Thanks!

After doing the following changes we now see a consistent failure on this error on NOSEC on ARM64/X64 TAR.
Running:  core-opensearch-dashboards/opensearch-dashboards/apps/vis_type_table            (3 of 5)
            /embed.spec.js

  table visualization in embedded mode
    ✓ Should open table vis in embedded mode (31196ms)
    ✓ Should allow to filter in embedded mode (10004ms)
    ✓ Should filter for value in embedded mode (15156ms)
    1) Should filter out value in embedded mode

  3 passing (2m)
  1 failing

  1) table visualization in embedded mode
       Should filter out value in embedded mode:
     CypressError: Timed out retrying after 60050ms: `cy.click()` failed because this element is detached from the DOM.

`<button class="euiButtonEmpty euiButtonEmpty--primary euiButtonEmpty--small" type="button" aria-label="Filter out value: 0" data-test-subj="filterOutValue">...</button>`

Cypress requires elements be attached in the DOM to interact with them.

The previous command that ran was:

  > `cy.find()`

This DOM element likely became detached somewhere between the previous and current command.

Common situations why this happens:
  - Your JS framework re-rendered asynchronously
  - Your app code reacted to an event firing and removed the element

You typically need to re-query for the element or add 'guards' which delay Cypress from running new commands.

https://on.cypress.io/element-has-detached-from-dom
      at $Cy.ensureAttached (http://localhost:5601/__cypress/runner/cypress_runner.js:163936:76)
      at runAllChecks (http://localhost:5601/__cypress/runner/cypress_runner.js:150536:12)
      at retryActionability (http://localhost:5601/__cypress/runner/cypress_runner.js:150616:16)
      at tryCatcher (http://localhost:5601/__cypress/runner/cypress_runner.js:13022:23)
      at Function.Promise.attempt.Promise.try (http://localhost:5601/__cypress/runner/cypress_runner.js:10296:29)
      at whenStable (http://localhost:5601/__cypress/runner/cypress_runner.js:168808:63)
      at http://localhost:5601/__cypress/runner/cypress_runner.js:168305:14
      at tryCatcher (http://localhost:5601/__cypress/runner/cypress_runner.js:13022:23)
      at Promise._settlePromiseFromHandler (http://localhost:5601/__cypress/runner/cypress_runner.js:10957:31)
      at Promise._settlePromise (http://localhost:5601/__cypress/runner/cypress_runner.js:11014:18)
      at Promise._settlePromise0 (http://localhost:5601/__cypress/runner/cypress_runner.js:11059:10)
      at Promise._settlePromises (http://localhost:5601/__cypress/runner/cypress_runner.js:11139:18)
      at Promise._fulfill (http://localhost:5601/__cypress/runner/cypress_runner.js:11083:18)
      at http://localhost:5601/__cypress/runner/cypress_runner.js:12697:46
  From Your Spec Code:
      at Context.eval (http://localhost:5601/__cypress/tests?p=cypress/support/index.js:3171:3)

The previous comments vis builder related errors are resolved after combing #4796 and 10s reduce on defaultCommandTimeout.

Create issue:

https://github.com/opensearch-project/opensearch-dashboards-functional-test/issues/1431

More Windows issues after applying the .gitattributes to fix json formatting:
  Running:  core-opensearch-dashboards/opensearch-dashboards/apps/data_explorer/            (5 of 8)
            shared_links.spec.js

  shared links
    shared links with state in query
      1) should allow for copying the snapshot URL
      √ should allow for copying the snapshot URL as a short URL
      2) should allow for copying the saved object URL
    shared links with state in sessionStorage
      √ should allow for copying the snapshot URL (17659ms)
      √ should allow for copying the snapshot URL as a short URL
      √ should allow for copying the saved object URL (13177ms)

  4 passing (3m)
  2 failing

  1) shared links
       shared links with state in query
         should allow for copying the snapshot URL:
     AssertionError: Timed out retrying after 60000ms: expected 'http://localhost:5601/app/data-explorer/discover?security_tenant=global#/?_a=(discover:(columns:!(_source),isDirty:!
f,sort:!()),metadata:(indexPattern:\'logstash-*\',view:discover))&_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:\'2015-09-19T06:31:44.000Z\',to:\'2015-09-23T18:31:44
.000Z\'))&_q=(filters:!(),query:(language:kuery,query:\'\'))' to satisfy [Function]
      at Context.eval (http://localhost:5601/__cypress/tests?p=cypress\integration\core-opensearch-dashboards\opensearch-dashboards\apps\data_explorer\shared_links.spec.js:262:8)

  2) shared links
       shared links with state in query
         should allow for copying the saved object URL:

      Timed out retrying after 60000ms
      + expected - actual

      -'http://localhost:5601/app/data-explorer/discover/#/view/ab12e3c0-f231-11e6-9486-733b1ac9221a?_g=(filters%3A!()%2CrefreshInterval%3A(pause%3A!t%2Cvalue%3A0)%2Ctime%3A(from%3A
\'2015-09-19T06%3A31%3A44.000Z\'%2Cto%3A\'2015-09-23T18%3A31%3A44.000Z\'))'
      +'http://localhost:5601/app/data-explorer/discover/#/view/ab12e3c0-f231-11e6-9486-733b1ac9221a?_g=(filters%3A!()%2CrefreshInterval%3A(pause%3A!t%2Cvalue%3A0)%2Ctime%3A(from%3A
\'2015-09-19T13%3A31%3A44.000Z\'%2Cto%3A\'2015-09-24T01%3A31%3A44.000Z\'))'

      at Context.eval (http://localhost:5601/__cypress/tests?p=cypress\integration\core-opensearch-dashboards\opensearch-dashboards\apps\data_explorer\shared_links.spec.js:281:84)

Adding multiple fixes to the OSD Core related issues in ftrepo here:

https://github.com/opensearch-project/opensearch-dashboards-functional-test/pull/1432

Apparently this PR is missed in backports, thus showing all these errors here:

https://github.com/opensearch-project/opensearch-dashboards-functional-test/pull/969

After @rishabh6788 and @peterzhuamazon changes we now able to run green end-to-end integTest on Jenkins with ci groups.
Can we close this issue for now @ashwin-pc ?
Thanks.

Do we have a follow up issue to improve this since you guys weren't happy manually configuring the ci groups in multiple places?

From infra team's perspective the ci-group # is handled in test manifest, see https://github.com/opensearch-project/opensearch-build/blob/main/manifests/2.15.0/opensearch-dashboards-2.15.0-test.yml#L21.
So in future if any ci-group is added or deleted from FT repo then we just have to update this number.
There has to be clear communication between FT repo ci-group changes and infra team.
No more action items as of now.

As the new issue is created now in OSD core, we will close this old issue as it has been implemented in 2.15.0.
Thanks.


Double beep when SpO² changes

Whenever oxygen saturation drops or raises the first higher or lower beep is played with double the volume.

Thanks for finding the bug(s), I'll look into them soon. :)


File mod error

When trying to load Minecraft under the Forge client with both Schematica and LuantriusCore [all are 1.12.2, up to date], I get an error in the game. It says that the forge mod is missing, but I loaded it up on the Forge launcher? I might just be dumb but I'm literally confused :(
Edit: this is what it says, visually. http://prntscr.com/hizols

Update Forge. You're using an old version.

I made sure to download the latest version though.

What is the "latest" version?


helm api test writes to "chronicle-system" namespace

Now we have the "chronicle-system" namespace let's use it.
CHRON-449
PR Checklist
Please complete this checklist after opening your PR

[x] I have updated documentation as necessary
[x] I have updated helm chart(s) if needed
[x] I have added tests if needed
[x] All new and existing tests are passing
[x] Any breaking changes are clearly flagged and documented
[x] I’ve included a link to any relevant ticket(s)

Test still passes happily, as expected.


Update weekly meeting notes

Adding notes from the past two meetings. Doesn't really need reviewed.

Might as well add the notes from last Friday~


Bitwise procedures

In BiwaScheme <IP_ADDRESS> used here there are defined procedures | & >> << but they are undefined in demo on http://www.biwascheme.org/
where they removed from biwascheme?

@jcubic I found http://terminal.jcubic.pl/js/biwascheme.func.js has these functions, so I think they are just not part of BiwaScheme :-)


Can't disable clear-data-on-exit

First I open chrome://flags/#clear-data-on-exit, then disable the feature, browser relaunch. I login in some website, then close browser  and open it again, the account of the website not in login state.
version: ungoogled-chromium_100.0.4896.60-1.1_installer-x64.exe
system: windows 10

Do you have "Clear cookies and site data when you close all windows" enabled in chrome://settings/cookies?

Do you have "Clear cookies and site data when you close all windows" enabled in chrome://settings/cookies?

Sorry, my mistake. After I do that setting above, things go on right way.


Home Assistant causes issues with NGINX's zstd compression

Describe the bug
When using home-assistant and nginx with zstd compression, nginx's service worker becomes unresposive once a request is made to home-assistant.
Steps To Reproduce
Steps to reproduce the behavior:

Enable home-assistant with nginx as a reverse proxy:{
  services = {
    home-assistant = {
      enable = true;
      config = {
        default_config = { };
        http = {
          server_host = [ "<IP_ADDRESS>" ];
          trusted_proxies = [ "<IP_ADDRESS>" ];
          use_x_forwarded_for = true;
        };
      };
    };
    nginx = {
      enable = true;
      recommendedProxySettings = true;
      recommendedZstdSettings = true;
      virtualHosts."example.org" = {
        extraConfig = # nginx
          ''
            proxy_buffering off;
          '';
        locations."/" = {
          proxyPass = "http://<IP_ADDRESS>:8123";
          proxyWebsockets = true;
        };
      };
    };
  };
}

Make a request to home-assistant
Watch the nginx process go up to 100% CPU consumption.
Restarting nginx fixes it temporarily but a new request to home-assistant causes the spinloop to happen again.
Add zstd off; to home-assistant's virtualHosts.extraConfig and watch the problem go away.

Expected behavior
I wanted a warning or some documentation indicating that zstd and home-assistant did not work well together.
Additional context

Core dumping the nginx worker process shows it is stuck during zstd compresssion.
I came across this when I installed home-assistant on a server that had harmonia on it, but harmonia as of a recent commit no longer needs zstd compression.

Metadata

❯ nix run nixpkgs#nix-info -- -m
 - system: `"x86_64-linux"`
 - host os: `Linux 6.6.60, NixOS, 24.11 (Vicuna), 24.11.20241123.0c58267`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Lix, like Nix) 2.91.1
System type: x86_64-linux
Additional system types: i686-linux, x86_64-v1-linux, x86_64-v2-linux, x86_64-v3-linux
Features: gc, signed-caches
System configuration file: /etc/nix/nix.conf
User configuration files: /home/jalil/.config/nix/nix.conf:/etc/xdg/nix/nix.conf:/home/jalil/.nix-profile/etc/xdg/nix/nix.conf:/nix/profile/etc/xdg/nix/nix.conf:/home/jalil/.local/state/nix/profile/etc/xdg/nix/nix.conf:/etc/profiles/per-user/jalil/etc/xdg/nix/nix.conf:/nix/var/nix/profiles/default/etc/xdg/nix/nix.conf:/run/current-system/sw/etc/xdg/nix/nix.conf
Store directory: /nix/store
State directory: /nix/var/nix
Data directory: /nix/store/j6f86lyxvw2iig2vxzgd4aib0r6jf0z7-lix-2.91.1/share`
 - nixpkgs: `/nix/store/fnbr9s78sy4islw83vsaf0hgf88hih5v-source`

Notify maintainers

nginx: @fpletz @RaitoBezarius @dasJ @Conni2461
home-assistant: @fabaff @mweinelt @Mic92

Note for maintainers: Please tag this issue in your PR.

Add a :+1: reaction to issues you find important.

Not a Home Assistant issue, but I've seen the issue with harmonia as well, which now moved away from recommending nginx's zstd integration.

Been running harmonia on stable for ~1 year and yesterday (when I set up home-assistant) is the first time this happened, that's why I assumed home-assistant was related to it.

In harmonia it would be also slower to use nginx's zstd compression. Because it will not use multiple cores if you serve a single client unless you also disable http 2.


ESM support

Take a look at some options to publish mappersmith both as CJS+ESM.

https://antfu.me/posts/publish-esm-and-cjs
https://github.com/developit/microbundle
https://tsdx.io/#quick-start

ESM support is in v2.43.0-beta.1


enhanceMTMV allow paimon table has multi partition keys

What problem does this PR solve?

MTMV allow paimon table has multi partition keys
add case

Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
MTMV allow paimon table has multi partition keys
Release note
None
Check List (For Author)

Test

[x] Regression test
[ ] Unit Test
[ ] Manual test (add detailed scripts or steps below)
[ ] No need to test or manual test. Explain why:

[ ] This is a refactor/code format and no logic has been changed.
[ ] Previous test can cover this change.
[ ] No code files have been changed.
[ ] Other reason

Behavior changed:

[ ] No.
[x] Yes.

Does this need documentation?

[x] No.
[ ] Yes.

Check List (For Reviewer who merge this PR)

[ ] Confirm the release note
[ ] Confirm test cases
[ ] Confirm document
[ ] Add branch pick label

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.
Please clearly describe your PR:

What problem was fixed (it's best to include specific error reporting information). How it was fixed.
Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
What features were added. Why was this function added?
Which code was refactored and why was this part of the code refactored?


About two-stage address translation under V mode

Just to make sure, as I understand it, is it like a nested page walk? Which means for example, up to 24 memory accesses for Sv48.


find($id) Returning Null on Laravel 7

Laravel Version: 7.28
jenssegers/mongodb Version: dev-develop
PHP Version: 7.3.18

I'm trying to use mongodb but find function returning null.
My Model:
use Jenssegers\Mongodb\Eloquent\Model;

class Post extends Model
{
	protected $primaryKey = 'id';
}

My Controller:
public function show($id)
    {
            // Not working
	    $find = Post::find($id);

            // Not working
	    $find = Post::where('id', $id)->get();

            //  Working
	    $find = Post::find(1);

            // Working
	    $find = Post::where('id', 1)->get();

	    dd($find);
}

dd returns null. But if I use $find = Post::find(1) I can see result (With exact id). Is there a solution for this or am I doing something wrong?

Does this fix your issue https://github.com/jenssegers/laravel-mongodb/issues/2087#issuecomment-690020966 ?
Thanks!

Added protected $keyType = 'int'; to my model but still not working.

I will try the following:
Post::raw()->find(array('id' => $id));
That will use MongoDB driver, passing over this package, can you find something using this?
Also, dd($id); returns an int 1?

Hello,
Could you please try version 3.7?
Thanks!

Hello,
Could you please try version 3.7?
Thanks!

Sorry no changes...

Sorry, I can't reproduce.

@reasecret
use this:
use Jenssegers\Mongodb\Eloquent\Model;

class Post extends Model
{
	protected $primaryKey = 'id';
        protected $keyType = 'int';
}

@reasecret
use this:
use Jenssegers\Mongodb\Eloquent\Model;

class Post extends Model
{
	protected $primaryKey = 'id';
        protected $keyType = 'int';
}

I've tried that but not worked.

@reasecret
use this:
use Jenssegers\Mongodb\Eloquent\Model;

class Post extends Model
{
	protected $primaryKey = 'id';
        protected $keyType = 'int';
}

$_id = '60a73dd8ce649c40f37e5374';
ok this fix my problem , but find($_id) return null ...

Laravel Version: 7.28
jenssegers/mongodb Version: dev-develop
PHP Version: 7.3.18

I'm trying to use mongodb but find function returning null.
My Model:
use Jenssegers\Mongodb\Eloquent\Model;

class Post extends Model
{
	protected $primaryKey = 'id';
}

My Controller:
public function show($id)
    {
            // Not working
	    $find = Post::find($id);

            // Not working
	    $find = Post::where('id', $id)->get();

            //  Working
	    $find = Post::find(1);

            // Working
	    $find = Post::where('id', 1)->get();

	    dd($find);
}

dd returns null. But if I use $find = Post::find(1) I can see result (With exact id). Is there a solution for this or am I doing something wrong?

$find = Post::find($id);
        // Not working
  $find = Post::where('id', $id)->get();

        //  Working
  $find = Post::find(1);

        // Working
  $find = Post::where('id', 1)->get();

How to solve it in the end？？？

@enamor looks like there is no solution.

I have a similar problem.
Database table has a primary key for id set by migration $table->id().
Tx::find(1); // returns all results from the table;
Tx::find(1)->toSql(); // show SELECT * FROM table;
Tx::where('id', 1); // works as expected
Tx::where('id', 1)->toSql(); // show SELECT * FROM table WHERE id = 1;
Never had issues with find() before, google lead me here, I'm on Laravel ^8.40

$id maybe string, perhaps you need use：intval($id)


CASMSEC-402: Kyverno chart needs to handle a large amount of change requests during CSM upgrade

Summary and Scope
Kyverno chart needs to handle a large amount of change requests during CSM upgrade. Upgrading kyverno from version 1.7.5 to 1.9.5.
Testing
Performed upgrade testing along with policy, policy report and cluster policy check.
Attaching logs here.
kyverno_upgrade_logs_175_to_195.txt
Tested on:
MUG
Test description:
Upgrade testing.

Left Kyverno 1.9.5 running on #Mug having CSM 1.5 for few weeks and have not received any issues reported due to new version of kyverno 1.9.5   and this soak testing was done for ay compatibility issues of Kubernetes 1.22 with Kyverno 1.9.5 .


Discussion- Is it possible to compare more than 2 variables ?

I was wondering if we can extend the cababiliti to diff not just 2 things, but say more things
Concern i have, how much it would impact performance ?

I've thought about this before, but I don't think the diff algorithm is really made to compare more than two things at a time. As such it would be too much of an effort, and beyond the scope of where I'm willing to take this. If someone has a different 'triple or more' diff library, then maybe the display can be implemented.


[SR-7825] SwiftPM should consider a target with header files but no sources as a ClangTarget

Previous ID
SR-7825

Radar
rdar://problem/34412874

Original Reporter
@aciidb0mb3r

Type
Bug

Additional Detail from JIRA

Votes
0

Component/s
Package Manager

Labels
Bug, StarterBug

Assignee
None

Priority
Medium

md5: 8153b914e535cdeee67774fc66e8763e

Issue Description:
Currently, swiftpm will complain that there are no source files in the target.

@aciidb0mb3r
I make a draft https://github.com/apple/swift-package-manager/pull/6006
If no one has worked on this issue, could you review the changes?


Poor performance caused by updateEntryOrder

The updateEntryOrder in src/Collections/CollectionRepository.php causes the site to save all items in the collection every time a page is updated.
This really hurts performance to a point where creating/saving/deleting entries does not work at all.
This is especially bad if the site updates a search index  or purges a vanish cache on save.
For example a site may have 100 pages. Every time a page is saved the search index in meilli is updated and the tag is purged from varnish. So creating/saving a page will result in 200 http requests and in practice not end before the workers timelimit is reached.

Hmm maybe we could turn that into a job that you can queue and specify a queue for?

Opened a PR here: https://github.com/statamic/eloquent-driver/pull/107 - let me know if this fixes the performance issues for you

@tomhelmer can you let me know if the PR solves the issue for you?

Just came across this as we are facing a problem with the queue solution. We have a structured page tree with ~3000 pages. Whenever one site is moved to a different parent, thousands of jobs are created effectively clogging the queue. No idea how to solve this issue right now, but maybe there is a more efficient way to do this...?

@K3CK is this not the point of a queue in that it works through the entry order updates according to your queue config? I would feel like this is already the most 'optimised' way of handling this.

@ryanmitchell Yes, sure, that's the point of the queue. But I don't understand why all pages of a page tree need to be saved when e.g. only the parent of one page has changed. Because that's what's happening in updateEntryOrder in \Statamic\Eloquent\Collections\CollectionRepository. All of the collection's entries are loaded and put into the queue for saving no matter if they or their parents or children have changed at all.
So imagine an editor who is doing a little restructuring of a page tree and let's say moves 3 pages. In our case with 2000-3000 pages in the tree, we end up with at least UpdateCollectionEntryOrder 9000 jobs. I refuse to accept that this is intended 😉
For me this looks like a bug. Especially because the method's $ids parameter isn't used at all in the method body.
Right now the method looks like this, which loads all the collections entries no matter what:
    public function updateEntryOrder(CollectionContract $collection, $ids = null)
    {
        $collection->queryEntries()
            ->get(['id'])
            ->each(function ($entry) {
                UpdateCollectionEntryOrder::dispatch($entry->id())
                    ->onQueue(config('statamic.eloquent-driver.collections.update_entry_order_queue', 'default'));
            });
    }

I'd suggest to change it to the following utilizing the $ids parameter which I suppose was intended in the first place, although I don't know if NOT saving all pages all the time has some side effects I'm not aware of:
    public function updateEntryOrder(CollectionContract $collection, $ids = null)
    {
        if ($ids) {
            collect($ids)
                ->each(function ($id) {
                    UpdateCollectionEntryOrder::dispatch($id)
                        ->onQueue(config('statamic.eloquent-driver.collections.update_entry_order_queue', 'default'));
                });
        }
    }

The reason we ignore ids is because the Stache store does and we are always reaching for replication of the same behaviour with this driver. See:
https://github.com/statamic/cms/blob/1c287bc5dd89169b19cc550bf2fd94f8aab25969/src/Stache/Stores/CollectionsStore.php#L90C13-L96
I'd happily review a PR for using $ids in there query if it can be shown theres no different in the data saved.

Ok, got it. So maybe the first question to clarify would be why the Stache Driver doesn't use the $ids. Maybe re-creating the whole page tree via indexes is faster than doing it for an collection of ids. So I'll see how far I'll get with this...

Just for the record if someone comes across this issue: Updating only the entries in the $ids is not working like I was expecting. It doesn't take child entries into account, so that you can end up with completely mixed up page structures when moving pages with children.
One thing I realized, though: The UpdateCollectionEntryOrder is doing a save() operation for each entry in the collection, triggering all attached events for every entry. In our case that was the actual cause for the performance issues as the Meilisearch index gets updated (with an HTTP request) on every save. Doing this for 3000 entries adds up, even if it's in the queue.
So I was wondering if it might make sense to provide an option to saveQuietly() the entries, leaving out the attached events. In most cases this should be enough I guess, because effectively the save operation here is only needed to update the entry's order value. So updating the search index should not be needed. And cache clearing could take place once after all saves.
@ryanmitchell Does this makes sense for you? Should I create a PR for that?

I think a save() is correct as the data has changed and you may want to do something in response. You could bind your own collection repository and overwrite that method and job so it implements save quietly instead?
or we could add a config to allow the job to be specified so you'd only have to change that?

Thanks @ryanmitchell, we went with the "bind your own repository" solution for now.


⚠ HDBits has degraded performance

In 69f2576, HDBits ($HDB) experienced degraded performance:

HTTP code: 200
Response time: 18675 ms

Resolved: HDBits performance has improved in 214751b after 6 minutes.


Document indexOf return value when not found

fixes #60570
The documentation for indexOf on arrays already mentioned that the method returns -1 when the value is not found:

But for strings, this information was missing thus far:

Of course the user would have been able to puzzle this together by seeing that the return type is just number, not something like number | undefined, thus allowing them to figure out that the sentinel value probably must be -1. Nevertheless, having to stop and think about this is unnecessary friction for people who don't remember this fact by heart, for example people who jump between programming languages a lot.
I also noticed that the same information was missing for all the TypedArrays, so I went ahead and extended the docs there as well.

@microsoft-github-policy-service agree

note that i didn't get the tests to pass. i experimented a bit locally and to me it seemed like the process is to copy over the generated files as the new baseline references, but even after doing that the tests still didn't pass.
does anyone know how i get the test runner to print the actual diffs rather than just fail the test?

@jakebailey ah, thanks for the hint! turns out my problem was that my editor changed some crlf's to lf when I tried to manually copy over the updated files before  :D


Add open source license.

https://choosealicense.com/
In the past GSoC projects have used MIT or BSD licenses which are broadly permissive: others can use, modify, republish your code and are common for open source libraries.
@TGAmbra @Devdoot57

Fixed by: https://github.com/orcasound/acoustic-separation/commit/a5abb0c98f5b0ebc6d7a7e88a2e4892f61f30374


As a user, I want to view a list of all my students so I can keep track of all my students

Closing as it already exists in AB3


make salt configurable by data-isso-salt

make salt configurable by data-isso-salt

Will you add more functionality? It is currently stored to an unused variable.


Adds control keys and specifying update policy

Fixes GH-94
This commit adds a new resource type key, which creates a rndc key which can be used to control bind using nsupdate.
Also this commit allows to specify update policy rules for zones.
I see that the beaker tests are failing and I also have not written a beaker test for this one.
Please let me know a beaker test is required.

Bedankt!. That was a very fast reply and review 👍 . I have applied all the requested changes. Do you want me to squash both commits?

I think we already had failing beaker tests before this patch so I think you can ignore that. Especially since we don't test the modified code.

oh snap! looks like i created a pull request for the same issue. #109

What is next? Do I have to do something to get this merged?

merged, bedankt @zyronix!


Technical Diagram

Description
Make technical diagrams of the project to assist learning and understanding.

StackOverflow discussion for generating UML diagrams for python projects.

Use PyCharm's Python Class Diagram feature.


move to Kiali v1.36

fixes: https://issues.redhat.com/browse/MAISTRA-2466
This was modeled after https://github.com/maistra/istio-operator/pull/723

/cc @rcernich @brian-avery


Warn error options invalid when warn or error set to none

resolves #10452
Problem
If a field in warn_error_options was set to None, a valid WarnErrorOptions object was not constructed.
Solution
Fix the function to normalize the warn_error_options dictionary.
Checklist

[x] I have read the contributing guide and understand what's expected of me
[x] I have run this code in development and it appears to resolve the stated issue
[x] This PR includes tests, or tests are not required/relevant for this PR
[x] This PR has no interface changes (e.g. macros, cli, logs, json artifacts, config files, adapter interface, etc) or this PR has already received feedback and approval from Product or DX
[x] This PR includes type annotations for new and modified functions

I see that you intended "exclusive_primary_alt_value_setting" as a general purpose utility, but it looks like premature generalization to me.  What I've found is that when/if you actually get to some other use case that falls kind of in the same category, it will have other constraints or conditions and the intended "general" utility won't actually work at all without complicating changes.
I think it makes more sense to derive a general use case utility when there is more than one use case.

I see that you intended "exclusive_primary_alt_value_setting" as a general purpose utility, but it looks like premature generalization to me. What I've found is that when/if you actually get to some other use case that falls kind of in the same category, it will have other constraints or conditions and the intended "general" utility won't actually work at all without complicating changes.
I think it makes more sense to derive a general use case utility when there is more than one use case.

I'm not sure that I agree that it's a pre-mature generalization, but I'm absolutely open to discussing it further. Can you talk more about your concern that makes the existing function pre-mature? In my mind, there is more than one use case. The existing function addresses the use case of "A key in a dictionary is being renamed to another, but we want to support both as inputs". It is being used for two keys. It renames "error" to "include" and "warn" to "exclude".
I do agree that there could be more constraints. The issue that this PR aims to address is one of those, the ability to have a default value association. This could simply be addressed as outlined above, extending the existing function or external to it. There are additional constraints that could be imagined, such as supporting multiple "alt" key names for a given "primary". I don't recommend we do work to handle multiple "alts" as we don't have an existing or planned use case where that is necessary.

From your comment and my comments, my understanding is that we view the underlying discrete cases differently. I also few them both as valid. The work I did on renaming dictionaries keys in dictionaries has more than one use case. However, we need to default all the values for keys in warn_error_options to an empty list if the value is None. I think this could be included or excluded as part of the exclusive_primary_alt_value_setting, and which way it goes isn't too important in my mind. I think for the sake of defaulting all three values in the same manner though, that we should do it externally. A compromise solution being
def normalize_warn_error_options(
    dictionary: Dict[str, Any],
) -> None:
    convert = {
        "error": "include",
        "warn": "exclude",
        "silence": None,
    }

    for key, alt convert.items():
        if alt is not None:
            exclusive_primary_alt_value_setting(warn_error_options, key, alt, "warn_error_options")

        if dictionary.get(key) is None:
            dictionary[key] = []


Cannot read properties of undefined (reading 'map')

TypeError: Cannot read properties of undefined (reading 'map')
    at RegisterCommandService.<anonymous> (/usr/src/app/node_modules/@discord-nestjs/core/dist/services/register-command.service.js:73:54)
    at Generator.next (<anonymous>)
    at fulfilled (/usr/src/app/node_modules/@discord-nestjs/core/dist/services/register-command.service.js:17:58)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)

If you assign registerCommandOptions to undefined, this happens. Easily fixable.