[Bug]: Requests And Limits set in the Custom Serving Runtimes template get ignored

ODH Component
Model Serving
Current Behavior
Custom Serving Runtime can have Limits And Requests set, but these are ignored when creating a model server. User is requested to select the model server size out of the default sizes (small, medium, etc) or inserting custom values.
Moreover, the default Serving Runtimes have Requests and Limits set to 0 which can me confusing
Expected Behavior
If the Custom Serving Runtime has requests and limits set, these should be reported in the Model Server creation modal when the runtime is chosen.
Steps To Reproduce

Create a Custom Serving Runtime from Dashboard > Settings > Serving Runtime
Create a DS Project
Start creation of a model server
Select the Serving Runtime created at step 1)

Workaround (if any)
No response
What browsers are you seeing the problem on? (If applicable)
No response
Open Data Hub Version
No response
Anything else
No response

I'm gonna update my thoughts here cause i couldn't attend the UX meeting.
I would say that the resources selected in the Model Server modal will always override the ones in the Custom Serving Runtime spec, at the end of the day the Custom Serving Runtimes are only blueprints.
I would agree that we might wanna have some sort of logic to adapt to our UI, so if a user select a Custom Serving Runtime in the Model Server modal, we automatically select the resources/limits in the spec but then the user can freely use those or override them.
What do you think @vconzola ?

@lucferbux I guess my question is, "Is that how we want it to work?" Is this an architecture question that @jwforres should weigh in on? Also, if the serving runtimes are truly templates, should the user even be able to edit them, or should they be view only? And how does all this fit in with what Chris Chase has been talking about forever with the "curly braces" - I still don't understand what that means? Users should not have parts of the serving runtime that they can change and the changes stick, while other parts that they change can be overridden by UI settings. That would be too confusing.

@vconzola Well let us be clear here... Custom Serving Runtimes are just the template that starts the ServingRuntime (aka the server) in the Project. This has not ever been 1:1 and cannot be 1:1 today as there is no customization of the ServingRuntime at that level.
The curly brace conversation Chris (and I) was having is for us to embrace the OpenShift Templates we are using to supply a configurable nature to the create server modal. Essentially for us to allow the admin to "ask specific questions" of the user in the Project view when they host a server. Instead of it always being "give us server size", "give us accelerator".
Today, until we support proper parameterization of the Custom Serving Runtimes (which we avoided in our first pass), the templates are nothing more than "starting points" for the Project view -- which the best we can do is "prefill" the modal with some information.
If we support the Templates fully and give them param usage (which will also give them the ability to deploy multiple resources along with the Serving Runtime) the admin can say "no, you cannot specify the resource limits", or maybe just "requests". The admin will be able to say "you can supply me with x, y, and z, the rest is static". So once we enable parameters the admin can lock out the user from specifying anything they don't want. We're just going to read and react. This is somewhat an over simplification, as I imagine there are some special use-cases to this, but effectively that's how it will work.
So the question isn't "should we do that" it's a question of "when are we supporting it" and if we will wait for the full adoption of the Templates before we do that.
The real UX question here is "Do we do this at all now or do we wait for templates to be properly supported with params".

This has not ever been 1:1 and cannot be 1:1 today as there is no customization of the ServingRuntime at that level.
@andrewballantyne I don't understand what you mean here.

The real UX question here is "Do we do this at all now or do we wait for templates to be properly supported with params".
I don't think this is a UX question - I think it's a BU question. I think we all agree params is our ultimate destination. But what's the priority and how long can the product wait for them? In the meantime, if we're going to allow end user input to override admin settings for resource requests and limits (also replicas and GPUs?) should we at least inform the admins this is possible?

I think there are assumptions being made here about what the Custom Serving Runtimes were supposed to cover.
Perhaps we should talk less about what it "is" and talk more about "what we thought it was" or "what we want it to be". Because development always thought of these as "starting points" not "overriding things the user can do" -- leaving that to be "params will control what can and what cannot change". We have a YAML editor, with almost no guidance on what it means to build a Custom ServingRuntime. On face value, it's "set this thing up" and then "go find out what it does in the Project layer".

This has not ever been 1:1 and cannot be 1:1 today as there is no customization of the ServingRuntime at that level.
@andrewballantyne I don't understand what you mean here.

I mean that we never prescribed the flow. It was always (as I saw it) a "starting point" and at Project usage time we put in the values for the container and any other items we needed. There was never a thought of "well if admin sets up the containers we should respect them" -- because we always believed the wide lockdown and choices would be covered by params.

From a UX standpoint, this seems like a bug

This is where my messages are coming from -- this is not a bug as the flow is very open ended and we have had no guidance to setup this flow in any other way than we have done so (the "start something on the admin side" and "finish it on the project side" design).
If we want to change the flow -- we can. But parameterization also solves this more specifically and gives the admin the power to choose what is configurable and what isn't -- resources/container values as well as any part of their ServingRuntime spec.
If I had to make a call today, I'd close this issue as won't do and wait for proper parameterization. Since no matter how we solve this, the question of "what do we support" will always be put into question. Parameters solve this by saying "you configure what you configure" by the specification of the params not by some hidden set of requirements.
Maybe we need to discuss this more in a meeting before we do anything.

Migrated to:  https://issues.redhat.com/browse/RHOAIENG-1160


Replace link to Manjaro forums

Distro flaming aside, Manjaro forums are down right now. Given their unreliability in general we should update the link to a different source.
https://github.com/R2Northstar/NorthstarWiki/blob/3ddce3b5dae04d7f9a6dd2a55efcd3f56178e500/docs/steamdeck-and-linux/linux-troubleshooting.md?plain=1#L42

Related: #250

cc @cyrv6737


Optimizer: eliminate nested union/concat

Is your feature request related to a problem? Please describe.
If a plan contains nested unions/concats, we can instead flatten those to a single operation
Example:
df.concat(df.concat(df.concat(df)).explain(True)

which ends up looking like this.
flowchart TD
    A[concat] --> B[3]
    A --> C[concat]
    C --> D[2]
    C --> E[1]

But a more efficient representation would be
flowchart TD
    A[concat] --> B[3]
    A --> D[2]
    A --> E[1]

Describe the solution you'd like
Inefficient queries such as the above are automatically optimized using the logic stated
Describe alternatives you've considered
None
Additional context
polars - https://github.com/pola-rs/polars/issues/7855
datafusion - https://github.com/apache/datafusion/issues/7481

Good call out! One thing that might be a bit messy is that we haven't built any support for any n-ary ops quite yet. So n-way concat will be the first


Rust test runner adjustments

Can we treat is a tracking branch for the whole milestone and not merge it?

Can this be merged to nightly without merging the corresponding protostar PR?

Yes


Directory structure

Hi!
Me again, sorry 😏 I've reading the doc again and again but still confused on what is the best practice to structure my project. For now I have an api folder with every models represented by a folder, containing the Model file, the routes etc... But as you register the models in the server file, how can I do it in each model.js file that I have?
I'm not sure I'm making myself clear, maybe a pic will help more:

Thanks a lot, again :)

Hey!  So, there are a few ways to fix your issue, especially with schwifty v4.
First, you may always register models within a plugin by calling server.schwifty(models).  You can combine that with a tool like require-dir to automate your issue away pretty nicely.
In all versions of schwifty you may also pass a file to the models plugin option, and any models exported by that single file will automatically be registered with the server.  Now it schwifty v4 it also correctly attributes those models to the plugin that registered schwifty.  Remember, you can register schwifty as many times as you would like (i.e. in every plugin that uses it)!
Finally, and this is the method I use, there's haute-couture, which allows you to build hapi plugins simply by placing files in directories.  It supports schwifty by registering models found in the models/ directory.  You can also configure haute-couture to use a different directory name, ignore other directories that it recognizes, etc.  And it plays well with the CLI tool hpal, which can generate basic model files for you automatically (e.g. hpal make model User).


LimeTabularExplainer for 3D Input

