docs-start failed to run.

Enviroment:

node v6.0.0
npm v3.9.5

Steps to reproduce the bug:

clone the master
npm install
npm run docs-start

Error output:
><EMAIL_ADDRESS>predocs-start /Users/Kai/Work/SideProjects/phenomic
> npm -s run docs

/Users/Kai/Work/SideProjects/phenomic/docs/node_modules/phenomic/lib/index.js:8
export { default as PageContainer } from "./components/PageContainer"
^^^^^^
SyntaxError: Unexpected token export
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:511:25)
    at Module._extensions..js (module.js:550:10)
    at Object.require.extensions.(anonymous function) [as .js] (/Users/Kai/Work/SideProjects/phenomic/node_modules/babel-register/lib/node.js:154:7)
    at Module.load (module.js:456:32)
    at tryModuleLoad (module.js:415:12)
    at Function.Module._load (module.js:407:3)
    at Module.require (module.js:466:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/Kai/Work/SideProjects/phenomic/docs/webpack.config.babel.js:5:1)
    at Module._compile (module.js:541:32)
    at loader (/Users/Kai/Work/SideProjects/phenomic/node_modules/babel-register/lib/node.js:146:5)
    at Object.require.extensions.(anonymous function) [as .js] (/Users/Kai/Work/SideProjects/phenomic/node_modules/babel-register/lib/node.js:156:7)
    at Module.load (module.js:456:32)
    at tryModuleLoad (module.js:415:12)
    at Function.Module._load (module.js:407:3)

/Users/Kai/Work/SideProjects/phenomic/scripts/utils/test-folder.js:118
              throw _context.t0;
              ^
CommandError
    at ChildProcess.spawnOnClose (/Users/Kai/Work/SideProjects/phenomic/node_modules/async-exec-cmd/index.js:149:18)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:191:7)
    at maybeClose (internal/child_process.js:850:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:215:5)

Is this line meant to create symlink for the node_modules? Why we linked from src instead of lib?

This is to be able to hot load update from src when working on docs :D
I may have introduced a regression recently, will take a look asap.

I can't re-produce this. Which OS are you running ?

Mac OS X El Capitan 10.11.6
I'm gonna try to do some test again to figure out if this is only my mistake again 😰 .

This line is supposed to handle the transformation... https://github.com/MoOx/phenomic/blob/30aaca23b971995432f6ed579cc564525f2ac637/docs/webpack.config.babel.js#L48
Not sure why this does not work for you...

Just cleaned the npm cache and it suddenly works... I am just going to close it as I cannot re-produce the bug anymore and it is most likely not a bug of this project at all.


Context menu option to force-pull lodestone data to check for name/homeworld changes?

In the player list context menu, you can target/focus/examine a player if in range, open their lodestone page in your browser, change their category, and remove their entry. Can an option be added to force the plugin to retrieve their data from the lodestone to check for name or homeworld changes as well? Maybe even a way to bulk-update all players in a category, at least for non-default categories?

Moved to content id so no longer applies so closing. The current lodestone feature is just a live open.


How do completions work ?

I see the following:

ok I do the shortcut K - if I type S with some text, model generates jibberish, how does this work ? can it be documented ?

In an application, highlight some text and then enter the keyboard shortcut to reveal the completions window.

In an application, highlight some text and then enter the keyboard shortcut to reveal the completions window.

This works!


Fix type assumptions in mul(A,x) in lecture noes

The definition of mul(A,x) as given in the lecture notes fails if the input types are incompatible, in particular if x is a vector of integers and A is a matrix of floats. That's because the output vector is generated based on the vector's type rather than a type promotion.
This has led to some questions by students trying to solve problem 1.1 in the week 3 sheet (the difference between BLAS and mul(A,x)).
To alleviate this issue, here's a fix to the definition of mul(A,x) in the lecture notes to promote types instead to avoid this.
The fix is made in both the markdown and Jupyter notebook.

This should be ready to merge. @dlfivefifty


bug: mapping disappears when keys only map string and map is a lua function that loads the plugin

Did you check docs and existing issues?

[X] I have read all the lazy.nvim docs
[X] I have searched the existing issues of lazy.nvim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
v0.10.0-dev-1384+g594ff34581
Operating system/version
Arch linux
Describe the bug
When I set the keys property to be just the mapping string, e.g. keys = { "<leader>t" }, and then set the keymap elsewhere, but it is a function that uses the module, the keymap is unmapped.
Steps To Reproduce

Set the keys to the key sequence you want, but no behaviour
Configure a keymap that uses this key and also loads the nvim plugin
Press the keymap
Press it again to see nothing happening, or check :map to see it is no longer there

Expected Behavior
Expect lazy not to remove my keymap.
I understand that using the keys property is uneccesary as the keymap will lazily load the plugin, but as these are (at least in my config) configured separately, it's not that easy to detect that this happens if I change the keymap at a later point.
Repro
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

require("lazy").setup({
  {
    "nvim-telescope/telescope.nvim",
    keys = { "<leader>t" },
    dependencies = { "nvim-lua/plenary.nvim" },
  },
})

vim.keymap.set("n", "<leader>t", function()
  require("telescope.builtin").buffers()
end, { noremap = true })

that's completely expected behavior
if you want to set the mappings like this you can just get rid of the keys and set lazy = false
when you set keys only to the chars lazy creates a mapping that loads the plugin, deletes this mapping and then feeds the keys
it expects mappings to created when the plugin is loaded -> in the config function

Okay, I must have misunderstood what the keys config does. I assumes it specified that lazy should load the plugin when I press that key sequence (because I have a keymap on it). I don't particularly want my keymap config with my plugin definitions, so I'll avoid using keys.
 What I want to achieve is that the plugin is loaded the first time I need it, which for many plugins is when I press the key combination that uses it.

I meant lazy=true
that will just load the plugin when a module of it is required


Add test for creation of vfio-pci resource

This test validates that a node policy with vfio-pci
can be successfully applied on the cluster

/lgtm
/approve


support for windows of tippecanoe

I want to ship my product which solely depends on tippecanoe, in windows environment, but cant as I am not able to run tippecanoe on windows, is there an alternative (nothing like wsl).

You can use conda to install it.
https://anaconda.org/conda-forge/tippecanoe

@giswqs Hello, I looked at Conda and there is NO Windows version. Availables: Linux64, OSX64 and OSX ARM64


Very slow sync

Steps:
Start sync from scratch.
What happened:
At some point, sync started to go painfully slow.
debug.log
Expected result:
Sync is fast.

This ticket is a duplicate of #1435
The logs show the same symptoms: many peer connections have failed, so Zebra only has 2 peers left. If you leave it running long enough, it should permanently fail.
Dec 14 09:21:51.916  INFO {zebrad="e537926e"}:sync:obtain_tips: zebra_network::peer_set::set: network request with no ready peers: finding more peers, waiting for 2 peers to answer requests

(There isn't much extra info here, and I can't seem to get GitHub's duplicate issues to work, so I'm just going to close this issue.)

Please re-test with the latest Zebra main branch, we've merged the #1468 peer diagnostics and #1511 panic fix since then.


Update setup-systemd-resolved

Select yum or apt-get. Addresses #203

Thank you for your submission! We require that all contributors sign our Contributor License Agreement ("CLA") before we can accept the contribution. Read and sign the agreement
Learn more about why HashiCorp requires a CLA and what the CLA includes
Have you signed the CLA already but the status is still pending? Recheck it.

Thank you for your submission! We require that all contributors sign our Contributor License Agreement ("CLA") before we can accept the contribution. Read and sign the agreement
Learn more about why HashiCorp requires a CLA and what the CLA includes
Have you signed the CLA already but the status is still pending? Recheck it.

OK, sorry for the long delay. This LGTM. Could you pull in the latest from master, and then I can kick off tests?

@brikis98 rebased here: https://github.com/hashicorp/terraform-aws-consul/pull/228

Thanks @tonyhb. Closing this one.


Add empty implementation of drivers to STM32

Make STM32 platform compile again

Closing since it is not needed after #38


Add SEO

Add a stiemap XML (dynamic)
Add a robots.txt

In all pages add all important SEO components including title, description, openGraph Attributes, etc. Also add google rich text snippets and rich data.
https://nextjs.org/docs/app/building-your-application/optimizing/metadata#json-ld
https://developers.google.com/search/docs/appearance/structured-data/search-gallery
The following rich data attributes should be included in the following pages/components
All pages

title
meta description
opengraph cards
twitter cards
JSON LD

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Ergonomica Desk",
  "url": "https://www.ergonomicadesk.com",
  "logo": "https://www.ergonomicadesk.com/images/logo.png",
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+50769477336",
    "contactType": "customer service",
    "areaServed": "PA",
    "availableLanguage": ["English", "Spanish"]
  },
  "sameAs": [
    "https://www.facebook.com/ErgonomicaDesk",
    "https://www.twitter.com/ErgonomicaDesk",
    "https://www.instagram.com/ErgonomicaDesk"
  ]
}

JSON LD

{
  "@context": "https://schema.org",
  "@type": "WebSite",
  "url": "https://www.ergonomicadesk.com",
  "potentialAction": {
    "@type": "SearchAction",
    "target": "https://www.ergonomicadesk.com/search?q={search_term_string}",
    "query-input": "required name=search_term_string"
  }
}

