Rich content in Chapters

Making rich user experiences possible in podcasts
Now that we have <podcast:chapters> I would like to open up a discussion about the format of the JSON file it can point to, and how we could potentially use that to enable some super awesome stuff.
My motivation for actually starting Podfriend in the dawn of time was that I wanted to enable "rich content". Originally I thought for podcasts to be able to do it through a web UI that I made, but I think we have the chance to go much further than that.
An example
Here is an example of an experience I would like to support: https://apps.npr.org/lookatthis/posts/lovestory/ (you might have to go back to the URL after accepting cookies)
What we have today
For the sake of everyone being on the same page, this is what we have today for the element.

startTime (required - float) The time, expressed in seconds with float precision for fractions of a second.
title (required - string) The title of this chapter.
img (optional - string) The url of an image to use as chapter art.
url (optional - string) The url of a web page or supporting document that's related to the topic of this chapter.

I think the meaning behind these are fine, and still valuable. However the "img" and "url" itself are very limited. Basically what we're expressing here is that while listening to a podcast, the most advanced thing we want to show the listener is an image, and that they can click on that image to go to a URL.
Now, I have 3 ways that I could see making "Richer content" possible.
The simple way
The first and most simple (and I might be leaning towards this) would be for players to send the current progress of the podcast to the "url". That way the HTML page itself could do all the heavy lifting, and basically anything would be possible. But this does require the player to always basically iframe/webview in the URL, and pass the progress with a postMessage to that resource.
The easier way
The other way would be to keep the existing attributes, make title optional and add an endTime as well as an htmlElement string attribute, that would simply be along the lines of:
{
startTime: 10,
endTime: 50,
htmlElement: '<video src="https://example.org/example.mp4" style="min-width: 100%;min-height:100%;z-index:0;" />'
},
{
startTime: 10,
endTime: 50,
htmlElement: 'Click here to donate!'
}

Of course the players would most likely have to do some whitelisting of tags here, but in general it would be pretty powerful.
The hard but most locked down way
If we don't want to enable any and all HTML tag, then the most platform agnostic and locked down would be to have the htmlElement be much more defined (and we can remove the "html" part):

element (optional - struct) if present this is meant to be shown as "rich content" during the podcast.

type (optional - string) Can be video, image, text, link, form, formElement
id (optional - string) Unique identifier
parent (optional - string) Unique identifier of parent component, used for arranging content
style  (optional - string) CSS styles
resource (optional - string) Remote location of the resource (eg. of the video or image, target of a link or form)

Here is an example of what I imagine
{
  "version": "1.0.0",
  "chapters":
  [
    {
      "startTime": 0,
      "title": "Intro"
    },
    {
      "startTime": 0,
      "endTime": 50,
      "element": {
      	"type": "video",
      	"style": { "min-width": "100%", "min-height": "100%", "z-index": 1 }
      	"src": "https://myvideo.com/example.mp4"
    },
    {
      "startTime": 0,
      "endTime": 50,
      "element": {
      	"type": "h1",
      	"content" => "Welcome to the podcast!"

      }
    }
  ]
}

I see pros/cons with all 3 approaches. I think the first and easiest solution is the one that would get the most adoption in the least amount of time, and would basically require no changes to the index (but would require that players took the lead), so I am personally leaning towards that.

@MartinMouritzen These are some really great thoughts around this problem. I think we're definitely thinking in parallel terms here but from the different (web / native) perspectives.
I think this is a "close enough" problem to what chapters is built to solve that it definitely makes sense to try and solve it with chapters.
The Simple Way
Looking at the NPR Link I think the way I'd envision building that is the closes to Solution 1 (The Simple Way). I would envision a standalone web app that takes as parameters both $chapterContent and $currentTimeCode and the web app itself understands how to layout the $chapterContent based on the current $timeCode to render what you see int he NPR Link. Maybe I'm biased though because I'm already just rendering multiple webViews / iFrames in my app so this approach would also work nicely for me. That's not necessarily a reason for this to the solution, but I think the fact that this approach would be easy for web / native would nice.
However, it also means building out a somewhat standalone app for rendering all of this, but I think this would be cool for creators in that it would have the widest appeal / reusability when it's done.
The Easier Way
I think this idea is probably the best approach to just get things working, though it would take a bit more work for the End User to use. it's already almost impossible to get podcasters to create MP3 chapter content and that by far has the most tooling built around it already. I think you could probably build some great tooling for podcasters to help with creation to ensure adoption. I know that's definitely something I'll be looking into for HyperCatcher Studio if this is the way this spec evolves.
The Hard Way
I get the impetus behind this approach but I really hope it ends up not being needed as we'd basically be headed down the road to re-writing HTML I think :D
Once you go down the road to interactivity you do open the door to abuse. I tend to think this might be over-engineering something that's not actually a problem yet, but maybe that's just naive of me. I tend to think there are probably better ways to detect if a podcaster is being malicious with their chapter actions, but I haven't thought through it entirely yet.

I think your "simple way" would be the best here, with maybe some additions.
What I suggest is adding an additional optional tag or attribute for links that define how that link is opened. For example, the default would be to open the link in a browser (either the nearly-full-screen model or the external browser). But you could have an additional "popin" style that could do something like load the URL within a "frame" (or modal) that replaces the cover art. This could work for videos, polls, corrections, and footnotes. Any link tapped from inside that "popin" would then follow the normal link handling (full-screen modal or external browser).

Firstly, @MartinMouritzen this is very well thought out and very forward thinking.  The possibilities here are pretty mind blowing.
I like the simple way for the initial spec also.  The good thing is we now have the tag and the JSON format both in the spec.  We can increment the JSON versioning as new parts are added (easy way) without breaking backward compatibility with apps that only understand the v1.0 format.
This does bring up a good point though.  Should title be optional even in the current format?  I've waffled on that.

I sent an email to the developer of ChaptersApp to see if we can work to merge their JSON format with ours.  They are very, very close already.  I don't think it'd take much effort:
https://chaptersapp.com/faq/jsonExport.html
If we can take their JSON and just slightly tweak it to meet the visions we have as well it may be a big win.

On thing I see right away is the usefulness of "includeInTableOfContents".  Hidden chapter markers are certainly needed.
The only real collision point I see is the naming of the time markers:  "startTime" vs. "startMs".  The rest of the format is almost identical.

"startMs" makes sense in javascript since that's a millisecond universe already.  Would it be unnecessarily cumbersome in other languages?  Currently, "startTime" defines the chapter marker in seconds, with fractions of a second after the decimal.

Said developer of Podcast Chapters here. I'm all for adjusting the format used to what we arrive at here.
For context, my thinking for the property name and unit is that it minimizes the risk of misunderstanding (not least by myself) to have the unit used right in the name, and it feels good to have a unit not in need of the fraction side of the world. Floats always seem to bite me, sooner or later :-) …


Define stats behavior

Define how stats should work.

Atk - Damage the the chalkling does
Def - Multiplier to reduce Dmg from shooting lines and other chalklings
Speed - How fast the chalkling moves
Aesthetic - Multiplier on all stats. Calculated via Thematic (Knight, Dragon) + Body Feature (Shield, Claw, Spikes) Question is HOW?
Life - How many Damage the chalkling can take

Think about the problem that a Knight with Armor AND spikes results in worse stats as a Knight with Armor and a Shield.
Ex: Basic Scripting per Body Feature?

Put Aesthetic in a new Issue #12 maybe brainstorm how to make it / if we need it


Added fizz buzz

Added fizz buzz puzzle to list of interview puzzles.

I feel a bit silly about including this in the repo, but you did a great job on the write-up so I feel guilty about not including it. ;-)
Could you make a small change? You have the results listed as True or False. This might be confusing as they aren't written with a capital letter in Swift. So true and false would be better.

I was unsure if it should be included. :smile:
It's definitely a software developer interview question but it's not really an algorithmic puzzle.

Well, I'll merge it anyway. :-) As punishment I will now give you the task of writing about a very difficult algorithm, he he. ;-)


Jvenstad/submit

Who's a good reviewer for this, I wonder ... Perhaps @tokle or @andreer ?

PTAL @bjorncs

Approved, @bjorncs ? :)


variable product with attributes that have empty values

Steps to Reproduce

create a product with more than one attribute (I used color and size)
create variations with the color attributes and set the size to any size
translate the product

