Some thoughts on how multiple delegation paths should be exposed to the consuming developer.

Caveat Traversal Algorithm
A given capability (restrictedMethod) can be granted by any number of paths, forming an acyclic directed graph terminating in the recipient/caller.

When multiple delegations (grantPermission) point at the same origin for the same restrictedMethod, they need to be reconciled into a single function call, and a single result, and this can involve many operations, because we have many variables at play:

Transitive delegation.
Multiple capability types.
Caveats that can mutate both the outbound request and the inbound response.

This means forks in the delegation path become combined to increase permission, and chains are combined in a way that can only increasingly restrict the permission.
Outbound Requests
At the point of issuing a request, all entries for that calling origin and the called restrictedMethod are loaded into a permissions array.
Maybe We Instead Put This on Dapps
What if we didn't automate the permissions traversal mechanism? What if instead, in the case of multiple permissions granted to a recipient, they received a unique method ID per permission?
This has nice vibes around it because many capability models revolve around the notion of cryptographically strong (unguessable) identifiers.
It also is nice that it puts the power of optionality in the hands of the Dapps themselves. If two friends give you a redemption code, when using it, you need to specify which one. There is no universal solution to this, only arbitrary or opinionated ones.
It's also immediately practically beneficial because it lets us avoid the complicated question about merging chains of delegation.
Changes to Avoid This Problem

Add method getCurrentPermissions(methodNames?:string[]) => PermissionObject[] for getting a list of current permissions from the environment.
Restricted methods are always called per that permission. Maybe something like callRestrictedMethod(methodId, params).
Update the delegation methods (grantPermissions and revokePermissions) to operate on specific methodId strings instead of method names.

Question: What is a Permission Object?
interface PermissionObject {
    name?: string; // Should this be required?
}

The Crypto Benefits are Rearing their Heads
Why are we storing this table of permisisons, anyways? It's a memory leak for us to store it. If we just incorporated signing with app keys, and confined app key signing very well, then we could put the permissions directly in the app's hands.
Let's not get ahead of ourselves
Question: What is a Permission Object?
interface PermissionObject {
    "@context": UrlString[]; // for ocap-ld compliance
    id: string;
    name?: string; // Should this be required?
    types?: TypeObject; // Ooh, wouldn't THAT be cool?
    description?: string; // I mean, if we're going to do this, do it right?
    caveats: SerializedCaveat[]; // Yeah this probably extends the RpcCapPermission object.
    granter?: DomainString; // Starting to look like our serialized permission...
    parentCapability?: PermissionObject; // What if we did this as a way of providing the capability chain?
}

Should we include the delegation chain? If they have a granter, shouldn't you see what was granted? Those granter's caveats are going to be applied to your capabilities anyways, so you probably should know what the sum of your capabilities are.
If so, we should provide convenience method for summarizing a single caveats array from a PermissionObject (which itself may contain nested and cumulative caveats).
To Do:

Add method getCurrentPermissions(methodNames?:string[]) => PermissionObject[] for getting a list of current permissions from the environment.
Restricted methods are always called per that permission. Maybe something like callRestrictedMethod(methodId, params).
Update the delegation methods (grantPermissions and revokePermissions) to operate on specific methodId strings instead of method names.
Provide convenience method for summarizing a single caveats array from a PermissionObject (which itself may contain nested and cumulative caveats).

First, some inspiration
Ocap-ld.js from DigitalBazaar
interface CapabilityDelegation {
    capabilityChain: Capability[]; // First entry is root, last is parent of this delegation.
    capability?: Capability;
    // Params that don't apply to us so much:
    verifiedParentCapability?: Capability;
    expectedTarget?: UriString; // For invoking over http

}

Man, that library is so verbose. It's so unappealing to have to interface with. Can we make an interface for developers to use capabilities without having to do those flips? Can it be as easy as passing around function references?
With capnode, I really think we could do that. Rather than passing back these capability-describing objects, we could pass back capnode functions with a special capabilityMetadata property that includes all this stuff for advanced use.
Most dapps will just care that they have a function they can call. Advanced dapps can get analyze the nuance of what they've been granted.

Capturing next steps in workflowy, trying it out:
https://workflowy.com/s/fix-delegation-syste/0YDR3jhEJErpbT5C


Sync code from main branch to feature/spring-boot-3

As title.

API change check
API changes are not detected in this pull request.

@saragluna @chenrujun Please help to review, all the spring pipelines passed successfully.


g++

Hello,
I'm closing it as it is not descriptive enough. Feel free to re-open another issue, being more exhaustive about your issue and cases you'd like to be supported and/or improved.
Yann


removing js and java implementations

What does this PR do?
Removes the deprecated javascript and java implementations.
Which issue(s) this PR fixes:
fixes #172 and #173

I think we have also to update the .github/workflows/release.yaml as it builds the java implementation.

I removed the release workflow as it doesn't seem to be in use at all

On the testing side (maybe you have already checked that) but IDK if there are any test resources used only from JS and Java.

There's two projects that don't seem to be used in the tests, but I'll remove them with https://github.com/redhat-developer/alizer/issues/177

https://github.com/redhat-developer/alizer/tree/main/resources/projects/multiple-dotnet-target-frameworks
https://github.com/redhat-developer/alizer/tree/main/resources/projects/nodejs-ex-w-devfile

Maybe we can put a label (e.g on hold) and keep it open. We could also update the issue with the required steps we have discussed? WDYT?

Hi @mohitsuman, it looks like the vscode-tekton and intellij-tekton projects are using the deprecated java and js alizer implementations. Are there any concerns with removing these implementations?

@mike-hoang Yes the tekton extensions use alizer to list down the Tekton Hub list. And the logic used there is based on JS implementation. Can you let me know why are we deprecating the JS and Java based implementation. I understand it will be outdated with Go version and it makes sense to update one language, but given the implementations we already have it the past, it should be kept in the project.

Can you let me know why are we deprecating the JS and Java based implementation.

@mohitsuman thanks for the update!
The reason for deprecating is because the alizer project will be onboarded to devfile. Before we move the project, we want the state to be the same which means removing the JS and Java implementations since we will no longer support them
cc @elsony

@mohitsuman To clarify: This repo will be used for the go implementation only which we intended to move under the CNCF devfile project. Since the js and Java implementations are no longer under active development, we don't want them to be included as part of the CNCF project. We have moved the js and Java implementation code from the current repo to a separate repo (https://github.com/devfile-resources/alizer) for archiving purposes.

@elsony Thanks for the update. I am fine having alizer to have only go implementation and help in solving the devfile use cases. And as we have a separate repo for JS and Java, we can sync how the current go lang version can be used to replace that login in IDE extension (if needed).
So 👍🏼  for having this repo without the non-active implementations.


More release preparation: Update generated_code.md and changelog.md

Here is another round of small updates.
Is everything in order now and should we do a release? E.g. on the weekend?

Is everything in order now and should we do a release? E.g. on the weekend?

I think so

Is everything in order now and should we do a release? E.g. on the weekend?

I think so


Blue LED on Rapsodo after everything is connected.

Hi there, thanks for working on this. I was able to get everything connected, BT APP showing GSPRO and MLM2pro connected, but Blue LED on MLM wont turn green. Sending Test Shot works but live hitting is not working. Running Win 11 Pro, MLM2Pro. I tested this using the old ipad method using another custom connector where you have to draw boxes around the screen data and that works fine.
Other than authorize 3rd party awesome in the MLM android app, do I need to do anything else from the phone? thanks

For those that have this problem, I learned you need to hit ARM in the connector! I don't see this in the doc but could have missed it. It's not automatic. If/when the MLM led goes red, what worked for me was restarting the connector and hitting Connect then ARM again. No need to reboot MLM or GSPRO.

Kudos to the developer for helping to bypass the ipad, other than the connection bugs this is night and day better! Thank you Duwaynef!

Hit ARM


[PYTHON][FFI] Speed Up get DataType

Hi, i just run a tensorflow model with TVM. My model has 321 inputs so i find create NDArray inputs for model is time consuming.
Code:
dtype = DataType(dtype)

is used in function NDArray.empty when create NDArray. If dtype is numpy.dtype, function DataType will convert it to str, and i find this convert is time consuming, about 0.83ms for my model.
So i use a table to avoid convert numpy.dtype to str.

Thanks @wangxiang2713


Add wrappers for posix_spawn related functions.

Hello! This is my first PR to nix so I'd appreciate some guidance/patience.
This PR adds support for posix_spawn* related functions. All functions are added with the exception of posix_spawnattr_{get, set}schedpolicy and posix_spawnattr_{get, set}schedparam, since those require full sched.h support not yet in nix.
Implemented functions use I/O safe versions of file descriptors.
Blockers/Notes

I'd like to know how, if necessary, I can test the posix_spawn-related functions.
Most functions return a Result, as to my understanding even though the safe wrapper will prevent most failures listed by POSIX (eg. EINVAL for posix_spawnattr_setflags), implementations may return an error for other reasons not specified by the standard. Is that a correct assumption?
I am uncertain as to how to correctly determine targets to support (with cfg), and if there is a way to determine that locally.
posix_spawn* currently take the args and envp arguments similar to exec* functions, with slight modification due to https://github.com/rust-lang/libc/issues/1272. Can this be fixed together with #555?

In the meantime, existing code is ready for review.
Closes #1740.

CI failures seem to indicates that libc::posix_spawn does not exist on some platforms, so this needs to be gated to specific targets.

Hi @kosayoda, thanks for your interest in contributing to Nix! I am sorry that this PR hasn't been reviewed for such a long time!
I plan to take a look at this PR in the near future (possibly 3 days later) :)

I'd like to know how, if necessary, I can test the posix_spawn-related functions.

I think we can give it a test, perhaps simply spawning a child process and waiting for it would be good.