Home Page
JSON LD
{
  "@context": "https://schema.org",
  "@type": "Store",
  "@id": "https://ergonomicadesk.com",
  "name": "Ergonomica Desk",
  "description": "Everything you need for your home office",
  "url": "https://ergonomicadesk.com",
  "telephone": "+50769477336",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Calle 75 San Francisco, Edif. Mega Storage, unidad 10202",
    "addressLocality": "Panama city",
    "addressRegion": "Panama",
    "postalCode": "00000",
    "addressCountry": "PA"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": "8.99437899550739",
    "longitude": "-79.50334275969475"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "5",
    "ratingCount": "12"
  },
  "review": [
    {
      "@type": "Review",
      "author": "Ryan",
      "datePublished": "2021-11-26",
      "name": "Great quality",
      "reviewBody": "Great quality product and service",
      "reviewRating": {
        "@type": "Rating",
        "bestRating": "5",
        "worstRating": "1",
        "ratingValue": "5"
      }
    },
    {
      "@type": "Review",
      "author": "Vladlena",
      "datePublished": "2021-11-26",
      "name": "Exceptional service",
      "reviewBody": "The desks are of the highest quality and the service is exceptional. Less than 3 hours after making the purchase I was already using mine! I am MEGA pleased not only with the product and with the quality of the customer service, which is something very difficult to find. In addition to having a wide range of height with memory options to save the perfect graduation, there are different options of sizes, colors and even wheels to be able to rotate and move it with minimal effort, all this with a 5-year guarantee. 5 STARS!!! I recommend this company WITHOUT REPAIRS. The only downside is not having more rooms in the house to put more desks :) The best recommendation in a long time and definitely a chance to stay healthy while working.",
      "reviewRating": {
        "@type": "Rating",
        "bestRating": "5",
        "ratingValue": "5"
      }
    }
  ],
  "potentialAction": {
    "@type": "ReviewAction",
    "target": "https://g.page/r/CckxMghQ4Z1qEAg/review"
  },
  "areaServed": [
    {
      "@type": "GeoCircle",
      "geoMidpoint": {
        "@type": "GeoCoordinates",
        "latitude": "8.99437899550739",
        "longitude": "-79.50334275969475"
      },
      "geoRadius": "800000"
    }
  ],
  "makesOffer": [
    {
      "@type": "Offer",
      "priceSpecification": {
        "@type": "UnitPriceSpecification",
        "priceCurrency": "USD",
        "price": "350-800"
      },
      "itemOffered": {
        "@type": "Service",
        "name": "Standing Desks",
        "description": "We offer high quality standing desks at an affordable price with 5 year warranty."
      }
    },
    {
      "@type": "Offer",
      "priceSpecification": {
        "@type": "UnitPriceSpecification",
        "priceCurrency": "USD",
        "price": "150-700"
      },
      "itemOffered": {
        "@type": "Service",
        "name": "Office Chairs",
        "description": "We offer high quality ergonomic office chairs at an affordable price."
      }
    },
    {
      "@type": "Offer",
      "priceSpecification": {
        "@type": "UnitPriceSpecification",
        "priceCurrency": "USD",
        "price": "5-300"
      },
      "itemOffered": {
        "@type": "Service",
        "name": "Home office accessories",
        "description": "We have everything you need for your home office. Our list of products includes accessories for your electronic devices, products that can improve your productivity, health and more."
      }
    }
  ],
  "priceRange": "$",
  "image": [
    "https://ergonomicadesk.com/images/home/header-mobile.jpg",
    "https://ergonomicadesk.com/images/home/combinations-mobile.jpg"
  ],
  "sameAs": ["https://www.ergonomicadesk.com"],
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "09:00",
      "validFrom": "2021-12-26",
      "validThrough": "2023-12-26",
      "closes": "20:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": "Saturday",
      "opens": "9:00",
      "validFrom": "2021-12-26",
      "validThrough": "2023-12-26",
      "closes": "15:00"
    }
  ]
}

Product page
On individual product pages, you should implement structured data that specifically describes each product. This includes using the Product schema to detail things like the product name, description, pricing, availability, and reviews specific to that product.
{
  "@context": "https://schema.org/",
  "@type": "Product",
  "name": "PRODUCT_TITLE",
  "image": [
    "https://example.com/path/to/image.jpg"
  ],
  "description": "Detailed product description.",
  "sku": "PRODUCT_SKU",
  "mpn": "PRODUCT_MPN",
  "gtin": "PRODUCT_GTIN",
  "brand": {
    "@type": "Brand",
    "name": "Ergonomica Desk"
  },
  "offers": {
    "@type": "Offer",
    "url": "https://example.com/path/to/product",
    "price": "99.99",
    "priceCurrency": "USD",
    "priceValidUntil": "2024-12-31",
    "itemCondition": "https://schema.org/NewCondition",
    "availability": "https://schema.org/InStock",
    "seller": {
      "@type": "Organization",
      "name": "Ergonomica Desk"
    }
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.5",
    "reviewCount": "88"
  },
  "review": [{
    "@type": "Review",
    "author": {
      "@type": "Person",
      "name": "Customer Name"
    },
    "reviewRating": {
      "@type": "Rating",
      "ratingValue": "5",
      "bestRating": "5",
      "worstRating": "1"
    },
    "datePublished": "2023-01-01",
    "reviewBody": "Excellent product with high quality and great value."
  }]
}

Category/Subcategory Page
For category pages where multiple products are listed (like a list of all standing desks), you might use the ItemList schema to better describe the list of products presented. This helps search engines understand the structure of your site and the relationships between different pages and product types.
Contact and About Pages
Specific pages like your contact or about pages should have appropriate structured data that matches their content. For example, a ContactPage schema could be used on the contact page, potentially with embedded PostalAddress and ContactPoint information.
BreadCrumbs Component
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [{
    "@type": "ListItem",
    "position": 1,
    "item": {
      "@id": "https://www.ergonomicadesk.com",
      "name": "Home"
    }
  },{
    "@type": "ListItem",
    "position": 2,
    "item": {
      "@id": "https://www.ergonomicadesk.com/category/desks",
      "name": "Desks"
    }
  }]
}

Add Pages for errors:
404 - not found
500 and other generic errors

Add Image metadata to all images
https://developers.google.com/search/docs/appearance/structured-data/image-license-metadata#iptc-photo-metadata


Selecting a repo issue

While setting up i get to step 4. The problem is the repo i would like to select is not available. I see personal repos and repos im a member of but zero repos for teams that I am an owner/admin of. Is there a solution so i can populate the missing repos?

Thanks @vany365 - sorry to hear that. It currently shows your first 100 most-recently accessed repos - is it possible those repos were accessed long ago? Otherwise, could you double-check that you have access to those repos (even if you're the admin of the team)?

Hey @vany365, could you give this another try? We made some changes to the repo selector

@tedspare I have the same problem because the repo I want to choose is either past the bottom of the browser viewport, or perhaps not even in the first 100 repos (I have 520 repos in my account).  Even when I zoom out to an unreadably small font it shows less than 100 repos (see below), so I'm a bit confused how this is supposed to work?  I tried to inspect the HTML so that I could edit it manually from the browser console, but apparently the selection list only gets added to the DOM when the button is clicked, and gets removed as soon as the mouse focus leaves the list. So it seems there's no easy workaround or this either.  The dropdown list really needs a scroll bar at very least!  But also pagination if it only retrieves 100 repos.

Hey, thanks @aspiers - clicking on the dropdown, you should be able to search for the repo - does that work for you? Not sure if that's what's pictured.
Re pagination: there will be a "load more" button if you filter down and still don't see the repo.
In the meantime, I've bookmarked the scroll + DOM issues.

Oh wow thanks, that actually worked! There are two UX problems, both of which would have prevented me from figuring out how to solve the problem without the hint in your previous message:
Firstly it's not at all obvious that the button transforms into a search field, and previously I had completely missed this because after clicking:

the 4. Search your repo... doesn't disappear to make room for typing
no flashing cursor appears, which is the standard visual clue which users expect since pretty much every other active text field you can find will behave this way

Secondly, after typing a search field, as you predicted, a match didn't appear and I had to hit the "Load more" button twice.  Again this is not intuitive UX, because it doesn't look like normal pagination, so the user will not realise that behind the scenes only 100 entries are loaded and they need to keep clicking until their match appears.  This is aggravated by the fact that there is no visible change after clicking "Load more".

Lots to learn here, thanks a ton @aspiers. Added to my notes - expect the search and pagination UX to be fixed soon.

Thanks so much @tedspare!

Hey thanks for looking into this. There appears to be an issue while im the owner of an org. here are the options i am able to see but I am an owner of this org and zero repos from it are showing as an option for me. https://github.com/ApeWorX

Seems i need to login as the organization account? but in the steps i am not seeing how to do that. if you have any recommendations or suggestions that would be great! thanks

Hi @vany365 - to sign in as the org account (if the site logs you into vany365 by default), sign out (X at the top right) then go to GitHub settings > Applications > maige-bot > Configure and click Uninstall at the bottom. After that, please try to log back in and let me know if the org account doesn't show 🙌

@aspiers the repo selection UX should be fixed in 0e88983ad24f33de5fe4898a864583042f0d8a3c
Considering the missing repos as an account issue, Vany - feel free to re-open if I'm wrong  🙌


some question

Can I  control the title position  and  click my own widget when guide show?

You can't control the title's position. If you want to simulate a click, you can try performClick although I doubt it will work. You should likely just call dismiss on the view manually.


Added lesson plan template markdown

This is great. It looks identical to Turing.io which is cool. I have some changes I personally would want to do:

Should we just have a lesson plan per-day, or even per-multiple days instead of having them broken up by much smaller chunks (90 mins) like Turing does?
What's the difference between objectives and discussions? Let's put it as a part of the lecture instead
Let's put the exercises interleaved into the lecture, and in the template have them be links to external md files with the exercise in it (or be in line)

Just updated the PR to make the changes to interweave exercises and discussion with the lecture, and expand the structure to account for the entire day

👍


chore: clean up some logs

Description

Checklist

[ ] For UI or styling changes, I have added a screenshot or gif showing before & after
[x] I have added a changeset
[ ] I have added to the docs where applicable
[ ] I have added to the VS Code extension where applicable

I'm surprised this is the same error in the screenshot

or is the screenshot the new error? I may have misunderstood

needs linting


1.0.0-rc2 Updates

@WadeBarnes -- advice needed.
With this PR, we update the "version.py" and "openapi" versions to "1.0.0-rc2", which I don't we want to leave in place.
Here are some things we can do:

After this PR is merged, add another that changes the "main" branch version to what it usually is -- "0.8.1" (the last released version).  That's the state we are usually in between releases.

Side Issue: Should we change this practice and after a release, change the version references in the code to what we expect the next release to be -- e.g. "0.8.2-latest" or something like that.

Merge this PR into a new branch "1.0.0" and we use that for future "1.0.0-rcX" tags.  As part of making subsequent 1.0.0-rcX tags, we merge main into the 1.0.0 branch.  That means that 1.0.0 is a clone of main for tags, updated with the types of changes that are in this PR.

I kind of lean towards the "1.0.0" branch, but you know this stuff way better than I.

@WadeBarnes -- branch, merge and release look good?  I called the branch 1.0.0-rc, everything else is pretty typical for a release.

@swcurran, Looks good.  The images were built off the correct commit.


Change cart rule field name to match the data content being shown

Changed label according to https://github.com/PrestaShop/PrestaShop/pull/28070

Questions
Answers

Description?
In PR https://github.com/PrestaShop/PrestaShop/pull/28070 I was requested by @camilleganzin to create a new PR to change this label name

Type?
improvement

BC breaks?
no

Deprecations?
no

Fixed ticket?
Fixes https://github.com/PrestaShop/PrestaShop/pull/28070

Related PRs?
https://github.com/PrestaShop/PrestaShop/pull/28070

How to test?
Test together with https://github.com/PrestaShop/PrestaShop/pull/28070

Possible impacts?
No

@buggyzap please fill the description properly

@buggyzap please fill the description properly

It's just a typo fix requested by linked PR... ok 🙄

Looks like this PR got off the radar. I will fix that and fill the missing informations to allow it to advance again 😄

@HanaRebaiQA it's not translated because there's no phrase Name available yet in Shop/Theme/Checkout.xlf on any version on Crowdin. AFAIK this needs to be merged and new version of Classic (and Prestashop?) needs to be released first in order to make it available for translation. At least that's how I understand this process.
Only Name currently available and translated is at Admin/Global.xlf

Hello @buggyzap
This pr should be tested together  with this PR  #28070
Regarding this  PR #28070      the issue of this pr is not fixed comment , it's waiting for author
I will add the blocked label and waititng that the other Pr to be waiting for QA
Thank you !

It's an easy change. It can be tested, original PR was merged, so we need this one for 8.1. Just so you know, the wording will be available on Crowdin to translate later.

Thank you @buggyzap and @florine2623 !


Demo Kit Selection of Tree Components on root level

The Bug returned after fixing a year ago ;-)
The tree does not display nor allow to filter for root components like sap.ui
https://sapui5.netweaver.ondemand.com/sdk/#docs/api/symbols/sap.ui.html
Workaround: select next level and change uri and reload
Regards Holger

