Add support for DPAS with BF16 accumulation

This PR adds support for using the bf16 += bf16 x bf16 variant of the DPAS instruction in the 10-experimental-block-pointer.py tutorial.
I extended the triton_gen.dpas op's verifier to support non-f32 accumulator types, and added corresponding testcases for bf16 (as well as for f16 accumulation which I missed in #1211).
I had to raise the absolute tolerance again (compared to f16 accumulation). 1e-2 for bf16 and 1e-3 for f16 matches what torch.finfo returns as "resolution" for the data types, though that might be just a coincidence.

@whitneywhtsang does this LGTY now?


Add Missing Methods for Execution details

Some endpoints of the following section can't be hit from this SDK.
We would like to ensure that all endpoints can be hit. For this issue, we would like to build out the Execution details
Missing methods:
Get Execution Details - https://docs.novu.co/api-reference/execution-details/get-execution-details

Assigning this to you right now @sccalabr

Assigned ⭐

Assigned ⭐

You can hit the endpoint from the documentation to see how it works and the responses it returnes. I added the reference link. Grab your API key from https://web.novu.co/settings and use it to test it in the docs link. @sccalabr


[DOC]Create documentation for _mget API

What do you want to do?

[ ] Request a change to existing documentation
[x ] Add new documentation
[ ] Report a technical problem with the documentation
[ ] Other

 GET /_mget
POST /_mget
GET /<index>/_mget
POST /<index>/_mget

What other resources are available? Provide links to related issues, POCs, steps for testing, etc.

We have documentation for mget here: https://opensearch.org/docs/latest/api-reference/document-apis/multi-get/. @kolchfa-aws , does this suffice, or is something missing? Thanks.

POST is missing

As shown in the following screenshot, POST mget does exist in the current API reference.


Profiling

Jupyter notebook for testing physical / virtual processing.
Untested, as aria-tools install on OSL is non-trivial.

Will deal with this locally until finalized


emoji is displaying not in original size in # Site Author section

[x] This is a question about using the theme.
[ ] This is a feature request or enhancement.
[x] I believe this to be a bug with the theme.

[ ] I am using the latest version of the theme.
[ ] I have updated all gems with bundle update.
[ ] I have tested locally with bundle exec jekyll build.

Environment informations

Minimal Mistakes version:  4.10.0
Jekyll version: n/a
GitHub Pages hosted: yes
Operating system: n/a

Expected behavior
Want to use original img size of emoji in # Site Author section.

Img resized. Please check screenshot:

Html:

        QA Automation Engineer, Originally from Kyiv, Ukraine

Steps to reproduce the behavior
Add emoji to Site Author column like (by editing the _config.yml):
# Site Author
author:
  name             : "Roman Kukharuk"
  avatar           : "/assets/images/bio-photo.jpg"
  bio              : "QA Automation Engineer, Originally from Kyiv, Ukraine :ukraine:"

@mmistakes html added. seems like height="20" width="20" ignored.

HTML attributes aren't going to fix it as this line is stretching it:
.sidebar img {
    width: 100%;
}

Either add inline CSS to your emoji img elements

Or use the .emoji class and add to the global stylesheet.
.sidebar img.emoji {
    width: 20px;
    height: 20px;
}

Fixed with adding this into _sidebar.scss > .sidebar :
  img.emoji {
     width: 20px;
     height: 20px;
  }

Not sure why there 100% width for all images on side bar, maybe it can be deleted?
Bc without this emoji will work out of the box.

It's there to scale sidebar images like in this test post.
If more people have a use for .emoji in the sidebar then I'd happily accept a PR adding the styles above. Though doesn't seem like that's the case as this is the first I've heard of the issue.


WIP Release v0.3.8

Description
Release version 0.3.8

Add CSV Export for Aliases #383 #388 @DanrwAU
Add Theme support #385 @DanrwAU
Docker documentation update #387 @SloCompTech
Implement FontAwesome 5 #389 @Maaaaattee @DanrwAU
Readability update #390 @RyanUnderwood
Add title support #391 @RyanUnderwood
Add CSV Import for Aliases #392 @DanrwAU

A few notes worth mentioning:

Node version 12.16.0 or above are required for all releases from 0.3.7 onwards.

Complete an npm install after upgrading files

This release moves all theme files, if you've modified them locally, please back them up before upgrading.

This release Implements FontAwesome5 which may change the look of some icons.

This release adds the ability to Import and Export capcodes to CSV
BACKUP YOUR CAPCODES BY DOING AN EXPORT BEFORE TRYING AN IMPORT.
There is little to no validation on the data going in.

Waiting on #393


Pass TERM Signal to VixDiskLibServer

Catch TERM signals in the SmartProxyWorker code that starts the
VixDiskLibServer so that if the worker gets the signal, it will
be sent to the VixDiskLibServer prior to exiting.  The VixDiskLibServer
already has a handler for TERM signals which causes it to shut down.
This is one of a couple of PRs required to handle the following BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1258985
@roliveri @Fryguy @jrafanie Please review.

@jerryk55 Can you verify this works?  We had to remove traps with ruby 2.0 because logging in the signal handler was having this issue:
log writing failed. can't be called from trap context
See: https://bugs.ruby-lang.org/issues/7917
I had to fix it here
Note, you should be able to set the constant in the Smart Proxy worker:
lib/workers/smart_proxy_worker.rb
INTERRUPT_SIGNALS = ["SIGINT", "SIGTERM"]
To:
INTERRUPT_SIGNALS = ["SIGINT"]
I believe, then the WorkerBase#start will raise the SignalException in the else below:
  def start
    prepare
    run

  rescue SignalException => e
    if e.kind_of?(Interrupt) || self.class.interrupt_signals.include?(e.message)
      do_exit("Interrupt signal (#{e}) received.")
    else
      raise
    end
  end

I guess you can do something like this then in the smart_proxy_worker.rb:
  INTERRUPT_SIGNALS = ["SIGINT"]
  ...

  def start
    super
  rescue SignalException => e
    if e.message.include?("SIGTERM")
     # Handle the kill of the sub-thread/process
    else
      raise
    end
  end

It'd be safer to use SIGPIPE. Instead of the child relying on the parent to tell it when it's dying, let the child actively detect the death of the parent.

@matthewd one of the issues is that the child isn't behaving correctly - there is already a timeout that is supposed to happen after x amount of time without any new requests.  I'm trying to actively instruct the child to shut down.  The signal we use to tell the child to shut down should not matter assuming it is one that may be caught and handled.  SIGPIPE is relevant when there is a pipe between the processes.  We are using DRb for interprocess communication in this case.

@jerryk55 sorry, I meant create a pipe between the processes.
Pass a new pipe in as stdin, and then have the child die when stdin closes.

@matthewd this would also require that the parent and child processes be actively communicating via the pipe.  Closing one end of a pipe in and of itself would not generate the signal.  So yes, we could then set up a separate pair of threads responsible for heartbeating across the pipe, but I'm not sure we are making anything simpler by doing this.  We already have a timing thread in the server (child) that seems to be having issues waking back up and killing the process appropriately in certain situations.  I'd rather concentrate on getting that timer to work successfully, and handle propragating signals that the worker gets to the child appropriately.  In this way, should we choose to handle different signals in different ways we would be prepared for it.

Thread.new { $stdin.read; $stderr.puts "Parent went away"; exit }

That neither wakes up the thread nor generates a SIGPIPE in a test program I've written which spawns a child and sets up a DRb communication channel as well as using the pipe.  The child does get the SIGINT when I Control-C out of the parent (which I am handling by printing a message but not exiting)  but the child continues to run.

:confused:
This does what I expect:
a, b = IO.pipe

fork do
  trap('INT') { puts "ignoring interrupt" }

  b.close

  Thread.new do
    a.read
    puts "parent went away"
    exit
  end

  puts "child #$$ going to sleep"
  sleep 120
end

a.close
puts "parent #$$ going to sleep"
sleep 60

Sorry yes.  We use Kernel.spawn in this scenario and pass the FD as an environment variable so there were several other steps involved but this does work.

and pass the FD as an environment variable

Woah, holy complication batman! We, umm... we don't need to do that.

See #4318 for... a less unhelpful comment.

@matthewd just some feedback - after successfully writing some test programs that do what we want, I implemented this change, using most of your suggestions in #4318.  Unfortunately something is closing the write end of the pipe in the parent - the thread in the child (VixDiskLibServer.rb) is gaining control and shutting down the process after about 15-20 seconds, even though the SmartProxyWorker  is in the midst of fleecing the VM.  This is sad for all involved.

@jerryk55 are we keeping a reference to it somewhere? Otherwise it'll just get closed when the parent GCs.

Yup.  That was it.
On Thu, Sep 17, 2015 at 1:37 PM, Matthew Draper<EMAIL_ADDRESS>wrote:

@jerryk55 https://github.com/jerryk55 are we keeping a reference to it
somewhere? Otherwise it'll just get closed when the parent GCs.
—
Reply to this email directly or view it on GitHub
https://github.com/ManageIQ/manageiq/pull/4277#issuecomment-141161815.

--
--
Jerry Keselman
Red Hat Virtualization<EMAIL_ADDRESS>| p.<PHONE_NUMBER>

This PR will be closed in lieu of #4411


Would be nice to have TK show the distance something can be thrown

Would be able to roughly figure out how much something would weigh. Then subtract that weight from the strength and compare on throw table.


Totroise never deletes first 4 layers