Most functions return a Result, as to my understanding even though the safe wrapper will prevent most failures listed by POSIX (eg. EINVAL for [posix_spawnattr_setflags]

That's exactly what Nix is for! Even though some error cases won't happen with Nix interface, we don't do any thing special about the error handling and the return type:>

(https://pubs.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_setflags.html)), implementations may return an error for other reasons not specified by the standard. Is that a correct assumption?

I guess yes? Standards are just standards, implementations can always do extra stuff. Though I think we don't need to do extra job here either as Errno::result(res) will handle everything for us.

I am uncertain as to how to correctly determine targets to support (with cfg), and if there is a way to determine that locally.

You can test this locally if you can cross-compile for those targets. It is also ok if you don't, since our CI gets you covered

posix_spawn* currently take the args and envp arguments similar to exec* functions, with slight modification due to https://github.com/rust-lang/libc/issues/1272. Can this be fixed together with #555?

Emm, seems that the posix_spawn() and posix_spawnp() exposed by the libc crate are actually correct? I think the interface proposed in this PR looks good.
As for that allocation issue, do posix_spawn suffer from this? Seems that the allocation is done before invoking fork()

BTW, a CHANGELOG entry is needed, please see this on how to add one:)

Close as superseded by #2475.


Tweak contact's call/copy to adjust for AX text sizes

Menu formatting doesn't want to play nice. Added check for AX1 and larger text so we can make sure user knows they're calling vs copying the phone number
Checked animations and I think it's OK to leave them for now. They're minimal and hopefully not intrusive for folks who have reduce motion enabled.

Sounds good, but can you include a screenshot of how this looks?

Sounds good, but can you include a screenshot of how this looks?

Here's how it will look default sizes vs AX1 vs AX5 By default, Menu will remove the symbols whenever we use AX sizes so I adjusted the text so it still makes sense. I don't see a way to fix the text cutting off, though. It's not perfect, but I think it's functional for most use cases. Users can also copy the phone number and paste elsewhere if they want to see full phone number.

@cselin I'm testing this in the simulator for iPad and seeing inconsistent behavior (no copy column in the menu at all). Do you have a hardware device to check this on? If not, I think I can scrape up an old iPad; will have to look.

Update: I found an iPad to test with and this menu isn't working on iPad. Added new issue https://github.com/5calls/ios/issues/429

Thanks for providing screenshots, I understand the issue now. While it wouldn't minimize the cutoff completely for longer city names, we could drop the phone number from all these columns since adding "Call" or "Copy" should make it obvious what it does. I can take a look at the iPad issue once you get this in.

Actually sorry, my iPad is too old to run 16.2 :-/

:+1: looks good, feel free to merge

Merging this in. Open to making more changes, but I think this issue is resolved enough for 2.0.


💄(layout) unique breadcrumb layout for course run page

Purpose
Is an answer to issue #415 where we need a way to return to the course-run-detail page from the course run page including from snapshoted course run.
Proposal
create a special breadcrumb layout for course run pages to
take into account snapshots.

@2018D I wanted to add tests to your PR and realized that both cases are for course runs. I misunderstood while reviewing because of the name of the template.
So I reverted to your earlier implementation, changed the name of the template and added tests to verify and secure the breadcrumb.
Can you check it out?

I'm happy with the way it turned out. Thank you for making the tests.


Allow defaultResolveFn to call methods on classes and bind source as "this"

I have an issue with classes being compiled back to es5 using babel, where I have the default resolver call a method without having the source being bound to it.
E.x.:
class FooBar {
  get myFirstProperty() {
    return 'this works';
  }
  get mySecondProperty() {
    return this.someOtherProperty + ' works too';
  }
  myMethod({param1, param2}) {
    return this.someOtherProperty + ' somehow does not work because calling "someOtherProperty" on undefined';
  }
}

I found the issue in the implementation of "defaultResolveFn" where the "method" is called directly:
    const property = source[fieldName];
    if (typeof property === 'function') {
      return property(args, context);
    }

A change to this and everything works fine:
    const property = source[fieldName];
    if (typeof property === 'function') {
      return property.apply(source, [args, context]);
    }

I also tried to write a test for it but somehow with typescript it works without this change.
Is this an implementation issue, which could be fixed through this referenced PR or something else?
Thx
Best
Dimitri

Should be fixed with this PR: https://github.com/graphql/graphql-js/pull/980


[2.8] Authenticate proxied requests using a service account token

Issue:
Backport issue:  https://github.com/rancher/rancher/issues/44284

Should this commit 839cb5503c088c6effaf2d97707ef46d7f2bd54e be part of this PR?

Should this commit 839cb55 be part of this PR?

Yeah, it was needed due to another change that got backported and changed a function signature.  Moot though since it seems as though we're not going to backport this now.


Add initial_fetch_timeout option to Pilot

This is defaulted to 0s, which is the same as not setting a timeout, so
this change is effectively off by default. When it is on, this change
will be useful to prevent states where listeners get stuck during
initialization, which can make gateways/sidecars not able to recieve traffic.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: howardjohn
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: nmittler
If they are not already assigned, you can assign the PR to them by writing /assign @nmittler in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/OWNERS
pkg/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@howardjohn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/integ-security-local-presubmit-tests.sh
76bd21f3f1d54a2e98f7db4b225e68241895ce10
link
/test integ-security-local-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/integ-security-local-presubmit-tests.sh
76bd21f3f1d54a2e98f7db4b225e68241895ce10
link
/test integ-security-local-presubmit-tests-master

prow/istio-unit-tests.sh
76bd21f3f1d54a2e98f7db4b225e68241895ce10
link
/test istio-unit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
1f15d7933327af8c8495d27493832c9e358b8fdc
link
/test e2e-simpleTests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
1f15d7933327af8c8495d27493832c9e358b8fdc
link
/test e2e-simpleTests-master

prow/integ-pilot-k8s-presubmit-tests.sh
1f15d7933327af8c8495d27493832c9e358b8fdc
link
/test integ-pilot-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test e2e-simpleTests-master

/assign @PiotrSikora @costinm
This is needed as a safety measure to prevent the impact of future pilot bugs to ensure that these bugs scope is limited (killing one chain instead of the full 443 listener for example)

/lgtm
/approve

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: costinm, howardjohn
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/OWNERS [costinm,howardjohn]
pkg/OWNERS [costinm,howardjohn]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Store section visibility to sites

Each section in questionnaire can be public or private
Site can have the following structure:

{
    "site_name": "Site B",
    "landscape_id": 1,
    "section_data_visibility": {
        "project_details": {
            "section_id": 1,
            "visibility": "private"
        },
        "site_background": {
            "section_id": 2,
            "visibility": "public"
        }
    }
}

Implmemented. Closing.


feat: allow assets to be managed externally

SUMMARY

There's been increasing interest in managing superset assets (databases, datasets, charts, dashboards) externally. An immediate use case that is possible today is creating a directory with YAML files from the new import/export format:
repo/metadata.yaml
repo/databases/db.yaml
repo/datasets/db/dataset.yaml
repo/charts/chart.yaml
repo/dashboards/dash.yaml

And then periodically syncing the directory to Superset with:
superset import-directory /path/to/repo

Even though this works, users are still able to modify these assets in the UI, introducing unintended modifications, as well as frustration for the users when those changes are reverted in the next sync.
In addition to the import/export scenario, people have been syncing model (and metric!) definitions from DBT to Superset (as well as from Superset to DBT). Users have also shown interest in syncing from Supergrain and Transform.
This PR introduces 2 new columns to databases, datasets, charts and dashboards:

is_managed_externally: a boolean defaulting to "false".
external_url: a nullable string representing an URL pointing to more information about the resource.

There are no UI changes in this PR, but I'm planning following PRs that modify the CRUD dialogs (and the backend) to prevent editing the resources when is_managed_externally is true. In the future we could also add an affordance using external_url.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

None.
TESTING INSTRUCTIONS

Ran the migration script:
Results:

Current: 0.28 s
10+: 0.29 s
100+: 0.27 s
1000+: 0.31 s
10000+: 0.27 s
100000+: 0.36 s
1000000+: 0.91 s

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[X] Includes DB Migration (follow approval process in SIP-59)

[X] Migration is atomic, supports rollback & is backwards-compatible
[X] Confirm DB migration upgrade and downgrade tested
[X] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

🏷 preset:2022.7


Contact form

Summary 📒
For this milestone, I:

Added a contact-me section.
Added a form to receive a message (with name, email, and message).
Added linters.
Styled the contact-me section.

[] Your contact-me section should look as similar as possible to the Figma design 👀
Figma:

Yours:

Kindly add in your CSS the appropriate spacing between elements, adjust fonts, sizes, etc.


feat: add "X-SkinMeAgain-Hit-Source" response header

X-SkinMeAgain-Hit-Source will indicates which server was hit.
X-SkinMeAgain-Hit-Source: LittleSkin

Added 🎉


MINOR: Fix clip planes clamping before applying margins.

The bug could cause margin to be applied (as ration) based on negative or
zero near distance - before clamping.
Signed-off-by: Krystian Kostecki<EMAIL_ADDRESS>Thank you for contributing to harp.gl!
Before requesting a pull request, please remember to check the following documents:

contribution guidelines
coding style

If you are adding new functionality we would highly appreciate if you can describe what is the capability you are adding and even better if you can add some examples. Please also remember to add tests for it.
CI Check
Our bots will check whether your PR can be directly integrated into the mainline. We have some internal integration tests running on the background, our bots will inform you of the next steps and someone from our team will take a look and help if needed!
And please do not forget to sign-off your commit! You can read more about DCO here. But, in short, you just need to use git commit -s or append --signoff when you are committing to the repo.
Happy contributing!

Codecov Report

Merging #987 into master will increase coverage by 0.03%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master    #987      +/-   ##
=========================================
+ Coverage   48.16%   48.2%   +0.03%
=========================================
  Files         231     242      +11
  Lines       21732   21936     +204
  Branches     4957    4986      +29
=========================================
+ Hits        10467   10574     +107
- Misses      11265   11362      +97

Impacted Files
Coverage Δ

@here/harp-mapview/lib/ClipPlanesEvaluator.ts
12.03% <0%> (-0.19%)
:arrow_down:

@here/harp-materials/lib/Utils.ts
20% <0%> (-80%)
:arrow_down:

@here/harp-materials/lib/IconMaterial.ts
44.44% <0%> (-55.56%)
:arrow_down:

@here/harp-map-controls/lib/Utils.ts
46.15% <0%> (-23.85%)
:arrow_down:

@here/harp-omv-datasource/lib/OmvTiler.ts
50% <0%> (-16.67%)
:arrow_down:

@here/harp-utils/lib/ObjectUtils.ts
83.33% <0%> (-10.22%)
:arrow_down:

@here/harp-utils/lib/UrlResolver.ts
91.66% <0%> (-8.34%)
:arrow_down:

@here/harp-utils/lib/UrlUtils.ts
82.92% <0%> (-8.25%)
:arrow_down:

@here/harp-test-utils/lib/WebGLStub.ts
93.33% <0%> (-6.67%)
:arrow_down:

@here/harp-datasource-protocol/lib/Extruder.ts
8.33% <0%> (-5.96%)
:arrow_down:

... and 26 more

Continue to review full report at Codecov.

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


Update/Add [tool name]

Tool information

Tool name:
Tool license:
Add or update?
Desired version:
Approximate size:
If this is an add request:

Brief description of tool:
URL for tool's homepage:
Provide a basic test case to validate the tool's functionality:

Area for Triage:

Question, Bug, or Feature?:

Virtual environments affected

[ ] Ubuntu 16.04
[ ] Ubuntu 18.04
[ ] Ubuntu 20.04
[ ] macOS 10.15
[ ] macOS 11.0
[ ] Windows Server 2016 R2
[ ] Windows Server 2019

Can this tool be installed during the build?

Tool installation time in runtime

Are you willing to submit a PR?

Hello, @MrSuna. Please provide full description for your request. I'm going to close this one for now.

Hello, @MrSuna. Please provide full description for your request. I'm going to close this one for now.


unrecongnised region code

Star Heritage (Europe) (Proto) (SRAM Version).gbc
Star Heritage (Europe) (Proto) (Password Version).gbc

Yeah, although it's an error in the ROM, a bad region code shouldn't be a fatal error.


Support reactive properties on array and function

What problem does this feature solve?
Enables simpler syntax and more consistent behaviour.
It would be nice if you could add reactive properties to a function or an array. Currently only object works.
See this fiddle for an example: https://jsfiddle.net/r64e77ge/4/
Notice how b and c does not update when the child value is toggled. (they do however update when a.value is toggled if they had been toggled first)

  a.value {{a.value}}<button @click="a.value = !a.value">Toggle</button>

  b.value {{b.value}}<button @click="b.value = !b.value">Toggle</button>

  c.value {{c.value}}<button @click="c.value = !c.value">Toggle</button>

new Vue({
  el: '#app',
  data: function() {
    var a = {}
    var b = []
    var c = function(){}

    a.value = true
    b.value = true
    c.value = true

    return {
      a: a,
      b: b,
      c: c
    }
  }
})

My use case is this plugin:
https://github.com/mokkabonna/vue-async-methods
Functions and arrays are not treated as objects that can have their own child reactive properties even though they in fact can.
Because of this limitation I had to place the method itself on a child fetchData.execute property instead of fetchData itself.
This is especially clunky when calling the method from code: this.fetchData.execute() separates the async methods from normal methods that can be called with this.fetchData()
What does the proposed API look like?
I see no technical challenges in treating functions and arrays as objects that can have their own reactive properties. And I suspect the change in the code is also just a small one.
The changes should be here:
https://github.com/vuejs/vue/blob/dev/src/core/observer/index.js#L108
and here:
https://github.com/vuejs/vue/blob/dev/src/core/observer/index.js#L117
A quick change to those lines makes my fiddle work as expected for function at least.

mmh, I don't understand the point of your use case (your lib), is it to just have a component gather the errors?
To me, adding properties to arrays or functions (which are rarely in data, but can be) is for locally adding functionality but not adding it for the reactivity.

@posva
OP's lib allow users to declare asyncMethods on vm instance, say fetchComments.
Then it will transform the async method and add corresponding data property, e.g. comments.
Also, fetchComments itself will have special properties like isResolved to indicate if the async method has completed.
OP can try Vue.set or vm.$forceUpdate to notify re-rendering. Or, vue-rx is also an alternative.
IMHO, Vue skip watching on non plain objects on intention.  https://vuejs.org/v2/api/#data
Supporting watching on Function/Array needs to handle many more edge cases.

Thanks for the explanation @HerringtonDarkholme 🙂

Because of this limitation I had to place the method itself on a child fetchData.execute property instead of fetchData itself.
This is especially clunky when calling the method from code: this.fetchData.execute() separates the async methods from normal methods that can be called with this.fetchData()

I understand it may feel clunky for your usecase. Using a different variable name can make things better: this.dataFetcher.execute()
Personally, I prefer to have serializable data on data and move that kind of state to a store + methods, to a component or, to the root instance

Here are some code that illustrates the changes needed. As well as a couple of added tests.
https://github.com/vuejs/vue/compare/dev...mokkabonna:dev
npm test runs 100% ok, no existing tests fail.

I'm new to Vue Js.
Please check this fiddle https://jsfiddle.net/noid20/z7ve1yud/
it show that you can use reactivity with arrays and functions with a little trick.
please comment out the paragraph to see the effect that I dont understand in Vue Js

I don't think that really makes it reactive, it just happens to update since another property also changes. So I suspect using b.value in a computed will not make the computed reevaluate if b.value changes.

@HerringtonDarkholme If it is undesirable to add this functionality as a universal behavior, would it be possible to add it as an explicit operation instead? Something like Vue.observeFunctionProps(func) (and a $vm instance counterpart) that would be called in mounted() {}
I'm working on something quite similar to @mokkabonna's library - representing an async action as a function that will invoke the action with properties representing the state. This approach, if it were an option with Vue's reactivity system, lends itself to a really clean way to represent the state of async behavior in a UI (in my opinion, anyway).
You end up with something like this:
export default {
  data: {
    fetchComments: new FetchCommentsEndpointState()
  }
}

<button @click="fetchComments()" :disabled="fetchComments.isLoading">
{{ fetchComments.isLoading ? "Loading..." : "Fetch Comments" }}
</button>

{{comment.body}}

  {{ fetchComments.errorMessage }}

I'll add that I'm able to make this work with Vue.util.defineReactive, manually calling it on each property I want to be reactive.

I don't think we'd want to support arbitrary properties on non-Object types, at least not the default because this is a rare (and non-recommended) usage, with a performance overhead (need to do extra property enumerations on function and arrays on initial observation).
@ascott18 yes, explicitly calling Vue.util.defineReactive is the possible workaround.

I don't know how I missed that, but calling Vue.util.defineReactive manually did the trick. My use case is solved, I have published a new npm version.


move spaceship with arrow keys

Show ability to move spaceship with arrow keys

@tejasnr feel free to work off this starter code to move blocks around


forward uplink messages to router

This PR adds code to hpr_protocol_router to forward uplink messages received by hpr to router. This requires the following changes:

Add a grpc client config for router.
rebar.config and Makefile changes to generate grpc files for the router client.
Code to decompose the hpr_packet_up:packet() and assemble the router_pb:blockchain_state_channel_message_v1_pb()
grpc call to router.

TODO:

unit tests
validate the mapping between the two message types - reviewers, can you help with this?

Looking great overall, just need some unit (vs CT) probably?

refactors the top level hpr_gateway_service code to use the novalabsxyz version of grpcbox correctly.
uses grpc_client instead of grpcbox as the client to talk to the old router.
returns the reply from the old router to the gateway.

This PR is updated to reflect changes to the way hpr communicates with Router. In the new design, hpr forwards gateway:send_packet uplink messages from the gateway directly to Router rather than translating the uplink to state channel messages. Similarly, the downlink messages passed from Router to the gateway.
The gateway:send_packet rpc is a bidirectional stream service. The original design defined the Router service as a unary rpc. This API difference necessitated a significant refactoring of the PR. In the new design, hpr_router_connection_manager maintains one grpc_client connection to each Router. This connection multiplexes all of the streams that need to talk to the connected Router. hpr_router_stream_manager maintains one grpc_client stream for every gateway stream that needs to talk to a Router. This one to one relationship between a gateway stream and a router stream is needed to stream answers from the Router back to the correct gateway. hpr_router_relay reads the downlink messages from the Router's grpc stream and forwards the downlink messages to the corresponding gateway's stream. grpc_client doesn't not provide an asynchronous interface. hpr_router_relay is a small gen_server that blocks on grpc_client:rcv to wait for replies from the Router.
In general, the flow is:

gateway opens a grpc stream to hpr
gateway sends an uplink message to hpr
hpr identifies the intended Router for the uplink message
hpr opens/reuses the gateway's stream to the intended Router
Router replies by queuing a downilnk message in the grpc stream from the Router to hpr
hpr reads the downlink message from the Router stream and replies to the corresponding gateway stream

There are (a small number of) new eunit tests for the components. This code has not been tested end-to-end.

We need to add some protection around Connections.
If something dies while trying to route a packet grpcbox gets very upset and will retry until the supervisor keels over.
This probably means that we need to rethink where we account for packets.
We don't want to double account for one-off failures in routing, and we don't want to account for packets that couldn't be routed.

I believe miner digs into the grpc_client:connection and monitors the http_connection process. We can do the same in the connection manager and remove the cached connection if the http process exits.

Looks like this needs a good rebase

Closed in lieu of https://github.com/helium/helium-packet-router/pull/50
Could not fix what happened to the commit history in this PR.


Blocks spill into other pages

Hi, I forked this a while ago so this issue may be fixed, but I noticed that the contentblocks variable was persisting across pages, meaning those blocks started stacking up. I fixed this with a small addition of storing the block data in a key specific to the page path.
def content_for_block(context)
	page = context.environments.first['page']['path']
	context.environments.first['contentblocks'] ||= {}
	context.environments.first['contentblocks'][page] ||= {}
	context.environments.first['contentblocks'][page][@input] ||= []
end

@Convincible Thanks, that's a great fix! Do you have time to submit this as a pull request?


Flip buffers using helper method

Java 8 and 11 have a small incompatible change in the java.nio.Buffer API. This issue crops up if Heron topologies are compiled with JDK 11, but run with Java 8.
Until Java 8, calling the flip() method on any object of Buffer (or subclasses) returns a Buffer. For example, ByteBuffer#flip() returns a Buffer in Java 8.
In Java 11, all subclasses of Buffer return objects of the subclass instead of Buffer, i.e. ByteBuffer#flip() returns a ByteBuffer in Java 11.
To work around this incompatibility between Java versions, we can cast the buffers to Buffer before flipping, since we do not care about the return value anyways. This causes the resulting bytecode to be the same regardless of which Java version is used to compile it.
Progress towards #3266

/home/travis/.cache/bazel/_bazel_travis/be6dac4936703c7eedcb4f5cf38cdd65/execroot/org_apache_heron/heron/common/src/java/org/apache/heron/common/network/BufferHelper.java:28:1: Utility classes should not have a public or default constructor. [HideUtilityClassConstructor]
Need a private constructor for util classes.

Build failed on an integration test this time.Pushed an empty commit to re-run it.

@nwangtw As far as I can tell, the last few builds are failing due to the flaky integration tests. Is there anything else I can at the moment other than re-triggering the build?

@nwangtw As far as I can tell, the last few builds are failing due to the flaky integration tests. Is there anything else I can at the moment other than re-triggering the build?

You can ping committers to restart the build. :)
It is green now. Let me merge~ Thanks!


