Add license headers to all source files

See Issue 169 on casl-ansible

For CASL (including both casl-ansible and infra-ansible), we discussed this as part of our weekly CASL call last week and agreed that we will not add the license info to every file. However, we will enforce that each role has the necessary format for documentation, including the license info - as seen here:
https://github.com/oybed/infra-ansible/tree/dns-rework7/roles/dns#license

And on this week's CASL call I was explaining that there are several public sector clients which this would not be sufficient for. Eric and the rest discussed and said that as long as:

It can be automated using a Git hook
It was just the short-version header

They felt like this was acceptable.

@InfoSec812 for CASL that's a discussion I should be part of (and this is all news to me and no notes has been captured about it). Let's re-discuss when we get a chance.

Sounds like a plan @oybed

let me know where this lands. we'll follow suit with casl.

Closing this issue as it seems to be dead. Feel free to reopen when/if needed.


Create applications for subservient

Hi,
I would like to kindly ask how can I create C applications for subservient (use the uart, etc). In SERV, the flow indicates installing Zephyr SDK and west. Should I follow the same steps with subservient as well?
Many thanks,
Kostas

Hi,
I combined .S with .c files.
Thanks,


fix(docs): exclude markdown content from search previews

This addresses the issue outlined in #59 when traversing docs' content between search results.
I might also consider debouncing search to mitigate any further overhead in search.

Seems like a good thing to do, with more libs the slower it would be


Add a way to convert json to Message/Embeds

General Troubleshooting

[X] I have checked for similar issues on the Issue-tracker.
[X] I have updated to the latest JDA version
[X] I have checked the branches or the maintainers' PRs for upcoming features.

Feature Request
As indicated in the title, the idea would be to add a way to convert a json to some entity in JDA
There is already the EntityBuilder in JDA which allows to create some entities, however, this is not considered as an "official" way to do it and does not support the set of entities that might be useful
A simple use case would be to make it much easier to store custom embeds for servers to see complete messages (containing embeds and components)
Let's imagine for example a bot that allows to send personalized messages, a user who wants to create his personalized message could simply provide it in json (retrieve from a site such as discohook for example) to then be sent with the bot (which would check the validity of json etc)
Example Use-Case
public MessageEmbed createEmbed(String json, JDA jda){
   return jda.createEmbedFromJson(json)
}

We can imagine an equivalent for other types of entities such as messages, modals and other elements that could have a rendering to users

There are internals iirc that cam be used. And this would be a very niche use case imo.

Sounds great!
As addition a way to export the Entity as json?
Otherwise we would need to use something like GSON for that and it could lead to inconsistency?

I recall Minn mentioning a reason as to why conversion from/to json isn't exposed on a public level in the API, but I can't recall what it was.

It is unlikely that we can support full message objects, simply because message features vary depending on the endpoint they utilize. For instance, POST/channels/:channel_id/messages supports nonce and stickers, while other endpoints do not.
However, supporting embeds seems to be reasonable. I've opened a PR for embed deserialization in #2471. This will allow you to create an instance of EmbedBuilder from a DataObject, which can parse both JSON and ETF.
A lot of other entities in JDA already support this ser/de through similar toData() and fromData methods.

It is unlikely that we can support full message objects, simply because message features vary depending on the endpoint they utilize. For instance, POST/channels/:channel_id/messages supports nonce and stickers, while other endpoints do not.

Can't we imagine partial support for messages by removing non-general elements by default?

Or support messages fully and just ignore the unsupported parts internaly?

Supporting messages is too inconsistent and confusing. It would also not be capable to support attachments due to them not being JSON representable.

Would it be able to store attachments as a base64 string?

Shouldn't this be closed since the PR got merged or will it stay open till next release?

We usually close issues on releases.

Resolved with 5.0.0-beta.11


Docs deploy is currently broken

As of landing #660 , docs deployment is broken.
#665 has been opened to mitigate the problem and propose a longer-term fix to avoid the issue in the future.

This is fixed with #665


[nrf5] Add information about platform being deprecated

Problem
Platform based on the nRF5 SDK for Thread and Zigbee is in the maintenance mode and support for it will be removed from the CHIP project repository.
To develop CHIP applications on Nordic Semiconductor devices such as nRF52840, developers can use the platform based on the nRF Connect SDK.
This topic has been discussed in the SW TT meeting. Please look at Zigbee's Casauway for a more detailed presentation.
Feel free to give feedback about the deprecation of nRF5 SDK based platform process.
Summary of Changes
Add information about the deprecation of nRF5 SDK platform to the example's README and building process.
fixes: #3075

@mspang, happy?

@saurabhst @BroderickCarlin @jelderton @hawk248 ?


feature: support deserializing registered CBOR tag to an interface type

What version of fxamacker/cbor are you using?
2.3.0
Does this issue reproduce with the latest release?
What OS and CPU architecture are you using (go env)?
go env Output
$ go env
set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\Guillaume\AppData\Local\go-build
set GOENV=C:\Users\Guillaume\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\Guillaume\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\Guillaume\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=C:\apps\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=C:\apps\Go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.17.3
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=D:\Coding\Go\test-cbor\go.mod
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0 -fdebug-prefix-map=C:\Users\GUILLA~1\AppData\Local\Temp\go-build758706208=/tmp/go-build -gno-record-gc c-switches

What did you do?
This code prints an err at the Unmarshal step.
type B interface {
	Foo()
}

type C struct {
	Field int
}

func (c C) Foo() {

}

type A struct {
	Field B
}

func main() {
	tags := cbor.NewTagSet()
	err := tags.Add(cbor.TagOptions{EncTag: cbor.EncTagRequired, DecTag: cbor.DecTagRequired}, reflect.TypeOf(C{}), 279)
	if err != nil {
		panic(err)
	}
	encMode, _ := cbor.PreferredUnsortedEncOptions().EncModeWithTags(tags)
	decMode, _ := cbor.DecOptions{}.DecModeWithTags(tags)

	data, _ := encMode.Marshal(A{Field: C{Field: 5}})
	var orig A
	err = decMode.Unmarshal(data, &orig)
	if err != nil {
		panic(err)
	}
	fmt.Println(orig)
}

I either do not understand how to use this library or there is a bug somewhere.
What did you expect to see?
Not a panic. Unmarshal should be working.
What did you see instead?
panic: cbor: cannot unmarshal map into Go struct field main.A.Field of type main.B

If I define the interface B like that instead :
type B interface {}

B becomes an alias to interface{} and then Unmarshal works, correctly reading the cbor tag.

Thanks for reporting this.
One workaround is to make this change:

Decoder needs to decode to orig := A{Field: &C{}}, instead of var orig A.  Currently decoder needs to know the specific type of interface to decode to.

This scenario is interesting because CBOR data contains a tag number which decoder can use to create an object without any other hint.  To determine if supporting this (without the workaround) is feasible, I'll need to look into it.
Please let me know if this works for you.
https://go.dev/play/p/i6EszRImp2__b
package main

import (
	"fmt"
	"reflect"

	"github.com/fxamacker/cbor/v2"
)

type B interface {
	Foo()
}

type C struct {
	Field int
}

func (c C) Foo() {
}

type A struct {
	Field B
}

func main() {
	tags := cbor.NewTagSet()
	err := tags.Add(cbor.TagOptions{EncTag: cbor.EncTagRequired, DecTag: cbor.DecTagRequired}, reflect.TypeOf(C{}), 279)
	if err != nil {
		panic(err)
	}
	encMode, _ := cbor.PreferredUnsortedEncOptions().EncModeWithTags(tags)
	decMode, _ := cbor.DecOptions{}.DecModeWithTags(tags)

	data, _ := encMode.Marshal(A{Field: C{Field: 5}})

	orig := A{Field: &C{}}
	err = decMode.Unmarshal(data, &orig)
	if err != nil {
		panic(err)
	}
	fmt.Printf("decoded to %+v, Field %+v\n", orig, orig.Field)
}

Well, the problem is that with your workaround, I loose the main point : decoding an unknown struct bound by an interface.
Consider this case :
type Task interface {
	Do()
}

type MoveTask struct {
	// omitted
}

// MoveTask impl Task

type SingTask struct {
	// omitted
}

// SingTask impl Task

type Tasks struct {
	Tasks []Task
}

I can encode but not decode :
	data, _ := encMode.Marshal(Tasks{Tasks: []Task{MoveTask{}, SingTask{}}})
	var tasks Tasks // I can't specify the type more than that
	err = decMode.Unmarshal(data, &tasks)
	if err != nil {
		panic(err)
	}
	fmt.Println(orig)

Usually, libraries that support this add a discriminator (manually or automatically defined) to the serialized objects that identify the type. I tought that it was the intent of CBOR tags since I also specify the Go type, but it apparently isn't.
Also, another surprising bit. If I relieve the interface constraint like that :
type Task struct {
	Tasks []interface{}
}

It is now able to decode each struct in the slice properly (given I define a CBOR tag for each struct).

Yes, I agree the workaround isn't exactly the same as what you were trying to do.
The difference in behavior you describe is because the decoder takes two different paths depending on the type being decoded to:

interface{}
all other types

Thanks for going into more detail.  I'll try to make time to look into it.  It seems a worthwhile improvement.  :+1:

@Gui-Yom I'll implement and include this feature in the next release.

@Gui-Yom  I created PR #308 to resolve this issue.  Please take a look and let me know if it works for you.


Certain embedded fonts not rendering properly in web viewer in Firefox

When I go to the pdf.js web viewer (pdfjs-1.2.109-dist) and open this PDF using IE 11, it views fine. However, when I go to the same URL and open the same document using either the latest version of Firefox (v44.0.2) the font does not appear to render and there are appear encrypted font for only normal weight font type text. (The PDF loads and displays as expected when using a stand-alone PDF view, such as Adobe Acrobat Reader.)
Here is a screenshot of that console error in Firefox (v44.0.2):

pdf.zip

As far as I can tell, the problematic PDF file is not included anywhere in the issue (the .zip file only contains a .js file).
As outlined https://github.com/mozilla/pdf.js/blob/master/CONTRIBUTING.md, please provide the PDF file itself in order for this issue to be valid.

Here, i have attached the PDF.
PDF_File.zip