Overview / Motivation
evictOutOfPBase in ninja_tortoise.go evicts entries from the counting and voting maps of the tortoise, we shouldn't delete the entries that are less far away in the past then hdist.
though when running evictOutOfPBase we only check the the layer itself is smaller than hdist and then return. resulting in that (when hdist=4) we never delete layers 0-4.
code:
func (ni *ninjaTortoise) evictOutOfPbase() {
	wg := sync.WaitGroup{}
	if ni.pBase.Layer() <= hdist {
		return
	}

The Task
make sure we return only when the layer is within a distance of hdist (as layer - hdist) and not hdist itself.
Implementation Notes
TODO: Add links to relevant resources, specs, related issues, etc...
Contribution Guidelines
Important: Issue assignment to developers will be by the order of their application and proficiency level according to the tasks complexity. We will not assign tasks to developers who have'nt introduced themselves on our Gitter dev channel

Introduce yourself on go-spacemesh dev chat channel - ask our team any question you may have about this task
Fork branch develop to your own repo and work in your repo
You must document all methods, enums and types with godoc comments
You must write go unit tests for all types and methods when submitting a component, and integration tests if you submit a feature
When ready for code review, submit a PR from your repo back to branch develop
Attach relevant issue to PR

wrong flow description, eviction starts from 0 and continues, the condition you see is to exit in the case where pbase-hdist < 0 so the layers we skipped are collected as soon as the condition is false, no bug.


[SPARK-7321][SQL] Add Column expression for conditional statements

Add case when else support in scala/java/python.
https://issues.apache.org/jira/browse/SPARK-7321
@rxin

Can one of the admins verify this patch?

@kaka1992 I think it's supposed to be
when(df.age == 1, "one").when(df.age == 2, "two").otherwise("unknown")

@rxin  This would be weird in scala as $"age".when($"age" == 1, "one").when($"age" == 2, "two").otherwise....

Scala also supports df("age"). I think we can add a separate function later on that does what you are proposing here, but that's not the "when" function.

@kaka1992   would you have time to update this?

Thanks, @kaka1992. I submitted a new pull request based on your work: https://github.com/apache/spark/pull/6072
The commit will go in under your name.


New version RoME: 0.3.4

Registering: RoME
Repository: https://github.com/JuliaRobotics/RoME.jl
Version: v0.3.4
Commit: 5ce9fb8b244645fc2e0e153284c7fd7f40dec0f2
Proposed by: @dehann
Reviewed by: @dehann
Reference: https://github.com/JuliaRobotics/RoME.jl/issues/173

Hi, okay thanks will do, and want to get the compat definitions right!  Just to be sure, I have two questions on Project.toml [compat] since JuliaRegistries/General is automatically generated from package info -- the author should not directly interact with this PR General.  I don't have direct access to this PR that JuliaRegistrator created:
1.) In order for a package author to control version numbers of dependencies, we should populate Project.toml's [compat] field according to Pkg.jl docs?
2.) To fix the compat issues you mentioned above, I am starting to populate Project.toml as follows, however, there is now likely significant variation between what is in General and what I require.  That is a failing on my part in not specifying [compat] sooner.  I'm fighting through the Travis issues now to try rectify and sufficiently control the versioning of dependencies forward.  (I don't think I'm alone in this boat though).
PS, note that even Pkg.jl's Project.toml itself does not even specify a julia compat, as seems necessary... Maybe good to use that repo as an example?


Added Fingerprint for 2019 Civic Hatchback EX

This pull requests adds a fingerprint for <Honda - Civic - 2019 - Hatchback EX>.

I only wanted to PR the commit "Added Fingerprint for 2019 Civic Hatchback EX" to you guys.  The other commits were me trying to update my repo after I submitted the PR, not intended for them to end up here.


Update minimum setuptools requirement to supported version

The minimum, currently 2.2 is too low. 2.2 doesn't support local version segments in requirements. 5.4.1 also doesn't. We should bump it to the first working version that does.

fixed in #352


add scope registration test

I wanted to write some tests for #439 but couldn't find a good way to doit, so instead I added a general test to make sure the scope is set when registering a SW in browser with a scope.

@lilfolr CC:ing you since you authored #439. Not sure if you have any interest in / input on this, but if you do, feel free to share it :)

Yeah, definitely interested.
I'll have a look on Sunday :)

I want to merge this, but I believe scope is always present of the registration, even if it wasn't passed via params. Browser figures out the scope on its own and then uses it.

Oh, nevermind. I misunderstood what it does. Merging. Thanks @GGAlanSmithee ❤

Thank you @NekR 💯


Does Microsoft 365 Learning Pathways work in Gov tenants?

[Enter feedback here]
Does anyone know if there is something that would prevent this install from happening as an app catalog into SharePoint in a government tenant (GCC not GCC High)?

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

ID: d7fdefed-2cda-089c-04b3-306a368b91a0
Version Independent ID: dee3f5ae-9643-8d86-ca75-d2934fae0424
Content: Microsoft 365 learning pathways setup options
Content Source: CustomLearning/custom_setupoptions.md
GitHub Login: @pkrebs
Microsoft Alias: pkrebs

I have the same question, but also for GCC High ;)


Eventhub: Added Namespace OperationsID API

Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[X] I have reviewed the documentation for the workflow.
[X] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[X] The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

[X] Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
adding/removing APIs.
adding/removing properties.
adding/removing API-version.
adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

[X] If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Please follow the link to find more details on API review process.

/azp run automation - sdk

/azp run automation - sdk

/azp run automation - sdk

Can one of the admins verify this patch?

hi @v-Ajnava could you pls address review comments? thanks.

hi @v-Ajnava just kindly ping, any update or plan?

ping for update

ping for update

hi @v-Ajnava, are you still on this PR? Is it ok to close it now if not ready for reviewing? thanks.

@yungezz apologies for delay in response, was on some other task. will reply to the comments.

@yungezz and @ryansbenson developer is working on implementing the comments.
let us know you views on keeping the PR open or closing it.

hi @v-Ajnava as long as the PR is valid and actively been worked on, it's ok to keep it open.

Any ETA so far?

hi @v-Ajnava since no update in several months, is it ok to close the PR for now? thanks

no response from PR owner for a long time. removing ARM review labels.

hi @v-Ajnava, will close the PR for now since no activity since mid of Jan. It's out sync with master branch already. Pls feel free to re-open or create new PR and assign me for reviewing. thanks.


Fix #3017: Whitespace characters surrounding a URL should be ignored

My attempt to fix the issue I reported. Feel free to comment my changes, especially if you don't agree with them.

@geckon thank you!
For the record, this is a potentially breaking change for someone, hence why it has to wait for inclusion in the 3.x series.

:sparkles: :cake: :sparkles:

Thanks for this @geckon


Inf fix

Fixing the infinite error problem when no ignition found.

Umm, somehow the pull request has 45 commits not two (or one - you could easily squash your second as a fixup).
Please can you rebase (or interactive rebase to squash your commits together)  onto the master branch?

Yeah, I'll change that. It's because I originally pulled from the prometheus version which is ahead of the comocheng one.

didn't need to close the pull request. Could rebase then force-push to the same branch and it'll update the PR. (could still do so, if you reopen this one)

I was going to just merge into master locally, reset my master to origin, make the change a single commit, and then push to master to make things simpler, if that works?

The simulaiton.py file that I'm making the change in is significantly different when I revert it back to the comocheng version so  I'm not sure if it makes sense to wait until comocheng is up to date with prometheus before pushing it. It seems like the fix would still work on the old version but I'm not 100% sure as I've only tested it on the prometheus version. That's the version I used for Eric's model as well.

We should probably be up to date with Prometheus. Why do we need to use an out of date version?

Yeah, I'm saying that since I'm PRing the change into the comocheng repo, I had to revert my local master to the comocheng master because comocheng is currently behind prometheus. That's where the other 43 commits were coming from. I was trying to ask if we should get the comocheng repo up to date with prometheus before I push?

Ah, I see. Sorry I was confused. Yes, get the comecheng master up to date. But also, I suggest opening your PR aganist the prometheus master.

Once comocheng is up to date, would it make sense for me to just push directly to comocheng master and then make a PR from comocheng to prometheus?

I wouldn't make a PR from master, because you never know when the PR will actually get merged, and what else will happen on Master in that time. Use a topic branch. Whether it's on comocheng or on vayner-s is the question. Either is OK. Benefit of comocheng is that other people (like me) can more easily update / fix / maintain / rebase.

Ok, so useing the inf_fix branch from comocheng but PRing directly into prometheus master instead of merging into comocheng master would work then?


logCollectionRegExps not working?

Using the upgraded run-vcpkg with the logCollectionRegExps option, it didn't seem to pick up the build failures in this log, despite the regex matching the 1st log path:

it turns out that the wrong ToolRunner used in the unit test is not the problem. It was a wrong usage of RegExp.lastIndex the actual root cause. I also augmented the default regular expression passed onto the logCollectionRegExps input. Let me know next time an error occurs whether this is working!

Will do!

It should be fixed in<EMAIL_ADDRESS>or simply run-vcpkg@v7. Please report back!


Add fp16 flag to test runner to check models quantized to fp16

Also, added flags to adjust the tolerance.

Is this linked to a ticket in our project board?


Fix iterable regression in concat introduced by #510

Before #510, concat transparently accepted an iterable of IamDataFrames, but the introduction of the subscripts dfs[0] and dfs[1:] broke this behaviour.
Here we explicitly cast to iterable using iter to work with iterables.
As an alternative implementation an explicit cast to list would work similarly.

Thanks @coroa - can you give an example of where the current implementation fails? Which iterable that's not a list or a series are you using?

When passing an empty list to the new implementation, this yields
StopIteration:

whereas the previous implementation returns
IndexError: list index out of range

In contrast, pandas returns a more intelligible
ValueError: No objects to concatenate