Hi Holger,
not sure I understand... this url addresses a particular namespace page, but does not have any effect on what the tree displays. That's what always happened, so what exactly is missing and hadbeen working?
Regards
Andreas

The problem is, that you need to know the url ;-)
If you filter
sap.m
you will see a document to click on it.
If you filter
sap.ui
it starts with sap.ui.Device
There is no link document for sap.ui inside the tree, but you can access it via
https://sapui5.netweaver.ondemand.com/sdk/#docs/api/symbols/sap.ui.html
Maybe there are other docs missing.
Regards
Holger

Hello Holger,
yes that is indeed an issue, initially it gooes to the "sap.ui" symbol but it is not part of the tree and the contents of sap.ui is essential but really hard to find.
I opened an internal message for it. We are currently reworking parts of the demo kit, maybe it fits in. Internally tracked as: #1680041068
Kind Regards,
Michael

A fix is already being worked on and it should become visible with the next patch release for 1.36.
BTW: the issue only exists for SAPUI5 and only up to 1.36. In 1.38 and higher as well as in OpenUI5 it has been fixed earlier (almost a year ago for OpenUI5). For that reason, I close this issue. The internal ticket will be updated once the issue is solved for SAPUI5 as well.


GPUImageBrightnessFilter affects png with transparent background

I've been successfully using the GPUImageBrightnessFilter for months, and just recently updated to the latest version of GPUImage. The brightness filter still works well on my png images when darkening them (0 to -1), but when brightening them (0 - 1) the resulting image displayed in a UIImageView will have it's transparent background brightened aswell. I downgraded to an older version of GPUImage, and it works fine now.
Note: This does not happen in the simulator. It only occurred when running on device, in this case a iPad mini retina, iOS version 7.1.x
See below for snippet and steps to reproduce

@felixrosenvik  you are absolutely right. the alpha channel works on simulator as expected but not in real device.
also 0.1.2 works as expected in simulator and real device.

@BradLarson Is there any solution for this? I have the same issue. On simulator everything is good but on the device the transparent pixels will be not transparent.