What I Expected
the translated product would have the same attributes and values
What Happened Instead
the translated product size attribute got translated with the wrong value (first one in the list)
My fix
in the file Variation.php i replaced the line 268 from:
if (pll_is_translated_taxonomy($tax)) {
to
if (pll_is_translated_taxonomy($tax) && !empty($termSlug)) {
other than that, thanks for the great plugin! :)

you might be onto something but I don't quite get it...   you are creating variations based on color and size, but then leaving the size blank?

@Jon007 Please have a look at the screenshot. This is a perfectly valid variable product in woocommerce and it also works perfectly in the untranslated version. It means that any attribute value is allowed and can be bought in combination with the set value. It currenty only does not work in the translated products.

it's completely valid to leave the attribute unset for the variation.
I noticed that on issue #359 you mention to not check the box "use this attribute for variations" but when you uncheck that box the choice won't appear to clients in the front end.
in my case, I have a lot of t-shirts which with variable colours but they all have the same sizes. so I create variations for the colours and set the size to any that way they could get any size of any colour.
that configuration works well without polylang.
with woo-poly, the translated product automatically gets the first value if that attribute when you set it to any which isn't correct.

Ok I get it, I guess it never worked with this plugin!
who wants to make this a pull request?


UserDefinedPredicate throw NPE

It throws NullPointerException after upgrade parquet to 1.11.0 when using UserDefinedPredicate.
The  UserDefinedPredicate is:

new UserDefinedPredicate[Binary] with Serializable {
  private val strToBinary = Binary.fromReusedByteArray(v.getBytes)
  private val size = strToBinary.length

  override def canDrop(statistics: Statistics[Binary]): Boolean = {
    val comparator = PrimitiveComparator.UNSIGNED_LEXICOGRAPHICAL_BINARY_COMPARATOR
    val max = statistics.getMax
    val min = statistics.getMin
    comparator.compare(max.slice(0, math.min(size, max.length)), strToBinary) < 0 ||
      comparator.compare(min.slice(0, math.min(size, min.length)), strToBinary) > 0
  }

  override def inverseCanDrop(statistics: Statistics[Binary]): Boolean = {
    val comparator = PrimitiveComparator.UNSIGNED_LEXICOGRAPHICAL_BINARY_COMPARATOR
    val max = statistics.getMax
    val min = statistics.getMin
    comparator.compare(max.slice(0, math.min(size, max.length)), strToBinary) == 0 &&
      comparator.compare(min.slice(0, math.min(size, min.length)), strToBinary) == 0
  }

  override def keep(value: Binary): Boolean = {
    UTF8String.fromBytes(value.getBytes).startsWith(
      UTF8String.fromBytes(strToBinary.getBytes))
  }
}

The stack trace is:

java.lang.NullPointerException
	at org.apache.spark.sql.execution.datasources.parquet.ParquetFilters$$anon$1.keep(ParquetFilters.scala:573)
	at org.apache.spark.sql.execution.datasources.parquet.ParquetFilters$$anon$1.keep(ParquetFilters.scala:552)
	at org.apache.parquet.internal.filter2.columnindex.ColumnIndexFilter.visit(ColumnIndexFilter.java:152)
	at org.apache.parquet.internal.filter2.columnindex.ColumnIndexFilter.visit(ColumnIndexFilter.java:56)
	at org.apache.parquet.filter2.predicate.Operators$UserDefined.accept(Operators.java:377)
	at org.apache.parquet.internal.filter2.columnindex.ColumnIndexFilter.visit(ColumnIndexFilter.java:181)
	at org.apache.parquet.internal.filter2.columnindex.ColumnIndexFilter.visit(ColumnIndexFilter.java:56)
	at org.apache.parquet.filter2.predicate.Operators$And.accept(Operators.java:309)
	at org.apache.parquet.internal.filter2.columnindex.ColumnIndexFilter$1.visit(ColumnIndexFilter.java:86)
	at org.apache.parquet.internal.filter2.columnindex.ColumnIndexFilter$1.visit(ColumnIndexFilter.java:81)

Reporter: Yuming Wang / @wangyum
Assignee: Gabor Szadovszky / @gszadovszky
Related issues:

Release parquet-mr 1.11.0 (blocks)
Insufficient documentation for UserDefinedPredicate.keep(T) (is related to)

PRs and other links:

GitHub Pull Request #663

Note: This issue was originally created as PARQUET-1488. Please see the migration documentation for further details.

Yuming Wang / @wangyum:
cc @gszadovszky

Yuming Wang / @wangyum:
Thank you @gszadovszky Please work on this.

Yuming Wang / @wangyum:
@gszadovszky Thanks a lot.

Gabor Szadovszky / @gszadovszky:
@wangyum,
UserDefinedPredicate.keep(T) shall handle null values because the parquet-mr library do invokes it with a null. This is the only way the filtering API can check if a null value fulfills the UDP.
It did not occur before the ColumnIndex feature because the statistics and the dictionary filters invokes keep(T) only in some special scenarios (e.g. if all the values are null in the column chunk).
So the problem is at the client side. Please, update your code so that keep(T) checks for null value and returns accordingly.
It is another issue that the described behavior is not properly documented. I'll create a JIRA about it.
Closing this issue as not a bug.

Gabor Szadovszky / @gszadovszky:
@rdblue,
Previously, parquet might fail in special cases for both dictionary and statistics filters. However, because of performance reasons, column indexes invokes it all the time. I agree, it is a regression and my previous "fix" of having it properly documented was not enough.
@wangyum,
I'm happy to help you with this or work on it if you don't have the time.

Ryan Blue / @rdblue:
We discussed this on SPARK-28371.
Previously, Parquet did not fail if a UserDefinedPredicate did not handle null values, so I think that it is a regression that Parquet will cause previously working code to fail. I think that it is correct for Parquet to call a UDP the way that it is, but that Parquet should catch exceptions thrown by the predicate and should process the row group where there error was thrown. That way, Parquet can keep the optimization for columns that are all null, but it doesn't break existing code.
@wangyum, would you like to submit a PR for this?


In-memory conversion of Spark Transformer -> Bundle[Transformer]

Howdy,
Is there a simple way having an instance of Spark Transformer convert it into Bundle[ml.combust.mleap.runtime.frame.Transformer] in memory without passing through files? Example:
val indexer: StringIndexerModel = new StringIndexer().fit(ds)
val bundle: Bundle[ml.combust.mleap.runtime.frame.Transformer] = ??? // how do we get the mleap transformer bundle?

@tovbinm This is an interesting use case. I think people have used in-memory nio FileSystem implementations to accomplish similar things in the past. The issue with this is that some data structures, such as decision trees, are serialized directly to a file to avoid large, duplicated in-memory structures.
What is the reason you want to do this in the first place? Would be interesting to know.

I am trying to use mleap runtime, but avoid redoing the serilization of models ;) Right now we leverage vanilla Spark json + parquet serialization.
So for serving I would like to load the Spark model, covert it into mleap format in memory and server scores.

I was able to workaround it using the in-memory file system implementation. Here is the implementation if anyone is curious - https://github.com/salesforce/TransmogrifAI/blob/master/local/src/main/scala/com/salesforce/op/local/OpWorkflowModelLocal.scala#L154


KLE Raw data

Hi!
I'm having a hard time finding a keyboard layout editor compatible raw data for the Redox.
Do you per chance have one?
Many thanks in advance!

Something like this?

Thanks a lot pal!


connecting to custom image

I am having issue connecting over SSH to a custom image I have made. It seems it is trying to use vagrant's keys to connect. I dont see an option to provide a custom key.
transient run -name debian10_x64.orcircd -image debian10_x64,file=/home/brettg/VMs/debian10_x64.qcow2 -ssh-console -ssh-user orcircd -- -nographic -enable-kvm -m 1G

RuntimeError: Failed to connect with command '['ssh', '-o', 'StrictHostKeyChecking=no', '-o', 'UserKnownHostsFile=/dev/null', '-o', 'batchMode=yes', '-o', 'LogLevel=ERROR', '-o', 'ConnectTimeout=3', '-p', '42615', '-i', '/home/brettg/.local/share/transient/vagrant.key', '-i', '/home/brettg/.local/share/transient/transient.key'<EMAIL_ADDRESS>after 90 seconds