netkan for http://forum.kerbalspaceprogram.com/threads/92586

Not sure why our bot is choking on TweakScale, but this looks good to me. Merging with thanks!


Fix FBC to point to correct container and bundle

Enterprise contracts expected to fail due to usage of non allowed registry image


Proposal: Trim spaces around unmatched string in test files

When I wrote tests I noticed that parts of the test code which are not matched by any token keep their surrounding spaces.
Motivation
Example: (Markdown List feature)
* foo
+ bar
[...]

----------------------------------------------------

[
	["list", "*"], " foo\r\n",  <-- new line dependent on the choosen new line format
	["list", "+"], " bar\r\n",
	[...]
]

What I really want is this:
[
	["list", "*"], "foo",  <-- no space/new line
	["list", "+"], "bar",
	[...]
]

Spaces and new line inside of string will be kept: E.g. "foo\r\nbar" will be kept.
Proposal
My proposal is to trim spaces/new lines surrounding unmatched strings, similar to how empty and spaces-only strings are removed.
One obvious question is: How many tests will we have to change? - About 200.
I will actually do this myself if you think that this will make it easier to write tests.
Thoughts?

I will close this now because:

Whitespace might be essential in some languages and should not be omitted.
The newline format is supposed to be \r\n for all tests.
It's easy to just copy the formatted token stream output and not even worry about hand-writing the token stream.