Reduced test-case, without password, available here: issue7020_reduced.pdf.
From the console:
PDF b81d91f1677947719abd15ea0fd835cf [1.7 - / -] (PDF.js: 1.4.107 [WebGL]) viewer.js:7135:7
downloadable font: name: Faile to write name entry (font-family: "g_d0_f1" style:normal weight:normal stretch:normal src index:0) source: (invalid URI) <unknown>
downloadable font: name: failed to serialize table (font-family: "g_d0_f1" style:normal weight:normal stretch:normal src index:0) source: (invalid URI) <unknown>
downloadable font: rejected by sanitizer (font-family: "g_d0_f1" style:normal weight:normal stretch:normal src index:0) source: (invalid URI) <unknown>
downloadable font: font load failed (font-family: "g_d0_f1" style:normal weight:normal stretch:normal src index:0) source: (invalid URI) <unknown>
Warning: Failed to load font ""g_d0_f1"": SyntaxError: An invalid or illegal string was specified pdf.js:368:5


Bad Handshake

Currently receiving the error message below.
time="2017-05-30T21:41:19Z" level=error msg="Failed to connect to proxy." error="websocket: bad handshake"
time="2017-05-30T21:41:19Z" level=error msg="websocket: bad handshake"
time="2017-05-30T21:41:24Z" level=info msg="Connecting to proxy." url="wss://domain .cloud/v1/connectbackend?token=eyJhbGciOiJSUzI1NiJ9.eyJyZXBvcnRlZFV1aWQiOiI0NGNlMTY3Yy01NTc4LTRiZmQtNTUzZS1kMTgwMzBlYWFhZWYiLCJzdWIiOiJjYXR0bGUiLCJraWQiOiJkZWZhdWx0IiwiaXNzIjoiaHR0cDpcL1wvY2F0dGxlL
The Shell and Stats are currently not working in the UI.
Has anyone got any thoughts?

 You need to use TCP load balancer for websockets to function. Relevant documentation here.

Let us know if that does the trick @gordymunro3

Yep, we have example configs available in the docs. http://rancher.com/docs/rancher/v1.6/en/installing-rancher/installing-server/basic-ssl-config/


dataset not available

Hi, it seems that the download links in AIM 2020 challenge are not accessible any more. Could you share the dataset if you have any local backups?

links

Same as your situation, have you found the dataset?

links

Same as your situation, have you found the dataset?

No, I have also email the organizer but still no response

links

Same as your situation, have you found the dataset?

Hi, Dr.Peng has kindly shared the EBB dataset here.


Need GitHub JWT Alternative

When this is used as a GitHub Action, we can get away with GitHub JWT auth as part of the normal authentication.
In Akeyless, we have a GitHub user already authorized, and combined with the access-id, we only need to call  core.tl.getIDToken(); to get a token to authenticate with Akeyless
Here's the high level view of this function.
async function jwtLogin(apiUrl, accessId) {
  const api = akeylessApi.api(apiUrl);

  let jwtToken = undefined;

  // TODO problem - I need a way to replace GitHub JWT auth when running in Azure DevOps
  jwtToken = await tl.getIDToken();

  return api.auth(
      akeyless.Auth.constructFromObject({
        'access-type': 'jwt',
        'access-id': accessId,
        jwt: jwtToken
      })
    );
}

Problem
when this code is running in an Azure DevOps pipelines, we do not have a getIDToken() method in the SDK that accomplished the same thing. We need an alternate way.
There is a https://github.com/microsoft/azure-pipelines-task-lib/blob/master/node/docs/azure-pipelines-task-lib.md#taskendpointauthorization-  option, but I believe that is only good for existing Service connections available to the pipeline.

Now that the source code is in main, here's a direct path
https://github.com/LanceMcCarthy/akeyless-extension-azdo/blob/36193188f69e52c6fa9a363ef524329c8e8668f9/tasks/akeylesstask/src/auth.js#L22


Updated the entity names for all z-wave devices.

Z-Wave have a unique node id, this is now added to the entity name.
This is a change will break old configs.  The Z-Wave entity_id will have to be updated in configurations.
The reason for this change is that the old behavior created duplicate entity_ids if you have several similar devices. The order devices is included is not consistent so when the service was restarted the entity ids could change and the configuration for entities will be invalid.
There was also inconsistencies between the naming for sensors and switches.
(cherry picked from commit 33a78df)

Wouldn't it be better to just add the Node ID to the Entity ID rather than to the Name? If the Node ID is added to the name, then wont Z-Wave users be forced to rename every single device in their config?

I agree with @rmkraus . You can manually set the entity_id attribute on an entity to prevent it from being auto generated. The entity_id for Z-Wave devices could be a combination of node_id and command_class.

Sure I could implement the entity_id property, but wouldn't that also require all z-wave users to update all the z-wave entity_id the config files?
The reason I changed the name was so I would be a tighter connection between the displayed name and the entity_id. If i were to generate the entity_id from just node_id and command_class it will just be two numbers and it will be very confusing config files.
I think it's good that there is a connection between the name you see in the interface and the config values.
I could generate a similar entity_id as the name so that the names will be as before and the entity_id as like the name but with the appended node_id, what do you think?

That sounds good. Are names unique per command class? Or does command class
has to be in it?
On Mon, Jan 25, 2016, 02:46 Stefan Jonasson<EMAIL_ADDRESS>wrote:

Sure I could implement the entity_id property, but wouldn't that also
require all z-wave users to update all the z-wave entity_id the config
files?
The reason I changed the name was so I would be a tighter connection
between the displayed name and the entity_id. If i were to generate the
entity_id from just node_id and command_class it will just be two numbers
and it will be very confusing config files.
I think it's good that there is a connection between the name you see in
the interface and the config values.
I could generate a similar entity_id as the name so that the names will be
as before and the entity_id as like the name but with the appended node_id,
what do you think?
—
Reply to this email directly or view it on GitHub
https://github.com/balloob/home-assistant/pull/982#issuecomment-174467396
.

This will still require all z-wave users to update their configurations. But the names will be intact.
Did not add command_class because it was no point, It could be several values with the same command_class like in my switch example.

As long as there's documentation with the update of the breaking changes there shouldn't be any bigger problems.  This is something I would have loved first time i setup my Z-wave devices since the naming didn't really help to differentiate between my devices =)

I think it would make sense to create a Zwave class that contains entity_id, unique_id that we have all other classes inherit from. (python supports multiple inheritance)

Moved all duplicated code to a common ancestor. Looks much better!

@stefan-jonasson,

Did not add command_class because it was no point, It could be several values with the same command_class like in my switch example.

I think we need to have a command class number in the name after all. See my investigation into #1828. The COMMAND_CLASS_METER version of sensor.aeotec_smart_energy_switch_power_4 is overwriting the COMMAND_CLASS_SENSOR_MULTILEVEL and preventing it from processing updates. In this case, it seems the device should send updates for both command classes (and maybe can be configured to do so), but anyway I think command classes need to be reflected in the name.
Alternatively (and more seamlessly, since we don't have to break everyone's configs again), we could use an instance count and if there are more than one entities, we append a count number (>1). This looks like it is partially implemented in homeassistant.components.zwave._object_id but nothing seems to be incrementing the value.instance count. If we can just set that up, I'd be happy. Haven't found where to do it yet though.  The challenge here is that it seems that the different overlapping command classes can be discovered in different orders, so the COMMAND_CLASS-based name is more stable and robust.
Perhaps a name like sensor.aeotec_smart_energy_switch_power_50_4 for COMMAND_CLASS_METER (50) and  sensor.aeotec_smart_energy_switch_power_49_4 for multi-level sensor. That's kind of ugly, but it's robust. Other ideas?

Yeah, using
    object_id = "{}_{}_{}".format(slugify(_value_name(value)),
                               value.node.node_id, value.command_class)

totally makes things update better in #1828. But it's a very breaking change for all zwave stuff. And I don't really like the ugly command class numbers.


Omit fields extra typescript option

This PR adds omitFields to ExtraTypeScriptOptions. The general ideas was taken from this similar library for generating mobile types from Haskell: https://github.com/MercuryTechnologies/moat
The motivating example is better support for breaking changes to TypeScript types.
When you want to deprecate a record field, to replace it with another field of an incompatible type, typically there's a period of time in which the backend will send both fields simultaneously. This allows existing web clients that have not received the new frontend bundle to continue working, while simultaneously supporting a new frontend bundle that makes use of the new field. Without omitFields, the generated TypeScript will include the deprecated field that only exists for older clients. This forces new client code to deal with both fields or humans to edit the generated TypeScript.
Here's a concrete example, imagine you have an existing record:
data User { name :: String, age :: Int }
$(deriveJSONAndTypeScript defaultOptions ''User)