@BradLarson @leximester  @kocyigityunus  @felixrosenvik Has anybody found a solution for this :( ? I really wish there was a solution, filters are affecting the transparent pixels still :((( I'd highly appreciate it if someone tells me a solution. Thanks guys.

hey @rzads0, i solved problem using v 0.1.2.
idk if newer version work or not.

@kocyigityunus  Thank you for the answer, Im using UIImageVIew and not GPUImageView, Does v 0.1.2 fix the problem of transparency in UIImageviews too? (and I have to use UIImageview Cuz no matter what I did, GPUImageview gives me so many errors.) Thank you

@kocyigityunus  And I'm sorry for asking this but how can I downgrade from my current version of GPUImage po (0.1.7) to (0.1.2) ? it always installs the newest GPUImage pod which is 0.1.7, I totally appreciate your help.

I finally managed to manually install v 0.1.2 and you're right!!! now effects don't affect transparent pixels and working great!!! Thank you so much. @kocyigityunus


watchOS App

A watchOS Version Of The App.

Completed In Release: v1.0
Commit: https://github.com/markydoodled/Timetable/commit/ed2f636eefba12a174c683fbe9c4dfa714151cf0


Move classes about a bit

Codecov Report

Merging #25 into master will decrease coverage by 2.13%.
The diff coverage is 55%.

@@            Coverage Diff             @@
##           master      #25      +/-   ##
==========================================
- Coverage    92.4%   90.26%   -2.14%
==========================================
  Files          16       16
  Lines         329      339      +10
  Branches       17       18       +1
==========================================
+ Hits          304      306       +2
- Misses         22       30       +8
  Partials        3        3

Impacted Files
Coverage Δ

...rc/app/dm-viewer/viewers/viewer-factory.service.ts
100% <ø> (ø)

...c/app/dm-viewer/viewers/viewer-anchor.directive.ts
100% <ø> (ø)

...-viewer/viewers/img-viewer/img-viewer.component.ts
100% <ø> (ø)

...unsupported-viewer/unsupported-viewer.component.ts
100% <ø> (ø)

src/app/dm-viewer/dm-viewer.component.ts
88.46% <100%> (ø)
:arrow_up:

...app/dm-viewer/annotations/notes/notes.component.ts
88.23% <50%> (ø)

...-viewer/viewers/pdf-viewer/pdf-viewer.component.ts
68.42% <50%> (ø)

...rc/app/dm-viewer/annotations/annotation.service.ts
92.53% <50%> (-7.47%)
:arrow_down:

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 23b5174...2b6c916. Read the comment docs.


fix(metrics): use current actor id for backpressure

Signed-off-by: Alex Chi<EMAIL_ADDRESS>I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
As title. The back pressure rate should be normal now.
Checklist

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Documentation
If your pull request contains user-facing changes, please specify the types of the changes, and create a release note. Otherwise, please feel free to remove this section.
Types of user-facing changes
Please keep the types that apply to your changes, and remove those that do not apply.

Installation and deployment
Connector (sources & sinks)
SQL commands, functions, and operators
RisingWave cluster configuration changes
Other (please specify in the release note below)

Release note
Please create a release note for your changes. In the release note, focus on the impact on users, and mention the environment or conditions where the impact may occur.
Refer to a related PR or issue link (optional)

The metrics in this PR maybe never be 0 even when the system is actually pretty over-provision. This will make our scaling-in behave rather weird.

The metrics in this PR maybe never be 0 even when the system is actually pretty over-provision. This will make our scaling-in behave rather weird.

You can first come up with a good scaling policy, then see whether this will affect your policy.

@BugenZhao May you explain your behavior?

@BugenZhao May you explain your behavior?

The metrics in this PR maybe never be 0 even when the system is actually pretty over-provision.

Under original implementation, the capacity will be stale immediately after the if statement, so it's still possible that the queue is not full, and we count the "normal dispatch time". Therefore, we should never rely on the fact that "the back pressure rate is exactly zero" for scaling policy, unless we measure the time of next future polling. So this does not make much sense.
For PR merging, I was asked to review this PR and had some offline discussions with the author, while not realizing #3723. Based on the above statements, I don't think there's any big problem with this fix, so I approved this. Anything objection to this?

the capacity will be stale immediately after the if statement
This possibility is extremely low, so definitely we can accept.

Cool. So I believe the approach in this PR is also acceptable.

In my implementation https://github.com/singularity-data/risingwave/pull/3723, only when this "extremely low possibility" is hit, the overhead would equal the overhead in this PR.

The metrics in this PR maybe never be 0 even when the system is actually pretty over-provision. This will make our scaling-in behave rather weird.

If your scaling policy is so sensitive to such small error values, then it's not robust enough, and should never be used by our users. You should redesign your scaling policy, instead of being peculiar about this fix. You should feel fortunate that "an actor is backpressured 4 seconds every 1 second" bug is found sooner than months later you've already based your policy on such wrong metrics.

In my implementation https://github.com/singularity-data/risingwave/pull/3723, only when this "extremely low possibility" is hit, the overhead would equal the overhead in this PR.

Being peculiar about such edge cases doesn't make any sense. Shall we consider the case that the CPU clock speed is slightly different on each core? Shall we consider the time for holding the mutex inside channel.send? If you're so addicted to such accuracy, I can raise millions of things that you'll need to consider. Thus, the principle is to make every thing simple and easy to understand.

@BugenZhao May you explain your behavior?

I believe our discussions have been settled until this point. It's you that are making our normal development process uncomfortable. I have no idea why you've got such big reaction to this PR. I believe I've fully taken your review comments into consideration before I think it's ready to merge this PR.
You should think about yourself, Ting, instead of blaming us that our code doesn't fit your need. Doing an engineering work is harder than you think. It's impossible to make everyone happy. You can just come up with some metrics that "scaling service" will use but nobody understands what it means. You're happy enough to make your own things work, but other developers will feel confused that why we present the "de/ser" duration in such a way on the Grafana dashboard. RisingWave is not a project owned by you, or just for the serverless scaling research, also not by me. We all should make it go in the direction that most people will feel comfortable with and fit our products' need.
Regarding your questions in the Slack channel,

how to prevent this evil approve+merge action? shall we set some regulations?

For (1), You cannot judge whether a commit is evil or not based on your own preference. As I've said, it's impossible to make everyone happy in a real project. If you disagrees on a PR, you should propose a better solution instead of blaming that we're doing evil things. You should think of why your proposed changes are necessary and whether it's good to have it.
For (2), the standard is always one approval and passing CI tests to get some patches merged. If the criteria is met, then we can get PRs merged. Of course, someone might be opposite to some changes, so do I. For me, I'll propose better solutions or fix it by myself. No developers will ask for "explanations" on the merge/reject action itself -- it's like asking why I'm getting up late at morning, and the answer is simple -- I'm okay with it.
Scaling our system is important of course, but it's not the only important thing. I'm not less exciting than you to have real-time scale in our system, but we still have a lot of things to do before we can tell whether a scale policy is good or bad. From my perspective, you're hurrying in some changes without enough thinking. There're so many on-going prerequisite works about scaling, like actor migration, vnode partition, performance investigation, etc. At the same time, we have the same code quality requirement for the scaling project as other ongoing projects. You should learn about them, instead of just telling whether some 0.0001% flatuation will affect your scaling policy or not. Your research depends on many works on the kernel side, and you should contribute code with effort instead of just making your research works.
Please keep that in mind, and hope that we can both help make the project better.


I don't understand anything. Is this an app?

Is this an app or something else? how do you run this thing?

Hey @E3V3A
This is primarily a backend application which is capable of doing both storage and compute tasks on data submitted via an API. That application is rust code which runs inside of an intel sgx eclave, and compares user-submitted data to find matches. Note, this means that neither the server operator nor other users have access to plaintext user data. That work is under construction here: https://github.com/enigmampc/SafeTrace/tree/master/enclave/safetrace
We have scaffolding in place for a sample front-end, as well as UI wireframes that demonstrate the user experience of using the system. Any client app, however, should be able to leverage the backend services via the API, provided the data provided is in the correct format. The API is in-progress but documented here: https://github.com/enigmampc/SafeTrace/tree/master/api-server
Our MVP goal is to have a sample application that users can interact with via web browser, as well as functioning API that other applications can interact with as well. Hope that answers your questions, feel free to clarify them if not.

@E3V3A here's an executive summary we put together
https://bit.ly/3469aS9


Packae doesn't compile on Fedora 40

When trying to compile a project with this package on Fedora 40, I get the following error:
<command line>:1:9: error: macro name must be an identifier
From this issues from the Flutter repo it seems it might be a problem with clang 17 and higher.
Steps to reproduce:

Use Fedora 40 and clang 18
Add the following dependencies:
 media_kit: ^1.1.10+1 media_kit_libs_video: ^1.0.4 media_kit_video: ^1.2.4
Install mpv, mpv-lib, and mpv-devel with dnf
Try to build project for Linux

I don't know how to run your favorite GNU/Linux distribution.


Specific animations on layers

Great project!
I've scoured the docs searching for ways to customize the animations and properties of layers.
Are there plans on allowing customization of individual layers' animations (fade duration, window resize animations) & possibly window rules?
I saw that you mentioned this in #875, but then closed the issue. So I opened another one for specifically this feature.
Thanks!

planned

any progress on this.  Since waybar can't be hidden in Hyprland, I'd love to be able to set a vertical slide on open/close.

it's moved from planned to planned

cooked

Thanks a lot! Your work is really appreciated.

fr, man, ur a god, thanks, but how we configure the animation speed, etc ?

@mooncoffee1
You can modify it using the animation setting:
animation = layers, 1, 4, default, fade
Then you can change the animation style using layerrule:
layerrule = animation slide, notifications
Its all explained in the wiki


Food provided is now checked when "This event requires RSVP" is checked.

Fixes issue #830
Changes

Added Javascript function that updates the food is provided field when the event requires RSVP.
Removed redundant function in JS that wasn't necessary.

 Make it so that if the "Food will be provided" is checked the automatically check the "Requires RSVP" as well. #830

Terriblely wrote PR, but the code is good.


Support UTF-8 charset.

Supports UTF-8 charset so when you use CJK characters in DSL code, it won't get garbled.

ping @imuchnik . Let me know if you need anything else.

Thank you @keitap! Sorry for the delay.  👍


Using standard types instead of customized types

Acceptance Criteria
GIVEN any related tests
WHEN input same test data as previous used
THEN it should generate same result (just like it did not change)
Estimation
1 pt

Commit eca84122 has been merged to master branch. Closing this card ...


Home Page Redesign

This PR is not ready for approval

Homepage Wave needs to be mobile optimized
The team needs to discuss color options
The team needs to discuss where Buttons are needed/not needed, and where they should link to
The team needs to discuss if photos should be implemented and which should be used


consul quick start install

Moving Consul quick start install into install/consul/ folder. Also fixed links in both READMEs.
Release note:

NONE

@kyessenov you need to /lgtm

/lgtm


Improve UI/UX on issue section

Currently the section is a bit unclear for the flow I should follow - I think a vertical bar seperate with a OR between the 2 sections would go a long way for hinting to the user there's 2 options
Additionally, let's update Placeholder to something more intuitive now

How about making it a part of milestone 2 and putting the Generate with ChatGPT input box into a dialog or an accordion?


Error uploading artifact to container registry when using Google Artifact Registry

Does actions/attest-build-provenance@v1 support Google Artifact Registry?
The build-push step successfully pushed image to Google Artifact Registry with this workflow at Build the integration test server container and push to the registry. It's failing at the attestation step with Error: OCIError: Error uploading artifact to container registry Error: Error fetching https://us-central1-docker.pkg.dev/v2/<repoA>/<imageA>/manifests/sha256:xxxxxxx - expected 200, received 404
Here's my job step.
jobs:
  build-and-push:
    runs-on: ubuntu-latest
    permissions:
      id-token: write
      contents: read
      attestations: write
      packages: write
    env:
      file: './python-hello-world/Dockerfile'
      run_from: './python-hello-world'

    steps:
      - name: 'Checkout'
        uses: 'actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11' # ratchet:actions/checkout@v4

      # Authenticate to GCP with WIF
      - id: 'auth'
        name: 'Authenticate to Google Cloud'
        uses: 'google-github-actions/auth@55bd3a7c6e2ae7cf1877fd1ccb9d54c0503c457c' # ratchet:google-github-actions/auth@v2
        with:
          workload_identity_provider: '${{ env.WIF_PROVIDER }}'
          service_account: '${{ env.WIF_SERVICE_ACCOUNT }}'
          token_format: 'access_token'

      - name: 'Authenticate to Artifact Registry'
        uses: 'docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d'
        with:
          username: 'oauth2accesstoken'
          password: '${{ steps.auth.outputs.access_token }}'
          registry: 'us-central1-docker.pkg.dev'

      # Build and Push Image
      - name: 'Build the integration test server container and push to the registry'
        id: push
        uses: 'docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56'
        with:
          push: true
          tags: '${{ env.DOCKER_REPO }}/${{ env.IMAGE_NAME }}:${{env.DOCKER_TAG}}'
          file: '${{ env.file }}'
          context: '${{ env.run_from }}'

      - name: Generate artifact attestation
        uses: actions/attest-build-provenance@v1
        with:
          subject-name: '${{ env.DOCKER_REPO }}/${{ env.IMAGE_NAME }}' // example is `us-central1-docker.pkg.dev/repoA/imageA`
          subject-digest: '${{ steps.push.outputs.digest }}'
          push-to-registry: true

Looks like  actions/attest-build-provenance@v1 doesn't use the auth I provided in previous step automatically and it doesn't expose a way to configure the auth needed for Google Artifact Registry. The previous steppush which push the image to the Google Artifact Registry works, so I'm pretty sure I'm providing the correct auth for Google Artifact Registry.
At the same time, I also run curl -H "Authorization: Bearer $(gcloud auth print-access-token)" https://us-central1-docker.pkg.dev/v2/<repoA>/<imageA>/manifests/sha256:xxxxxxx for the url throw in the error message Error fetching https://us-central1-docker.pkg.dev/v2/<repoA>/<imageA>/manifests/sha256:xxxxxxx - expected 200, received 404, and the curl works which shows the https://us-central1-docker.pkg.dev/v2/<repoA>/<imageA>/manifests/sha256:xxxxxxx is a valid url.
Thank you for your help!

@capri-xiyue We have done some testing w/ Google Artifact Registry (here's a sample run you can look at).
I suspect that you are correct -- the underlying issue is probably auth related. The one difference I see between your workflow and my sample is that you are using the google-github-actions/auth action. I'll incorporate that into my sample and do some testing to see if I can figure out what is going on.

@bdehamer
Looks like the main difference is that you are using Service account based authentication(https://github.com/docker/login-action?tab=readme-ov-file#service-account-based-authentication-1) and I'm using Workload identity federation(https://github.com/docker/login-action?tab=readme-ov-file#google-artifact-registry-gar)

@bdehamer
I made it work after adding such actions
` ``
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
But I have some questions, looks like it will generate 5 images for one run. Could you explain what each image is for?

@capri-xiyue I think I know why this was failing for you before adding the docker/setup-buildx-action . . . but first lemme discuss the "5 images".
I assume you're talking about the the 5 entries you see if you do something like the following:
$ gcloud artifacts docker images list docker.pkg.dev/foo/bar --include-tags
Listing items under project XXXX, location us-west1, repository foo.

IMAGE                   DIGEST                                                                   TAGS                                                                     CREATE_TIME          UPDATE_TIME          SIZE
docker.pkg.dev/foo/bar  sha256:329a93ba4c9b1911ed73d8815fba2bebfc102bfcbf0ef95b1f5feca08a1ee3a9  latest                                                                   2024-05-14T12:44:13  2024-05-14T12:44:13
docker.pkg.dev/foo/bar  sha256:57fa8d2dcfc3929aadb784fe60463751727e9a6dfd61a3a1c3aa04bb4f8b635a                                                                           2024-05-14T12:44:16  2024-05-14T12:44:16  10538
docker.pkg.dev/foo/bar  sha256:d531c7f8b5eb0051c9cad575c3195b6a809ce933b091ab9405a921954071bd5f  sha256-329a93ba4c9b1911ed73d8815fba2bebfc102bfcbf0ef95b1f5feca08a1ee3a9  2024-05-14T12:44:16  2024-05-14T12:44:16
docker.pkg.dev/foo/bar  sha256:d67e45b3a36ee3d13f64dafa2a69c4762c3f82d195c4226bf72613e4c6fb9ddd                                                                           2024-05-14T12:44:12  2024-05-14T12:44:12  1050
docker.pkg.dev/foo/bar  sha256:e7276394149582ad4cd184fec5cb65b5cee36108ca0b275ce5c5279b04ca8be3

or something similar in the Google Cloud Console:

What you're seeing here are not 5 images, but rather 5 different manifests which have been stored in the repository. Only one of these actually represents your image, but let's walk through each of them:

The entry shown above with the tag latest is the index for the image which was built. If we crack it open we'll see two entries listed in the index:
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.index.v1+json",
   "manifests": [
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "digest": "sha256:e7276394149582ad4cd184fec5cb65b5cee36108ca0b275ce5c5279b04ca8be3",
         "size": 476,
         "platform": {
            "architecture": "amd64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "digest": "sha256:d67e45b3a36ee3d13f64dafa2a69c4762c3f82d195c4226bf72613e4c6fb9ddd",
         "size": 565,
         "annotations": {
            "vnd.docker.reference.digest": "sha256:e7276394149582ad4cd184fec5cb65b5cee36108ca0b275ce5c5279b04ca8be3",
            "vnd.docker.reference.type": "attestation-manifest"
         },
         "platform": {
            "architecture": "unknown",
            "os": "unknown"
         }
      }
   ]
}

The first listed manifest is for the image itself (note the architecture/os information which is attached. The second manifest points to a provenance statement which was generated by the docker build command and associated with this image (note the "attestation-manifest" annotation which hints at the purpose for this manifest).
This index serves to bind these two entities together -- the image and the provenance statement for that image.

Retrieving the first manifest listed in the index above (sha256:e72763) yields the following:
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.manifest.v1+json",
   "config": {
      "mediaType": "application/vnd.oci.image.config.v1+json",
      "digest": "sha256:355a3507efda559fc3d75033a3b444af9a18690da2eb01b8bface7a0d890ad40",
      "size": 436
   },
   "layers": [
      {
         "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
         "digest": "sha256:5f06459796339119f39b30d9a4dbcda7d50ab0bc3d5b1a1c1fb5c0c070328ac4",
         "size": 137
      }
   ]
}

This image manifest contains all the information about the OCI image itself -- this is the information that a client would use to actually pull the bytes of the image.

The second manifest listed in the index (sha:d67e45) contains the following:
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.manifest.v1+json",
   "config": {
      "mediaType": "application/vnd.oci.image.config.v1+json",
      "digest": "sha256:8b77ce151e3e9738811376727e094b907df17beea97a57cf96733c2e47ae93dc",
      "size": 167
   },
   "layers": [
      {
         "mediaType": "application/vnd.in-toto+json",
         "digest": "sha256:56d3363720aa0e22487996db0f4ee7adb9e22f2e13b672119a59c0a24565636d",
         "size": 883,
         "annotations": {
            "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2"
         }
      }
   ]
}

The layer information here points to the contents of the provenance statement (again, this is the provenance statement generated by docker build). If you retrieve the blob at sha:56d336 you'd get the JSON-encoded provenance statement.

The first three manifests were all generated by the docker build command itself, while the last two come from the actions/attest-build-provenance action.
The manifest tagged with sha256-329a93... is the attestation index created by attest-build-provenance. Since we're generating attestations for an already-existing image, we need to push them in a separate manifest. The sha256-... tag is how we relate our attestation index back to the original image (note that the digest in the tag here matches the digest associated with the latest tag).
The content of this index (sha:d531c7) looks something like this:
{
   "mediaType": "application/vnd.oci.image.index.v1+json",
   "schemaVersion": 2,
   "manifests": [
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "digest": "sha256:57fa8d2dcfc3929aadb784fe60463751727e9a6dfd61a3a1c3aa04bb4f8b635a",
         "size": 812,
         "artifactType": "application/vnd.dev.sigstore.bundle.v0.3+json",
         "annotations": {
            "org.opencontainers.image.created": "2024-05-14T19:44:14.206Z",
            "dev.sigstore.bundle.content": "dsse-envelope",
            "dev.sigstore.bundle.predicateType": "https://slsa.dev/provenance/v1"
         }
      }
   ]
}

In this case, the index contains reference to a single attestation. If we had generated multiple attestations for this image each of them would be listed here -- providing a mechanism for discovering all of the externally-generated attestations (worth noting that this wasn't a scheme we invented, it's part of the OCI specification describing how to associate arbitrary artifacts with container images).

The final manifest (sha:57fa8d) is the one identified in the attestation index:
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.manifest.v1+json",
   "artifactType": "application/vnd.dev.sigstore.bundle.v0.3+json",
   "config": {
      "mediaType": "application/vnd.oci.empty.v1+json",
      "digest": "sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "size": 2
   },
   "layers": [
      {
         "mediaType": "application/vnd.dev.sigstore.bundle.v0.3+json",
         "digest": "sha256:51301ee43b449df2bd645addcab872c28759706d1caaa4b8bcc581dcd89fa3d7",
         "size": 10536
      }
   ],
   "subject": {
      "mediaType": "application/vnd.oci.image.index.v1+json",
      "digest": "sha256:329a93ba4c9b1911ed73d8815fba2bebfc102bfcbf0ef95b1f5feca08a1ee3a9",
      "size": 855
   },
   "annotations": {
      "org.opencontainers.image.created": "2024-05-14T19:44:14.206Z",
      "dev.sigstore.bundle.content": "dsse-envelope",
      "dev.sigstore.bundle.predicateType": "https://slsa.dev/provenance/v1"
   }
}

This points to the blob containing the JSON-encoded build provenance attestation generated by attest-build-provenance.

Regarding the original error you reported . . .

Error: OCIError: Error uploading artifact to container registry Error: Error fetching https://us-central1-docker.pkg.dev/v2///manifests/sha256:xxxxxxx - expected 200, received 404

I'm pretty sure that this is a bug in the attest-build-provenance code.
When you add the docker/setup-buildx-action action to your workflow it changes the behavior of the docker/build-push-action -- when these two actions are paired, build-push-action will automatically generate/push an provenance statement for the image build steps. As described above, this means that the tagged image will point to an index (w/ media type application/vnd.oci.image.index.v1+json).
When setup-buildx-action is NOT present, build-push-action does NOT generate a provenance statement and the repository tag points directly to an image manifest (w/ media type application/vnd.docker.distribution.manifest.v2+json).
Currently, the attest-build-provenance code does not identify application/vnd.docker.distribution.manifest.v2+json as an acceptable media type when attempting to resolve the image tag which results in the 404 error you're seeing.
We simply need to update our code to identify application/vnd.docker.distribution.manifest.v2+json as an expected manifest type.

@capri-xiyue I think I know why this was failing for you before adding the docker/setup-buildx-action . . . but first lemme discuss the "5 images".
I assume you're talking about the the 5 entries you see if you do something like the following:
$ gcloud artifacts docker images list docker.pkg.dev/foo/bar --include-tags
Listing items under project XXXX, location us-west1, repository foo.

IMAGE                   DIGEST                                                                   TAGS                                                                     CREATE_TIME          UPDATE_TIME          SIZE
docker.pkg.dev/foo/bar  sha256:329a93ba4c9b1911ed73d8815fba2bebfc102bfcbf0ef95b1f5feca08a1ee3a9  latest                                                                   2024-05-14T12:44:13  2024-05-14T12:44:13
docker.pkg.dev/foo/bar  sha256:57fa8d2dcfc3929aadb784fe60463751727e9a6dfd61a3a1c3aa04bb4f8b635a                                                                           2024-05-14T12:44:16  2024-05-14T12:44:16  10538
docker.pkg.dev/foo/bar  sha256:d531c7f8b5eb0051c9cad575c3195b6a809ce933b091ab9405a921954071bd5f  sha256-329a93ba4c9b1911ed73d8815fba2bebfc102bfcbf0ef95b1f5feca08a1ee3a9  2024-05-14T12:44:16  2024-05-14T12:44:16
docker.pkg.dev/foo/bar  sha256:d67e45b3a36ee3d13f64dafa2a69c4762c3f82d195c4226bf72613e4c6fb9ddd                                                                           2024-05-14T12:44:12  2024-05-14T12:44:12  1050
docker.pkg.dev/foo/bar  sha256:e7276394149582ad4cd184fec5cb65b5cee36108ca0b275ce5c5279b04ca8be3

or something similar in the Google Cloud Console:

What you're seeing here are not 5 images, but rather 5 different manifests which have been stored in the repository. Only one of these actually represents your image, but let's walk through each of them:

The entry shown above with the tag latest is the index for the image which was built. If we crack it open we'll see two entries listed in the index:
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.index.v1+json",
   "manifests": [
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "digest": "sha256:e7276394149582ad4cd184fec5cb65b5cee36108ca0b275ce5c5279b04ca8be3",
         "size": 476,
         "platform": {
            "architecture": "amd64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "digest": "sha256:d67e45b3a36ee3d13f64dafa2a69c4762c3f82d195c4226bf72613e4c6fb9ddd",
         "size": 565,
         "annotations": {
            "vnd.docker.reference.digest": "sha256:e7276394149582ad4cd184fec5cb65b5cee36108ca0b275ce5c5279b04ca8be3",
            "vnd.docker.reference.type": "attestation-manifest"
         },
         "platform": {
            "architecture": "unknown",
            "os": "unknown"
         }
      }
   ]
}

The first listed manifest is for the image itself (note the architecture/os information which is attached. The second manifest points to a provenance statement which was generated by the docker build command and associated with this image (note the "attestation-manifest" annotation which hints at the purpose for this manifest).
This index serves to bind these two entities together -- the image and the provenance statement for that image.

Retrieving the first manifest listed in the index above (sha256:e72763) yields the following:
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.manifest.v1+json",
   "config": {
      "mediaType": "application/vnd.oci.image.config.v1+json",
      "digest": "sha256:355a3507efda559fc3d75033a3b444af9a18690da2eb01b8bface7a0d890ad40",
      "size": 436
   },
   "layers": [
      {
         "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
         "digest": "sha256:5f06459796339119f39b30d9a4dbcda7d50ab0bc3d5b1a1c1fb5c0c070328ac4",
         "size": 137
      }
   ]
}

This image manifest contains all the information about the OCI image itself -- this is the information that a client would use to actually pull the bytes of the image.

The second manifest listed in the index (sha:d67e45) contains the following:
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.manifest.v1+json",
   "config": {
      "mediaType": "application/vnd.oci.image.config.v1+json",
      "digest": "sha256:8b77ce151e3e9738811376727e094b907df17beea97a57cf96733c2e47ae93dc",
      "size": 167
   },
   "layers": [
      {
         "mediaType": "application/vnd.in-toto+json",
         "digest": "sha256:56d3363720aa0e22487996db0f4ee7adb9e22f2e13b672119a59c0a24565636d",
         "size": 883,
         "annotations": {
            "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2"
         }
      }
   ]
}

The layer information here points to the contents of the provenance statement (again, this is the provenance statement generated by docker build). If you retrieve the blob at sha:56d336 you'd get the JSON-encoded provenance statement.

The first three manifests were all generated by the docker build command itself, while the last two come from the actions/attest-build-provenance action.
The manifest tagged with sha256-329a93... is the attestation index created by attest-build-provenance. Since we're generating attestations for an already-existing image, we need to push them in a separate manifest. The sha256-... tag is how we relate our attestation index back to the original image (note that the digest in the tag here matches the digest associated with the latest tag).
The content of this index (sha:d531c7) looks something like this:
{
   "mediaType": "application/vnd.oci.image.index.v1+json",
   "schemaVersion": 2,
   "manifests": [
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "digest": "sha256:57fa8d2dcfc3929aadb784fe60463751727e9a6dfd61a3a1c3aa04bb4f8b635a",
         "size": 812,
         "artifactType": "application/vnd.dev.sigstore.bundle.v0.3+json",
         "annotations": {
            "org.opencontainers.image.created": "2024-05-14T19:44:14.206Z",
            "dev.sigstore.bundle.content": "dsse-envelope",
            "dev.sigstore.bundle.predicateType": "https://slsa.dev/provenance/v1"
         }
      }
   ]
}

In this case, the index contains reference to a single attestation. If we had generated multiple attestations for this image each of them would be listed here -- providing a mechanism for discovering all of the externally-generated attestations (worth noting that this wasn't a scheme we invented, it's part of the OCI specification describing how to associate arbitrary artifacts with container images).

The final manifest (sha:57fa8d) is the one identified in the attestation index:
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.manifest.v1+json",
   "artifactType": "application/vnd.dev.sigstore.bundle.v0.3+json",
   "config": {
      "mediaType": "application/vnd.oci.empty.v1+json",
      "digest": "sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "size": 2
   },
   "layers": [
      {
         "mediaType": "application/vnd.dev.sigstore.bundle.v0.3+json",
         "digest": "sha256:51301ee43b449df2bd645addcab872c28759706d1caaa4b8bcc581dcd89fa3d7",
         "size": 10536
      }
   ],
   "subject": {
      "mediaType": "application/vnd.oci.image.index.v1+json",
      "digest": "sha256:329a93ba4c9b1911ed73d8815fba2bebfc102bfcbf0ef95b1f5feca08a1ee3a9",
      "size": 855
   },
   "annotations": {
      "org.opencontainers.image.created": "2024-05-14T19:44:14.206Z",
      "dev.sigstore.bundle.content": "dsse-envelope",
      "dev.sigstore.bundle.predicateType": "https://slsa.dev/provenance/v1"
   }
}

This points to the blob containing the JSON-encoded build provenance attestation generated by attest-build-provenance.

Thanks for the details. Curious in such CUJ, do you know how does https://cli.github.com/manual/gh_attestation_verify works here?
I tried it, but I can't make it work. Can I verify the container image using the attestation pushed to registry? I also submitted a issue in https://github.com/cli/cli/issues/9084.

When using the gh attestation verify command to verify an attestation associated with a container image, be sure to use the oci:// prefix on the image name (per https://cli.github.com/manual/gh_attestation_verify).
The oci:// prefix is used to signal that the artifact being verified is hosted in an OCI registry (and not a local file).
$ gh attestation verify oci://us-west1-docker.pkg.dev/foo/bar:latest  --owner foo

Loaded digest sha256:fa5feadae892be36eeca65fad5e05f71041242adf9cdafb8fa8be930f223777f for oci://us-west1-docker.pkg.dev/foo/bar:latest
Loaded 1 attestation from GitHub API
✓ Verification succeeded!

sha256:fa5feadae892be36eeca65fad5e05f71041242adf9cdafb8fa8be930f223777f was attested by:
REPO     PREDICATE_TYPE                  WORKFLOW
foo/bar  https://slsa.dev/provenance/v1  .github/workflows/oci-google.yml@refs/heads/main

https://cli.github.com/manual/gh_attestation_verify

Looks like the verify command will attempt to fetch attestations associated with the provided artifact from the GitHub API or  verify the artifact using attestations stored on disk? So what's the usage of the attestation stored in registry when we set pushed to registry: true. Looks like the verify command doesn't support it? Could you share the context of the use case of attestation stored in registry when we set pushed to registry: true

When using the gh attestation verify command to verify an attestation associated with a container image, be sure to use the oci:// prefix on the image name (per https://cli.github.com/manual/gh_attestation_verify).
The oci:// prefix is used to signal that the artifact being verified is hosted in an OCI registry (and not a local file).
$ gh attestation verify oci://us-west1-docker.pkg.dev/foo/bar:latest  --owner foo

Loaded digest sha256:fa5feadae892be36eeca65fad5e05f71041242adf9cdafb8fa8be930f223777f for oci://us-west1-docker.pkg.dev/foo/bar:latest
Loaded 1 attestation from GitHub API
✓ Verification succeeded!

sha256:fa5feadae892be36eeca65fad5e05f71041242adf9cdafb8fa8be930f223777f was attested by:
REPO     PREDICATE_TYPE                  WORKFLOW
foo/bar  https://slsa.dev/provenance/v1  .github/workflows/oci-google.yml@refs/heads/main

I think you are using the attestation in the github api when you specify the --owner. Looks like the verify command only supports fetch attestations associated with the provided artifact from the GitHub API or verify the artifact using attestations stored on disk So what's the usage of the attestation stored in registry when we set pushed to registry: true? Looks like the verify command doesn't support it? Could you share the context of the use case of attestation stored in registry when we set pushed to registry: true

@capri-xiyue we may expand the gh attestation verify command in the future to support retrieval of attestations from the registry.
A feature we're currently working on is to update the Sigstore policy-controller with support for attestation bundles. This feature would work with attestations stored in the container registry and allow you to write k8s policies preventing any non-attested images from being deployed.
Bottom line: there is no use case at the moment which leverages registry-hosted attestations, but we're working on a few things which will leverage this capability in the future.

@capri-xiyue we may expand the gh attestation verify command in the future to support retrieval of attestations from the registry.
A feature we're currently working on is to update the Sigstore policy-controller with support for attestation bundles. This feature would work with attestations stored in the container registry and allow you to write k8s policies preventing any non-attested images from being deployed.
Bottom line: there is no use case at the moment which takes advantage of registry-hosted attestations, but we're working on a few things which will leverage this capability in the future.

Thanks for the all these details!

Just published v1.1.2 of the action which should address the original issue you were seeing when NOT using the setup-buildx-action with the Google Artifact Registry.


Compressed save issues

According to a report on reddit, if a save has ever been compressed, even future uncompressed versions are unlikely to work. This may give hints as to other problems.
https://www.reddit.com/r/paradoxplaza/comments/cvxkew/eu4_to_vic2_converter_sometimes_working/

EU4 compressed save games can be manually uncompressed: turn the save into a .zip file and then, extracting it, you can find the actual save in it, which is called gamestate (without extension). The only important thing missing from this file is the date of the save, which is in the neighbouring meta (no extension) file.
While an uncompressed save (opened as if it were a text file) starts with always EU4txt, a compressed one will always start with PK
There could be this message if the converter reads the file starts with PK: "This savefile is compressed. Please, uncompress it before trying to convert"

Yep, which the frontend does. This report was that if you had a compressed save, then in EU4 saved again with it uncompressed, it still wouldn't convert. But I've seen contrary evidence since then, so I'll close this out.


Fix aarch64 centos image issue

This PR fixes problem with building gProfiler on aarch64 architecture.

Apparently - https://github.com/Granulate/gprofiler/pull/611 worked for me on Aarch64 because I pulled the image manually, and Docker was able to find the image with the hash spec despite the incorrect image name for the hash.
Tested master on a clean Docker env, and it fails. Tested this PR and it passes.


Fixed #32007 -- Fixed queryset crash with Q() annotation and aggregation.

ticket-32007
Thanks Gordon Wrigley for the report.
Regression in 8a6df55f2dd5131282084a4edfd48f63fbf8c69a.

@carltongibson Thanks for checking :+1:

👍 Speedy


Why under APIs menu

This content should be under "APIs" in the left-hand menu, since it does not describe an API.

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

ID: d464be99-8698-32d2-e0be-a971279614f5
Version Independent ID: 089635f2-41b6-463a-8a07-90e7cda3c8d1
Content: Azure AI guide for predictive maintenance solutions
Content Source: articles/machine-learning/team-data-science-process/cortana-analytics-playbook-predictive-maintenance.md
Service: machine-learning
Product: unspecified
GitHub Login: @fboylu
Microsoft Alias: fboylu

@algattik Thanks for the feedback! I have assigned the issue to the content author to investigate further and update the document as appropriate.
@fboylu Hi, this is a doc-enhancement issue, can you please loot at it and update the document as necessary? Thanks a lot!

@ramkumarkrishnan Hi Ram, can you look into this please as I am not sure what the issues is and you are the one who edited the article. Thanks.

@YutongTie-MSFT can you assign to  Ram?

@YutongTie-MSFT
Replied via email to Yutong cc: @j-martens and @fboylu
"I see the problem, Yutong. You are saying that this article is “content” but has been categorized under APIs in the TOC on the left pane under "Team Data Science Process Documentation". But I don’t think I can fix the directory structure (there are other doc articles of similar nature under APIs). This will have to be done as part of AI Doc restructuring (which I will follow up separately with the Doc team). Thanks for your feedback though.
Ram"

@ramkumarkrishnan  Hi, want to check if you have any update for this issue? Thanks!

We have put this issue into our backlog to be handled at the next toc review. #please-close


tab rustdocs with crate-level docs on how tab works

Since Readme.md is now linked from Cargo.toml, I think this can be closed.


Merge with https://github.com/simonpasquier/prometheus-scaleway-sd

This is a meta-issue describing how we could merge https://github.com/simonpasquier/prometheus-scaleway-sd into this repository. I'm more than happy to see this happening!
I had a quick look at the code and here are my initials remarks.
Dealing with stopped/deleted servers
IIUC this project doesn't update the inventory when servers are stopped, deleted, etc. This could leave stale targets in the output file. In prometheus-scaleway-sd, I'm keeping track of the servers at each run so the SD application can notify servers that don't exist anymore.
https://github.com/simonpasquier/prometheus-scaleway-sd/blob/master/main.go#L217-L224
Vendoring
I see that this repository doesn't vendor any dependency delegating it to the developer (cf. README.md).
I see a few problems here:

The builds aren't fully reproducible since the dependencies can change at any point in time.
The github.com/prometheus/prometheus/discovery/manager is copied in the repository. My guess is that it is to avoid pulling all SD dependencies (eg AWS, GCP, ... packages) but it also means that any fix to the manager package will have to be manually backported here.

Logging
prometheus-scaleway-sd has a wrapper around go-kit/log to grab logs from the Scaleway API client. This may be useful for troubleshooting.
https://github.com/simonpasquier/prometheus-scaleway-sd/blob/master/main.go#L117-L146
Instrumentation
prometheus-scaleway-sd exposes 2 metrics:

prometheus_scaleway_sd_request_duration_seconds, histogram of latencies for requests to the Scaleway API.
prometheus_scaleway_sd_request_failures_total, total number of failed requests to the Scaleway API.

Thanks to the prometheus/client_golang, it also expose process metrics.
Security
As noted here, the application shouldn't get the token from the command line, reading it from a file is fine.
Release tooling
I've integrated with promu because it eases the generation of binaries across multiple platforms.
Labels
They look more or less the same. No issue there.

Hello @simonpasquier,
Thanks for you review. What you have done is awesome.
As your project's code is not based on ours (not an initial fork), I see 2 options :

You make a merge request in our repository, containing these changes
We try to merge the two repositories (resulting of course in a lot of copy / paste from your code)

As you already gave a lot of your time contributing to a service discovery for Scaleway, I'm not very confortable asking you to take some time again to prepare the MR. If you are OK with that, it would be perfect.
Else, I think the option 2 is more appropriate. We will do that on our side, and we will give you of course credits for what you've done (in the code headers, Readme, and adding you as a contributor in the project if you want to help maintaining this).
What do you think ? Do you agree with option 2, or do you have some time to submit a MR ?
Thanks again,

Option 2 is fine for me. No problem for reviewing your PR and helping the project in the longer term.

Hello @simonpasquier, can you review #3 ? We credited you on the Readme. If this is ok to merge, we will create a new release after merging.
Thank you!


Update free-courses-id.md

What does this PR do?
Added Go course
For resources
Description
This Course Added as mentioned above is in Indonesia and Quality & Quantity Both are not compromised.
Why is this valuable (or not)?
this is for learning go for beginner
How do we know it's really free?
Youtube Playlist
For book lists, is it a book? For course lists, is it a course? etc.
Youtube Playlist
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Thanks, and welcome to free-programming-books!


Required pyobjc dependency can be reduced to only a few

setup.py currently requires pyobj, but it does not appear to need all of pyobjc. It only appears to need the following:
pyobjc-core
pyobjc-framework-AppleScriptKit
pyobjc-framework-AppleScriptObjC

If this is correct, it would be beneficial to change setup.py to limit what it requires. The downside of doing a blanket pyobjc requirement is not only that it is relatively time-consuming installation step: there is at least one package (pyobjc-framework-PubSub) that ends up conflicting with a Python package (pypubsub) because both install files into site-packages/PubSub.

I translated this into a really simple PR, although I haven't tested this to see if it causes problems :)

I translated this into a really simple PR, although I haven't tested this to see if it causes problems :)

@mhucka @glyph Thanks for reporting this issue and translating the issue into a PR. I'm sorry that I just noticed this PR. I'll take a look at it this weekend.


adding ip addresses for feature flags

Thanks for contributing to the Harness Developer Hub! Our code owners will review your submission.
Description

Please describe your changes: \ adding ip addresses for feature flags
Jira/GitHub Issue numbers (if any): \ FFM-11545
Preview links/images (Internal contributors only): __________________

PR lifecycle
We aim to merge PRs within one week or less, but delays happen sometimes.
If your PR is open longer than two weeks without any human activity, please tag a code owner in a comment.
PRs must meet these requirements to be merged:

[X] Successful preview build.
[X] Code owner review.
[X] No merge conflicts.
[X] Release notes/new features docs: Feature/version released to at least one prod environment.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://665df449caa20b1d9aaccc9a--harness-developer.netlify.app


Fix line maximum line length when scores are shown

See https://github.com/jhawthorn/fzy/pull/46#issuecomment-320295466

Feel free to merge this bugfix into your fork.

@ohjames this project is active when I have the time, please quit posting this in every PR

Thank you!

There is another problem in the code: If the terminal is less than eight columns wide (which is hopefully a rare case for most users), then the score will be printed anyway, overflowing every result line. I think this can be fixed with a simple && maxwidth >= 9. (Why 9? Because of the $ that indicates that the result string has been cut off)


feat(acns): add advanced network observability enable/disable for az …

Creates commands for enabling/disabling Advanced Network Observability features:
az aks create --enable-advanced-network-observability
az aks update --enable-advanced-network-observability
az aks update --disable-advanced-network-observability

This checklist is used to make sure that common guidelines for a pull request are followed.
Related command

General Guidelines

[x] Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
[ ] Have you run python scripts/ci/test_index.py -q locally? (pip install wheel==0.30.0 required)
[ ] My extension version conforms to the Extension version schema

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

Thank you for your contribution! We will review the pull request and get back to you soon.

/azp run


Handle non standard "EEP" like some Eltako devices?

How would we handle devices like some Eltako devices they dont have an EEP?
Should we go as fhem it does and create EEP like Mx-xx-xx.
If we go this way we can make it conform to fhem.
What do you think?

i do not know how fhem handles that... i really depends for usually there is room for custom telegrams in the form of MSC or EEP a5-3f-7f... but for non standard stuff eltako is doing we can add our own eep descriptors in some unused range like a5-ff-xx or something... Mx-xx-xx wont work because Rorg must be numeric and match what the telegram sends... but idk... can you elaborate a bit on how this is handled in fhem?

As i understand they created a EEP for devices tehy dont have their own, to address them. https://github.com/mhop/fhem-mirror/blob/e4a2dd72b08db9fb13c934aa21eb056143f6d423/fhem/FHEM/10_EnOcean.pm#L437
We have done something similar for a smokedetector that is using an existing EEP but the data have to interpreted completley different as in the EEP description. So we have named it smokedetector.
If Mx-xx-xx does not work its ok, we can use other ranges.

instead of a range, we can add a way to manually overwrite the selection mechanism. this might be better because if a sensor advertises itself as a5-3f-7f it is conforming to the spec and we need a mechanism to store and select these "custom" telegrams anyways. that could just be an additional field with an arbitrary value we can target. that way we can use fhem ids as well...

related to #158


"Unable to Find Section x" when x heading begins with a link

Here is the heading that's not working:

When I go to click on this heading in the table of contents, obsidian warns that the section cannot be found:

I'm able to use links in any other part of the heading just fine, only the headings that BEGIN with a link cannot be found.

It looks like the TOC is including the pound symbol (#) in the heading in these cases.
If I create a heading like so:

Then the broken entry in the TOC will begin using the new heading:

offtopic:
What is "Hruna's Missing Sled" ?

It's a quest from Rime of the Frostmaiden - https://5e.tools/adventure.html#idrotf,3
also offtopic:
Thank you for picking up development of this plugin! My obsidian had been out-of-date for the longest time and I was sad to see TOC no longer working when I finally updated, since I used it in almost all my vaults.


Escape auto focus

Summary

What was changed:
Added the ability to select a cell by pressing Escape on an auto focused button or anchor element.
Why it was changed:
The change was made due to a functional requirement where consumers need to ability to select the cell and the button element.
Testing

This change was tested using:

[X] WDIO
[ ] Jest
[ ] Visual testing (please attach a screenshot or recording)
[ ] Other (please describe below)
[ ] No tests are needed

Reviews
In addition to engineering reviews, this PR needs:

[ ] UX review
[ ] Accessibility review
[X] Functional review

Additional Details

This PR resolves:
UXPLATFORM-10323

Thank you for contributing to Terra.
@cerner/terra

To make sure we are on the same page here, a double-check on terminology. Under select the cell we mean set focus to the whole cell, not change cells isSelected prop by calling onCellSelect method? I am approving presuming the above, as it's works as expected.

Yes, that is correct.

@cm9361 - Thanks for turning this around so quickly. The Escape key interaction is working well. My only concern is that the screen reader user does not know this interaction is available. I am not sure what the best way is to provide this helper text. Since the focus is on the button or hyperlink, JAWS announces how to interact with those elements appropriately.
@eawww - Is my concern a valid one or do you think AT users will know to press escape when focus is on an interactive element in the cell? If this is a valid concern, do you have any suggestions on how to address it?

@cm9361 - JAWS announcement when focus is on the button is better. Here is a what I heard:
"Column 1, Alert, focus contained in cell. Press Escape to resume table navigation. Button, Column 2. To activate press Enter." Note that Column label and column index do not match. I believe Saad had fixed this.
However, when I press Escape and focus is on the cell, JAWS announces, "Escape, Alert, Focus contained in cell. Press Escape to resume Table navigation. Non-Focusable Text. Column 2. Table navigation resumed." The text in bold is not correct.
When focus is on the cell, JAWS should say, "Cell contains interactable elements. Press Enter to move focus inside the cell."

@cm9361 - JAWS announcement when focus is on the button is better. Here is a what I heard: "Column 1, Alert, focus contained in cell. Press Escape to resume table navigation. Button, Column 2. To activate press Enter." Note that Column label and column index do not match. I believe Saad had fixed this. However, when I press Escape and focus is on the cell, JAWS announces, "Escape, Alert, Focus contained in cell. Press Escape to resume Table navigation. Non-Focusable Text. Column 2. Table navigation resumed." The text in bold is not correct. When focus is on the cell, JAWS should say, "Cell contains interactable elements. Press Enter to move focus inside the cell."

The latest version is working as required. When I pressed Escape, JAWS announced the cell contents and "Table navigation resumed." Thanks also for fixing the text in the column headers.


Controller Bulletin Issues

NIFI-2204:

Move bulletins out of the controller status endpoint.

NIFI-2238:

Ensuring the controller bulletins are rendered on screen.

NIFI-2246:

Ensuring the correct number of bulletins are returned when clustered.

@mcgilman looks good! +1 Was able to verify that all works as expect.


Cannot reinstall

When I follow the uninstall instructions, and then reinstall in W11 Device Manager, the driver seems to install correctly, but I do not get a new Display Adapter added in Device Manager:
IddSampleDriver.inf: Successfully added oem142.inf and installed on 0 device(s)

Resolved by using 'Add legacy hardware' and walk through the wizard.


Update to send graphRequest parameters for iOS

Update to send graphRequest parameters for iOS because returning error finding the user profile data logged

Thanks for the contribution!


onExpand called twice on click by expand column

onExpand called twice on click by expand column - once on cell click and another one for row expand.

thanks @victorkpublic , I will fix it.

@Gi972 fixed on<EMAIL_ADDRESS>


[cpackget] add command shall download the pack and extract the license files to .Download

Describe The Problem To Be Solved
If cpackget extracts the license files without extracting all files of the pack, an graphical UX front-end tool could directly read and display the license without the need to convert and pipe the content.
Suggested solution
cpackget add <pack> command reads the pdsc file and identifies the license files for the <pack> which get extracted and stored in the ./Download/<vendor>.<name>.<version>.<lic_file_name>.<lic_file_ext>
cpackget rm <pack> command removes all files `./Download/...*
Alternative
cpackget add <pack> command reads the pdsc file and identifies the license files for the <pack> which get extracted and stored in the ./Download/<vendor>.<name>.<version>.licenses/ directory.
cpackget rm <pack> command removes directory  ./Download/<vendor>.<name>.<version>.licenses/ and content recursively for all files and sub-directories.

cpackget already supports license extraction:
"args": ["add", "Keil::MDK-Middleware_Graphics", "--extract-embedded-license", "--encoded-progress"]
Added parseable reporting format:
 * L: License file follows
I: [L:F"C:\Users\thode01\AppData\Local\Arm\Packs\.Download\Keil.MDK-Middleware_Graphics.1.3.0.pack.license.rtf"]

After extracting, the external tool can read and show the license. Then call cpackget again using:
"--agree-embedded-license"

Using the original way for cpackget extract license, this has also been added to the MDK Pack Installer.
see cpackget v1.0.1


Posible Pull Request

Hi,
Im working with graphql-sequelize and i´m trait generate belongsToMany relation, i`m use graphql-sequelize 5.3.1 and sequelize 3.30.2.
my relations are the following..
models.User.belongsToMany(models.Skill, {
as:'BatchSkills',
through:{
model: 'UserSkill'
},
foreignKey: 'skillId',
otherKey: 'userId'
});
really the relationship should be as follows
models.User.belongsToMany(models.Skill, {
as:'BatchSkills',
through:{
model: 'UserSkill'
},
foreignKey: 'userId'
});
in the code index.js for dataloader-sequelize
not get paired to this object, and not exist identifierField, but exist this.foreignIdentifier (i replace this keys) and set this.paired = this; (It's very dirty this...)
also in method loaderForBTM, add the following values in include attributes for options without limit
findOptions.include = [{
attributes: [foreignKeyField, foreignKey],
association: association.manyFromSource,
where: _extends({
[foreignKeyField]: keys
}, options.through.where)
}];
attributes: [foreignKeyField, foreignKey]
original : [foreignKey]
i this working for me, but relationships are very rare...
this library is very important for graphql sequelize
sorry for my english: i'm chilean.

What should be the process to be able to access a library npm with a pull request, this post this correct? Https: //stackoverflow.com/questions/33181297/npm-install-from-github-pull-request

Hi Again,
dismiss this, im review this again and i understand ...
this is the right form for belongstomany relations, need specify all relationship for the model.
for example, in relation A - AB - B
A.belongstomany(B,{
through: {
model: AB
}
foreingKey: a.id "aId" ,
otherKey: b.id "bId"
})
but this, is not sufficient...
A.hasMany(AB,{
foreignKey: a.id => "aId"
})
And the corresponding relationships in B and BA
but its necessary change this line in the library code... findOptions.include = [{ attributes: [foreignKeyField, foreignKey], association: association.manyFromSource, where: _extends({ [foreignKeyField]: keys }, options.through.where) }] -> remove attributes property for this options (its important have all properties for the relations, not only foreingkey...


Frequency release file naming needs to use actual chain name

The filenames should reflect the actual chain name.  e.g.  frequency, frequency-rococo, etc...  Currently, the filenames for mainnet are using frequency-mainnet when they should be just using frequency.
This is causing an issue with the Metadata Portal.  When it goes to scrape the metadata from GitHub releases, it is looking for frequency but finding frequency-mainnet and thus failing.  Changing the configuration in the portal configuration is not recommended as there can be many other implications with how this name is used.
[2022-12-01T21:03:45Z ERROR metadata_cli] Network name mismatch. Expected frequency-mainnet, got frequency. Please fix it in config.toml
Therefore, please rename these files accordingly.
e.g.
frequency-mainnet_runtime-v1.v0.9.29.compact.compressed.wasm => frequency_runtime-v1.v0.9.29.compact.compressed.wasm

@demisx It is fine with me.

Just to be clear, this only applies to mainnet.  The local and rococo are fine.


working on halting before quitting

this was how i was thinking about quitting working. Not super graceful but not very invasive either.
It works but the result is the tmux pane that you started tmux in ends up being dead - the quit handling code doesnt clean it up.

duplicated work, other PR has a more graceful shutdown, we'll use that


[#2117] improvement(api): Type adds UNPARSED column data type to handle an unresolvable type from the catalog

What changes were proposed in this pull request?
Type adds UNPARSED column data type to handle an unresolvable type from the catalog.
Why are the changes needed?
If a column data type in the catalog does not have a mapping in Gravitino, an exception will be thrown. We should map all data types from a catalog to Gravitino. However, in practical situations, loading exceptions may occur due to the addition of new data types or insufficient mapping support. Introduce UnparsedType to represent the unparsed data type.
Fix: #2117
Does this PR introduce any user-facing change?
Type adds UNKNOWN column data type that represents an unresolvable type.
How was this patch tested?

TestJsonUtils#testTypeSerDe
TestTypes#testUnparsedType
TestTypeConverter#testTypeConverter
TestMysqlTypeConverter#testToGravitinoType
TestPostgreSqlTypeConverter#testToGravitinoType
CatalogMysqlIT#testUnparsedTypeConverter
CatalogPostgreSqlIT#testUnparsedTypeConverter

cc @mchades, @FANNG1

@mchades, @FANNG1, I have addressed comments of issue and introduced UnparsedType. PTAL.

Could you please add related integration tests?

@mchades, I have added CatalogMysqlIT#testUnparsedTypeConverter and CatalogPostgreSqlIT#testUnparsedTypeConverter. PTAL.

@mchades, I have added CatalogMysqlIT#testUnparsedTypeConverter and CatalogPostgreSqlIT#testUnparsedTypeConverter. PTAL.

Overall LGTM, but missing support for  Iceberg catalog, you need to modify com.datastrato.gravitino.catalog.lakehouse.iceberg.converter.FromIcebergType

@mchades, I have modified FromIcebergType for UnparsedType. PTAL.

@SteNicholas
Thank you for your contribution.
If no more comments, I will merge this PR.

The document related work will be tracked by #2323


feat: support openai structured output as objecct

Description
Support openai structured output a object.
Motivation and Context
Why is this change required? What problem does it solve?
close #1204

[ ] I have raised an issue to propose this change (required for new features and bug fixes)

Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds core functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation (update in the documentation)
[ ] Example (update in the folder of example)

Implemented Tasks

[ ] Subtask 1
[ ] Subtask 2
[ ] Subtask 3

Checklist
Go over all the following points, and put an x in all the boxes that apply.
If you are unsure about any of these, don't hesitate to ask. We are here to help!

[x] I have read the CONTRIBUTION guide. (required)
[ ] My change requires a change to the documentation.
[ ] I have updated the tests accordingly. (required for a bug fix or a new feature)
[ ] I have updated the documentation accordingly.

I tested well locally,thanks @willshang76 @Wendong-Fan


Windows GL Backend high CPU usage

On Windows 10 observed both in my own codebase and the sokol-samples sapp examples.

0.3% CPU usage of cube example on D3D11 backend
18% CPU usage of cube example on GLCORE33 backend

Using these build instructions to repro. These %ages are from Task Manager so are % of total CPU, not of an indidivual core/hyperthread. So the GL backend is pinning more than a full logical core on my machine.
I encountered this on a month old commit, pulled the most recent commits, the problem still persists. I have a mac available to me so I'm going to test whether the same backend also exhibits this issue on macos.

The same program does not appear to have as high CPU usage on my Macbook Air. It uses roughly 18% of one core (as observed in Activity Monitor, which reports %ages of a core), vs. using 18% of the full 8-core CPU on the windows machine (as observed on Task Manager, which reports %ages of the full CPU), so this does seem to be windows specific.

Check if V-Sync is enable (by default)

Not sure what could be causing this. As far as I'm aware the relevant GL context and swapchain code in sokol_app.h should be roughly the same as GLFW, so it probably makes sense to also test against a GLFW demo. There's also no code running in separate threads in sokol_app.h or sokol_gfx.h, so any additional core load probably comes from the GL driver. The only theory that comes to mind is that the GL implementation busy waits for vsync (which would be pretty dumb though).
Disabling vsync is currently not officially supported in sokol_app.h btw, this is mainly to be consistent with callback/event-based platforms where vsync can't be disabled (like the web for instance).

If in Windows 11 GL3 consumes much more memory and power than using D3D11 which consumes less memory and less power. This is according to what the windows task manager tells me.

I'm also seeing busy waiting on Win 11 with _SOKOL_ANY_GL, but it goes away when switching to D3D11 as a backend

Btw, on my Win10 machine the GL backend only has such a high CPU load (25%) only when compiling in debug mode, in release it drops to around 1..2%. I'm not sure what's the culprit, but I can't see any differences in the sokol header code between debug and release mode which would explain this.


Ad Backers and Sponsors from Open Collective

backers and sponsors from Open Collective will automatically appear on your readme. for example: https://github.com/cyclejs/cyclejs#backers
Ad badges on top as well
more info: https://github.com/OpenCollective/OpenCollective/wiki/Github-banner
Before submitting the PR make sure the following are checked:

[ ] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[ ] Used the same coding conventions as the rest of the project.
[ ] Feature branch is up-to-date with master (if not - rebase it).
[ ] Squashed related commits together.
[ ] Added tests.
[ ] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[ ] All tests are passing.
[ ] The new code doesn't generate RuboCop offenses.
[ ] The PR relates to only one subject with a clear title
and description in grammatically correct, complete sentences.
[ ] Updated cop documentation with rake generate_cops_documentation (required only when you've added a new cop or changed the configuration/documentation of an existing cop).

👍


Remove redundant Applicative constraints

These functions in Data.Lens.Traversal had redundant constraints.

If it's not clear why these constraints aren't needed: it's because the use-site will require appropriate constraints from Star f.  If called with a Lens then we only need Functor (Star f); if called with a Traversal it will need Applicative (Star f).


Added dsa 90 days roadmap link in others category

Closes #2200
Fixes Issue
Closes #2200

Changes proposed
To add the DSA 90 days roadmap to placement link in the others category roadmap section.
Screenshots

What command did you run? Have you updated the dependencies? pnpm-lock.yaml is changed

What command did you run? Have you updated the dependencies? pnpm-lock.yaml is changed

I installed pnpm, and ran the command pnpm run dev, but it throws exception. So I ran it using npm run dev. Now I have reverted the commit.

@Mathi-Alagan can you please uncommit pnpm-lock.yml

@rupali-codes I have reverted the commit back, kindly review it once more and say any other changes to be made

@rupali-codes could you review this pull request?

@rupali-codes could you review this pull request?

@rupali-codes @aftabrehan
Please review and merge it :)

@aftabrehan, can you review and merge this please?