But it seems that the object returned by iter() does not have a len() attribute, so adding a straightforward test for length seems not possible with this approach. Maybe casting to list is smarter? [It's also what pandas does...]

Sorry for the delays, I was on holidays and avoided touching my computer as much as possible.

Thanks @coroa - can you give an example of where the current implementation fails? Which iterable that's not a list or a series are you using?

Well, in my case it was just some itertools foo, ie does not matter too much.


Update CodeGen Xeon and Gaudi Kubernetes codegen.yaml and docs

Description
This PR has a few updates based on issues that I ran into when deploying the CodeGen example on a cluster for xeon and Gaudi. The following issues are addressed in the PR:

I added a note about potentially using a persistent volume claim instead of having to create the /mnt/opea-models directory on the nodes
Deploying the codegen.yaml files gave an error like:error: error validating "codegen.yaml": error validating data: [unknown object type "nil" in ConfigMap.data.http_proxy, unknown object type "nil" in ConfigMap.data.https_proxy, unknown object type "nil" in ConfigMap.data.no_proxy]; if you choose to ignore these errors, turn validation off with --validate=false

This error is because the ConfigMap in the yaml has a few env vars that are just empty (nil). Changing these to have empty quotes "" fixes the issue.
I added a note about it taking a couple of minutes for the service to start and how to check the logs, because I ran into an issue where the curl command failed like "curl: (18) transfer closed with outstanding read data remaining" and it was just because the service wasn't ready yet. Also, knowing how to check the logs is useful for watching the status and figuring out if the curl command is failing because of an error.
When running on Gaudi wasn't working for me ("RuntimeError: synStatus=26 [Generic failure] Device acquire failed.") until I added the hugepages-2Mi/memory to the resource limits. The habana documentation for Kubernetes shows it using hugepages-2Mi and memory in the resources, so that seems to be the recommended config.

Issues
N/A
Type of change
List the type of change like below. Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[x] Others (enhancement, documentation, validation, etc.)

Dependencies
N/A
Tests
Manually tested the changes on a Kubernetes cluster with Xeon (GNR) and Gaudi 2 nodes.

Reopened as PR #613 because rebasing seems to have gone wrong after trying to fix the DCO check


langchain_google_genai: Update _parse_chat_history in chat_models.py

Description: Add support for ChatMessage in _parse_chat_history, making the model compatible with histories that contain this type of message. For example, streamlit_agent/basic_streaming.py.
Issue: None existent.
Dependencies: None extra.

cc @lkuligin

thanks for adding this!
could you add a unit (and ideally modify an integration) test for that, please?

@lkuligin I am sorry, I've been particularly busy in the past few weeks, so only just coming back to this. To be honest, I am not very familiar with the unit test standards and practices of the repo, as this is my first PR here. Any guidance would be helpful. Thanks!

thanks for your contribution!
could you send your PR towards https://github.com/langchain-ai/langchain-google, please? these integrations are being moved there. thanks again!

thanks for your contribution!
could you send your PR towards https://github.com/langchain-ai/langchain-google, please? these integrations are being moved there. thanks again!

closing as per @lkuligin's comment


Decode maxicode Error

Hi , I have tried pyzxing0.3.5 and it's very good! Thanks!
But it seems there are some little errors in it.
When i used [maxicode] picture for test, both of decode[array] and decode [filename], will get this error.

But pyzxing0.3.3 can recognize maxicode successfully!  (0.3.4 also❌ )
Originally posted by @zhaozhen1002 in https://github.com/ChenjieXu/pyzxing/issues/17#issuecomment-794906742
Thank you! It seems that points information can't be parsed successfully. I will look into it.

This type of barcode has no points information. I fixed it. @zhaozhen1002


Change builder to sync style API and remove in-memory working queue

Since the build working state is persisted in the cluster with the Build CR, there is no need for an in-memory working queue. Besides, as the builder is reused in pod build strategy synchronous flow,
the API is changed to sync style for ease of use.

Unrelated, but to solve that volume issue... what about:

Creating a pod with a init container and a std container
The init container is the camel k builder that writes data into a emptyDir volume
The std container is the kaniko pod that pushes the image into the registry

That is independent from the volume used as cache.. Wdyt?

That is a very good idea, conceptually better than using a volume for ephemeral data such as build output.
There is still the question of the Kaniko cache that gets warmed in a separated pod, as well as the Maven cache potentially. But these may be considered optional.

@astefanutti @nicolaferraro is something to be done in this pr or can be done in a dedicated one ?

@lburgazzoli it should be done in a dedicated PR.


RuntimeBinder Memory leaks

Method GetProperty(object target, string name) in the PathBinder.cs  and IteratorBinder.cs cause memory leak in highload application. Could you use another way for getting property value instead of using RuntimeBuilder class?

PR welcome

Hi!
Maybe we can use ExpressionTrees instead RuntimeBuilder?
For example:
var parameter = Expression.Parameter(typeof(object));
var cast = Expression.Convert(parameter, value.GetType());
var propertyGetter = Expression.Property(cast, propertyName);
var castResult = Expression.Convert(propertyGetter, typeof(object));//for boxing
var propertyRetriver = Expression.Lambda<Func<object, object>>(castResult, parameter).Compile();
var retrivedPropertyValue = propertyRetriver(value);
I know that's not a cheap operation because expression threes should be compiled. But i think that's it should be faster then DLR. What do you think?

Inside of the Binders, this is specific to objects that implement
IDynamicMetaObjectProvider
... so taking the time to see how the CLR deals with that interface and
using that as a starting point would be a good approach.
On Thu, Aug 1, 2019 at 10:20 AM DmitryDem<EMAIL_ADDRESS>wrote:

Hi!
Maybe we can use ExpressionTrees instead RuntimeBuilder?
For example:
var parameter = Expression.Parameter(typeof(object));
var cast = Expression.Convert(parameter, value.GetType());
var propertyGetter = Expression.Property(cast, propertyName);
var castResult = Expression.Convert(propertyGetter, typeof(object));//for
boxing
var propertyRetriver = Expression.Lambda<Func<object, object>>(castResult,
parameter).Compile();
var retrivedPropertyValue = propertyRetriver(value);
I know that's not a cheap operation because expression threes should be
compiled. But i think that's it should be faster then DLR. What do you
think?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/rexm/Handlebars.Net/issues/308?email_source=notifications&email_token=AABCU2NWQ2ETRRX3YITUIZDQCLWKLA5CNFSM4IIQ3JDKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3KYBDQ#issuecomment-517308558,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABCU2K3HL6LIIVAIXSIYR3QCLWKLANCNFSM4IIQ3JDA
.

Yea, sorry, didn't notice

What do you think about CallSite caching?  I think it's should help. The main problem occurs when creating CallSite objects.
For example:
internal static class CallSiteCache
{
private static readonly ConcurrentDictionary<string, CallSite<Func<CallSite, object, object>>> getters = new ConcurrentDictionary<string, CallSite<Func<CallSite, object, object>>>();
    internal static object GetValue(object target, string name)
    {
        var callSite = getters.GetOrAdd(name, CreateSite(target, name));
        return callSite.Target(callSite, target);
    }

    internal static CallSite<Func<CallSite, object, object>> CreateSite(object target, string name)
    {
        return CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, name, target.GetType(), new[] { CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null) }));
    }
}

Looking at this: https://docs.microsoft.com/en-us/dotnet/api/system.dynamic.dynamicmetaobject.bindgetmember?view=netframework-4.8#System_Dynamic_DynamicMetaObject_BindGetMember_System_Dynamic_GetMemberBinder_

I don't understand how this api can help. Usually this api uses for custom DynamicObject implementation and contains describing get methods of custom DynamicObject. Could you please clarify idea for using this api.

I have just implemented some solution. What do you think?
 private static object GetProperty(IDynamicMetaObjectProvider target, string name)
        {
            var self = (Expression)Expression.Constant(target);
            var metaObject = target.GetMetaObject(self);
            var binder = (GetMemberBinder)Binder.GetMember(CSharpBinderFlags.None, name, target.GetType(), new[] { CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null) });
            var member = metaObject.BindGetMember(binder);
            BlockExpression final = Expression.Block(
                Expression.Label(CallSiteBinder.UpdateLabel),
                member.Expression
            );
            var param = Expression.Parameter(typeof(object));
            var lambda = Expression.Lambda(final, param);
            var @delegate = lambda.Compile();
            return @delegate.DynamicInvoke(target);
        }

That all makes sense to me except I don’t entirely understand the Lambda wrapper bit - can you explain?

Yes lambda wrapper could be simplified. I think we could replace Lambda wrapper with this
var lambda = Expression.Lambda<Func<object>>(final).Compile();
            return lambda();

These lines do not make sense.
 var param = Expression.Parameter(typeof(object));
            var lambda = Expression.Lambda(final, param);

The DynamicMetaObject has other properties that look like they give direct access to the underlying value without creating a new expression tree - take a look at the Properties section on https://docs.microsoft.com/en-us/dotnet/api/system.dynamic.dynamicmetaobject?view=netframework-4.8

Do you mean "Value" property?  It does't work for ExpandoObject. It just return null.

Instead of we can call Expression that contains logic access to the member

Every custom DynamicMetaObject that inherited from DynamicMetaObject  can override BindGetMember and provide Expression for access to their members.
Look at example for JObject from Json.NET library

If you know another way I will be grateful for the help

ExpandoObject implements IDictionary<string,object> so may want to consider reordering the type checks to give that precedence. The structure of the routine should be that if a value isn't resolvable after one attempt, fall back up and keep trying others.


Multiple improvements to the Message Buttons.

Make the buttons disappear after time ends.
Change the buttons to have consistent labels across all devices.
Fix the buttons erroring out if you try to go back one page on page 1 or go forward one page on the last page of a given embed.

Added in Release 1.1.1.


varLib merger dies on CFF->CFF2 conversion

I'm trying to merge some OTFs to VF because reasons. The first thing that varLib.merge does is convert the default master CFF table to a CFF2. With this font:
from fontTools.ttLib import TTFont
from fontTools.varLib.cff import convertCFFtoCFF2

f = TTFont("NotoSansCJKjp-Light.otf")
f.ensureDecompiled()
convertCFFtoCFF2(f)

dies with
  File "/Users/simon/others-repos/fonttools/Lib/fontTools/cffLib/__init__.py", line 1549, in _read
    return SubrsIndex(file, isCFF2=isCFF2)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/simon/others-repos/fonttools/Lib/fontTools/cffLib/__init__.py", line 878, in __init__
    super(GlobalSubrsIndex, self).__init__(file, isCFF2=isCFF2)
  File "/Users/simon/others-repos/fonttools/Lib/fontTools/cffLib/__init__.py", line 784, in __init__
    assert offSize <= 4, "offSize too large: %s" % offSize
           ^^^^^^^^^^^^
AssertionError: offSize too large: 7

The problem seems to be coming when calling .Subrs on a PrivateDict object as part of this little dance:
https://github.com/fonttools/fonttools/blob/e724acd41e02d78cb96c97fbf0ac462347ce27c7/Lib/fontTools/varLib/cff.py#L122-L128

The problem seems related to the presence of multiple FontDicts in an FDArray. I wonder if we're not descending into the FDArray properly when doing some conversion somewhere. (This is a guess, I know very little about CFF fonts.)

Here's an interesting thing. If I change the code in cff.py (line 95) to:
        for fontDict in fdArray:
            fontDict.setCFF2(True)
            print(fontDict.Private, fontDict.Private.rawDict.keys())

it dies. But if I say:
        for fontDict in fdArray:
            print(fontDict.Private, fontDict.Private.rawDict.keys())
            fontDict.setCFF2(True)

it succeeds.

That suggest some lazy-loading is not happening?


Implement devpav

To metrics Peters implementation of devPAV is added. We still require to work out: 'def devpav(lrs, y):'. This function should do the PAV-transform and call devpAVtot_f to calculate devPAV based on the LRs and the PAV-transform.

Added tests also


First invocation sometimes crashes in handle()

About 20% of first time invocations of my lambda handler crash before my code is called. This happens somewhere in handle(). I don't see this exception when everything is running normally. It only appears to happen for the first call right after I upload a new version of my lambda handler. Any ideas?
unexpected fault address 0x0
fatal error: fault
[signal SIGSEGV: segmentation violation code=0x80 addr=0x0 pc=0x7fd476570ec8]