Let's say you realize what you really want on the client "birthday", not "age". You could do this:
data User { name :: String, age :: Int, birthday :: Day }
$(deriveJSONAndTypeScript' defaultOptions ''User defaultExtraTypeScriptOptions {omitFields = ["age"]})

You can safely deploy this change immediately, as existing web clients will still be sent the age key they expect. You can also cleanly develop a change using birthday, since your types no longer contain age. It'll be trivial to ensure the entire client has migrated, so removing age later (after enough time for existing clients to upgrade) will be very safe.
I've pulled this change into a large production codebase to confirm it works in practice.
There's a potential followup PR to add omitCases. The general idea is the same, but it allows for excluding sum type cases, rather than product type fields.

Replacing with an upstream PR (apparently you can't change the target repo, only the target branch).
https://github.com/codedownio/aeson-typescript/pull/31


fix BigDecimal is converted to scientific notation when using Generic

What is the purpose of the change
fix BigDecimal is converted to scientific notation when using Generic
Brief changelog
Verifying this change
see #9562

Checklist

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Add some description to dubbo-website project if you are requesting to add a feature.
[ ] GitHub Actions works fine on your own branch.
[ ] If this contribution is large, please follow the Software Donation Guide.

https://github.com/apache/dubbo/pull/9692[)](https://github.com/apache/dubbo/commit/3d6c6daef8a37f65eab3b9a3fa209d91acc5629f)[](https://github.com/tanoak10)

https://github.com/apache/dubbo/pull/9692


Auto follow distance is broken

Issue description
Auto follow distance is broken.  You can see that when setting it to true in the example project, it doesn't work.  I put in a PR for a fix here: https://github.com/ramokz/phantom-camera/pull/276
Looks like an incorrect field assignment got caught up in the refactor
Steps to reproduce
NA
(Optional) Minimal reproduction project
NA

Fixed in #276
Thanks again!


FF4jExceptionHandler @Order to low

Hello,
I face a problem regarding the FF4jExceptionHandler.
The problem is that in my spring application I have several Rest controllers and thus, several ExceptionHandler associated with them.
One of them is a default ExceptionHandler (with @Order set to Ordered.LOWEST_PRECEDENCE) that trigger on Exception.class.
But I noticed that the FF4jExceptionHandler class does not have the @Order annotation and thus, use the lowest precedence by default.
So for exemple, whenever a FeatureNotFoundException is raised, it is caught by my default ExceptionHandler instead of the FF4jExceptionHandler.
Just adding the @Order annotation to the FF4jExceptionHandler class with a value different from Ordered.LOWEST_PRECEDENCE resolved the problem.

Hello,
No issue to add something like if relevant.
@Order(0)

Now, does it introduce side-board effect if no other @Order annotation is used anywhere. @paul58914080 ?

@clun that shouldnt be a problem.

Part of 1.7 release


wrap-guide not visible?

Thanks for this nice theme! I noticed that the wrap guide at column 80 is no longer visible when I switch to this theme. Is there any way to configure that to be visible? Thanks!

ahh not at the moment, I removed a bunch of stuff that I don't use haha

OK, no problem. I just found the spot in the source to modify it. :)


Issue with /docs/tutorials/stateless-application/hello-minikube/

This is a...

[ ] Feature Request
[x ] Bug Report

Problem:
I am trying to complete "Hello Minkube" exercise. When I run the below command I get error.
Command : "docker build -t hello-node:v1 ."
Error: "Sending build context to Docker daemon 3.072 kB
Step 1 : FROM node:6.9.2
Pulling repository docker.io/library/node
Tag 6.9.2 not found in repository docker.io/library/node"
I am doing this on Mac OSX 10.11.6
Docker version
_Client:
Version:      1.12.1
API version:  1.23
Go version:   go1.7.1
Git commit:   6f9534c
Built:        Thu Sep  8 10:31:18 2016
OS/Arch:      darwin/amd64
Server:
Version:      1.11.1
API version:  1.23
Go version:   go1.5.4
Git commit:   5604cbe
Built:        Wed Apr 27 00:34:20 2016
OS/Arch:      linux/amd64_
Proposed Solution:
I guess the NODE version mentioned in Dockerfile is not available now, What would be the right version?
Content of dockerfile:
"FROM node:6.9.2
EXPOSE 8080
COPY server.js .
CMD node server.js"
Page to Update:
http://kubernetes.io/...

It worked. Didn't make any change, it simply started working after coffee break. Coffee usually solve most problems.


Remove permitted option from next_node with block

In #2374 auto-detecting of permitted next nodes was made the default behaviour and most of the flows were changed to not specify the permitted option on calls to next_node.
This PR does the following:

Removes the few remaining occurrences of the deprecated permitted option
Removes the ability to specify the deprecated permitted option
Removes some code which becomes unreachable because of the latter change
Updates the documentation to match the new behaviour

Motivation
This is another small step towards simplifying the flow DSL and in particular the code in SmartAnswer::Question::Base.
Also it will prevent any accidental "regression" to the deprecated syntax.
Internal changes
Before
Deprecated usage:
next_node(permitted: [:green?, :red]) do |response|
  if response == 'green'
    :green?
  else
    :red
  end
end

After
The above is no longer allowed and must be written as:
next_node do |response|
  if response == 'green'
    question :green?
  else
    outcome :red
  end
end

External changes
None. This is just a refactoring and should not cause any externally visible changes.

This looks good, maybe it's worth a run through the regression test suite before merging?

@erikse: Thanks. I'll run all the regression tests locally before rebasing this and getting it merged.

The regression tests all passed. Merging.


It's a lot of error after I add SwiftColorPicker to pod file

It's a lot of error after I add SwiftColorPicker to pod file

How can I fix them?

try to use the latest version. I comitted the changes for the latest xcode version today

Same thing here..

I updated the Syntax to Swift 3.0


[Some Mod Compatibility Ideas]

I was going through a my list of mods and thought you might be interested in a small list of mod compatibility ideas:
Immersive Weathering (4 items)
BetterNether (5 food items and 2 "Medicine" items)
BetterEnd (14 items)
Bewitchment (9 items?)
Bewitchment Plus (just Dragon Fruit?)
Terrarian Slimes (just Apple Pie and Ice Cream)
Go Fish (40 items)
MobZ (just Thick Rotten Flesh)
Nears  (10 items)
Better Animals Plus (15 items)
Adorn (4 items)
Create [Fabric] (5 items?)
Reaping Mod (1 item)
But this are only ideas (for 113 items, yes...) for 1.18.2.
And thanks for awesome mod!
P.S.: "?' means "idk exactly".

most mods have a license that prevents me from using their assets D:

license that prevents me from using their assets

Oh..... What a shame...
Okey, thanks for the response!


Add it in mplug script directory

Mplug is like a package manager but for mpv scripts.
Please add your script there (if already not there) and also installation instructions in manifest - https://github.com/Nudin/mpv-script-directory/blob/master/HOWTO_ADD_INSTALL_INSTRUCTIONS.md

I don't use mplug, so it's up to someone who uses it to do this.
PRs are welcome 😅


Fail to run "func host start" with an error on Mac

OS: Mac
Build Version: 20190717.3
Func Version: 2.7.1468
Dotnet Version: 2.2.105
Repro Steps:

Create a C# project.
Try to debug it.

Expect:
Succeed to debug the C# project.
Actual:
Pop up an error "Setting unsupported .NET environment variables (empty string) is not implemented.".

More Info:
This issue doesn't reproduce on Windows with below configurations.

I'm also facing this error, I just started my first azure function and this happen. can't proceed for deployment.
but simple local function works.

Filed an issue on the func cli: https://github.com/Azure/azure-functions-core-tools/issues/1447

As a workaround, you can remove "AzureWebJobsStorage": "", from local.settings.json

Hi Eric, thanks for your share, and it works well after removing the "AzureWebJobsStorage":""  from local.settings.json.

It works! thanks.

This was fixed in v2.7.1480 of the func cli

Hope you also noticed the typo in the error message “environemt”

Hi @jfversluis , thanks a lot for your reminding. And I will pay more attention to the spelling :).


Verify dependabot changes

Summary of PR changes
Re-creating the same changes as dependabot in #39.  Verify the tests are working as expected.

Completed testing.  #39 was merged.


"login" route is buggy

Pointing the browser directly to the "login" route, or reloading the page while the "login" route is currently active, does not work. In both cases there is a redirect to "gamesinprogress" which leads to an authentication error.

Possibly related: When pointing the browser to the "/" route, there is redirect to "gamesinprogress" before there is a redirect to "login".


About: Bleed-Through Removal from Degraded Documents

Firstly thank you for your great work. I am newbie about AI. I need your help.
My question is about "Bleed-Through Removal from Degraded Documents" I have some images for testing. Your Docres "appearance" task almost works perfectly. I would like to clean images than try to detect text with "Craft" model. But some transparent object in image, causes problems. Some samples are as following.
Thank you in advance for your effort.

Orginal
DocRes
Craft

Orginal
DocRes
Craft

Orginal
DocRes
Craft

Firstly thank you for your great work. I am newbie about AI. I need your help.
My question is about "Bleed-Through Removal from Degraded Documents" I have some images for testing. Your Docres "appearance" task almost works perfectly. I would like to clean images than try to detect text with "Craft" model. But some transparent object in image, causes problems. Some samples are as following.
Thank you in advance for your effort.

Thank you for your interest in our work. For the bleed-through degradation, we primarily simulated it in our training data using the bleed_through function. In the images you provided, the bleed-through is quite severe. I believe the simulation in the training data needs to be more intense, such as reducing the value in this line from 0.75 to a smaller number, and then fine-tuning the model. Additionally, you might want to try our other work, GCDRNet, which is specifically designed for appearance enhancement and might yield better results.

Firstly thank you very much for your quick answer. Acctually I have tried GCDRNet before DocRes with same test images. But DocRes result is better than GCRNet for me.
As I understand from your answer, I should train again your used dataset by changing   0.75 value. am I right?

Firstly thank you very much for your quick answer. Acctually I have tried GCDRNet before DocRes with same test images. But DocRes result is better than GCRNet for me.
As I understand from your answer, I should train again your used dataset by changing 0.75 value. am I right?

Yes, that's correct. If you're not concerned with other tasks (such as binarization or correction), you can train only the appearance task, which will simplify things.

Firstly thank you very much for your quick answer. Acctually I have tried GCDRNet before DocRes with same test images. But DocRes result is better than GCRNet for me.
As I understand from your answer, I should train again your used dataset by changing 0.75 value. am I right?

Yes, that's correct. If you're not concerned with other tasks (such as binarization or dewarping), you can train only the appearance task, which will simplify things.

hi, how to make the appearance data? your readme.md is not clear. data/preprocess/shadow_extract.py->data/MBD/infer.py->loaders/docres_loader.py


Add benchmarks using benchmarking system.

We currently have no proper weight assignment for these pallets and will need to add them.

Shawn_Tabrizi_-_Benchmarking_Deep_Dive.pdf
This might be helpful too @filiplazovic


Closing round bracket indentation

with the default options, the closing round bracket in return clause is indented one level more.
class App extends Component {
  render() {
    return (

          To get started, edit src/App.js and save to reload.

      ); // prefer aligned with return instead of

  }
}

I am using<EMAIL_ADDRESS>and<EMAIL_ADDRESS>

Any fix for this?


import model error

when I run commands like
rake environment elasticsearch:import:model CLASS=Topic FORCE=y

it gave eroor below:
Elasticsearch::Transport::Transport::Errors::BadRequest: [400] {"error":{"root_cause":[{"type":"mapper_parsing_exception","reason":"Failed to parse mapping [topic]: The [string] type is removed in 5.0 and automatic upgrade failed because parameters [term_vector] are not supported for automatic upgrades. You should now use either a [text] or [keyword] field instead for field [title]"}],"type":"mapper_parsing_exception","reason":"Failed to parse mapping [topic]: The [string] type is removed in 5.0 and automatic upgrade failed because parameters [term_vector] are not supported for automatic upgrades. You should now use either a [text] or [keyword] field instead for field [title]","caused_by":{"type":"illegal_argument_exception","reason":"The [string] type is removed in 5.0 and automatic upgrade failed because parameters [term_vector] are not supported for automatic upgrades. You should now use either a [text] or [keyword] field instead for field [title]"}},"status":400}