Hmm, this is a good issue. Currently transient attempts to connect with the vagrant keying information (for comparability with images on vagrant cloud) and the transient ssh key. My thought was that if you were making a custom image, you would probably just use that key (the private portion available here: https://github.com/ALSchwalm/transient/blob/master/transient/static/transient.priv), but we should definitely document that if we don't and we should probably allow users to specify arbitrary ssh flags, so they can add any keying info or other settings.

I think we should likewise support ssh-key args in the configuration example. My python is a little dusty, but i'll see if I can come up with a solution


update scala version

Fixes https://nvd.nist.gov/vuln/detail/CVE-2022-36944

@realstraw whatcha think

@realstraw ok one more time please


Typescript error on latest version update

Description
When updating from 0.11.0 to 0.18.3
I am getting a lot of TS errors:
node_modules/@pandacss/types/dist/index.d.ts:11:1 - error TS2308: Module './pattern' has already exported a member named 'Primitive'. Consider explicitly re-exporting to resolve the ambiguity.
Link to Reproduction
just use latest version with node16 module resolution
Steps to reproduce

Go to '...'
Click on '...'
Scroll down to '...'
See error

JS Framework
No response
Panda CSS Version
0.18.3
Browser
No response
Operating System

[ ] macOS
[ ] Windows
[ ] Linux

Additional Information
No response

Hi @omridevk,
This issue doesn't contain a reproduction, and it's hard for us to help.
Please create a StackBlitz reproduction, and I'll re-open

@segunadebayo yes sorry, had a really messy day, will add a stackblitz.


better docs for Chef::Knife::Bootstrap#validate_options!

This PR add some documentation for method
Chef::Knife::Bootstrap#validate_options!.

[x] All tests pass
[x] All commits have been signed-off for the Developer Certificate of Origin. See https://github.com/chef/chef/blob/master/CONTRIBUTING.md#developer-certification-of-origin-dco

@tas50 : This way?


Enable the updateRegistrarRdapBaseUrls endpoint

This endpoint will update the Registrar RDAP Base URLs from ICANN once a day.
Note that the endpoint needs a TLD to use for the query, since the ICANN MoSAPI endpoint we use needs a TLD to authenticate (even though the results don't depend on the TLD)
This is unfortunate in an open source project, and we might need to change it to a configured value.

This change is

Wouldn't we just want to add the private config entry first, then use it in the public repo once that has merged in?

I'm going to close this in favor of #141


Suggestion to run WindowsAgentAIOInstall.ps1 directly as admin

Replace " #Requires -RunAsAdministrator " by a condition to run the script directly as administrator for easier deployment.

I have made some changes to the file since so I wont merge this, I am happy adding the lines to the top of the script, or would you rather do a new PR?

Nope, you can add the lines on the top of your script

thanks, added now!


Common.targets support for reference assemblies

Provides an item, ReferencePathWithInterfaceOnlyAssemblies, that
consists of the reference (interface-only) versions of assemblies where
available, allowing a consuming task to be incrementally up-to-date
after implementation-only changes have been made to a reference.
When %(ReferenceAssembly) metadata is unavailable for a given
reference, the new item contains the implementation assembly directly.
Additionally creates a new output item for the current project's
reference assembly by default when $(Deterministic) is true. If this
is created, it is copied to the output directory using the new
CopyRefAssembly task, which copies only if the ref assembly is
different from the current file. If present, the ref asm is passed to
the project's consumes in metadata.
See #1986, dotnet/roslyn#2184.

FYI @jasonmalinowski (this is the core change for MSBuild to handle ref assemblies).

@dotnet-bot test this please

@dotnet-bot test this please
(New CI jobs might be borked)

Relates to https://github.com/dotnet/roslyn/issues/18612


Inital load of two pages

I have a page where I use this plugin but I have a problem as when the page loads (empty) this plugin calls my handler (to async load first page if items), and once more afterwards (loading of the second page).
Next pages are correctly loaded afterwards. One by one.
Is this normal behaviour or am I doing something wrong?
FYI: I tried setting infinite-scroll-distance to either 0 or 1 but there was no difference. Also mind that my initial (empty) page has less content than the height of the viewport if that's maybe significant.

Mind that both of the mentioned problems below are related to asynchronous content loading - because async loading hands off execution back to plugin before content is even loaded.

I've been debugging your plugin for the whole morning and I know what's causing this behaviour. The problem is how plugin works when async data is being requested.

when plugin detects that is has to load additional content (variable shouldScroll - a clumsy name that doesn't do justice here, would be better if it was called shouldCallInfiniteScroll or shouldAppendContent or something) it then
immediately sets checkWhenEnabled variable to true to postpone content loading after plug has been reenabled

And this is wrong. infiniteScroll() should only be postponed when plugin is currently disabled.
Current lines of code related to this problem
if shouldScroll
  checkWhenEnabled = true
  if scrollEnabled
    if scope.$$phase || $rootScope.$$phase
      scope.infiniteScroll()
    else
      scope.$apply(scope.infiniteScroll)
else
  checkWhenEnabled = false

Updated lines of code that only postpone execute when necessary
if shouldScroll
  # this will now only postpone if it's currently impossible to do so
  checkWhenEnabled = scrollEnabled
  if scrollEnabled
    if scope.$$phase || $rootScope.$$phase
      scope.infiniteScroll()
    else
      scope.$apply(scope.infiniteScroll)
else
  checkWhenEnabled = false

But that's not all
I haven't tested other browsers but at least in Chrome when you recreate content (in Angular apps this is constantly happening when you route to new views), browser tries to retain scroll position.

Upper statement is my own reasoning so I'm not sure whether that's true or not, but it surely seems so as I've excluded any other factors that would fire onscroll event - like any browser

This browser behaviour will also unnecessarily load two pages of your infinite scrolling content because ngInfiniteScroll doesn't give browser the time to render its content by synchronously executing handler in handleInfiniteScrollDisabled function.
Why is first page of content not displayed yet? Simply because we usually write synchronous code that sets scope variables. Suppose ngInfiniteScroll async demo where you can see that this.busy is always set synchronously so during a $digest stage this will also synchronously fire handleInfiniteScrollDisabled function which in turn will synchronously call handle again and this will happen before first batch of content is being rendered. handle will therefore calculate invalid element dimensions.
Current lines of code related to this problem
handleInfiniteScrollDisabled = (v) ->
  scrollEnabled = !v
  if scrollEnabled && checkWhenEnabled
    checkWhenEnabled = false
    # this synchronous call is the problem
    handler()

Updated code to let browser do the rendering before actually executing the whole
handleInfiniteScrollDisabled = (v) ->
  scrollEnabled = !v
  if scrollEnabled && checkWhenEnabled
    checkWhenEnabled = false
    # this will hand off execution time to browser before executing handler
    $interval(handler, 0, 1)

Nice analysis, I've run into the same problem. As a workaround I've found setting angular.module('infinite-scroll').value('THROTTLE_MILLISECONDS', 500) can fix the problem by giving a brief window for angular to render the content...
Why don't you PR this?

I've tested it in my project, and this actually does the trick, specially when you are using an ng-repeat of directives with a decent amount of dom manipulation; the current algorithm determines that the next page should be fetched before angular has finished renderring the first set of elements. So, could the author take a look into this, please? ;D

I've tested it in my project, and this actually does the trick, specially when you are using an ng-repeat of directives with a decent amount of dom manipulation; the current algorithm determines that the next page should be fetched before angular has finished renderring the first set of elements. So, could the author take a look into this, please? ;D


No Model Weights

Thanks for your great work. I found no model weights named "sfd_face.pth", could you please provide a copy of this model?

Thanks for your interest in our work. You can download sfd_face.pth from this website.


Example for VM policy query

This is based on the PostgreSQL example but for VMs. Note the changes in type names to reflect current info. The PostgreSQL query likely also needs an update.
Using == to make the query a tiny bit faster compared to the PostgreSQL example.

Hi @ktoliver, thank you for looping me in.
@sbonds, I'll review it soon and let you know.

Thanks for the reminder, github bot!
Is the requested change specific to this doc or is this intended to apply globally to all of azure-docs?

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


[Accordion] Create component

Currently
We don’t have an accordion component.
Problem
While it’s possible to construct an accordion from Module components this is a little hacky. A dedicated Accordion component would be be preferred.
Wanted
Create an Accordion component (specs to be confirmed...)

This is a good reference:

https://www.w3.org/TR/wai-aria-practices-1.1/#accordion
https://www.w3.org/TR/wai-aria-practices-1.1/examples/accordion/accordion.html

Useful for https://github.com/sociomantic-tsunami/nessie-ui/issues/449, we can unblock/revisit this when we come to that issue

Closing this for now... (we might come back to it as part of https://github.com/sociomantic-tsunami/nessie-ui/milestone/23)


Add Signal $SGNL token from Juno Network

Description
Adding token: SGNL from chain JUNO
Liquidity: Pool will be seeded from the SGNL DAO
Checklist

Adding Assets

If adding a new asset, please ensure the following:

[x] Asset is registered to the Cosmos Chain Registry.
[x] Add asset to bottom of zone_assets.json.

The IBC channel referenced in path must be registered to the Chain Registry.
osmosis_unlisted defaults to true (until the respesentation and transferring of the new asset has been validated)

On-chain liquidity
For each new asset, please provide the plan for on-chain liquidity of the asset: (choose one)

[ ] Ready -- A liquidity pool has been created. The pool ID is: ______
[x] Soon -- A pool will be created. (See: Pool Setup Guilde.)

[x] (optional) A preview of the Osmosis Zone app with the new asset added is requested for creating the pool. (Supercharged Liquidity pools cannot be created via Osmosis Zone app)

[ ] StreamSwap -- The token is, or will be, going through a StreamSwap stream; thus, the token should be listed without requiring on-chain liquidity. A Pool ID will be provided in this PR following the stream's completion once the team has had a chance to create a pool using the earned funds.

You can use this URL to view SGNL on Osmosis in the meantime: https://app.osmosis.zone/assets?show_unlisted_assets=true


[FEATURE] custom filters

Is your feature request related to a problem? Please describe.
I put snippets of texts into mixins to make them reusable and in these mixins I add certain conditions to check if this text should render. For example a phone object like this:
{
"name": "Abc phone",
"has_5g": true
}

Right now I am creating mixins like this:
mixin 5g
    if phone.has_5g
          | has 5g

The problem is that there is no way in pug to tell if a mixin would return an empty result, so if I would like to create a header for example
Network connectivity
, it might render the header without any features below it, if there are no "network connectivity" features.
For this toy example I could work around it, but imagine you want to render a list of special features of a product that are not present on all products and where some do not have special features at all.
Describe the solution you'd like
If I am correct and I can't fix it within pug, I thought adding a custom filter like one of those would be useful: https://rosaenlg.org/rosaenlg/3.2.3/advanced/filter.html
This way I could add html comments and "regex them out" in case the list is empty
Describe alternatives you've considered
Fixing it through pug.
Regexing it after rosaenlg generated the text, but I'd prefer to configure everything in one place.

Thanks @reinoldus
Let's start from the code that does not work:
-
  const phone1 = {
    "name": "phone 1",
    "has_5g": true,
    "has_4g": true,
  }
  const phone2 = {
    "name": "phone 2",
    "has_5g": false,
    "has_4g": false,
  }

mixin phoneTest(phone)
  h2
    | network connectivity for #[+value(phone.name)]
  if phone.has_5g
    | has 5G.
  if phone.has_4g
    | has 4G.

p
  +phoneTest(phone1)
  | .
  +phoneTest(phone2)

generates:
Network connectivity for phone 1
has 5G. Has 4G.
Network connectivity for phone 2

The second title should not appear.
Let's continue with a simple solution (which is not so bad):
-
  const phone1 = {
    "name": "phone 1",
    "has_5g": true,
    "has_4g": true,
  }
  const phone2 = {
    "name": "phone 2",
    "has_5g": false,
    "has_4g": false,
  }

  function hasNetwork(phone) {
    return phone.has_4g || phone.has_5g
  }

mixin phoneTest(phone)
  if hasNetwork(phone)
    h2
      | network connectivity for #[+value(phone.name)]
    if phone.has_5g
      | has 5G.
    if phone.has_4g
      | has 4G.

p
  +phoneTest(phone1)
  | .
  +phoneTest(phone2)

generates:
Network connectivity for phone 1
has 5G. Has 4G.

It is relevant for some cases.
And let's finish with the best option, which is a very NLG oriented solution:
-
  const phone1 = {
    "name": "phone 1",
    "has_5g": true,
    "has_4g": true,
  }
  const phone2 = {
    "name": "phone 2",
    "has_5g": false,
    "has_4g": false,
  }

mixin networkTitle(phone)
  h2
    | network connectivity for #[+value(phone.name)]

mixin phoneTest(phone)
  - var params = phone; // trick if networkTitle mixin needs `phone` as a parameter
  itemz {begin_with_general: networkTitle}
    item
      if phone.has_5g
        | has 5G.
    item
      if phone.has_4g
        | has 4G.

p
  +phoneTest(phone1)
  | .
  +phoneTest(phone2)

generates:
Network connectivity for phone 1
has 5G. Has 4G.

itemz knows when the list is empty, and can generate or not the beginning depending on emptiness.
It avoids repeating the conditions in some javascript function.

Thank you for your long response.
I totally missed "itemz", it exactly does what I was looking for, Sorry for the spam!

For compensation:
I am working on a bash script hat renders the html output from "rosaenlg-cli " into plain text with proper formatting right on the shell, because otherwise it is hard to read the text output if it's just one html blob.
I am using pandoc for the conversion https://pandoc.org/ and some "bash magic".
My current solution looks like this:
#!/bin/bash

while read -r line
do
  if [[ $line =~ "BASH-START" ]]; then
    echo "$line" | pandoc --from html --to plain --wrap=auto --columns 100
  else
    echo "$line"
  fi

done < "${1:-/dev/stdin}"

This bash program basically continuously reads the stdout of "npx rosaenlg-cli -w -l en_US templates/products/summary/cli.pug" and runs pandoc, if a trigger word is present in the line.
I put a simple comment into my cli file: //BASH-START . All the other lines are just printed normally.
At the end of the file you have to put "| \n", we need this because "read" waits for a line break to return the net line and enter the loop, The problem is: there are no line breaks in pug, so I am using the "-r" flag of read which tells it to ignore escaped line breaks.
A typical CLI entry file looks like this:
//- Bash comment to tell pandoc to render
//BASH-START
include entry //- Import the "real root file
//- Line break hack
| \\n

The program is then ran as follows: "npx rosaenlg-cli -w -l en_US templates/products/summary/cli.pug | ./html2plain.sh"
It will turn:

Aaaa

Xxxx

Sss

Fff

S

into

Current issues with this program (after that it works fine):

The entire html output has to be on one line

It's massively OT, but I thought it might be useful, but I didn't want to open another ticket for it. I hope it is helpful!

Thanks. Let's leave this recipe here, as it can be useful for other users.
Having a proper development environment around RosaeNLG (or NLG in general) is not simple.
If you refine your scripts, you might do a PR to it in RosaeNLG's documentation, maybe here: https://rosaenlg.org/rosaenlg/3.2.4/integration/rosaenlg-cli.html


GORA-637 Upgrade all dependencies and Maven plugins

This PR is nowhere near complete I am just posting it here so others can pick it up if interested.
This will eventually address https://issues.apache.org/jira/browse/GORA-637

@lewismc +1, Can you please resolve conflicts? :)


[CHALLENGE SUBMISSION] Day 5

Please provide the following information for your submission:
What is your name? (First, Last)
Abhishek Chaudhary
Where is your GitHub Repo ?(With your challenge solution)
https://github.com/abhishek0220/25daysofserverless/tree/master/challenge_5
What Challenge is this for? (Challenge number between 1 and 25)
5
(Optional) Anything else we should know? e.g., language used, location, blog post?
Python with Text Analytics API

From all of us on the Cloud Advocacy team at Microsoft, thank you for creating this issue!
Have a Happy Holiday season!
Feel free to share your solution on Twitter with the tag #25DaysOfServerless

THANK YOU FOR YOUR #25DaysOfServerless SUBMISSION
We checked out your repository. We're thrilled to say your solution is now listed in our Hall of Fame
Thank you for your contributions!
This issue is now resolved! 🎉


[feature request] sort on /items/ tables

Table sort would allow us to more easily review SecurityMonkey search results.
Sort by score, date, and issues would be particularly useful.
Thank you.

I still advocate for a generic table sort widget, but for posterity- if your looking for
how to sort issues by score
there is a search parameter named Type, the value Audit Issues will sort by score.


Ejabberd cert

fixes install issues on azure.

https://ocd.appscale.com:8080/job/Daily Build/3114/
https://ocd.appscale.com:8080/job/Tools-test/1776/


Request: make cuDNN optional?

Great work! A small request:
My understanding is that cuDNN is just for a speed up. Could this be made an optional dependency? (I don't have a nVidia GPU).

Hi Alec,
You're right that cuDNN is just a speed boost-the reason I put it as a dependency is that these models can be huge (training the discriminative models from scratch takes over a week on a single Titan X) so all my code has been explicitly using dnn calls. If you want to avoid this, I would recommend grabbing one of the Voxnet 3D layers (https://github.com/dimatura/voxnet/blob/master/voxnet/layers.py) and just replacing all of the lasagne.layers.dnn.Conv3DDNN calls in the config file with one of them (you could even just directly paste the definition in the config file to test it quickly). The cuDNN calls should all be confined to the config files, so I don't think any other changes are necessary.
Best,
Andy


fix(List): set icon size

Please check if the PR fulfills these requirements

[ ] The commit(s) message(s) follows our guidelines
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build / CI related changes
[ ] Other... Please describe:

What is the current behavior? (You can also link to an open issue here)
icon was too small in list
What is the new behavior?
icon is now ok (around 20 x 20)
Does this PR introduce a breaking change?

[ ] Yes
[ ] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
Other information:

this branch was not created from master at first


Improvements for the Kubernetes Proxy dashboard

I'd like us to apply our UX guidelines for dashboards to the new Kubernetes/Proxy dashboard. Especially:

Set the time zone to UTC
Use the Time series panel type instead of Graph
Set a short default time windows to allow for fast initial loading
Explain panels by using the panel descriptions
Adjust units to fit the dat semantically (CPU usage)

Additionally, there are two panels not showing data (in one installation):

Post Request Latency 99th Quantile
Get Request Latency 99th Quantile

Metadata

The dashboard should have a team label to indicate ownership

@weatherhog Is it correct to assign this to Atlas?

ideally, whichever team owns the kubernetes/proxy dashboard should take care of these issues

@pipo02mix I learned that you added the dashboard. Which team has ownership?

which team owns the kube-proxy component? kass and onprem or cabbage?
Anyway you can assign this to me. I added the dashboard from upstream and I am happy to fulfill with the guidelines

@JosephSalisbury Help us please. Does cabbage own kube-proxy?

@marians kube-proxy is owned by the kaas teams. So this should go the rocket and phoenix

PR is up ⏫

done


star() macro now includes as alias by default, breaking expected behavior

Describe the bug
In previous versions, the star() macro produced a comma-separated list of fields, such as
id,
date,
field

With https://github.com/dbt-labs/dbt-utils/pull/436 as part of 0.8.0 it now will produce a comma-separated list of fields and aliases, such that the output is
id as id,
date as date,
field as field

Steps to reproduce, expected results, actual results
We have a specific usage of a star() macro where

{% set upstream_model = 'model1' %}
{% set partition_columns = star(from=ref(model1)) %}

select
    *,
    first_value(category) over (partition by {{ partition_columns }}
        order by start_date desc) as past_category
from {{ ref(model1) }}

Under dbt-utils 0.7.5 this is the generated output:
select
    *,
    first_value(category) over (partition by
"FIELD1",
"FIELD2",
"FIELD3"
        order by start_date desc) as past_category
from staging.model1

Under dbt-utils 0.8.0 this is the generated output, which fails because we can't alias fields within an over() clause
select
    *,
    first_value(category) over (partition by
"FIELD1" as "FIELD1",
"FIELD2" as "FIELD2",
"FIELD3" as "FIELD3"
        order by start_date desc) as past_category
from staging.model1

System information
The contents of your packages.yml file:
Which database are you using dbt with?

[ ] postgres
[ ] redshift
[ ] bigquery
[x] snowflake
[ ] other (specify: ____________)

The output of dbt --version:
installed version: 1.0.0
   latest version: 1.0.0

Up to date!

Plugins:
  - snowflake: 1.0.0

Are you interested in contributing the fix?
I would be, I think what it needs is flags to see if prefix and suffix exist and if neither exist, don't append the as clause. This is the specific line: https://github.com/dbt-labs/dbt-utils/blob/eb1ec81c7bc58c3fbcd2cbcf4216b276ccd893ba/macros/sql/star.sql#L27
So in psuedocode it'd be something like:
{%- if relation_alias %}
{{ relation_alias }}.{% else %}{%- endif -%}{{ adapter.quote(col)|trim }}

--if prefix is not null or suffix is not null
as {{ adapter.quote(prefix ~ col ~ suffix)|trim }}

{%- if not loop.last %},{{ '\n  ' }}{% endif %}

Yes good call @foundinblank! Even if it wasn't breaking the partition, it's ugly to alias something to itself 😅  I should have thought about this in testing.
If/when you do have a crack at this, could I prevail upon you to add an integration test to the star macro that incorporates a window function or something similar, so that we can catch this sort of thing automatically in the future?

Just found #468 which looks like it solves this!

🙌  great!!


New version: Element.Element version 1.9.5

[X] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[X] Does your manifest conform to the 1.0 schema?

Microsoft Reviewers: Open in CodeFlow

==============================================================================
Task         : Set Label
Description  : Invoke an Azure Function
Version      : 1.0.12
Author       : Microsoft Corporation
Help URL     : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/azure-function
==============================================================================
POST ***?code=***&
Request body: {
  "operationId": "WinGetSvc-Validation-164-35798-20211122-1",
  "PlanUrl": "https://dev.azure.com/ms/",
  "BuildId": "245086",
  "HubName": "build",
  "ProjectId": "ed6a5dfa-6e7f-413b-842c-8305dd9e89e6",
  "PlanId": "d8274cd8-1288-4388-88e4-836b8a14b10e",
  "JobId": "1675216d-bacb-51dc-8a07-d6c38221153e",
  "TimelineId": "d8274cd8-1288-4388-88e4-836b8a14b10e",
  "TaskInstanceId": "b2b29c86-31ce-5b11-3a67-686c38cc8add",
  "AuthToken": ***,
  "BuildRepositoryId": "microsoft/winget-pkgs",
  "PullRequestNumber": "35798"
}
				Response Code: 0
				Response: An error was encountered while processing request. Exception:
Exception Message: Cannot get DNS address for host 'winget.azurefd.net' (No such host is known). (type TeamFoundationServerException)


Extended symbol module

Purpose

The extended symbol module animates a new position for a symbol on a map when the symbol get's an updated position.

Does this introduce a breaking change?

[ ] Yes
[ x] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[x ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test
Click on the map to move the symbol

What to Check
Verify that the following are valid

The symbol moves

I've gone through and rewrote this to make it a bit more reusable. Here are the changes I made:

Created an abstract class for creating shapes that can be animated instead of wrapping the Symbol laye. This extends from the Shape class. Created a AnimatedPoint class. This allows the class to be used with any layer that supports rendering point data; bubble, symbol, heat map.
Moved from setInterval to requestAnimationFrame. This is a lot less error prone, and works much better when running multiple animations at the same time. It also reduces resources and pauses the animation calculations when the page isn't in view (i.e. user is on another tab).
Using a single global animation loop for better performance as well. Able to animate a few thousands points at the same time.
Added support for geodesic and pixel accurate animations (curved vs straight pixel paths).
If you set the coordinates in the middle of the animation, it handles it gracefully animates to the new coordinate from the current animated position.
The duration is set when setting the coordinate but defaults to 0 if not specified and simply jumps to the final coordinate.
A boolean can be specified when setting the coordinate which tells it if it should animate over a geodesic or straight pixel path.

Check out the samples:
https://azuremapscodesamples.azurewebsites.net/?sample=Animate a point
https://azuremapscodesamples.azurewebsites.net/?sample=Animate multiple points
https://azuremapscodesamples.azurewebsites.net/?sample=Shape animaiton module options

Cool, awesome improvements!

I was thinking about expanding this to support additional animation types. Currently it is a linear animation, but it would be fairly easy to override this and support things like acceleration. Also being combining some of the other samples into this module so things like snake line and animating points along a path would all extend from the AnimatedShape class. Good foundation for a future feature in the SDK, or as an open module (looking into do this with a bunch of the modules and go beyond just having these in samples, but also having NPM packages).

I think it is a good idea to group the samples into reusable modules and publish them as NPM packages. It makes sense as a first step towards being part of the SDK. Popular modules might be part of the SDK. Animations gives life to the map and makes it more interesting.
In an animation module, just be able to set a point blink or pulse would helpful. Plenty of use cases.


Add support for hash based URLS in Filter patterns

Related source code
Snippet:
def filter_format_validator(value: str) -> None:
    regex = re.compile(r'^[\.\/:a-zA-Z0-9_?=-]+%\(([a-zA-Z0-9_-]+)\)s[a-zA-Z0-9_-]*$') # THE REGEX <<<

    if not regex.match(value):
        raise ValidationError('URL format string must be in the following format: '
                              '`https://example.com/%(\w+)s`')

Problem
I'm trying to add a filter to a site that uses a hash based router, which basically makes the url look like:
http://some-site.domain.com/#/c/$(id)s
And looking at THE REGEX, it does not allow a hash (#) in the url.
Solution
I'm currently working directly on the container since I can't build the image offline,
So my solution was to change the source code inside the container, so basically the new regex is something like:
r'^[\.\/:a-zA-Z0-9#_?=-]+%\(([a-zA-Z0-9_-]+)\)s[a-zA-Z0-9_-]*$'
                #^^^

And the url is then accepted.
I'm willing to submit a PR if needed.

Adding a hash in fine; feel free to submit a PR with a test in test_realm_filters.py.  We generally want to make the rules for creating filters less unnecessarily limited, but we can fix this now and regardless it will be a helpful test case.

@timabbot, I had a hard time working out the dev env. I can run manual tests, due to running on docker, but since I'm in windows, I'm having a hard time running the unit tests. Any advice on how to set up a proper dev env?

@gioragutt one option is to just get a Linux remote dev VM; if you ask on "#development help", @hackerkid can create one for you in Zulip's Digital Ocean account (or you can create your own).

@timabbot, I can alternatively use the docker compose way. I'm using docker for windows, so if I can either use docker OR a vm, not both.
Can I run tests inside it?  I'll test it out and tell you.
Thanks for the replys, I appreciate it. I'm constantly looking for feedback from our people, I'll surely add issues for the existing points, and future ones as well.

The Docker production environment doesn't support running unit tests (we don't ship the files required in production images).
For this specific issue, @aero31aero can you do a quick PR?  You're working on that subsystem anyway and it seems like it'd be really quick.


Can we speed it up?

Thank you for your job.
After doing a lot of null processing, the speed is much slower than numpy. Can we speed it up?
(py311) kan@DESKTOP-7DFCADR:~/test1/polars_ols$ python tests/benchmark.py --quiet --fast
benchmark_least_squares_svd: Mean +- std dev: 521 us +- 8 us
benchmark_least_squares_numpy_svd: Mean +- std dev: 359 us +- 52 us

in https://github.com/rust-ndarray/ndarray-linalg
I can run intel-mkl directly, but after struggling for half an hour, I still can't run openblas
cargo run --example solve --features=intel-mkl
cargo test --features=intel-mkl

Hi @wukan1986, thanks
when you ran the benchmark did you modify any code to add nulls and change the null policy, or did you run as-is?
Because that original code should do no null handling (ignore) and I wrote the code in a way that introduced little overhead in case null_policy is Ignore.
Assuming that’s what you ran too, then the slowness is due to the code path on Linux using my own SVD solver instead of the optimized LAPACK one.
If it’s the NaN handling that you tested in a custom example that’s slowing things down, can probably do something about that too.
Let me know what you ran exactly, because if slowness is coming from not using LAPACK (like macOS) and you managed to get intel MKL to compile: we can do something nice for Linux to use LAPACK. Can guide you through what to change and if we notice it’s a lot faster I’ll add conditional dependencies for Linux in the project

Hi @azmyrajab
I did not  modify any code, just run it directly.

Hi @wukan1986 can you please do me a favour and try the following code changes -
In your cargo.toml - modify to this block which handles a conditional dependency on Intel MKL ndarray-linalg for linux
[target.'cfg(target_os = "linux")'.dependencies]
jemallocator = { version = "0.5", features = ["disable_initial_exec_tls"] }
ndarray = { version = "*", features = ["matrixmultiply-threading"]}
ndarray-linalg = {version = "*", features = ["intel-mkl"]}

[target.'cfg(target_os = "macos")'.dependencies]
ndarray = { version = "*", features = ["blas"]}
ndarray-linalg = { version = "*" }

[target.'cfg(not(any(target_os = "macos", target_os = "linux")))'.dependencies]
ndarray = { version = "*", features = ["matrixmultiply-threading"]}  # i.e. windows

Then, in least_squares.rs, modify the imports so that both macos and linux try to import the Lapack SVD trait
#[cfg(any(target_os = "macos", target_os = "linux"))]
use ndarray_linalg::LeastSquaresSvd;

And finally modify the block of functions defining solve_ols_svd which map to the conditional dependencies we define to
#[cfg(not(any(target_os = "macos", target_os = "linux")))]
fn solve_ols_svd(y: &Array1<f64>, x: &Array2<f64>, rcond: Option<f64>) -> Array1<f64> {
    // TODO: try to compute w/ LAPACK SVD. Must handle BLAS dependency on linux & windows OS
    //      either use ndarray-linalg or directly call sgelsd from lapack crate..
    solve_ridge_svd(y, x, 1.0e-64, rcond) // near zero ridge penalty
}

#[cfg(any(target_os = "macos", target_os = "linux"))]
#[allow(unused_variables)]
fn solve_ols_svd(y: &Array1<f64>, x: &Array2<f64>, rcond: Option<f64>) -> Array1<f64> {
    x.least_squares(y)
        .expect("Failed to compute LAPACK SVD solution!")
        .solution
}

That should hopefully allow the faster LAPACK method on your system. Obviously if what you do works, I'll try to upstream it into next release - although a bit tricker on my end as I have to deal with linux on many platforms and intel mkl did not run smoothly on all when I last tested it......
Then could you pls run maturin develop --release and re-run your benchmark then? And let me know what you see?

@wukan1986  - or you could just git check out the latest, added some changes quickly there and they seem to pass CI tests
I see roughly 6-8x speed-ups on CI tests of linux old vs new benchmarking to a prior CI run
benchmark_least_squares_svd: Mean +- std dev: 8.49 ms +- 0.09 ms (CI x86_64 linux old)
benchmark_least_squares_svd: Mean +- std dev: 1.32 ms +- 0.01 ms  (CI x86_64 linux new)

Let me know what you see whenever you get around to it

it's is history:
  769  rm -rf polars_ols/
  770  git clone --depth=1 https://github.com/azmyrajab/polars_ols.git
  771  ls
  772  cd polars_ols
  773  code .
  774  maturin develop --release
  775  python tests/benchmark.py --quiet --fast
  776  history

the output is:
# new
(py311) kan@DESKTOP-7DFCADR:~/test1/polars_ols$ python tests/benchmark.py --quiet --fast
benchmark_least_squares_svd: Mean +- std dev: 452 us +- 9 us
benchmark_least_squares_numpy_svd: Mean +- std dev: 377 us +- 62 us

Compared to before, it's much faster
# old
(py311) kan@DESKTOP-7DFCADR:~/test1/polars_ols$ python tests/benchmark.py --quiet --fast
benchmark_least_squares_svd: Mean +- std dev: 521 us +- 8 us
benchmark_least_squares_numpy_svd: Mean +- std dev: 359 us +- 52 us

Interesting, thanks for sharing that. For me, on macOS, it runs faster than numpy maybe because of BLAS backend there - but at least we moved in the right direction.
I have a few more ideas for more speed up (and removing your Intel MKL dependency), but they will take probably a few days to get done correctly.
Leave you with this configuration in the meantime and keep you posted once I have something ready for you to try next !

Hi @wukan1986  - some progress here: part 1 of trying to make things faster
https://github.com/azmyrajab/polars_ols/pull/10
I measured runtime carefully and noticed a significant proportion of time was spent in the thin python layer before the actual rust functions are invoked. For example casting columns to Float64 and applying targets / sqrt_w (even when sqrt_w is 1.) was adding some overhead. So this PR moves all of that to rust which speeds things up slightly (roughly ~7% in my benchmarks)

Thank you, I tested it and it's a bit faster
(py311) kan@DESKTOP-7DFCADR:~/test1/polars_ols$ python tests/benchmark.py --quiet --fast
benchmark_least_squares_svd: Mean +- std dev: 422 us +- 17 us
benchmark_least_squares_numpy_svd: Mean +- std dev: 341 us +- 60 us


How to stop the edit action of the layer and return it to its original state?

This is currently not supported.
You can do following:
var lastLayer;
layer.on('pm:enable',()=>{
    layer._lastCoords = layer.getLatLngs();
    lastLayer = layer;
});

YourResetButton.on('click',(e)=>{
    if(lastLayer){
        lastLayer.pm.disable();
        lastLayer.setLatLngs(lastLayer._lastCoords)
    }
});

Thank for your answer!
Have a nice day!


docs: fix javadoc errors

I'm not sure the warnings fail the build or not.

Thanks @suztomo, these should be resolved now!


Documentation updates previous to release 0.5.0

Changes proposed in this pull request:

Update template
Documentation updates
Fix warnings

Checklist
Implementation

[x] Implementation is correct (it performs its intended function).
[x] Code is consistent with the framework.
[x] Code is properly documented.
[x] PR description covers ALL the changes performed.
[x] Files changed (update, add, delete) are in the PR's scope (no extra files are included).

Tests

[ ] New functionality is tested.
[ ] Tests are created for the new functionality or existing tests are updated accordingly.
[x] ALL tests pass with no errors.
[x] CI/CD pipelines run with no errors.
[x] Test Coverage is maintained (coverage may drop by no more than 0.2%).

Bring commits in fork branch to project branch in order to test rtd builds


[utils] make normalized module serializable

This is useful for turning key parts of on-chain module bytecode into a structured format that can be used by clients. For example: a validator or indexing service might expose an API that returns a JSON representation of a normalized module that a client can use to discover types/public functions in that module.

/land


Not able to login with the website

Hey so for some reason I am not able to get passed the login screen. On brave (A chromium custom build.)

But I got it working on firefox.


s3 Compatible: registry s3 driver support radosgw

Now, registry s3 driver unsupport RadosGW.
The pull request https://github.com/docker/distribution/pull/808 @lorieri aims to this issue. Regrettably,  pull request https://github.com/docker/distribution/pull/808 is not enough beacuse there are several amazon S3 REST API that registry used but RadosGW unsupport:

regionendpoit configurable (refer to https://github.com/docker/distribution/pull/808)
HEAD for object info (refer to https://github.com/docker/distribution/pull/808)
x-amz-copy-source-range (used when upload multi part)
x-amz-copy-source (used when upload multi part)
delete multiple objects (used when delele multiple objects )
complete upload multiple part need http header content-length (needed by RadosGW fix in https://github.com/AdRoll/goamz/pull/392)

This pull request  aims to fix S3 compatibility  mentioned above, AND this pull request should work with pull request https://github.com/AdRoll/goamz/pull/392
Signed-off-by: wangmingshuai<EMAIL_ADDRESS>

@wangmingshuai I am not sure we can consider this until AdRoll/goamz#389 is accepted. Also, please gofmt your code. The tests are currently failing.
Do we have any way of running the s3 testsuite against a RadosGW? Without this testsuite passing, I'd doubt this will work very well.

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "master" git@github.com:wangmingshuai/distribution.git somewhere
$ cd somewhere
$ git rebase -i HEAD~2
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f

Ammending updates the existing PR. You DO NOT need to open a new one.

hi @stevvooe , we have done many tests in our environment , and it worked well . The related PR https://github.com/AdRoll/goamz/pull/392  has been merged . can you reconsider about this PR ?

I would love if you keep my commits instead of copy and paste :)

@wangmingshuai The following needs to be done to get this merged:

[ ] CI testing for this particular use case.
[ ] Update the goamz dependency in Godeps.

Please ensure that @lorieri receives proper credit for his work by preserving the commits.

hi, @lorieri, thanks for the suggestion , my bad , I will wait your PR https://github.com/docker/distribution/pull/808 to be merged , and i will create a new PR to offer my code :)

hi @stevvooe  @lorieri , the new PR https://github.com/docker/distribution/pull/960 , and i don't understand the jenkins error. can you explain it ?


CD-352687 Fix a logging error in job signal handling

[ ] @revathi-murali

Generated Reviewers

:warning: Do not modify anything in this section! :warning:
The content in this section is managed automatically, and any manual changes to it will be ignored and overwritten the next time the code review status is refreshed! View this PR on Cody to see the current code review status.

[lockit v5.0.2] merged via Lockit CLI on 2023-07-05 15:00:30.038042 +0800 CST m=+7.481846188


Allow locally scoped temporary invalid types

Suggestion
🔍 Search Terms

temporary, transient
✅ Viability Checklist

My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

⭐ Suggestion
This suggestion is possibly a bit out there, it is inspired by the design of Clojure's transients. It's possible I've overlooked something obvious and that there are existing patterns for this sort of code which I've just failed to find.
The idea would be to provide some way to mark some code as allowed to fail type checks, but with the expectation that at the end of the code, it is correct.
📃 Motivating Example
Consider this relatively common pattern (usually with a more complex operation than toString).
const obj1 = {a: 1, b: 2, c: 3};
const obj2: { [k in keyof typeof obj1]: string } = {};
let k: keyof typeof obj1;
for (k in obj1) {
  obj2[k] = String(obj1[k]);
}

This code doesn't work, because the initial value of obj2 is invalid - but we don't have a valid value we can use instead - and after the loop the value of obj2 satisfies the type.
💻 Use Cases

The current workarounds for this that I'm aware of usually involve extracting a helper function, and then using some type assertions inside that function to handle the transient state.

You could use const obj2  = {} as { [k in keyof typeof obj1]: string };

You can use a type assertion, as mentioned in the comment before, or alternatively just use //  @ts-ignore to ignore the error.

I'm aware that there are ways to make typescript not check the code - but those open up the possibility of a programmer mistake.
The goal with my suggestion here was to allow a way to make typescript fully check the code, but allow the types to be invalid during an intermediary stage.
I have no idea how possible this is in a type-checking system, it was just something that occurred to me while writing the code and I wanted to write it down somewhere.

Duplicate of https://github.com/microsoft/TypeScript/issues/28503


Windows script only logs avg_ms

While Linux version logs a lot more.

The issue is that on Windows attempting to redirect the output of the Factorio executable is not possible. Thus, all information that is only available from the executable's output can not be logged easily.

This may be workaroundable by editing the executable to function as a console application.
Reference:
https://www.reddit.com/r/factorio/comments/6itmpl/headless_server_chat_log/djael2k/
and
https://www.reddit.com/r/factorio/comments/6vavx6

An idea I had is to run the game with the Linux subsystem for Windows, and see if it is affected by this issue. If possible, the bash script may work with little modification.

By using Visual Studio's developer command prompt, it is possible to use the editbin /subsystem:console factorio.exe command. Performing this action will allow for output redirection of lines not otherwise logged to factorio-current.log. Thus, on Windows it is possible to achieve logging parity with the bash script.

Closed via  f066c4a
At some point in the .16 release output redirection on Windows started working.


inference service runtime problem

Hi,
I tried to execute this sample on a local k8s.
The KFP version on my cluster is more than 2.0, so I have updated the digit-recognizer code to be compatible with kfp-sdk-v2.
After applying the changes and running the code on kubeflow, all of the pipeline steps are done successfully.
But the problem is the created digit-recognizer inference-service on Kubernetes returns an Internal Error complaining about:

No runtime found to support predictor with model type: {tensorflow <nil>}

Any idea about this issue?
Thanks in advance,

Hi, I tried to execute this sample on a local k8s. The KFP version on my cluster is more than 2.0, so I have updated the digit-recognizer code to be compatible with kfp-sdk-v2.
After applying the changes and running the code on kubeflow, all of the pipeline steps are done successfully. But the problem is the created digit-recognizer inference-service on Kubernetes returns an Internal Error complaining about:

No runtime found to support predictor with model type: {tensorflow <nil>}

Any idea about this issue?
Thanks in advance,

Resolved!
Nothing was wrong with the pipeline.
There was an issue with the ClusterRuntimes on the k8s.


NO-ISSUE: Performance CI job: get BRANCH and JOB_TYPE from CI

Will use in https://github.com/openshift/release/pull/55565

/lgtm

/cherry-pick release-4.17


Discovery: Spike: Analytics

There are still quite a lot of unknowns in getting to the root cause of most discovery problems. Can we collect some specific info from the user's system & robot that will help us find patterns in these issues?
Find out the following:
For app:

[ ] User's computer's driver settings (version, date, eee, etc)
For robot:
[ ] Robot system logs relevant to discovery problems
[ ] Robot driver settings

Done


[SPARK-9792] Make DenseMatrix equality semantical

Before, you could have this code
A = SparseMatrix(2, 2, [0, 2, 3], [0], [2])
B = DenseMatrix(2, 2, [2, 0, 0, 0])

B == A  # False
A == B  # True

The second would be True as SparseMatrix already checks for semantic
equality. This commit changes DenseMatrix so that equality is
semantical as well.
What changes were proposed in this pull request?
Better semantic equality for DenseMatrix
How was this patch tested?
Unit tests were added, plus manual testing. Note that the code falls back to the old behavior when other is not a SparseMatrix.

Can one of the admins verify this patch?

ping @gglanzani This bug need fixed ASAP. Can you update code when you're free ? Thanks.

@gglanzani And you the ml.linalg.DenseMatrix looks have the same bug. Can you also update it ?

@WeichenXu123 Done. Let me know.

@WeichenXu123 Done again!

@gatorsmile Add this to white list!

Can one of the admins verify this patch?

Jenkins OK to test
Are you still actively wortking on this and if so would you update it to master?

jenkins ok to test

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/7988/
Test PASSed.

Test build #102408 has started for PR 17968 at commit 311c94a.

Test build #102408 has finished for PR 17968 at commit 311c94a.

This patch fails Spark unit tests.
This patch does not merge cleanly.
This patch adds no public classes.

Build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/102408/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8029/
Test PASSed.

Test build #102450 has started for PR 17968 at commit 1f8b8ff.

Test build #102450 has finished for PR 17968 at commit 1f8b8ff.

This patch fails Python style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/102450/
Test FAILed.

@holdenk Yep, rebased. Sorry for the failed Python style test, fixed now.

Test build #102453 has started for PR 17968 at commit eab84ef.

Test build #102453 has finished for PR 17968 at commit eab84ef.

This patch fails Python style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/102453/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8032/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8033/
Test PASSed.

Test build #102454 has started for PR 17968 at commit c79250f.

Test build #102454 has finished for PR 17968 at commit c79250f.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/102454/
Test FAILed.

Looks like unrelated test failure.
Jenkins retest this please.

Jenkins retest this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8691/
Test PASSed.

Test build #103246 has started for PR 17968 at commit c79250f.

Test build #103246 has finished for PR 17968 at commit c79250f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/103246/
Test PASSed.

Just a gentle ping @gglanzani  if you have time, sorry for the slow review process.

Test build #103365 has started for PR 17968 at commit 69db472.

@holdenk done (Github tries to be smart so it moved the comments, but the logic indeed changed as you suggested).

Test build #103365 has finished for PR 17968 at commit 69db472.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/103365/
Test PASSed.

LGTM, @gglanzani if you can sign up for a JIRA account on https://issues.apache.org/jira/browse/SPARK-9792 I can assign this JIRA to you.

Merged to master

@holdenk thanks. I’m lanzani on Jira


transparent black backround help me pls

hello claviska,
The picture I sent is transparent but its background is black why does it?

See: https://github.com/claviska/SimpleImage/issues/236
I'm led to believe this is an issue with GD that can't be fixed in SimpleImage. The behavior varies depending on your GD version, and for years it's been an unfortunate thing we've had to deal with. Every now and then, someone will submit a patch that fixes it for their use case, only to find it breaks transparency for others.
If someone cares to take the time to dissect this further (most likely through experimenting with GD directly), the SimpleImage community will be forever grateful. Unfortunately, it's not something I'm willing to take on right now.


Fixed Application Crashes When Querying JSON from YAML

Closes #99

Loom Video link:

Loom Link:
https://www.loom.com/share/6ab06c03aa6f4e54877a06dfd7694a24?sid=4a3f11e7-c85d-45c6-9dd3-2f6656cda56a


Revert "Merge pull request #14 from jlord/next"

Reverts Keshia1980/sheetsee#1

revert-1-master

revert-1-master


Remove inactive users reported by the automation

According to the rules for inactivity defined in RFC-0025, the following users have been identified as inactive by a github action (see https://github.com/cloudfoundry/community/pull/937):
@bosh-windows-ci
@cf-bosh-ci-bot
@bbr-ci
@cf-gitbot
@colins
@ShilpaChandrashekara
@mrosecrance
@alejandra-lara
This pr suggest to remove their roles from the FI WG. According to the revocation policy in the RFC, users have two weeks to refute this revocation, if they wish by commenting on this pull-request.

Please retain @ShilpaChandrashekara.

@colins and @ShilpaChandrashekara I updated the pr as you requested.
@rkoster @jpalermo the pr could be merged.


Support dicts for complex types in API calls

This PR supports syntax to use basic dict types instead of our defined model types in all API calls.
So now, you can do this:
[nav] In [2]<EMAIL_ADDRESS>name={"first_name": "Logan", "last_name": "Gore"})

in addition to using the strongly typed objects:
[nav] In [3]<EMAIL_ADDRESS>name=Name(first_name="Logan", last_name="Gore"))

All typing has been updated to show that this is possible. As always, though, the values returned by Stytch's API will be strongly typed.

Do we explicitly need dict, or would a generic Mapping be okay? (See collections.abc)
(I also see some usage of List where perhaps a generic Sequence would work, maybe doesn't even to be ordered and a collection would be fine)
On the other hand also possibly a good case for TypedDict rather than Mapping[str, Any] but I think that explicitly requires a dict subclass.

Also, what will happen if an unexpected key appears in the dictionary? (Or for that matter an unexpected value type, or even an unexpected key type since there's no runtime type check)

Do we explicitly need dict, or would a generic Mapping be okay? (See collections.abc)

We do need a dict since we rely on item if isinstance(item, dict) to determine whether we have a dict versus a pydantic model. We could instead rely on something like a Protocol to determine if the object has a dict() method, but I'd rather not go that direction.

(I also see some usage of List where perhaps a generic Sequence would work, maybe doesn't even to be ordered and a collection would be fine)

True, most of these are only that way for easy serialization into the sent JSON.

Also, what will happen if an unexpected key appears in the dictionary?

In most cases, the user would get a 400: invalid_argument response. This is being provided as a convenience for the developer, though, in cases where they don't want to import the relevant strongly-typed objects. I personally would always recommend the strong typing approach, but this is an alternative with no typing guarantees.

Do we explicitly need dict, or would a generic Mapping be okay? (See collections.abc)

We do need a dict since we rely on item if isinstance(item, dict) to determine whether we have a dict versus a pydantic model. We could instead rely on something like a Protocol to determine if the object has a dict() method, but I'd rather not go that direction.

I think the difference would just be to do an isinstance(item, Mapping) ... but also similar to list vs Sequence it might just be better to stick with the well-known types since they may have some downstream impact ex. on JSON serialization

(I also see some usage of List where perhaps a generic Sequence would work, maybe doesn't even to be ordered and a collection would be fine)

True, most of these are only that way for easy serialization into the sent JSON.

As above

Also, what will happen if an unexpected key appears in the dictionary?

In most cases, the user would get a 400: invalid_argument response. This is being provided as a convenience for the developer, though, in cases where they don't want to import the relevant strongly-typed objects. I personally would always recommend the strong typing approach, but this is an alternative with no typing guarantees.

Oh, I <3 strong types too, understand this is for convenience only, glad there's a sane approach to handling.
I'll say from that perspective TypedDict is the best of both worlds -- it's just a dict at runtime, but to type checkers it's so nice -- but I think generating TypedDict definitions would be a separate thing all on its own.


[FEA REQUEST] Any support to smacc_service_server_client?

What I found is that smacc provides following client_base:

action_client
publisher_client
service_client
subscriber_client

Can smacc provide service_server_client?
Originally posted by @ZhenshengLee in https://github.com/reelrbtx/SMACC/issues/47#issuecomment-993231559

Hello @ZhenshengLee
It is something we have in the scope. It is something we plan to do when we have some gap in the time scheduling.
Nonetheless, any proposal is welcome, anybody could do a PR getting inspiration from the SmaccActionClient or the SubscriberActionClient

@pabloinigoblasco I opened a PR to add this functionality over on the original SMACC1 repo here. Perhaps when you have some time, you can have a look and let me know what you think? I'm not able to port it to SMACC2 just yet, since we're still using ROS Melodic, but I'll be happy to port it once we've moved on to ROS2 and SMACC2

Hello @yassiezar I had a look to the ROS1 PR thanks for that. I had a look to the code and initially it looks fine to me, I just miss one example to test the funcionality.
Once it is tested It shouldnt be hard to port it to ROS2.

Ok fair enough. I'll try and add one when I find some time. Would it be fine to adjust sm_atomic for it, or is there a better one to put it into?

Sm atomic is good enough as a base with two states.
One of the states could make a transition when the service server receives a call so we can verify that the service server is working.

close with 193a8a30d431901e8deb7e31f4169a0f3f5d4097


Usage of dotnet tools on assemblies with CommandLineParser results in unexpected output

I was trying to add CommandLineParser to a asp.net core project of mine to conditionally apply seed and test data on runs.
If I run any sort of tool on the assembly I get output from the Parser.
F.e. dotnet ef migrations list
ERROR(S):
  Option 'applicationName' is unknown.

  -s, --seed    Seed required data.

  -t, --test    Seed  data for dev and testing purposes.

  -a, --auth    Seed auth data.

  --help        Display this help screen.

  --version     Display version information.

I'm assuming that the tools themselves are passing these options or something along the line. Everything seems to work properly, but is this something other people have dealt with in some way?

I ran into this as well - a couple potential solutions:

Don't parse CLI flags when EF.IsDsignTime is true. This only works if you don't need the CLI flags to properly build the IHost object or don't need the IHost object for configuring the DbContext (e.g., in a case where DbContext configures itself independently of ASP.NET server build).

using Microsoft.EntityFrameworkCore;

static void Main(string[] args)
{
     if (EF.IsDesignTime)
    {
        Log.Logger.Here().Information("Design-time detected. Skipping server startup.");
        return;
    }

   // Parse flags as normal, build ASP.NET application
}

Add the applicationName flag to CommandLineParser to avoid the error and build the web app as normal.

internal class Flags
{
    #region ASP.NET Core Flags
    [Option("applicationName", Default = "MyApp", HelpText = "The name of the application.")]
    public string ApplicationName { get; set; }
    #endregion

   // Rest of flags...
}


error when using table compex inside popout

Hi,
I have the following error when using a table compex inside the popout:
TypeError: Cannot read property 'length' of undefined
at Function.tableComplexeEnhanced.cwKendoGrid.setup (casewise-webdesigner-concat.js:71274)
at callBehaviour (casewise-webdesigner-concat.js:4710)
at Object.cwDisplayManager.enableBehaviours (casewise-webdesigner-concat.js:4728)
at w.$scope.doCallback (casewise-webdesigner-concat.js:63934)
at casewise-webdesigner-concat.js:63925
at t.$emit (angular.min.js:1)
at casewise-webdesigner-concat.js:63967
at angular.min.js:1
at b (angular.min.js:1)
at angular.min.js:1
I have already tried to remove C:\Casewise\Evolve\Site\bin\webDesigner\custom\Marketplace\libs\cwPopout\src\cwKendoGrid.js
as specified in the guide.
Evolve version is <IP_ADDRESS>9
Thank you,
Omar

So if you remove the C:\Casewise\Evolve\Site\bin\webDesigner\custom\Marketplace\libs\cwPopout\src\cwKendoGrid.js
or you use the table complexe enhanced, you will not be able to use table complexe inside a pop out


feat(toast): property to specify an element as toast content instead …

Proposed changes
Alternative solution to "[Bug]: Toast html/unsafeHtml not work #394 ". This will allow to specify some element as toast content. A new property toastId will allow specify an element as tooltip content instead of text.
Screenshots (if appropriate) or codepen:
will appear as (this also shows part of corresponding update in docs)

Types of changes

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

Checklist:

[ x I have read the CONTRIBUTING document.
[x] My commit messages follows the conventional commit format
[x] My change requires a change to the documentation, ~and updated it accordingly~.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Can you add also an additional PR in the docs Repo?
I still need to update the Readme Files how we handle the documentation changes in future.
Is there any best practice or do you have any ideas how we should handle this?
Thanks

Can you add also an additional PR in the docs Repo?

I did also the corresponding update in the docs, see here.
BTW as this uses M element from html I think this requires the other PR in docs to be merged first.

Is there any best practice or do you have any ideas how we should handle this?

The docs project is where I work, doing the changes in the library (the git submodule), and also in the docs itself if something is needed to test the changes or update the documentation.
So after the check-in of the changes is done in the library, also a check-in in the parent docs project should be done including the library commit with the changes and also the documentation changes.
What I would suggest is to have a branch in docs equivalent to the v2-dev branch in library.  This branch will point to materializecss submodule v2-dev and is where changes in docs corresponding to library changes should start and be merged.
This will avoid the current situation where docs was pointing to 2.0.3-beta and when I merged the toast-content branch it looked as a lot of changes:

If I had started from a docs "v2-dev" branch pointing to "Merge pull request #435" and done the modifications from there the changes in the library will show only the change in one file, not as now that shows also all the differences between 2.0.3-beta and v2-dev:

So summarising: create a "v2-dev" branch in docs, do a new checking with just materialize submodule pointing to its own v2-dev and do the changes in docs from there. When desired this branch could be merged to the release branch.

Oh yes that makes totally sense, i will try to update the branch confirguration.


example for chart js

I've added an example that uses chart JS. i also added the prepare_chart.js and render_chart.js scripts in the static folder.

Thanks

thank you for accepting my pull request!


As a user I should be able to ask for a PDF representation of the book (rights permitted)

Questions (@jpstroop):

Where should generated pdfs be stored?
What should the filenames of generated pdfs be set to?
What metadata should be embedded in the pdf?  Maybe a URI for the scanned_book?

There's a first pass at this functionality in the pdf branch.  Here's what it does:

scanned_book.to_pdf generates a Prawn::Document with a page for each generic_file in the book
Each page in the pdf containins the original_file from the corresponding generic_file object
Most of the scanned_book metadata gets dumped into the PDF's EXIF
scanned_book.render_pdf(file_path) renders the pdf file

Notes: (see #64)

I'm currently just grabbing the .original_file.content from each generic_file.  This should be changed once JP2 support is set up
you must make sure that images don't exceed the page size.  Default page size is LETTER (612.00 x 792.00).  Currently I'm just telling prawn to limit image height to 792.00.

@jpstroop Can we close this? Maybe open an issue for adding metadata to the PDF?

:+1:


Airy Live Chat: Add Documentation on Source Connection Page

To improve system user experience, we should provide the Airy documentation corresponding to each source on the screen where users will be connecting their sources.
For Airy Live Chat, we should include a link below the large Airy Live Chat heading.

Design Note
We can display an info button alongside Relevant Documentation.

closed by #1797


Split out graph Expr code from Dataframe Expr code

Closes #142
Supercedes #158
This is the smallest step I could think of to start this change.  I may want to play around a little with arrays this week in anticipation of hanging out with @dcherian next week.  I figured it would be good to split this off now if possible.
(sorry for the poor timing, I know it's an active week for this repository)
cc @phofl

from dask_expr import _core as core, _expr as expr
everything = set(dir(object))
c = set(dir(core.Expr)) - everything
d = set(dir(expr.Expr)) - everything - c

What's in core.Expr
{'__dask_graph__',
 '__dask_keys__',
 '__dict__',
 '__module__',
 '__weakref__',
 '_defaults',
 '_depth',
 '_find_similar_operations',
 '_layer',
 '_lower',
 '_meta',
 '_name',
 '_node_label_args',
 '_parameters',
 '_remove_operations',
 '_required_attribute',
 '_simplify_down',
 '_simplify_up',
 '_task',
 '_to_graphviz',
 '_tree_repr_lines',
 'dependencies',
 'find_operations',
 'lower_completely',
 'lower_once',
 'operand',
 'pprint',
 'rewrite',
 'simplify',
 'substitute',
 'substitute_parameters',
 'tree_repr',
 'visualize',
 'walk'}

What's in expr.Expr
{'__add__',
 '__and__',
 '__bool__',
 '__getattr__',
 '__getitem__',
 '__invert__',
 '__mul__',
 '__neg__',
 '__or__',
 '__pos__',
 '__radd__',
 '__rand__',
 '__rge__',
 '__rgt__',
 '__rle__',
 '__rlt__',
 '__rmul__',
 '__ror__',
 '__rsub__',
 '__rtruediv__',
 '__rxor__',
 '__sub__',
 '__truediv__',
 '__xor__',
 '_combine_similar',
 '_combine_similar_branches',
 '_divisions',
 '_is_length_preserving',
 'abs',
 'align',
 'all',
 'any',
 'apply',
 'astype',
 'clip',
 'columns',
 'combine_first',
 'combine_similar',
 'count',
 'divisions',
 'dtypes',
 'fillna',
 'idxmax',
 'idxmin',
 'index',
 'isna',
 'isnull',
 'known_divisions',
 'mask',
 'max',
 'mean',
 'memory_usage_per_partition',
 'min',
 'mode',
 'nbytes',
 'ndim',
 'npartitions',
 'nunique_approx',
 'optimize',
 'prod',
 'rename_axis',
 'replace',
 'round',
 'size',
 'std',
 'sum',
 'to_timestamp',
 'var',
 'where'}

There are other things we could think about doing, like renaming _expr.Expr to Frame or something, or moving stuff within a dataframe directory, but I think that all of that could also come later and doesn't necessarily need to block this first step.  My hope is that this first step is pretty innocuous.

Do you have an idea how we can solve the issue that defining things like addition and multiplication on the expression gets more complex if we split this up? This is why we postponed the initial pr IIRC

Beforehand meaning before calling this on the expression level or on the expression level? I think this is better suited on the collection level generally speaking.


Clicking a tab should focus its table

As a user of tables in the UI, I want clicking a table tab to focus the table, so that keyboard shortcuts work. For example, when I have a value to search in a table, I click the table and type ctrl-f to search - this instead brings up the browser "find in page". So, I have to click on the table somewhere to first focus it, and then start searching.

related: we have an onTabFocus event for panels, but it doesn't look to ever be triggered. todo investigate and remove?


feat: increase coverage process memory

Description

Checklist:

[ ] Pull Request references Jira issue
[ ] Pull Request applies to a single purpose
[ ] I've added comments to my code where needed
[ ] I've updated any relevant docs
[ ] I've added tests to show that my changes achieve the desired results
[ ] I've reviewed my code
[ ] I've followed established naming conventions and formatting
[ ] I've generated a coverage report and included a screenshot
[ ] All tests are passing locally

No longer needed


[Issue] Consider having azd init extract into a new directory

Currently, azd init -t extracts files into the current directory. That gives me the heebie jeebies, since I'm nervous about accidentally not cd'ing into a new directory, so I never use -t nor do I recommend that others use it. (I did accidentally extract into my root directory once and spent a while cleaning up the extracted files, so this overly reactive emotion is somewhat justified).
I would much prefer that -t made a new directory inspired by the template name (with random suffixes as needed), similar to the git clone behavior.
That would also simplify README instructions which currently have to tell people to make a new directory first.

Yep - 100% agree. This is a dupe of #1638 and is planned for the next iteration.

Failing for a non-empty folder should be handled as part of #1638 for GA
Creating a new directory should be handled as part of #181 post GA
Closing this as a duplicate.


Implement events for before and after SaveChanges

Addresses #15910

@SARAVANA1501 Looks like a reasonable start, but still a lot left to do.

Thanks @ajcvickers  for your comment, I am working on the remaining work, If I need any detail will notify you.

Commented on the issue.


Migrate to .NET Package Validation

We're using an old Microsoft.DotNet.ApiCompat package that doesn't evaluate compatible targets, and our own logic in eng/Directory.Build.Common.Targets below is currently causing issues like #33431:
  <Target Name="_ResolveResolvedMatchingContract" BeforeTargets="ValidateApiCompatForSrc" Condition="'$(ApiCompatVersion)' != ''">
    <ItemGroup>
      <_ReferencePathDirectories Include="@(ReferencePath -> '%(RootDir)%(Directory)')"  />
      <ResolvedMatchingContract Include="$(NuGetPackageRoot)\$(PackageId.ToLower())\$(ApiCompatVersion)\lib\$(TargetFramework)\$(TargetFileName)">
        <DependencyPaths>@(_ReferencePathDirectories->Distinct(), ',')</DependencyPaths>
      </ResolvedMatchingContract>
    </ItemGroup>
  </Target>

It was recommended to switch to built-in package validation now that we're moving to net7.0.
This will require some changes to any exceptions we have, so something we probably want to do only when working on changing all packages for #32597.

[ ] Remove old _Microsoft.DotNet.ApiCompat package
[ ] Migrate any exceptions to the new format
[ ] Rename <ApiCompatVersion> and updating tooling, OR
[ ] Add <Target> to use <ApiCompatVersion> to define whatever property the built-in validation needs.

/cc @JoshLove-msft @hallipr @weshaggard

Be sure to take advantage of the cross-platform, cross-framework API checks as described.

There may be some problems:

Can't find anything that would effectively ignore certain attributes being added or removed from a definition like we use now with Microsoft.DotNet.ApiCompat: <ApiCompatExcludeAttributeList>$(MSBuildThisFileDirectory)ApiListing.exclude-attributes.txt</ApiCompatExcludeAttributeList>

I got some answers back from the .NET team that are relevant here:
To just run validation, you can install a global tool:
dotnet tool install --global Microsoft.DotNet.ApiCompat.Tool --version --prerelease

However, they state,

Note that I would not use the CLI frontend if you already operate in an msbuild environment. Reason for that:

Assembly references need to be passed in manually which msbuild targets already do for you.
Package baseline validation in msbuild handles downloading the baseline package (with a given baseline version) and passing it in.
You need an extra tool. APICompat’s msbuild frontend is part of the .NET SDK and can just be enabled via a property.
It’s currently undocumented and based on the download numbers not much used. Expect rough edges and bugs.

Additionally,

Using the msbuild flavor of ApiCompat only requires enabling a few settings inside an msbuild environment as documented (.NET Package Validation - .NET | Microsoft Learn):
<PropertyGroup>
  <EnablePackageValidation>true</EnablePackageValidation>
</PropertyGroup>

If you want to enable baseline package validation as well, set the following property. “x.x.x” refers to the version that you want to compare the just generated package against.
<PropertyGroup>
  <PackageValidationBaselineVersion>x.x.x</PackageValidationBaselineVersion>
</PropertyGroup>

Here are some additional settings for the msbuild frontend:
<PropertyGroup>
  <!—Enable attribute comparison optional rule. -->
  <ApiCompatEnableRuleAttributesMustMatch>true</ApiCompatEnableRuleAttributesMustMatch>
  <!—Enable cannot change parameter names optional rule. -->
  <ApiCompatEnableRuleCannotChangeParameterName>true</ApiCompatEnableRuleCannotChangeParameterName>
  <!—Perform validation in strict mode. This setting enforces public API in left (baseline) and right (current) to be strictly equal. This setting is usually only enabled during servicing in which public API shouldn’t change. -->
  <ApiCompatStrictMode>true</ApiCompatStrictMode>
</PropertyGroup>

<ItemGroup>
  <ApiCompatExcludeAttributesFile Include=”<path-to-doc-ids.txt>” />
</ItemGroup>

So we can still use our $(MSBuildThisFileDirectory)ApiListing.exclude-attributes.txt file.


Fixing the extend method to work on IE.

In IE, events don't have a hasOwnProperty method.  Instead of trusting that the source objects have this method, we call the same on the Object prototype.  If we want to be safer about the hasOwnProperty calling done in e3cc96dbfb58ee873db457e74de7c7774a25bf45, we could create an OpenLayers.Object.has method that also used the Object prototype.
The new tests pass in IE6, IE9, Chrome, FF, and Safari.

I should add that to see this issue in action, open and example in IE (http://openlayers.org/dev/examples/example.html) and click on the map.

Looks good. Please merge.


Update Attachment.php

typo

(BAP-17728)

Fixed in f5a0e44e886b82a7280954258e4c2b410401d8fd and will appear in 4.1 branch as well with the next 4.1.x patch release.

@sadortun  Thank you for the fix.


How to use --alleles in yaml configure of gatk?

I want to get specific SNPs genotype by using gatk UnifiedGenotyper with '--alleles' option. I use options: ["--genotyping_mode", "GENOTYPE_GIVEN_ALLELES", "--alleles", "../input/snps.vcf"] in gatk resources configure. But it seems not working.

Thanks for the report and apologies about the lack of support for this. I added support to also allow custom setting of options using resources with UnifiedGenotyper:
resources:
   gatk:
    options: [...]

If you update to the latest development version (bcbio_nextgen.py upgrade -u development).
This previously did work with HaplotyperCaller (using gatk-haplotype). Out of curiousity, why do you prefer using UnifiedGenotyper over HaplotypeCaller?
Hope this helps and thanks again for the report.


Write docs for variables concept

With the experience of completing the "basics" concept, I find it better to build the concept documentation and the concept exercise code and documentation at the same time.
I'll close this issue with the intent that it will be done in issue #9


[Console-UI]  Make UI changes for DL and expiry queue

Type of change

Enhancement / new feature

Description
 Make UI changes to enable configuration for DeadLetter and expiry address in create/edit address of type queue and subscription
Add a label for DeadLetter type in address list page
Show DeadLetter and expiry queue in address detail header
Checklist

[ ] Update/write design documentation in ./documentation/design
[ ] Write tests and make sure they pass
[ ] Update documentation
[ ] Check RBAC rights for Kubernetes / OpenShift roles
[ ] Try your changes from Pod inside your Kubernetes and OpenShift cluster, not just locally
[ ] Reference relevant issue(s) and close them after merging
[ ] Update CHANGELOG.md

@suyash-naithani @drcoolsanjeev I took the liberty of the rebasing the patch and I needed to make a change to fix the field names.   We'd renamed deadLetterAddress => deadletter and expiryAddress => expiry.  The reason for this is to following the established naming convention already established by the topic field.

There's still a defect which showed against the real backend.  It appears when removing a deadletter or expiry assignment from a queue.  In this case the server requires that a JSON patch remove is used to remove the element.   However it is only valid to send a JSON patch with a remove instruction when the document actually contains the element to be removed.
rfc6902 remove says "The target location MUST exist for the operation to be successful."
I've changed the mock to give equivalent behaviour.   You'll need to add some logic to getJsonPatchObject to use:

an add operation when adding a deadletter/expiry when setting one,
an remove operation when removing a deadletter/expiry when removing one
an replace operation when changing one.

(My original intent was that the UI would use a library (like https://www.npmjs.com/package/fast-json-patch) to produce the JSON patch by comparing the old object with the new one.  That would save you hand crafting the document).