goroutine 17 [running, locked to thread]:
	runtime.throw(0x7fd4765f3250, 0x5)
	/usr/local/go/src/runtime/panic.go:596 +0x97 fp=0xc4202878f0 sp=0xc4202878d0
	runtime.sigpanic()
	/usr/local/go/src/runtime/signal_unix.go:297 +0x290 fp=0xc420287940 sp=0xc4202878f0
	runtime.call64(0xc4202477a0, 0x7fd46f727cd0, 0xc420247800, 0x1000000030)
	/usr/local/go/src/runtime/asm_amd64.s:515 +0x48 fp=0xc420287990 sp=0xc420287940
	reflect.Value.call(0x7fd46fb61f40, 0x7fd46f727cd0, 0x13, 0x7fd4765f2ff8, 0x4, 0xc420287e10, 0x2, 0x2, 0x7fd4768259c0, 0x7fd47684d368, ...)
	/usr/local/go/src/reflect/value.go:434 +0x921 fp=0xc420287cd8 sp=0xc420287990
	reflect.Value.Call(0x7fd46fb61f40, 0x7fd46f727cd0, 0x13, 0xc420287e10, 0x2, 0x2, 0xc4202f68f8, 0x193, 0x7fd476549aa8)
	/usr/local/go/src/reflect/value.go:302 +0xa6 fp=0xc420287d40 sp=0xc420287cd8
	main.handle(0x14e2614, 0x13f9324, 0x14b60e4, 0xc420287eb0, 0xc420287eb8, 0x0)
	/build/src/runtime.go:140 +0x4e1 fp=0xc420287e50 sp=0xc420287d40
	main._cgoexpwrap_dd780bcacc70_handle(0x14e2614, 0x13f9324, 0x14b60e4, 0x0, 0x0, 0x0)
	_/build/src/_obj/_cgo_gotypes.go:127 +0x9a fp=0xc420287e90 sp=0xc420287e50
	runtime.call64(0x0, 0x7ffc5d059ee8, 0x7ffc5d059f80, 0x30)
	/usr/local/go/src/runtime/asm_amd64.s:515 +0x4a fp=0xc420287ee0 sp=0xc420287e90
	runtime.cgocallbackg1(0x0)
	/usr/local/go/src/runtime/cgocall.go:301 +0x1a1 fp=0xc420287f58 sp=0xc420287ee0
	runtime.cgocallbackg(0x0)
	/usr/local/go/src/runtime/cgocall.go:184 +0x86 fp=0xc420287fc0 sp=0xc420287f58
	runtime.cgocallback_gofunc(0x0, 0x0, 0x0, 0x0)
	/usr/local/go/src/runtime/asm_amd64.s:767 +0x71 fp=0xc420287fe0 sp=0xc420287fc0
	runtime.goexit()
	/usr/local/go/src/runtime/asm_amd64.s:2197 +0x1 fp=0xc420287fe8 sp=0xc420287fe0

goroutine 18 [syscall, locked to thread]:
	runtime.goexit()
	/usr/local/go/src/runtime/asm_amd64.s:2197 +0x1

goroutine 19 [syscall]:
	os/signal.signal_recv(0x0)
	/usr/local/go/src/runtime/sigqueue.go:116 +0x118
	os/signal.loop()
	/usr/local/go/src/os/signal/signal_unix.go:22 +0x24
	created by os/signal.init.1
	/usr/local/go/src/os/signal/signal_unix.go:28 +0x43

Hi @thoellrich,
Can you please provide a failing snippet so I can investigate more effectively?
PS: I suspect you are running some goroutines without waiting for them to finish before exiting you lambda. This is just an intuition. So please double check that when your lambda function returns, no goroutine is still running.

Thanks for the quick response. The error happens before my code is called. One of the first things I do in my handler is logging a message that indicates what has arrived. This line is never printed in the failing cases.
The 3 go-routines above are the only ones active. In the failing case I did not even get a chance to spawn a new go-routine. At the end of my handler, I also log any still active go-routines and I can confirm that whatever I launch, is terminated correctly.
If I read the stack trace above correctly, the crash happens in the reflect.Value() call on line 140 of runtime.go: https://github.com/eawsy/aws-lambda-go-shim/blob/master/src/runtime.go#L140
I see that eawsy/aws-lambda-go-shim was just updated to use 1.8.2. I'll see if that makes a difference.

Please isolate the failing case and provide a code snippet. I cannot see what is happening this way. My intuition seems false. And if there is a bug with Go 1.8.2 we also need to provide the Go team a failing test.
PS: the stack trace provides info about the runtime.go#L140 but the problem is that reflect stumble upon a nil value and we have to find the root of the problem.

I reduced the handler to the bare minimum and it's still showing the crash.
Here's my handler.go:
package main

import (
	"log"

	"github.com/eawsy/aws-lambda-go-core/service/lambda/runtime"
	"github.com/eawsy/aws-lambda-go-event/service/lambda/runtime/event/kinesisstreamsevt"
)

func Handle(evt *kinesisstreamsevt.Event, c *runtime.Context) (result interface{}, err error) {
	log.Printf("Handle() - record count=%d\n", len(evt.Records))
	return nil, nil
}

This lambda is listening on a Kinesis stream. The batch size on the trigger is set to 100.
An external process feeds sensor data into the stream.
The crash seems to happen more consistently when the first batch into the lambda is full (=batch size).
When the crash happens I can see the same stack trace as above. The log.Printf() is not called.
Here's the crash followed by a "good" call (you can see the result of the log.Printf) in Cloudwatch Logs:

Something seems to wrong when the first batch of records arrive and that batch happens to be close or equal to batch size. The unraveling of the handler's event seems to cause the exception above. ctx.Elem() was used before, but evt.Elem() wasn't.
Hope this makes sense.

Thank you very much for taking the time to provide a minimal test case. I need your assistance to spot the problem.
Can you change a little bit your function to know if the incoming event is always filled with something:
package main

import (
	"log"

	"github.com/eawsy/aws-lambda-go-core/service/lambda/runtime"
	"github.com/eawsy/aws-lambda-go-event/service/lambda/runtime/event/kinesisstreamsevt"
)

func Handle(evt *kinesisstreamsevt.Event, c *runtime.Context) (result interface{}, err error) {
        log.Printf("evt is not nil: %t", evt != nil)
	log.Printf("Handle() - record count=%d\n", len(evt.Records))
	return nil, nil
}

I tried various different runs but cannot reproduce the error, so it is very important to keep your settings without any modification, so we can dig into the bug and find it.
PS: Can you please run the following command to know if you run the latest version of the shim docker run --rm -it eawsy/aws-lambda-go-shim:latest version.

I absolutely cannot reproduce the error. Moreover, we have several Lambda behind kinesis and they are executed several hundred millions of times per month and I haven't spotted this error in the CloudWatch logs. Can you provide me more info info about your events, your Lambda configs, etc? I'm stuck!
If you need to converse in private mode, let me know.

I changed the code to:
package main

import (
	"log"

	"github.com/eawsy/aws-lambda-go-core/service/lambda/runtime"
	"github.com/eawsy/aws-lambda-go-event/service/lambda/runtime/event/kinesisstreamsevt"
)

func Handle(evt *kinesisstreamsevt.Event, c *runtime.Context) (result interface{}, err error) {
	if evt != nil {
		log.Printf("Handle() - record count=%d\n", len(evt.Records))
	} else {
		log.Println("Handle() - evt==nil")
	}
	return nil, nil
}

and don't see any occurences of the evt==nil case. Yet I still see the SIGSEGV.
Also it looks like I had the latest version of the shim in place:
$ docker pull eawsy/aws-lambda-go-shim:latest
latest: Pulling from eawsy/aws-lambda-go-shim
Digest: sha256:e7d0182f0703226449446dfbf726dbab4ad35e1960b9a0e1870d80edef34f7ca
Status: Image is up to date for eawsy/aws-lambda-go-shim:latest
$ docker run --rm -it eawsy/aws-lambda-go-shim:latest version
2017-05-24

The code also works fine here and also handles millions of messages. The problem only occurs under 2 conditions: a) I push a code update and Lambda calls it the first time and b) Lambda decides to recycle the function (happens on a regular basis) and calls the new instance for the first time. For those 2 conditions I see the SIGSEGV. As Lambda detects the crash, it'll resend the Kinesis message and no data is lost.
I still think that evt at https://github.com/eawsy/aws-lambda-go-shim/blob/master/src/runtime.go#L140 has an unexpected value. Maybe I should try to build the shim here locally, add some logging and see if I can get more details that way? What do you think?

Interesting! I changed the runtime.go code to read:

After that change I created the updated shim docker image, rebuilt my handler and called it several times. Each time I made sure that Lambda loaded it anew.
I saw it crash 2 times. Look at the Cloudwatch Logs Search below, I bet you can immediately spot where it crashed:

I have no idea why you're getting that weird address for the handler symbol. And why it works for the same file the 2nd time.
At that point it may be worth noting that my handler.so is ~ 20MB and the zip ~ 6MB:
-rw-r--r--  1 ubuntu ubuntu 21230440 May 26 11:43 handler.so
-rw-r--r--  1 ubuntu ubuntu  6401036 May 26 11:43 handler.zip

Could size be an issue?

So thankful for your efforts, it seems to be a very awkward bug.

Whaoo. Why are these two addresses so different from the other calls!
When I build your code, I have:

2.7M    handler.so
1.7M    handler.zip
How is it possible to have 20M? Do you embed anything in the zip?

I just modified the main handler. There's other code that pulls in the AWS-SDK, sql.DB and other stuff. It's still part of the simplified *.so, it just does not get called (other than any init()). That would account for the size differences. Sorry I did not mention that.
I'm wondering now if the plugin is not completely loaded. Could it still be relocating?

Hmmmm - https://go-review.googlesource.com/c/40431/

I don't think that there is any problem with the size and the loading process. We've already uploaded very heavy .so and did not encountered any issue.
What I was suspecting is that there is some process in an init function somewhere in your dependencies or your own code which cause the problem. But as you've provided me a simple snippet I was very upset to not find any init function :smile:
If the error happens only when you freshly reset/upload your Lambda, then we have to focus on init functions. Can you take an inventory of your init functions and then we will dig in each category and try to spot the bug.

One more things, you must have less than 8 exported functions in your Handler. Is this verified?

https://github.com/eawsy/aws-lambda-go-shim#known-limitations

I've opened an issue long time ago https://github.com/golang/go/issues/19269 that will be resolved in Go1.9 and the issue you have referenced also references mine. I think we are getting closer :smile:

Yeah - I think this is the same problem we are talking about. I think I installed the shim before the note about the 8 exported functions was there :-( That could be the problem here. I'll check exports and init()s and report back any findings.

My handler package had 11 exported symbols. Reduced it down to the bare minimum and have not seen the crash since.
Thanks for your help and I'm sorry we were chasing a known problem. Hopefully it'll help somebody else who runs into the same issue.
Thanks!

Perfect.
No problem, it's always with a pleasure that we tend to help around this project. It was also my fault to not think about this limitation at the beginning. It will certainly help others and in a few month with the upcoming Go1.9 this kind of issue will disappear.
Anyway, happy Go on Lambda and do not hesitate if you encounter any other problem in the future.


Unable to find schema when $id starts with #

The following schema fails to compile
{
  "$id": "#Configuration",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "language": {"type": "string"}
  }
}

System.InvalidOperationException: Unable to find the schema at https://endjin.com/home/mmior/apps/jsonschema-benchmark/implementations/corvus/schema.json#/properties/language

On a related note, is there any particular reason why the URI doesn't just start with file:// instead of an unrelated domain name?

I didn't think fragment IDs were permitted?

@mwadams You might be right. I raised this because it's based on a real schema that I found and it's accepted by other validators.

"This keyword must be set to an absolute URI or a relative reference as defined by RFC 3986 without a fragment"