the model is
 mapping do
    indexes :title, term_vector: :yes
    indexes :body, term_vector: :yes
    indexes :node_name
  end

  def as_indexed_json(_options = {})
    {
      title: self.title,
      body: self.full_body,
      node_name: self.node_name
    }
  end

  def related_topics(size = 5)
    opts = {
      query: {
        more_like_this: {
          fields: [:title, :body],
          docs: [
            {
              _index: self.class.index_name,
              _type: self.class.document_type,
              _id: id
            }
          ],
          min_term_freq: 2,
          min_doc_freq: 5
        }
      },
      size: size
    }
    self.class.__elasticsearch__.search(opts).records.to_a
  end

hi，the error message is clear,please update the library you are using，the generated mapping is still for elasticsearch 2.x, the issue is not related with this project

sorry for the late reply，closing now


fix(region): fix default network on get desc

What this PR does / why we need it:

Does this PR need to be backport to the previous release branch?:
release/3.11

/lgtm


Fix missing port in HttpUrl.build() result

Change Summary
Previously  passing the port argument into HttpUrl.build() method has lead to including this port number to the output:
assert 'http://example.com:123' == HttpUrl.build(schema='http', host='example.com', port='123')

But a regression was introduced in #2447.
It looks like the desired behavior was to hide default port number for the protocol, but instead any port number was just being ignored.
So I've fixed a check, that only default port numbers become hidden, like 80 for http or 443 to https. Non-default port numbers are left unchanged.
Also I've added a test to cover this case.
Related issue number
No
Checklist

[X] Unit tests for the changes exist
[X] Tests pass on CI and coverage remains at 100%
[X] Documentation reflects the changes where applicable
[X] changes/<pull request or issue id>-<github username>.md file added describing change
(see changes/README.md for details)
[X] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

please review

please update.

Fixed, please check

thanks so much.


Im making a starter angular 4 project and it's getting me a warning

[BUG] Im making a starter angular 4 project and it's getting me a warning
Versions.
@angular/cli: 1.1.3 (e)
node: 6.9.4
os: win32 x64
@angular/animations: 4.2.5
@angular/common: 4.2.5
@angular/compiler: 4.2.5
@angular/core: 4.2.5
@angular/forms: 4.2.5
@angular/http: 4.2.5
@angular/platform-browser: 4.2.5
@angular/platform-browser-dynamic: 4.2.5
@angular/router: 4.2.5
@angular/cli: 1.1.3
@angular/compiler-cli: 4.2.5
@angular/language-service: 4.2.5
@ngtools/webpack: 1.5.0
Repro steps.

I make a clean new project with angular-cli running ng new "project"
I run ng-eject to convert project into webpack
I make another npm install for new dependencies
I run npm run start

The log given by the failure.
WARNING in ./~/<EMAIL_ADDRESS>(Emitted value instead of an instance of Error) Cannot find source file 'compiler.es5.ts': Error: Can't resolve './compiler.es5.ts' in 'C:\Users\jose.segura\WebstormProjects\untitled\testt\node_modules\@angular\compiler
\@angular'
 @ ./~/<EMAIL_ADDRESS>7:0-72
 @ ./src/main.ts
 @ multi (webpack)-dev-server/client?http://localhost:4200 ./src/main.ts

Desired functionality.
The project runs normally but i dont know if this warning will throw errors in the future

Hi again, i solved the problem uncommenting this
// This file only reexports content of the srcfolder. Keep it that way. export { VERSION, TEMPLATE_TRANSFORMS, CompilerConfig, JitCompiler, DirectiveResolver, PipeResolver, NgModuleResolver, DEFAULT_INTERPOLATION_CONFIG, InterpolationConfig, NgModuleCompiler, AssertNotNull, BinaryOperator, BinaryOperatorExpr, BuiltinMethod, BuiltinVar, CastExpr, ClassStmt, CommaExpr, CommentStmt, ConditionalExpr, DeclareFunctionStmt, DeclareVarStmt, ExpressionStatement, ExternalExpr, ExternalReference, FunctionExpr, IfStmt, InstantiateExpr, InvokeFunctionExpr, InvokeMethodExpr, LiteralArrayExpr, LiteralExpr, LiteralMapExpr, NotExpr, ReadKeyExpr, ReadPropExpr, ReadVarExpr, ReturnStatement, ThrowStmt, TryCatchStmt, WriteKeyExpr, WritePropExpr, WriteVarExpr, StmtModifier, Statement, EmitterVisitorContext, ViewCompiler, isSyntaxError, syntaxError, TextAst, BoundTextAst, AttrAst, BoundElementPropertyAst, BoundEventAst, ReferenceAst, VariableAst, ElementAst, EmbeddedTemplateAst, BoundDirectivePropertyAst, DirectiveAst, ProviderAst, ProviderAstType, NgContentAst, PropertyBindingType, NullTemplateVisitor, RecursiveTemplateAstVisitor, templateVisitAll, CompileAnimationEntryMetadata, CompileAnimationStateMetadata, CompileAnimationStateDeclarationMetadata, CompileAnimationStateTransitionMetadata, CompileAnimationMetadata, CompileAnimationKeyframesSequenceMetadata, CompileAnimationStyleMetadata, CompileAnimationAnimateMetadata, CompileAnimationWithStepsMetadata, CompileAnimationSequenceMetadata, CompileAnimationGroupMetadata, identifierName, identifierModuleUrl, viewClassName, rendererTypeName, hostViewClassName, dirWrapperClassName, componentFactoryName, CompileSummaryKind, tokenName, tokenReference, CompileStylesheetMetadata, CompileTemplateMetadata, CompileDirectiveMetadata, createHostComponentMeta, CompilePipeMetadata, CompileNgModuleMetadata, TransitiveCompileNgModuleMetadata, ProviderMeta, flatten, sourceUrl, templateSourceUrl, sharedStylesheetJitUrl, ngModuleJitUrl, templateJitUrl, createAotCompiler, AotCompiler, analyzeNgModules, analyzeAndValidateNgModules, extractProgramSymbols, GeneratedFile, toTypeScript, StaticReflector, StaticSymbol, StaticSymbolCache, ResolvedStaticSymbol, StaticSymbolResolver, unescapeIdentifier, AotSummaryResolver, AstPath, SummaryResolver, JitSummaryResolver, COMPILER_PROVIDERS, JitCompilerFactory, platformCoreDynamic, JitReflector, CompileReflector, createUrlResolverWithoutPackagePrefix, createOfflineCompileUrlResolver, DEFAULT_PACKAGE_URL_PROVIDER, UrlResolver, getUrlScheme, ResourceLoader, ElementSchemaRegistry, Extractor, I18NHtmlParser, MessageBundle, Serializer, Xliff, Xliff2, Xmb, Xtb, DirectiveNormalizer, ParserError, ParseSpan, AST, Quote, EmptyExpr, ImplicitReceiver, Chain, Conditional, PropertyRead, PropertyWrite, SafePropertyRead, KeyedRead, KeyedWrite, BindingPipe, LiteralPrimitive, LiteralArray, LiteralMap, Interpolation, Binary, PrefixNot, NonNullAssert, MethodCall, SafeMethodCall, FunctionCall, ASTWithSource, TemplateBinding, NullAstVisitor, RecursiveAstVisitor, AstTransformer, visitAstChildren, TokenType, Lexer, Token, EOF, isIdentifier, isQuote, SplitInterpolation, TemplateBindingParseResult, Parser, _ParseAST, ERROR_COLLECTOR_TOKEN, CompileMetadataResolver, Text, Expansion, ExpansionCase, Attribute$1 as Attribute, Element, Comment, visitAll, RecursiveVisitor, findNode, ParseTreeResult, TreeError, HtmlParser, HtmlTagDefinition, getHtmlTagDefinition, TagContentType, splitNsName, isNgContainer, isNgContent, isNgTemplate, getNsPrefix, mergeNsAndName, NAMED_ENTITIES, debugOutputAstAsTypeScript, TypeScriptEmitter, ParseLocation, ParseSourceFile, ParseSourceSpan, ParseErrorLevel, ParseError, typeSourceSpan, DomElementSchemaRegistry, CssSelector, SelectorMatcher, SelectorListContext, SelectorContext, StylesCompileDependency, CompiledStylesheet, StyleCompiler, TemplateParseError, TemplateParseResult, TemplateParser, splitClasses, createElementCssSelector, removeSummaryDuplicates }; //# sourceMappingURL=compiler.js.map sourceMappingURL=compiler.es5.js.map
It's the last line of compiler.es5.js at "node_modules/<EMAIL_ADDRESS>I dont know if it's a good solution but it works

