All southpark sites broken (easy fix)

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting that a supported site is broken
[X] I've verified that I'm running yt-dlp version 2023.03.04 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[ ] I've read about sharing account credentials and I'm willing to share it if required

Region
Germany
Provide a description that is worded well enough to be understood
South Park sites seem to be broken (tested on southpark.de, southpark.cc.com, southparkstudios.com via VPN). I don't know this codebase and python very well, but I understand how the site works, so I think I should be able to provide all info necessary to fix this.
Here is the pipeline of how yt-dlp currently tries to obtain an episode's HLS stream

Get the episode's HTML and extract the __DATA__ JS constant.
From the __DATA__, get the episode's MGID (MTV internal URI)
Make a request to http://media.mtvnservices.com/pmt/e1/access/index.html?uri={MGID}&configtype=edge&ref={Episode URL}, response is JSON
From the JSON response, extract feedWithQueryParams. This is supposed to give you the 'MediaGen' URL (a document containing the RTMP/HLS master stream). It seems, however, that the feedWithQueryParams URL has been invalidated/removed.

Here's the solution:
You don't actually need to make a request to the feedWithQueryParams URL!
The RTMP/HLS master stream URLs are actually contained within the media.mtvnservices.com JSON response.
The JSON looks something like this (I took out some irrelevant parts):
{
  "feed": {
    "title": "The Pandemic Special",
    "link": "",
    "description": "Randy comes to terms with his role in the COVID-19 outbreak as the on-going pandemic presents continued challenges to the citizens of South Park.",
    "image": {
      "title": {},
      "link": "",
      "url": "https://playplex.mtvnimages.com/uri/mgid:arc:content:southpark.intl:230a4f02-f583-11ea-834d-70df2f866ace?stage=staging&ep=shared.southpark.gsa.de"
    },
    "items": [
      {
        "group": {
          "content": "https://media-utils.mtvnservices.com/services/MediaGenerator/mgid:arc:video:southpark.intl:d514e26e-2d28-11ec-9b1b-0e40cf2fc285?arcStage=staging&accountOverride=intl.mtvi.com&billingSection=intl&device={device}&ep=20476225"
        },
        "title": "South Park"
      }
    ]
  },
}