(so it shouldn't be accepted as a valid schema)

Although that qualification is not explicitly present in draft7... Given applying a fragment cannot produce a base URI I'm not sure how that is supposed to work, though!

On a related note, is there any particular reason why the URI doesn't just start with file:// instead of an unrelated domain name?

We avoid producing URIs based on the local file system wherever possible. We had all sorts of issues in the past when people were working across UNIX/Windows/MacOS and just decided to avoid the whole can of worms in this case.

We avoid producing URIs based on the local file system wherever possible. We had all sorts of issues in the past when people were working across UNIX/Windows/MacOS and just decided to avoid the whole can of worms in this case.

Got it. In that case, I think using just localhost for the hostname would be more intuitive, but I guess it doesn't make a difference.

@mwadams FWIW, I updated the schema in our test suite, so when the Corvus implementation is eventually merged, the case in question should pass.

I'm going to investigate further - I think this may be an issue specifically at the root.

Fixed in 4.0.0-preview.30
Thanks!


Introduction to Data Visualization Challenges

Added details to the data visualization challenges

:sparkles: :sparkles: LGTM. :sparkles: :sparkles:
Thanks @wadleo
Happy Contributing!


Json file load

How to load and serve JSON file ?

well this is kinda late, but I would recommend using jsoncons, it lets you load a json file or string into a json object, modify it, and then just dump the object as string.
Now if you only want to take a json file and put it in a response you can just read it as string, and then pass that string with the header Content-Type: application/json.


<IP_ADDRESS>.2	Allow volunteers to “offer to help” with volunteer needs shown on campaign pages by choosing one or more skills/resources needed and providing contact information to share with organization admin

Name, Email, Phone, Additional Information

I'll start on this

I'm taking this over from @rynowak

Requirements

[ ] "Offering to help" is for a logged in user. Viewing can be anonymous
[ ] Activity shows "skills needed" - skills that match up with user skills should be highlighted
[ ] Volunteering for an activity will allow you to associate one of the many tasks associated with the activity


[CERT-TEST-FAILURE]  KeySetWrite command does not return RESOURCE_EXHAUSTED instead returns FAILURE

Feature Area
Other
Test Case
TC-GRPKEY-2.2 Step 16
Reproduction steps
The below conditions were tried to get   RESOURCE_EXHAUSTED  condition as per section <IP_ADDRESS>. KeySetWrite Command

After paring KeySetReadAllIndices command returns one entry groupKeySetID: 0  by default
KeySetReadAllIndicesResponse: {
[1690878193.679729][43677:43680] CHIP:TOO:     groupKeySetIDs: 1 entries
[1690878193.679741][43677:43680] CHIP:TOO:       [1]: 0
[1690878193.679749][43677:43680] CHIP:TOO:    }
Is this expected?

max-group-keys-per-fabric returns a value of 3 so attempted to add 3 entries with groupKeySetID's as 419, 420 and 421
but when KeySetWrite Command was given with groupKeySetID as 421 we see a FAILURE response.

KeySetReadAllIndices returns  3 entries as 420,491, 0

Tried to remove groupKeySetID : 0  we see Status SUCCESS but following command like KeySetReadAllIndices does not get a valid response.
GRPKEY2.2Error.txt

Bug prevalence
during manual execution of TC-GRPKEY-2.2
GitHub hash of the SDK that was being used
NA
Platform
other
Anything else?
No response

is an issue of lack of compliance.

is normal: if you remove GroupKeySet0, you are breaking the IPK and won't be able to communicate anymore. DO NOT remove KeySet index 0.

@tcarmelveilleux If GroupKeySet0 is going to exist by default should we change test plan -TC- GRPKEY-2.2 Step 16 to add keys upto  max-group-keys-per-fabric  -1 ?

Yes, that step is going to lead to issues.

>  {PICS_S}.C00.Rsp(KeySetWrite)
TH sends KeySetWrite command to DUT Max_GrpKey times, starting with GroupKeySetID 1 and incrementing by 1 each time.

Suggest:

> {PICS_S}.C00.Rsp(KeySetWrite)
TH sends KeySetWrite command to DUT until size of list for TH's fabric in GroupKeyMap attribute contains Max_GrpKey entries, starting with GroupKeySetID 1 and incrementing by 1 each time.


generated target source hasn't been parsed by VsCode

v 1.29.1
a similar caching problem on parsing like in the case of #64490
I have the following .classpath, even if I have edited VsCode changes it.
The problem tab shows unresolved imports on the generated source folder.
Clicking on the java files individually (open it) in the generated source folder, the vscode resolves the issues automatically. (but not at startup, so I need to manually open the files)
Restarting vscode issues permanently disappear. (newly created/imported project it happens, does not matter what is in the classpath) by rebuilding the project issues come back.
Pls. guide me if no the main vs code project, which project causes the issue.
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="src" output="target/classes" path="src/main/java">
		<attributes>
			<attribute name="optional" value="true"/>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="src" output="target/test-classes" path="src/test/java">
		<attributes>
			<attribute name="optional" value="true"/>
			<attribute name="maven.pomderived" value="true"/>
			<attribute name="test" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
			<attribute name="test" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="src" path="target/generated-sources/apt">
		<attributes>
			<attribute name="optional" value="true"/>
			<attribute name="maven.pomderived" value="true"/>
			<attribute name="ignore_optional_problems" value="true"/>
			<attribute name="m2e-apt" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="src" output="target/test-classes" path=".apt_generated_tests">
		<attributes>
			<attribute name="optional" value="true"/>
			<attribute name="test" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="output" path="target/classes"/>
</classpath>

I have made some workaround which solved the problem and put the generated source into the src folder. I think the maven plugin was buggy.


Optimistic updates

Add methods to mutations to handle optimistic data updates

Maybe a first step could be to add some hooks (such as onMutate, onError, onSuccess, onSettled)?


DBeaver Always Opens to a Specific Editor

Description
If there are multiple editors open, DBeaver starts always with the second from the left even though the app is exited while on the leftmost editor tab. Any ideas why? Is this intentional?
DBeaver Version
Version <IP_ADDRESS>406021658
Operating System
Windows 11 Enterprise multi-session
Database and driver
Server: Snowflake 8.21.3
Driver: Snowflake 3.14.4
Steps to reproduce

Have multiple sql editor tabs open.
Select the leftmost one and exit the application
If you relaunch the app, it starts with the second one from the leftmost editor.

Additional context
No response

Hi @ufuk-ergin-carbon. Could you please record a video showing the issue? Unfortunately, we are not able to reproduce the issue by the data we have

Hello @HocKu7 , sure. I am attaching a screen recording.
https://github.com/dbeaver/dbeaver/assets/114302087/2630caf1-22c6-4a08-86b5-2445d05c8914

@ufuk-ergin-carbon
could you export your setting and send us?
You can do it in Files->Export and Choose DBeaver->Preferences

Sure. Here it is.
dbeaver_settings.zip

Thank you

How do you relaunch the app? By clicking on the app icon or by opening some associated resource?

Here are the steps that this problem appears. I was going to attach another screen recording but, the size easily becomes over 10MB.

Open an editor for an sql file that is not the left most one.
Exit the app and then launch it again from the taskbar shortcut.
What happens is that DBeaver opens to the one that is right to the editor that you exit the app.

So, I am opening the app by clicking on the taskbar shortcut icon.

Unfortunately, we're still unable to reproduce the issue.


tblr:0.1.0

I am submitting

[x] a new package
[ ] an update for a package

tblr provides table generation helpers inspired by LaTeX's Tabularray package. Like Tabularray, table formatting can be specified with directives, so the formatting can be separate from table entries.

I have read and followed the submission guidelines and, in particular, I

[x] selected a name that isn't the most obvious or canonical name for what the package does
[x] added a typst.toml file with all required keys
[x] added a README.md with documentation for my package
[x] have chosen a license and added a LICENSE file or linked one in my README.md
[x] tested my package locally on my system and it worked
[x] excluded PDFs or README images, if any, but not the LICENSE

Thank you!


Feature Request: Animation

Looks great! Would love to see animated transitions when you move from one step to another. For example, something like the progress bar width animating from step 1 -> step 2

It is a good idea!

Done!


Error in cut.default(y, breaks, include.lowest = TRUE) : invalid number of intervals

For bugs or installation issues, please provide the following information.
The more information you provide, the more easily we will be able to offer
help and advice.
Environment info
Operating System: Windows 10
Compiler:
Package used (python/R/jvm/C++): Xgboost in R
xgboost version used: 0.6-4
If installing from source, please provide

The commit hash (git rev-parse HEAD)
Logs will be helpful (If logs are large, please upload as attachment).

If you are using jvm package, please

add [jvm-packages] in the title to make it quickly be identified
the gcc version and distribution

If you are using python package, please provide

The python version and distribution
The command to install xgboost if you are not installing from source

If you are using R package, please provide

The R sessionInfo() :  R version 3.4.1 (2017-06-30)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.2 LTS
Matrix products: default
BLAS: /usr/lib/libblas/libblas.so.3.6.0
LAPACK: /usr/lib/lapack/liblapack.so.3.6.0

locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8
[4] LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] compiler parallel stats graphics grDevices utils datasets methods base
other attached packages:
[1] readr_1.1.1 xgboost_0.6-4 dplyr_0.7.1 TTR_0.23-1
[5] bigrquery_<IP_ADDRESS>00 data.table_1.10.4 lubridate_1.6.0 doParallel_1.0.10
[9] iterators_1.0.8 caret_6.0-77 ggplot2_2.2.1 lattice_0.20-35
[13] glmnet_2.0-12 foreach_1.4.3 Matrix_1.2-10
loaded via a namespace (and not attached):
[1] zoo_1.8-0 kernlab_0.9-25 reshape2_1.4.2 purrr_0.2.3 splines_3.4.1
[6] colorspace_1.3-2 stats4_3.4.1 survival_2.41-3 prodlim_1.6.1 rlang_0.1.1
[11] ModelMetrics_1.1.0 glue_1.1.1 withr_2.0.0 DBI_0.7 bindrcpp_0.2
[16] bindr_0.1 plyr_1.8.4 dimRed_0.1.0 lava_1.5 robustbase_0.92-7
[21] stringr_1.2.0 timeDate_3012.100 munsell_0.4.3 gtable_0.2.0 recipes_0.1.0
[26] codetools_0.2-15 class_7.3-14 DEoptimR_1.0-8 xts_0.10-0 Rcpp_0.12.11
[31] scales_0.5.0 ipred_0.9-6 CVST_0.2-1 hms_0.3 stringi_1.1.5
[36] RcppRoll_0.2.2 ddalpha_1.2.1 grid_3.4.1 tools_3.4.1 magrittr_1.5
[41] lazyeval_0.2.0 tibble_1.3.3 DRR_0.0.2 pkgconfig_2.0.1 MASS_7.3-47
[46] gower_0.1.2 assertthat_0.2.0 httr_1.2.1 R6_2.2.2 rpart_4.1-11
[51] nnet_7.3-12 nlme_3.1-131