#6870 seems to be related to this
It seems to be related to the "source-map-loader" where the exclude-statement via regex doesnt work properly...
You can fix this by manually by editing the ejected webpack.config.json
"module": {
    "rules": [
      {
        "enforce": "pre",
        "test": /\.js$/,
        "loader": "source-map-loader",
        "exclude": [
          // instead of /\/node_modules\//
          path.join(process.cwd(), 'node_modules')
        ]
      },

Can you confirm this solves your problem? Will prepare an pull-request for this then...

Hi,
I have the same issue in this versions:
"dependencies": {
"@angular/animations": "4.3.0",
"@angular/cli": "1.2.3",
"@angular/common": "4.3.0",
"@angular/compiler": "4.3.0",
"@angular/core": "4.3.0",
"@angular/forms": "4.3.0",
"@angular/http": "4.3.0",
"@angular/platform-browser": "4.3.0",
"@angular/platform-browser-dynamic": "4.3.0",
"@angular/material": "2.0.0-beta.6",
"@angular/platform-server": "4.3.0",
"@angular/router": "4.3.0",
"angular2-masonry": "0.4.0",
"awesome-typescript-loader": "2.2.1",
"core-js": "2.4.1",
"express": "4.15.3",
"hammerjs": "2.0.8",
"marked": "0.3.6",
"ng2-translate": "5.0.0",
"rxjs": "5.4.1",
"ts-helpers": "1.1.1",
"zone.js": "0.8.14"
},
"devDependencies": {
"@types/lodash": "4.14.58",
"lodash": "4.17.4",
"@angular/compiler-cli": "4.3.0",
"@angular/language-service": "4.3.0",
"@types/jasmine": "~2.5.53",
"@types/jasminewd2": "~2.0.2",
"@types/marked": "0.0.28",
"@types/node": "~6.0.60",
"codelyzer": "~3.0.1",
"jasmine-core": "~2.6.2",
"jasmine-spec-reporter": "~4.1.0",
"karma": "~1.7.0",
"karma-chrome-launcher": "~2.1.1",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^1.2.1",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"node-sass": "4.4.0",
"protractor": "~5.1.2",
"raw-loader": "0.5.1",
"ts-node": "~3.0.4",
"tslint": "~5.3.2",
"typescript": "~2.3.3",
"typings": "2.1.1"
}
How can I fix it?
Thanks.

I'm having the same problem with a project created with angular-cli v1.4.7.  I ran ng eject and made the modification suggested by @christianscharr, but I still end up with these same warnings.  Any word when a fix will make it to the baseline (I see the mention of v1.3.0 there, but I'm using 1.4.7 and it still has the previous style node_modules exclusion).

@christianscharr Works like a charm. Solved the warning. Thanks!

Could you please explain how did you fix this issue. I am facing the same issue. Exactly where do we need  to copy this code
"module": {
"rules": [
{
"enforce": "pre",
"test": /.js$/,
"loader": "source-map-loader",
"exclude": [
// instead of //node_modules//
path.join(process.cwd(), 'node_modules')
]
},


Emplace/view components with the same type BUT with different id in runtime.

Let's say that I want to make an application that allows you to "define" differents component at runtime. How would you do it?
What I ended doing to store my "dynamic runtime" components using entt was something like that (very simplified for example purposes):
struct RuntimeComponent {
        std::vector<entt::meta_any> variables;
};

This allows to setup that component with different variables at runtime. Problem is that I can't add them to the registry because each different RuntimeComponent instance will be in the same Id and we can't differentiate them in a view.
Is it possible to add the feature to emplace a component with the same type (RuntimeComponent) but with different id? Something like that:
struct RuntimeComponent {
	std::vector<entt::meta_any> variables;
};

RuntimeComponent a;
// add vars to a meta_any vars...

RuntimeComponent b;
// add vars to b meta_any vars...

const id_type aId = 11111111;
const id_type bId = 22222222;
registry.runtime_emplace<RuntimeComponent>(entity, aId, a);
registry.runtime_emplace<RuntimeComponent>(entity, bId, b);

The idea is to use the same struct layout but with different ids to "dynamically create" new types of components to emplace in the registry.
For the views I think we have what we need:
entt::component types[] = { aId , bId };
auto view = registry.runtime_view(std::cbegin(types), std::cend(types));

I think the main problem is the other way around. What if you tried to create a standard view? What pool should it use in this case?
I don't see a proper solution for that unfortunately.
My two cents on this problem. A couple of possible solutions:

Custom pools. If we could specialize pool, users can define a sort of nested registry within a pool that is suitable for runtime purposes. In this case, the standard view would get the pool as-is and return whatever is the type it returns.

User defined matcher for observers. If you could set a free function as a matcher for an observer, you would have literally all the entities split in their own sets through the observers and according to the runtime components they have.

I think the main problem is the other way around. What if you tried to create a standard view? What pool should it use in this case?

As I see it, it should return the pool for the implicitly created RuntimeComponent id (using PrettyFunction) as you are using with others. And it will correctly not show the ones created using a custom id no?
What I'm thinking... is that probably having a more low level registry that works with ids and memory layouts (having the user to make the correct casts) and then having a higher level one that works like a facade to that low level registry generating a implicitly component type id and casting the pools to the type would be useful.
// base registry
base_registry.emplace<Component >(entity, explicitid)
// all functions receive/pass the id (never casting, this should be done in user side)

// higher level registry
// all functions receive/pass the Component type, (it will cast automatically the result of base_registry, so no casting in user side)

registry.emplace<Component >(entity) will use: base_registry.emplace<Component >(entity, type_id<Component>::id() (or whatever you are using there) )

Maybe having the user to manually specify the ids is not a bad idea at all
I know this is a bit offtopic but, and again correct me if I'm wrong, currently the id is generated using prettyfunction. This means that if I a serialize a component using this id and I change the code or the prettyfunction change the output I will have problems deserializing that component, am I right? (ofc I can use a custom id to serialize/deserialize but could be a problem if you don't know that implementation detail and use the id that entt is using)

My two cents on this problem. A couple of possible solutions:
Custom pools. If we could specialize pool, users can define a sort of nested registry within a pool that is suitable for runtime purposes. In this case, the standard view would get the pool as-is and return whatever is the type it returns.

User defined matcher for observers. If you could set a free function as a matcher for an observer, you would have literally all the entities split in their own sets through the observers and according to the runtime components they have.

Could you give us an example of those?
Thank you

As I see it, it should return the pool for the implicitly created RuntimeComponent id (using PrettyFunction) as you are using with others. And it will correctly not show the ones created using a custom id no?

This can quickly become confusing for the final user imho. Moreover, it opens the door to a duplication of the API, so as to support both built-in and user defined pools.

having a more low level registry that works with ids and memory layouts (having the user to make the correct casts)

This is another project in a sense, though it's somehow possible nowadays.
What if you could create a view from a bunch of sparse sets or storage classes?
In this case, you could easily create as many pools for the same type as you want and even mix them with views.
The best would be having a sort of merging view that zips two views and make you iterate them as if they were a single view. In this case, you could combine your runtime views with those generated by the registry.
Funny enough, it's quite easy to make this possible. EnTT is already almost there.

Maybe having the user to manually specify the ids is not a bad idea at all

It would be annoying as heck in all those cases where you don't want/need to use runtime stuff. My two cents.

currently the id is generated using prettyfunction

Yeah, even though it's fully customizable and this part is documented.
If you doubt the stability of these ids, you can provide your own generator. It can be as simple as a registration step during the bootstrap of your application and this wouldn't be different from what other libraries do, that is, forcing the user to do that in all cases and no matter what.
The built-in generator is just convenient in the vast majority of cases but it's not a requirement.

Could you give us an example of those?

Well, you can't (yet) mix sparse sets or different storage with a view (mainly because the view's constructor is private) but you can instantiate how many classes of these types you want and iterate them when needed.
This is already enough to solve your problem. We can introduce tools and feature to make it easy but still...

Sounds perfect! But one more question.
Let's use a real example, let's say that I have an engine with X c++ defined components, Then I have lua bindings to set functions as systems and I want to create Y components in lua that can be viewed by entt in lua.
With your solution can we view X and Y components in the same view?
And how the runtime components would be added to entt using your proposed solution?
We will have to create some C++ component that can hold inside "variables" or it will be more like passing just an id and a sizeofmem param (depending on the variables added in lua to that component) ?
Thank you

No, you won't put them in the registry. That's all. Something like:
const auto entity = registry.create();
registry.assign<position>(entity);

// both these are instances of `entt::storage`
my_storage storage_1;
my_storage storage_2;

// do whatever you want in lua and fill storage_1 and storage_2

auto view = registry.view<position>();
view.zip_each([&](auto entity, auto &position) {
    // entity has position AND storage_1/storage2
}, storage_1, storage_2);

Don't care about the syntax, just guessing out of my mind but this could be a solution.
That is, you create and manage lua pools, even more than once for the same type, then you combine them with actual views generated by the registry to iterate entities that have all components.
Does it make sense?

Yep, it makes sense! That would be awesome :dancers:

The custom path (a new feature of the upcoming release) will make this (and many other things) possible.
I'm closing the issue becuase it's technically done and already available upstream, even though the implementation isn't probably as obvious as it ought be.
I'm also adding a note to the todo list to add an example that will serve as bootstrap for future users. 👍


Any Plan support Apple Privacy Manifest for cocoapods ?

From Apple docs:
Starting in spring 2024, you must include the privacy manifest for any SDK listed below when you submit new apps in App Store Connect that include those SDKs, or when you submit an app update that adds one of the listed SDKs as part of the update. Signatures are also required in these cases where the listed SDKs are used as binary dependencies.
Could you please add a privacy manifest for this library? See the following URLs for additional information:
https://developer.apple.com/news/?id=r1henawx
https://developer.apple.com/documentation/bundleresources/privacy_manifest_files

@ibireme

麻烦支持PrivacyInfo文件

麻烦增加PrivacyInfo文件

麻烦增加PrivacyInfo文件

自己写个总的PrivacyInfo就好，添加到主工程里，不用每个第三方库都加


Adding Cypress to the project

We would like to add Cypress https://www.cypress.io/ to the project and write some automation tests.

Hello there!
I'm new to open-source contribution and I'm interested by your issue.
Can I take a look at it?
Thanks in advance

Hi @Loriage ,
You are welcome. You can take a look into it.
Thanks.

Hi,
Of course for the new script! My question is: Should I run the test on a demo website/page. Usetheform is a node module if I have well understand, not a react application itself. So if  I don't misunderstand, cypress is a webpage tester, no?

Hi @Loriage,
I got what you meant now. Tests should run locally.
Thanks.

Hello @iusehooks,
I'm facing an issue when I'm trying to run a react app with the content of the repo as module.
Here the error:
src/usetheform/hooks/useField.js
Line 465:27:  React Hook "useRef" is called in function "getInitialValue" that is neither a React function component nor a custom React Hook function. React component names must start with an uppercase letter  react-hooks/rules-of-hooks
Line 466:29:  React Hook "useRef" is called in function "getInitialValue" that is neither a React function component nor a custom React Hook function. React component names must start with an uppercase letter  react-hooks/rules-of-hooks
Any ideas?
Thanks.

Hi @Loriage,
may you copy and paste some code example?
Thanks.

@iusehooks Of course!
./testers/App.js:
`import React from "react";
import { Form, Input, useValidation } from "./usetheform";
const preventNegativeNumber = (next, prev) => (next <= 0 ? 0 : next);
const required = (value) =>
value && value.trim() !== "" ? undefined : "Required";
export default function App() {
const onChange = (formState) => console.log("ON_CHANGE : ", formState);
const onSubmit = (formState) => console.log("ON_SUBMIT : ", formState);
const [status, validation] = useValidation([required]);
return (

<Input name="firstname" type="text" touched {...validation} />
{status.error && {status.error}}

Submit

);
}`
Here my installation script:
 #!/bin/env sh cp -r src/ testers/src/usetheform    \ && cd testers                                 \ && npm start
So basically, I copy-paste the sourcefiles of usetheform to my react app, loading it as module and run the app.
Thanks.

Would you also please take a screen shoot of the project structure folders in your IDE?

Here my installation script:
 #!/bin/env sh cp -r src/ testers/src/usetheform    \ && cd testers                                 \ && npm start
So basically, I copy-paste the sourcefiles of usetheform to my react app, loading it as module and run the app.
Thanks.

Yes of course

testers/usrc/usetheform/ is a copy of src/

Would you please try to run in your local npm run build command and than copy and paste the /build/index.js file into src folder and rename it as usetheform.js, so you can remove the usetheform folder.

Seems working a very short time but display this error 0.5second after:

would you please start a clean project downloading it from: https://codesandbox.io/s/still-hooks-tzodd ?

Uhm, facing prettier error now:

The issue is how to launch a testable react app inside the usetheform directory without facing conflict between the repository and the test app.

I think you do not need to use creare-react-app.
I would suggest you to look into the folder named examples and take inspiration of that.
You can excute the command "npm run dev" and than you may create a new .html file inside the folder named examples, then you are ok to start writing tests in cypress. A web server runs at http://localhost:3000/{yourfile}.html
hope it helped.

Working, thanks. I'll continue my tests!

Hi @Loriage,
which approach did you go for?
If you like the library may you please give a github star to it? It helps the project to grow.
Thanks.

Hi @iusehooks,
I'll made my tests on the dev web server

Hello @iusehooks !
First PR here: https://github.com/iusehooks/usetheform/pull/33
Waiting for your feedback!

Hey there, is it open so I can start working on this issue.

Hey I'm new to open source contribution can you asign this challenge that can I enhance my skill...

Hi May I work on this issue to add Cypress?

Hello @iusehooks ,
I found this from GoodFirstIssues, and this project seems very interesting to me, is this still open?
I’m actually just working on adding Cypress to my company’s NestJS backend server with GraphQL.
I’m eager to help contribute and add Cypress to this project ᕦ(ò_óˇ)ᕤ . Please assign this issue to me? Thanks!
@iusehooks

Hey @iusehooks  is this issue still open? I want to contribute to this issue .
Can you please assign it to me.

Hi
Is the issue still open ?

Hey There, I am new to open source and I found this on GoodFirstIssues so can I give it a try?
Thank you

Hi @antoniopangallo  ,
I am new to open source. I am interested in solving this issue. Can it be assigned to me?

Hi @iusehooks,
Can I take up this issue?

Hi @iusehooks,
I have added remaining tests in my PR. Please let me know if anything has to be changed.

Hey ~ i've been busy with work,
But can I get this reassigned to me to complete the cypress suite?

Hi! I'd like to work on this issue. Could I be assigned to it?


Migration to dart-sys

This PR removes manual bindings to dart_api_dl in favor of dart-sys (Thanks @gutenfries).
#893
Checklist

[ ] An issue to be fixed by this PR is listed above.
[ ] New tests are added to ensure new features are working. End-to-end tests are usually in the ./frb_example/pure_dart example, more specifically, rust/src/api.rs and dart/lib/main.dart.
[ ] The code generator is run and the code is formatted (e.g. via just refresh_all).
[ ] If this PR adds/changes features, documentations (in the ./book folder) are updated.
[ ] CI is passing.

Looks interesting, looking forward to ready-for-review :)