This means that all of the feed information is contained within this JSON.
Now, to get the HLS master streams, you simply extract all feed.items[i].group.content (you iterate over them to get all segments' URLs).

The bonus of this solution is also that you make one HTTP request less.

I hope my response makes it easy to fix this issue.
Feel free to comment if you have any further questions.

Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU', 'https://www.southpark.de/en/episodes/2dhgcd/south-park-cupid-ye-season-26-ep-1']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>[392389b7d] (source)
[debug] Lazy loading extractors is disabled
[debug] Git HEAD: 21b9413cf
[debug] Python 3.10.10 (CPython x86_64 64bit) - Linux-6.1.26-1-MANJARO-x86_64-with-glibc2.37 (OpenSSL 3.0.8 7 Feb 2023, glibc 2.37)
[debug] exe versions: ffmpeg 6.0 (setts), ffprobe 6.0, rtmpdump 2.4
[debug] Optional libraries: certifi-2022.12.07, sqlite3-2.6.0
[debug] Proxy map: {}
[debug] Loaded 1813 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version<EMAIL_ADDRESS>Current version<EMAIL_ADDRESS>yt-dlp is up to date<EMAIL_ADDRESS>[southpark.de] Extracting URL: https://www.southpark.de/en/episodes/2dhgcd/south-park-cupid-ye-season-26-ep-1
[southpark.de] south-park-cupid-ye-season-26-ep-1: Downloading webpage
[southpark.de] 94ad0b35-9036-11ed-ad8e-0e40cf2fc285: Downloading JSON metadata
[southpark.de] 94ad0b35-9036-11ed-ad8e-0e40cf2fc285: Downloading info
ERROR: [southpark.de] 2dhgcd/south-park-cupid-ye-season-26-ep-1: Unable to download XML: HTTP Error 500: Internal Server Error (caused by <HTTPError 500: 'Internal Server Error'>); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/common.py", line 694, in extract
    ie_result = self._real_extract(url)
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/mtv.py", line 323, in _real_extract
    videos_info = self._get_videos_info(mgid, url=url)
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/mtv.py", line 227, in _get_videos_info
    return self._get_videos_info_from_url(info_url, video_id, use_hls)
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/mtv.py", line 230, in _get_videos_info_from_url
    idoc = self._download_xml(
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/common.py", line 1048, in download_content
    res = getattr(self, download_handle.__name__)(url_or_request, video_id, **kwargs)
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/common.py", line 1012, in download_handle
    res = self._download_webpage_handle(
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/common.py", line 882, in _download_webpage_handle
    urlh = self._request_webpage(url_or_request, video_id, note, errnote, fatal, data=data, headers=headers, query=query, expected_status=expected_status)
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/common.py", line 839, in _request_webpage
    raise ExtractorError(errmsg, cause=err)

  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/extractor/common.py", line 821, in _request_webpage
    return self._downloader.urlopen(self._create_request(url_or_request, data, headers, query))
  File "/tmp/tmp.FkXxtckmjP/yt-dlp/yt_dlp/YoutubeDL.py", line 3753, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib/python3.10/urllib/request.py", line 525, in open
    response = meth(req, response)
  File "/usr/lib/python3.10/urllib/request.py", line 634, in http_response
    response = self.parent.error(
  File "/usr/lib/python3.10/urllib/request.py", line 563, in error
    return self._call_chain(*args)
  File "/usr/lib/python3.10/urllib/request.py", line 496, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.10/urllib/request.py", line 643, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 500: Internal Server Error

The SP sites are aggressively regional, so that a test show URL https://southpark.there/path is redirected to https://southpark.here/path, where there is the domain of the test URL and here is the domain that the site thinks you should be using based on what it believes to be your location. Typically the redirected URL will be invalid, giving 404 instead of a geo-block error. API URLs using mtvnservices.com don't behave in this way.
The first test URL from the extractor exists in both US and UK SP sites. The JSON fetched according to the suggested scheme from http://media.mtvnservices.com/pmt/e1/access/index.html?uri=mgid%3Aarc%3Avideo%3Asouthpark.intl%3A31929ad5-8269-11eb-8774-70df2f866ace&configtype=edge&ref=https%3A%2F%2Fsouthpark.cc.com%2Fvideo-clips%2Fd7wr06%2Fsouth-park-you-all-agreed-to-counseling looks like this:
{'acceptMethods': '',
 ...
 'brightcove_mediagenRootURL': '',
 'brightcove_version': '',
 ...
 'ccEnabled': False,
 ...
 'configURL': '/pmt-arc/e1/players/mgid:arc:video:southpark.intl:/config.js?uri=mgid:arc:video:southpark.intl:31929ad5-8269-11eb-8774-70df2f866ace&type=network&ref=southpark.cc.com&geo=GB&group=intl&network=None&device=Other&networkConnectionType=None&timezone=GMT&throughput=vhigh&bw=5000&name=ISP_REDACTED&city=CITY_REDACTED&state=EN&originalRef=https%3a%2f%2fsouthpark.cc.com%2fvideo-clips%2fd7wr06%2fsouth-park-you-all-agreed-to-counseling&fasLogic=true',
 'contentType': 'clip',
 ...
 'feed': {},
 'feedLoaderEndTime':<PHONE_NUMBER>,
 'feedLoaderStartTime':<PHONE_NUMBER>,
 'feedWithQueryParams': 'None',
 'flashHLSEnabled': True,
 ...
 'geo': 'GB',
 'group': 'intl',
 'hideScrubberThumbnail': False,
 'html5playerVersion': '1.30.5',
 'jsHLSEnabled': True,
 ...
 'mediaGen': 'http://media.mtvnservices.com/player/html5/mediagen/?uri={uri}&device={device}',
 ...
 'viewabilityEnabled': False,
 ...
}

The configURL says 404. The URL generated from mediaGen as suggested returns XML with a geo-block message.
Test URL 2 has the redirect issue.
Test URL 3 behaves better. Applying roughly the suggested scheme in yt-dl gives this:
$ python3.9 -m youtube_dl -v -F test:southpark.cc.com_2
[debug] System config: ['--prefer-ffmpeg']
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', '-F', 'test:southpark.cc.com_2']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Git HEAD: d1c6c5c4d
[debug] Python 3.9.16 (CPython 32bit) - Linux-4.4.0-210-generic-i686-with-glibc2.23 (OpenSSL 1.1.1t  7 Feb 2023, glibc 2.23)
[debug] exe versions: avconv 4.3, avprobe 4.3, ffmpeg 4.3, ffprobe 4.3
[debug] Proxy map: {}
[TestURL] Test URL: https://www.southparkstudios.com/episodes/h4o269/south-park-stunning-and-brave-season-19-ep-1
[southpark.cc.com] south-park-stunning-and-brave-season-19-ep-1: Downloading webpage
[southpark.cc.com] ed0508ac-1708-4865-835f-34d33e64a32f: Downloading JSON metadata
[download] Downloading playlist: Stunning and Brave
[southpark.cc.com] f1a6bb46-5c43-4dc8-b4aa-ebf10a8e287a: Downloading video urls
[southpark.cc.com] f1a6bb46-5c43-4dc8-b4aa-ebf10a8e287a: Downloading m3u8 information
[southpark.cc.com] 9baf1095-d8ee-4a54-bdf2-2954ff1f2070: Downloading video urls
[southpark.cc.com] 9baf1095-d8ee-4a54-bdf2-2954ff1f2070: Downloading m3u8 information
[southpark.cc.com] 40c01eed-7ad5-43ed-8f7e-110bd78bd4ae: Downloading video urls
[southpark.cc.com] 40c01eed-7ad5-43ed-8f7e-110bd78bd4ae: Downloading m3u8 information
[southpark.cc.com] 2f2050a9-bd3f-4614-a9b7-278474e0e86d: Downloading video urls
[southpark.cc.com] 2f2050a9-bd3f-4614-a9b7-278474e0e86d: Downloading m3u8 information
[southpark.cc.com] e8c2d6cc-17ba-47c4-a8af-f47773122113: Downloading video urls
[southpark.cc.com] e8c2d6cc-17ba-47c4-a8af-f47773122113: Downloading m3u8 information
[southpark.cc.com] playlist Stunning and Brave: Downloading 5 videos
[download] Downloading video 1 of 5
[info] Available formats for f1a6bb46-5c43-4dc8-b4aa-ebf10a8e287a:
format code  extension  resolution note
hls-336      mp4        384x216     336k , avc1.4D401E, 23.976fps, mp4a.40.2
hls-530      mp4        512x288     530k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-967      mp4        640x360     967k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1227     mp4        768x432    1227k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1818     mp4        960x540    1818k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-2653     mp4        1280x720   2653k , avc1.640028, 23.976fps, mp4a.40.2
hls-4431     mp4        1920x1080  4431k , avc1.640028, 23.976fps, mp4a.40.2 (best)
[download] Downloading video 2 of 5
[info] Available formats for 9baf1095-d8ee-4a54-bdf2-2954ff1f2070:
format code  extension  resolution note
hls-317      mp4        384x216     317k , avc1.4D401E, 23.976fps, mp4a.40.2
hls-377      mp4        512x288     377k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-544      mp4        640x360     544k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-644      mp4        768x432     644k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-889      mp4        960x540     889k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1338     mp4        1280x720   1338k , avc1.640028, 23.976fps, mp4a.40.2
hls-2748     mp4        1920x1080  2748k , avc1.640028, 23.976fps, mp4a.40.2 (best)
[download] Downloading video 3 of 5
[info] Available formats for 40c01eed-7ad5-43ed-8f7e-110bd78bd4ae:
format code  extension  resolution note
hls-311      mp4        384x216     311k , avc1.4D401E, 23.976fps, mp4a.40.2
hls-394      mp4        512x288     394k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-580      mp4        640x360     580k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-686      mp4        768x432     686k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-938      mp4        960x540     938k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1386     mp4        1280x720   1386k , avc1.640028, 23.976fps, mp4a.40.2
hls-2794     mp4        1920x1080  2794k , avc1.640028, 23.976fps, mp4a.40.2 (best)
[download] Downloading video 4 of 5
[info] Available formats for 2f2050a9-bd3f-4614-a9b7-278474e0e86d:
format code  extension  resolution note
hls-321      mp4        384x216     321k , avc1.4D401E, 23.976fps, mp4a.40.2
hls-428      mp4        512x288     428k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-675      mp4        640x360     675k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-845      mp4        768x432     845k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1167     mp4        960x540    1167k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1722     mp4        1280x720   1722k , avc1.640028, 23.976fps, mp4a.40.2
hls-3284     mp4        1920x1080  3284k , avc1.640028, 23.976fps, mp4a.40.2 (best)
[download] Downloading video 5 of 5
[info] Available formats for e8c2d6cc-17ba-47c4-a8af-f47773122113:
format code  extension  resolution note
hls-380      mp4        384x216     380k , avc1.4D401E, 23.976fps, mp4a.40.2
hls-601      mp4        512x288     601k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1118     mp4        640x360    1118k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1469     mp4        768x432    1469k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-1970     mp4        960x540    1970k , avc1.4D401F, 23.976fps, mp4a.40.2
hls-2759     mp4        1280x720   2759k , avc1.640028, 23.976fps, mp4a.40.2
hls-4400     mp4        1920x1080  4400k , avc1.640028, 23.976fps, mp4a.40.2 (best)
[download] Finished downloading playlist: Stunning and Brave
$

The part URLs return HTML5-like XML, which the extractor can handle using the `_extract_video_formats()` and `_extract_subtitles()` methods of `MTVServicesInfoExtractor`.

It's been a few days. Any progress on implementing the fix? There are multiple repositories that are affected by this breakage, and it should be relatively easy to fix for someone familiar with the codebase.

The SP sites are aggressively regional, so that a test show URL https://southpark.there/path is redirected to https://southpark.here/path, where there is the domain of the test URL and here is the domain that the site thinks you should be using based on what it believes to be your location. Typically the redirected URL will be invalid, giving 404 instead of a geo-block error. API URLs using mtvnservices.com don't behave in this way.

I fail to see how the regional aspect of SP holds significant relevance to this specific issue. I have implemented the exact algorithm I outlined in my initial comment in my own SP downloader project, which seems to work across all supported regions. By the way, you are welcome to examine my code on my GitHub repository here. While it is licensed under MIT, I grant you permission to utilize it for yt-dlp if needed.
Please let me know if you have any further questions or if I can be of any further assistance

So it seems SP just re-added feedWithQueryParams, meaning yt-dlp's method works again without any source code modification. I tested this in multiple locations and episodes seem to download just fine. Thanks to everyone for their comments.


Update D:\Git\winget-pkgs\manifests\k\Kiraku\AudioJam\1.17.3-352

Microsoft Reviewers: codeflow:open?pullrequest=https://github.com/microsoft/winget-pkgs/pull/114416&drop=dogfoodAlpha

@wingetbot run

@wingetbot run

Seems the publisher may be blocking pipelines?

Installer Verification Analysis Context Information:
Error occurred while downloading installer from https://download.kirakuapp.com/AUM_PC/Audio Jam Setup 1.17.3-352.exe. 0x80072F19.
Error information:
Http Response: OK
Http Reason Phrase: OK

This isn't an error that I can waiver or approve around.


feat!: use css custom properties for primary color

Description
This pr will replace the primary color definition and its level for custom css properties(css variables) to allow the mfes customization on runtime.
Color will be defined is this way

How to test

install this version
Set a color,  document.documentElement.style.setProperty('--custom-primary-500', '#A00000'), check the following gif.

Note:
This is a breaking change,  since components, from another libraries, could be using the primary color with sass functions as mix, darken, lighten, those functions are expecting a color variable and this replace the color for a css var that is not compatible, so the workaround is to use get-darken-color, get-mix-color and get-lighten-color functions defined in these changes
Deploy Preview
Include a direct link to your changes in this PR's deploy preview here (e.g., a specific component page).
Merge Checklist

[ ] If your update includes visual changes, have they been reviewed by a designer? Send them a link to the Netlify deploy preview, if applicable.
[ ] Does your change adhere to the documented style conventions?
[ ] Do any prop types have missing descriptions in the Props API tables in the documentation site (check deploy preview)?
[ ] Were your changes tested using all available themes (see theme switcher in the header of the deploy preview, under the "Settings" icon)?
[ ] Were your changes tested in the example app?
[ ] Is there adequate test coverage for your changes?
[ ] Consider whether this change needs to reviewed/QA'ed for accessibility (a11y). If so, please add wittjeff and adamstankiewicz as reviewers on this PR.

Post-merge Checklist

[ ] Verify your changes were released to NPM at the expected version.
[ ] If you'd like, share your contribution in #show-and-tell.
[ ] 🎉 🙌 Celebrate! Thanks for your contribution.

Thanks for the pull request, @andrey-canon!  Please note that it may take us up to several weeks or months to complete a review and merge your PR.
Feel free to add as much of the following information to the ticket as you can:

supporting documentation
Open edX discussion forum threads
timeline information ("this must be merged by XX date", and why that is)
partner information ("this is a course on edx.org")
any other information that can help Product understand the context for the PR

All technical communication about the code itself will be done via the GitHub pull request interface. As a reminder, our process documentation is here.
This is currently a draft pull request. When it is ready for our review and all tests are green, click "Ready for Review", or remove "WIP" from the title, as appropriate.

Hello @andrey-canon! Thanks for opening this PR; it's actually overlapping with some ongoing work to migrate Paragon's style definitions in their entirety over to design tokens. These design tokens are then transformed into various output formats, including CSS variables.
There is currently an ADR in draft / up for review right to solicit feedback/concerns/etc. on our approach; would love any input you might have!
It's also worth mentioning that we have an alpha release of Paragon with this design tokens implementation that you might consider trying to install in a micro-frontend to observe the CSS variables in use throughout Paragon's components.

@andrey-canon Even though your pull request wasn’t merged, please take a moment  to answer a two question survey so we can improve your experience in the future.


Change TESS to use projected coordinates and other small fixes

I changed the vignette/TESS function docs to make it clear projected coordinates should be used for kriging. I also made some minor changes to the TESS functions to get rid of some annoying messages. These changes need to be checked over really carefully because they could easily cause side effects.

Also these tests will fail until #65 is merged into it because the getData() function is deprecated/can't pull from the link


Modified max_pmt_area so that the unit becomes PE

We eventually decided to just make area_per_channel itself have units of PE, which achieves the same goal as this.


Usage with import

I think the documentation should include usage instructions when importing d3 as an ES6 module:
import * as d3 from 'd3';

How is d3-tile to be imported?

The recommended pattern is to not use the D3 default bundle (d3/d3) when using ES modules. Instead, use the individual D3 modules, and import the specific symbols you need to use.
import {tile} from "d3-tile";

If you want to import a module as a namespace, you must define a separate namespace for each module.
import * as d3 from "d3";
import * as d3Tile from "d3-tile";

Then you can say d3Tile.tile.

Thanks for the insight, and in general for the work of art that is d3.
Maybe that should appear somewhere in the docs…

Add some language here: https://github.com/d3/d3/wiki#supported-environments
The wiki is publicly-editable and contributions are welcome.


Integrate KeeperRegistry & RegistryService into ChronoVisor

Integrate KeeperRegistryService and KeeperRegistry into ChronoVisor executable
Update ClientConnect API to communicate vector  for to  chronolog client , this should provide enough information for the client side to instantiate communication with KeeperRecordingService
Reshuffle the directory structure as needed

completed


Schema cleanup - defaulting to all fields - exclude list

ExcludeProperties array (for content/_links) etc
field_reference added to meta

Will test more tomorrow...


Offline mode view: color changes

https://openedx.atlassian.net/browse/MA-899
@aleffert plz review

:+1:


Error running timer ‘company-echo-show’

My config:
;; tabnine
(use-package company :ensure t)
(add-hook 'after-init-hook 'global-company-mode)
(use-package company-tabnine :ensure t)
(add-to-list 'company-backends #'company-tabnine)
;; Trigger completion immediately.
(setq company-idle-delay 0)

;; Number the candidates (use M-1, M-2 etc to select completions).
(setq company-show-numbers t)

;; Use the tab-and-go frontend.
;; Allows TAB to select and complete at the same time.
(company-tng-configure-default)

Steps to reproduce:
Just type something and an error message with popup.
Error running timer ‘company-echo-show’: (error "Company: backend company-tabnine error \"Invalid function: (messages (alist-get (quote promotional_message) company-tabnine--result))\" with args (meta that)")

Should be fixed in the latest version (by #6). Try reinstalling / updating the package.

I'm using the latest version: 20181123.341
Here the function in the source code:
(defun company-tabnine--meta (candidate)
  "Return meta information for CANDIDATE.  Currently used to display promotional messages."
  (if (null company-tabnine--result)
      nil
    (when-let* ((messages (alist-get 'promotional_message company-tabnine--result)))
      (s-join " " messages))))


Issue building Motif with Xcode 12

We are currently importing Motif 0.3.8 via Carthage
When building with Xcode 12, there is a compilation error on line 434 and line 436 of UIColor+HTMLColors.m
{
    float f = 0.0;
    if ([self scanFloat:&f]) {
        if ([self scanString:@"%" intoString:NULL]) {
            f *= 0.01;
        } else {
            f *= scale;
        }
        if (value) {
            *value = f;
        }
        return YES;
    }
    return NO;
}

Compilation error: Implicit conversion when assigning computation result loses floating-point precision: 'double' to 'float'

Pull request https://github.com/erichoracek/Motif/pull/102 submitted.

@erichoracek Any chances of getting this PR merged in for this issue?


Update Beam Katas Built-in IOs to get the Kotlin Katas featured

Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

R: @pabloem

what does this do?

The JetBrains team got some feedback to modify the Built-in IOs task.
Just need to modify some wording and add empty test.

Retest this please

Thanks @henryken !


resource "ct_config" need to support count

the current ct_config resource does not support count.
so we can not declare multiple instance of configures by something like this:
data "ct_config" "master" {
  count          = 3
  content       = ""
  platform      = "custom"
  pretty_print = true
}

in our use case, we have to deal with multiple k8s master VMs,
i believe this is a very common case.
please refer to this document for what terraform resource count is:
https://www.terraform.io/docs/configuration/resources.html#count

just found out it already been supported natively,
https://github.com/hashicorp/terraform/pull/8635
data "ct_config" "master" {
  count          = 3
  content       = ""
  platform      = "custom"
  pretty_print = true
}

data.ct_config.master.*.rendered


BUILDER: Environment variables

We should let users define environment variables w/ their repositories.

Should this be its own file, or should we just ask people to use a binder.yml file in this case?

This should be in repo2docker :)
Anything related to how repos are turned into images should be there...
On Jun 27, 2017 10:25 AM, "Chris Holdgraf"<EMAIL_ADDRESS>wrote:

We should let users define environment variables w/ their repositories.

Should this be its own file, or should we just ask people to use a
binder.yml file in this case?

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jupyterhub/binderhub/issues/65, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAB23rPOURTnCyZHYx5yOcGhf4rAScMVks5sITsHgaJpZM4OG8Z-
.

yep I just realized I was in the wrong repo :-P already opened another one in repo2docker a second ago and will port these over there (except for the binderfile one, which is I think more appropriate here, yes?)

Nope, they all belong in repo2docker :)
Thanks for moving them over!
On Jun 27, 2017 10:28 AM, "Chris Holdgraf"<EMAIL_ADDRESS>wrote:

Closed #65 https://github.com/jupyterhub/binderhub/issues/65.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jupyterhub/binderhub/issues/65#event-1140959892, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAB23nGHqB2QwW9WQqYnDtYwRZNt9BEFks5sITvWgaJpZM4OG8Z-
.


Insane memory usage (7GB+)

Type: Bug
I noticed that there is a node process in WSL1 which is eating insane amounts of memory (7 GB) and occupies one CPU core fully. This seems to be the extension host. Extension Bisect showed that stateful.runme is the culprit. Disabling this extension resolves the issue.
top output:

Performance graph in Process Hacker:

VS Code version: Code 1.74.3 (97dec172d3256f8ca4bfb2143f3f76b503ca0534, 2023-01-09T16:59:02.252Z)
OS version: Windows_NT x64 10.0.19045
Modes:
Sandboxed: No
Remote OS version: Linux x64 4.4.0-19041-Microsoft
Remote OS version: Linux x64 4.4.0-19041-Microsoft

System Info

Item
Value

CPUs
AMD Ryzen 7 PRO 4750U with Radeon Graphics (16 x 1697)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
undefined

Memory (System)
31.23GB (0.36GB free)

Process Argv

Screen Reader
no

VM
0%

Item
Value

Remote
WSL: Ubuntu-20.04

OS
Linux x64 4.4.0-19041-Microsoft

CPUs
AMD Ryzen 7 PRO 4750U with Radeon Graphics (16 x 1700)

Memory (System)
31.23GB (0.34GB free)

VM
0%

Item
Value

Remote
WSL: Ubuntu-20.04

OS
Linux x64 4.4.0-19041-Microsoft

CPUs
AMD Ryzen 7 PRO 4750U with Radeon Graphics (16 x 1700)

Memory (System)
31.23GB (0.34GB free)

VM
0%

Extensions (64)

Extension
Author (truncated)
Version

auto-close-tag
for
0.5.14

vscode-graphql-syntax
Gra
1.0.5

dotenv
mik
1.0.1

vscode-aql
mon
1.7.0

jupyter-keymap
ms-
1.0.0

remote-containers
ms-
0.266.1

remote-ssh
ms-
0.94.0

remote-ssh-edit
ms-
0.84.0

remote-wsl
ms-
0.72.0

remote-explorer
ms-
0.0.3

ejs-language-support
Qas
0.0.1

vscode-todo-highlight
way
1.0.5

vscode-devdocs
akf
1.0.3

svelte-intellisense
ard
0.7.1

vscode-intelephense-client
bme
1.9.3

npm-intellisense
chr
1.4.4

js-codeformer
cms
2.6.1

compulim-vscode-closetag
Com
1.2.0

vscode-eslint
dba
2.2.6

devdocs
dei
0.2.0

vscode-new-file
dku
4.0.2

dbux-code
Dom
0.7.9

xml
Dot
2.5.1

EditorConfig
Edi
0.16.4

copilot
Git
1.65.7705

vscode-graphql-execution
Gra
0.1.6

vscode-graphql-syntax
Gra
1.0.5

vscode-git-blamer
how
1.1.2

join-comment-aware
joh
0.0.3

solidity
Jua
0.0.141

edge
luo
0.3.2

rainbow-csv
mec
3.5.0

csharp
ms-
1.25.2

vscode-dotnet-runtime
ms-
1.6.0

isort
ms-
2022.8.0

python
ms-
2022.20.1

vscode-pylance
ms-
2023.1.10

jupyter
ms-
2022.11.1003412109

jupyter-keymap
ms-
1.0.0

jupyter-renderers
ms-
1.0.12

vscode-jupyter-cell-tags
ms-
0.1.6

vscode-jupyter-slideshow
ms-
0.1.5

cpptools
ms-
1.13.9

hexeditor
ms-
1.9.9

hexeditor
not
1.8.2

vscode-print
pdc
0.10.20

svelte-extractor
pro
0.0.3

vscode-data-preview
Ran
2.3.0

vscode-data-table
Ran
1.12.0

vscode-yaml
red
1.11.0

ActiveFileInStatusBar
Ros
1.0.3

vscode-paste-and-indent
Rub
0.0.8

bracket-jumper
sas
1.1.8

trailing-spaces
sha
0.4.1

vscode-standard
sta
2.1.3

runme
sta
0.4.2

ignore-gitignore
stu
1.0.1

svelte-vscode
sve
107.0.1

es6-string-html
Tob
2.12.0

sort-lines
Tyr
1.9.1

use-strict-everywhere
vee
0.1.3

bracket-padder
via
0.3.0

change-case
wma
1.0.0

html-css-class-completion
Zig
1.20.0

Thank you very much for the bug report @CherryDT !

The bug report's much appreciated @CherryDT. We'll get to the bottom of this mem consumption issue.

I was able to reproduce this on WSL1 with Windows 10.
After some investigation, it looks like there's a memory leak in yuin/goldmark. @CherryDT if you wouldn't mind checking out this demo repo I made and running the test script (node ./wasm/test.js) in WSL, that would be great to see if this is the source of the issue on your machine.
Even on my macos machine, the program eats up ~3.5 GB before exiting (see below). That probably shouldn't happen in the first place, but I think the memory does get freed on other platforms. I'm guessing that on certain platforms, that memory is getting leaked.
If you have the same issue as below, I'll leave an issue on the goldmark repo, since I couldn't find any reports there already.

@mxsdev thanks for digging into this. It's interesting case because in your test, in the Go code, you don't actually do any work except for declaring a global variable. However, the initial bump in the memory usage is quite odd.
On macOS, I managed to reproduce it, but after a while the used memory drops to around 300-400 MB. I observed that with these two changes:
// wasm/test.js
;(async function main() {
    await initWasm()

    await new Promise(resolve => setTimeout(resolve, 60000));
})()

func main() {
    select {}
}

I also run a test where, instead of just declaring a global variable, it performs some work:
package main

import (
        "github.com/yuin/goldmark"
        "github.com/yuin/goldmark/text"
)

func main() {
        md := []byte("## markdown document")
        p := goldmark.DefaultParser()
        _ = p.Parse(text.NewReader(md))

        select {}
}

Interestingly, there is no spike of the used mem to 3.5GB but to around 800MB and it drops quickly to less than 400MB. It might be also an issue of how I observe memory usage generally and the spike is there, but it lasts much shorter.
I will try to benchmark our wasm binary with the whole logic, but I would probably blame Go and its WebAssmebly implementation and/or how we use it rather than goldmark at this point.

@adambabik Ah, I see - that definitely suggests it may be an issue at the level of Go's wasm compilation/how we use it, as you say.
Definitely interested to see the benchmarks. I'll keep looking into it on my own as well 👍

Thanks for the extra contextual information folks 👏 . If it's possible to patch up the memory leak... let's do it!
Outside of that: Based on some digging we've done a few weeks back, we believe the culprit here is likely how we're using the WASM Engine inside of the the Extension Host (node process). The VS Code team has pointed me in the direction to wrap the WASM module inside of a worker thread (message passing) instead of sharing the memory/process space.
However, doing exactly that is basically akin to a larger shift in architecture which is currently under way to give Runme a RPC interface. To get a better read on whether it will solve/mitigate this issue we decided to expedite moving De(-)serialization to this interface (currently provided by WASM integration) shorter term. This is actively being worked on and hopefully wraps in the next few weeks.
Long story short is that the WASM integration will go away. I suppose a memor leak might still be problematic in the "runme server".

After some investigation, it looks like there's a memory leak in yuin/goldmark. @CherryDT if you wouldn't mind checking out this demo repo I made and running the test script (node ./wasm/test.js) in WSL, that would be great to see if this is the source of the issue on your machine.

Yes this seems to be it.
Again one CPU core fully utilized and 8 GB RAM usage.

I believe that I am seeing this too, but since I run code-server with 4GB of ram, it just crashes over and over.
[07:18:42] [<IP_ADDRESS>][ebf03487][ExtensionHostConnection] <2428> Extension Host Process exited with code: null, signal: SIGKILL.
[07:18:42] [<IP_ADDRESS>][ebf03487][ExtensionHostConnection] Unknown reconnection token (seen before).
[07:18:43] [<IP_ADDRESS>][323fff64][ExtensionHostConnection] New connection established.
[07:18:43] [<IP_ADDRESS>][323fff64][ExtensionHostConnection] <2558> Launched Extension Host Process.
[07:18:57] [<IP_ADDRESS>][323fff64][ExtensionHostConnection] <2558> Extension Host Process exited with code: null, signal: SIGKILL.
[07:18:57] [<IP_ADDRESS>][323fff64][ExtensionHostConnection] Unknown reconnection token (seen before).
[07:18:58] [<IP_ADDRESS>][a5c229ce][ExtensionHostConnection] New connection established.
[07:18:58] [<IP_ADDRESS>][a5c229ce][ExtensionHostConnection] <2847> Launched Extension Host Process.
[07:19:10] [<IP_ADDRESS>][a5c229ce][ExtensionHostConnection] <2847> Extension Host Process exited with code: null, signal: SIGKILL.
[07:19:10] [<IP_ADDRESS>][a5c229ce][ExtensionHostConnection] Unknown reconnection token (seen before).
[07:20:40] [<IP_ADDRESS>][16488969][ExtensionHostConnection] New connection established.
[07:20:40] [<IP_ADDRESS>][16488969][ExtensionHostConnection] <2979> Launched Extension Host Process.
[07:20:53] [<IP_ADDRESS>][16488969][ExtensionHostConnection] <2979> Extension Host Process exited with code: null, signal: SIGKILL.
[07:20:53] [<IP_ADDRESS>][16488969][ExtensionHostConnection] Unknown reconnection token (seen before).

Hi @sfxworks! Thanks for letting us know. We're working to resolve this mem issue as part of moving Runme's architecture away from its current WASM lib implementation. Planning to have a fix ready before the end of the month! Thanks for giving Runme a spin. This bug is on top of our priority list.

Perfect. Thank you for the tag! We use code-server on our end so no worries about the Windows of things.

Perfect. Thank you for the tag! We use code-server on our end so no worries about the Windows of things.

Great. Let us know how it goes!

Closing this issue as fixed, @CherryDT. Let me know if you're still seeing issues.


Add more examples

changes
let port -> const port
adds

node / nest
node / next
python / uvicorn
go / net/http

Included in #264


1322: Modified manifests to use all-in-one training-operator WIP

Actions taken:
- replaced tf-job-operator => training-operator
- replaced kubeflow-tfjobs- => kubeflow-training-
- moved crds for mxjobs, tgjobs, pytorchjobs and xgboostjobs from
config/crd/bases to manifests/base/ and prefixed them with crd_
Ref: https://github.com/kubeflow/tf-operator/issues/1322
Testing steps: To be added
Work in Progress

/ok-to-test

/cc @Jeffwan /cc @gaocegege

/hold

Please help compare https://github.com/kubeflow/tf-operator/blob/c60dabb7daa3ff9ffb4eecfc24ee4a39bce4b7ca/config/manager/manager.yaml#L7-L9 and your deployment.yaml

/hold cancel

/lgtm
/approve


Add logm package.

Codecov Report
Attention: Patch coverage is 85.21739% with 102 lines in your changes missing coverage. Please review.

Project coverage is 86.17%. Comparing base (0cd5317) to head (2049e3d).
Report is 1 commits behind head on main.

Files with missing lines
Patch %
Lines

logm/tlogm/mocks.go
0.00%
40 Missing :warning:

logm/tlogm/log.go
0.00%
35 Missing :warning:

logm/log.go
36.66%
19 Missing :warning:

logm/adapter.go
92.30%
2 Missing :warning:

logm/background.go
96.55%
2 Missing :warning:

logm/config.go
81.81%
2 Missing :warning:

logm/span.go
98.13%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main       #2      +/-   ##
==========================================
- Coverage   94.33%   86.17%   -8.17%
==========================================
  Files           4       15      +11
  Lines          53      738     +685
==========================================
+ Hits           50      636     +586
- Misses          2      102     +100
+ Partials        1        0       -1

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


"lighthouse host is not in our subnet"

am attempting to provision a new nebula host, and am getting a strange error on startup reporting that the node, and the network are mismatched, but it certainly seems to be correct:
 level=error msg="lighthouse host is not in our subnet, invalid" network=<IP_ADDRESS>/24 vpnIp=<IP_ADDRESS>

Version: 1.6.1-master-46-g397fe5f

nevermind bad config


core library updates for named arguments anywhere

See #47451 for the meta issue and dart-lang/language#1072 for the language issue.

There are no necessary core library code updates. The change enables new ways to do the same thing, but there is no urge to change existing code to use the new feature.
We may want to check our documentation, and see if some would read better using named arguments earlier in the argument list. It's not expected to be common.


Add Bootstrap handler for SecretClient creation

Create new handler responsible for creating a secret client and update
core-data to leverage the new handler.
Signed-off-by: Anthony M. Bonafide<EMAIL_ADDRESS>

@tingyuz, did we ever determine how we are going to enable/disable the use of the secret store? I remember talking about it in the Security working group but I do not recall what we decided on other than it is going to be on by default?

#1825

Codecov Report

Merging #1834 into master will decrease coverage by <.01%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master    #1834      +/-   ##
==========================================
- Coverage   38.76%   38.75%   -0.01%
==========================================
  Files         166      166
  Lines       12437    12439       +2
==========================================
  Hits         4821     4821
- Misses       7351     7353       +2
  Partials      265      265

Impacted Files
Coverage Δ

cmd/core-data/main.go
0% <0%> (ø)
:arrow_up:

internal/core/data/config.go
0% <0%> (ø)
:arrow_up:

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 6f7177c...38b5024. Read the comment docs.

Recheck

The CI jobs passed, but I just rebased with the latest changes in master

You didn't add handlers.SecretClientBootstrapHandler to calls to bootstrap.Run() in the other services that have already been converted to use the new common bootstrap package:

core-metadata
export-client
export-distro
support-logging
support-notifications
support-scheduler
sys-mgmt-agent

If I update these other services in this PR then I would like to merge PR #1850 before completing this work so that we can also add this new handler there as well.

Messed something up with the rebase, fixing now.

This ready for review.

Rebased


Definitions of datasets doesn't work

This is what I see in the output:
2024-05-09 08:11:22.961 [info] Failed to handle request 34 textDocument/hover HoverParams(text_document=TextDocumentIdentifier(uri='file:///Users/juan_cano/Projects/QuantumBlackLabs/kedro-mlflow-playground/spaceflights-mlflow3/src/spaceflights_mlflow3/pipelines/data_processing/pipeline.py'), position=18:13, work_done_token=None)
Traceback (most recent call last):
  File "/Users/juan_cano/.vscode/extensions/kedro.kedro-0.0.1/bundled/libs/pygls/protocol/json_rpc.py", line 266, in _handle_request
    self._execute_request(msg_id, handler, params)
  File "/Users/juan_cano/.vscode/extensions/kedro.kedro-0.0.1/bundled/libs/pygls/protocol/json_rpc.py", line 188, in _execute_request
    self._send_response(msg_id, handler(params))
                                ^^^^^^^^^^^^^^^
  File "/Users/juan_cano/.vscode/extensions/kedro.kedro-0.0.1/bundled/tool/lsp_server.py", line 609, in hover
    model_option = ls.dummy_catalog.load("params:model_options")
                   ^^^^^^^^^^^^^^^^
AttributeError: 'KedroLanguageServer' object has no attribute 'dummy_catalog'

For the record, I created the project with kedro new --starter=spaceflights-pandas-viz --name spaceflights-mlflow3

@astrojuanlu Are you able to run kedro run in the same environment? It's likely some error happens when bootstrap_project fails and the component isn't created properly.

kedro new --starter=spaceflights-pandas-viz --name test-kedro-vscode && cd test-kedro-vscode
uv venv && uv pip install -r requirements.txt && uv pip uninstall kedro-telemetry
Set interpreter
Verify that kedro run works
Close IDE (just in case)
Open it again.
Hover with the mouse or try to get definitions, see the errors in the "Output" tab immediately.

This is fixed in 0.0.2 🎉


I need to do some registering of references to the instances of controllers and yada yada yada in the Core and make it so Mods can easily interact with the Core.
They're mods after all.

Getting a database reference going is pretty easy.
Just use Loader::$database
Furthermore I have to do some research and figure out how I could further improve mods.

Controllers can be accessed via Loader::$controller
Just want a way now for Mods to use EmmaTables.
...if they can't already do that.

Mods apparently have access to all classes in scope, I think Mods are loaded before Tables are loaded but I did have access to the session class so I might be able to create an EmmaTable with a mod without having to change anything.
So this might be done soon! :D

I confirm you have the abillity to use EmmaTables in mods.


Decouple Angular front-end from Java back-end in nginx

We should have a reverse proxy in front of both angular and Java (or other) backend
The same nginx that is serving the Angular resources shouldn't do the reverse proxy for the backend, as this couples too much the solution.
There should be a "parent" nginx configuration that does this match

The deployment that we use to run MyThaiStar on an xPaaS mesh looks like this:
Client and server are packaged as two individual Spring Boot applications and are deployed as two individual processes to the nodes of the xPaaS mesh.
There is an ingress router in front of the platform that directs requests to URI's that start with "/restaurant" to the server that hostst the client and requests to URI's that start with "/mythaistar" to the backend.
Of course the "client serving" Spring-Boot app needs to be configured with a corresponding base-URI.
The backend server is identified by the client as "window.location" of the browser.

Let´ s not forget that My-Thai-Star not only serves as a reference application. First of all, it is a Showcase and example as well which should be easy to run and deploy. So any change which would be counter that primary requirement would not have my support

@andihess I don't really get anyway this client packaging in Spring Boot. We've been always using nginx as it is quite light and gives very good results. Also quite convenient for front-end apps and even more for Angular.

It really depends on your assumptions on a deployment / provisioning workflow of a web client.
You can assume an approach where you deploy a bunch of individual JS files to a web-server.

My comment was NOT meant as a recommendation to do it like this, but just an information how it works if you want to host the client on an xPaaS cluster.

Having Spring Boot to serve static resources seems a bit overkill, embedded server is meant to deliver dynamic content and Angular files are all static, therefore something like nginx or Apache seems more appropriate.
Respect of the naming of the backend services I think having "/api" would more clearly show the intent of the server. It will be also more generic to use "api" instead of any particular name so templates and documentation is easier.
I think we should provide a "reference design" for deploying on a PaaS, and I see greater flexibility on deploying separatedly front and backend and a third proxy on front of them.

Hi,
I think the simplest approach for small projects is to have frontend and backend in a single server. However, our best practice is to serve them separately. This is what we already do in MTS and what Andreas suggests for iPaas.
Devon is all about patterns. Hence, IMHO we should also give defaults for the URL path patterns. As the frontend Path is what the end-user sees, it should have the natural name of the app (interface is the system). The backend path may by default be derived from the frontend path with a suffix "-api" (API is the system). Using analague convention for hostnames/IP or ports could reduce my configuration effort (convention over configuration). My learning from gateways/reverse-proxies in front is to put as little (business)logik and config into as possible.
BTW: Move discussion to Yammer?
Regards
Jörg
Von meinem Windows Phone gesendet

Von: Andreas<EMAIL_ADDRESS>Gesendet: 08.02.2018 15:59
An<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS>Betreff: Re: [oasp/my-thai-star] Decouple Angular front-end from Java back-end in nginx (#75)
It really depends on your assumptions on a deployment / provisioning workflow of a web client.
You can assume an approach where you deploy a bunch of individual JS files to a web-server.

My comment was NOT meant as a recommendation to do it like this, but just an information how it works if you want to host the client on an xPaaS cluster.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/oasp/my-thai-star/issues/75#issuecomment-364137576, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AB1YL816qcBc5P98RixqADO3w6i7V-mJks5tSwvGgaJpZM4R-Jf4.

Firma: Capgemini Deutschland GmbH
Aufsichtsratsvorsitzender: Antonio Schnieder • Geschäftsführer: Dr. Michael Schulte (Sprecher) • Jost Förster • Dr. Peter Lempp • Dr. Volkmar Varnhagen
Amtsgericht Berlin-Charlottenburg, HRB 98814
This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.

Added solution proposal in #77 @amarinso @ivanderk

Closing this as the solution was previously approved and merged in the #77 (totally based on this one) Therefore I'm closing this.
Thanks for your support @amarinso !
Cheers,
Cristóbal


Fix window disappearance when preview started

This PR fixes that window disappearance when preview started.
I found this bug in macOS Sierra(10.12.6), but it may not occur in macOS HighSierra🤔🤔🤔
solution
I just store the window instance to AppDelegate member.  This is like a first aid.

Thank you for PR. The fix is reasonable for both platforms.

@kagemiku check the release build on Sierra if you have some time.
https://github.com/banjun/PhotoStudioPlayer/releases/tag/0.6.1

Thank you for merging!
I have confirmed there is no problem on my environment(10.12.6)👏


Test nodes for PID calibration

Write the test nodes  for all the motion  for calibrating pid, also ensure that the sensors do not publish the data directly to the motion library, the data should go through the test nodes and the task handlers.

closes #102


[Improve][Doc] Add compatibility in doc

Purpose of this pull request

Check list

[ ] Code changed are covered with tests, or it does not need tests for reason:
[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/seatunnel/tree/dev/docs

cc @arshadmohammad

Thank @wuchunfu  for the PR.


Locales for submissions

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

Bug fix (#135)

Please check if the PR fulfills these requirements

[ ] E2E Tests for the changes have been added  via Cypress
[ ] Meaningful rspec tests have been added
[ ] Docs have been added / updated
Linter

[ ] rubocop reports equal or less errors and warnings in total
[ ] yarn lint reports equal or less errors and warnings in total
[ ] coffeelint . reports equal or less errors and warnings in total
[ ] erblint . reports equal or less errors and warnings in total

What is the current behavior? (You can also link to an open issue here)

The controllers associated to the following models do not set specific locales: assignment, submission, tutorial, quiz_certificate
So, although the localizations are present in .yml locale files, they are not displayed.

What is the new behavior (if this is a feature change)?

The correct locales are set in the controllers, so they are displayed in the views.

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)

Other information:

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.2 out of 3 committers have signed the CLA.:white_check_mark: fosterfarrell9:white_check_mark: henrixapp:x: hungrywordsYou have signed the CLA already but the status is still pending? Let us recheck it.

We once made the policy that the teacher of a lecture determines the language, and that applies to anything related to the lecture. I still think that is the right policy, as this makes things very uniform. Otherwise you might have things like a sidebar in english, and different cards in the body in different languages. But we could discuss this over on basecamp.

I just noticed the fact, that for now the user setting has virtually no impact, we should probably postpone this discussion.


Compiling with mpif90 (Coupling with GOTM)

Hi,
I am currently working on a new feature to couple GOTM to MITgcm as a new pkg.
My plan is to use pkg/kl10 as a starting point and create an MITgcm version of the the GOTM coupling to PSOM to update mixing coefficients for each point in each tile at each timestep.
By now I have installed and setup the paths for GOTM and my idea is to add the following lines in the build options.
INCLUDES+=" -I$GOTM_INC_DIR"
LIBS+=" -L$GOTM_LIB_DIR"

My first try was to use the way MITgcm compile its .F files and try to run it for a single file that only contain use turbulence (the major module from GOTM).
So I run
cat couple_gotm.F |  cpp -traditional -P -DWORDLENGTH=4 -DNML_TERMINATOR -DALLOW_USE_MPI -DHAVE_SYSTEM -DHAVE_FDATE -DHAVE_ETIME_SBR -DHAVE_CLOC -DHAVE_SETRLSTK -DHAVE_SIGREG -DHAVE_STAT -DHAVE_NETCDF -DHAVE_FLUSH  -I/share/pkg/netcdf-fortran/4.5.3/include -I/share/pkg/openmpi/2.1.3/include -I/home/is96d/local/gotm/include | ../../../tools/set64bitConst.sh  > couple_gotm.f

and
mpif77 -fconvert=big-endian -fimplicit-none -mcmodel=medium -O3 -funroll-loops  -c couple_gotm.f

which returned
couple_gotm.f:1:1:

 use turbulence
 1
Error: Non-numeric character in statement label at (1)
couple_gotm.f:1:1:

 use turbulence
 1
Error: Unclassifiable statement at (1)

After discussing with GOTM community, I could confirm that this is actually because use does not work for FORTRAN77, so I would need to compile it with mpif90 instead.
I would like to know your suggestions on how to do that, either compiling with mpif90 or calling GOTM modules with mpif77.
Btw, I have discussed with some of the developers and none of them have mentioned they are aware of any GOTM implementation on MITgcm. If any of you have heard or know someone who have tried that, I would love to contact them and avoid reinventing the wheel.
Best,

@iuryt Thanks for bringing up this issue. I think that if the source code is "free format" F90 then it needs to have the *.F90 suffix, like, e,g,, few files in pkg/atm_phys/ ; then depending on the compiler, you might need to set "ALWAYS_USE_F90=1" like here:
verification/tutorial_advection_in_gyre/build/genmake_local
There is a better chance that this could work, but I agree that this is not well documented, and needs some improvement.

Hi @jm-c
Thanks for your answer.
I used genmake_local with ALWAYS_USE_F90=1 and it seemed to compile properly with mpif90.
The problem now is that for some reason it couldn't open the module file.
Using the same example I explained before,
couple_gotm.F90 is
      SUBROUTINE GOTM_INIT( myThid )

use turbulence

      IMPLICIT NONE

      RETURN
      END

I am running
cat couple_gotm.F90 |  cpp -traditional -P -DWORDLENGTH=4 -DNML_TERMINATOR -DALLOW_USE_MPI -DHAVE_SYSTEM -DHAVE_FDATE -DHAVE_ETIME_SBR -DHAVE_CLOC -DHAVE_SETRLSTK -DHAVE_SIGREG -DHAVE_STAT -DHAVE_NETCDF -DHAVE_FLUSH  -I/share/pkg/netcdf-fortran/4.5.3/include -I/share/pkg/openmpi/2.1.3/include -I/home/is96d/local/gotm/include | ../../../tools/set64bitConst.sh  > couple_gotm.f90

then
mpif90 -fconvert=big-endian -fimplicit-none -mcmodel=medium -O3 -funroll-loops  -c couple_gotm.f90

which returns
couple_gotm.f90:2:4:

 use turbulence
    1
Fatal Error: Can't open module file ‘turbulence.mod’ for reading at (1): No such file or directory
compilation terminated.

Could you help me with that?
I am passing -I/home/is96d/local/gotm/include, which has the following files
field_manager.mod     mtridiagonal.mod           output_operators_interp.mod        time.mod
flexout_version.mod   netcdf_output.mod          output_operators_library.mod       turbulence.mod
gotm_compilation.mod  output_manager_core.mod    output_operators_slice.mod         util.mod
gotm_version.mod      output_manager.mod         output_operators_time_average.mod
memory_output.mod     output_operators_base.mod  text_output.mod

Have you tried compiling with ifort instead? I had success linking *.mod using the ifort compiler with minimal changes to a standard issued optfile.
I tried reproducing your problem on a MacBook using mpifort and wasn't able to get a problem similar to what you have described here


[test-triage] chip_sw_sleep_pin_wake

Hierarchy of regression failure
Chip Level
Failure Description
UVM_FATAL @ * us: (chip_sw_sleep_pin_wake_vseq.sv:89) [chip_sw_sleep_pin_wake_vseq] wait timeout occurred! has 1 failures:
Test chip_sw_sleep_pin_wake has 1 failures.
0.chip_sw_sleep_pin_wake.1427533016
Line 631, in log /container/opentitan-public/scratch/os_regression/chip_earlgrey_asic-sim-vcs/0.chip_sw_sleep_pin_wake/latest/run.log
UVM_FATAL @ 13668.440144 us: (chip_sw_sleep_pin_wake_vseq.sv:89) [uvm_test_top.env.virtual_sequencer.chip_sw_sleep_pin_wake_vseq] wait timeout occurred!
UVM_INFO @ 13668.440144 us: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER]
--- UVM Report catcher Summary ---
Steps to Reproduce

GitHub Revision: e1671fddf
dvsim invocation command to reproduce the failure, inclusive of build and run seeds:
./util/dvsim/dvsim.py hw/top_earlgrey/dv/chip_sim_cfg.hjson -i chip_sw_sleep_pin_wake --build-seed 600742595 --fixed-seed<PHONE_NUMBER> --waves fsdb

Tests with similar or related failures

[ ] chip_padctrl_attributes

This test and chip_padctrl_attributes have similar symptoms, but different root causes. Fix coming soon.

Fixed in #15988.
The chip_padctrl_attributes was fixed in #15958.

Test is passing in Nov 4 results.


Interceptor optimization

If there are multiple interceptors intercepting the same method, the same number of dynamic proxy classes will be created. However, the dynamic proxy has certain performance loss. I hope that it can be optimized to avoid the creation of multiple dynamic proxy classes.
example：
@Intercepts({
        @Signature(type = Executor.class, method = "update", args = {MappedStatement.class, Object.class})

})
public class MyInterceptor implements Interceptor {
    private static final Logger logger = LoggerFactory.getLogger(MyInterceptor.class);

    private Properties properties;

    @Override
    public void setProperties(Properties properties) {
        this.properties = properties;
    }

    @Override
    public Object intercept(Invocation invocation) throws Throwable {
        logger.info("invoke");
        return invocation.proceed();
    }
}

@Intercepts({
        @Signature(type = Executor.class, method = "update", args = {MappedStatement.class, Object.class})

})
public class MyInterceptor2 implements Interceptor {

}

This will cause two dynamic proxy classes to be created !!!
At present, Mybatis supports four types of interface interception
ParameterHandler, ResultSetHandler, StatementHandler, Executor
Proposal 1: change to responsibility chain mode，developers can provide specific implementation classes of these interfaces to intercept corresponding methods
Proposal 2: Only a proxy class can be used to intercept interface methods，The advantage of this approach is that it does not change the existing interceptor implementation logic

@harawata Can you reply to my issue

Hello @brucelwl ,
I'm sorry, but I am not so familiar with this topic.
Could you post some data showing the 'certain performance loss', please?

@harawata
I did a test. If an interface is proxy only once, the performance is much higher than that of proxy multiple times, and the performance increases in proportion to the number of agents
environment：
windows 10
JDK：JDK 1.8.0_171, Java HotSpot(TM) 64-Bit Server VM, 25.171-b11
CPU: i5
pc memory：16G
Other: all defaults
Benchmarking tools：JMH
Benchmark code
public interface ExecutorHandler {
    int getProxyCount();

    int update(MappedStatement ms, Object parameter) throws SQLException;

    <E> List<E> query(MappedStatement ms, Object parameter);
}

public class ExecutorHandlerImpl implements ExecutorHandler {

    private int count;

    public ExecutorHandlerImpl(int count) {
        this.count = count;
    }

    @Override
    public int getProxyCount() {
        return count;
    }

    @Override
    public int update(MappedStatement ms, Object parameter) throws SQLException {
        return 10 * 20 / 5 * 2 + 1 + 15;
    }

    @Override
    public <E> List<E> query(MappedStatement ms, Object parameter) {
        return null;
    }
}

public class Plugin implements InvocationHandler {

    private final Object target;

    private Plugin(Object target) {
        this.target = target;
    }

    public static Object wrap(Object target) {
        Class<?> type = target.getClass();
        Class<?>[] interfaces = getAllInterfaces(type);
        if (interfaces.length > 0) {
            return Proxy.newProxyInstance(type.getClassLoader(), interfaces, new Plugin(target));
        }
        return target;
    }

    private static Class<?>[] getAllInterfaces(Class<?> type) {
        Set<Class<?>> interfaces = new HashSet<>();
        while (type != null) {
            interfaces.addAll(Arrays.asList(type.getInterfaces()));
            type = type.getSuperclass();
        }
        return interfaces.toArray(new Class<?>[0]);
    }

    @Override
    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
        return method.invoke(target, args);
    }
}

public class InterceptorChain {

    public Object pluginAll(ExecutorHandler target) {
        int proxyCount = target.getProxyCount();

        for (int i = 0; i < proxyCount; i++) {
            target = (ExecutorHandler) Plugin.wrap(target);
        }
        return target;
    }
}

@BenchmarkMode(Mode.AverageTime)
@Warmup(iterations = 1)
@Threads(15)
@State(Scope.Benchmark)
@Measurement(iterations = 2, time = 5, timeUnit = TimeUnit.SECONDS)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public class ProxyBenchmarkTest {
    private static final Logger logger = LoggerFactory.getLogger(ProxyBenchmarkTest.class);

    ExecutorHandler executorHandler;
    ExecutorHandler executorHandler2;

    @Setup
    public void setup() throws Exception {
        InterceptorChain interceptorChain = new InterceptorChain();
        executorHandler = (ExecutorHandler) interceptorChain.pluginAll(new ExecutorHandlerImpl(1));
        executorHandler2 = (ExecutorHandler) interceptorChain.pluginAll(new ExecutorHandlerImpl(15));
    }

    @Benchmark
    public void jdkProxyN(Blackhole blackhole) throws Exception {
        MappedStatement mappedStatement = new MappedStatement(
                "select * from user info", 5,500,"c://aaa.mapper");

        List<Object> query = executorHandler2.query(mappedStatement, 45);
        blackhole.consume(query);
    }

    @Benchmark
    public void jdkProxy1(Blackhole blackhole) throws Exception {
        MappedStatement mappedStatement = new MappedStatement(
                "select * from user info", 5,500,"c://aaa.mapper");

        List<Object> query = executorHandler.query(mappedStatement, 45);
        blackhole.consume(query);
    }

    public static void main(String[] args) throws Exception {
        Options options = new OptionsBuilder().include(ProxyBenchmarkTest.class.getName())
                //.output("benchmark/jedis-Throughput.log")
                .forks(0)
                .build();
        new Runner(options).run();

    }
}

Proxy 1 time vs Proxy 3 times

Proxy 1 time vs Proxy 5 times

Proxy 1 time vs Proxy 8 times

@harawata
see PR https://github.com/mybatis/mybatis-3/pull/2001/files please
This PR has two main purposes:

The first goal is performance improvement
The second goal is to make the generated proxy class structure clearer

Thank you, @brucelwl .
I will look into it, but it may take some time as I don't have much spare time lately.

@harawata
Another more optimized way is to use the decorator pattern to form an interceptor chain, so that there is no need to use a dynamic proxy to implement the interceptor, If you agree, I can submit a pr

@brucelwl ,
Just curious, how many plugins do you use in your project?
I don't use plugins very often and have never had any performance issue myself.
Anyway, I need some time to understand the current design before answering your question.
It would be easier for us to understand your proposals if you submit the change as a PR indeed, but please do understand there is no guarantee that your PRs will be merged.

@harawata The performance problem is only relative. I just want to have an optimized solution

@harawata ありがとう！


Can only see mp3 on OSX.

99% of my files are WAV and AIF. I can not see them in Musikcube after adding a directory. I can't find documentation to let me know I I have done something wrong.

I can see all my FLAC files though.

There's currently no WAV or AIF decoder -- mostly because these audio formats don't have metadata, so they won't be imported cleanly into the library.
That said, at some point it would be nice to have a working decoder for these formats.

Thank you for your reply!
I use AIFF for all of my audio files because it does allow for metadata,
ID3v2 unless I completely misunderstand how images and info are attached to
my .af fles.
https://en.wikipedia.org/wiki/Audio_Interchange_File_Format
Metadata
AIFF files can store metadata https://en.wikipedia.org/wiki/Metadata in
Name, Author, Comment, Annotation, and Copyright chunks. An ID3v2 tag
https://en.wikipedia.org/wiki/ID3v2_tag chunk can also be embedded in
AIFF files, as well as an Application Chunk with Extensible Metadata
Platform https://en.wikipedia.org/wiki/Extensible_Metadata_Platform (XMP)
data in it.[7]
https://en.wikipedia.org/wiki/Audio_Interchange_File_Format#cite_note-7
I use Kid3 to edit my AIFF files. The tags say ID3v2.3.0.
I hope this information can lead to having AIFF support musikcube. I will
never again agree to the iTunes EULA.
Best,
Benjamin
Benjamin Connelly
Mobile:<PHONE_NUMBER>
Email<EMAIL_ADDRESS>Resume: https://benjamin-connelly.github.io/
LInkedin: https://www.linkedin.com/in/benjaminconnelly
On Sat, Sep 16, 2017 at 12:27 AM, casey langen<EMAIL_ADDRESS>wrote:

There's currently no WAV or AIF decoder -- mostly because these audio
formats don't have metadata, so they won't be imported cleanly into the
library.
That said, at some point it would be nice to have a working decoder for
these formats.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/clangen/musikcube/issues/160#issuecomment-329947037,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ANHmxSXFFh4_Hcb79UFNB-ZdYiPKoLIMks5si1wygaJpZM4PSGNX
.

Likely already supported by the new(ish) ffmpeg plugin. File extensions probably just need to be whitelisted.

WAV and AIF support has been added and will be part of the next app release.


feat: To Support https://nest.land/

I would suggest to support https://nest.land packages, and maybe other repositories, and the default is deno.land

Good idea! I think we can have a syntax similar to:
dpx online --allow-net # deno.land by default

dpx --registry https://nest.land online --allow-net # nest.land

And the registry flag can be arbitrary to any URL. What do you think?

Hi @AnandChowdhary ,
Yes I think it would be great.  at first i tried to push a PR with hardcoded repos (familiar repos), for example:
dpx --registry nest online --args

or may be
dpx rest/online --args

To simplify the UX, so I think if we can merge the 2 solutions it would be great.
And in the help you can enumerate the supported repos and obviously the user can use --registry https://whatever.x for generic solution.

Sounds good, I think the combined approach works best with certain hardcoded registries.

Closing this because of the great work in #6!

Feel free to put denorg modules (such as dpx) on nest.land too! Thanks so much for supporting our registry in dpx 😄


Dynamic version based on git commit

Installing from github will not work if the current version is already installed from PyPI as we do not change the version number before a release. This can probably be fixed somehow.

PyMC uses versioneer. The installation instructions are in the versioneer link


How did you make this GIF ? the zoom effect

https://github.com/ceoshikhar/better-github#demo

Added the zooming effect using Sony Vegas Pro 15 and then converted the rendered video to GIF.

Closing the issue hoping your question was answered.


Updates to Migration Tools

Comparing GPC and Azure Migration Tools.
Re-formatted table headers to be consistent with rest of document.
Added relevant migration tools, links and descriptions.

@fbinotto : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@fbinotto : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Based on @cjnova comments, I'm closing this PR and will create a new one.


withAuthenticationRequired doesn't redirect to previous route after successful login

According to this component's documentation:
"When you wrap your components in this higher-order component and an anonymous user visits your component, they will be redirected to the login page; after logging in, they will return to the page from which they were redirected."
When trying to access a protected route with no authentication, i'm being redirected to the log-in page as expected.
However, after successful log-in, the user is not redirected to the previous route, but to the homepage (just as a normal log-in).
Using signinRedirectArgs: { redirect_uri: window.location.href } partially resolved the issue, user is redirected back to the route he came from, but this adds some unwanted side effects (query params are added to the url).
Current behaviour:
navigate to domain.com/settings -> Not authenticated -> redirect to log-in -> credentials -> redirect to homepage
Expected behaviour:
navigate to domain.com/settings -> Not authenticated -> redirect to log-in -> credentials -> redirect to domain.com/settings
Shouldn't redirect to previous route work out of the box for withAuthenticationRequired?

Can you be more specific, @pamapa ?
const onSigninCallback = (_user: User | void): void => {
    window.history.replaceState(
        {},
        document.title,
        window.location.pathname
    )
}

copied from your comments in AuthProvider.tsx .
createRoot(document.getElementById("root")!).render(
    <AuthProvider {...oidcConfig} onSigninCallback={onSigninCallback}>
        <RelayEnvironmentProvider environment={RelayEnvironment}>
            <React.Suspense>
                <React.StrictMode>
                    <RouterProvider router={router}/>
                </React.StrictMode>
            </React.Suspense>
        </RelayEnvironmentProvider>
    </AuthProvider>
);

import {withAuthenticationRequired} from 'react-oidc-context';

export const AuthGuard = ({component})  => {
    const Component = withAuthenticationRequired(component);
    return <Component/>;
}

            {path: 'create-ad', element: <AuthGuard component={PostCreate}></AuthGuard>},

I think this is a pretty common issue, shouldn't it work like that out of the box?
Ok, so I modified the AuthGuard
import {withAuthenticationRequired} from 'react-oidc-context';

export const AuthGuard = ({component})  => {
    const Component = withAuthenticationRequired(component, {signinRedirectArgs: { redirect_uri: window.location.href }});
    return <Component/>;
}

But I had to explicitly add the http://localhost:5173/create-ad redirect_uri in the IDP (Zitadel in this  case).
Well I guess that's solved.
I'm not sure how to use ´withAuthenticationRequired otherwise, fairly new to React.

In withAuthenticationRequired you can specify onBeforeSignin.  That is the point before the authentication process, thus you can store (e.g. to sessionStorage to current location like const prevPath = window.location.pathname + window.location.search + window.location.hash;...) here the users current location
https://github.com/authts/react-oidc-context/blob/4d3afe2fcda4af2a2a7434670e46026b4d5805ba/src/withAuthenticationRequired.tsx#L16-L19
After the authentication process is finished onSigninCallback is called and there you can restore the previous location (e.g. by looking into sessionStorage and apply like window.location.replace(prevPath);)...

import {withAuthenticationRequired} from 'react-oidc-context';

export const AuthGuard = ({component})  => {
    const Component = withAuthenticationRequired(
        component, {
            onBeforeSignin: () => {
                sessionStorage.setItem('pp', window.location.pathname + window.location.search + window.location.hash)
            }
        }
    );
    return <Component/>;
}

const onSigninCallback = (_user: User | void): void => {
    const pp = sessionStorage.getItem('pp')
    if (pp) {
        sessionStorage.removeItem('pp')
        window.location.replace(pp)
    } else {
        window.history.replaceState(
            {},
            document.title,
            window.location.pathname
        )
    }
}


voice signal when gw is minimized

i saw you can active the option to let the gw icon flash when you reviece a message when minimized as far as i saw there is no option to get a vioce signal when you are not tabbed in

Desktop notifications added in 2022


Fast admission annotation

What type of PR is this?
/kind feature

What this PR does / why we need it:
The PodGroup integration waits until all pods are created, but StatefulSet creates second pod only after all previous pods are running, so there was a deadlock. The solution to this is to introduce the kueue.x-k8s.io/fast-pod-group-admission annotation, when true, then the Pod group does not need to wait for all pods with ungating. Part of https://github.com/kubernetes-sigs/kueue/issues/2717
Which issue(s) this PR fixes:

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

NONE

/test pull-kueue-test-integration-main

Yeah, the PodGroup feature seems like a better fit to base the StatefulSet integration. If we base the integration on individual pods, then in case of preemption, the StatefulSet could lose Pod-0 which might be problematic, because StatefulSets assume continuity of indexes. For Deployments it is fair to use individual pods, because we don't care which pod is preempted. WDYT?
cc @mwielgus who also was thinking about it

@vladikkuzn please add to the PR description "Part of #2717". The issue description contains already information that we aim to build StatefulSet support on top of PodGroup.

Yeah, the PodGroup feature seems like a better fit to base the StatefulSet integration. If we base the integration on individual pods, then in case of preemption, the StatefulSet could lose Pod-0 which might be problematic, because StatefulSets assume continuity of indexes. For Deployments it is fair to use individual pods, because we don't care which pod is preempted. WDYT?
cc @mwielgus who also was thinking about it

@mimowo The use case sounds reasonable, but shouldn't we implement the StatefulSet integration as the dedicated Job?
Actually, we implemented some of dedicated Jobs like batch/job, RayJob, and ... so that we can support such a complex cases.

Yes, we are considering it, but it seems to be significantly more work. The idea is to provide the MVP functionality so that Kueue can be used for Inference in 0.9. I consider this as "experimental" support to gain user feedback.
I would go for a dedicated integration when we hit some use cases which cannot be achieved this way. Maybe it is needed for efficient scaling, but I'm not sure. Maybe it is achievable by scaling support for PodGroups also.

Yes, we are considering it, but it seems to be significantly more work. The idea is to provide the MVP functionality so that Kueue can be used for Inference in 0.9. I consider this as "experimental" support to gain user feedback.
I would go for a dedicated integration when we hit some use cases which cannot be achieved this way. Maybe it is needed for efficient scaling, but I'm not sure. Maybe it is achievable by scaling support for PodGroups also.

That makes sense. In that case, we may would like to avoid using "StatefulSet" as an integration name and use alternative name something like "StatefulSetWithPodGroup" since we are planning to implement the dedicated integration for the StetefulSet and we can assume the "StatefulSetWithPodGroup" will be deprecated in the future release.
Anyway, this PR can be moved forward.

@vladikkuzn Could you open a PR to update the PodGroup documentation?
https://kueue.sigs.k8s.io/docs/tasks/run/plain_pods/#running-a-group-of-pods-to-be-admitted-together

Oh, sorry. I accidentally closed this PR.

That makes sense. In that case, we may would like to avoid using "StatefulSet" as an integration name and use
alternative name something like "StatefulSetWithPodGroup" since we are planning to implement the dedicated ?
integration for the StetefulSet and we can assume the "StatefulSetWithPodGroup" will be deprecated in the future release.

TBH I would prefer to use "StatefulSet" and handle the underlying mechanism as an implementation detail. Users creating StatefulSets don't need to be aware of that. The "fast-admission" annotation will be added by a webhook.
One particularly challenging aspect is that StatefulSet as such does not support "suspend" operation, similarly as Deployment. Adding such fields to the upstream k8s will be challenging, because the usage is rather niche for now. So, we will likely stay with PodGroups as the underlying mechanism for a while.

That makes sense. In that case, we may would like to avoid using "StatefulSet" as an integration name and use
alternative name something like "StatefulSetWithPodGroup" since we are planning to implement the dedicated ?
integration for the StetefulSet and we can assume the "StatefulSetWithPodGroup" will be deprecated in the future release.

TBH I would prefer to use "StatefulSet" and handle the underlying mechanism as an implementation detail. Users creating StatefulSets don't need to be aware of that. The "fast-admission" annotation will be added by a webhook.
One particularly challenging aspect is that StatefulSet as such does not support "suspend" operation, similarly as Deployment. Adding such fields to the upstream k8s will be challenging, because the usage is rather niche for now. So, we will likely stay with PodGroups as the underlying integration mechanism for a while.

I discussed this with @mimowo offline. Throughout valuable discussions, we found that the framework integration migration potentially could happen in any integration, not only for StatefulSet. So, we decided to use the "StatefulSet" as a integration name as a today's StatefulSet integration. Then, we will seek out how we can support migration to new integration.

It seems that this is a user facing new feature since this can be used by batch users.
/release-note-edit
Introduce the "kueue.x-k8s.io/retriable-in-group" annotation to Plain Pod integration.

If the PlainPod has the annotation and is part of the Plain PodGroup, the Kueue will admit the Plain Pod regardless of whether all PodGroup Pods are created.

Oops, sorry. You're right.
/release-note-edit
Introduce the "kueue.x-k8s.io/pod-group-fast-admission" annotation to Plain Pod integration.

If the PlainPod has the annotation and is part of the Plain PodGroup, the Kueue will admit the Plain Pod regardless of whether all PodGroup Pods are created.


Error catkin_make

I try to compile gazebo-pkgs after installing all the other packages for ros kinetic in Ubuntu 16.04 but i receive these errors. What can i do?
from /home/username/catkin_ws/src/gazebo-pkgs/gazebo_grasp_plugin/src/GazeboGraspGripper.cpp:2:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support
^
In file included from /usr/include/c++/5/random:35:0,
from /usr/include/ignition/math2/ignition/math/Rand.hh:20,
from /usr/include/ignition/math2/ignition/math.hh:18,
from /usr/include/sdformat-4.0/sdf/Param.hh:34,
from /usr/include/sdformat-4.0/sdf/Element.hh:24,
from /usr/include/sdformat-4.0/sdf/sdf.hh:5,
from /usr/include/gazebo-7/gazebo/common/Battery.hh:25,
from /usr/include/gazebo-7/gazebo/common/common.hh:8,
from /usr/include/gazebo-7/gazebo/gazebo_core.hh:19,
from /usr/include/gazebo-7/gazebo/gazebo.hh:20,
from /home/username/catkin_ws/src/gazebo-pkgs/gazebo_grasp_plugin/src/GazeboGraspFix.cpp:2:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support
^
In file included from /usr/include/gazebo-7/gazebo/gazebo_core.hh:21:0,
from /usr/include/gazebo-7/gazebo/gazebo.hh:20,
from /home/username/catkin_ws/src/gazebo-pkgs/gazebo_grasp_plugin/src/GazeboGraspGripper.cpp:2:
/usr/include/gazebo-7/gazebo/msgs/msgs.hh:24:37: fatal error: ignition/math/Inertial.hh: No such file or directory
compilation terminated.
In file included from /usr/include/gazebo-7/gazebo/gazebo_core.hh:21:0,
from /usr/include/gazebo-7/gazebo/gazebo.hh:20,
from /home/username/catkin_ws/src/gazebo-pkgs/gazebo_grasp_plugin/src/GazeboGraspFix.cpp:2:
/usr/include/gazebo-7/gazebo/msgs/msgs.hh:24:37: fatal error: ignition/math/Inertial.hh: No such file or directory
compilation terminated.
gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/build.make:86: recipe for target 'gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/src/GazeboGraspGripper.cpp.o' failed
make[2]: *** [gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/src/GazeboGraspGripper.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/build.make:62: recipe for target 'gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/src/GazeboGraspFix.cpp.o' failed
make[2]: *** [gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/src/GazeboGraspFix.cpp.o] Error 1
CMakeFiles/Makefile2:8155: recipe for target 'gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/all' failed
make[1]: *** [gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Scanning dependencies of target gazebo_test_tools_generate_messages_cpp
[ 87%] Generating C++ code from gazebo_test_tools/RecognizeGazeboObject.srv
[ 87%] Built target gazebo_test_tools_generate_messages_cpp
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j2 -l2" failed
What can i do?

Hi,
the packages have only been tested with ROS Indigo and Jade, I was going to adjust them for Kinetic but I doubt I'll get around to it before Christmas, as I'm crazy busy at the moment.
The above compiler error means you need to add -std=c++11 to your compiler flags, you can do this with
add_definitions(-std=c++11)
in the CMakeLists.txt.
There may be other errors following in Kinetic though, as I said,  I haven't gotten around to test it yet...
Jennifer

Thank you for your answer, I fixed it.
Now i have a problem with the joint_control_pkgs that returns me this error. I think that there's a problem related with some libraries of Gazebo 7.
[ 86%] Building CXX object joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_control.dir/src/JointController.cpp.o
[ 86%] Building CXX object joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_state_publisher.dir/src/GazeboJointStatePublisher.cpp.o
In file included from /usr/include/gazebo-7/gazebo/transport/TopicManager.hh:30:0,
from /usr/include/gazebo-7/gazebo/transport/Node.hh:30,
from /home/username/catkin_ws/src/joint-control-pkgs/gazebo_joint_control/include/gazebo_joint_control/JointController.h:31,
from /home/username/catkin_ws/src/joint-control-pkgs/gazebo_joint_control/src/JointController.cpp:23:
/usr/include/gazebo-7/gazebo/msgs/msgs.hh:24:37: fatal error: ignition/math/Inertial.hh: No such file or directory
compilation terminated.
joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_control.dir/build.make:62: recipe for target 'joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_control.dir/src/JointController.cpp.o' failed
make[2]: *** [joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_control.dir/src/JointController.cpp.o] Error 1
CMakeFiles/Makefile2:8101: recipe for target 'joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_control.dir/all' failed
make[1]: *** [joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_control.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
In file included from /usr/include/gazebo-7/gazebo/physics/Entity.hh:30:0,
from /usr/include/gazebo-7/gazebo/physics/Model.hh:34,
from /usr/include/gazebo-7/gazebo/physics/Actor.hh:24,
from /usr/include/gazebo-7/gazebo/physics/physics.hh:2,
from /home/username/catkin_ws/src/joint-control-pkgs/gazebo_joint_control/include/gazebo_joint_control/GazeboJointStatePublisher.h:27,
from /home/username/catkin_ws/src/joint-control-pkgs/gazebo_joint_control/src/GazeboJointStatePublisher.cpp:22:
/usr/include/gazebo-7/gazebo/msgs/msgs.hh:24:37: fatal error: ignition/math/Inertial.hh: No such file or directory
compilation terminated.
joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_state_publisher.dir/build.make:62: recipe for target 'joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_state_publisher.dir/src/GazeboJointStatePublisher.cpp.o' failed
make[2]: *** [joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_state_publisher.dir/src/GazeboJointStatePublisher.cpp.o] Error 1
CMakeFiles/Makefile2:8564: recipe for target 'joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_state_publisher.dir/all' failed
make[1]: *** [joint-control-pkgs/gazebo_joint_control/CMakeFiles/gazebo_joint_state_publisher.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j2 -l2" failed

When you do a
locate Inertial.hh
what does it say. I guess you didn't compile Gazebo 7 from source?
If you haven't, try to install the ignition math development packages, though you should already have them... see what locate says.
Jenny

Hi,
I had the same error as nikki91 and fixed it with add_definitions(-std=c++11). However now I am getting the following error:
[ 91%] Built target fake_object_recognizer_node
In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/kinetic/include/ros/publisher.h:35,
from /opt/ros/kinetic/include/ros/node_handle.h:32,
from /opt/ros/kinetic/include/ros/ros.h:45,
from /home/username/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/username/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/bind.hpp: In instantiation of ‘void boost::_bi::list2<A1, A2>::operator()(boost::_bi::type, F&, A&, int) [with F = boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>; A = boost::bi::list1<const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>; A1 = boost::_bi::value<joint_trajectory_execution::TrajectoryActionServer*>; A2 = boost::arg<1>]’:
/usr/include/boost/bind/bind.hpp:905:50:   required from ‘boost::_bi::bind_t<R, F, L>::result_type boost::bi::bind_t<R, F, L>::operator()(A1&&) [with A1 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >; R = void; F = boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>; L = boost::_bi::list2<boost::_bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> >; boost::_bi::bind_t<R, F, L>::result_type = void]’
/usr/include/boost/function/function_template.hpp:159:11:   required from ‘static void boost::detail::function::void_function_obj_invoker1<FunctionObj, R, T0>::invoke(boost::detail::function::function_buffer&, T0) [with FunctionObj = boost::_bi::bind_t<void, boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>, boost::_bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> > >; R = void; T0 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >]’
/usr/include/boost/function/function_template.hpp:940:38:   required from ‘void boost::function1<R, T1>::assign_to(Functor) [with Functor = boost::_bi::bind_t<void, boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>, boost::_bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> > >; R = void; T0 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >]’
/usr/include/boost/function/function_template.hpp:728:7:   required from ‘boost::function1<R, T1>::function1(Functor, typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral::value>::value, int>::type) [with Functor = boost::_bi::bind_t<void, boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>, boost::bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> > >; R = void; T0 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >; typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral::value>::value, int>::type = int]’
/usr/include/boost/function/function_template.hpp:1077:16:   required from ‘boost::function<R(T0)>::function(Functor, typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral::value>::value, int>::type) [with Functor = boost::bi::bind_t<void, boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>, boost::bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> > >; R = void; T0 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >; typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral::value>::value, int>::type = int]’
/home/username/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:270:46:   required from here
/usr/include/boost/bind/bind.hpp:313:35: error: no match for call to ‘(boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>) (joint_trajectory_execution::TrajectoryActionServer*&, const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&)’
unwrapper::unwrap(f, 0)(a[base_type::a1], a[base_type::a2]);
I am using ROS kinetic and Gazebo 7. What can I do?
Thanks!

Hi,
did you pull and compile the version of joint-control-pkgs in the last 2 weeks, or do you have an older version?
Cheers
Jenny

Hi,
Thanks for the reply! I removed the packages and cloned them again and it compiled now.
Thanks!

Great :)


compilation errors in CeylonModelManager

(Only) when compiling in IntelliJ, the typechecker complains that:
could not determine type of function or value reference: 'localAnalyzer'
could not determine type of method or attribute reference: 'localAnalyzer' of 'CeylonFile': Error while loading the org.intellij.plugins.ceylon.ide.ceylonCode/current module:
 Error while resolving type of getter 'localAnalyzer' for org.intellij.plugins.ceylon.ide.ceylonCode.psi::CeylonFile:
 Failed to find declaration for CeylonLocalAnalyzer

These errors don't occur when actually Making the project.

What happened? This error is gone, all of a sudden! Did you fix it, @davidfestal ?

@bjansen migrated CeylonFile from Java to Ceylon, which  fixed the error naturally. But the root cause (limited bi-directional interop) is not fixed.

Alright, so we should close this and open a new issue for the bidi interop problem.


Azure.Identity logging level should control the underlying log level of MSAL

Please validate whether this is an issue for this language.
See https://github.com/Azure/azure-sdk-for-net/issues/44613 for .NET details

The log level is a global setting in Python.
Marked as done.


Why is it necessary to use pages_ instead of normal pages?

Couldn't we just use the folder pages as the default language, then copy it into localized subfolders? We won't have to use a special "pages_" folder in that case. Also, we won't have duplicate content (pages/index.js === pages/en/index.js) for the default language.

BTW; using a custom server you can work on normal pages without any transformation


Prepare release for 0.6.0

Coverage increased (+1.01%) to 96.31% when pulling 6274a9bc3f0b5eaeec2923787d49789d13e3ecd7 on prepare-release-for-0.6.0 into 90e3d07486fd7c42304b35b17c7dd9ed80cd0679 on master.


Deleting points data is broken with an index error

🐛 Bug
Using git bisect I tracked the problem to #2204 (sorry @kevinyamauchi 😬), which broke resetting of a Points layer data, which now raises an IndexError (see below).
To Reproduce
import numpy as np
import napari

viewer = napari.Viewer()
points = np.random.random((4, 2)) * 4

pts_layer = viewer.add_points(points)
pts_layer.data = np.zeros([0, 2])

raises:
Traceback (most recent call last):
  File "test-points-delete.py", line 8, in <module>
    pts_layer.data = np.zeros([0, 2])
  File "/Users/jni/projects/napari/napari/layers/points/points.py", line 422, in data
    self._edge._remove(
  File "/Users/jni/projects/napari/napari/layers/utils/color_manager.py", line 330, in _remove
    self.colors = np.delete(self.colors, selected_indices, axis=0)
  File "/Users/jni/projects/napari/napari/utils/events/evented_model.py", line 154, in __setattr__
    getattr(self.events, name)(value=after)  # emit event
  File "/Users/jni/projects/napari/napari/utils/events/event.py", line 550, in __call__
    self._invoke_callback(cb, event)
  File "/Users/jni/projects/napari/napari/utils/events/event.py", line 567, in _invoke_callback
    _handle_exception(
  File "/Users/jni/projects/napari/napari/utils/events/event.py", line 565, in _invoke_callback
    cb(event)
  File "/Users/jni/projects/napari/napari/_vispy/vispy_points_layer.py", line 41, in _on_data_change
    edge_color = self.layer._view_edge_color
  File "/Users/jni/projects/napari/napari/layers/points/points.py", line 1187, in _view_edge_color
    return self.edge_color[self._indices_view]
IndexError: index 0 is out of bounds for axis 0 with size 0

Interestingly, the below doesn't have any issues:
import numpy as np
import napari

points = np.random.random((4, 2)) * 4

pts_layer = napari.layers.Points(points)
pts_layer.data = np.zeros([0, 2])

Which suggests that it's the event callback system that's broken, not the points layer itself. That would explain why this got past testing.
Expected behavior
The color elements should be removed together with the data.
Environment
napari: 0.4.6.dev45+geaa54747.d20210303
Platform: macOS-10.15.7-x86_64-i386-64bit
System: MacOS 10.15.7
Python: 3.8.2 (default, Mar 26 2020, 10:43:30)  [Clang 4.0.1 (tags/RELEASE_401/final)]
Qt: 5.14.2
PyQt5: 5.14.2
NumPy: 1.19.2
SciPy: 1.5.1
Dask: 2021.01.1
VisPy: 0.6.5.dev320+gc275797b

OpenGL:
  - GL version:  2.1 ATI-3.10.19
  - MAX_TEXTURE_SIZE: 16384

Screens:
  - screen 1: resolution 2048x1152, scale 2.0
  - screen 2: resolution 1536x960, scale 2.0

Plugins:
  - affinder: 0.1.dev16+g189efd8
  - animation: 0.1.dev78+g5716ec8
  - btrack-reader: 0.1.0
  - console: 0.0.3
  - napari-sentinel-zip: 0.2.2
  - ome_zarr: 0.0.18.dev0
  - s3zarr: 0.0.2
  - svg: 0.1.4
  - tracks: 0.0.2

I'll also take this opportunity to thank @tlambert03 for all his work cleaning up our Qt launching which makes testing these things way cleaner!


Gatekeeper policies stuck in "In Progress"

Setup

Rancher version: 2.7.8
Rancher UI Extensions: n/a
Browser type & version: Any

Describe the bug
The constraintTemplatePodStatuses are stuck in a "In Progress" state with the message "ConstraintTemplatePodStatus generation is X, but latest observed generation is Y", but the observed generation has to match the respective ConstraintTemplate and not the ConstraintTemplatePodStatus generation. Reference: https://github.com/open-policy-agent/gatekeeper/issues/3006#issuecomment-1734715127
To Reproduce
Install the OPA gatekeeper chart through Apps & Marketplace or do the following:

Create a new k8s cluster. I used k3s.
Install gatekeeper using the helm chart provided here https://github.com/open-policy-agent/gatekeeper/tree/v3.13.0/charts/gatekeeper
Create the policy provided here https://github.com/open-policy-agent/gatekeeper-library/blob/master/library/general/allowedrepos/template.yaml
Check the ConstraintTemplatePodStatus CRDS

Result
UI shows "In Progress" status
Expected Result
The status should be "Active"
Screenshots

Additional context

The UI shows the state provided by the resource. We need to confirm that this is true (probably metadata.state transitioning: true & message: "..."), if so this is probably an issue for the gatekeeper product.

@richard-cox I checked the CRD and there's no mention of state there

The resource in the screenshot are from /k8s/clusters/<cluster>/v1/status.gatekeeper.sh.constrainttemplatepodstatuses and locally i see the results containing

The metadata.state is where the UI get's the state info we show in the list.
I also did a describe and see the same output as you, no state.
If i'm honest i'm not sure where metadata.state comes from, either kube or Rancher. Either way, this isn't something UI related so transferring to rancher/rancher