The command to install xgboost if you are not installing from source

install.packages("xgboost")
Steps to reproduce
1.run xboost in a 'for' loop
2. one of the train rmse gets to zero
3. loop stops automatically with the following error : Error in cut.default(y, breaks, include.lowest = TRUE) :
invalid number of intervals
What have you tried?

googling for similar issues
rerunning with different configurations

What does running traceback() show right after the error happens?


failed to debug dlang app

f5 ->
Failed to run command break-insert /home/aaa/src/d/DCD/src/client/client.d:39: No source file named /home/aaa/src/d/DCD/src/client/client.d(this file exist actually).
{
"version": "0.2.0",
"configurations": [
{
"name": "Debug",
"type": "gdb",
"request": "launch",
"target": "./dcd-client",
"cwd": "${workspaceRoot}"
}
]
}

is dcd-client existent in the workspace root folder and is all source in the workspace root folder?

/home/aaa/src/d/DCD/dcd-client exist, and run directly without pause, because break-insert failed.

did you compile with debug information?

yes, objdump --syms output symbols. I guess we hit the issue with d and gdb?

does adding breakpoints with gdb ./dcd-client work? (Please exactly that command, thats the path you also specified in the config)

I found the problem, dub doesn't use the copy under DCD project, it will download all packages into it's only cache, thanks for help.


Unable to build Ubuntu16.04  cannot find zipfile directory in one of maven.zip

Describe the bug
After manually fixing the bug listed in the PR (https://github.com/actions/virtual-environments/issues/146) getting another error installing java tools
Virtual environments affected

[ ] macOS 10.15
[x ] Ubuntu 16.04 LTS
[ ] Ubuntu 18.04 LTS
[ ] Windows Server 2016 R2
[ ] Windows Server 2019

Expected behavior
Should continue and complete the image generation
Actual behavior
done.
    azure-arm: done.
    azure-arm: ANT_HOME=/usr/share/ant
    azure-arm: Archive:  maven.zip
==> azure-arm:   End-of-central-directory signature not found.  Either this file is not
==> azure-arm:   a zipfile, or it constitutes one disk of a multi-part archive.  In the
==> azure-arm:   latter case the central directory and zipfile comment will be found on
==> azure-arm:   the last disk(s) of this archive.
==> azure-arm: unzip:  cannot find zipfile directory in one of maven.zip or
==> azure-arm:         maven.zip.zip, and cannot find maven.zip.ZIP, period.
==> azure-arm: Provisioning step had errors: Running the cleanup provisioner, if present...
==> azure-arm:
==> azure-arm: The resource group was not created by Packer, deleting individual resources ...

Same issue - @majorvin I've modified the java-tools.sh file per the PR above - This also impacts ubuntu 18.04 LTS as well.

I believe that this was fixed in #167 / #172. If that's incorrect, let me know and I'll re-open this.


merge: dev to stage

merge: dev to stage

:tada: This PR is included in version 0.34.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[FLINK-13739][table-blink] JDK String to bytes should specify UTF-8 encoding

What is the purpose of the change
The reason should be that the default encoding of the machine is not UTF-8, and the test relies on the default encoding.
The code should use the specified UTF-8 encoding
Verifying this change
This change is already covered by existing tests
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: no
The S3 file system connector:no

Documentation

Does this pull request introduce a new feature? no

I'm testing the change

[INFO] Results:
[INFO]
[INFO] Tests run: 668, Failures: 0, Errors: 0, Skipped: 0

Looks like this PR is fixing the issue.

Thanks @rmetzger for verification, ping @wuchong @TsReaper  to review


Feat: Added analytics events for GitHub and Google Auth

Description
Added BE analytics events for GitHub and Google Authentication configurations
Fixes #13071
Type of change

New feature (non-breaking change which adds functionality)

How Has This Been Tested?

Manually via local app
Manually via Postman with local APIs

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

/ok-to-test sha=a8fa0b7


rados: add support for sending PG commands

To query PG we need to send PG command via rados C API. However this is presently not implemented by rados.go. This PR adds support for sending PGCommand that is useful for querying information for a specific PG.

@nixpanic there's a bit of content here so I'd like a 2nd set of eyes on this if you have the time.

@phlogistonjohn Thanks for taking time to review this! I have squashed them into 1 commit.

Thanks a lot @phlogistonjohn and @nixpanic !


scPoli: RuntimeError: indices should be either on cpu or on the same device as the indexed tensor (cpu)

Hi @cdedonno  - we are running into the below error when we try to run the tutorial on an AWS GPU:
RuntimeError: indices should be either on cpu or on the same device as the indexed tensor (cpu)
Full traceback:
|████████████████----| 80.0%  - val_loss: 1066.5160086496 - val_trvae_loss: 1066.5160086496RuntimeError: indices should be either on cpu or on the same device as the indexed tensor (cpu)
Have you seen such an error before? Do you know how we might address it?

Hi @dannykwells, I have not encountered this error. It looks as though the model is not beint trained on the GPU, could you check that your CUDA is actually working?

After some investigation, I suspect this might have been fixed with this  #152 PR. Could you try to install the repo by cloning it, rather than using pip? That way you should have the latest fixes. Let me know if this helps.

i encounter the same problem, even with the new installation using the github rep from @cdedonno , i removed sparsity to see if something changes, unfotunately not. any help would be appreciated.

Ok, could any of you provide a minimal example that I could use to reproduce the issue and investigate it? And also your computing environment specifications? (I think torch and cuda versions should suffice)

thanks for the prompt response, i am re-installing and will make a re-run just to confirm and avoid a wild-goose chase!
:)

Hey Carlo
I installed scarches right now using : pip install git+https://github.com/theislab/scarches
torch.version
'1.13.1+cu116'
torch.version.cuda
'11.6'
I followed the scpoli tutorial from the docs as it is for importing modules etc and for other parts too with some data specific changes. The code is attached, can i send you the data somehow it is around 0.5GB
at the classify step I get
Traceback (most recent call last):
File "", line 1, in
File "/home/.local/lib/python3.9/site-packages/scarches/models/scpoli/scpoli_model.py", line 389, in classify
x[batch, :].to(device),
RuntimeError: indices should be either on cpu or on the same device as the indexed tensor (cpu)
scpoli_reprex.txt

I think I might have found the issue, but since I can not reproduce your bug on my machine, can you please check if PR #172 fixes your bug? You'd need to either clone the repo and checkout to the scpoli/device_bug branch or reinstall scarches using this command: pip install git+https://github.com/theislab/scarches.git@scpoli/device_bug.

Since it was just merged into master, you could also just update the package.

thanks a million, I will retry the stuff..
appreciate your really prompt replies :)

Thanks @cdedonno - this is great. We will give it a shot soon and report back.

hey Carlo, @cdedonno
an uninstall followed by uninstall using the git link you sent, works!
Thanks a lot !

Hi Carlo,
Unfortunately, the error is still there. I think I have narrowed it down:
>>> scpoli_model.train(
...     n_epochs=50,
...     pretraining_epochs=51,
...     early_stopping_kwargs=early_stopping_kwargs,
...     eta=5,
... )
 |████████████████████| 100.0%  - val_loss: 1040.7640380859 - val_trvae_loss: 1040.7640380859
>>> scpoli_model.train(
...     n_epochs=50,
...     pretraining_epochs=49,
...     early_stopping_kwargs=early_stopping_kwargs,
...     eta=5,
... )
 |███████████████████-| 98.0%  - val_loss: 1049.6892264230 - val_trvae_loss: 1049.6892264230RuntimeError: indices should be either on cpu or on the same device as the indexed tensor (cpu)
>>> scpoli_model.train(
...     n_epochs=50,
...     early_stopping_kwargs=early_stopping_kwargs,
...     eta=5,
... )
RuntimeError: indices should be either on cpu or on the same device as the indexed tensor (cpu)

Looking at the code here:
        if pretraining_epochs is None:
            pretraining_epochs = int(np.floor(n_epochs * 0.9))
        self.trainer = scPoliTrainer(
            self.model,
            self.adata,
            labeled_indices=self.labeled_indices_,
            pretraining_epochs=pretraining_epochs,
            condition_key=self.condition_key_,
            cell_type_keys=self.cell_type_keys_,
            reload_best=reload_best,
            **kwargs,
        )
        self.trainer.train(n_epochs, lr, eps)
        self.is_trained_ = True
        self.prototypes_labeled_ = self.model.prototypes_labeled
        self.prototypes_unlabeled_ = self.model.prototypes_unlabeled

It's a little confusing what's going on here - where is pretraining_epocs being used, given that it was not set to None? And why is there an error if it is less than training epocs?

Hi @dannykwells, bummer that the last PR did not solve the issue on your end. I still can't reproduce the bug on my machine, but I will investigate further. Does the traceback you get point to a specific line in the code?

@cdedonno - the traceback does not, but as I mentioned above, I think it is happening at line 370 of scpoli/trainer.py
My sense is, as you are transitioning from pretraining to training, the coda thinks the tensor is on the cpu when in fact it is on the gpu.

Could you show me the code you use to instantiate the model? Do you have partially labeled data? Cause in a standard workflow, during reference building the condition to go through line 370 in the trainer should not be met.

Hi @cdedonno here is the entirety of the code - it is from the tutorial on scpoli:
import os
import torch
import numpy as np
import scanpy as sc
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

from sklearn.metrics import classification_report
from sklearn.metrics.pairwise import cosine_similarity

from scarches.dataset.trvae.data_handling import remove_sparsity
from scarches.models.scpoli import scPoli

import warnings
warnings.filterwarnings('ignore')

sc.settings.set_figure_params(dpi=200, frameon=False)
sc.set_figure_params(dpi=200)
sc.set_figure_params(figsize=(4, 4))
plt.rcParams['figure.dpi'] = 200
plt.rcParams['figure.figsize'] = (4, 4)

adata = sc.read('test-data/pancreas (1).h5ad')
adata

sc.pp.neighbors(adata)
sc.tl.umap(adata)

sc.pl.umap(adata, color=['study', 'cell_type'], wspace=0.5)

early_stopping_kwargs = {
    "early_stopping_metric": "val_prototype_loss",
    "mode": "min",
    "threshold": 0,
    "patience": 20,
    "reduce_lr": True,
    "lr_patience": 13,
    "lr_factor": 0.1,
}

condition_key = 'study'
cell_type_key = ['cell_type']
reference = [
    'inDrop1',
    'inDrop2',
    'inDrop3',
    'inDrop4',
    'fluidigmc1',
    'smartseq2',
    'smarter'
]
query = ['celseq', 'celseq2']