Hmm the ios test is failing, maybe we can fix it before reviewing?

Hmm the ios test is failing, maybe we can fix it before reviewing?

this emulator won't start

Looks like github ci has been updated, thus maybe change 16.0 to 16.2

@fzyzcjy, CI passed

Good job! I will probably review it today (since quite busy with my research)


Allow user to set GitHub URL, to support Enterprise installations

Instead of hardcoding shortcuts to take you to https://github.com, let the user specify the base URL for their most frequented GitHub. Could start with it being an overall setting. Could expand to being per-repo and per-organization if users request this functionality.

Repos support custom URLs now. Should add similar option for projects and users/organizations.


create tutorial for surface area endpoint

see mass tutorial as example impl
Originally posted by @hanbollar in https://github.com/KittyCAD/Furrture-Planning/issues/17#issuecomment-1215889254

I put mass and volume together, wondering if I should make a seperate one for surface area, or add to the existing tutorial?
https://kittycad.io/docs/tutorials/file-metadata

it'd be better if it was separate
especially because we'll be doing the samples/tutorials split soon, we'll eventually need samples for each of these (sa, volume, mass) so having it split let's it be 2 birds one stone with this task


Please invite me to the GitHub Community Organization

Name
Warren Fernandes
Discord Username (if applicable)
wARZ#1199
Additional Context

[x]  I want to make the world a better place, even if it’s only by making sure our community has its turn at making OSS contribution better.
[x] To learn workplace & tech skills from being an active contributor
[x] To collaborate through threaded discussions, conversations, and interactions.
[x] Learn from other members of the community
[x] Reuse solutions through asking and answering questions

Welcome @warrenferns to EddieHub  🎉😊We are glad to have you in our community 🥳 Waiting to welcome you in the discord too 😊


Remove rendered Blades on theme install/uninstall

This PR would address some of the concerns in #1987. It doesn't add a command-line function for manipulating Blades, but it does make Sage a slightly kinder WordPress citizen by cleaning up Blades when installed/uninstalled, and provides some helper methods for doing that at other times. It endeavors to be relatively careful, and only delete the files it needs to delete, leaving other files alone.
The reason it doesn't examine existing Blade templates to find their rendered versions and delete those is because part of the ostensible purpose is to clean up unnecessary Blades when changing themes: If the original Blade templates have been changed or removed during development, the "orphaned" rendered files would not be found.
I considered adding the a "build all Blades on install" feature, but felt that was a little too presumptuous and could theoretically lead to significantly increased load when activating a theme if there are a lot of Blades to render. I'd be happy to modify the PR to add that feature, though.

i know this is old, but can we re-do this for sage 10?

No longer needed as of #2174


Upload new calibnet snapshot after nv18 goes live

Issue summary

Network version 18 goes live on calibnet at epoch 322354 (roughly 7 and a half hours from now). Forest does not support migrations so we will need a bootstrap snapshot that was generated by Lotus after epoch 322354. This snapshot should be uploaded to our Digital Ocean space.

[ ] Generate a calibnet snapshot using Lotus after epoch 322354.
[ ] Upload it to the DO Space: https://cloud.digitalocean.com/spaces/forest-snapshots?i=88c522&path=calibnet%2F

Use the same filename format as the other snapshots.
Add a file with the SHA-256 hash.

Other information and links

@lemmih I believe it is done.

Done.


Update developer guide to include the edit command

Add relevant UML diagrams to make understanding the execution pathway more intuitive.

LGTM


Feature/rental reservation

I've decided to changed the relation between User and his Rentals and Reservations to unidirectional ManyToOne. Also I'll add tests later in the week when this implementation gets accepted.

I've fixed the issues mentioned above. Is setting returnDate in constructor ok?


HTML5 Renderer: Make error event handler more robust

Our Sentry tracks exceptions like TypeError: Cannot read property 'code' of null once in a while mostly for mobile browsers on Android (and there mostly the Facebook In-App-Browser). Looks like in some edge cases e.target is no <video> element or it has null as error property instead of a MediaError. This commit makes the error handler check its preconditions before running.
I was not sure whether I should have also changed the generated code.

Coverage remained the same at 74.487% when pulling b80cba60fe2c616cdf3f54709f53b6ffb2f6b315 on d--j:patch-1 into 5bc2965eaa0a0e97127c4444085244fc6d6f9f9f on mediaelement:master.

Thank you very much for the improvement. Updating code below src/ is enough indeed, as code below build/ will be generated at next release only.


API reference: missing property / aggregation / event descriptions in some low-level modules

https://openui5nightly.hana.ondemand.com/api/sap.ui.core.Control
https://openui5nightly.hana.ondemand.com/api/sap.ui.core.Element
https://openui5nightly.hana.ondemand.com/api/sap.ui.base.ManagedObject#events/Summary

In the above API reference pages, descriptions for events, properties, and aggregations are no longer visible.

Hello @boghyon ,
Thank you for sharing this finding. I've created an internal incident<PHONE_NUMBER>. The status of the issue will be updated here in GitHub.
Regards,
Diana

Hello @boghyon ,
It seems like the issue is no longer reproducible.
Could you please confirm that, before I close the incident?
Regards,
Plamen Ivanov

Maybe I fixed this with 86e7a3d1d4a2170ea6c638e53d09958146a12be4 without knowing.
Before that change, documentation was extracted from a new bundle that we use for our unit tests. Like other bundles, it is minified and doesn't contain JSDoc comments. But the information, that you referred to, is partially extracted from JavaScript signatures. So the pure signature information without description might have overridden the correct information from the original  sources.
As I wasn't aware of the relationship, my commit did not refer to this issues nor to the incident.

@plamenivanov91 Yes, you can close this incident. I'm not able to reproduce the issue either.
@codeworrior Thank you for fixing it accidentally(?)! 😀👍


feat(app): save and restore window size

Closes #576

Works on my Windows machine 🚀

Works on my Arch Linux tiling window manager setup.


Unable to download symbols with server CredentialType "UserName"

1. Describe the bug
I'm not able to download symbols when the server has CredentialType "UserName":
 Authorization has failed or the credentials have expired. The credential cache has been cleaned. Any access to reach Business Central would require new authorization. The authentication has been cancelled.
2. To Reproduce

OnPrem Server Instance with CredentialType "UserName"
In VSCode "Download symbols"
Enter correct credentials
Error happens as mentioned above

3. Expected behavior
Symbols should download. It works for CredentialType "NavUserPasswort", but not "UserName".
4. Actual behavior
Download does not start because of Authorization has failed or the credentials have expired. But this is not true.
5. Versions:

AL Language: v9.0.615906
Visual Studio Code: 1.67.2 (system setup)
Business Central: Plattform 14.0.44327.0 + Anwendung 44342 (DE Business Central 14.16)
List of Visual Studio Code extensions that you have installed: -

Can you try to repro this against the latest BC version (BC 20)? If it's a BC14 platform issue, then this github repo is not the correct place for this and it should go through customer support.