I am working on a regression problem with LSTM (TensorFlow 2.0).
As we all know, the input shape of LSTM is 3D which composed of (#samples * #timestep * #features).
When I try to use my training data (3D input shape) on the training_data parameter of LimeTabularExplainer, I got an error::
IndexError: boolean index did not match indexed array along dimension 1; dimension is 1 but corresponding boolean dimension is 13

Note that, 13 is the number of features.
My question is, how to use LimeTabularExplainer when the shape of both my training data and test data is 3D?

Check this out

Thanks! Apologies that I missed it in the documentation.


Add York College & University Centre

Long-term course: https://www.yorkcollege.ac.uk/study/computer-science-as-a-level

@connordennison First stage of verification passed, official domain is yorkcollege.ac.uk as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@connordennison Thank you for your patience while waiting for a review and processing your request. Pull request merged.


Add script for detecting bad characters.

This is script that find control-code(0x00-0x1f) in text files.
I could find them in several files. Please look at PR #26965, #27173, #27171.

Could you add how to use this script to the README?
https://github.com/kubernetes/website/blob/master/scripts/README.md

We could run this as a CI test, in fact.

@sftim That is a nice idea.
Do you know how to enable some script on CI test of this website repo?
On kubernetes/kubernetes repo, hack/verify-***.sh files are distinguished as CI testing scripts and these scripts are automatically operated. But I could not find such way on this repo.
/cc @oomichi

@s-ito-ts
I updated README.md.
Could you please review?

Could you add how to use this script to the README?
https://github.com/kubernetes/website/blob/master/scripts/README.md

some comments to make the code more readable.

@oomichi
I fixed them according to your review comment.
Could you please review my fixes?

Thanks for updating.
Most part seems good for me, just one comment.

@oomichi
Thanks for your comment.
I fixed it.
Could you please review my fixes?

/assign @steveperry-53
Could you please review?
If this is OK, please approve.


Unable to. build app in iOS

Hi, while trying to build the app in iOS, I am getting the following error, the example builds successfully.
I am not accustomed to native iOS development so any help or advice will be appreciated.
/node_modules/react-native-ttlock/ios/Ttlock.m:204:61: Incompatible block pointer types sending 'void (^)(TTLockSwitchState)' to parameter of type 'TTGetLockStatusSuccessBlock' (aka 'void (^)(TTLockSwitchState, TTDoorSensorState)')
I have tried deleting node_modules and Podfiles
and reinstalling them. Still, the error persists. I need it working urgently.
Thank you

Do i have to add some flags to the compiler ?

I am also having this problem

Open file 'yourProject/node_modules/react-native-ttlock/react-native-ttlock.podspe'
Edit 's.dependency 'TTLock', '~> 3.1.0'' to 's.dependency 'TTLock', '3.1.0''
cd 'yourProject/ios/Pods' remove 'Podfile.lock'
pod install

Open file 'yourProject/node_modules/react-native-ttlock/react-native-ttlock.podspe'
Edit 's.dependency 'TTLock', '~> 3.1.0'' to 's.dependency 'TTLock', '3.1.0''
cd 'yourProject/ios/Pods' remove 'Podfile.lock'
pod install


If method name is __construct, set symbol kind to constructor

Don't forget old style constructors if class is not in a namespcae.

__destruct should probably get the same SymbolKind as __construct


Better reloadData()

Hi. I'm having an issue with reloadData() because it's resetting the scrollview back to the first indexPath. What i'm expecting for reloadData() is the same with tableView/collectionView that it will stay at the current indexPath and just reload the other visible cells. Is this possible? TIA

Hi @rad182
optional func indexPathOfStartingInPagingView(pagingView: PagingView.PagingView) -> NSIndexPath?

https://github.com/KyoheiG3/PagingView#pagingviewdatasource-function
This function will be called, after reload. Please return the NSIndexPath before reload if needed.

that worked! thanks @KyoheiG3 . But shouldn't be the framework will handle the starting/current index path?

It was done so. However, i have been changed by this issue.
When numberOfItems has been changed, can’t help it.

ah okay. thanks @KyoheiG3 ! awesome framework

Tanks @rad182


Doesn't add new item in adapter

Doesn't add new item in adapter when using UIUtils.setBackground in model for multiselect on longClick
        int color_int = UIUtils.getThemeColorFromAttrOrRes(ctx, R.attr.material_drawer_selected, R.color.material_drawer_selected);
        Drawable d = FastAdapterUIUtils.getSelectableBackground(ctx, color_int, true);
        UIUtils.setBackground(viewHolder.itemView, d);

but when I remove it everything works fine

Oh my bad it dosn't work with android.support.v7.widget.CardView layout

@Demuss you found the issue?

Yeah I found. It doesn't work with CardView layout so I added child(LinearLayout) for CardView
before
        int color_int = UIUtils.getThemeColorFromAttrOrRes(ctx, R.attr.material_drawer_selected, R.color.material_drawer_selected);
        Drawable d = FastAdapterUIUtils.getSelectableBackground(ctx, color_int, true);
        UIUtils.setBackground(viewHolder.cardView, d);

after
        int color_int = UIUtils.getThemeColorFromAttrOrRes(ctx, R.attr.material_drawer_selected, R.color.material_drawer_selected);
        Drawable d = FastAdapterUIUtils.getSelectableBackground(ctx, color_int, true);
        UIUtils.setBackground(viewHolder.linearChildLayout, d);

and now it works fine

ah ok. great :D


fix: disable premium user check for now

we do not plan to integrate stripe integration now

Description
Please include a summary of the changes and the related issue. Please also include relevant motivation and context.
Checklist before requesting a review
Please delete options that are not relevant.

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my code
[ ] I have commented hard-to-understand areas
[ ] I have ideally added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged

Screenshots (if appropriate):

Fix for internal server error because we do not have stripe integration yet.


Use threaded http request handler take2

I confirm that this contribution is made under the terms of the license found in the root directory of this repository's source tree and that I have the authority necessary to make this contribution on behalf of its copyright owner.

FYI 7.518.27 is not available from Maven Central. We'll have to wait for next open-source release before merging.


Dump root parameters, insted of descriptor heap

Ex:
new
    "graphics_root_parameters": [
      {
        "root_parameter_index": 2,
        "root_signature_type": "D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE",
        "cmd_bind_type": "D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE",
        "tables": [
          {
            "range_type": "D3D12_DESCRIPTOR_RANGE_TYPE_CBV",
            "num_descriptors": 14,
            "descs": [
              {
                "buffer_location":<PHONE_NUMBER>2,
                "heap_id": 65,
                "heap_index": 719156,
                "res_id": 6230,
                "dimension": "D3D12_RESOURCE_DIMENSION_BUFFER",
                "subs": [
                  {
                    "index": 0,
                    "offset": 165376,
                    "size": 256,
                    "before_file": "shadowtombraider-no-dxr_dr_cbv_res_id_6230_sub_0_before.bin",
                    "after_file": "shadowtombraider-no-dxr_dr_cbv_res_id_6230_sub_0_after.bin"
                  }

old
    "descriptor_heap": {
      "heap_id_80": {
        "constant_buffer_views": [
          {
            "res_id": 6368,
            "sub": [
              {
                "index": 0,
                "offset": 508416,
                "size": 256,
                "before_file": "shadowtombraider-no-dxr_draw_3803_0_0_0_dr_cbv_res_id_6368_sub_0_before.bin",
                "after_file": "shadowtombraider-no-dxr_draw_3803_0_0_0_dr_cbv_res_id_6368_sub_0_after.bin"

Dump SetXXXRootDescriptorTable, SetXXXRootConstantBufferView, SetXXXRootShaderResourceView, SetXXXRootUnorderedAccessView, instead of descriptor heap. Root parameters are more straightforward since they are used by shaders.

Find RootParameters info in dx12_browse_consumer.h and Dx12DumpResources::CreateRootSignature, and then dump them.

Dump some infos about root parameters.  Although root_signature_type and cmd_bind_type are the same thing, but I saw some titles that they were different, so I chose to write both.  That's mistakes and should trigger validation log.  Added a function Dx12DumpResourcesDelegate::WriteNote to write some help info into .json, like some mistakes are found.

Added two flags in dx12_dump_resources.cpp: TEST_WRITE_NOT_FOUND_VIEWS,TEST_WRITE_NULL_RESOURCE_VIEWS.

The NumDescriptors in RootParameters could be large, but the index might not be found in cbv_srv_uav_infos of D3D12DescriptorHeapInfo. Set TEST_WRITE_NOT_FOUND_VIEWS: true to write the heap index info even if the index isn't found. Set false to skip it.
BufferLocation in CreateConstantBufferView or pResource in CreateShaderResourceView or CreateUnorderedAccessView could be 0. Set TEST_WRITE_NULL_RESOURCE_VIEWS: true to write the heap index info even if the value is 0. Set false to skip it.

CreateConstantBufferView, CreateShaderResourceView and CreateUnorderedAccessView could set the same DestDescriptor. The newer view setting could override it to get the DestDescriptor. The older view setting is quit. In this case, changed these struct infos into one struct info.

If the target drawcall is dispatch, dump compute root parameters. If it's not, dump graphics. But if it's ExecuteIndirect, dump both graphics and compute root parameters, since we don't know what it's inside.

CaptureGPUAddrMatchDescriptorHeap find the index of the heap for the address of root descriptor tables. Use the index to find the view in the map in the heap.

Not using MatchDescriptorCPUGPUHandle and "for loop" to find the view any more. MatchDescriptorCPUGPUHandle has a bug to find a wrong view.
RelayCPUAddrMatchDescriptorHeap find the index of the heap for the address of rtvs and dsv. Use the index to find the view in the map in the heap.

Skip dump vertices, index, rtv and dsv if the taget drawcall is dispatch.

CI gfxreconstruct build queued with queue ID 293105.

CI gfxreconstruct build # 5272 running.

CI gfxreconstruct build queued with queue ID 293145.

CI gfxreconstruct build # 5273 running.

CI gfxreconstruct build queued with queue ID 293168.

CI gfxreconstruct build # 5274 running.

CI gfxreconstruct build # 5274 passed.

CI gfxreconstruct build queued with queue ID 305224.

CI gfxreconstruct build # 5346 running.

CI gfxreconstruct build queued with queue ID 305241.

CI gfxreconstruct build # 5347 running.

CI gfxreconstruct build # 5347 passed.

CI gfxreconstruct build queued with queue ID 305353.

CI gfxreconstruct build # 5348 running.

CI gfxreconstruct build # 5348 passed.

CI gfxreconstruct build # 5349 running.

I added a small change. The given parameter in GetDescriptorSubresourceIndices changed D3D12_RESOURCE_DESC to DxObjectInfo.

CI gfxreconstruct build # 5349 passed.

CI gfxreconstruct build queued with queue ID 305973.

Added one commit to move writing info code to functions to make it simpler. It doesn't change output data.

CI gfxreconstruct build # 5351 running.

CI gfxreconstruct build # 5351 passed.


[Bug] Pop retry topic was not deleted when topic was removed

Before Creating the Bug Report

[X] I found a bug, not just asking a question, which should be created in GitHub Discussions.

[X] I have searched the GitHub Issues and GitHub Discussions  of this repository and believe that this is not a duplicate.

[X] I have confirmed that this bug belongs to the current repository, not other repositories of RocketMQ.

Runtime platform environment
Windows 10
RocketMQ version
branch: develop
JDK Version
JDK8
Describe the Bug
Messages retry in pop mode will create a pop retry topic for this topic and consumer combination.
When the original topic was removed, the pop retry topic of the original topic wasn't deleted.
Steps to Reproduce

create a topic
produce some messages on this topic
consume this topic using pop consumer, but not ack, wait for messages to revive
pop retry topic will be created
delete the original topic

What Did You Expect to See?
All pop retry topics of this topic will be deleted.
What Did You See Instead?
Pop retry topics aren't deleted.
Additional Context
No response

There is indeed a problem at present


VersionConstraint.branch and ModuleDependency.endorsing are not copied when a dependency is copied.

When copying a dependency via Dependency#copy, the endorsing field of AbstractModuleDependency and the branch field of DefaultMutableVersionConstraint are not copied. This means copy is incomplete and is thus not a true copy.

This can be resolved by reverting https://github.com/gradle/gradle/pull/23246/commits/ee87bfe30886b60b02d7c0bc72a474ebc937d1e2
We are avoiding this change in 7.6 for the sake of reducing unnecessary changes in a patch release, but want to include it in 8.1 for correctness.


[WIP] Make unittests compatible with pytest

Move unittest.TestCase inheritance to the actual test
classes.

Closes #111.

@vkarak I have tried with all the possible settings and I always get 387 tests with either pytest or nose.

@teojgo I've checked again the current status of this branch and the master and both run the same number of unit tests. So, it's fine from this point of view.

Moved to the next sprint; it needs a fix from the big PR for new style checks and the unit tests refactoring.


planner.py wrapper for SHADOW library

Create a wrapper class for SHADOW library interface with the simulator.
Currently, planner.py imports the SHADOW modules directly. We should wrap this up and create a standard class that must be inherited for 3rd-party libraries to be used in TOpSim. Then, when creating the planner, we only accept objects that are derived from this class.

Issue resolved by new Planning abstract base class.


Add FileAddress interface

Removes the current implementation of FileAddress in favor of a interface to make our framework more general.
In addition, an internal package for current implementation was added until we organize the code in a better way, with the address classes moved there.
Closes #24

Codecov Report

Merging #28 into master will increase coverage by 2.02%.
The diff coverage is 100%.

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 ad4fc1b...f5a1cda. Read the comment docs.


Always lay down pip.conf on RPCD plays

This fix ensures that a proper pip.conf is layed down
before installing RPC-O components.
This furthermore ensures that upon deploy/upgrade.sh script errors
manual continued playbook installation will install the right pip
packages based on the correct OSA version.
Closes-Bug: #1391

If you want to double-check your formatting, check the preview.

👎  Add these as dependencies on the role (in meta/main.yml - for example: https://github.com/rcbops/rpc-openstack/blob/master/rpcd/playbooks/roles/kibana/meta/main.yml#L30-L31 )
Additionally, the setup-logging.yml is unrequired, since kibana and elasticsearch already depend on pip_lock_down, and logstash has no pip packages.
The MaaS dependency is being changed here: https://github.com/rcbops/rpc-openstack/pull/1405
TL;DR just add the dependency to meta/main.yml for rpc_support and horizon_extension roles.

Closing in favor of other PR


Running into errors when trying to deploy to staging

I know almost nothing, so forgive me if this is the wrong way of going about this. I am following the instructions of deploying this to staging after cloning it to a local repo and authorizing the org and this error is showing up:
Component Failures [4]
| Type  Name                   Problem
| ───── ────────────────────── ────────────────────────────────────────────────────────────────────────────────────────────────
| Error Account.Test_Field_Set In field: NumberofLocations__c - no CustomField named Account.NumberofLocations__c found (16:26)
| Error customSlider           No TOKEN named force:base.spacingNone found
| Error Account.Test_Field_Set In field: NumberofLocations__c - no CustomField named Account.NumberofLocations__c found
| Error customSlider           No TOKEN named force:base.spacingNone found
Any ideas on how to proceed?

Hi @MWCalgae, thank you for pointing out these issues. There were indeed issues, which I have now resolved with the latest commits. The following has been fixed:

The FieldSet (Account.Test_Field_Set) included in the repo for the Custom Datatable LWC accidentally contained a Custom Field (NumberofLocations__c) that is not available by default in a normal Salesforce Org. I have therefore removed it.
The CSS file for the Custom Slider LWC used a no longer supported design token (spacingNone) which I therefore removed.

Please try again after you have pulled the latest changes and let me know if something still does not work with the deployment.


Investigate "0 items selected" message in VoiceOver

Currently in VoiceOver, the select will always read "0 items selected", even if aria-selected, aria-owns, aria-posinset, and aria-setsize are set. It appears to be this way in Material 1 as well.  Needs investigation / fixing.

+1
We really need this fixed as well. Trying to do a site for a major organization for disabled. This is a big problem for us.

We think this is also related to an issue we're seeing in aXe testing for md-select with child options.

possibly connected to https://github.com/angular/material2/issues/6382

Tracking via #11083


Pretty-print html() output by default

What problem does this feature solve?
My team is using @vue/test-utils for snapshot testing components but the snapshots are hard to parse because the HTML string output from .html() is not formatted in a readable way. If html() pretty-printed the HTML it would be a lot easier to review changes to the component-generated HTML.
What does the proposed API look like?
html() would pretty-print the returned HTML string by default, perhaps using something like https://github.com/prettydiff/prettydiff. If necessary, a user could bypass pretty-printing by passing an option to .html(), perhaps .html(false) or .html({ prettyPrint: false }).

For snapshot tests, I recommend using the DOM element:
expect(wrapper.element).toMatchSnapshot()

Thank you for your recommendation Edd. I'm sorry that I forgot to mention that I'm mounting/testing the components in Chrome with Puppeteer using page.evaluate so the return value (which then gets its snapshot taken) has to be serializable.

I think you can just use diffable-html in your tests

I needed this too in my test! @eddyerburgh if anyone isn't actively looking into this, I'm interested to work on this, but I guess we might have to agree on the API, whether it's .html(true | false) or .html({ prettyPrint: true | false }).

@briwa  @eddyerburgh  I have a tentative Pull Request for this feature. Are there any preferences on .html(bool) vs .html({ prettyPrint: bool })?

@addisonssense I'd vote for .html(pretty = false) but let's hear it from the majority.

I prefer html({ prettyPrint: true | false }) in case we add extra options in the future

I have created a PR to resolve this issue. I welcome feedback :)
https://github.com/vuejs/vue-test-utils/pull/1229

Thinking about it more, I think it should pretty print by default. Vue Test Utils is still in beta so we can make breaking changes now.

Please see: https://github.com/eddyerburgh/jest-serializer-vue/issues/13


Write requirements.txt file

Make possible for users to download all needed libraries in one simple call.

done


KV and workers.dev Route Errors

Hi,
I have set up and published my worker to Cloudflare but there seems to be one issue I am having and that is with the KV Namespace. Below is the exact code I put in my wrangler.toml file and the KV cache is enabled via the config.json file:
[env.prod]
name = "the name PowerShell gave when creating the KV namespace"
route = "https://www.examplesite.com/*"
vars = { MODE = "prod" }
kv_namespaces = [
         { binding = "KV", id = "my-id" }
]

I created it using the wrangler kv:namespace create "KV" command.
I did not place a preview_id because I wasn't sure how to get one so I left it out. I only have the env.prod code for KV in the wrangler.toml file.
When viewing the worker via the console I get this error:

I am not exactly sure as to why the KV would not be defined?
Also, the workers.dev route is active but leads to an Error 523 page. Seems there is a hosting error. I am thinking I turn that off and go straight through the additional route I added instead?
Thank you in advance for any help I receive!
Thanks and regards,
Tug

I also get the same error even though I did everything as described:

With the Official AMP Plugin installed and Reader Mode selected to choose a theme that's AMP compatible, the worker will automatically find the ?amp=1 suffix since we cannot use query strings for the routes, correct? I am wondering if that has anything to do with anything?

@TugT4G: the KV not bound error is more than likely because you are only creating the KV binding for the prod environment. You have to ensure KV is bound for every environment.

@samouri thank you for that information. I am just confused about how you got the same KV binding for each environment?

Do I have to create an environment along with a variable through a Wrangler command or just specify the environment and give it the prod, dev, and beta variable in the wrangler.toml file, then, when it's published, it will submit that information automatically?
Whenever I create a KV Namespace it automatically puts the name I created as the binding. Would I just change each namespace's binding to KV and it will be okay? For example, if I create a namespace, "dev", for the dev environment:
[env.dev] name = "t4g-amp-**dev**" vars = { MODE = "dev" } kv_namespaces = [       { binding = "dev", id = "MY_ID" }, ] - they keep the worker name and append the namespace name I created to the worker name then add that same name I created as the binding.

In that working example there is this code:
[env.prod] name="optimizer-demo" vars = { MODE = "prod" } kv_namespaces = [  { binding = "KV", id = "4d45ebfb84fd498dbf024c6512e7dfc8", preview_id="86b8fd11b0b64de786d76b0ed82bd40b"}, ]
The other two example names are "optimizer-demo-dev" and "optimizer-demo-beta" but the prod is just "optimizer-demo" instead of "optimizer-demo-prod". I assume the dev and beta via "optimizer-demo-dev" and "optimizer-demo-beta" are the created namespace? So in the prod namespace created you shouldn't add prod?
Maybe I am overthinking it a bit.
The answer I am thinking of is creating three namespaces and name one "dev", another "beta", and the last "prod". Then I would copy and paste the "kv_namespaces =[{...},]" code wrangler gives and change the binding from the KV Namespace name to KV. Then I would place each given kv_namespace code underneath each env code. Then I'll publish it with wrangler publish.
Is that the correct way to do it?

From what I can tell, the primary impact of name is the workers_dev URL that gets assigned when you publish. So if you want each environment to be published to a different workers_dev URL, then you should give each a unique name. Any system you come up with for creating names is valid.
Regarding KV Namespaces, I've never actually ran the wrangler CLI command for creating one and always populated it by hand. From what you've shown me, yes, the default binding will not work in that case. "binding" always needs to be KV to work with this repo.

Okay, I believe I set up everything correctly, however, the errors are still there so I am a bit dubious. I just want to make sure I did not set it up incorrectly so if there are any errors they can be sniffed out.
I changed the bindings from the name of the namespace created to KV. Here is my wrangler.toml file:

I set up the preview ID for each namespace with the wrangler kv:namespace create "prod" --preview command, which is the same if I did it by hand via the Cloudflare Dashboard>Workers>Manage Workers>KV and put prod_preview for the namespace as shown in the photo below:

Here is my config.json file:

I did not add anything to the Environment Variables or the KV Namespace Bindings as it is recommended to be placed in the wrangler.toml file if using wrangler, but everything I have listed so far in the wrangler file should cover it when it's published.

The worker data recorded shows significant errors that keep increasing; not sure exactly what that could be about:

Thank you for the help you have given!

I also want to mention that I just started from scratch. I deleted that worker and started a new worker following the given instructions using the npx @cloudflare/wrangler generate my-worker https://github.com/ampproject/cloudflare-amp-optimizer command. I did not change the "my-worker" name.
I published it using the npm run prod # calls wrangler publish --env=prod command given here.
The results are still the same in regards to the errors and KV is not defined. I do get a 200 OK though.
When I published it, PowerShell said there are 3 moderate severity vulnerabilities and 10 packages are looking for funding.
I ran the npm audit command and I took a screenshot and copied the results of the finished audit. I can fix it by running the command npm audit fix --force so I did and the results of the errors and KV is not defined never changed. If you would like me to post the screenshot or paste in what I have copied then let me know; I am just not sure if there is sensitive information or not.
I hope the information I have given is of help!

Tug,

You should be able to run wrangler tail to see the actual errors.
Do you have a public repo you can point me to? Being able to reproduce the errors on my end would significantly help with debugging.

The results are still the same in regards to the errors and KV is not defined. I do get a 200 OK though.

I followed the instructions as well, but on my end all the KVs worked. In the instructions it says to

specify the bindings within the wrangler.toml file. The binding must be named KV.

It is relatively vague, as instructions on configuring KV stores are much better on the actual CloudFlare Docs. I'll add a link in the README.md to the cloudflare docs and point out this specific pitfall (needing to specify the bindings in each environment)

Thank you for bringing the npm audit to my attention.
I'll fix that asap by updating the necessary dependencies!

Awesome, I will do that.
Here is my public repo - https://github.com/TugT4G/t4g-amp-worker

I followed the instructions as well, but I overlooked a command via Wrangler CLI Commands - wrangler kv:namespace create "KV" --env=prod.
I was able to create each namespace under KV for each environment. Then I added the --preview command to each command - wrangler kv:namespace create "KV" --env=prod --preview.
The instructions PowerShell gave afterward me was:
Add the following to your configuration file under [env.prod]:
kv_namespaces = [
         { binding = "KV", preview_id = "MY_ID" }
]

Add the following to your configuration file under [env.prod]:
kv_namespaces = [
         { binding = "KV", id = "MY_ID" }
]

After doing so, I published the new worker with npm run prod # calls wrangler publish --env=prod .
However, I am still getting those KV not defined errors as well as the other errors I provided images for.
Here is my public repo of this project - https://github.com/TugT4G/t4g-workers
Thank you for your help and let me know if there is anything else you need that I left out.

@samouri did you want me to add the worker, src, node_modules, and dist folders to my repo as well?

Not sure if it matters at all but I am using nvm for Windows and I am using node v1.1.7, nvm v14.17.1, npm v6.14.13 (npm version came with the nvm version), and wrangler version 1.17.0.
In regards to the KV Namespace, I only ran the command wrangler kv:namespace create "KV" --env=prod, wrangler kv:namespace create "KV" --env=beta, and wrangler kv:namespace create "KV" --env=dev along with --preview added to each one of those a separate three times to get the ID and preview ID.
So I created the worker with the command listed in this repo, modified the config.json file directly with no commands used as well as the wrangler.toml file with no commands besides that kv:namespace command then I published it with the same command this repo suggests.
Maybe there are things I didn't do and that is why my worker is feeling a bit ill? I hope this extra information helps!

Update: I published a Cloudflare AMP Optimizer worker with the KV Cache set to false and removed the environments and KV Namespaces in the wrangler.toml file and there have been 0 errors, 1.15k success, and over 2k requests. Not sure if that helps in any way?

@samouri This is going to sound crazy but that worker I mentioned above completely logs me out of my wp-admin pages. I can't even log in; it just keeps refreshing the login page. I deactivate the route of the worker and I can log in again. I ran the test over and over again and it is indeed that worker. Should I open it up in a separate issue?

Here is my public repo - https://github.com/TugT4G/t4g-amp-worker

That repo doesn't seem to still exist.

Here is my public repo of this project - https://github.com/TugT4G/another-test-worker

I cloned another-test-worker and changed the values within wrangler.toml to my own ACCOUNT_ID, ZONE_ID, and KV IDs. It all worked as expected. Were you seeing problems with that repo?

Another Update: This is going to sound crazy but that worker I mentioned above completely logs me out of my wp-admin pages. I can't even log in; it just keeps refreshing the login page. I deactivate the route of the worker and I can log in again. I ran the test over and over again and it is indeed that worker. Should I open it up in a separate issue?

That does sound...crazy. I have no idea how the two things could be related!

Another Another Update: I read over the Introducing environments docs and it states, "Note that you must provide a route/routes key for each environment if you are deploying to a custom domain." I am deploying the worker to our custom domain, so I added the route as shown in my recent repository.

I didn't know you needed to repeat the route for each configuration but it does make sense. In your linked repo you give the exact same value for each environment. I don't think that can work. You should either only have a single environment, or have a different route for each env.

I ran the npm audit and fixed the two vulnerabilities with the commands given, then it stated that 10 packages need funding - showed only 8. Unfortunately, I am not sure how to fund the packages

You aren't required to "fund" any packages to use them. Feel free to ignore this message.

Thank you for your help and for getting back to me! You are much appreciated.
Sorry about listing a 404 repo.

I cloned another-test-worker and changed the values within wrangler.toml to my own ACCOUNT_ID, ZONE_ID, and KV IDs. It all worked as expected. Were you seeing problems with that repo?

Yes, I was. The KV is not defined, Client Disconnected, and Script Threw Exception it said.

That does sound...crazy. I have no idea how the two things could be related!

It did something WordPress's REST API. Every time I activated the worker, our plugins, such as Google Site Kit, would no longer work and stated there is an error in WP REST API. The WordPress Site Health tool also stated an error in the REST API. A few seconds after deactivation, the error would go away. I did this process two more times to confirm. Strange indeed.

I didn't know you needed to repeat the route for each configuration but it does make sense. In your linked repo you give the exact same value for each environment. I don't think that can work. You should either only have a single environment, or have a different route for each env.

Good to know. I went ahead and just used the prod environment pointing to our site and left out the other two environments and the issue of the KV is not defined, Client Disconnected, and Script Threw Exception is still there. So I added the other two environments back pointing to different URLs of our site and the issue did not go away, unfortunately.
Not sure what to do from here since everything is working on your end just fine and we have done the same steps. Are there any other requirements needed for Cloudfare that I may be missing?
We have paid for Workers Unbound and we do have Cloudflare. However, since our domain is a “Partial” or CNAME setup via a hosting partner, I wonder if that could be causing the issue with KV not defined, Client Disconnected, and Script Threw Exception? Could that be causing the issue? Would we need to set up our domain through Cloudflare and configure the DNS ourselves? Some requests are successful, though, so I don't know how much more that would help.

Here is that error message I am getting when the "Additional route" points to our site:
{"code":"rest_cookie_invalid_nonce","message":"Cookie nonce is invalid","data":{"status":403}}.
I found some interesting information in regards to something similar - https://stackoverflow.com/questions/46222009/wp-api-retrieving-drafts-cookie-nonce-is-invalid.
When I change the route to something like https://www.my-site.com/groups/* then I can access my /wp-admin/* pages again. Just thought this information could be useful!

@samouri not sure if you are still looking into this issue or not but I have ran some more tests and have done researched on the {"code":"rest_cookie_invalid_nonce","message":"Cookie nonce is invalid","data":{"status":403}} and Invalid Nonce! errors when attempting to log in. I read about it here - What is: Nonce - as well as the WordPress documents and it seems the worker may be interfering with the key somehow.
I do want to note that we have made the switch to Cloudflare Pro and updated all of the DNS settings. Everything is configured and performing properly.
Things I have Done:

I have deactivated all of my plugins
Cleared my browser's and site's cache and my browser's cookies
Prevented WP Rocket and Cloudflare from caching /wp-json/, /wp-login.php, /wp-admin/*, and /register/.
Set the Browser Cache TTL and Edge Cache TTL to 4 hours
Changed themes to the default WordPress theme
Removed my .htaccess file
Finally, I disabled REST API and restricted it to authenticated users only

Nothing has made any difference, unfortunately.
My Questions:

How do I fix the {"code":"rest_cookie_invalid_nonce","message":"Cookie nonce is invalid","data":{"status":403}} errors?
Is that error on my end or the worker's end since the additional route is our domain, which covers everything?
Is there a way to restrict the worker from messing around with the WP REST API? Or why is it affecting that and how do I stop it so we can finally use the Cloudflare AMP Optimizer worker?
Is the worker compatible with WordPress?
Is there a conflict between the caching or optimization settings in Cloudflare and the worker?

The problem seems to lie with the worker interfering with WP REST API since I am using our home domain for the Additional route.
This is what I have done when publishing my worker:
METHOD 1:
We followed all of the instructions listed in this repo. I used the command, npx @cloudflare/wrangler generate my-worker https://github.com/ampproject/cloudflare-amp-optimizer  to create the worker using this repo as a reference. I enabled the KV Cache via the config.json file and created the environments and KV bindings as instructed with the command wrangler kv:namespace create "KV" --env=prod and wrangler kv:namespace create "KV" --env=prod --preview. This same process was done with the beta and dev environments. After the wrangler.toml and config.json files were configured per the instructions, I used the command npm run prod # calls wrangler publish --env=prod. You can see my example repo here - https://github.com/TugT4G/t4g-new-worker-amp-prod.
The weird thing is, that wrangler publish command I listed above, npm run prod # calls wrangler publish --env=prod, to publish my project doesn't seem to publish the prod environment at all as I cannot see any added Environment Variables or KV Namespace Bindings via Settings of the worker.
On top of that:

There are thousands of "Client Disconnected" and "Script Threw Exception" errors with very few Success requests.
Also, I see a KV is not defined error in the console.
The route I added gets added to the worker's "Additional routes" as expected. However, this prevents me from being able to access any of my /wp-admin/* pages, therefore, admins nor anyone else can log in to our site and everyone gets logged out. It simply redirects everyone back to the login page and when attempting to log in I receive an Invalid nonce! error message.
If I use my host or WPMUDEV to log into our admin account to WordPress, I receive this error: {"code":"rest_cookie_invalid_nonce","message":"Cookie nonce is invalid","data":{"status":403}}. I looked that up and it seems to possibly be a cache issue or a conflict with the WP REST API Key. This is a security measure by WordPress.
I also published the worker then add the Environment Variables and KV Namespace Bindings manually and the errors are gone but the {"code":"rest_cookie_invalid_nonce","message":"Cookie nonce is invalid","data":{"status":403}} error is still there.

METHOD 2:
When I use the command wrangler publish --env=prod instead of npm run prod # calls wrangler publish --env=prod, however, it tells me, of course, I need a route to publish that environment, so I add the route and it publishes that environment along with the "Environment Variables" and "KV Namespace Bindings". I can now see the "Environment Variables" and "KV Namespace Bindings" in the "Settings" of the worker without having to add them manually.
However, my "Additional route" that is added to the worker still prevents all users from logging in and logs out all users. When this project is published, there are no KV is not defined errors or "Client Disconnected" and "Script Threw Exception" errors. It's all successful requests. I cannot keep the additional route enabled. The workers.dev route is null so that is kept deactivated.

@TugT4G: thank you for all of the information!  It does sound like we probably have a bug related to clobbering headers or query params that you are running into when accessing the wp-admin. I'll investigate and get back to you.
You've also identified another bug!
The npm run prod is missing the --env flag.
The KV Binding error is a standard CF Worker error signifying that the env you are publishing has incorrect configuration. I'm guessing this was related to the missing --env=prod in the npm run prod command.

Is the worker compatible with WordPress?

I thought so, but based on your findings it is likely we have a bug or two lurking. I'll create a WP site to test it out on.

@samouri Thank you for that! Glad to see I wasn't losing my mind lol.
I have a little more details on that cookie issue as well as something new I think may be beneficial for you to look into when you create your WordPress test site (AMP validation issue I ran into). There are also a few more things I would like to give some feedback on that you are probably well aware of but it could be further clarified in the readme:

I set the routes, /wp-admin/*, /wp-admin/, /wp-json/*,  /wp-json/, /wp-includes/, /wp-includes/*, /wp-content/, /wp-content/*, /wp-login.php*, and /wp-register/ to none so the worker would bypass them. When I did that, the cookie error was gone. Anyone could log in. However, no one would know they’re logged in because the frontend looks as if you’re still logged out, i.e. you still see login and register with no profile links. This also pertains to admins; admins would no longer see the admin bar either in the front end (non /wp-admin/ pages). In order to get to the admin pages, you need to fill in /wp-admin in the URL.
Wrangler will not publish the worker unless a route has been specified or the workers_dev = true. As it states in the Environment docs, "Wrangler will fail to publish to an environment where route is defined alongside workers_dev = true". I don't think the workers.dev should be activated, not for our setup at least. Maybe touch on this in the readme?
There are AMP validation issues. When I had the worker activated to try and figure out the bugs, some of our AMP pages are no longer served by Google for mobile devices now. So I tested the AMP pages while the worker was activated and received these issues: .
I ran the `wrangler tail --format="json"' command to see the logs. I did not notice any errors but I also am inexperienced at this whole thing. I did notice a canceled message for one but everything looked fine.
The keys for the KV Namespace used when the worker has activated store the amp URL and Values fine. The AMP HTML all resides in the Values, which is how it is supposed to be I assume.
I feel like the worker may be somehow blocking some key functionalities of WordPress/themes and prevents our site from outputting needed information to the browser?

The KV Binding error is a standard CF Worker error signifying that the env you are publishing has incorrect configuration. I'm guessing this was related to the missing --env=prod in the npm run prod command.

Yep, when I manually added the Environment Variables and KV Namespace Bindings the KV is not defined error disappeared. When I published the worker with wrangler publish --env=prod, the name of the worker not only changed to the prod but it worked right out of the gate with no issues/errors via the console and metrics.
Other than that I have nothing further to report. Thank you for your help and for investigating this further!

I also just received some feedback from other developers in regards to the worker. They created a WordPress test site and configured the worker to their site. They also received that {"code":"rest_cookie_invalid_nonce","message":"Cookie nonce is invalid","data":{"status":403}} error.
They stated:

[...] suggests you excluding SSO endpoints from the worker. [...] While this is the full request (GET) from the HUB to open Access to your site via SSO, this should be the API endpoint: {"code":"rest_missing_callback_param","message":"Missing parameter(s): domain, hmac, token, pre_sso_state, email","data":{"status":400,"params":["domain","hmac","token","pre_sso_state","email"]}}

Hope that helps! If you need anything else just let me know. I would love to utilize this worker and help out in any way I can.

@samouri I am sure you are on it and well aware but if I could be of any help there are WordPress cookies that the worker is probably caching that shouldn't be cached? For example, when I enable Cloudflare's cache everything and choose respect headers for the caching mechanism, it will also need some page rules that only business+ members get as explained here - https://support.cloudflare.com/hc/en-us/articles/236166048-Caching-Static-HTML-with-WordPress-WooCommerce.
This comment might be long overdue but I am assuming that it also involves cookies that the worker needs to bypass?
Not sure what you are finding out but I hope this helps!

Hey samouri,
What is the status of this repo?
Best regards,
Tug


Integrate Sigin and Signup functionalities of frontend and backend.

Would like to integrate backend and frontend with help of axios.
I would like to work on this issue.

Thank you for expressing interest in working on the integration of our backend and frontend using Axios. We appreciate your willingness to contribute to our web app
Contribution Guidelines
Please make sure to follow our contribution guidelines, which include:
-Writing clean, modular, and well-documented code.
-Following our code style and linting rules.
-Testing your code thoroughly before submitting a pull request.
Next Steps
Let us know if you have any questions or need further information to get started. We are excited to have you on board and look forward to your contributions.
Add you Details once done with contributing in Contrubuting/Readme.md

I would like to do this with help of contexts and update the states in the navigation as well. I want to know where should i navigate the user after successfull login?

After Login the user gets redirected to /dashboard and also further features of dashboard login is essential

Hi @MOHAMMED-IQRAMUL I have linked the pull request regarding this issue. Please verify it.


Add unit tests for MVP Functionality

Should add unit testing for all basic functionality, including parsing, interpreting, and operator precedence.

This is still in progress. Not going to finish all possible unit tests. There is way to much to test, so I'll add them as I go.


K8s cluster configuration assessment proposal

@mdelder this is related to the Operator that assessment the Cluster configuration based on a policy (custom resource).
The implementation is shown here: https://github.ibm.com/akanso/k8s-namespace-assessment/
/assign @mdelder

Proposal is shown here:
https://github.com/akanso/enhancements/blob/configuration-assessment/k8s-config-management/k8s-config-assessment.md

/assign @jrnp7 (Jaya)


Handle authentication header from devise on custom forms?

When doing a POST from a custom form, I always get 401 because authentication headers are not sent.
I guess that is just a feature to get solved?
Or would it be possible to do it within motor-admin api?
(My app is a Rails 6 api only app, using jwt token)

Thanks @lauer, yep that's something that's should be easy to solve.
Can you please provide more details about your specific use case?
Are you using some devise-jwt gem or just a simple before_action to load @current_user from decoded jwt string which is sent in the http header?

Yes. I am using the device-jwt gem.

@lauer authentication via jwt has been implemented in the newest release - https://rubygems.org/gems/motor-admin/versions/0.1.60 (should work seamlessly with the device-jwt gem without any additional configurations).


whats the main propose of sealer exec ?

What happened:
follow the example, the command line result is not echoed.whats the main propose of sealer exec ? I understand it should be able to execute commands remotely，and show the result.

What you expected to happen:
How to reproduce it (as minimally and precisely as possible):

Anything else we need to know?:
Environment:

sealer version (use sealer version):
Cloud provider or hardware configuration:
OS (e.g: cat /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

The command return information has been optimized, so the --debug parameter is required to display information

Should not using debug by default, should open the ssh.CmdAsync stdoutput.


create a chatbot from javascript

@kanha-43 , I want to work in this issue

please assign me this issue

@mayank-del , go ahead

@mayank-del where is js file?

sorry , i forgot to use git add

I am adding

@kanha-43 ,please merge it


The current route name is route.name

READ ME PLEASE!
TL;DR: Make sure to add your changes to versioned docs
Thanks for opening a PR!
The docs cover several versions of react-navigation, and in some cases there are several files (for version 1, version 2 and etc.) that all describe a single page of the docs (eg. "Getting Started").
Please make sure that the edit you're making in docs/file-you-edited.md is also included in the file for the correct version, eg. /versioned_docs/version-3.x/file-you-edited.md for version 3. If such file doesn't exist, please create it. :+1:

Hey @SConaway, thanks a lot for your PR, but actually is right, because it should be route.params.name;

route.name is correct

Tested from experience. Thanks @satya164


Some problems about VPP config for Vhost-user CNI plugin

@rkamudhan @john
I am using your vhost-user-net-plugin for vpp-17.10, but met some problems when I use it to config the Vhost-user for K8s Pod, which leads the 2 container can not ping each other successfully:

For the vpp-config.py, the function
def configVhostPortRoute(port, containerIP, containerMAC):
1.1 For the command:
cmd = 'vppctl set int unnum {} use loop0'.format(port), I don't find a command to create the loop0 interface, is the loop0 should be created beforehand and what are the related configurations about it?
1.2 For the command:
cmd = 'vppctl show tap', it shows:
unknown input `vppctl show tap', so what are the commands about the "tap", so that the subsequent "ip link set " command can be executed?

For the created vpp container by this vhost-user-net-plugin, I see in the README.md:
"Run the VPP in a container A as follows"
" # vpp unix {log /tmp/vpp.log cli-listen <IP_ADDRESS>:5002} api-trace { on }
dpdk {coremask 0x2 no-multi-seg no-pci singlefile 512 extra --vdev=virtio_user0,path=/vhost-user-net-plugin/4d578250ad8d760c0722be78badb4b4b6d57fed8f95dea23aaa0065aa8657b29/4d578250ad8d-net1,mac=e2:52:b5:7b:58:ad } cpu {skip-cores 1}"
" # vppctl set int state virtio_user0 up"
" # vppctl set int ip table virtio_user0 0"
Run the VPP in another container B and ping the Container A
" # vppctl ping <IP_ADDRESS>"

And I do see a VirtioUser0/0/0 interface in the container's vpp, but I don't see how the IP address(<IP_ADDRESS>,<IP_ADDRESS>) are configured in the vpp, could you give a more detailed information about the configuration in the vpp container?
I tried to set the IP address on this VirtioUser0/0/0 interface, but it does not work. Could you give some introduction about your configuration here.

@TrevorTaoARM  I will look into this issue

@rkamudhan
Thank you very much for your help.
One more question here:
I see in the vpp-config.py, there is a command:
cmd = 'vppctl set int unnum {} use loop0'.format(port)
But I don't see any configuration about the 'loop0', did you enable it beforehand, how about the configurations if possible?


Add one sentence for each capability

:white_check_mark: Checklist

[x] This pull request has a meaningful title.
[x] If your changes are not yet ready to merge, you have marked this pull request as a draft pull request.

:ballot_box_with_check: Maintainers' checklist

[x] This pull request has had the appropriate labels assigned
[x] This pull request has been added to the SATRE backlog project board
[x] This pull request has been assigned to one or more maintainers

:arrow_heading_up: Summary

Adds one sentence for each capability
Adds section numbers
Reorders/organises some capabilities
Brings roles as a top-level capability
Adds a template "Statement/Guidance" table for each capability

:closed_umbrella: Related issues
Closes #80
:raising_hand: Acknowledging contributors

[x] All contributors to this pull request are already named in the table of contributors in the README file.
[ ] The following people should be added to the table of contributors in the README file:

Can this be merged? I would like to make a PR today after these changes added


Distinguish between object owner and account owner in Owner type

Leftovers from https://github.com/MystenLabs/fastnft/pull/549.
There is value in knowing whether an object is owned by an address or another object. E.g., if the wallet is trying to construct a tx thats uses o, it can decide to proceed differently when o.owner is an address (check if the wallet has the key for that address) vs when o.owner is an object (will need to also include the owner object in this tx, and recursively figure out whether it can use the owner object).

Turns out this is already done. Owner currently have AddressOwner and ObjectOwner


⚠ Bofrost.es has degraded performance

In cd5f408, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1306 ms

Resolved: Bofrost.es performance has improved in f0009ad after 24 minutes.


kong 0.14.0 exit automatically use docker

Summary
when i was use
docker run -it kong:0.14.0

to start kong,but it exit automatically,and no log printed,how to resolve this problem?

did you follow instructions to set up the database and docker network? please list all the steps you took

no,i don't have set up the database and docker network,i just use
docker run -it kong:0.14.0

to start kong,it should show some log like postgresql error,but it not,i don't know why

did you follow instructions to set up the database and docker network? please list all the steps you took

no,i don't have set up the database and docker network,i just use
docker run -it kong:0.14.0

to start kong,it should show some log like postgresql error,but it not,i don't know why

did you follow instructions to set up the database and docker network? please list all the steps you took

i have also try to follow the instruction to set up the database and docker network,and then the database is ready,but kong still exit automatically,and show no log

did you follow instructions to set up the database and docker network? please list all the steps you took

this is my docker version
Client:
 Version:           18.06.1-ce
 API version:       1.38
 Go version:        go1.10.3
 Git commit:        e68fc7a
 Built:             Tue Aug 21 17:23:03 2018
 OS/Arch:           linux/amd64
 Experimental:      false

Server:
 Engine:
  Version:          18.06.1-ce
  API version:      1.38 (minimum version 1.12)
  Go version:       go1.10.3
  Git commit:       e68fc7a
  Built:            Tue Aug 21 17:25:29 2018
  OS/Arch:          linux/amd64
  Experimental:     false

this is my os info
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.1.1503 (Core)
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-229.4.2.el7.x86_64 #1 SMP Wed May 13 10:06:09 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Kong is working it's just not logging to stdout because you didn't configure it to. You need to follow the directions at https://hub.docker.com/_/kong with more attention paid to the environment variables used to setup the Kong container
Kong by default logs to file unless it's explicitly told to log to stdout
    -e "KONG_PROXY_ACCESS_LOG=/dev/stdout" \
    -e "KONG_ADMIN_ACCESS_LOG=/dev/stdout" \
    -e "KONG_PROXY_ERROR_LOG=/dev/stderr" \
    -e "KONG_ADMIN_ERROR_LOG=/dev/stderr" \


Strip shebangs when stdout is used

When trying to lint php files, which uses the stdout buffer (And thus the read_buffer mode), if there's a shebang in the file and a declare, namespace directive in the php file, it triggers a lint error.
According to https://bugs.php.net/bug.php?id=74783, it's not really considered a bug, because on executable php scripts, it should be ignored by the interpreter - and it is, because it uses bash / zsh / ... So on php -l file.php, it is not an error, but it is one on cat file.php | php -l.
So, we should either strip shebangs from the input if read_buffer is 1 (or at least add an option for that ?), or change the mode for php validation ? But then, IIRC, it wouldn't be able to syntax check on real-time...
WDYT ?

The way to fix this is to throw the error away.

This can be fixed for the PHP linter by adding '< ' . ale#Escape(l:temporary_filename) to the command, and creating the temporary file with the shebang line removed. The line numbers will have to be changed when the line is removed.

But what if the file is not saved yet ? The strength of the stdout is that the file is not saved yet, so errors are fixed before it's saved ?
I just tried :!php -l %t, and it appends t to the filename. Unless you meant php -l % ?

%t is a special formatting marker replaced with a temporary file containing the contents of the buffer.
Turns out, that doesn't work anyway, so editing a temporary file before piping it in will work better.

From what I see, the problem no longer occurs.
I tried the aforementioned PHP as a file, as a not written to disk buffer file.php and as buffer which I've manually setf php.
In each case linting was working normally.
@Taluu, could you verify?

It's been since I used Ale, but according to https://github.com/php/php-src/commit/c5f1b384b591009310370f0b06b10868d2d62741 it was fixed in 2019

@Taluu Ah, then I think you can close the issue?

Sure, done :)


connectOrCreate fails during upsert

Bug description
@kazimirzak and I have run into some issues while trying to upsert and connectOrCreate at the same time.
When trying to use connectOrCreate during an upsert(), prisma will throw the following error:

Error occurred during query execution:
EnvVarNotFound("Expected parent binding '4' to be present.")
at PrismaClientFetcher.request (...\node_modules@prisma\client\runtime\index.js:1:228459)

"4" is not part of any variable being passed to the upsert function.
The data we're trying create looks as follows:
this.client.serverToSinner.upsert({
    where: {
        serverId_sinnerId: {
            serverId,
            sinnerId
        }
    },
    create: {
        Server: {
            connect: {
                id: serverId
            }
        },
        Sinner: {
            connectOrCreate: {
                where: {
                    id: sinnerId
                },
                create: {
                    id: sinnerId,
                    username: sinnerUsername,
                }
            }
        },
        absolvedAt
    },
    update: {
        absolvedAt
    }
}

serverToSinner is an intermediate table.
It's worth noting that, if we change connectOrCreate to connect and make sure the record is already there, it works perfectly fine.
How to reproduce

Create 2 tables - the primary key on each being a string (varchar in our case)
Create an intermediate table using a composite primary key from the two tables created in 1.
Add a foreign key on the intermediate table connecting primaryKey1 to table1 and primaryKey2 to table2
On table1 create a record.
Create a call to upsert(..) where you connect to the record on table1 and then connectOrCreate on table2, thus a new record should be created on table2 and then a record connecting record1 and record2 in the intermediate table.

The database should look somewhat like this:

Expected behavior

Prisma should realize that the intermediate relationship doesn't exist during upsert ✔
Prisma should first check table1 for an appropriate record.
Prisma then checks table2 for a second record.
Upon realizing that the record doesn't exist on table2 Prisma should create the record.
The intermediate table should be updated, connecting the newly created record on table2 to the record on table1.

Prisma information

model Server {
  id             String           @id
  name           String?
  channelId      String?
  ServerToSinner ServerToSinner[] @relation("ServerTo_ServerToSinner")
}

model Sinner {
  id             String           @id
  username       String
  ServerToSinner ServerToSinner[] @relation("SinnerTo_ServerToSinner")
}

model ServerToSinner {
  serverId       String
  sinnerId       String
  questionsAsked Int      @default(0)
  absolvedAt     DateTime
  Server         Server   @relation("ServerTo_ServerToSinner", fields: [serverId], references: [id])
  Sinner         Sinner   @relation("SinnerTo_ServerToSinner", fields: [sinnerId], references: [id])

  @@id([serverId, sinnerId])
  @@index([sinnerId], name: "fk_sinner")
  @@map("_ServerToSinner")
}

Environment & setup
OS: Windows 10, Version 2004
Database: MySQL
Node.js version: 14.9
Primsa: 2.6.2

Can confirm and reproduce this issue, gets the same error Expected parent binding '4' to be present. when running the query.
One thing to note tho is that it works if you turn it around and and use connectOrCreate on Server and just connect on Sinner then it just works.
If you then use connectOrCreate on both queries then error changes binding number to  Expected parent binding '8' to be present. where it looks like it run the Server part of the query find but then fails when it comes to Sinner, making it seems like there is some issue with the relation to Sinner.
Also trying moving the @id of the ServerToSinner table to its own column and making that its only index but its changes nothing, unfortunately.

I can confirm this issue.
Here is a minimal reproduction in a form of a quick script that we can while fixing this: https://github.com/harshit-test-org/prisma-issue-3612

This might be a duplicate of https://github.com/prisma/prisma-client-js/issues/764

Confirmed duplicate of https://github.com/prisma/prisma-client-js/issues/764

A fix has been merged, this will be available in the 2.10 release.


Reconcile publishSettings methods

@catsby this is the change I was proposing in the #181. :) Implementation of ClientFromPublishSettingsDataWithConfig is already 100% the same with clientFromPublishData method and makes it obsolete.

Ah, wonderful, thanks for clarifying and notifying me :smile:


Idea: Allow Notification Lists to be used as a follower/following list

(the url is https://twitter.com/settings/device_follow to my knowledge) and would help a lot especially for the artists you may have notifications on for

..or rather, https://x.com/settings/device_follow now


Regarding null safety

Is Null Safety Version of this Package coming any time soon?

I will deal with this issue as soon as possible.

Thanks for the quick update!

@Yash-Garg You can switch to version 1.0.0-nullsafety.0.
https://pub.dev/packages/sn_progress_dialog/versions/1.0.0-nullsafety.0

@Yash-Garg You can switch to version 1.0.0-nullsafety.0.
https://pub.dev/packages/sn_progress_dialog/versions/1.0.0-nullsafety.0

Great! Thank you


Set build string so dependees can choose mpi version

-Specify mpi version also for fftw / hdf5

Checklist

[x] Used a fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender


Issue/fix unclosed channel when non exising path provided

sessions leaks removed

Pull Request Test Coverage Report for Build 3991

5 of 11 (45.45%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 49.345%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

bundle/src/main/java/com/adobe/acs/commons/mcp/impl/processes/asset/FileAssetIngestor.java
5
11
45.45%

Totals

Change from base Build 3971:
0.01%

Covered Lines:
11873

Relevant Lines:
24061

💛  - Coveralls

Hello @badvision, I have reverted test changes, I sill fix it in separate issue


Chart.yaml must be must be located at ./

I am missing a configuratin option where i can specify where the Chart.yaml is located in. Currently This plugin is not usable for my use case, i have several charts that i want to handle, e.g.
./charts/A/
./charts/B/

Proposal: Introduce a new parameter called chartPath that is used here https://github.com/eshepelyuk/semantic-release-helm-oci/blob/8a66eb11f92e2dd68f532444474b817af76cf78b/lib/prepare.js#L8 and here https://github.com/eshepelyuk/semantic-release-helm-oci/blob/8a66eb11f92e2dd68f532444474b817af76cf78b/lib/publish.js#L8

Hello
For better understanding - if you have 2 charts A and B -
Does it mean that you use semantic-release to release both of them ?
Also, does it mean that you use rhe same semantic-release config for releasing both charts ?

You can use this new chartPath for option for several use cases.
To answer your questions: yes, i'd use semantic-release for releasing both charts, and yes, i'd share the same semantic-release config.
Another super simple scenario would be writing a service and putting the helm chart to to charts/myservice/. Using your plugin would not be possible. I hope i answered all your questions. If not don't hesitate asking again :)

Hello

To answer your questions: yes, i'd use semantic-release for releasing both charts, and yes, i'd share the same semantic-release config.

So, you are not using this atm, but rather would use.
That is what I understand from your reply.
Am I right ?

Yes, i am not using this atm but i'd really like to use your plugin. This is the reason i opened this PR. Currently i am testing with a fork and trimming the PR that it is functional working.

Ok, so, having in mind that you are going to have multiple helm charts in a single repo, and the same time you're going to reuse single semantic-release config for all of them - I don't understand how this functionality could help ?
Can you explain and show code samples ow can you reuse the single semantic-release config to release multiple charts using this plugin ?

Even if i don't release multiple helm charts within one configuration, i don't want to have the Chart.yaml in the root of my repo. Does this make sense to you?


Remove libR-sys from extendrtests permanently

Fixes #787
As agreed, we now prefer R_HOME in tests/extendrtests or if R is available from PATH.
It is reasonable enough, to assume that the contributors to extendR, will have configured their terminal to have R available there.

While this is approved, it doesn't pass CI.. Somehow, R-cmd-check removes access to R in the build-script:

/usr/bin/bash --noprofile --norc -e -o pipefail {0}
🤷♂

I actually don't know the issue. If any CI hero is around, please take a look.

Figured it out.


Create slide with worker

Description
This PR adds a new function to save the newly created report to the DB for the newly registered user.
Discussion list or pending tasks

[x] Save file to DB for the new user.
[x] Generate report input file from survey.

How to test
To test create a new job using a buffalo task:
docker-compose run havenapi buffalo task files:create_slide<EMAIL_ADDRESS>This will trigger the create slide task for the user provided.

Awesome work, and thank you for providing the info on how to activate this code in the review notes: docker-compose run havenapi buffalo task files:create_slide<EMAIL_ADDRESS>Could you note the testing command in the readme or somewhere in docs?

Awesome work, and thank you for providing the info on how to activate this code in the review notes: docker-compose run havenapi buffalo task files:create_slide<EMAIL_ADDRESS>Could you note the testing command in the readme or somewhere in docs?

So the example here in the review notes is actually an older one. We added the survey ID as an argument that is passed in and the update command is in the readme as
docker-compose run havenapi buffalo task files:create_slide $SURVEYID $USEREMAIL


Updated the UI for login and sign up page

Updated the UI for login and sign up page

In home page changed the text login to login / sign up.
Added a home icon using pure CSS, positioned at the top left corner of the page.
Implemented a glass effect for the login and sign-up cards to create a modern look.
Added various animations for the card flip effect and button hover states.
Included form validation for both login and sign-up forms to ensure input correctness like full name should not contain numbers.

After changes:

I believe you haven't been assigned to any existing issue

@Abhilash107 - yes i have not been assigned to any existing issue.

@Abhilash107 - yes i have not been assigned to any existing issue.
Ok, here it operates as first-come, first-serve.
And kindly check the annoucement in the discussion tab.
Currenly I am merging only the assigned isuues.
Please stay tuned for updates—once this phase is complete, I'll reopen the repository for contributions and feedback.


Unable to send to / receive emails from the outside world

Subject

[ ] I would like to contribute to the project (code, documentation, advocacy, integration, ...)
[ ] I would like some help for integrating this container with another service (rainloop, PostFWD, ...)
[ ] I would like to configure a not documented mail server use case
[x] I would like some feedback concerning a use case
[x] I have questions about TLS/SSL/STARTTLS/OpenSSL
[ ] Other

Description
Using this guide, I have discovered that sending to / receiving emails from the outside world (e.g<EMAIL_ADDRESS><EMAIL_ADDRESS>email addresses) does not work. It reports back undelivered when sending an email to the outside world (e.g<EMAIL_ADDRESS>using an email account which has been created / hosted on email server (e.g<EMAIL_ADDRESS>and admin@csir.com). Similarly, emails sent from the outside world to<EMAIL_ADDRESS>/<EMAIL_ADDRESS>does not appear in their respective inbox's as it should.

Furthermore, using public IP (197.229.x.xxx) instead of the private IP (192.168.x.xxx) doesn't seem to solve the issue as well, as it now doesn't connect on port 110 (for POP3) and on port 587 (for SMTP). It connects successfully when using the private IP (192.168.x.xxx). Firewall is disabled.
I suspect this is due to having SSL_TYPE=self-signed, but I'm not too sure. Could someone please indicate what the problem is exactly / point me to resources that would help resolve this issue?
My docker-compose.yml:
version: '2'
services:
  mail:
    image: tvial/docker-mailserver:latest
    hostname: ${HOSTNAME}
    domainname: ${DOMAINNAME}
    container_name: ${CONTAINER_NAME}
    ports:
    - "25:25"
    - "143:143"
    - "587:587"
    - "993:993"
    - "465:465"
    - "995:995"
    - "110:110"
    environment:
    - ENABLE_POP3=1
    - ENABLE_CLAMAV=0
    - ENABLE_FAIL2BAN=1
    - SSL_TYPE=self-signed
    - ENABLE_SPAMASSASSIN=0

    volumes:
    - maildata:/var/mail
    - mailstate:/var/mail-state
    - maillogs:/var/log/mail
    - ./config/:/tmp/docker-mailserver/
    env_file:
    - .env
    - env-mailserver
    cap_add:
    - NET_ADMIN
    - SYS_PTRACE
    restart: always
volumes:
  maildata:
    driver: local
  mailstate:
    driver: local
  maillogs:
    driver: local

My .env:
HOSTNAME=mail
DOMAINNAME=csir.com
CONTAINER_NAME=mail

Any advice / assistance would be highly appreciated.

I'd bet everything on this being either a certificate problem or misconfiguration.
As we know, the guide you were following has already had an issue with the environment variables - therefore I suggest following the guides in this repository or other guides.
This error is most certainly I certificate error. Almost all big providers and reasonably configured mail servers will reject mails without proper certificate / signing. You have a self-signed certificate, which can only be valid in your infrastructure. You will need to acquire a proper certificate (Let'sEncrypt for example). Then re-try.
I will close this issue because this is very unlikely a bug. Please try out my proposal considering getting a proper certificate. There are many guides which explain how that works. If you're still having trouble, either re-open this issue or file a new one, and provide logs so we can debug.


Show file tree in pull requests

I've seen a few people use a Chrome extension that (among other things) shows a file tree (of the changed files only) in pull request pages, like this:

Would this be something that refined-github could consider?

That's a rather complex feature and an extension already exists, no need to add the same thing to Refined GitHub

an extension already exists

Not for Firefox 😢
But sure, I understand your position, and kind of expected it. Just wanted to make sure this possibility was explicitly discussed and decided upon.

For Firefox users out there, I found an extension that implements this and integrates well with Refined Github: Github Tree Structure.
There's also another extension called Octotree, which is available for both Chrome and Firefox (and others), but it doesn't seem to work well with the sticky header (reported as https://github.com/ovity/octotree/issues/802).


[T4A3][F11-A3] Zhuang Lei

@zl1993 Some comments added. Please close the PR after reading comments.
Please do ask me if you have any problems about this.


(doc) Adjust YARD annotations

This PR fixes a few YARD annotations to match current code.
This PR came when I had some warnings:
Building YARD (yri) index for rom-sql-3.2.0...
lib/rom/sql/function.rb:189: [UnknownParam] @param tag has unknown parameter name: Conditions. Did you mean `condition`?
lib/rom/sql/function.rb:214: [UnknownParam] @param tag has unknown parameter name: A
lib/rom/sql/projection_dsl.rb:34: [UnknownParam] @param tag has unknown parameter name: attr. Did you mean `attrs`?
lib/rom/sql/type_extensions.rb:12: [UnknownParam] @param tag has unknown parameter name: wrapped

Test failures seem to be about the Debian environment (long before running any code).


Navbar does not stick to the header on telekom.de

I am using Ladybird https://github.com/LadybirdBrowser/ladybird/commit/27928cd28c89b2cbf1291c25be9accfb3ec18146 and Firefox 131.0
The navbar on the left side does not stick to its header, instead it docks to the bottom.
Edit: I originally thought this was an issue related to z-Index, however the Sample from mdn works fine.
Ladybird

Firefox

After the user scrolled to the bottom of the page, the navbar overlays with the footer.
Ladybird

Firefox

I have tested this issue on again using version https://github.com/LadybirdBrowser/ladybird/commit/1388b6866e25447335a7f5bd25d3153c710c0670
The issue does not occur on if you use the extracted version with the SingleFile extension, however it does occur if you browse the site directly on telekom.de
This issue seems very odd.
https://github.com/user-attachments/assets/b165903f-9fad-4be8-8b04-74ed478da600


Allow bind:group and value props to Checkbox

The default checkbox allows as shown below:
https://svelte.dev/repl/1565708677134e418e256234984d90ef

@yan5 for these situations you can use CheckboxGroup component.
Check here: https://svelte.dev/repl/e7b012b4088f4437aac2dd053422420b?version=4.1.1
bind:group doesn't work with Checkbox component in svelte (only works if all <input type="checkbox"... are in same file). https://github.com/sveltejs/svelte/issues/2308


MWB mouse buttons not functioning in second screen VMWARE Workstation VM

Microsoft PowerToys version
0.75.1
Installation method
PowerToys auto-update
Running as admin
Yes
Area(s) with issue?
Mouse Without Borders
Steps to reproduce
Setup:
2 Windows 11 Machines with latest fixes.
On second machine VMware Player 17.5.0 is installed.
All works fine
Only the mousebuttuns  (left & right) do not work (anymore) inside the VMs (Windows 11) started on VMware Player.
✔ Expected Behavior
Mouse buttons should work
❌ Actual Behavior
Mouse buttons do not have any function
Other Software
VMware Player 17.5.0

Hi, I've a similar but slightly different issue. When vmware player is in focus and running on 2nd machine (Windows 10) - mouse buttons and keyboard do not register in the running vm. If I minimise everything on 2nd desktop (using other keyboard) normal keyboard/mouse actions work.

I'm experiencing the same issue. Windows 11 both systems. Mouse buttons unresponsive thru MWB when VMWare workstation is in focus.


Add domain name gncasc.org

Add domain name gncasc.org

@abhishekjaiswar221 I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host gncasc.gncasc.org not found: 3(NXDOMAIN) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for your understanding!


update memory config and add some file permission and change owner co…

…mmands in the readme

Context:
if you dont change the file permission the docker compose up fails
updated the memory config to 6gbs for elastic search and 2gb for kibana
Tested on Ubuntu 22
host config Ryzen 7 7730u 16gg of ram


Carpeto

About the PR

tweak old carpet
add new one

Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

no cl no fun

i hate the red carpet so don't merge this until i go fix it.


No artifacts found in run

Attempting to use this to get my test results posted - but seeing this warning

despite my artifacts existing?

Heres part of my yaml
      - uses: actions/upload-artifact@v2
        if: success() || failure()
        with:
          name: binaries
          path: artifacts/bin
      - uses: actions/upload-artifact@v2
        if: success() || failure()
        with:
          name: test-reports
          path: artifacts/test-reports
      - uses: actions/upload-artifact@v2
        with:
          name: nugets
          path: artifacts/nuget

      - uses: dorny/test-reporter@v1
        if: success() || failure()
        with:
          artifact: test-reports
          name: Tests
          path: "*.trx"
          reporter: dotnet-trx
          token: ${{ secrets.REPORT_TOKEN }}

should I add a sleep or something before trying to reporter?
Confused what might be going on here - Ive been playing with it here but just cant get it working

Hi @charlessolar!
You don't need to use artifacts at all. Your test result files are available locally so this should work:
- uses: dorny/test-reporter@v1
        if: success() || failure()
        with:
          name: Tests
          path: "artifacts/test-reports/*.trx"
          reporter: dotnet-trx
          token: ${{ secrets.REPORT_TOKEN }}

Fetching result files from artifacts works only when test-reporter is executed from a different workflow than the one where artifacts were created. Here is the example. In case you have only one workflow, but multiple jobs, you can use actions/download-artifact@v2 to first download files locally.
Explanation:
GitHub actually has two different APIs to work with artifacts.
One used by upload-artifact or download-artifact is internal and undocumented. This API has access to uploaded files while workflow is still being executed.
Then there is an official artifacts REST API. This API shows uploaded files only after workflow is completed. So no matter how much sleep you would add - it's just not possible to get the artifacts in the same workflow as they were created. As you can guess - this action uses the official API to support multi-workflow use-cases (because of security in public repos). In a single workflow setup, you have to use local file system. Either the result files are already there or you can get it there with download-artifact action.

Ah fantastic - I knew there was something easy I wasn't seeing
The artifacts explanation makes sense! Thank you!


Lots of record with assets sometimes causes salsify errors

Description
Having lots of records with one or more image mappings will sometimes cause an error when resetting the asset feed.
Possible Solutions

save the salsify feed into a file object to allow reloading.
use file_get_contents and JsonMachine::fromString

The errors might have been caused by a bug in salsify.
Got this email on Nov 12th 2019
Hi Dynamic,

We are reaching out to all administrator users of your organization(s) today to inform you of a potential issue regarding your shareable Salsify digital asset URLs. By receiving this email, the Salsify team has identified that you, or a member of your organization, performed a digital asset refresh between October 14th and November 5th.

Historically, asset refreshes generated a new shareable URL that could be used throughout Salsify and published to external platforms. The previous shareable URLs, prior to a refresh, would remain valid until they were manually invalidated by Salsify. On October 14th, the Salsify team made a change to invalidate these shareable URLs immediately following a refresh. Our team was made aware of an issue on November 4th where Salsify assets that were refreshed resulted in broken images and/or 404s.

If your team utilizes these shareable URLs, either via the action menu or generated by formula variations, and you have not performed a subsequent publish to the affected endpoint, these URLs may result in a 404 or broken image. To resolve this issue, you will need to republish these products/assets to the appropriate destination or generate a new shareable URL.

Moving forward, our team has implemented a thirty day grace period on asset refreshes and are working to improve clarity on the impact that a refresh has on digital assets. If you have any questions, or need any assistance, please reach out the Salsify Support Team at https://support.salsify.com.

Thank You,

Salsify


swift 5 support

@mamaral please review this PR for swift 5 support

@mamaral please review this PR


watchOS is not supported

When trying to download Async via Cocoapods, the following error is thrown:
[!] The platform of the target MyApp (watchOS 2.0) is not compatible with AsyncSwift (1.7.2), which does not support watchos.
This is the entire podfile:
use_frameworks!
target 'MyApp' do
platform :watchos
pod 'AsyncSwift'
end
Awesome lib by the way, really helpful!

Added a PR for this #88


Feature refactor built-in coders and support animated webp on macOS

New Pull Request Checklist

[x] I have read and understood the CONTRIBUTING guide

[x] I have read the Documentation

[x] I have searched for a similar pull request in the project and found none

[x] I have updated this branch with the latest master to avoid conflicts (via merge from master or rebase)

[x] I have added the required tests to prove the fix/feature I am adding

[x] I have updated the documentation (if necessary)

[x] I have run the tests and they pass

[x] I have run the lint and it passes (pod lib lint)

This merge request fixes / reffers to the following issues: ...
Pull Request Description
macOS's NSImage API does not have something like UIImage's animatedImageWithImages:duration:. It only support GIF due to NSImage's API design and NSImageView implementation (Which take Image/IO source ref to decode data during rendering).
But I recently found a way to make it possible to let animated WebP work on macOS. We just grab the image frame array, then encoding it to a new GIF buffer and let NSImage load this temp GIF. Then all the animate tings work. (Mentioned here #2064). This is acceptable on macOS because it's more powerful and this happed under global queue from SD.
Yet I can do this by copying the encode GIF code from SDWebImageGIFCoder (because different coders should not relay on each other). But I dislike this way. And I decide to do some little refactor code which provide two extra method for animated images parse.
I create a new class SDWebImageFrame, which can be used for representing a frame for animated images. Since we can share code from that C function on SDWebImageCoder, but it's not really GOOD. So I create a new helper class called SDWebImageCoderHelper. I move all the trick logic previouslly in SDWebImageWebPCoder to this helper. Finally I add this fake GIF logic I talked above.
Meantime, I modify NSImage+WebCache that sd_imageLoopCount to automatically grab the GIF loop count because there are no way to set this previously. And I also fix one iOS 8-above API during previous plugin refactor. (And, any plan to upgrade minimum deployment version ? 😕 )

A little more code 😅  Most code is just move from one place to another. Maybe you can revice through commits.

Codecov Report

Merging #2082 into master will increase coverage by 0.05%.
The diff coverage is 72.81%.

@@            Coverage Diff             @@
##           master    #2082      +/-   ##
==========================================
+ Coverage   77.86%   77.92%   +0.05%
==========================================
  Files          33       34       +1
  Lines        3407     3406       -1
==========================================
+ Hits         2653     2654       +1
+ Misses        754      752       -2

Impacted Files
Coverage Δ

SDWebImage/UIImage+MultiFormat.m
50% <ø> (ø)
:arrow_up:

SDWebImage/UIImage+WebP.m
0% <ø> (ø)
:arrow_up:

SDWebImage/SDWebImageFrame.m
100% <100%> (ø)

SDWebImage/SDWebImageWebPCoder.m
79.85% <100%> (-2.71%)
:arrow_down:

SDWebImage/SDWebImageCoderHelper.m
65.6% <65.6%> (ø)

SDWebImage/SDWebImageImageIOCoder.m
84.67% <87.5%> (+8.78%)
:arrow_up:

SDWebImage/SDWebImageGIFCoder.m
81.73% <95.23%> (-0.84%)
:arrow_down:

SDWebImage/SDWebImageDownloaderOperation.m
89.79% <0%> (+0.68%)
:arrow_up:

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 3064ef6...62f22fd. Read the comment docs.

At first look, the code looks better. I'll have to review in more depth before I can say if there are no hidden issues :)
Anyway, since I just released 4.2.0, I've marked this PR for 5.0.0 release.

@bpoplauschi You just relaesed 4.2.0 ? :) Wait...Even you do not merge this soon, please fix that iOS 8 API about kCGImagePropertyOrientation  because our minmum deployment target is still iOS 7.
Anyway, I think this is not a break change because it's a continue work after that coder refactor. Previously I move some code in that SDWebImagCoder global C function , which is not really good if you want to build your own coder. And since this changes only affect the build-in coder(The changes is not so different, just move code :) ). So I advice to add this one to 4.2.0 milestone.
If we released this with that old SDWebImageCoder functions, I think it's not really easy to build your own one, isn't it 😅

@dreampiggy I asked you guys if there are any work remaining for 4.2.0 release. :) So it's gone already, released.
We can patch it. What is the problem with kCGImagePropertyOrientation?
If this PR is not breaking changes, we can release a 4.2.1 patch.

@bpoplauschi kCGImagePropertyOrientationUp this is iOS 8 above API. Previously it's just a NSInteger number, but we missed that during refactor and change it to the enum. So this is the problem.
https://github.com/rs/SDWebImage/blob/master/SDWebImage/SDWebImageImageIOCoder.m#L521-587

I see

This fix: https://github.com/dreampiggy/SDWebImage/blob/8f25f677dbd0a58747e6aca995ab276b31c3c61a/SDWebImage/SDWebImageCoderHelper.m#L179-L249

@bpoplauschi This one: https://github.com/rs/SDWebImage/pull/2085

@bpoplauschi I can change this to not break API since 4.2.0. Just leave previous C global function in SDWebImageCoder and move the new helper function to that SDWebImageCoderHelper class :). Could I mark this to 4.2.1 milestone ? (Also, @Pearapps may need this helper function to make their coder works better).

@bpoplauschi Done. Revert the changes which breaking the public API. All new helper function is available in that SDWebImageCoderHelper class.

@dreampiggy I have reviewed this PR and everything looks good (I've added a small commit just making the new classes public for people who need to write custom coders). I will merge this into master (actually squash) and then release a 4.2.1 patch. This means I will close #2085.

4.2.1 is released.

@dreampiggy I really appreciate your dedication to this project. Good job on this refactor


Wish: change button "Replication Data for: xyz" to "Dataset for Publication: xyz"

Think about to change text of the Button (and the automatically generated text) „Add „Replication Data for“ to Title“ to the „Add „Dataset for Publication:“ to Title“ under the Title metadata field when you create a new dataset. Is it generally needed? How to do it - change button or add the second button?
Related issues for "Replication Data":

general search: https://github.com/search?q=repo%3AIQSS%2Fdataverse+replication+data+for&type=issues
problem, that many datasets currently keep the title empty without extension "xyz" of "Replication Data for: xyz" - https://github.com/IQSS/dataverse/issues/4412
main issue: https://github.com/IQSS/dataverse/issues/3679
same wish, but with "related data to" - https://github.com/IQSS/dataverse/issues/3678

We have to monitor this topic.

Could you add a screenshot?