adata.obs['query'] = adata.obs[condition_key].isin(query)
adata.obs['query'] = adata.obs['query'].astype('category')
source_adata = adata[adata.obs.study.isin(reference)].copy()
source_adata = source_adata[~source_adata.obs.cell_type.str.contains('alpha')].copy()
target_adata = adata[adata.obs.study.isin(query)].copy()

source_adata, target_adata

scpoli_model = scPoli(
    adata=source_adata,
    condition_key=condition_key,
    cell_type_keys=cell_type_key,
    embedding_dim=3,
)

scpoli_model.train(
    n_epochs=50,
    pretraining_epochs=49,
    early_stopping_kwargs=early_stopping_kwargs,
    eta=5,
)

Thanks, I thought you were working on an own dataset. I will look into this early next week, I am sorry for the inconvenience.

No worries. Really appreciate all the help.

@dannykwells I am sorry I have not been able to look into this, I was wondering if maybe you figured it out? I have been performing many analyses using the model in the past days, using GPUs, and I have never encountered the error you mentioned.

I am running into this error too, when I try to predict cell types for the query data.
This is the error message I get :
----> 1 results_dict = scpoli_query.classify(
2     query.X,
3     query.obs['author']
4 )
File /nfs/turbo/umms-ukarvind/vravik/scarches/lib/python3.9/site-packages/scarches/models/scpoli/scpoli_model.py:389, in scPoli.classify(self, x, c, prototype, get_prob, log_distance)
380     pred, prob, weighted_distance = self.model.classify(
381         x[batch, :].to(device),
382         prototype=prototype,
(...)
385         log_distance=log_distance,
386     )
387 else:  # default routine, classify cell by cell
388     pred, prob, weighted_distance = self.model.classify(
--> 389         x[batch, :].to(device),
390         c[batch].to(device),
391         prototype=prototype,
392         classes_list=prototypes_idx,
393         get_prob=get_prob,
394         log_distance=log_distance,
395     )
396 preds += [pred.cpu().detach()]
397 uncert += [prob.cpu().detach()]
RuntimeError: indices should be either on cpu or on the same device as the indexed tensor (cpu)

I've been running into the same error and interestingly, for me, classifying straight after load_query_data works. If train is called after loading query data the problem starts occuring.
A little off topic but maybe someone can help me still: What's the rationale for running train after loading query data in the tutorial? Isn't the entire point to predict on previously unseen data?

Hi @chbeltz, thanks for reporting this. I still have not been able to reproduce this issue on my machine. I will try to look more into this in the coming weeks.
To answer your second question. During training on query data, only the new condition embeddings are learned, and the model is trained as a purely unsupervised model (assuming there are no cell type labels available in the query). Without this training step the condition embeddings for the new query conditions will be those obtained with a random initalization. I hope this answers your question.


DICE: Minor Changes required to TCBInfo Sections of FMC_ALIAS / RT_ALIAS

By reviewing the DICE Certificate TCBInfo(s) came across a couple of "minor" issues:

FMC Alias Certificate Hardcodes Vendor to "Caliptra"   -> Recommendation is to leave this field empty

FMC Alias Certificate Hardcodes Model to "FMC"   -> Recommendation is to leave this field empty, Field "Type" already contains this info

FMC Alias Certificate Flags is not properly formatted in the BIT STRING ASN1 type as per DICE Attestation Architecture Specification

RT Alias Certificate Hardcodes Vendor to "Caliptra"   -> Recommendation is to leave this field empty

RT Alias Certificate Hardcodes Model to "RT"   -> Recommendation is to leave this field empty, Field "Type" already contains this info

Do you recommend changing this for 1.x or 2.0?

Unless anyone have any objections, I`d target this fix for 1.1.

ROM changes are still open for 1.1?

A 1.1 ROM went out. Another will have to go out for a few minor fixes. So expect a 1.1.1.

One further recommendation is to replace all the DICE Certificate Subject Name from "Caliptra 1.0 .... " to "Caliptra 1.x ....". Currently, both Caliptra 1.0 and Caliptra 1.1 releases show "Caliptra 1.0" in their subject name

This should all be addressed in https://github.com/chipsalliance/caliptra-sw/pull/1725
FMC Alias Cert Before
FMC Alias Cert After
RT Alias Cert Before
RT Alias Cert After
Note this also changes the subject name in IDEV and LDEV certs from "Caliptra 1.0" -> "Caliptra 1.x" as suggested. I did not dump those certs.

Updated certs after a few more fixes and getting all the tests to pass.
FMC Alias Cert Before
FMC Alias Cert After
RT Alias Cert Before
RT Alias Cert After


add Tuya door sensor TS0203 by _TZ3000_yxqnffam

https://www.aliexpress.us/item/3256805753051657.html
These Tuya sensors (or clones more likely) with randomly-generated manufacturer data are annoying. I sure hope they're at least consistent for the same product.

Thanks, yes I don't have any myself but was wondering if they are unique per device and useless for the library.  Will keep an eye on them.

I was wondering if they are unique per device and useless for the library. Will keep an eye on them.

 If the second one (same model) has a unique Manufacturer, I'll let you know.


[.Net 6 isolated] Function to return dynamic with MultiResponse

I want to be able to return a dynamic type since my exception handling middleware is of type (HttpResponseData). However, with MultiResponse I receive MultiResponse1[System.Object] as the api result.

@andersson09 Could you share the code you are trying?

@andersson09 Could you share the code you are trying?

public class FunctionBase
{
    [Function("Ping")]
    public dynamic Ping([HttpTrigger(AuthorizationLevel.Function, "get")] HttpRequestData req)
    {
        var response = req.CreateResponse(HttpStatusCode.OK);
        response.WriteString("test");
        //return response; //works
        return new MultiResponse{Name = "test", HttpResponse = response}; //doesn't work
    }
}

public class MultiResponse
{
    [CosmosDBOutput("","")]
    public string Name { get; set; }
    public HttpResponseData? HttpResponse { get; set; }
}

Thanks! Is there a reason you do not want to use MultiResponse as the return type? Don't you want to return the same type (or same schema) from your exception handling middleware as well?

Because the exception handling middleware is a library that should be able to be used for any function, not just MultiResponse. So returning a simple HttpResponseData makes sense so it can be consumed by other functions.

If you have a way of finding the return time in the middleware via the Function Context, and converting to it, then that could work too. But I don't think this is possible?

@kshyju I found a hack here https://github.com/Azure/azure-functions-dotnet-worker/issues/765.
It would be nice to make this work without reflection though :).

We are working on exposing some new APIs to update invocation results from middleware so you can use them instead of the reflection workaround. I will share an update in this this thread when it is available.
Closing this item as I feel no other action item is needed at this point. Thanks!


[Enhancement] Field may be 'final'[UpStreamMsgContext]

Search before asking

[X] I had searched in the issues and found no similar issues.

Enhancement Request

located at:
eventmesh-runtime/src/main/java/org/apache/eventmesh/runtime/core/protocol/tcp/client/session/send/UpStreamMsgContext.java line 46,48,50,52,54
Describe the solution you'd like
add final
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

@Alonexc Can you please assign this to me, I can work on it.

welcome


Remove commented out test cases

Codecov Report

Merging #96 (37634b4) into master (29a89f6) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #96   +/-   ##
=========================================
  Coverage     68.66%   68.66%
  Complexity      387      387
=========================================
  Files            72       72
  Lines          1251     1251
  Branches        122      122
=========================================
  Hits            859      859
  Misses          361      361
  Partials         31       31

Continue to review full report at Codecov.

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


Deleting the first point crashes the app

go to https://graphhopper.com/maps2/?point=49.678588%2C8.212869&point=49.209545%2C7.41577&point=49.235832%2C9.619119&profile=car&layer=Omniscale
delete the first point
the app crashes
click your browser's back button -> the url changes, but the page does not load

Oh for sure, React Hooks aren't supposed to be called in an if block

And by the way: Why : useEffect(..., []). That means the effect will only be called once (the myMarkerRef focus will only be set once?!)


Win32: Start of listview scrolling implementation.

Aside from the icon role issue, this looks good to me.


[Bug] Syncing too many blocks can lead to an OOM

🐛 Bug Report (source: Discord)
Users have reported that the node can be killed by the kernel due to high memory use. The cause appears to be the fact that new sync behavior can lead to a great number of messages being queued in the consensus queue; this can also affect the node's responsiveness, as messages above queue capacity are pending futures.
We should probably check the number of queued consensus entries and not request further sync blocks if it's too large.
Cc @Protryon

This might actually be caused by fast-forwarding; I tested it with an ad-hoc RPC that halts syncing, and my node needs a lot of time to process all the blocks that are known descendants; this means we could instead automatically halt syncing if enough known children are being canonized.


Writes of deposits/exits to WatcherDB not idempotent

There's idempotency handling done for inserts to WatcherDB related to txs here.
There's not similar thing for deposits and exits, see here and here.
In the case when these insert requests are executed, but app goes down before they are acknoledged in the markers held in OMG.DB, we end up in corrupt state resulting in:
2019-02-21 12:06:45.387 [error] module=gen_server function=error_info/7 ⋅GenServer :convenience_exit_processor terminating
** (Ecto.ConstraintError) constraint error when attempting to insert struct:

    * unique: ethevents_pkey

To reproduce locally, insert a line like:
if not Enum.empty?(exits_or_deposits), do: raise ArgumentError.message("stop)")

just after the insert invocations above. Start a fresh sync to a non-empty child chain (e.g. staging as of today). When it borks on this raise, comment the raise out and attempt to continue syncing.
The easiest and consistent way to handle this would be to do a similar thing to what is done for txs in BlockGetter and have an idempotency mechanism in place.

after some discussion:
1/ my proposed atomicity mechanism (from 1603abc linked above) is quite sucky
2/ let's extend our current approach used with block transactions, which is idempotency of writes to WatcherDB
3/ the idempotency mechanism will have a test, somewhere around test/db/eth_event_test.exs
4/ the idempotency mechanism for deposits/exits is a matter of modifying the table constraints, so it requires a migration


Should R.find return a copy of element found in list?

I don't think so. If the user wishes to mutate an object she is responsible for cloning it if necessary.


Add support to IMultiSelectOption for disabled and the supporting UI/UX to obey it

Needed this today for a country list where they still wanted to see the country in the picker but disable the countries where the selection is not allowed .e.g. region locked
Tested in production
I see this resolves #186 if you want to test it replace your npm line to
"angular-2-dropdown-multiselect": "kevcjones/angular-2-dropdown-multiselect#distalt",
and make sure your imports from from 'angular-2-dropdown-multiselect/dist'; because obviously i've just pushed the npm dist package to my repo for now.
Disabled look in font-awesome

using the fontawesome rendering but i think i covered the others, both alt renderers use the -lock icon and the native uses the native disabled look
Setting the options
this.countryOptions = allCountries.map(c => {
        return {id: c.sys.id, name: c.name, disabled: c.blockAccess};
      });

Disclaimer - sorry for the chaos commits - i had a bit of a fubar with --rebase.

If you use a disabled attribute on an element, you are going to get the following warning when using reactive forms:
      It looks like you're using the disabled attribute with a reactive form directive. If you set disabled to true
      when you set up this control in your component class, the disabled attribute will actually be set in the DOM for
      you. We recommend using this approach to avoid 'changed after checked' errors.

      Example:
      form = new FormGroup({
        first: new FormControl({value: 'Nancy', disabled: true}, Validators.required),
        last: new FormControl('Drew', Validators.required)
      });

and you will risk "checked after changed" errors. You need to detect reactive forms being used and set disabled directly on the form control and "disable" it in the element in order to avoid the "Checked after changed" errors.

Thanks Greg, i've not seen that warning myself, but i'm probably in need of a slight refresher because i thought this error was specifically when you mixed the formControl' directive on the same element as a disabled` attribute binding on the same element.  Is your comment specific reference to this PR or with the component in general?
Within this PR  - I added the following disable control [disabled]="isCheckboxDisabled(option)"  on the checkbox which isn't on a reactive form element.
I assume you're posting from personal experience though, perhaps it might be worth creating a quick StackBlitz recreating the issue? I'm happy to put the time in to work around the issue if there is one.
Further looking..
We do also have an @Input() disabled for disabling the dropdown button altogether, not a change part of this PR, but non the less would possibly cause the linter/compiler confusion perhaps when seeing a [disabled] with a [formControl] or [formControlName]. If that was the situation, your example is apt, but more in the hands of the implementer of the component to make sure they set disabled in the recommended way to avoid the error.