This issue has been closed because it needs more information and has not had recent activity. Please open a new issue if you believe this has not been resolved and reference the current issue.


Database changes

Several database changes are going to propagate:

Molecule hash changes due to connectivity changes (recompute all molecules hashes, QCElemental)
MP2 ResultRecord attribute name changes (rename field, mp2_total_correlation_energy -> mp2_correlation_energy, @sjrl).
TorsionDrive hash changes due to extra kwargs (might be fixable with defaults).
Torsion/Gird Opt procedure id changes.

Collection breaking changes here so we can systematically fix.

Fixed in the primary DB.


Better explanation of fixpoint errors

We need a better explanation of fixpoint errors when they happen. Assuming we can continue to keep the changes at each logical timestep as we do now, we should be able to very nearly explain in plain english exactly what's going on.

(This issue was created in response to Puzzles & Paradoxes IV: Overbound.)


incorrect dist-utils version

Solution to issue cannot be found in the documentation.

[X] I checked the documentation.

Issue
When installed from conda-forge, the dist-info directory is created with the version number 0.0.0:
$ ls .../python3.11/site-packages/ | grep urwid
urwid
urwid-0.0.0.dist-info

Note, the version.py file is correct:
$ cat .../python3.11/site-packages/urwid/version.py
# file generated by setuptools_scm
# don't change, don't track in version control
TYPE_CHECKING = False
if TYPE_CHECKING:
    from typing import Tuple

__version__ = version = '2.2.2'  # type: str
__version_tuple__ = version_tuple = (2, 2, 2)  # type: Tuple[int | str, ...]

This can cause pkg_resources to raise metadata errors when a minimum version for urwid has been specified.
By contrast, when the package is installed from pypi (via pip), the dist-info version number is correct:
$ ls .../python3.11/site-packages/ | grep urwid
urwid
urwid-2.2.2.dist-info

I'm not sure what's causing this. I haven't seen the setuptools_scm magic before, I wonder if this or setuptools needs to be added as a build or host dependency.
Installed packages
* urwid
* python

Environment info
no required environment

I did a quick search for setuptools_scm within the conda-forge organisation and found a couple of example uses, here's the matplotlib feedstock:
https://github.com/conda-forge/matplotlib-feedstock/blob/0d78a2c910b73fd3d62f758d11f1c692039cdaf2/recipe/meta.yaml#L44-L45
They've added both setuptools and setuptools_scm as host dependencies.


Allow google storage files

Describe the bug
If you try to use a file on google storage, the market blocks your request which is right for google drive, but not for google storage.

Can we have Microsoft Office OneDrive solution?
Respectfully,
Silvio

If urgent, pls call.

Silvio F. Pupo | Logos Capital
MIA•DC•SEU•TOK•ACC•LAG•BOG
360 NW 27th Street, Miami, FL 33127
Cel: +1.786.355.4261 | Tel: +1.818.564.6708
e<EMAIL_ADDRESS>w: www.LogosCapital.io http://www.logoscapitalgroup.com/

All U.S. securities transactions are handled via SEC registered Broker Dealer(s), Member FINRA, SIPC, MSRB| This message may contain information that is confidential or privileged. If you are not the intended recipient, please advise the sender immediately and delete this message.
https://aka.ms/o0ukef

From: mihaisc @.>
Sent: Monday, June 26, 2023 12:53:14 PM
To: oceanprotocol/market @.>
Cc: Subscribed @.***>
Subject: Re: [oceanprotocol/market] Allow google storage files (Issue #1934)
Closed #1934https://github.com/oceanprotocol/market/issues/1934 as completed via #1935https://github.com/oceanprotocol/market/pull/1935.
—
Reply to this email directly, view it on GitHubhttps://github.com/oceanprotocol/market/issues/1934#event-9642686741, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMI4VMLSKZ7F6JSTL5U3AUTXNHLBVANCNFSM6AAAAAAZILSXGE.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


How do I get 'context' in 'createApp' to jump

I need to configure push monitoring in 'careteApp'. In my monitoring method, I need to page jump according to push content. How do I get 'context' to jump.

You could use ‘EffectMiddleware’

flutter: HomePage Lifecycle.initState
flutter: HomePage Lifecycle.didChangeDependencies
flutter: HomePage Lifecycle.build
home to taskIncome
flutter: TaskIncomePage Lifecycle.initState
flutter: TaskIncomePage Lifecycle.didChangeDependencies
flutter: TaskIncomePage Lifecycle.build
flutter: HomePage Lifecycle.deactivate
flutter: HomePage Lifecycle.didChangeDependencies
flutter: HomePage Lifecycle.didUpdateWidget
taskIncome back home
flutter: HomePage Lifecycle.deactivate
flutter: TaskIncomePage Lifecycle.didChangeDependencies
flutter: HomePage Lifecycle.didUpdateWidget
flutter: TaskIncomePage Lifecycle.deactivate
flutter: TaskIncomePage Lifecycle.dispose
How do I recognize back?

So it is a new question about 'back-event' ?


[ExtensibilityEnhancement] Page "BC O365 Sales Invoice": CurrencyFormat protected

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 41864.


After recent patch, If the length of protein langer than 30, run_model() will fail.

Hi Daniel,
recently when I tried to run_model(HLAData) , there will be an issue during the stan iteration as follow. After testing, I found that if the protein length <=30, it goes well, otherwise issue.
......(init log)
Rejecting initial value:
Error evaluating the log probability at the initial value.
Exception: Exception: bernoulli_logit_glm_lpmf: Weight vector[1] is -nan, but must be finite! (in '../Escape.jl/models/model_4.stan', line 43, column 12 to line 47, column 26) (in '../Escape.jl/models/model_4.stan', line 169, column 8 to column 71)
Rejecting initial value:
Error evaluating the log probability at the initial value.
Exception: Exception: bernoulli_logit_glm_lpmf: Weight vector[1] is -nan, but must be finite! (in '../Escape.jl/models/model_4.stan', line 43, column 12 to line 47, column 26) (in '../Escape.jl/models/model_4.stan', line 169, column 8 to column 71)
.......(same as above)
Initialization between (-2, 2) failed after 100 attempts.
Try specifying initial values, reducing ranges of constrained values, or reparameterizing the model.
Rejecting initial value:
Error evaluating the log probability at the initial value.

The issue you are seeing is Stan failing to initialize, probably because some of the inputs are so far off that we get numerical under/overflow in some of the parameters. This most likely means that some of the inputs are not correct, probably the phylogenetic tree or epitope predictions. I suspect this is not a software issue with HAMdetector, but rather a problem with input data.
Please answer the following questions so we can pinpoint the issue:

Did the model run fine using the same inputs with an earlier version of HAMdetector? (I suspect this is not the case)

Is it possible for you to share the input data with me? That would make debugging a bit easier. But please be mindful of any privacy concerns as HLA data is sensitive personal information.

Can you identify if any single sequence is causing the issue? For that, you can use a bifurcation strategy: Remove one-half of the sequences and try to see if the issue persists. Then try the same with the other half. Are both halves causing Stan to error? If not, repeat until you have located the sequence.

Try running a model without phylogeny. For this, use this code:

using Escape

data = HLAData(
    alignment_file = "/home/user/Desktop/alignment.fasta",
    tree_file = "/home/user/Desktop/phylogeny.tree"
)

result = run_model(HLAModel{3}(), data)

Does this model run without issue? If not, try going down to model 2 and 1. This may help us tell which part of the input might be the issue.
You can also try to see if you can spot any issues in the input data manually. For this, run d = Escape.compute_stan_input(data), in particular, check the elements of the "X", "y", "phy" and "Z" keys of the returned dictionary. Things to look out for: Are there any entries that are infinite? Is d["X"]
a matrix of 1s and 0s? Do we have any entries in d["phy"] that are 0 or 1? Is d["Z"] a matrix of 1s and 0s?

Hi Daniel, thank you for the answer.
As for your questions,

I didn't try it with the data before, so I have no idea if it work before, but yea I guess this is not the case as well.
I can share you the data, they are segments from a long protein, so there shouldn't be privacy problem. (see bottom)
I'm not fimilar with the phylogeny tree, I don't know how to cut the tree into half since the number of sequences should be same as the entrance in tree.
I tried all 4 models, but only the first model worked.

As for the stan_input, all looks fine.

LHBs_test.zip

Hi, I just had time to look into this.
As you didn't provide a phylogenetic tree or HLA types I had to use simulated data, but using this setup the model ran without issue.
This means that the culprit definitely lies somewhere in your input. As the first model that starts failing is model 2 (which adds phylogeny information), I strongly suspect that the phylogenetic tree is the issue here.
I've attached a phylogenetic tree that I inferred using the standard settings in HAMdetector
hla_types = rand(HLAType, 544) # random HLA types so we can run the model, we have 544 sequences in total
data =  HLAData("test", "/path/to/the/sequence/data.fasta")
tree = Escape.phylogenetic_tree(data)

write("/path/were/you/want/the/tree.tree", Escape.newick_string(tree))

The branch lengths are strongly skewed with sequences 3, 84, and 152 being far away from all other sequences. Sequences 84 and 152 are also empty (containing almost only '-' and 'X' characters), so I would suggest removing them as they contain no information.
Going forward I would try the following steps:

Run model 4 with my phylogenetic tree provided below. If it runs we have learned that the problem is the phylogeny.

You mentioned that the sequences are segments of a larger protein. If you're not already doing so, I would suggest using a phylogenetic tree inferred from the larger protein, as it would capture the phylogenetic relationship between sequences much better.

regarding your previous point 3: It would be easiest to infer a new tree for each halving.

If you are still stuck, please provide a completely reproducible example (HLA types and phylogenetic tree and sequences). You can estimate phylogenetic trees with raxml-ng using the Escape.phylogenetic_tree(hla_data) function (might take a while, as with all phylogenetic inference methods).

Hi Daniel,
I generated a phylogenetic tree following your code, and applied it to the HLAData() but still not work I attach the data (for test but error) I working with, please take a look at it.
Thanks
data.zip

Hi, please see the attached files, containing a subset of the first 125 sequences.
The model works for these. I also tested a subset of sequences starting from 251 to the end, so the problem must lie somewhere between sequences 126 and 250.
I don't have time to identify the issue completely right now, but if you start adding sequences you can probably pinpoint it to a single sequence that's causing the issue.
I also noticed that the phylogenetic tree you updated is from the documentation. Please keep in mind that the phylogenetic tree and sequence data need to match, so you cannot take that phylogenetic tree, you have to infer one yourself using raxml-ng or other software.
You can also do it in HAMdetector directly using the code provided below
hla_types = rand(HLAType, 544) # random HLA types so we can create an HLAData object
data =  HLAData("test", "/path/to/the/sequence/data.fasta", hla_types)
tree = Escape.phylogenetic_tree(data)

write(tree, "/some/file/path.tree")

testdata.zip

Hi Daniel, sorry I thought I have replied you but seems I forgot. I located the issued entrance, where none of six HLA information are presented. Thank you for your help!

Awesome! I'm happy it has worked out and thank you for getting back. Please feel free to open another issue if any come up.


Find Latest SBOM for a Package or Artifact

Description of the PR
When talking about GUAC, a common issue that pops up is that it's hard to find your vulnerabilities or legal information in a specific SBOM. Currently, to find this, the user would have to make multiple different graphql calls which is cumbersome, to solve this we could use a couple REST endpoints.
This PR finds the latest SBOM for a specific package or artifact and outputs it via REST. We can then find vulnerability and legal information based on the latest SBOM. In future PRs there will be REST endpoints for vulnerabilities in the latest SBOM and licenses in the latest SBOM.
This is based on the design ideas in https://github.com/guacsec/guac/issues/2058.
PR Checklist

[ ] All commits have a Developer Certificate of Origin (DCO) -- they are generated using -s flag to git commit.
[ ] All new changes are covered by tests
[ ] If GraphQL schema is changed, make generate has been run
[ ] If GraphQL schema is changed, GraphQL client updates/additions have been made
[ ] If OpenAPI spec is changed, make generate has been run
[ ] If ent schema is changed, make generate has been run
[ ] If collectsub protobuf has been changed, make proto has been run
[ ] All CI checks are passing (tests and formatting)
[ ] All dependent PRs have already been merged

@mdeicas I will be taking the feedback from your review here into the new PR #2089.

Closing this PR, as #2089 has a better design.


Product Requirements - Questions

Collect more questions for customer
Send (ask) the collected questions

Notes from the meeting have to be sent too for confirmation

We need to get a contact for their admin to ask him about technologies we cannot use

Answers received


Abstract semantics for bools

This is already given in the paper from Halder and Cortesi, but their semantics should be reviewed at least.

This is already given in the paper from Halder and Cortesi, but their semantics should be reviewed at least.

okay never mind :)


