Low quality matplotlib inline plots on hidpi display

Issue Report Checklist

[x] Searched the issues page for similar reports
[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[x] Tried basic troubleshooting (if a bug/error)

[x] Restarted Spyder
[x] Reset preferences with spyder --reset
[ ] Reinstalled the latest version of Anaconda
[x] Tried the other applicable steps from the Troubleshooting Guide

[x] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
What steps reproduce the problem?

set a custom high DPI scalling (default 1.5 or any larger value) in spyder Preferences -> General
plot a line with matplotlib

import numpy as np
from matplotlib import pyplot as pp
pp.figure()
pp.plot(np.arange(100), 'k')
pp.grid()

change inline backend figure format to retina

%config InlineBackend.figure_format = 'retina'

repeat step 2.

What is the expected output? What do you see instead?
Expected the output to be smooth high quality DPI inline plot after change in inline figure format but instead blurry jagged low quality version is displayed as before

Jupyter notebook run shows correct smooth plot after inline figure format change

Versions

Spyder version: 3.3.4
Python version: 3.6.7 64-bit
Qt version: 5.12.2
PyQt version: 5.12.1
Operating System name/version: Linux Mint 19.1 Cinnamon 4.0.10

Dependencies

IPython >=4.0     :  7.4.0 (OK)
cython >=0.21     :  0.29.6 (OK)
jedi >=0.9.0      :  0.13.3 (OK)
matplotlib >=2.0.0:  3.0.3 (OK)
nbconvert >=4.0   :  5.4.1 (OK)
numpy >=1.7       :  1.16.2 (OK)
pandas >=0.13.1   :  0.24.2 (OK)
psutil >=0.3      :  5.6.1 (OK)
pycodestyle >=2.3 :  2.5.0 (OK)
pyflakes >=0.6.0  :  2.1.1 (OK)
pygments >=2.0    :  2.3.1 (OK)
pylint >=0.25     :  2.3.1 (OK)
qtconsole >=4.2.0 :  4.4.3 (OK)
rope >=0.9.4      :  0.14.0 (OK)
sphinx >=0.6.6    :  2.0.1 (OK)
sympy >=0.7.3     :  1.4 (OK)

@dalthviz, please take a look at this one. We need to add a new option in the Inline backend section of our preferences called
[ ] Display images in high resolution

And pass that option to the kernel.

using Kubuntu 18.10 installation there is no such a problem even with default png backend inline format
Python 3.6.7 64-bit | Qt 5.12.2 | PyQt5 5.12.1 | Linux 4.18.0-17-generic

Then I'd say it's a Qt issue and not an Spyder one.

Display images in high resolution

If this is still a correction needed, why not make it a default (instead of adding the option?)

Because in non-HDPI screens plots will look huge.

Because in non-HDPI screens plots will look huge.

Got it thanks!
Is there an overall High DPI setting for spyder? Could we link to that one?

There's what Rafa added in
Preferences > General > Screen resolution

But linking both things (a change in that options with a change in the inline backend) is not work for Spyder 3.
Should we leave this for Spyder 4? It's not that critical.

Should we leave this for Spyder 4? It's not that critical.

Yes, I believe is the right place to fix it.

Then I'd say it's a Qt issue and not an Spyder one.

There are similar issues with Gwenview PNG images opened in Kubuntu 18.10 HIDPI monitor with desktop scaled to fractional scale as in Spyder running on Mint 19.1. PNG images in Gwenview once opened looked exactly blurry and jagged and that issue is known and reported.

@goanpeca, do you need to activate our option in
Preferences > General > Screen resolution

in your Retina Display Mac for things to look good there?
That's to know if Qt adjusts automatically to HiDPI in some cases (like macOS).
If you don't need to activate that option, then we really need to add another option to the console preferences (as proposed at the beginning) to tell the kernel that Spyder is running in a HiDPI screen.

Some useful links:

Detect change of monitor in Qt: https://stackoverflow.com/a/27277493/438386
Detect screen size in PyQt: https://stackoverflow.com/a/17475065/438386

Notes:

Add support to run %config InlineBackend.figure_format = <option>.
Addan  option in the Plots plugin to enable a certain figure format (probably the option in the preferences of the IPython Console should be migrated to not have multiple preferences for the same thing - format figure of the inline backend).
Probably, when setting the figure format option in the Plots plugin, we should ask if the format figure preference needs to be applied to all the available consoles or just the current one.

@dalthviz, the work you're planning to do to solve this one could be unnecessary if PR #12219 is merged in the future. So please take a look at that work before starting this one.

Has there been any developments on this?
I see that a fix was aimed for Spyder 4...

Should we leave this for Spyder 4? It's not that critical.

Yes, I believe is the right place to fix it.

I still have this issue with Spyder 5.0.5. My inline matplotlib plots on my MacBook Pro (hidpi display) look fuzzy/blurry no matter how high I increase matplotlib's DPI setting.

No, this hasn't been addressed yet, but we'll try to do it in the next couple of months.
For now, you need to increase your DPI manually by going yo the menu
Tools > Preferences > IPython console > Graphics > Inline Backend

and the increasing the Resolution there.

No, this hasn't been addressed yet, but we'll try to do it in the next couple of months.
For now, you need to increase your DPI manually by going yo the menu
Tools > Preferences > IPython console > Graphics > Inline Backend

and the increasing the Resolution there.

Thank you for revisiting! Much appreciated!

This discussion runs over several years and it's not clear to me what needs to be done now. This is my understanding of the current situation.
The images in the plots pane can be fixed by increasing the resolution (DPI) in the preferences, so the only thing that we maybe need to do is to change the default resolution, perhaps by taking the high-DPI scaling factor into account.
The images in the IPython console can not be fixed by increasing the DPI in the preferences, because this will simply enlarge the image and the resolution remains the same. One possible fix here is to support the "Retina" format for plots like Jupyter, along the lines of PR #12128. However, that is a bit of a kludge.

One possible fix here is to support the "Retina" format for plots like Jupyter, along the lines of PR https://github.com/spyder-ide/spyder/pull/12128. However, that is a bit of a kludge.

In fact, I think that would be the simplest thing to do, i.e. allow users to control the retina display option with a Spyder one. To do that, I propose the following:

Add an option to the Plots options menu called Enable high resolution plots, checked by default.
That option should set/unset the retina display option in the Inline backend.
If users uncheck the Mute inline plotting option, Enable high resolution plots should be unchecked and disabled so plots appear in the console at an appropriate size.
When Mute inline plotting is unchecked, a message should be displayed in the console to warn users that plots will be shown in low resolution.

I have now a slightly better idea what the "Retina" format for plots does. It changes two things: it doubles the matploblib resolution (in dpi) from what the user sets, and it shrinks plots in the IPython console by a factor of two.
In more detail, the standard settings are for plots to be 6 inches wide and 4 inches high with a resolution of 72 dpi. This produces images of 6 * 72 = 432 pixels wide and 4 * 72 = 288 pixels high (actually, the images are slightly smaller if tight layout is enabled, which it is by default). If the plot is displayed in the IPython console (which if the option "Mute inline plotting" is unchecked), then it is displayed as an image of 432x288 pixels. By default, the plot is displayed in the Plot pane with "Fit plots to window" checked. If the area where the plot is displayed is bigger than 432x288 (which corresponds to the Spyder window being bigger than about 1000x800 pixels), then the image is magnified and since it is PNG that will give a low quality plot.
If the user turns on retina (which can currently be done with %config InlineBackend.figure_format = 'retina') then the plots are generated with 2 * 72 = 144 dpi, so the image is 864x576. This probably looks better in the Plots pane (I say "probably" because the zoom factor is non-integer so the plot never looks very good unless "Fit plots to window" is unchecked). However, in the IPython console the image is shrunk by a factor of two, so it will be displayed as 432x288 pixels, just as before. This does not give a better image on my screen, even if I set a custom high DPI scaling of 1.5 in Spyder. Of course, this may depend on OS or physical monitor.
So at least for me, retina does not improve the appearance in the IPython console and while is does improve the appearance in the Plots pane, the same effect can be achieved more transparently by increasing the DPI value in the Spyder preferences.

So at least for me, retina does not improve the appearance in the IPython console and while is does improve the appearance in the Plots pane, the same effect can be achieved more transparently by increasing the DPI value in the Spyder preferences.

Ok, thanks for the analysis @jitseniesen. Could post a screenshot of how plots look with an increased DPI (the one you consider it'd really improve things) in the console and Plots pane?

Here is a plot in the Plots pane in the default resolution of 72 dpi. I reconfigured the layout on Spyder somewhat to make the Plots pane bigger so that the difference is more apparent on my monitor (1920 x 1080 pixels). This corresponds on what would happen in the default layout if your monitor is 2560 x 1440 or thereabouts. The picture is shown with a zoom factor of 213% which makes it not sharp.

This is what is looks like in the IPython console. The console does not zoom so the picture is always sharp, but small.

If we double the resolution of the plots to 144 dpi, it is displayed with a zoom factor of 107% and looks quite sharp.

The IPython console does not zoom so the image is twice as big:

Increasing the DPI is not free, it makes the pictures bigger and thus that costs more memory. The PNG of the plot with 144 dpi is 29 kB, so if you have 100 plots that makes 2.9 MB, which by itself seems quite okay. There is probably more overhead, which might be substantial and thus cause problems, but I don't know.
If we don't care about memory and we want most users to get sharp images, I propose to increase the default DPI in Spyder so that plots on a fairly typical but high-end monitor are displayed with a zoom factor of around 100%. If we use 4K monitors as our reference, their resolution is 3840 x 2160. I estimate that the area in the Plots display for showing the actual plot is about 1700 x 900. With a default plot height of 4 inches, that suggests a resolution of 225 dpi. For comparison, the current default in Spyder is 72 dpi and in Matplotlib it is 100 dpi.
An alternative is to do what the IPython console does and not zoom in, this corresponds to having the option "Fit plots to window" unchecked by default (it is now checked by default). This should help with users complaining that the plot is not sharp, but instead we will get users complaining that the plot is too small.
Final note, I don't have a true hi-dpi monitor so I can't test that.

If we don't care about memory and we want most users to get sharp images, I propose to increase the default DPI in Spyder so that plots on a fairly typical but high-end monitor are displayed with a zoom factor of around 100%.

Just a quick note to say that agree with this decision.


[RFC][PROPOSAL] Building a public roadmap for OpenSearch

Is your feature request related to a problem? Please describe
The goal of this proposal is to streamline the process of contributions in OpenSearch to be able to build a forward looking roadmap. A roadmap can serve as a strategic plan with which the community will have visibility into the high level direction the project is headed and provide feedback. A forward looking open source roadmap will also provide a good collaboration avenue with the community and allow prioritization decisions to be taken with community inputs. It will help align contributor efforts towards product areas that the community prioritizes. The roadmap we will develop includes existing projects different open source teams are working on, as well as new projects they are planning for the future. I would love to have a discussion and get your feedback on this roadmap proposal.
Describe the solution you'd like
As part of this proposal, we can do the following:

All components/contributors will create RFCs for the roadmap items they plan to work on in 2024/25 and will tag them with roadmap:2024 or roadmap:2025 label. We can agree on a reasonable time window to accept comments on RFCs (say 2 weeks) before initiating a PROPOSAL with design details and a META issue with release milestones and execution plan. If a project is already in execution and we have a reasonable META issue to tie all features under the project, we can include the META directly in the roadmap.
We will finalize high level themes we want to club the investments under. These themes will translate into tags/labels. These themes are different product areas we want to highlight our innovation in and will help unify different features/projects under broader umbrellas.
We will build the OpenSearch roadmap by consolidating all RFCs and METAs that are tagged for 2024 and 2025 and organize them by the high level themes.

After the roadmap is consolidated from the RFCs or META issues grouped by themes, we will follow it up with a blog post with narrative around the roadmap that is sourced from maintainers and contributors.
Opening RFCs
The "RFC" (request for comments) process is intended to provide a path to propose ideas or significant changes in OpenSearch so that the community can be confident about the direction of the project. The template currently being proposed for OpenSearch RFCs is https://github.com/opensearch-project/.github/pull/192.
Do note that bug fixes and documentation improvements can be implemented and reviewed via the normal GitHub pull request workflow, and do not need RFCs. Before opening RFCs, you do not need to flush out end to end design, however, some thought needs to be put behind the idea so that the RFC does not get rejected by the community.
Lifecycle of a project in OpenSearch
The lifecycle of a project in OpenSearch can have 3 high level artifacts - RFCs (for WHAT and WHY), PROPOSALs (for HOW) and META (for WHEN).
For major features being proposed, you can get early feedback through other means such as public Slack before opening RFCs. Formulate the RFC documenting the motivation behind the proposal, what ideas will it solve, alternative approaches and high level design (only if you have it). We can agree on certain timeframe to seek feedback on the RFCs (say 2 weeks). We can also evolve this process to include voting on RFCs to decide on project prioritization.
For deeper design discussions, the suggestion is to use PROPOSALs (https://github.com/opensearch-project/.github/blob/main/.github/ISSUE_TEMPLATE/PROPOSAL_TEMPLATE.md).
After a project moves into execution, the suggestions is to close the RFC and open a META issue, covering the list of milestones and tasks, spread across releases. (https://github.com/opensearch-project/OpenSearch/issues/11522)
High Level Themes/Product Areas
I am proposing below high level themes/categories to start with that will convert into tags in open source. We can adopt outcome focused themes with each theme spanning features across multiple components.

Improving Performance (Search Performance, Indexing Performance, Benchmarking)
Advanced Search Applications (Hybrid Search, Neural Search, Vector Search)
Improving Resiliency (Search Resiliency, Indexing Resiliency)
Insights and Instrumentation
Log Analytics and Observability
Default Security Posture (Core, Plugins, CVEs)
Scaling
Multi-tier storage/Cost Optimizations
Snapshots
Ease of Use/Next gen Dashboards (Multi-data source, Visualizations improvements)
Ingestion, Clients and Migrations
Security Analytics
AI/ML Applications
Modularization

This is just an initial list, and it would be great to hear back from you on any new theme we should introduce. The tags for these themes will be different than the sub component labels we recently introduced to organize operations in open source.
Creating the OpenSearch roadmap
Once we have the RFCs for planned projects in the future or META issues for projects that are already in execution tagged with 2024 or 2025, we can create the OpenSearch roadmap by consolidating all RFCs/META issues. We can create a default view of the roadmap using the high level themes described above (Sample roadmap format https://github.com/orgs/opensearch-project/projects/200/). Once we have consolidated the roadmap at the Project level, we can follow it up with a blog post containing narrative around the key themes the OpenSearch Project is innovating in.

@Pallavi-AWS Thanks for creating this RFC
Where do roadmap RFCs live?

All components/contributors will create RFCs [...]

I like this idea of being able to spot roadmap related RFCs - tactical question for you, where will these RFCs be created? Repos under the OpenSearch-Project could be viable; however I feel like that would also make it easy to lose RFCs that aren't tagged correctly and would prevent repositories that are outside the GitHub organization from participating directly.
I suggest they are created in a single repository to make browsing and monitoring the roadmap RFCs in a single location.
Roadmap item acceptance / rejection process

We will finalize high level themes [...] We will build the OpenSearch roadmap ...

I'm not sure who 'We' is in this proposal, or how they come to a decision.  I believe this is the leadership committee, do I have that correct?
I think it would be useful to document workflow of this decision making process.  As a developer I'm partial to using pull requests to document decisions - I would propose that decisions about roadmap items are codified by merged pull requests in a repository to include them with references.
This approach would make it easier to track what is currently slated on the roadmap(s) and facilitate discussion about its relevance and placement.  If these document(s) representing the roadmap are in markdown it seems like they would be good candidates to publish directly on the project website.
Is this level of process visibility aligned with what you were thinking?
Roadmap format
I'm not sure the persona of the person viewing the project roadmap.  As someone that is deeply connected to OpenSearch's core repository I imagine I would easily get overwhelmed with information that is off the screen or condensed too tightly.  I am not a fan of using project boards for scenarios other than daily stand ups.
I think for the care and consideration our roadmap items would be better conveyed with prose that are as short or long as they need to be to get the message across.  By using a format such as prose written in markdown, we can use graphs or visuals to help illustrate features related to Dashboards.
To step back for a moment; if the audience of the roadmap is largely the folks that are curating the roadmap then they should use the format easiest to use among themselves.  If the audience is prospective contributors or adopters of OpenSearch it might be useful to make it as approachable as possible.
Maybe you could cite some roadmaps for other products that communicate the kind of detail you would like to see for OpenSearch Project?

@peternied this is a sample roadmap from Jenkins which aggregates key initiatives by themes. The audience for the roadmap is not just folks curating the roadmap, but also contributors interested in the long term direction project is going towards and finding opportunities to contribute/give feedback. RFCs/META issues can be opened at the individual repo level, and the OpenSearch release team will consolidate all RFCs/METAs from individual repositories to create the unified view of the roadmap. Let's start by curating all projects that OpenSearch contributors are already working on, or have planned in the near future. This will allow us to create a roadmap view, which is pretty difficult to gather today as we have not standardized on the process. In the next phase, we can get to a model where we prioritize based on a method we select for community voting.

Thanks Pallavi for driving this important discussion. I do have feedback on product areas, can we make it less granular? I was thinking Observability, Storage, Indexing, Query Engine and themes as Performance, Security

Thanks @anastead for the suggestion. We recently introduced new labels in OpenSearch to create components - search, indexing, storage, cluster manager, release & build etc. This was done to create component areas in core so that contributors and maintainers can triage issues in different areas they are experts in.
For the roadmap themes, my intention was to decouple from the newly created components  and to create themes that reflect strategic objectives for the OpenSearch project (eg. improving performance, scaling to 1000 nodes, ease of use, Improving reliability  etc.). Each theme will contain features that span across multiple components. We can definitely revisit the themes to make it less granular before we create the labels.

@Pallavi-AWS Thanks for referencing the Jenkins roadmap - it looks like it also had as strong backing document [1] explaining the details of the roadmap process.  This looks like a great model to emulate.
What kinds of feedback are you looking for on this RFC?  In the absence of specific areas of discussion you'd like to pursue consensus -  I'd recommend creating a pull request of the roadmap guide to make the discussion concrete, what do you think?

[1] https://github.com/jenkinsci/jep/tree/master/jep/14

I'm glad we are exploring improving the roadmap and related processes, thanks @Pallavi-AWS! I do think there are a few things we want to account for.

Roadmap items should focus on features and enhancements and not bugs, otherwise it will be too much information to follow. This was covered when we originally announced the roadmap https://opensearch.org/blog/opensearch-roadmap-announcement/
I think we should separate "backlogs" and "the roadmap." Items in the roadmap should have intentions to actually build where as backlogs can be where we capture the longer tail of features and enhancements people want to see in the project.
We can probably utilize our existing proposal template for RFCs.  If someone wants to create an RFC without the proposed solution that's okay and similarly if they want to go all the way to proposing a solution that's also okay.
I'd propose we keep the number of themes smaller to begin with and then add more later.

Performance, Resiliency, and Scale
Ease of use/Next gen Dashboards
Observability/Log Analytics
Security Analytics
Search and ML
Security

+1 on Eli's suggestions on up-leveling the items published and overall a few areas and themes.

+1 on Eli's suggestions on up-leveling the items published and overall a few areas and themes.

another +1 :)

I suggest they are created in a single repository to make browsing and monitoring the roadmap RFCs in a single location.

This is an interesting suggestion, there were a few times that I struggled as well when I had to figure out where is the right place to publish an RFC when it touched on more than a single plugin.

I think it would be useful to document workflow of this decision making process. As a developer I'm partial to using pull requests to document decisions - I would propose that decisions about roadmap items are codified by merged pull requests in a repository to include them with references.

@peternied There are the meeting minutes of the leadership committee that are published, are you suggesting to put those into PRs and merge as the best way of publication? Or are you referring to the blog that explains the reasoning to be codified in GitHub instead?

@Pallavi-AWS  thank you for this proposal. It encapsulates many issues in an elegant solution.
I would like to comment regarding @peternied's reference -

We will finalize high level themes [...] We will build the OpenSearch roadmap ...

I'm not sure who 'We' is in this proposal, or how they come to a decision. I believe this is the leadership committee, do I have that correct?

It has been discussed (before this proposal) in the Leadership Committee that perhaps we (the LC) should take a role in building the roadmap, designate North Star(s) for the project, or provide strategic direction to the project.
However, after reviewing @Pallavi-AWS's proposal and @samuel-oci's proposal I have come to the conclusion that the both, working together, provide 99.99% of the requirements.
I agree with @Pallavi-AWS's reply that building the roadmap out of the RFC's that are being worked on is correctly placed in the hands of those in charge of the release process. I believe that the project maintainer's coverage of correctly curated RFCs is what completes the picture.
For example, if someone wanted to add a feature that is esoteric to most users - who are we (the LC) to block them? After all, if someone is willing to pick up their keyboard (if you aren't imagining a key-tar you are now) and contribute something we should always encourage them. Any form of gatekeeping from the governance side is harmful, whereas @samuel-oci's proposal suggests technical parameters (prescribed by repo maintainers) as the bar of entry for new code, which makes perfect sense.
Then there is the question of the roadmap - what gets to be in the upcoming version? what is pushed to the next? these are both technical questions in 99% of the cases we could think of. and 100% of the actual cases we could gather from the past.  Usually, the answer is semver (Is the feature making breaking changes or not?)
We thought maybe about the case where Product managers are thinking about some new feature and they are thinking of a strategy to roll it out and perhaps this will be in the "wrong direction" for the project. To that, I say - anyone can sit in a cave and make plans about the project's future, however, it only really matters to the project when they exit the cave and submit an RFC for the feature.

I'd propose we keep the number of themes smaller to begin with and then add more later.

Performance, Resiliency, and Scale
Ease of use/Next gen Dashboards
Observability/Log Analytics
Security Analytics
Search and ML
Security

@elfisher and @Pallavi-AWS I would like add Vector Search as one of the theme here. Here is my thought process:
Right now if I see Vector Search is not fitting to be part of any of the above themes. ML is too generic for Vector Search and Vector Search scales and works very differently from normal text search hence putting it under search is also not fair as challenges are completely different.
Another thing is Opensearch is positioned as a Vector Database I see there is enough meat that it deserves a separate theme of its own.
cc: @vamshin

@navneet1v I am voting for keeping vector search in the Search and ML high level theme. We want to make sure we are proliferating with too many themes

@Pallavi-AWS thank you for this proposal. It tackles many issues in an elegant solution. I would like to comment regarding @peternied's reference -

We will finalize high level themes [...] We will build the OpenSearch roadmap ...

I'm not sure who 'We' is in this proposal, or how they come to a decision. I believe this is the leadership committee, do I have that correct?

It has been discussed (before this proposal) in the Leadership Committee that perhaps we (the LC) should take a role in building the roadmap, designate North Star(s) for the project, or provide strategic direction to the project. However, after reviewing @Pallavi-AWS's proposal and @samuel-oci's proposal I have come to the conclusion that the both, working together, provide 99.99% of the requirements. I agree with @Pallavi-AWS's reply that building the roadmap out of the RFC's that are being worked on is correctly placed in the hands of those in charge of the release process. I believe that the project maintainer's coverage of correctly curated RFCs is what completes the picture.
For example, if someone wanted to add a feature that is esoteric to most users - who are we (the LC) to block them? After all, if someone is willing to pick up their keyboard (if you aren't imagining a key-tar you are now) and contribute something we should always encourage them. Any form of gatekeeping from the governance side is harmful, whereas @samuel-oci's proposal suggests technical parameters (prescribed by repo maintainers) as the bar of entry for new code, which makes perfect sense.
Then there is the question of the roadmap - what gets to be in the upcoming version? what is pushed to the next? these are both technical questions in 99% of the cases we could think of. and 100% of the actual cases we could gather from the past. Usually, the answer is semver (Is the feature making breaking changes or not?)
We thought maybe about the case where Product managers are thinking about some new feature and they are thinking of a strategy to roll it out and perhaps this will be in the "wrong direction" for the project. To that, I say - anyone can sit in a cave and make plans about the project's future, however, it only really matters to the project when they exit the cave and submit an RFC for the feature.

@AmiStrn thank you for your thoughtful insights. +1

Thanks @AmiStrn @samuel-oci @anastead @elfisher @navneet1v @peternied for your review and suggestions. Can we agree on the following new roadmap theme labels in OpenSearch? I modified the themes logically to club key areas such as availability and modularization:

StAR (Stability, Availability, Resiliency)
CoPS (Cost, Performance, Scale)
Ease of use (this will include Next gen Dashboards, Clients, Migrations)
Observability/Log Analytics
Advanced Search and ML applications
Security
Security Analytics
Modular Architecture

Cross cutting RFCs that span multiple repos can be opened at the OpenSearch project level or at the core - the roadmap curation process will pull the RFCs/metas from all repos and at the broader project level.
If we agree on the above, I will go ahead and create these theme based labels and work with the maintainers to have the RFCs tagged with the new labels. Very soon we can have our forward looking roadmap that is completely sourced from the contributions in the community and categorized by high level themes. Thanks.

I like these high level themes, i would combine modular architecture in the ease of use section and rename advanced search and ML applications to Search and ML applications

regarding the themes, I think they are a good grouping. I agree with @anastead's comment about Modular Architecture being in ease of use, and anything that is not there would fall into performance or stability.
Regarding Cost I think that better performance is better cost only if you choose to scale down due to performance being good enough with less/smaller machines. Judged on their own the tasks are normally performance improvements. Were there RFC's targeting cost on its own?
i.e. using S3 as remote storage has benefits for cost, but these rely on query pattern assumptions.
CoPS as an acronym works nicely, and I have no objection to it, but it did stand out as an odd theme.
Regarding Security - how do we differentiate project security from the plugin? where do CVE's land?
What is the purpose of the high-level themes?
If it for an executive view of the project roadmap then they are fine, but for automating actions you should consider that the themes are not disjointed groups of features. some features may be both CoPS and StAR. this may lead to people having discussions about where a feature should be. I would like us to avoid these empty discussions as they would spawn from an administrative constraint and not a technical one related to the project.

I like these high level themes, i would combine modular architecture in the ease of use section and rename advanced search and ML applications to Search and ML applications

I like the themes as well :)
Regarding the suggestion to combine ease of use and modular architecture/extendability, I think to me it makes sense to keep those separate for now since it sounds like they are serving different personas:
Ease of use - users (e.g. dashboard)
modular architecture, extendability - developer

Ease of use - users (e.g. dashboard)
modular architecture, extendability - developer

I'm convinced,
+1 for that

@AmiStrn  @samuel-oci  - I will keep modular architecture/extensibility separate from ease of use as it potentially targets different personas (developer vs. user).
@AmiStrn  - we will have RFCs that explicitly target cost reduction eg. new auto-tiering storage experience based on segrep/remote store/data lake integration targeting cost reduction. CoPS theme can include all price-performance-scale innovations.
Security will encompass default security posture hardening (eg. scoped down credentials to avoid cross cluster impact), CVEs cutting across components and advanced security features (eg. SAML enhancements) that will have changes in the security plugin, in addition to other core components. Themes need not be disjointed, and some RFCs can end up in more than one theme.
Thanks a lot for your passion and interest towards streamlining OpenSearch roadmap process @AmiStrn and @samuel-oci, really appreciate it. I will have the theme labels created.

Thanks @AmiStrn @samuel-oci @anastead @elfisher @navneet1v @peternied for your review and suggestions. Can we agree on the following new roadmap theme labels in OpenSearch? I modified the themes logically to club key areas such as availability and modularization:

StAR (Stability, Availability, Resiliency)
CoPS (Cost, Performance, Scale)
Ease of use (this will include Next gen Dashboards, Clients, Migrations)
Observability/Log Analytics
Search and ML
Security
Security Analytics
Modular Architecture

Cross cutting RFCs that span multiple repos can be opened at the OpenSearch project level or at the core - the roadmap curation process will pull the RFCs/metas from all repos and at the broader project level.
If we agree on the above, I will go ahead and create these theme based labels and work with the maintainers to have the RFCs tagged with the new labels. Very soon we can have our forward looking roadmap that is completely sourced from the contributions in the community and categorized by high level themes. Thanks.

Have applied this list to the core repo - https://github.com/opensearch-project/OpenSearch/labels?q=Roadmap.  I don't have permissions to apply across all repos @bbarani is this something you can help with?  I can provide the scripts.

+1 agreed @mch2

Thanks @mch2 for creating the new roadmap labels in core. @dblock, @rishabh6788, @prudhvigodithi, @gaiksaya or @peterzhuamazon do you have permission to apply across all repos? These are the base set of roadmap labels that will apply across all repos (not opt-in).

Tagging @opensearch-project/admin

Let me take care of this, I will post here once the labels are created.

Let me take care of this, I will post here once the labels are created.

The labels are created for all the existing non archived (archived:false) repos.
@Pallavi-AWS @dblock @bbarani

Thanks a lot for formalizing the roadmap, @Pallavi-AWS  , it looks great! One question I though, in the previous discussions, we have agreed that RFCs, once the discussions are over and the agreement to move forward has been reached, are going to be closed in favour of META issues (or just issue in case the change is small enough). What would be the target for the roadmap in this case: RFC (closing it is not a deliverable)  or META/issue (the actual deliverables)?  Thanks again!

Hi @reta, after an agreement to move forward with an RFC has been reached, we should have a META issue related to the RFC with milestones/execution plan. Roadmap will be a combination of META issues (i.e. RFCs in execution) and RFCs that are still being discussed as ideas.

8 Roadmap Labels have been introduced across all repos now:

Search and ML
Observability/Log Analytics
StAR (Stability, Availability, Resiliency)
CoPS (Cost, Performance, Scale)
Ease of use
Security
Security Analytics
Modular Architecture

Next action item to tag RFCs/METAs/Feature Proposals with the new labels in order to pull them into the Roadmap Dashboard.

We'll break out Search and Vector Database/GenAI as separate top level themes for the roadmap.

Vector Database/GenAI
Search
Observability and Log Analytics
Ease of use
Cost, performance, scale
Stability, availability, resiliency
Security
Security Analytics
Modular architecture

Thanks @Pallavi-AWS, it looks great! One question I had was regarding Hybrid Search items be tracked under "Vector Database/GenAI" or "Search" given the overlap.

@Pallavi-AWS I think this issue could be closed since we released the roadmap to public [1] ?
[1] https://opensearch.org/blog/opensearch-project-roadmap-2024-2025/


docs: remove top layout feature link

What is it?

[ ] Feature / enhancement
[ ] Bug
[x] Docs / tests

Description
removes left over of https://github.com/BuilderIO/qwik/pull/2472 and fixes https://github.com/BuilderIO/qwik/issues/2473
Checklist:

[x] My code follows the developer guidelines of this project
[x] I have performed a self-review of my own code
[x] I have made corresponding changes to the documentation
[ ] Added new tests to cover the fix / functionality

thanks @zanettin !


[BUG] 'Update User' doesn't work in pre-fill form

Issue: Update User doesn't work in pre-fill form
Browser Details: Chrome Version 85.0.4183.102 (Official Build) (64-bit)
Device Details: macOS 10.15.6 (MacBook Pro)
Note: Tried on cloud.
Steps to replicate:

Login https://app.appsmith.com/user/login
Form Tutorial --> Launch
Go to Pre-fill form
Fill information and click on 'Update User'

Actual Result: Throws an error (attachment provided)
Attachment: https://drive.google.com/drive/folders/1Mp94ixuAbaRuKhfQ5FML5mCWr0z1xSfr?usp=sharing

@Saket2 this is part of the example apps, if you edit the app, the instructions become clearer


Uncaught Error: Encountered an invalid scope end id. Popped -1, expected to pop -227.

Steps to reproduce below:

Have a really long line of text more than 350 characters and the text formatting stops after about that many characters.
Using multiple select, select characters that appear in beginning of line to the end of the line (or at least past the 350 char mark)
Try to delete or edit

Atom Version: 0.208.0
System: Mac OS X 10.10.3
Thrown From: Atom Core
Stack Trace
Uncaught Error: Encountered an invalid scope end id. Popped -1, expected to pop -227.
At /Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:741

Error: Encountered an invalid scope end id. Popped -1, expected to pop -227.
    at TokenizedBuffer.module.exports.TokenizedBuffer.scopesFromTags (/Applications/Atom.app/Contents/Resources/app.asar/src/tokenized-buffer.js:607:21)
    at TokenizedBuffer.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/src/tokenized-buffer.js:483:31)
    at TokenizedBuffer.module.exports.TokenizedBuffer.buildTokenizedLinesForRows (/Applications/Atom.app/Contents/Resources/app.asar/src/tokenized-buffer.js:490:10)
    at TokenizedBuffer.module.exports.TokenizedBuffer.handleBufferChange (/Applications/Atom.app/Contents/Resources/app.asar/src/tokenized-buffer.js:383:34)
    at /Applications/Atom.app/Contents/Resources/app.asar/src/tokenized-buffer.js:62:24
    at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:82:11)
    at TextBuffer.module.exports.TextBuffer.applyChange (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:622:20)
    at TextBuffer.module.exports.TextBuffer.setTextInRange (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:530:12)
    at Selection.module.exports.Selection.insertText (/Applications/Atom.app/Contents/Resources/app.asar/src/selection.js:452:43)
    at /Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:742:31
    at /Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:787:29
    at TextBuffer.module.exports.TextBuffer.transact (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:736:18)
    at TextEditor.module.exports.TextEditor.transact (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:1148:26)
    at /Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:781:24
    at TextEditor.module.exports.TextEditor.mergeSelections (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:1974:43)
    at TextEditor.module.exports.TextEditor.mergeIntersectingSelections (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:1948:35)

Commands
 33x -0:50.6.0 find-and-replace:select-next (atom-text-editor.editor.is-focused)
     -0:44.8.0 core:backspace (atom-text-editor.editor.is-focused)
  2x -0:40.3.0 editor:consolidate-selections (atom-text-editor.editor.is-focused)
     -0:39.7.0 core:cancel (atom-text-editor.editor.is-focused)
     -0:39.4.0 editor:consolidate-selections (atom-text-editor.editor.is-focused)
     -0:39.4.0 core:cancel (atom-text-editor.editor.is-focused)
     -0:38.1.0 core:undo (atom-text-editor.editor.is-focused)
  9x -0:25.3.0 find-and-replace:select-next (atom-text-editor.editor.is-focused)
     -0:23.4.0 core:backspace (atom-text-editor.editor.is-focused)
     -0:22.7.0 core:save (atom-text-editor.editor.is-focused)
 17x -0:18.7.0 find-and-replace:select-next (atom-text-editor.editor.is-focused)
     -0:15.4.0 core:backspace (atom-text-editor.editor.is-focused)
     -0:12.2.0 core:undo (atom-text-editor.editor.is-focused)
     -0:11.1.0 core:backspace (atom-text-editor.editor.is-focused)
 10x -0:06.6.0 find-and-replace:select-next (atom-text-editor.editor.is-focused)
     -0:04.3.0 core:backspace (atom-text-editor.editor.is-focused)

Config
{
  "core": {
    "themes": [
      "seti-ui",
      "seti-syntax"
    ],
    "disabledPackages": [
      "csscomb"
    ]
  },
  "editor": {
    "invisibles": {},
    "showIndentGuide": true
  }
}

Installed Packages
# User
atom-beautify, v0.27.10
atom-javascript-snippets, v1.0.0
color-picker, v2.0.4
csslint, v1.1.3
emmet-atom, v2.3.10
highlight-line, v0.10.2
javascript-snippets, v1.0.0
language-r, v0.2.0
seti-syntax, v0.4.0
seti-ui, v0.7.1
tabs-to-spaces, v0.11.0
terminal-status, v1.6.7
trailing-spaces, v0.3.0

# Dev
No dev packages

Thanks for the report, @sihrc -- do you remember which type of file you were editing (JavaScript, Ruby, ...)? I'm guessing this doesn't happen with every type of file?
cc @nathansobo another one of these

@izuzak At the time, it was ruby. I recall it might have happened in another language before. What's worth noting is the beautifier I'm using also doesn't work for Ruby. I'm not sure if the problem is in the package or not.

Thanks, @sihrc -- it's probably a problem in Atom, but hard to find the corner case that causes it. If it happens again, it would be really helpful to know the file contents that trigger it -- see https://github.com/atom/atom/issues/7177#issuecomment-110814111 for details.

Sure.  Actually sorry, it's a public README file that triggered it. I was writing ruby code in markdown. You can find it here.
It was the code in the last code chunk in the readme. I was changing double quotes to single quotes using multi select in the hash outputs.

This error looks so similar to #7177 that I have a strong suspicion it's the same issue, which is now fixed. I tested the latest state of the README file and was unable to reproduce it. Please reopen if this occurs again after 0.209.0. Sorry for the trouble and thanks for your time.


[WIP] reconstruct the content for newly committed image if compressed layers are missing

implements #2295

Is this still WIP?

Is this still WIP?

yes, this pr includes 2 commits, current commit resumes container once upper layer finish committing to reduce the unavailable time for container
second commit includes reconstructing missing layers. Code has been finished and I am still locally testing, I think can be finished this week.

kindly ping @AkihiroSuda

Could you add tests?

Could you add tests?

Sure thing! thx


Training stages

What is the difference between the three stages in launch.py? What are the three stages to accomplish? Which part of the paper do these three stages correspond to?
When I was in the first stage of training, I got the following display in the terminal, I couldn't tell how many epochs needed to be trained and how long each epoch needed to be trained.

Hi,
The three stages follow the multi stage training concept in 4D-fy: https://sherwinbahmani.github.io/4dfy/
Stage 1 is using MVDream, stage 2 MVDream with ProlificDreamer Stable Diffusion. After stage 2 there is the final static object. Stage 3 is the dynamic stage with VideoCrafter2.
Everything only has one epoch, the max number of steps are specified in the configs, e.g., here: https://github.com/sherwinbahmani/tc4d/blob/b419e51c21e7011073cff384cc79c2cc06cc6763/configs/tc4d_stage_1.yaml#L199
E.g., first stage should take around one hour

Thank you very much!

I guess this issue is solved. Please reopen, if the issue is not solved!


Expose API endpoint for Workflow Cancellation

@Prasy12 / @mshkanth  can you follow this to see if we can expose in UI as well ?


Laravel 9 Update

Upgrade Guide

WITH THIS UPDATE, PHPVMS NOW REQUIRES PHP 8.0+
Please read through the Laravel Upgrade Guide - there are some settings that are moved/deprecated, and they may apply to you, if you have customized those settings
The SMTP stream options like verify_peer have moved to the root of the SMTP settings. See the Laravel upgrade guide
Any modules/themes will need to be updated for casting fuel and other types properly (see notes below)

Notes

laravel-gamp (google analytics) removed a) library version incompatible b) wanting to remove google analytics from being included because of gdpr, etc
Fuel/distance are being properly casted now the Fuel and Distance styles, so usages of those need to be updated, so something like $pirep->fuel_used->internal([rounding]) to get the value. There are several methods: internal() gets the unit in its internal storage format, local() to the unit that the user has selected to view them as, in the admin panel. Both methods take an optional rounding value

Template Changes

resources/views/layouts/default/app.blade.php
resources/views/layouts/default/downloads/table.blade.php

Task List

[x] Rewrite the API status caller (reports version, which was removed)
[x] Refactor factories so they're using the new style
[x] Models use new accessor formats
[x] Replace recaptcha with hcaptcha
[x] Move to Symfony Mailer
[x] Update GH actions to use PHP8
[x] #1412

Local Rounding Problems
$pirep->fuel_used->local(0) gives 2763.7882055707 in return (kg)
$pirep->distance->local(0) also fails and gives 583.78 in return (km)
$pirep->fuel_used->internal(0) works fine 6093 (lbs)

Profile Edit Error, Fresh Install, No Avatar
Editing profile causes below exception, probably related to user avatar image 'cause it is the only file related part of a user's profile.
League\Flysystem\Filesystem::delete(): Argument #1 ($location) must be of type string, null given
Screenshots

Will send this soon as a pr

Sent #1435 for this branch

Found the reason of why news mails are not working.

They are working actually, but not being sent to admin :(
I think we should set both to true for the first user created during setup.

PR #1436 is for this branch, and enables html formatting for news mails.

Got it, thanks - added 2 notes for myself to do tomorrow

Can we use the latest version of CK Editor too with Laravel9, as we are enabling its use widely I think we should follow the updates.

We had several auto opened pr's for it, the last one is #1355

Can we use the latest version of CK Editor too with Laravel9 ? As we are enabling its use widely I think we should follow the updates.
We had several auto opened pr's for it, the last one is #1355

Going to do this as separate PRs to update the js side of things

Fresh install with php8.1.3 is not possible, below exception occurs.

[2022-03-09 17:35:35] dev.INFO: Redirecting to database setup
[2022-03-09 17:35:35] production.ERROR: Attribute value must be of type bool for selected attribute, string given {"exception":"[object] (TypeError(code: 0): Attribute value must be of type bool for selected attribute, string given at D:\\Projects\\v7\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connectors\\Connector.php:70)
[stacktrace]
#0 D:\\Projects\\v7\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connectors\\Connector.php(70): PDO->__construct('mysql:host=127....', 'root', '', Array)
#1 D:\\Projects\\v7\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connectors\\Connector.php(46): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=127....', 'root', '', Array)
#2 D:\\Projects\\v7\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connectors\\MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=127....', Array, Array)

Fresh install with php8.0.16 works fine.

Testing the branch on my live site, with flights and daily ops.
This error shows up every 5 mins on my laravel log.
[2022-03-13 17:20:02] prod.ERROR: Class "PDO" not found {"exception":"[object] (Error(code: 0): Class \"PDO\" not found at /vendor/laravel/framework/src/Illuminate/Database/Connection.php:1470)

PDO Error.txt
Trying to figure out what it can be, cron or a module or something else ? Not much clues in the error and stack trace below.

And this is the last entry from my cron log, this makes me think that above PDO error is somehow related with cron.
[2022-03-13 13:20:02] prod.ERROR: Command "version" is not defined.

Did you mean one of these?
    phpvms:version
    session:table {"exception":"[object] (Symfony\\Component\\Console\\Exception\\CommandNotFoundException(code: 0): Command \"version\" is not defined.

Did you mean one of these?
    phpvms:version
    session:table at /vendor/symfony/console/Application.php:683)
[stacktrace]
#0 /vendor/symfony/console/Application.php(259): Symfony\\Component\\Console\\Application->find()
#1 /vendor/symfony/console/Application.php(171): Symfony\\Component\\Console\\Application->doRun()
#2 /vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\\Component\\Console\\Application->run()
#3 /vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(129): Illuminate\\Console\\Application->run()
#4 /bin/cron(25): Illuminate\\Foundation\\Console\\Kernel->handle()
#5 {main}

I think the cron error is related to this 'cause it is the only piece of code, running a version command every time cron runs
https://github.com/nabeelio/phpvms/blob/Laravel9/bin/cron#L21-L26

PDO is a PHP class from the PDO driver, maybe something not configured right with the command line PHP? That command throwing an error is strange though, I'll look

This is what I got at cpanel for php8.1

Looks like I have every extension we need there and enabled.

[2022-03-13 18:00:06] prod.INFO: Hourly: Removing expired Simbrief entries
Cron started working again, that suggestion provided with the error worked :) And no repeating errors in laravel log on every cron run.

Also saw this with Discord Notifications

Notice the difference in distance, either it is not sending 0 km or we have an unnecessary / there. Before (with latest dev build) notification was like below


Deployment method - SFTP support

SFTP is superior to FTP in basically every way. Permits the user of public/private keys.
Pure php libs todo it: https://github.com/phpseclib/phpseclib
Does suggest requiring a framework for pluggable deployment model.

Note; the phpseclib is ~250kb compressed. As such, I intend to distribute the sftp deployment method as a separate add-on which requires AddOnInstaller.


[Feature Request]: Landing Page Design

Hi @Soujanya2004
Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
Hi @Soujanya2004
I noticed that when a user lands upon your website it directly shows them the listing , I want to redesign the Landing Pge making it more sttarctive to user and not fording them to sign up instead they would do it themselves.
Use Case
Suppose I thought of staying in Karnataka , so forstly when I land on your site I must see a beautiful landing page , which will make sure that I should book from your site only , there I shall implement my check in and checkout dates and the location and then get the data of only those places which are in Karnataka. and for that I must then Login , I should not be forced to login to see places.
Benefits
This will ensure trust among customers, make them feel good, and also get them places which they want to see raher them showing them places from japan, south korea etc. when they want to see houses in India.
Add ScreenShots
No response
Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

@dev129 the booking functionality is not implemented ryt now
you can work on the landing page

Hye @Soujanya2004 , a small question are you sure that the documentation is right since i am getting this error

Please try running on your system and let me know if it works for you or not

@dev129 npm install
node app.js

follow documentation its proper

Hi @Soujanya2004 , I have been trying to make things work our a bit but this is the proble =m i am facing

also when i add .env and node_modules/ igit igonre file and savre it , it is still not saving it , please letme now what to do ?

SECRET=mysecret @dev129

Hi @Soujanya2004 this might be frustrating for you as much as it is for me

and is this the normal landing page during developement

@dev129 ATLAS_DB_TOKEN=mongodb://<IP_ADDRESS>:27017/wanderlust
add this for ur atlas token

Hi @Soujanya2004 this might be frustrating for you as much as it is for me the below image is for /listing  and is this the normal landing page during developement  A very interesting thing is that after sometime the main page also becomes like the first images, its hilarious

oh god, the first image error has something to do with ur mongodb only
i faced same issue and fixed it now

@dev129 if u get that error solved, your landing page is almost set up just need to remove that error message displayed and add some interesting landing page section

https://github.com/user-attachments/assets/6c51dfa9-d33a-4c84-bdd2-6c0d05707438

Hi @Soujanya2004 , are you there ?

@dev129 the recording u have uploaded is improper plz check

@Soujanya2004 , hols on right now , its hard to contact you.

@dev129 i am really sorry for that, my exams are going on so little inactive

@Soujanya2004 , same pinch , anyways here are the updated version after this if you find anything wrong , let me know all of them once, and I shall then message you only once at a time , in that way you just have to check , merge it , no wastage of your time.

Also all the best for your exam

@dev129 looks gud to me, and it is displayed in / route ryt
thanks, ace ur exams btw😄

Yes this is the homepage design , so is it a yes ?

@dev129 yes perfect, i hope you have included navbar into it

@Soujanya2004 , navbar would have made the look of landing page dull and as for footer :

@dev129 please use the same footer boilerplate
and if there is no navbar how will user navigate through website

@dev129 please use the same footer boilerplate and if there is no navbar how will user navigate through website

you can raise another issue and work on that no issues, i will assign u


Instead of requiring a full @Id URI, only request a Ctid

@stuartasutton  @jkitchensSIUC @siuc-nate
When referencing an organization, an @Id is typically used to reference an organization in the registry. The API uses the OrganizationReference class (inherits from an Entityreference), to allow providoing an @Id, OR, an Ctid, OR a third party organization:
https://github.com/CredentialEngine/Registry_Assistant/blob/master/src/RA.Models/Input/profiles/OrganizationReference.cs
I suggest that for the RA API, we only expose the Ctid property. This approach means a user doesn't have to know the actual Url for a registry resource. The RA API will provide the proper url for the current environment (sandbox, staging, production).
The latter class can also be used to enter a reference to a third party organization that does not exist in the registry, or a user may not know exists in the registry.

I find it odd that for something as opaque as a UUID, that a CTID for a person would be readily available and a URI based on the CTID would not. Other than that, I really need to leave the Registry Assistant matter to you folks implementing. Do we have a bulleted list of exactly what the Registry Assistant API enables?

This issue was for flexibility, and not implemented.
With the recent change for entity references to be a list of strings, rather than objects, the 'feature' would not have been straight-forward - closing.

@cwd-mparsons, @jkitchensSIUC, @siuc-nate, I reopened this issue because I want to make sure I understand. Are you saying that a CredentialOrganization identifies it's credentials with something like "owns": "http://......." as opposed to "owns: {"@id": "http://......."}? I don't know how I would have missed that. If so, it basically means that we've added a means for an org to signal what it owns; but we know that the data is useless as linked data in the wild.
I recall the original rationale was (under my objection) not to add any reference from an organization record to that it owns because it would mean updating/resigning the org record every time a new credential was added. Seems now that it is OK to add a mention (but not a linkable reference). What is the rationale now?

@stuartasutton There are two related things at play here:
First, the change to the structure was part of the updates to the context file a long while back.  ceterms:owns (and ceterms:offers, and a number of other properties that point to URIs or instances of CTDL classes) is defined as { "@type": "@id" } in the context, so there is no need to use an object with an @id property anymore. "ceterms:owns": [ "http://..." ] would still be linked data with that context.
The second part is providing the information in the organization record.  This is something that @jkitchensSIUC has recently raised while discussing the minimum data policy (specifically, to make owns and offers required fields on ceterms:CredentialOrganization records and required if available fields on ceterms:QACredentialOrganization records).  I can see some utility in this, but I also share your concerns, as this means:

A. The organization record needs to be updated every time something new is offered (or ceases being offered), and every time something new is created
B. There is the potential for inconsistent data (e.g. newly-published credential says it's offered by organization A, but organization A's record hasn't been updated to reflect this in its "owns" property. A system consumes both records. What conclusion does it draw?)

B1. This is potentially magnified in cases where an organization offers credentials owned by another organization (e.g. A newly-published credential says it's owned by Organization A and offered by Organization B; but Organization A can't force an update to Organization B's record to reflect the inverse. A system consumes all three records. What conclusion does it draw?)
B2. The same applies in reverse (e.g. Organization A's record says that it offers a credential it does not own, and therefore cannot force an update to the credential record to say that it is offered by that organization)

C. It is redundant anyway if the relationship is reliably provided in the credential record, since that this can be determined by querying inverse properties (e.g. find out everything an organization owns or offers by querying the registry for all records where ownedBy or offeredBy contains the organization's URI).

C1. This would not solve point B2 above, however.

@stuartasutton @siuc-nate @jkitchensSIUC
This issue is probably better addressed in the vocabulary repository, as it is not specific to the registry assistant API.  I created a new issue in the latter repository:
https://github.com/CredentialEngine/vocabularies/issues/548
and closing this one


Mention of lowercase "true" for C API functions ReadDirectoryChangesW and ReadDirectoryChangesExW

Probably a typo.

Not going to sign this CLA, I am not interested in legally promising "to notify Microsoft in writing of any facts or circumstances of which [I] later become aware that would make [my] representations in this Agreement inaccurate in any respect".


Actors: add and use Actors::BLOG_ACTOR_ID

I just thought Actors::BLOG_USER_ID looked a bit funny.
Proposed changes:

add and use Actors::BLOG_ACTOR_ID
renamed Users_Collection to Actors_Collection throughout as well

Other information:

[x] Have you written new tests for your changes, if applicable? (not applicable, everything should be the same)

Testing instructions:
Tests should pass, everything normal in function

I think we should also update Actors::APPLICATION_USER_ID then!?!

I think we should also update Actors::APPLICATION_USER_ID then!?!

Good idea!

@mattwiebe and don't forget the changelog ;)

@mattwiebe @pfefferle I still have some doubts about this change, as the current Actors::BLOG_USER_ID and Actors::APPLICATION_USER_ID wordings show that the actors are indeed "mapped" to pseudo users. With a constant named Actors::BLOG_ACTOR_ID I would expect it more likely to be the full URI.


PaperWallet.Cancel method doesn't reduce locked assets

Test case:

Create buy limit order
Funds is being locked
Cancel limit order
Funds is still locked, that is incorrect

Hi @rodrigo-brito
please reach out to me at telegram @ramilexe. I have a few ideas regarding enhancement of ninjabot I would like to discuss with you

Hi @ramilexe, thank you for the report. We can talk in Discord about improvements


Cython Extensions

Hello! Firstly, this project is awesome.
I'm a heavy user of C extensions and Cython modules but they are specified in the setup.py file to be compiled to native code at install time. I'm not sure if they should be specified in "pyproject.toml" because even in the PEP there are no mentions to it. I'm willing to do a pull request if needed so I just need a direction :)
Keep the great work, many thanks!

AIUI, this would requite Cython to create a build backend as specified in https://www.python.org/dev/peps/pep-0517. Then poetry would "just" need to add support for PEP 517.

It seems like currently you can use the undocumented (unstable) build.py like in #11.

I added an example on using cython in #11. Cython probably wouldn't have to have the build backend (except as a library which it basically already has in the form of cythonize). From how I understand PEP 517 only one build backend is allowed anyhow since the 'build-backend' is just a single string and Cython would never be the only build backend. So poetry, flit, or (more likely) pip will be the build backend. That is unless poetry takes the place of pip. For instance if you try to install that package I made with pip from source you need to have Cython already installed without the PEP 518 requires = ['setuptools', 'wheel' 'Cython'] which pip supports now and installs cython before building.

So this issue can be closed if poetry can be used as a build backend. How that is implemented (build.py etc.) is another issue probably.

Closing this issue, see solutions (by @sdispater and @salotz in #11).


how to get window dailog changed height using onResize()

Describe the bug
how to get window dailog changed height using onResize()

Please clarify your question. Which component are you interested in window or dialog?

Please clarify your question. Which component are you interested in window or dialog?

Window sir

i want to create window with header footer and canvas sir.  while resize the window height i want only resize the canvas sir.
is it any possible to set maximum height of window sir?

sir ribbon menu height, can i fix the height is it posible sir?
thankyou for replying me sir

<div data-role="window" data-on-resize="onResize">
    This is a window content
</div>

<script>
    function onResize(size) {
        console.log(size); // size is a object with width and height values
    }
</script>

thank you sir.
can i set max height to window sir because it is resizing outside drag area also

can i set max height to window sir because it is resizing outside drag area also
You must change attribute data-height (int value)

new in 4.4.0

[x] Window: add API methods pos(top, left), top(v), left(v), width(v), height(v), issue #1590
[x] Metro.window: add methods pos(top, left), top(v), left(v), width(v), height(v)

Hi Olton,
it is possible to know the position, size of a window (x, y or top, left) to save the state in a database.
When the window reopens, put it back in the position chosen by the user.
Thank you

var pos = Metro.getPlugin("#win1", "window").win.pos();
console.log(pos);

in your example "Desktop" there is the function:

function createWindow(){
//    var index = Metro.utils.random(0, 3); //  NOT WORK
var index = 123;
var w = Desktop.createWindow({
resizeable: true,
id: "finestra",
draggable: true,
width: 300,
top: 30,
icon: "",
title: w_titles[index],
content: "This is desktop demo created with Metro 4 Components Library"
});
setTimeout(function(){
    w.setContent("New window content");
}, 3000);

}

how can i know and save the position (x, y) and window size?
Thank you

// var index = Metro.utils.random(0, 3); // NOT WORK
need change to (already fixed in ...don't remember when)

var index = $.random(0, 3);

For position - store returned value from Desktop.createWindow(...) to global variable - this is a HTMLElement as m4q object with role window, and use it in
var pos = Metro.getPlugin(your_global_war, "window").win.pos();
console.log(pos);

good morning, in the meantime, thanks for the answers.
Could you help me by giving me a small example.
Thank you


Camel-AWS-Bedrock: Make image model return an array of images

Description

Target

[x] I checked that the commit is targeting the correct branch (note that Camel 3 uses camel-3.x, whereas Camel 4 uses the main branch)

Tracking

[ ] If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

[x] I checked that each commit in the pull request has a meaningful subject line and body.

[x] I have run mvn clean install -DskipTests locally and I have committed all auto-generated changes

/component-test aws


x/build/cmd/relnote: respect RELNOTE= in commit messages

The RELNOTE=xxx part is currently only respected in Gerrit comments, but enough people are writing it in commit messages that we should support it there too.
/cc @dmitshur

Duplicate of #31665


Phone number doesn't fill in in the PDF

attachment code:
"user_phone": ${ users[0].phone_number }

Still trying to track where it's not being included.

Solved: the number that was being filled in in the interview question was mobile_number. Should now use that, followed by the phone_number if mobile_number doesn't exist.


Metadata emulator wait for change support

This also adds support for concurrent requests, which are necessary so one request can update data while another request is hanging waiting for changes.

(Python LGTM received offline from @alex-martelli)

(rebased)


feat(ui): create  components

Checklist

[x] JIRA -LW-6666
[x] Proper tests implemented
[x] Screenshots added.

Proposed solution
It uses RadixUI's Switch as an engine to handle keyboard navigation, etc.
 <ToggleSwitch
          label="Label"
          id="rest"
          defaultChecked
          icon={<InfoIcon />}
        />

Screenshots

Allure report
allure-report-publisher generated test report!

smokeTests: ✅ test report for d76a5ddd

passed
failed
skipped
flaky
total
result

Total
19
0
0
0
19
✅

Great work!


fix: backport #18112 and #18115 to v5.1

Description

https://github.com/vitejs/vite/pull/18112
https://github.com/vitejs/vite/pull/18115

@patak-dev can this fix be applied to the 5.1 branch? Angular v17 is depending on that version and its seems complicated to upgrade to 5.2.14: https://github.com/angular/angular-cli/issues/28435#issuecomment-2358077188

@plchampigny<EMAIL_ADDRESS>has been released with the two fixes, and both CVEs patched version ranges have been updated. Thanks again!

@plchampigny<EMAIL_ADDRESS>has been released with the two fixes, and both CVEs patched version ranges have been updated. Thanks again!

Wow thanks for the fast merge @patak-dev !

@patak-dev Seems the advisory is not updated with the version fix for the 5.1.x branch: https://github.com/advisories/GHSA-64vr-g452-qvp3


feat: k8s 1.27.1

Codecov Report

Merging #6 (1ba5b8b) into main (716cece) will not change coverage.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@           Coverage Diff           @@
##             main       #6   +/-   ##
=======================================
  Coverage   80.78%   80.78%
=======================================
  Files           2        2
  Lines         432      432
=======================================
  Hits          349      349
  Misses         78       78
  Partials        5        5

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Automatic resolution of $refs

It might be useful for this library to have the ability of resolving $refs. We may want to stop short of making network requests to resolve external documents, but it might be possible to provide an API which allows users to resolve local $refs? I'm not entirely sure what this API should look like though. Obviously an OpenAPI doesn't currently know where it lives on disk (if it even does), so there is no immediate way to decide where to resolve paths from. We could add a function to ReferenceOr which takes a root_dir parameter and resolves it's reference from there?

That sounds interesting; what is your use case?

@ahl I'm auto-generating Rust clients for my APIs using this library and quote. My openapi specification is split across multiple local files (using $refs like "foo.yaml#/items/bar").
My current solution is shelling out to openapi-cli and using it's bundle function to pre-process my specification before passing it to this library. This ensures the only $refs that remain are to objects in the same definition.
However, doing this bundling out-of-process makes the dependencies for my build script fairly complicated (it needs to depend on node being installed) so I would much prefer an in-process solution which lets me solve this in Rust.
One way I imagined this might work is something like (please forgive the psuedo-code):
impl ReferenceOr {
    fn resolve(&self, root_dir: &Path) -> ReferenceOr {
        match self {
            ReferenceOr::Item(_) => self,
            ReferenceOr::Reference { reference } => {
                // Parse the `reference` properly based on whatever the spec. says.

Ah I've just realised that doesn't really solve the problem. Because when you resolve an item from another file, that might contain a $ref to another local object in that same file which you've now lost the link to.
Maybe it is easiest to continue with a separate external (but maybe re-written in Rust :) ) openapi bundler rather than trying to be smart in this library.


Red page

Please guys anyone. Love to search with me the command to fix Evilgin2 link getting red. Please I’d be grateful if you can help me out.
Thanks

I can help. Tel: @vdarkweb


Kmesh auth: enable rbac only when Kmesh starts in workload mode

What type of PR is this?
/kind enhancement

What this PR does / why we need it:

Kmesh auth: enable rbac only when Kmesh starts in workload mode
fix a typo
Which issue(s) this PR fixes:
Fixes #

Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

/approve
/lgtm


Prefab Table

Description
Added a prefab for tables; contains a small additional property to determine whether a form should execute its reset actions on success
Motivation and Context

How Has This Been Tested?
Built unit and integration tests; implemented in Project Griffon
Screenshots (if appropriate):
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have signed the Adobe Open Source CLA.
[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Codecov Report

Merging #24 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #24   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          80     89    +9
  Lines         827    921   +94
  Branches      117    133   +16
=====================================
+ Hits          827    921   +94

Impacted Files
Coverage Δ

packages/prefab-table/src/column.prefab.js
100% <100%> (ø)

packages/prefab-table/src/index.js
100% <100%> (ø)

packages/prefab-table/src/table.prefab.js
100% <100%> (ø)

...ages/prefab-table/src/selectors/table.selectors.js
100% <100%> (ø)

packages/prefab-form-saga/src/validation.saga.js
100% <100%> (ø)
:arrow_up:

...ges/prefab-table/src/selectors/column.selectors.js
100% <100%> (ø)

packages/prefab-table/src/util/column.sorter.js
100% <100%> (ø)

packages/prefab-table/src/actions.js
100% <100%> (ø)

packages/prefab-table/src/reducers/row.reducers.js
100% <100%> (ø)

...ackages/prefab-table/src/reducers/sort.reducers.js
100% <100%> (ø)

... and 9 more

Continue to review full report at Codecov.

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


build: MyFrame_lasti() uses PyObject_GetAttrString()

Reimplement the MyFrame_lasti() function using
PyObject_GetAttrString(frame, "f_lasti") to avoid using the internal
C API on Python 3.11.
Add assertions in CTracer_handle_call() and CTracer_handle_return()
to ensure that f_lasti is the in expected bounds.

Add assertions in CTracer_handle_call() and CTracer_handle_return() to ensure that f_lasti is the in expected bounds.

I'm not sure that this part is correct :-) But the current code doesn't seem to handle negative lasti. With my change, lasti can be negative if something goes wrong, but it should not happen in practice: a frame always has a f_lasti attribute.

@nedbat: Would you mind to have a look?
Do you prefer to read directly the PyFrameObject.f_lasti on Python 3.10 and older? Or are you fine with using the same code path on all Python versions? It's up to you.

f_lasti  is now gone : https://github.com/python/cpython/pull/32208

f_lasti is now gone : https://github.com/python/cpython/pull/32208

The Python frame.f_lasti field (this PR) remains accessible and valid.

yes, I just meant this was all the more necessary :)

there are also new errors related to direct access to PyFrameObject->f_trace and PyFrameObject->f_lineno :
coverage/ctracer/tracer.c:520:21: error: invalid use of incomplete typedef ‘PyFrameObject’ {aka ‘struct _frame’}

and PyCodeObject->co_code
coverage/ctracer/tracer.c:534:46: error: ‘PyCodeObject’ has no member named ‘co_code’

You haven't said, but I assume you are using 3.11.0a7?  I could use some help adjusting to all of the frame changes.

PyFrameObject->f_trace  and PyFrameObject->f_lineno error is from https://github.com/python/cpython/commit/18b5dd68c6b616257ae243c0b6bb965ffc885a23,
were struct _frame was moved from cpython/frameobject.h to  internal/pycore_frame.h
tagged in v3.11.0a6
PyCodeObject->co_code is from https://github.com/python/cpython/commit/2bde6827ea4f136297b2d882480b981ff26262b6
tagged in v3.11.0a7
and  f_lasti removal is from master: https://github.com/python/cpython/commit/ef6a482b0285870c45f39c9b17ed827362b334ae

https://github.com/python/cpython/pull/32413 adds PyFrame_GetLasti, which was overlooked when adding the other C-API functions.
Once the beta is released, following should work, I think. I haven't tested this at all.
#if PY_VERSION_HEX >= {hex version for 3.11 b}
#define MyFrame_lasti(f) PyFrame_GetLasti(f)

https://github.com/python/cpython/pull/32413 adds PyFrame_GetLasti, which was overlooked when adding the other C-API functions. Once the beta is released, following should work, I think. I haven't tested this at all.

I also added PyFrame_GetLasti() to the pythoncapi-compat project API, so it's available on Python 2.7-3.10: https://github.com/python/pythoncapi_compat You can use pythoncapi_compat.h to get the function on all Python versions.

I wrote https://github.com/nedbat/coveragepy/pull/1352 to use PyFrame_GetLasti() in coverage: replace MyFrame_lasti() with PyFrame_GetLasti() using pythoncapi_compat.h. Sadly this PR drops support for Python 3.11a1..3.11a7.

Sadly this PR drops support for Python 3.11a1..3.11a7.

And https://github.com/nedbat/coveragepy/pull/1353 is an attempt to keep support for Python 3.11 alpha versions.

Since there are concerns about worse performance caused by the usage of PyObject_GetAttrString(), I close this PR in favor of https://github.com/nedbat/coveragepy/pull/1353 which is the newly added public function PyFrame_GetLasti().


Change donate page to have no header

Based on what we're seeing on the donate page, I think we should remove the navigation on the page and bring the donate form up to the upper right hand "above the fold"
"We'd have to make a specific page template in the WordPress theme (create a php file) and modify the css for the form."
The goal is for the page to look more like this: https://act.350.org/donate/build/
Here's a wireframe of a Donate page without the header that I'd imagine:

Background could be solid orange or if it's not too difficult, maybe something like this: https://www.flickr.com/photos/ter-burg/34167834392/in/album-72157683167560985/

One last note on this is whether we can reemphasize paypal on the site!!

Support for this is in new-www-theme 41070b84f567b9c7e91d1a09e513f789da31a8aa , which has been deployed on staging and live.
This provides a layout that centres the content in a single div in the middle of the page, and some css classes to support the layout in the wireframe using flex layout.
To use this layout select "Floating Content Template" as the page template then set the image that you wish to use as the background image as the page's Featured Image.
For the page content, use the content that we've created on staging.

Everyone I've spoken to regards this as A Very Good Thing to Do. How should we revisit it?

Once we get the OK from @Scott-CC @jayaw  to move forward on CRM project we will be able to.


backend config overwrite

terragrunt keeps asking me about overwriting the backend config.  It seems like things are just ordered differently?
% terragrunt plan
[terragrunt] [/Users/git/aws/terraforms/production/prod/data-storage] 2017/04/25 20:49:06 Running command: terraform --version
[terragrunt] 2017/04/25 20:49:07 Reading Terragrunt config file at /Users/git/aws/terraforms/production/prod/data-storage/terraform.tfvars
[terragrunt]  WARNING: Terraform remote state is already configured for backend s3 with config map[bucket:enova-tfstate.us-east-2 encrypt:true key:prod/data-storage/terraform.tfstate lock_table:terragrunt_locks region:us-east-2], but your Terragrunt configuration specifies config map[encrypt:true bucket:enova-tfstate.us-east-2 key:prod/data-storage/terraform.tfstate region:us-east-2 lock_table:terragrunt_locks]. Overwrite? (y/n)

We've been issuing a number of releases lately, so I'm thinking this is a duplicate of #188. Could you try the latest version of Terragrunt and see if that fixes your issue?

I upgraded from 0.12.8 to 0.12.11 this morning and the problem seems to have been remediated.

Great!


code refactoring, early stopping, compact output

This PR should address #23 and #36.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

-10 of 162 (93.83%)  changed or added relevant lines in 1 file are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.2%) to 96.574%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

nautilus/sampler.py
152
162
93.83%

Files with Coverage Reduction
New Missed Lines
%

nautilus/sampler.py
1
95.49%

Totals

Change from base Build<PHONE_NUMBER>:
0.2%

Covered Lines:
1184

Relevant Lines:
1226

💛  - Coveralls


(AutoSizer) Fix incorrect event removal in detectElementResize.js

There is a logic issue related to the incorect event removal in detectElementResize.js.
Bug scenario

AutoSizer element is mounted to the container
AutoSizer element is unmounted from the container
Custom component (with some scrollable elements like <select>) is rendered inside the container
Multiple TypeError: expand is undefined error console errors appears in result of any scroll actions inside the custom component.

It affects Firefox, and not affects Chrome.  Error appears multiplie times in result of wheel movement, and only one time after the keydown press.
Both components mounted to the container by react-router
Reason
onScroll events are not actually removed after the AutoSizer component unmounting.
How the events are added:
element.addEventListener('scroll', scrollListener, true)
(true flag set to useCaption option)
How events are removed:
element.removeEventListener('scroll', scrollListener);
(no flag set to useCaption option, default is false)
according to the documentation:

Removal of a capturing listener does not affect a non-capturing version of the same listener, and vice versa.

So the event removal have no effect.
Fix
element.removeEventListener('scroll', scrollListener, true);
should be used  instead of
element.removeEventListener('scroll', scrollListener);
P.S javascript-detect-element-resize repo seems dead, so I placed a fix here (since the detectElementResize.js copy is used in the project)
P.P.S Bug live example may be a little time-consuming for this small issue. I can still make it if required.

Hey @cyberxndr! Thanks for the fix and the detailed write-up. Great work! :)
No need for a live demo in this case. Your explanation was clear enough.

Just published as 7.1.3


uploaded working dakota example

@nstauff could you create a new PR and merge it to another branch called zhieejhia93:devel-dakota. Thank you.


[GLUTEN-1632][CH]Daily Update Clickhouse Version (20230616)

Auto commit by gluten daily build, please check the build status and merge it if it's green.

Run Gluten Clickhouse CI

we need merge since we did rebase due to https://github.com/ClickHouse/ClickHouse/pull/50951


Update the nightly job to always capture container logs.

Always run the 'reports' and 'upload reports' job, regardless of test outcome.  Include 'crayfits', 'fits', and 'houdini' container log output.

Feel free to squash.


[Bug]: Cannot use Json type with BigQueryIO and write method FILE_LOAD, avro

What happened?
BigQueryIO document says FILE_LOAD not support JSON type.
https://github.com/apache/beam/blob/master/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.java#L1841
And when specifying schema to use avro, validation logic causes error.
https://github.com/apache/beam/blob/948af30a5b665fe74b7052b673e95ff5f5fc426a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.java#L3078
But currently, It seems JSON type works well with load api.
I think now we can remove this validation and modify document.
Issue Priority
Priority: 3
Issue Component
Component: extensions-java-gcp

I tried to remove the validation and use run BigQueryIOJsonIT. There is a caveat that for a TableRow, if I set it to be
.set("country_code", some_json_of_string_type) // some_json_of_string_type = "{\"a\":\"b\"}"

The written json is a single escaped string ( "{"a":"b"}" ) using FILE_LOAD method. But the string is unescaped using STORAGE_WRITE_API or STREAMING_INSERT method ( {"a":"b"} ).

Checked that this feature was added in late 2022 (internal tracker cl/457809718). So it is safe to lift this checkArgument. Opened #29923


keycode Clone hijacked localhost port 5500?

I'm sure this is the wrong place to post this, but I am very confused and have no idea where else to ask.
I recently made a pull request to this repository, and in doing so cloned it to my local machine. I have since deleted all traces of the repository on my machine.
However, my localhost port 5500 (which happens to be the default port of the Live Server extension for VSCode) now always sends me to the keycodes website. This happens even if I am completely offline (wifi off), and if VSCodes LiveServer is disabled / uninstalled. No matter what, http://<IP_ADDRESS>:5500/ will send me to the keycodes website.
Again, as far as I can tell, no traces of this repository are on my machine anymore. I've tried restarting my machine (macbook), uninstalling Live Server, scraping my machine for traces of this repository, killing port 5500 from the terminal, but http://<IP_ADDRESS>:5500/ still sends me to the keycodes site.
I am at an absolute loss and am not sure what to do. Not only is it super inconvenient to lose the LiveServer default port, but I don't want a port to be constantly serving a site, and want to know how it is even showing this site when all the files have been deleted.
Any advice is appreciated.

You likely have the service worker serving up the cached version. Happens a lot on local development. Just open the application tab on Dev tools and unregister / remove it

That was exactly it. Thank you so much Wes. I can add this to the long list of things I have learned from you (I was mostly upset because this was preventing me from continuing your JS30 course :))


1009 immunization v2 update the patient profile to only should due immunization tasks

IMPORTANT: Where possible all PRs must be linked to a Github issue
Fixes #[issue number] or Closes #[issue number]
Engineer Checklist

[ ] I have written Unit tests for any new feature(s) and edge cases for bug fixes
[ ] I have added any strings visible on UI components to the strings.xml file
[ ] I have updated the  CHANGELOG.md file for any notable changes to the codebase
[ ] I have run ./gradlew spotlessApply and ./gradlew spotlessCheck to check my code follows the project's style guide
[ ] I have built and run the FHIRCore app to verify my change fixes the issue and/or does not break the app

Code Reviewer Checklist

[ ] I have verified Unit tests have been written for any new feature(s) and edge cases
[ ] I have verified any strings visible on UI components are in the strings.xml file
[ ] I have verifed the CHANGELOG.md file has any notable changes to the codebase
[ ] I have verified the solution has been implemented in a configurable and generic way for reuseable components
[ ] I have built and run the FHIRCore app to verify the change fixes the issue and/or does not break the app

This ticket refers to https://github.com/opensrp/fhir-resources/issues/1009


WMT Pytorch loss fluctuates over time

For the WMT Pytorch workload the loss and other metrics decrease, increase and decrease again over time.
Description

Steps to Reproduce
On kasimbeg-6 on branch sacrebleu run
torchrun --redirects 1:0,2:0,3:0,4:0,5:0,6:0,7:0 --standalone --nnodes=1 --nproc_per_node=8 submission_runner.py \
    --framework=pytorch \
    --data_dir=/home/kasimbeg/tensorflow_datasets \
    --experiment_dir=/home/kasimbeg \
    --experiment_name=target_setting \
    --workload=wmt \
    --submission_path=reference_algorithms/target_setting_algorithms/pytorch_adamw.py \
    --tuning_search_space=reference_algorithms/target_setting_algorithms/wmt/tuning_search_space.json > results_wmt_pytorch.txt 2>&1

Source or Possible Fix
Currently investigating init, optimizers etc.

At first glance it looks like the update_fn of the target setting run is not using the correct weights. The weights should be stored in batch['weights']. I guess, I can add this in PR #233.

I think you're right Runa, testing now if that does the trick.

I also found some very minor diffs in the implementation. Can push a PR soon, but it might not drastically change the results.

@priyakasimbeg Did you already check if this solves the issue?

Actually, it looks like that was the last commit on the PR before it got merged so the fix is incomplete still. Should this include the weights key? https://github.com/mlcommons/algorithmic-efficiency/blob/main/algorithmic_efficiency/workloads/wmt/wmt_pytorch/workload.py#L277

Could we do a similar hack to the ogbg workload where returned nans for points w weight 0 and took nanmean?

Yes, I also thought about that, but not sure what is better. The advantage of requiring the user to take the nanmean is that submissions cannot silently fail, because the loss will just be nan, so I'm happy to implement it like this.

I fixed it in #234, hopefully it works now.

Great! thank you, I'll rerun the workload and update here

Zack just brought up a really good point in his review of #234: if there are actually nan values in the loss, we want them to be propagated to users, so maybe we shouldn't just tell them to use nanmean, but give the general instruction to divide the summed losses by weights.sum() instead (and not pad the losses with nan values). This also affects the OGBG workload.

Reopening for tracking, because I get a runtime error now:
Traceback (most recent call last):
  File "submission_runner.py", line 573, in <module>
    app.run(main)
  File "/home/kasimbeg/env/lib/python3.7/site-packages/absl/app.py", line 312, in run
    _run_main(main, args)
  File "/home/kasimbeg/env/lib/python3.7/site-packages/absl/app.py", line 258, in _run_main
    sys.exit(main(argv))
  File "submission_runner.py", line 557, in main
    FLAGS.tokenizer_vocab_path)
  File "submission_runner.py", line 491, in score_submission_on_workload
    tokenizer_vocab_path)
  File "submission_runner.py", line 310, in train_once
    rng=update_rng)
  File "/home/kasimbeg/algorithmic-efficiency/reference_algorithms/target_setting_algorithms/pytorch_submission_base.py", line 49, in update_params
    label_smoothing=label_smoothing)
  File "/home/kasimbeg/algorithmic-efficiency/algorithmic_efficiency/workloads/wmt/workload.py", line 207, in loss_fn
    label_smoothing=label_smoothing)
  File "/home/kasimbeg/algorithmic-efficiency/algorithmic_efficiency/workloads/wmt/wmt_pytorch/workload.py", line 61, in compute_weighted_cross_entropy
    per_example_losses = torch.where(mask, per_example_losses, 0.)
RuntimeError: where expected condition to be a boolean tensor, but got a tensor with dtype Long

Made the mask of bool type. Testing the full fix now.

Yeah that should be the fix, I converted to boolean before but apparently messed it up again in the last refactor. Sorry about that.


Unable to use passthrough auth to machine on localhost

Bug Report
System Information

Operating System (Including distribution name and version number) Ubuntu 18.04.2
AMP version and build date (Always use the version number, 'latest' is not valid!) 1.7.2.
6
Which AMP release stream you're using (Mainline, Nightly or FastTrack) Mainline

I confirm:

[ X ] that I have searched for an existing bug report for this issue.
[ X ] that I am using the latest available version of AMP.
[ X ] that my operating system is up-to-date.

Symptoms
Attempt to login and manage my minecraft server from the ADS panel and receive the error in the screenshot attached below.
AMP_LOG:
[18:16:01] [Auth:Anonymous Activity] : Authentication attempt for user Admin from <IP_ADDRESS>
[18:16:01] [Auth:Admin Activity] �: Authentication success
[18:16:10] [API:Admin Activity] ��: Remote login token requested by Admin on <IP_ADDRESS>
[18:16:10] [ADS:Anonymous Error] �: Failure to make API call to Minecraft01 (http://<IP_ADDRESS>:8183/) - retried 10 times : An error occurred w$
[18:16:10] [Core:Anonymous Error] : [0] (HttpRequestException) : An error occurred while sending the request
[18:16:11] [Core:Anonymous Error] :   at ADSModule.WebMethods.Servers (m.Http.IHttpRequest request, String id, String REQ_RAWJSON)
[18:16:11] [Core:Anonymous Error] : [1] (WebException) : Error getting response stream (ReadDoneAsync2): ReceiveFailure
[18:16:11] [Core:Anonymous Error] :   at Net.WebOperation.Run ()
  at Net.WebCompletionSource`1[T].WaitForCompletion ()
  at Net.HttpWebRequest.EndGetResponse (IAsyncResult asyncResult)

Reproduction
No spare hardware to run a clean install

I am also experiencing this issue on <IP_ADDRESS> AMP Nightly/Mainline on Ubuntu Server 18.04 LTS

Are all of the instances including ADS the same version?

In my case, yes.
On February 8, 2019 12:33:41 PM UTC, PhonicUK<EMAIL_ADDRESS>wrote:

Are all of the instances including ADS the same version?
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/CubeCoders/AMP/issues/45#issuecomment-461788923

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

Can you reach the instance directly?

Yes, I am able to reach the instance directly
On February 8, 2019 6:18:28 PM UTC, PhonicUK<EMAIL_ADDRESS>wrote:

Can you reach the instance directly?
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/CubeCoders/AMP/issues/45#issuecomment-461896268

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

This issue is still under investigation.

Any progress?

Please verify if this issue still occurs under the latest nightly build (available from 2019-02-25)

Still happened for me on v20190225.1, built 25/02/2019 03:00

This has been fixed in a subsequent update (1744)


Displayed time and GameController time get out of sync when the udp bouncer is used

Describe the Bug
When use_bouncing_server is set to true in game.json, the time of the GameController and the time overlay in webots get out of sync when the realtime factor is not close to one. The GameController seems to use the correct time as it corresponds to the simulated time in webots, but the overlay is significantly slower.
Steps to Reproduce

Run ./webots ./projects/samples/contests/robocup/worlds/robocup.wbt
Have a low real time factor (or go through the simulation step by step)
See that the time of the GameController and the overlay diverge

Expected behavior
They should be in sync like when use_bouncing_server is false.
Additional context
Maybe there is an issue with our setup? But I don't really think so since the issue could be reproduced without our software components.
Commit id of webots is 8a3a920 (current release branch).
Commid id of the GameController is 5e72ce8 (current master).

@MaikePaetzel This might be due to GC messages accumulating in the udp_bouncing_server. I am unsure whether there is currently a mechanism to check if we are starting to have delay in the messages.
I had an out-of-sync feeling when benchmarking the robots of teams.


Rename ExJsonPath to ExJSONPath

JSON is an acronym, so it must be all uppercase.

Codecov Report

Merging #18 into master will not change coverage by %.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master       #18   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines           42        42
=========================================
  Hits            42        42

Impacted Files
Coverage Δ

lib/ex_json_path.ex
100.00% <ø> (ø)

Continue to review full report at Codecov.

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