@KevCJones I have a local test page setup, so I just set up a basic reactive forms test of the current codebase. It all looks good. TBH, I didn't exactly remember how the reactive forms were connected in the module. I've been working on a change to accept an outside input for the filter (so a user could clear the filter when the select box is closed, for example), but I keep running into Checked after changed errors, or even stack overflows. A lot of the time, reactive forms end up being an afterthought in people's minds when they do development. I just wanted to be certain, and I saw elements that had disabled attributes added, and I've had to fix this issue in several cases in my regular work.
So far, this looks good.

I see, good to know its not something i need to act on right now 👍 . If you need a second set of eyes on your feature, feel free to reach out.


jQuery-free version

It would not be easy, but eventually PickMeUp should be freed from jQuery dependency.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/37115980-jquery-free-version?utm_campaign=plugin&utm_content=tracker%2F451958&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F451958&utm_medium=issues&utm_source=github).

Working on it in https://github.com/nazar-pc/PickMeUp/tree/no-jquery

Done in #132


[SPARK-21283][core]FileOutputStream should be created as append mode

What changes were proposed in this pull request?
FileAppender is used to write stderr and stdout files  in ExecutorRunner, But before writing ErrorStream into the the stderr file, the header information has been written into ,if  FileOutputStream is  not created as append mode, the  header information will be lost
How was this patch tested?
unit test case

Test build #79067 has started for PR 18507 at commit 9788b19.

Test build #79067 has finished for PR 18507 at commit 9788b19.

This patch fails Spark unit 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/79067/
Test FAILed.

retest this please

Test build #79077 has started for PR 18507 at commit 9788b19.

Test build #79077 has finished for PR 18507 at commit 9788b19.

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/79077/
Test FAILed.

retest this please

Test build #79082 has started for PR 18507 at commit 9788b19.

LGTM

Test build #79090 has started for PR 18507 at commit 139e16c.

Test build #79091 has started for PR 18507 at commit a22951f.

Test build #79082 has finished for PR 18507 at commit 9788b19.

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

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

Merged build finished. Test PASSed.

Test build #79090 has finished for PR 18507 at commit 139e16c.

This patch fails Spark unit 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/79090/
Test FAILed.

Test build #79091 has finished for PR 18507 at commit a22951f.

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/79091/
Test PASSed.

thanks, merging to master!


MAINT: Move rvs_ratio_uniforms to sampling

Reference issue
N/A
What does this implement/fix?
General sampling methods are in stats.sampling. rvs_ratio_uniforms was added to stats before the module sampling was created. This PR deprecates the function in stats. An equivalent class is created that is consistent to the other sampling methods. It also makes more sense from a performance perspective to initialize a few parameters once when an instance is created whereas rvs_ratio_uniforms computes these parameters every time again.
Additional information
N/A

@chrisb83 please send a note to the mailing list for feedback on the proposed movement and deprecation.

If we do the move, and this will require a user action, I propose that we also use the opportunity to make some keyword only arguments and also rethink some of the param/function names. I know, I am repeating myself... I have an aversion for rvs in particular, but I guess that won't fly since the argument of rvs being the same as other class will be raised. Chicken egg issue

yeah, the method rvs is implemented for all other tools in stats.sampling. let me know if you think renaming parameters is important. My idea was to simply move the existing method and to avoid further changes: that way, the changes for a user are kept to a minimum (and for our code, tests, documentation, too :)

I do at least want to try to use keyword only arguments when sensible.
For the name themselves, I could bite the bullet 😉 But I don't buy the argument or making it simpler for the user. We could have more descriptive names and that would literally take 2s for a user to make the changes. Especially if we are clear in our deprecation message.

Do you prefer RatioUniforms(self, pdf, umax, vmin, vmax, *, c=0, random_state=None) or RatioUniforms(self, pdf, *, umax, vmin, vmax, c=0, random_state=None)?
In the first case, we allow positional arguments for the main parameters, but obviously there is a risk to confuse one of the bounds like umax, etc. In the second case, that would be avoided by enforcing the use of keywords.

Do you prefer RatioUniforms(self, pdf, umax, vmin, vmax, *, c=0, random_state=None) or RatioUniforms(self, pdf, *, umax, vmin, vmax, c=0, random_state=None)?

I definitely prefer the second version with is more explicit and as you pointed out would remove the risk of mixing up what is what.

Done.

No, I have no comments.

Thanks @chrisb83, in it goes then


v17.2.7

[Current coverage][cc-pull] is 100%

Merging [#428][cc-pull] into [master][cc-base-branch] will not change coverage

@@           master   #428   diff @@
====================================
  Files          24     24
  Lines         358    358
  Methods        81     81
  Messages        0      0
  Branches        0      0
====================================
  Hits          358    358
  Misses          0      0
  Partials        0      0

Powered by Codecov. Last updated by [cdc4edb...6de1606][cc-compare]
[cc-base-branch]: https://codecov.io/gh/eugene-matvejev/battleship-game-api/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/eugene-matvejev/battleship-game-api/compare/cdc4edbd678e38b0f24cfd3104b27820667a49fd...6de160675cc4f8a79bfa087584afae1483b12998
[cc-pull]: https://codecov.io/gh/eugene-matvejev/battleship-game-api/pull/428?src=pr


"take" does not win the "race" in a cancelled saga's finally block

Steps to reproduce
Description of the bug/issue
I'm not sure if this is a bug or a mis-use. I have a  situation where I have a cancelled saga in which I do some continues work in the finally block and I race between a promise and a take effect.
However, the take effect never wins the race, even though the action is dispatched.
Steps to reproduce the bug/issue
Here's a simple setup similar to what I have.
import { put, call, cancel, race, spawn, take } from "redux-saga/effects";
import { delay } from "redux-saga";

export function* incrementEverySecond() {
  try {
    while (true) {
      yield call(delay, 1000);
      yield put({ type: "INCREMENT" });
    }
  } finally {
    const { stop } = yield race({
      stop: take("STOP"),
      timeout: call(delay, 2000)
    });

    if (stop) {
      yield put({ type: "TIMES100 " });
    } else {
      yield put({ type: "RESET" });
    }
  }
}

export default function* rootSaga() {
  const task = yield spawn(incrementEverySecond);
  yield take("STOP");
  yield cancel(task);
}

Example

Actual results
take does not "win" in finally block of cancelled saga.
The Expected results
take would "win the race" over call
Environment information
From package.json:
"dependencies": {
    "prop-types": "15.6.2",
    "react": "16.5.2",
    "react-dom": "16.5.2",
    "redux": "4.0.0",
    "redux-saga": "0.16.0"
  }

I also did a quick try with the latest beta (1.0.0-beta.2) version. In that one it doesn't even seem to "start" the race:

Never mind, looks like this was resolved in the latest beta version.
https://codesandbox.io/s/rprykrpp


[editorial] google_analytics.html: trim trailing whitespace from tpl actions

"Editorial" change only: from {{ ... }} to {{ ... -}}, to trim template action trailing whitespace.

To be consistent with other embedded templates can we trim leading instead? For example:
https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/schema.html

Sure whatever convention you prefer.

Trim leading please... thanks.

Ok, done ✨


KeyError in convert_hf_checkpoint.py when using 'TinyLlama-1.1B-intermediate-step-480k-1T' checkpoint

Encountered a KeyError running convert_hf_checkpoint.py with the specified checkpoint directory 'checkpoints/PY007/TinyLlama-1.1B-intermediate-step-480k-1T'. The error occurs in lit_gpt/config.py at the line(85) conf_dict = name_to_config[name].copy().
Command: python scripts/convert_hf_checkpoint.py --checkpoint_dir checkpoints/PY007/TinyLlama-1.1B-intermediate-step-480k-1T

Hello @Visanth-dev
I just tried to do the steps described in tutorials/download_tinyllama.md with the latest code from main branch and latest packages (from requirements.txt) and all worked fine.
Try to pull the latest changes and upgrade packages (ideally in a freshly created virtual environment).

@carmocca
Is there a way to display a user recommendations to use the latest code/packages before submitting an issue?


Foundry V9 and Older compatible URLs Broken

URLs for older versions of the module are all configured for version 2.0.0 of this module

Thanks for the report. I gave you a DL link directly via Discord yesterday, but have since made improvements to the releases so this should be fixed for everyone without requiring any manual effort. Please re-open if you find that not to be the case.


UnmarshalingWithContext support

Adds support for serializing to UnmarshalingWithContext conforming objects or arrays to allow for supporting ManagedObjects. Also adds serialization just to Marshal's JSONObject type. Brings our serialization support to date to:

just a plain JSONObject
in-memory objects (Unmarshaling) and arrays
persisted objects (UnmarshalingWithContext) and arrays

@nevillco @adamhrz Just implemented this in [CLIENT REDACTED] and wanted to pass along the updates.


Save disabled_by in entity registry

Description:
The entity registry supports a disabled_by field to exclude entities from being processed. When the entity_registry is automatically generated/updated by HA, the disabled_by field was not included and would be stripped out.
Related issue (if applicable): fixes #13643
Pull request in home-assistant.github.io with documentation (if applicable): N/A
Example entry for configuration.yaml (if applicable):
N/A
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass

Can you update the test to make sure we don't forget about it again

Merging it without the test because I don't want to have disabled_by added to get_or_create just yet. It's still an experimental attribute.