Cannot set custom nixpkgs in containers when using flakes

Describe the bug
Nominally it is possible to set a custom nixpkgs for a container with containers.<name>.nixpkgs. This is useful if you want to use modules not available in the main nixpkgs (e.g. you mainly use stable but want a container with an unstable module).
However, attempting to build with latest nixos-unstable-small will fail because the system variable is not passed to the container nixpkgs. This bug only appears when using flakes as there is a fallback to builtins.currentSystem which is available outside pure evaluation mode.
Steps To Reproduce
Steps to reproduce the behavior:

Create a flake.nix that includes 2 nixpkgs, e.g.
Define a container that sets containers.<name>.nixpkgs to the path of one of the inputs
Attempt to build

I have written a minimal example and posted it in a gist
Expected behavior
The system should build correctly with a container using the specified nixpkgs, as it has in the past
Screenshots
The full traceback is extremely long but the imporant part is at the beginning:
error: attribute 'currentSystem' missing

       at /nix/store/1slf1yzl10k0hgshp3260r0np41zf20j-source/nixos/lib/eval-config.nix:15:12:

           14|   #     of a breaking change. To set it modularly, pass `null`.
           15|   system ? builtins.currentSystem
             |            ^
           16| , # !!! is this argument needed any more? The pkgs argument can

       … while evaluating 'optional'

       at /nix/store/1slf1yzl10k0hgshp3260r0np41zf20j-source/lib/lists.nix:255:20:

          254|   */
          255|   optional = cond: elem: if cond then [elem] else [];
             |                    ^
          256|

       … from call site

       at /nix/store/1slf1yzl10k0hgshp3260r0np41zf20j-source/nixos/lib/eval-config.nix:53:8:

           52|     config = lib.mkMerge (
           53|       (optional (system != null) {
             |        ^
           54|         # Explicit `nixpkgs.system` or `nixpkgs.localSystem` should override

Additional context
The bug was introduced in commit 693e2c32871dcea7fe2ef455ee77571d3a117499. I'm not quite sure why it breaks things but the commit before works and this one does not.
Notify maintainers
The file is owned by @infinisil and the breaking commit was by @roberth
Metadata
This happens on multiple systems but this is from my desktop where I made the minimal example.
artemis@starlight ~> nix-shell -p nix-info --run "nix-info -m"

 - system: `"x86_64-linux"`
 - host os: `Linux 6.3.2, NixOS, 22.11 (Raccoon), 22.11.20230518.628d4bb`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.11.1`
 - channels(root): `"nixos"`
 - channels(artemis): `""`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Hi, and sorry for the inconvenience. Sadly the tests did not catch the problem.
Does https://github.com/NixOS/nixpkgs/pull/231473 fix the problem for you?

I'm on rev 3c7487575d9445185249a159046cc02ff364bff8 and it seems to be working. I had the same issue yesterday however it seems to work now.


Record video of test runs with test steps as subtitles

Hi,
I've come across Katalon Studio and found that it can record video of test runs with test steps as subtitles (https://docs.katalon.com/display/KD/Video+Capturing). I imagine this feature would be helpful and save my time on defect investigation and reporting. Is there any way I can achieve this with Robot Framework? If it requires programming, could anyone give me some hints for getting started (libraries, API, etc.)?
Please refer the attached file:

Recording a video is nice, but I don't think it's something that could be added to Robot Framework core. Video only makes sense if you test an application with UI on the same machine where you run tests, and Robot Framework is not at all limited to only this kind of usage. Having a separate library that implements this kind of functionality would be nice, but it should be implemented as a separate project.


add wheels support

sorry for the late response. Apparently, I added a comment to the PR weeks ago, but I didn't submit the full review, so it was not visible to anyone else than me 😞


docs: Add loose email validation to manual validation example

I couldn't find this in the docs to PR, but thought this might improve the manual validation example a bit:
from:
if (!values.email) errors.email = 'Must be a valid email';
to:
if (! /.+\@.+\..+/.test(email)) errors.email = 'Must be a valid email';

That makes sense. I'll make the change right away!
For reference, the docs are here, but I'm looking to move them into the monotipo soon.


[IoT] Enabled minimum TLS version on IoT Hub Create

Description

Enables users to create IoT Hubs through the CLI with a minTLS version (currently only "1.2") set.
Testing Guide

To create a hub that enforces TLS version 1.2:
az iot hub create -n {hub_name} -g {resource_group} -l {location} --sku {sku} --min-tls-version 1.2
History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.

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

[x] The PR title and description has followed the guideline in Submitting Pull Requests.

[x] I adhere to the Command Guidelines.

/azp run

@yonzhan / @zhoxing-ms - anything holding this back from being reviewed / merged?

@zhoxing-ms please help with this PR.

@zhoxing-ms - after that string change, looks like CI failed due to timeout loading webapp module - can we re-run the CI please?

/azp run

@zhoxing-ms - anything specific holding this back from being merged?


Memory Link profile

Is there a standard Memory link profile that we can use, or do we need to get one off someone else? I currently don't own a copy of Black or White.
I want to add. Entralinked has been very good to use so far. Well done to everyone involved :)

Emulator you say. Didn't know that could work. I might do that.
Thank you very much


Test Tomcat 10.1.25

Rationale
Won't be merged. Using this branch to run our test suites on the proposed Apache Tomcat 10.1.25 release.

Not needed


support vaapi on linux through ffmpeg

[x] I have checked that a similar feature request does not already exist.

Is your feature request related to a problem? Please describe.
Currently when running scrcpy, video stream decoding is done using ffmpeg (as far as i know).
Which doesn't use vaapi even if vaapi libraries are already installed.
This increases CPU usage for 60 fps streaming.
Describe the solution you'd like
Is it possible to support vaapi transparently?
Describe alternatives you've considered
Additional context

Bump.
I second this.

cc @rom1v

Yes, it would be better. Contributions welcome :)

@rom1vThanks for your research and test after checking this https://code.videolan.org/rom1v/vlc/-/merge_requests/20
Respect!


Find out why pint doesn't allow registry mixing

We can ask pint in github
We think it might be to enforce consistent mixing of units (e.g. GB vs US gallons)

@seanpearsonuk @dnwillia @ansaboutin
ValueError: Cannot operate with Unit and Unit of different registries.
------------------------------------------------------

------------------------------------------------------
Sharing response given by hgrecco, he has written Pint from scratch.

https://github.com/hgrecco/pint/discussions/1692

http://pint.readthedocs.io/en/0.7.2/tutorial.html#using-pint-in-your-projects
https://github.com/hgrecco/pint/issues/445

So reading that it does allow comparisons but it’s not considering their units equivalent for some reason. It’s still weird, and their answers don’t really help me.

@seanpearsonuk @dnwillia-work

----------------------------------------------------
Here, one approach is mentioned using set_application_registry().

https://pint.readthedocs.io/en/0.7.2/tutorial.html#using-pint-in-your-projects
https://github.com/hgrecco/pint/issues/445

Right, so you can instantiate multiple registries, but they isolate the units to a registry and explicitly disallow combining them because of this design decision: "There are no global units in Pint".  The behaviour does seem to be as in your screenshots:
>>> from pint import UnitRegistry
>>> q1 = UnitRegistry().meter
>>> q2 = UnitRegistry().meter
>>> q1 + q1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'Unit' and 'Unit'
>>> q1
<Unit('meter')>
>>> q2
<Unit('meter')>
>>> q1 == q2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/dnwillia/Developer/CubicEosLib/venv/lib/python3.11/site-packages/pint/facets/plain/unit.py", line 188, in __eq__
    if self._check(other):
       ^^^^^^^^^^^^^^^^^^
  File "/Users/dnwillia/Developer/CubicEosLib/venv/lib/python3.11/site-packages/pint/util.py", line 987, in _check
    raise ValueError(
ValueError: Cannot operate with Unit and Unit of different registries.
>>> q3 = q1 + q2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'Unit' and 'Unit'

Yes, right.


Allow "native" for setting the CPU feature level

It's confusing that the enum variant is called "NATIVE",
but the string to set it is called "rust".
This commit will match "rust" or "native" to disable ASM.

Coverage remained the same at 75.515% when pulling 206fde4adc759d28aa70fc29859139517ca4f695 on shssoichiro:native-cpu-level into 610946f9320265550f8185ad4d75e6b0cf2698e4 on xiph:master.

Going to take a different, cleaner approach using the arg_enum macro and then reopen this.


use ByteSink and ByteSource instead of OutputSupplier and InputSupplier

They are being deprecated and will eventually be removed in Guava 18.0

:+1:

@infynyxx thanks, do you mind squashing commits, and I'll merge

@xvrl done

@infynyxx tests failed for unrelated reason, merging.


Verbose "key was in the reservedKeys set, and was dropped"

Thanks for taking the time for reporting an issue!
Describe what happened
Include any error message or stack trace if available.
We are seeing a constant barrage of messages about timestamps being dropped because they are in the reservedKeys set.
2022-03-25 11:48:15.849 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:15.925 28970-29198/ E/Datadog: "_dd.timestamp=1648223153265" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:15.965 28970-29198/ E/Datadog: "_dd.timestamp=1648223203796" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.014 28970-29198/ E/Datadog: "_dd.timestamp=1648223254330" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.031 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.087 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.122 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.146 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.183 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.204 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.228 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.
2022-03-25 11:48:16.251 28970-29198/ E/Datadog: "_dd.timestamp=1648222788501" key was in the reservedKeys set, and was dropped.

It looks like it's because the ignoredAttributes in the RumEventSerializer contains RumAttributes.INTERNAL_TIMESTAMP
The source of this INTERNAL_TIMESTAMP appears to be in BridgeRum#startResource, which is what our react native (@Datadog/mobile-react-native module) is calling DdRum#startResource, which in turn calls BridgeRum#startResource, where it creates this attributes map with the reservedKey:
        val attributes = context.toMutableMap().apply {
            put(RumAttributes.INTERNAL_TIMESTAMP, timestampMs)
        }

Steps to reproduce the issue:
I can't share the source code for our app, but let me know if more information than the above is needed.
Describe what you expected:
I'm not sure if this is a real issue or not but at the very least the logging should be removed for this case - we are getting a large number of these errors when using the RUM logging.
It seems like either the logging should be removed for the reserved _dd.timestamp, or the BridgeRum#startResource should use a key that's different from the reserved key for timestamp.
Additional context

Android OS version: API 31 (Android 12)
Device Model: Pixel 2
Datadog SDK version: 1.11.1
Versions of any other relevant dependencies (OkHttp, …):   @datadog/mobile-react-native : "^1.0.0-rc4"
Proguard configuration: N/A, this is in debug at the moment without proguard rules
Gradle Plugins: com.datadoghq:dd-sdk-android-gradle-plugin:1.1.0

Hello @josephyanks! This issue was fixed recently in #874 and the fix will be available in the next release of our React Native SDK.

That's great news, thank you.


bower install in postinstall breaks build

I'm not using bower, so the following line from package.json
"postinstall": "bower install",

breaks my build every time I run npm install.
       npm ERR<EMAIL_ADDRESS>postinstall: `bower install`
       npm ERR! spawn ENOENT
       npm ERR!
       npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script 'bower install'.
       npm ERR! This is most likely a problem with the orbit.js package,
       npm ERR! not with npm itself.
       npm ERR! Tell the author that this fails on your system:
       npm ERR!     bower install
       npm ERR! You can get their info via:
       npm ERR!     npm owner ls orbit.js
       npm ERR! There is likely additional logging output above.

Sorry about this. You'll be happy to know that we're no longer relying on bower at all.


How do you make a party with yourself (multiboxing) without making a server?

I would like to make a party to multibox but i don't know how to make a server to share vision is there a way to do it localy without making a server? Also the ip that is already there when i try to connect to it, it just disconnects me right away.

@Raider3030
No, due to the browser restriction, you can not share data between tabs with a server. The only way is to create a server locally and both tabs connect to the local server.

Okay thanks I can't make a server but cool minimap!


Fixed user agent type annotations.

It seems pretty clear that the type of CrawlerDetect::userAgent is string|null throughout this file. However, in some places it is typed as just null and in others it is typed as just string, when in fact, both are possible in all contexts. Moreover, the type initialization to null is redundant because all fields are null by default.

Thank you


Investigate reconciler possibly doing unnecessary work on startup?

When restarting VDI on palm I noticed that the reconciler kicked in and did a bunch of work.  This shouldn't have been necessary as the service was not being used and the reconciler should be running at a set interval which should mean that there was no work to do on startup.

Reopened as #269


Add -m switch to create a module instead of a lib

Currently projects like stm32-rs have to strip out all the attributes during build to create a file suitable for use as a module. This PR adds a new -m switch instead, which causes a mod.rs file to be created without the inner attributes or the pub mod generic/use generic::* lines which would live in the top-level lib.rs.

r? @Emilgardis
(rust-highfive has picked a reviewer for you, use r? to override)

Have you tested all 4 modes?
-m and -g  disables/enabled all/only one

I guess ideally we should add a CI test for both -g and -m (and combinations) but it didn't seem too easy to add to the current setup.
svd2rust works OK with nothing, -m, -g, and -m -g, and stm32-rs builds a good PAC with -m or -m -g.

bors r+


Spatial Mapping Updates

This update addresses issues #144, #143, and #39. Unfortunately, most code looks new, even though it's simply being moved to a new location. Here's a list of what the major changes are in this PR:

Adds the ObjectSurfaceObserver for loading meshes from a room file to the SpatialMapping prefab (replaces the old FileSurfaceObserver).
Moves the FileSurfaceObserver onto the RemoteMapping prefab, for saving/loading files from a remote mapping session.
Moves all scripts related to RemoteMapping into a separate folder called 'RemoteMapping'.
Moves all scripts related to Processing into a separate folder called 'SpatialProcessing'.
Removes RemoteMapping prefab from the SpatialProcessing.unity test scene. SpatialProcessing test will now load a .obj file when running in Unity via the ObjectSurfaceObserver script.
Adds a RemoteMapping.unity test scene to help test the RemoteMapping scripts.
Updates spatial mapping documentation.
Removes Plugins\WSA\x64\PlaneFinding.dll (which was failing WACK for some people and is not actually used by anything).

Whoa! A monster change. =)
Can you outline a few test cases I can use to verify all the surface area of this change?

It looks like a monster, but it's more a reshuffle. Instead of deprecating RemoteMapping, we chose to move all relevant scripts to a different folder. Most developers should never need to use these scripts, so when importing HoloToolkit, you can quickly de-select this folder to exclude them.
The SpatialMapping prefab now matches what we use in Holograms 230 (includes the ObjectSurfaceObserver instead of the FileSurfaceObserver). And the RemoteMapping prefab now includes the FileSurfaceObserver to save/load files from the remote session. If someone prefers the old behavior (using FileSurfaceObserver), they can edit that script to load a file automatically, but we would prefer developers to use ObjectSurfaceObserver instead.
To test, run the following scenes:

SpatialMapping\Tests\SpatialProcessing.unity
a) Run this in Editor, to verify that ObjectSurfaceObserver is working (it should load meshes from the SRMesh.obj file in the 'support' folder) and that the removal of the WSA x64 PlaneFinding.dll did not break ability to do plane finding.
b) Run this on HoloLens or emulator to verify that the live surface observer still works fine, along with plane finding.

2)SpatialMapping\Tests\RemoteMapping.unity
a) Updated instructions for running this scene are in documentation, but here's the flow:
Open port 11000 on your PC's firewall. Set the IPv4 address of your PC on the RemoteTarget and RemoteSource components of the RemoteMapping object. Build and deploy to HoloLens. Once running on HoloLens, press the 'play' button to start running the app in the Unity Editor. Press the 'N' key to accept meshes from the network. On HoloLens, say "Send Meshes" to send meshes to Unity. Watch the meshes appear in Unity. Press the 'S' key to save the meshes to your PC. Stop running in Unity by pressing 'Play'. Restart in Unity by pressing 'Play' again and then press the 'L' key to load the meshes from the saved file (which will use the old FileSurfaceObserver). Note: This change also makes the 'S' 'L' 'N' keycodes and 'Send Meshes' command configurable in the Editor.
Those two scenes should be enough to cover the new ObjectSurfaceObserver code (which is already used in Holograms 230), and changes made to SpatialMappingManager, RemoteMapping prefab, and SpatialMapping prefab.
Note: I also ran the TapToPlace and PlaneFinding test scenes to verify that functionality was not regressed there.
Thanks!
~Angela

Changes look good to me.
@jwittner please merge when you are ready.

Thanks @angelaHillier! I ran the first SpatialProcessing tests above and everything worked great, I'll trust you on the RemoteMapping tests. =)


doc : add contribution guidelines

Description
I have added contributing guidelines in CONTRIBUTING.md
some keys section added in this commit are

how to contribute (fork, pull request)
basic info on communication, issues, attribution

Fixes #22
Type of change

[x] 📝 Documentation Update

Added tests?

[x] 🙅 no, because they aren't needed

Hey @ekas thanks for the feedback , based on that i have updated contributing guidelines and added a new section in README directing to CONTRIBUTING


RFC6331: Moving DIGEST-MD5 to Historic

Dear @ldapjs team,
In first, I wish you a Happy New Year!
20 November 2008: CRAM-MD5 to Historic:

https://tools.ietf.org/html/draft-ietf-sasl-crammd5-to-historic-00

29 June 2017: CRAM-MD5 to Historic:

https://tools.ietf.org/html/draft-zeilenga-luis140219-crammd5-to-historic-00

July 2011: RFC6331: Moving DIGEST-MD5 to Historic:

https://tools.ietf.org/html/rfc6331

August 2021: RFC9051: Internet Message Access Protocol (IMAP) - Version 4rev2:
"Replaced DIGEST-MD5 SASL mechanism with SCRAM-SHA-256. DIGEST-MD5 was deprecated."

https://tools.ietf.org/html/rfc9051

I add same about SCRAM-MD5.
There are now:

July 2010: RFC5802: Salted Challenge Response Authentication Mechanism (SCRAM): SASL and GSS-API Mechanisms: https://tools.ietf.org/html/rfc5802 (SCRAM-SHA-1 and SCRAM-SHA-1-PLUS)
July 2010: RFC5803: Lightweight Directory Access Protocol (LDAP) Schema for Storing Salted: Challenge Response Authentication Mechanism (SCRAM) Secrets: https://tools.ietf.org/html/rfc5803
November 2015: RFC7677: SCRAM-SHA-256 and SCRAM-SHA-256-PLUS: Simple Authentication and Security Layer (SASL) Mechanisms: https://tools.ietf.org/html/rfc7677

Soon:

SCRAM-SHA-512(-PLUS): https://tools.ietf.org/html/draft-melnikov-scram-sha-512
SCRAM-SHA3-512(-PLUS): https://tools.ietf.org/html/draft-melnikov-scram-sha3-512

What is the action you are expecting with creating this issue? How does this relate to the ldapjs source code?

@jsumners: Thanks for your reply!

https://github.com/ldapjs/node-ldapjs/search?q=md5

Would you like to submit a pull request to solve this issue?

👋
On February 22, 2023, we released version 3 of this library. As a result, we are closing this issue/pull request.
Please see issue #839 for more information, including how to proceed if you feel this closure is in error.


[Do not merge] optional workspace parameters unit test add

Description

Issues Resolved

Screenshot

Testing the changes

Check List

[x] All tests pass

[ ] yarn test:jest
[ ] yarn test:jest_integration
[ ] yarn test:ftr

[x] New functionality includes testing.
[x] New functionality has been documented.
[x] Update CHANGELOG.md
[ ] Commits are signed per the DCO using --signoff

Codecov Report

Merging #200 (77c2afa) into workspace-pr-integr (d7d712e) will decrease coverage by 11.23%.
Report is 4 commits behind head on workspace-pr-integr.
The diff coverage is 26.66%.

:exclamation: Current head 77c2afa differs from pull request most recent head 69dd163. Consider uploading reports for the commit 69dd163 to get more accurate results

@@                   Coverage Diff                    @@
##           workspace-pr-integr     #200       +/-   ##
========================================================
- Coverage                66.49%   55.27%   -11.23%
========================================================
  Files                     3408     2256     -1152
  Lines                    65149    42220    -22929
  Branches                 10431     7374     -3057
========================================================
- Hits                     43323    23336    -19987
+ Misses                   19237    17453     -1784
+ Partials                  2589     1431     -1158

Flag
Coverage Δ

Linux_1
?

Linux_2
55.25% <26.66%> (-0.10%)
:arrow_down:

Linux_3
?

Linux_4
34.82% <0.00%> (-0.06%)
:arrow_down:

Windows_1
?

Windows_2
?

Windows_3
?

Windows_4
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Changed
Coverage Δ

.../core/public/saved_objects/saved_objects_client.ts
92.55% <ø> (ø)

...ore/server/saved_objects/import/check_conflicts.ts
100.00% <ø> (ø)

...erver/saved_objects/import/create_saved_objects.ts
96.77% <0.00%> (-3.23%)
:arrow_down:

...erver/saved_objects/import/import_saved_objects.ts
100.00% <ø> (ø)

...rver/saved_objects/import/resolve_import_errors.ts
96.42% <ø> (ø)

...d_objects/migrations/core/build_active_mappings.ts
87.09% <ø> (ø)

...rc/core/server/saved_objects/routes/bulk_create.ts
25.00% <0.00%> (-15.00%)
:arrow_down:

src/core/server/saved_objects/routes/create.ts
25.00% <0.00%> (ø)

src/core/server/saved_objects/routes/export.ts
15.00% <0.00%> (ø)

src/core/server/saved_objects/routes/find.ts
16.66% <0.00%> (-5.56%)
:arrow_down:

... and 8 more

... and 1610 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


fix: change configuration to avoid incorrect status code issues

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


Would be great to have CSS only instructions

I use Elm and letter jquery play around with the dom can lead to problems. I like the styling but could not figure out how much of the javascript was doing essential thigns above and beyond adding/removing styles

Hi @simonh1000
This library is actually a jQuery plugin, so it's dependent on jQuery all the way up.
There is another version without jQuery that uses modern JavaScript instead that you may consider: bootstrap-switch-button
Lastly, a lighter version that consists entirely of CSS (and Bootstrap components) seems plausible, it would just require users to construct the switch-button themselves (it's a containing div with some buttons) and then manage events using inline onChange calls.

yes it was this last point that I meant - as I use Elm, I'm used to reimplementing stuff in our strange but lovable language, but your CSS is valuable in its own right. However, when I looked at the javascript I could see that there is rather more happening that just adding or removing a couple of classes and handling a couple of events


ocamlformat: remove package declarations

Description of changes
Follow up of #175670

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

I couldn't find a better commit message so I'd also accept suggestions on it! :wink:


Bugs with connections between fork-and-join node and other nodes

Describe the bug

After connecting adding a connection betwenn fork-and-join and action nodes and clicking on the added node (not fork-and-join), changing the position of this added node will also change the position of fork-and-join node.
To Reproduce

No1 :

Open UML Activity diagram modelling editor.
Add fork-and-join node.
Add action node.
Add second action node.
Firstly, add connection betwenn FnJ and 1st action node.
Add connection between FnJ and 2nd action node.
Try to move 2nd action node to another position.
FnJ node will also change its position.

Expected behavior

It's expected, that FnJ node can't change its position in this case.
Screenshots
After step 4

After step 6

After step 8

Environment

 - OS: Win10
 - Browser : Chrome
 - Version  83.0.4103.116 (Official Build) (64-bit)

This is related to Apollon - I already created a bug report there: https://github.com/ls1intum/Apollon/issues/113

@tobiasschamel sorry, didn't notice your post. I've found another bug concerning fork-and-join node, will change this post in 5min.

@tobiasschamel fixed the bug report. Pls check

resolved in Apollon


Giveli.st > Redirect to thank you page

Once the person finishes the donation to the list in Every, then we should redirect him to a thank you page.
Here is the flow in case there are doubts: https://www.figma.com/file/rmZJy0ozTHhwxHoBsxgnlW/giveli.st-LIL-BUB?node-id=0%3A1
Probably the best option is that once the person successfully donates on Every, we do a browser redirect to: giveli.st/campaign-slug/thank-you

I think this can already be done with the redirectUrl query parameter on the donate flow - would that be sufficient?

@osdiab yes Omar, I think that could work!
How could we try the whole donation flow ? Is there like a dummy card or something for testing purposes?

You can use a URL like this with our staging tenant:
https://staging.every.org/ffungi/donate?frequency=ONCE&amount=25&share_info=1&no_exit=1

Add the redirect_url query param to redirect somewhere else. For the credit card you can use 4242424.... repeating until the input fills up. Hope that helps!

@osdiab
I just tested this and I am not being redirected back. On the last step of the donation flow, you are given two options

If its the first time donating, you are prompted to input a password or login with social media accounts, and then you are taken to a page to finish completing your profile
If you are already logged in, you are prompted to share your donation. If I select "skip for now", I am taken back to the nonprofit profile.

This is the URL I was using
https://staging.every.org/OurWorldInData/donate?frequency=ONCE&amount=10&no_share=1&no_exit=1&redirect_url=https%3A%2F%2Fgivelist.vercel.app%2Flilbubs10thbirthday%2Fthank-you&share_info=1
I tried with both redirect_url and redirectUrl
I also tried with both encoded and plain text url, just in case.

ah sorry i missed your comment! my bad, the parameter you want is success_url. redirect_url doesn't currently support external URLs.


rancher-server behind SSL nginx-proxy Unable to create event router connection refused

Hi there,
I'm trying to setup rancher-server on Debian Jessie behind SSL using https://github.com/jwilder/nginx-proxy (instead of a manually deployed nginx proxy using --link as suggested in the docs).
I'm able to setup the UI and access it, however I receive the following error message in the docker logs:
time="2015-10-01T11:50:11Z" level=error msg="Unable to create event router" error="Get https://example.com/v1: dial tcp PUBLIC_IP:443: connection refused"

Also, don't know if it's related by when clicking on the Admin link on the UI it stays stuck on "Loading".
Again don't know if it's related but after a while I start getting this in the docker logs of the rancher-server:
2015-10-01 12:00:29,334 ERROR [:] [] [] [] [ecutorService-4] [o.a.c.m.context.NoExceptionRunnable ] Uncaught exception io.cattle.platform.lock.exception.FailedToAcquireLockException: Failed to acquire lock [SERVICE.ACCOUNT.CREATE.machineServiceAccount]
	at io.cattle.platform.lock.provider.impl.StandardLock.lock(StandardLock.java:51) ~[cattle-framework-lock-0.5.0-SNAPSHOT.jar:na]
	at io.cattle.platform.lock.impl.AbstractLockManagerImpl$1.withLock(AbstractLockManagerImpl.java:17) ~[cattle-framework-lock-0.5.0-SNAPSHOT.jar:na]
	at io.cattle.platform.lock.impl.LockManagerImpl.doLock(LockManagerImpl.java:30) ~[cattle-framework-lock-0.5.0-SNAPSHOT.jar:na]
	at io.cattle.platform.lock.impl.AbstractLockManagerImpl.lock(AbstractLockManagerImpl.java:13) ~[cattle-framework-lock-0.5.0-SNAPSHOT.jar:na]
	at io.cattle.platform.lock.impl.AbstractLockManagerImpl.lock(AbstractLockManagerImpl.java:37) ~[cattle-framework-lock-0.5.0-SNAPSHOT.jar:na]
	at io.cattle.platform.docker.machine.launch.GenericServiceLauncher.getCredential(GenericServiceLauncher.java:86) ~[cattle-docker-machine-0.5.0-SNAPSHOT.jar:na]
	at io.cattle.platform.docker.machine.launch.MachineLauncher.setEnvironment(MachineLauncher.java:32) ~[cattle-docker-machine-0.5.0-SNAPSHOT.jar:na]
	at io.cattle.platform.docker.machine.launch.GenericServiceLauncher.doRun(GenericServiceLauncher.java:161) ~[cattle-docker-machine-0.5.0-SNAPSHOT.jar:na]
	at org.apache.cloudstack.managed.context.NoExceptionRunnable.runInContext(NoExceptionRunnable.java:13) ~[cattle-framework-managed-context-0.5.0-SNAPSHOT.jar:na]
	at org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49) [cattle-framework-managed-context-0.5.0-SNAPSHOT.jar:na]
	at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:55) [cattle-framework-managed-context-0.5.0-SNAPSHOT.jar:na]
	at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:108) [cattle-framework-managed-context-0.5.0-SNAPSHOT.jar:na]
	at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:52) [cattle-framework-managed-context-0.5.0-SNAPSHOT.jar:na]
	at org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46) [cattle-framework-managed-context-0.5.0-SNAPSHOT.jar:na]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_79]
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) [na:1.7.0_79]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) [na:1.7.0_79]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.7.0_79]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_79]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_79]
	at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]

Finally trying to run a rancher/agent on the same machine with the CATTLE_AGENT_IP environment variable set to the server's public IP also fails with the following message in the logs:
INFO: Attempting to connect to: https://example.com/v1
ERROR: https://example.com/v1 is not accessible

Hi @jmatsushita, I'm not too familiar with the nginx proxy, but it looks pretty cool.
Is the Nginx container staying up? Or is it getting a 500? Is there any info in the logs that shows how it is rendering the template? It looks like the host is not listening on 443.
Also, Looking at the configs it doesn't appear to be passing all of these headers.
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-Port $server_port;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

And to get it to you would have to provide the container a Proxy.conf file (That includes the full proxy config).

@cloudnautique Passing headers causes the same behaviour: cannot open the admin tab and the log message.

@jmatsushita any luck with this?

@jmatsushita Please re-open if you are still having issues.


Update grading_config.yml

Hello! To work on this exercise, please create a copy of the repository for yourself and make your changes there.


Add ability to override default value of "user_id" length

Hello,
In my project there are some cases where I need to use 'user_id' shorter than 5 symbols. API has ability to override the default value of 5 by sending additional field "options", it will be really great to have such ability in SDK.
Thanks in advance.

Is there an estimation for this fix?
Thanks.

added a pull request which address this issue: https://github.com/amplitude/Amplitude-Java/pull/43

V1.5 is out with options support.
When it will be in Maven respository?

1.5 is available now:
https://search.maven.org/artifact/com.amplitude/java-sdk/1.5.0/jar


NFCORE_RNASEQ:RNASEQ:FASTQ_FASTQC_UMITOOLS_TRIMGALORE:FASTQC (SRR15731653)` terminated with an error exit status (1)

Description of the bug
Hi,
I have been using nf-core/rnasq for a long time, but with the update of Nextflow, I am receiving the following error messages. I downloaded my fastq files with aspera and there was no breakage. I don't understand why this is happening. I've never encountered this error before. I downloaded my fastq files again and again and installed nextflow on conda again and I get this error every time I run it. Does this error have anything to do with the new update? I am using HPC, maximum cpu is 40 or 56 and maximum ram is 190 or 380. I send the slurm job to the queue and use 3 nodes.  Can you help with this issue?
Command used and terminal output
$
#SBATCH -N 3
#SBATCH --ntasks-per-node=56
#SBATCH --time=72:00:00
#SBATCH --output=/truba_scratch/dokmen/StarRsem/test.log
#SBATCH --error=/truba_scratch/dokmen/StarRsem/test.err
echo "SLURM_NODELIST $SLURM_NODELIST"
echo "NUMBER OF CORES $SLURM_NTASKS"
echo "SLURM_CPUS_PER_TASK $SLURM_CPUS_PER_TASK"
eval "$(/truba/home/dokmen/miniconda3/bin/conda shell.bash hook)"
conda activate nf-core
export NXF_CLUSTER_SEED=$(shuf -i 0-16777216 -n 1)
export NXF_OPTS="-Xms500M -Xmx2G"
wdir=/truba_scratch/dokmen/StarRsem/
cd $wdir
nextflow run \
   nf-core/rnaseq -r 3.14.0\
     -profile singularity \
     -params-file nf-params.json \
     -c GSE.config
exit

config file:

params {
    config_profile_name        = 'GSE183533 profile'
    // Limit resources so that this can run on GitHub Actions
    max_cpus   = 56
    max_memory = '190.GB'
    max_time   = '72.h'
}

process {
    errorStrategy = { task.exitStatus in [143,137,104,134,139,140,247] ? 'retry' : 'finish' }
    maxRetries    = 2

    // process labels

}

singularity {
  enabled = true
  autoMounts = true
  cacheDir = '/truba/home/dokmen/.singularity'
}

process {
executer ='slurm'
scratch = true
submitRateLimit = '10 sec'
queueSize = 50
}

// When using RSEM, remove warning from STAR whilst building tiny indices
process {
    withName: 'RSEM_PREPAREREFERENCE_GENOME' {
        ext.args2 = "--genomeSAindexNbases 7"
    }
}

Output:

executor >  local (5)
[-        ] NFC…REPARE_GENOME:GUNZIP_FASTA | 0 of 1
[-        ] NFC…:PREPARE_GENOME:GUNZIP_GTF | 0 of 1
[-        ] NFC…:PREPARE_GENOME:GTF_FILTER -
[-        ] NFC…ME:GUNZIP_TRANSCRIPT_FASTA | 0 of 1
[-        ] NFC…_TRANSCRIPTS_FASTA_GENCODE -
[-        ] NFC…ENOME:CUSTOM_GETCHROMSIZES -
[-        ] NFC…EM_PREPAREREFERENCE_GENOME -
[-        ] NFCORE_RNASEQ:RNASEQ:CAT_FASTQ -
[7e/0ad9d7] NFC…ALORE:FASTQC (SRR15731644) | 4 of 41, failed: 4
[fb/bc2726] NFC…E:TRIMGALORE (SRR15731658) | 1 of 41, failed: 1
[-        ] NFC…PLE_FQ_SALMON:SALMON_INDEX -
[-        ] NFC…PLE_FQ_SALMON:FQ_SUBSAMPLE -
[-        ] NFC…PLE_FQ_SALMON:SALMON_QUANT -
[-        ] NFC…M:RSEM_CALCULATEEXPRESSION -
[-        ] NFC…ATS_SAMTOOLS:SAMTOOLS_SORT -
[-        ] NFC…TS_SAMTOOLS:SAMTOOLS_INDEX -
[-        ] NFC…TS_SAMTOOLS:SAMTOOLS_STATS -
[-        ] NFC…SAMTOOLS:SAMTOOLS_FLAGSTAT -
[-        ] NFC…SAMTOOLS:SAMTOOLS_IDXSTATS -
[-        ] NFC…IFY_RSEM:RSEM_MERGE_COUNTS -
Plus 25 more processes waiting for tasks…
-[nf-core/rnaseq] Pipeline completed with errors-
ERROR ~ Error executing process > 'NFCORE_RNASEQ:RNASEQ:FASTQ_FASTQC_UMITOOLS_TRIMGALORE:FASTQC (SRR15731653)'

Caused by:
  Process `NFCORE_RNASEQ:RNASEQ:FASTQ_FASTQC_UMITOOLS_TRIMGALORE:FASTQC (SRR15731653)` terminated with an error exit status (1)

Command executed:

  printf "%s %s\n" SRR15731653_1.fastq.gz SRR15731653_1.gz SRR15731653_2.fastq.gz SRR15731653_2.gz | while read old_name new_name; do
      [ -f "${new_name}" ] || ln -s $old_name $new_name
  done

  fastqc \
      --quiet \
      --threads 6 \
      SRR15731653_1.gz SRR15731653_2.gz

  cat <<-END_VERSIONS > versions.yml
  "NFCORE_RNASEQ:RNASEQ:FASTQ_FASTQC_UMITOOLS_TRIMGALORE:FASTQC":
      fastqc: $( fastqc --version | sed '/FastQC v/!d; s/.*v//' )
  END_VERSIONS

Command exit status:
  1

Command output:
  application/gzip
  application/gzip

Command error:
  INFO:    Environment variable SINGULARITYENV_TMPDIR is set, but APPTAINERENV_TMPDIR is preferred
  INFO:    Environment variable SINGULARITYENV_NXF_TASK_WORKDIR is set, but APPTAINERENV_NXF_TASK_WORKDIR is preferred
  INFO:    Environment variable SINGULARITYENV_NXF_DEBUG is set, but APPTAINERENV_NXF_DEBUG is preferred
  application/gzip
  application/gzip
  Failed to process file SRR15731653_2.gz
  uk.ac.babraham.FastQC.Sequence.SequenceFormatException: Midline 'F,FFFFFFCCCATGGA868:186:H2G5KDSX2:2:1105:26865:8343/2' didn't start with '+' at 885703
  	at uk.ac.babraham.FastQC.Sequence.FastQFile.readNext(FastQFile.java:179)
  	at uk.ac.babraham.FastQC.Sequence.FastQFile.next(FastQFile.java:129)
  	at uk.ac.babraham.FastQC.Analysis.AnalysisRunner.run(AnalysisRunner.java:77)
  	at java.base/java.lang.Thread.run(Thread.java:833)
  Failed to process file SRR15731653_1.gz
  uk.ac.babraham.FastQC.Sequence.SequenceFormatException: Midline 'FFFFFACTCTTC111:29957:19617/1' didn't start with '+' at 2218703
  	at uk.ac.babraham.FastQC.Sequence.FastQFile.readNext(FastQFile.java:179)
  	at uk.ac.babraham.FastQC.Sequence.FastQFile.next(FastQFile.java:129)
  	at uk.ac.babraham.FastQC.Analysis.AnalysisRunner.run(AnalysisRunner.java:77)
  	at java.base/java.lang.Thread.run(Thread.java:833)

Relevant files
.nextflow.log
System information
No response
### Tasks

I don't think this is a pipeline error:
  Failed to process file SRR15731653_2.gz
  uk.ac.babraham.FastQC.Sequence.SequenceFormatException: Midline 'F,FFFFFFCCCATGGA868:186:H2G5KDSX2:2:1105:26865:8343/2' didn't start with '+' at 885703

  Failed to process file SRR15731653_1.gz
  uk.ac.babraham.FastQC.Sequence.SequenceFormatException: Midline 'FFFFFACTCTTC111:29957:19617/1' didn't start with '+' at 2218703

To me, it seems that the input FastQ is not formatted correctly. Particularly the second error to me seems as if the sequence directly blends into the ID of the next read without quality scores.
If you have downloaded the files multiple times already, it might be that they are already corrupted at submission? I recommend some additional data integrity checks first, e.g. with seqfu check or fq lint. You can then for example use seqkit sana to fix errors and drop malformed reads.
PS: We also have an #rnaseq channel in the nf-core Slack space where you could get faster help on issues like this.

I think @MatthiasZepper was correct here, and since there's been no follow-up I'm going to consider this issue resolved. Feel free to reopen if you have convincing examples showing that this is not due to malformed FASTQs.


add possibility to set a trusted certificate per provider

not possible as only CA-chain can be checked


404 not found error when running the helm chart with strimzi watching enabled

Describe the bug
When I deploy the helm manifest with the following command,
`helm repo add kafka-lag-exporter https://lightbend.github.io/kafka-lag-exporter/repo/
helm repo update

helm install kafka-lag-exporter/kafka-lag-exporter \
  --name kafka-lag-exporter \
  --namespace kafka-lag-exporter \
  --set watchers.strimzi=true

`

The error in the logging shows that there is a 404 not Found exception that stops the monitoring:
`2021-12-28 11:22:50,595 INFO  akka.event.slf4j.Slf4jLogger  - Slf4jLogger started
SLF4J: A number (3) of logging calls during the initialization phase have been intercepted and are
SLF4J: now being replayed. These are subject to the filtering rules of the underlying logging system.
SLF4J: See also http://www.slf4j.org/codes.html#replay
2021-12-28 11:22:50,636 INFO  c.l.k.KafkaClusterManager$ akka://kafka-lag-exporter/user - Starting Kafka Lag Exporter with configuration:
Poll interval: 30 seconds
Lookup table size: 60
Metrics whitelist: [.*]
Admin client consumer group id: kafkalagexporter
Kafka client timeout: 10 seconds
Prometheus:
  port: 8000

Statically defined Clusters:
  (none)
Watchers:
  Strimzi: true

2021-12-28 11:22:50,641 INFO  c.l.k.KafkaClusterManager$ akka://kafka-lag-exporter/user - Adding watcher: strimzi
2021-12-28 11:22:51,083 WARN  i.f.k.c.d.i.WatchConnectionManager  - Exec Failure: HTTP 404, Status: 404 - 404 page not found
 java.net.ProtocolException: Expected HTTP 101 response but was '404 Not Found'
    at okhttp3.internal.ws.RealWebSocket.checkResponse(RealWebSocket.java:229)
    at okhttp3.internal.ws.RealWebSocket$1.onResponse(RealWebSocket.java:196)
    at okhttp3.RealCall$AsyncCall.execute(RealCall.java:216)
    at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
2021-12-28 11:22:51,085 ERROR c.l.k.w.StrimziClusterWatcher$$anon$1 akka://kafka-lag-exporter/user/strimzi-cluster-watcher-strimzi - 404 page not found
 io.fabric8.kubernetes.client.KubernetesClientException: 404 page not found
    at io.fabric8.kubernetes.client.dsl.internal.WatchConnectionManager$1.onFailure(WatchConnectionManager.java:203)
    at okhttp3.internal.ws.RealWebSocket.failWebSocket(RealWebSocket.java:571)
    at okhttp3.internal.ws.RealWebSocket$1.onResponse(RealWebSocket.java:198)
    at okhttp3.RealCall$AsyncCall.execute(RealCall.java:216)
    at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
    Suppressed: java.lang.Throwable: waiting here`

Environment

Version
k3d in my local machine
Version of Apache Kafka cluster
strimzi kafka operator 0.27.0
Run with Helm or Standalone
helm
Additional context
Add any other context about the problem here.
This may be a silly config error from my side, but have you seen this before?

Closed: user error. Was deployed in wrong namespace, hence 404 errors.

@saminahbab got the same issue, the namespace should be the one of the operator or the one of the kafka cluster ?

I also had the same issue, tried on both Strimzi operator namespace and Kafka clusters namespaces...
Will update if I sort it out.


Webpack support for exports field in package.json

I am adding axios and react-native-svg to my codebase and now repack is not able to compile the bundle
https://github.com/chakrihacker/repack-bug

Hi @chakrihacker,
so apparently the order in conditionNames doesn't matter, we'll have to manually point to axios to resolve this issue.
In your webpack.config.js please modify resolve options and add the following:
resolve: {
      /**
       * `getResolveOptions` returns additional resolution configuration for React Native.
       * If it's removed, you won't be able to use `<file>.<platform>.<ext>` (eg: `file.ios.js`)
       * convention and some 3rd-party libraries that specify `react-native` field
       * in their `package.json` might not work correctly.
       */
      ...Repack.getResolveOptions(platform),
      /**
       * Uncomment this to ensure all `react-native*` imports will resolve to the same React Native
       * dependency. You might need it when using workspaces/monorepos or unconventional project
       * structure. For simple/typical project you won't need it.
       */
      alias: {
        axios: new URL('./node_modules/axios/index.js', import.meta.url)
          .pathname,
      },
    },

@jbroma This hack is fine, I am not sure if I move to mono repo in future this will work (I am planning to migrate my app to super app). can we fix this at repack library level?? I can deep dive into the library, if you can give some pointers??

I'm not sure this is something we can fix easily as module resolution algorithm for metro and Webpack are different. Ideally we would want to maintain parity with metro when it comes to modules compatibility.
If you would like to contribute to this issue, you can check few things:

metro recently released support for conditionNames, you can check how their final implementation looks like and how it differs from what Webpack uses (look up webpack/enhanced-resolve)
it might be a long shot but you could check if it would be possible to replace webpack/enhanced-resolve with metro-resolver


fix: hide embed button when all actions are disabled

Hiding the +Embed dropdown button when there are no actions under it,

This is already implemented on the master branch

https://github.com/contentful/field-editors/blob/58dedc65a2de20973775b48cbb95b54d81894d0a/packages/rich-text/src/Toolbar/index.js#L130-L158

@MohammedAl-Rowad can you please rebase to target rebase-next branch instead? I will take care of releasing the change later on

@MohammedAl-Rowad can you please rebase to target rebase-next branch instead? I will take care of releasing the change later on

I'll replace it with other PR, much easier :)


separation of input Files and other input parameters clashes with CWL's object model

In CWL inputs can be of type File or Directory, as well as string, or various types of numbers. Additionally we have complex types (lists, records/maps).
In BCO there is currently a mixed "IO" domain for input/output files and a seperate parametric_domain that has only inputs of type "string", so no room for other types of inputs.
This means that auto-generating a BCO from the execution of a CWL workflow will be difficult, and potentially impossible. It is likely that other workflow models will have a similar problem.

Suggestions on how to address this?
Is there an example we can use that does fit the current BCO model?

My thoughts: The binning of these values is for conceptual understanding of how a pipeline was implemented (communication purposes), not explicitly to RUN the pipeline. A CWL workflow would be PART of the BCO and as such would still contain all the info represented by the CWL object in the CWL model.
I would like to try two possible examples if some one can point me to them:

CWL object that fits the BCO model very well and
CWL object that does not


[HTTPClient] More flexibility with the default headers

I'm trying use the HTTPClient to connect to a server that requires me to sign the requests (including the headers).
Since HTTPClient adds some default headers when it makes the request, I can't access them to include them into the signature.
It'd be great to expose them in some way.
Thanks!

@0xpablo

@0xpablo hmm. you need to sign all headers?

@paulofaria

I'm afraid so :(
Look at the AWS documentation: http://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html
Add the canonical headers, followed by a newline character. The canonical headers consist of a list of all the HTTP headers that you are including with the signed request.

@0xpablo

@0xpablo I think you can sign all headers using a middleware. Something like this.
struct SignMiddleware : Middleware {
    func respond(to request: Request, chainingTo next: Responder) throws -> Response {
        var request = request
        // sign the headers using request.headers
        return try next.respond(to: request)
    }
}

let client = try Client(url: "api.com")
let sign = SignMiddleware()

let request = try Request(...)
let response = try client.request(request, middleware: [sign])

Are you working on an AWS client? That's on our roadmap. 😊

Thanks for the suggestion! I completely ignored the Middleware API 😅, I will try it out.
About the AWS client, I'm trying to use some actions of the SNS service, so I'm not planning to write a full client. Still, hit me up if I can be of any help when you start with the client.


chore: pin exit-hook

Maybe I'll try to figure out later why this broke the tests

Related: https://github.com/nolanlawson/fuite/pull/65


Idea blitz: 500 days of flooding pipeline

Running scmake() results in two files: site_locations_map.png to show which sites are being used in the streamgraph and streamgraph.html which is the streamgraph itself. @collnell mentioned that they were unsuccessful with the streamgraph package on their version of R. I am on 3.6.1 and was able to use it without any issues.
Here are potential areas for improvement:

Work with Robert Mason to understand the 545 days ... I only get 534 even with counting all days with P Ice.
Selection of streamgages. Currently just picked any that were within 25% of the main site's drainage area.
Figure out how to feature the other site with > 500 days. Currently only set up to feature the one, but there were two sites with > 500 days. Featuring them both on the same streamgraph would drastically change the look. Could do two separate ones that feature reference gages similar to the one featured.
There are other occasions where I noticed some of the reference gages had Flow even though they didn't have GH as well as GH but no Flow. Currently, only using GH for the reference gages, but perhaps we need to be a bit more sophisticated?

It is more squished than the test one I made yesterday. I want to investigate why it is different at some point.

1 & 2 were not necessary - the approach was confirmed by Robert. 3 & 4 could be something to look at in the future but were not tackled before releasing the final product. The final version was polished as an SVG using Inkscape.


Fixing session cannot be create

When killing a connection with the rtmp server or when turning off the computer while doing a transmission, if you try to transmit again after turning on the computer or going back to the internet, the server does not accept because it informs you that a connection already exists.
This pull request fixed that.

This is a good improvement.
However, please pay attention to the following issues.

Do not use the dev branch to do this, it is obsolete.
This will cause multiple streams with the same name to send data at the same time.
Conditional judgment should be added before this operation, such as same ip, same parameters, passing security authentication, etc.