Clean with transaction not working for 2 databases

I've used DatabaseCleaner for several years (thanks!) without issues. But my current setup seems to not work properly.
Basic setup:

Grape 0.19.2
ActiveRecord 5.1.3 (+ otr-activerecord 1.2.4)
RSpec 3.6.0
DatabaseCleaner 1.6.1
Posgres 9.5

On noteworthy thing about the app here is that it's using multiple databases: One main database and several tenant databases. In the test environment, this currently means two databases in total (main + test tenant).
Here's the test setup:
TEST_TENANT = 'the_tenant'
TEST_TENANT_API_KEY = SecureRandom.uuid.gsub('-', '')

RSpec.configure do |config|
  config.mock_with :rspec
  config.expect_with :rspec
  config.raise_errors_for_deprecations!
  # config.order = 'random'

  config.before(:suite) do
    ApiApp.establish_connection # ApiApp is connected to the main DB

    primary_cleaner.clean_with(:truncation)

    tenant = ApiApp.where(identifier: TEST_TENANT).first_or_create!(
      name: 'The tenant',
      api_key: TEST_TENANT_API_KEY
    )
    # force full recreate of tenant DB
    config = ActiveRecord::Base.configurations[tenant.identifier]
    ActiveRecord::Tasks::DatabaseTasks.drop(config) rescue nil
    ActiveRecord::Tasks::DatabaseTasks.create(config)
    ActiveRecord::Tasks::DatabaseTasks.load_schema(config, :sql, 'db/structure.sql')

    # seed it
    AppSetter.with(TEST_TENANT) do
      Dir["#{Dir.pwd}/spec/seeds/*.rb"].sort.each { |f| load f }
    end
  end

  config.before(:each) do |example|
    AppSetter.set(TEST_TENANT)

    puts ['[RSpec] start before', "number of patients: #{Patient.count}", Patient.connection.instance_variable_get(:@config)[:database]].inspect
    # primary_cleaner.start
    tenant_cleaner.start
    puts ['[RSpec] end before', "number of patients: #{Patient.count}", Patient.connection.instance_variable_get(:@config)[:database]].inspect
  end

  config.append_after(:each) do
    puts ['[RSpec] start append_after', "number of patients: #{Patient.count}", Patient.connection.instance_variable_get(:@config)[:database]].inspect
    # primary_cleaner.clean
    tenant_cleaner.clean
    puts ['[RSpec] end append_after', "number of patients: #{Patient.count}", Patient.connection.instance_variable_get(:@config)[:database]].inspect
    puts '-' * 100
  end

  private

  def primary_cleaner
    @primary_cleaner ||= cleaner_for(connection: ENV['RACK_ENV'].to_sym)
  end

  def tenant_cleaner
    @tenant_cleaner ||= cleaner_for(connection: TEST_TENANT.to_sym)
  end

  def cleaner_for(options)
    DatabaseCleaner[:active_record, options].tap { |cleaner| cleaner.strategy = :transaction }
  end
end

Now when I have 2 examples in RSpec which both use the same basic setup with a test patient (Patient.create!(email<EMAIL_ADDRESS>...)), the uniqueness constraint on email fails because apparently the record exists already. The debugging code in the output (from the puts statements above) confirms this:
(1) ["[RSpec] start before", "number of patients: 0", "api_test_the_tenant"]
["[DatabaseCleaner] before start", "open transactions: 0", "api_test_the_tenant"]
(2) ["[DatabaseCleaner] after start", "open transactions: 1", "api_test_the_tenant"]
["[RSpec] end before", "number of patients: 0", "api_test_the_tenant"]
(3) ["[RSpec] start append_after", "number of patients: 1", "api_test_the_tenant"]
["[DatabaseCleaner] before clean", "open transactions: 1", "api_test_the_tenant"]
(4) ["[DatabaseCleaner] after clean", "open transactions: 0", "api_test_the_tenant"]
(5) ["[RSpec] end append_after", "number of patients: 1", "api_test_the_tenant"]
----------------------------------------------------------------------------------------------------
(6) ["[RSpec] start before", "number of patients: 1", "api_test_the_tenant"]
["[DatabaseCleaner] before start", "open transactions: 0", "api_test_the_tenant"]
["[DatabaseCleaner] after start", "open transactions: 1", "api_test_the_tenant"]
["[RSpec] end before", "number of patients: 1", "api_test_the_tenant"]
["[RSpec] start append_after", "number of patients: 1", "api_test_the_tenant"]
["[DatabaseCleaner] before clean", "open transactions: 1", "api_test_the_tenant"]
["[DatabaseCleaner] after clean", "open transactions: 0", "api_test_the_tenant"]
["[RSpec] end append_after", "number of patients: 1", "api_test_the_tenant"]
----------------------------------------------------------------------------------------------------

(I've numbered some lines to make it easier to follow. The [DatabaseCleaner] output comes from some puts statements I've put in the corresponding strategy in https://github.com/DatabaseCleaner/database_cleaner/blob/master/lib/database_cleaner/active_record/transaction.rb.)
(1) Before the first example (in the first before block), there are 0 patients in the tenant database => expected.
(2) tenant_cleaner.start has caused an open transaction in the tenant database => expected.
(3) Running the example has created a patient in the tenant database => expected.
(4) tenant_cleaner.clean rolls back the transaction => expected.
(5) There is still 1 patient in the tenant database => this is NOT expected.
(6) The before block of the next example confirms that 1 patient has remained in the tenant database => this is NOT expected.
Commenting in/out the cleaning of the primary database doesn't change anything (I wouldn't have expected it to either, but I tried it nonetheless).
Does anyone have any insights as to what's going wrong here?
Thanks a lot in advance.

i have the same issue in jruby <IP_ADDRESS>-p0:
database_cleaner (1.6.1)
rspec-core (3.6.0)
activerecord (4.2.0)
activerecord-jdbc-adapter (1.3.23)
activerecord-oracle_enhanced-adapter (1.6.9)

@clemens Hi, just curious, why are these lines commented out?
# primary_cleaner.start
# # primary_cleaner.clean

During my testing, I cared about the tenant database, not the primary one. In my actual test suite, obviously both should be cleaned.


canonicalize Position when pointing to location after the newline at the end of a line

leverage replace_range to update FullTextDocument::content
This seems more efficient than constructing a completely new String,
particularly when the replacement text is the same length (in bytes)
as the text it is replacing.

Stack created with Sapling. Best reviewed with ReviewStack.

#27
-> #30

Great.
I learn more from this PR


Added player height control to support mounting climbed objects and crouching

This pull request implements feature requests #143 and #116 with the help of @teddybear082. The changes include:

Added advanced player height control
Modified climbing to collapse player to a sphere to allow mounting climbed objects
Added crouch movement provider

The PlayerBody now supports:

Player height offset to allow future height calibration (for seated or disabled players)
Minimum and maximum allowed player height (as measured by head position)
Overriding player height by movement providers (for crouching or climb-mounting)

The math for placing the player body under the camera had to be modified extensively - the original logic would always put the player body on the ARVROrigin floor, whereas the new logic puts the player body under/around the head. This change results in the head/camera always being in the correct position in relationship to the body.

It should be ready to go in now.


Add support for gina.vim

gina.vim is a plugin to asynchronously control git repositories.
I added a code to support gina.vim on vim-airline. Please review this Pull Request.
ScreenShot

Demo

thanks. Please add also a small section to the help page.

Can I add it to doc/airline.txt?

yes, somewhere below airline-extensions. Note the extensions are alphabetically ordered.

I added help about gina.vim. Please check.
Also is it need squash? If need, I will do.

Yes, please also update the changelog and squash. Thanks, should have mentioned this earlier.

(Note, I just updated the changelog, so please be sure to pull the latest changes first)

OK. Thanks.

I updated a CHANGELOG.md and squashed some commits.
Please check.

Thanks, I have merged your changes. (I did clean up a bit the Changelog, but that was easy)

@chrisbra Thank you very much!!