Best way to handle sub-paths?

Just curious to know if you have any thoughts on handling props like element.rotation.x and element.rotation.y.
At the moment, I have to implement some sort of wiring to make that reactive, on top of (or outside of) SkateJS.
I was thinking, if I were to switch to having something like element.rotationX, element.rotationY, and element.rotationZ, and similar for position, scale, etc, then it'd be easy to make those things reactive.
But having element.rotation.x seems to work nicely, as the sub-object encapsulates logic (f.e. they can be THREE.Vector3 or THREE.Quaternion from Three.js and come with helpers methods for manipulating the x/y/z values in certain ways).
So I'm wondering if I should switch to rotationX sort of props for simplicity.
Another thing to consider is having attributes like rotation="20 30 40" which map the three values to rotation.x, rotation.y, and rotation.z (either by setting the sub-props, or by setting rotation to a new THREE.Quaternion for example), vs having attributes like rotation-x="20" rotation-y="30" rotation-x="40" where changing these individual props/attributes would map to sub-object in updated for example.

At the moment, I have a helper method for use with props to map props to sub objects in some cases:
// map a SkateJS prop value to another target specified by getTarget
// NOTE `this` refers to the instance on which the prop exists
export const mapPropTo = (prop, getTarget) => ({
    ...prop,
    coerce(val, key) {
        const target = getTarget.call(this, this)
        const coerced = prop.coerce.call(this, val) // wraps the original coerce
        if (target) target[key] = coerced
        return coerced
    },
    deserialize(val, key) {
        const target = getTarget.call(this, this)
        const deserialized = prop.deserialize.call(this, val) // wraps the original deserialize
        if (target) target[key] = deserialized
        return deserialized
    },
})

and we can use it like this:
static props = {
  opacity: mapPropTo(props.number, self => self.material)
}

where in that example any changes of the prop will not only set the prop on the instance that owns the props (self) but also onto a sub-object (self.material). Basically, the top-level instance is the outer API (an HTMLElement) while element.material is an object managed by the element (f.e. an instance of THREE.Material).

Do you have any thoughts on sub-props or sub-objects? Could there be a clean way to standardize it? Maybe it comes down to implementing useful helpers on top of the existing mechanism?
I'm still trying things and learning what works best. If I come up with any patterns, I'll post back.

So I'm wondering if I should switch to rotationX sort of props for simplicity.

I would just do this. You're welcome to implement sub-object stuff on your own, but it's seems more a stylistic choice than an objective one. Handling sub-object reactivity isn't something I see going into core.

From a user perspective, I like the rotation="10 20 30" attribute interface.
I ended up doing something similar to that, but disguising it in something less hacky-feeling:
// user runs
elem.rotation.x = 10

// then an event handler on the `rotation` object calls:
elem.updateProp('rotation') // HERE, same trick.

Sidenotes:
My version of _propsChanged (from previous PR)

tracks booleans on a constant object (I can read values from the actual props so storing values there isn't necessarily useful)
After every update I need to iterate on it once to set all props changed flags back to false.
The object is not GC'd every update, it lives as long as the element does.

Your current _propsChanged version

creates a new object after every update so that before next update it can add the changed prop values
this queues objects to be GC'd each update.
user code should use propName in propsChanged to check if a prop was set
no iteration involved, but the GC is something I'm trying to avoid everywhere, to avoid the pause that happens every second or so when running WebGL code. I know it's just one object here, but at 60fps it can add up if it happens in other places too (not necessarily just in Skate).

no iteration involved, but the GC is something I'm trying to avoid everywhere, to avoid the pause that happens every second or so when running WebGL code. I know it's just one object here, but at 60fps it can add up if it happens in other places too (not necessarily just in Skate), and not just for one element, but imagine 100 elements: this means needing to collect 100 objects after every animation frame.

We can rectify this if it becomes a legitimate problem.


No way to find and destroy an already existing Draggable Element

Hi guys,
It seems that theres is no way to find and destroy an already existing draggable Element.
At the moment one can only initilize a Draggable using the constructor and only then destroy it.
Or am I understanding something wrong here?
Thank you in advance Draggable team !

Maybe you need document.querySelector('.your-class').querySelectorAll('[draggable="true"]') to get all HTML draggable elements and then manipulate them, if you are using the native HTML Drag and Drop API.
As you say, this library need to initialize  before usage. It mainly design to help you manage containers and draggable elements more easily, sort and swap elements by dragging, and avoiding the poor compatibility currently of Drag and Drop API.

Hi @zjffun thanks for your answer.
the main problem that I am having is that I already have a draggable container (ul) with draggable elements (li) and just want to add one more draggable element with out having to reinitilize the hall container.
If the draggable container already exists, that some how leads to strange behavior of my container, because Draggable things it now has two draggable containers (I guess).
One way would be just to destroy the container and reinitilize it adding the new li inside.
Your solution would not work becaus draggable.destroy() must be called on a draggable instance, which we don't get with out calling the constructor.

@iliasmertzanos  You can add a draggable element in a draggable container without any other codes. Because we check if an element is a draggable element, according to the options(https://github.com/Shopify/draggable/tree/master/src/Draggable#options), when dragging.
eg:

A

B

BTW: Add/remove a draggable container need to call draggable.addContainer(containers: ...HTMLElement)/draggable.removeContainer(containers: ...HTMLElement). Because we saved draggable container when initialized. Add/remove a draggable element/container doesn't need to reinitialize.

Thank's guys I already found the same solution.


Feat unknownclass + some fix

Added data primitive: UNKNOWN.

UI edit pages need to allow for new data type
ingest-api needs to allow for new data type

Removed dependency on adhocConfig.ts for ingest-api. There will still be 2 other URLs that will be hardcoded during CI/CD, but those are deemed ok.


PyTorch issue

Describe the bug
PyTorch is not loading the state-dict.pth model for some reason. The trace is coming from torch\serialization.py in unpickler.load() and meets alaska at build_vocab in utils.py
To Reproduce
from alaska import Alias
path = "alaska/data/testcase1.las"
a = Alias(model=True)
parsed, not_found = a.parse(path)

Expected behavior
PyTorch to load the state dict
Screenshots

System (please complete the following information):

OS: [e.g. iOS] Wx
Python version [e.g. 3.6] 3.7
AlasKA Version [e.g. 0.5] 0.0.4
PyTorch Version [e.g. 1.4] 1.0, 1.2, 1.4, 1.6 I have tried these versions with no luck

Additional context
I am not sure why it is not loading the state dict at this point

I just finished sorting this out. It looks like when the model was trained on TACC that utils.py was in the top level directory. In order to load the state_dict for the pointer generator it needs a copy of utils.py to be in the top level dir. I made a copy there and the PG is working fine now. This is on PyTorch v1.6. I am closing this issue for now until we decide if we want to retrain the model or not.


Images in my HTML that use a base64 string as their source are not being rendered on canvas.

Bug reports:
I am using html2canvas to convert a part of a web page into an image.
On this page, there are some images, the source of which is in base64, for instance:
<img src="data:image/png;base64,verylongstringofbase64characters" alt="">
where verylongstringofbase64characters is the image data.
When I convert this part of the web page to canvas, however, none of those images are visible in the canvas and the final output image.
My render function:
function render() {
  window.scrollTo(0, 0)
  var svgElements = document.body.querySelectorAll('svg');
  svgElements.forEach(function (item) {
    item.setAttribute("width", item.getBoundingClientRect().width);
    item.setAttribute("height", item.getBoundingClientRect().height);
    item.style.width = null;
    item.style.height = null;
  });
  html2canvas(
    document.getElementById("partofthewebpageiwanttomakeanimageof"), {
      scale: window.devicePixelRatio * 5
    }
  ).then(function (canvas) {
    var image = canvas.toDataURL();
    var aDownloadLink = document.createElement('a');
    // prepare filename
    var date = new Date();
    curdate = date.yyyymmdd();
    filename = curdate + "_" + app.language + "_" + app.title.replace(/[^A-Z0-9]/ig, "_") + ".png";
    aDownloadLink.download = filename;
    aDownloadLink.href = image;
    aDownloadLink.click();
  });

}

Previously, I used image files instead of base64 strings and it worked just fine. Is there anything I can do to make it work with images based on base64 strings?
Output from Console:
17d2da8c220 237ms Document cloned, using computed rendering html2canvas.js:2377:35
17d2da8c220 238ms Starting DOM parsing html2canvas.js:2377:35
17d2da8c220 251ms Added image http://localhost:8000/include/europirates.png html2canvas.js:2377:35
17d2da8c220 257ms Added image data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABdcAAANBCAYAAAAC/Yc0AAAdRXpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjapZtpkmQnloX/s4peAvOwHOCCWe+gl9/fwT1TqSyprNQdIXlE+MCDO5wBXrrzP/993X/xVUfMLpfW66jV85VHHnHyS/efr/keg8/v8X1Z8+X77J+edzn49H6L/vPb5y/f6+dn+PH89wM/fobJb+ html2canvas.js:2377:35
17d2da8c220 288ms Added image data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAtsAAAF+CAYAAABTSdZoAAAaRXpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjapZpXliS3km3/MYoeAjQMw4Fc682gh9/7ILLqliKbfF3JzAiGcIebOMLg7vz3/7vuv/hXs5nLpVnttXr+5Z57HDwx//k33t/g8/v7/u3p49erP73u2vl6GnlMPKbPG1Y/j+Hb619f+PYYBs/KDw html2canvas.js:2377:35
17d2da8c220 302ms Starting renderer html2canvas.js:2377:35
17d2da8c220 318ms Canvas renderer initialized (1202x677 at 350.5,883.7000122070312) with scale 5 html2canvas.js:2377:35
17d2da8c220 332ms
Error loading image data:image/png;base64,(really long string of base64 data without these parenthesis, this error message is repeated for each image)

I am wondering if the length of the base64 image strings is simply too high to actually be included in the canvas, or if I am running into some other issue?
Specifications:

html2canvas version tested with: 1.0.0-rc.7
Browser & version: Firefox 94
Operating system: Windows 10

Could you please try with 1.3.2? If the issue still persists, I would need a repro on jsfiddle to triage this any further as there are working examples of base64 images in our tests cases.

in html2canvas version >= 1.0.0, html2canvas only accept blob instead of base64 string because of the logic here:
https://github.com/niklasvh/html2canvas/blob/c5c6fa00d71f36ef963ba5170ebc7b668d39c407/src/core/cache-storage.ts#L132
We used to have 0.4.1 with proxy to provide base64 string image. After we upgrade to 1.3.2, base64 string is not supported. The request to get blob does not work because of xhr request type is not properly set
https://github.com/niklasvh/html2canvas/blob/c5c6fa00d71f36ef963ba5170ebc7b668d39c407/src/core/cache-storage.ts#L153
I wonder if it can be modified to
if (responseType !== 'text' && typeof xhr.responseType === 'string') {
Thanks

I just was able to test, and can confirm that using blob on 1.0.0 works :)

The JS framework I'm using intercepts request and add headers such as authentication.  When xhr.responseType is not properly set, the returned blob data from proxy cannot be properly parsed by html2canvas.

I'm using Angular, and I can't find a solution.

May I ask if this problem has been resolved
I also encountered a similar problem
When the base64 image is relatively large (possibly 2M, 3M), html2canvas cannot take a screenshot
Screenshots can be taken normally when the image is relatively small


JS -- in integration test, wait for open actions

Aims to fix intermittent failures in integration tests

/botio integrationtest

I would prefer too but I didn't find any way to achieve this using puppeteer (https://github.com/puppeteer/puppeteer/blob/main/docs/api.md). But of course feel free to find a better solution.

We could a solution based on page.exposeFunction but it doesn't work in firefox:
https://github.com/puppeteer/puppeteer/issues/6116

Anyway we can merge it in waiting for a better solution, I think it's better than adding a timeout.

Hopefully this is no longer necessary, since the integration-tests are now passing consistently with the last patch from PR #12748 :-)

@Snuffleupagus are we good to close this?

@Snuffleupagus are we good to close this?

I'd say so, since this no longer fails with recent changes.


Stack Input Channel with Last layer

I have a model with single channel input and predict other two channels. To save a proper image I want to join input channel+2 output channel
Last Layer
X_train was the input with channel L stacked thrice to a vgg-16
some deconv layers then
x = Conv2D(2, (3, 3), activation='relu', padding='same', name='bfinal')(x)
After which I use lambda layer and define a function with two inputs,
   def stackxtrainx(x,X_train):
       glist = []
       g3list = []
       X_train=np.asarray(X_train)
       for i in xrange(X_train.shape[0]):
           glist.append(K.stack(X_train[i,:,:,0:1],x[i,:,:,:]))#np.dstack(glist)
           g3list = K.stack(glist)
       return g3list
   x = Lambda(stackxtrainx(x,X_train))
   #print("tensor type", x.)
   model = Model(input=base_model.input, output=x)
   return model

How can I get a keras tensor output? Or if there is any easy method to concatenate image channels?
I am using tensorflow backend

Problem is here
x = Lambda(stackxtrainx(x,X_train))
x = Lambda(stackxtrainx(X_train))(x) or x = Lambda(stackxtrainx)(x)(X_train) were not working
And I do not know how to pass two arguments or stack two image channels without using Lambda layer


Duplicated chats

Description
Creating multiple chats with the same name is allowed and results in several identical chats.
Reproduce

Click on "Create a chat"
Enter the name of the chat: "chat0"
Click on "Create a chat"
Enter the same name as before: "chat0"
See that CHAT0 is duplicated in the chat list.

Expected behavior
Maybe there should be an error saying that the chat already exists?

Thanks @davidbrochart for opening this.
Right, the side panel allows to open several times the same chat.
I observe the same behavior if I move a chat from the main area to the side panel (if the chat was already opened in the side panel).


dead link

We cannot obtain such a .wav file from the Translator Text Speak API. Because it is dead link.

@HirotoHirata : Thanks for your contribution! The author, @v-jaswel, has been notified to review your proposed change.

I was hoping to include this with other fixes to that quickstart but those are stalled.
Replicated fix to private repo, fix merged.
https://github.com/MicrosoftDocs/azure-docs-pr/pull/50212

@v-jaswel  Can you approve this change now?

It looks like the link was removed in a PR in the private repo, and the update is live. We'll close this pull request.
@HirotoHirata Thanks for your contribution!


Shadow on hover covers the text

Hey,
I have spotted some minor issues which I found important as UI/UX point of view. Shadow on hover is covering some text from content, reducing it little bit would solve it. and rotating gear doesn't go with flow of rest of the page, Static gear will also solve issue of rotating shadow.

@vikas-parashar thanks for reporting the issue. I also think using static gear will be a better option.

I also vote for a static gear, the animation looks great but it stands out too much. It's as if embedded systems is where all the action is. Either animate all icons, or none, for consistency.

@vikas-parashar @NiclasEriksen thanks for reporting the issue. Gear icon is changed to static.


feat: 🎸 add getProofDetails to ConfidentialTransaction

Description
allow fetching all proof information related to a confidential transaction. The new method is similar to getSenderProofs, except it also includes details about legs where the sender has not committed proofs for the assets
Breaking Changes
None
JIRA Link
DA-1143
Checklist

[ ] Updated the Readme.md (if required) ?

:tada: This PR is included in version 1.0.0-alpha.15 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.2.0-alpha.1 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.0.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


FreeTypeFontGenerator padding support?

Correct me if I'm wrong, but I couldn't find any padding parameters for FreeTypeFontGenerator. As it currently is, the textures bleed from glyph to glyph, causing artifacts in light-colored text.

FreeTypeFontGenerator.generateFont(...) takes a FreeTypeFontParameter as well. That has an optional PixmapPacker which has a setting int padding that will probably solve your problem.

@nooone Thanks for the suggestion. I tried that, but it causes the FreeTypeFontGenerator to not create the texture regions, which in turn leads to NullPointerException.

By default, FreeTypeFontGenerator uses padding of 2 pixels around glyphs. If you need something else, you should provide the packer. If it didn't work when you provided the packer, you must have done something incorrectly.

@manabreak Please post a full stacktrace for that NullPointerException that you've encountered.
As @MobiDevelop already said, there should be padding by default and it is configurable. Either please post a working code example of your problem, or we won't be able to help you here and have to close this issue.

#2980 seems to be the same issue but with a better description and example code, so we'll continue discussion there.


run a formula via button

This probably is tied into #2, but the user should be able to run a formula when they choose by pressing a button.

I have it successfully taking in info from a form, which can be fed into the formula, which is submitted via a button. Trying to get the progress bar to work at the same time.


github: Remove the pingcap/tidb-ansible from the PR template

What is changed and how it works?

Issue Number: close https://github.com/tikv/tikv/issues/12103
What's Changed:
Remove the pingcap/tidb-ansible from the PR template. It has been archived.
Related changes
None
Check List
Tests

No code

Side effects
None
Release note
None

/cc @BusyJay @skyzh
Could you please take a look? Thanks! 💚 💙 💜 💛 ❤

/assign @skyzh
Could you please hep me merge this PR?

/merge

/merge

/test


[BEAM-115] Inline rather than reference FunctionSpecs.

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[ ] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

R: @kennknowles

LGTM

Coverage decreased (-0.0005%) to 69.119% when pulling 87071fb71789e3482ef4bdadabf70781c7d88881 on robertwb:runner-protos into 3f4e008bf5231771094878d92256b674730630dd on apache:master.


[ALLUXIO-3204] Allow users to set app id

https://alluxio.atlassian.net/browse/ALLUXIO-3204

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/20087/
Test PASSed.


some enhancement

[x] Move changelog to admin for me the user side doesnt need to know change logs

[ ] Add a gap here
[ ] When a server disk space is full and you try to start a server after checking disk space add a message that says that the disk is full
[x] Except if its intended ? Remove the layers of accordion
[ ] Set unsorted servers to open by default (i did it already i just need to do a pull request)

Some ideas :smile:

Thanks for your feedback. The server view page will be redesigned anyways, so we will include your ideas. to the config nested thing, this is indeed intentional. The server disk warning will be implemented like that:

changelog done in #269

Network tab as of the release that will come out today ^^

Finished to me

Why should the users not be able to read the changelog?


k8saudit-eks - memory leak

I have falco with k8saudit-eks addon deployed by helm chart. Very soon after the moment when the pod starts it is getting killed by OOM killer. The only thing i need is to get events from the cluster to parse them later, so there are no complicated rules - i print almost all available fields.
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x48 pc=0x7f1de81376b5]

Envirinment
Chart version: 4.7.0
App version: 0.38.1
Plugins: k8saudit-eks, json
Helm values
fullnameOverride: "falco"

falco:
  rules_file:
    - /etc/falco/rules.d

  plugins:
    - name: k8saudit-eks
      library_path: libk8saudit-eks.so
      init_config:
        region: "us-east-1"
        profile: "default"
        shift: 10
        polling_interval: 10
        use_async: false
        buffer_size: 500
      open_params: "<redacted>"
    - name: json
      library_path: libjson.so
      init_config: ""

  load_plugins: [k8saudit-eks, json]

  json_output: true
  json_include_output_property: true
  json_include_tags_property: true

  stdout_output:
    enabled: false
  http_output:
    enabled: true
    url: "http://<redacted>:8080"
    insecure: true

mounts:
  volumes:
    - name: rules
      configMap:
        name: rules
        items:
          - key: k8s_audit_rules.yaml
            path: k8s_audit_rules.yaml
  volumeMounts:
    - name: rules
      mountPath: /etc/falco/rules.d

falcoctl:
  indexes:
  - name: falcosecurity
    url: https://falcosecurity.github.io/falcoctl/index.yaml
  artifact:
    install:
      enabled: true
    follow:
      enabled: true
  config:
    artifact:
      allowedTypes:
        - plugin
        - rulesfile
      install:
        resolveDeps: false
        refs: [k8saudit-rules:0, k8saudit-eks:0, json:0]
      follow:
        refs: [k8saudit-rules:0]

resources:
  requests:
    cpu: null
    memory: 64Mi
  limits:
    cpu: null
    memory: 1024Mi

controller:
  kind: deployment
  deployment:
    replicas: 1

collectors:
  enabled: false

driver:
  enabled: false

serviceAccount:
  create: true
  annotations:
    "eks.amazonaws.com/role-arn": <redacted>
EOF

Rules:
- required_engine_version: 15
- required_plugin_versions:
  - name: k8saudit-eks
    version: 0.5.1

- rule: Dummy rule
  desc: >
    Dummy rule
  condition: >
    ka.verb exists
  output: >
    auditid=%ka.auditid stage=%ka.stage decision=%ka.auth.decision reason=%ka.auth.reason decision=%ka.auth.openshift.decision username=%ka.auth.openshift.username name=%ka.user.name groups=%ka.user.groups name=%ka.impuser.name verb=%ka.verb uri=%ka.uri name=%ka.target.name namespace=%ka.target.namespace resource=%ka.target.resource subresource=%ka.target.subresource name=%ka.target.pod.name subjects=%ka.req.binding.subjects role=%ka.req.binding.role name=%ka.req.configmap.name obj=%ka.req.configmap.obj image=%ka.req.pod.containers.image image=%ka.req.container.image repository=%ka.req.pod.containers.image.repository repository=%ka.req.container.image.repository host_ipc=%ka.req.pod.host_ipc host_network=%ka.req.pod.host_network host_network=%ka.req.container.host_network host_pid=%ka.req.pod.host_pid host_port=%ka.req.pod.containers.host_port privileged=%ka.req.pod.containers.privileged privileged=%ka.req.container.privileged allow_privilege_escalation=%ka.req.pod.containers.allow_privilege_escalation read_only_fs=%ka.req.pod.containers.read_only_fs run_as_user=%ka.req.pod.run_as_user run_as_user=%ka.req.pod.containers.run_as_user eff_run_as_user=%ka.req.pod.containers.eff_run_as_user run_as_group=%ka.req.pod.run_as_group run_as_group=%ka.req.pod.containers.run_as_group eff_run_as_group=%ka.req.pod.containers.eff_run_as_group proc_mount=%ka.req.pod.containers.proc_mount rules=%ka.req.role.rules apiGroups=%ka.req.role.rules.apiGroups nonResourceURLs=%ka.req.role.rules.nonResourceURLs verbs=%ka.req.role.rules.verbs resources=%ka.req.role.rules.resources fs_group=%ka.req.pod.fs_group supplemental_groups=%ka.req.pod.supplemental_groups add_capabilities=%ka.req.pod.containers.add_capabilities type=%ka.req.service.type ports=%ka.req.service.ports hostpath=%ka.req.pod.volumes.hostpath flexvolume_driver=%ka.req.pod.volumes.flexvolume_driver volume_type=%ka.req.pod.volumes.volume_type name=%ka.resp.name code=%ka.response.code reason=%ka.response.reason useragent=%ka.useragent sourceips=%ka.sourceips name=%ka.cluster.name
  priority: WARNING
  source: k8s_audit
  tags: [k8s]

Your rule is pretty invasive, it basically create an alert for every k8s audit event. If you disable it, do you have the same memory profile? Like that, it's hard to tell which part is the cause, it can be the plugin or the http output of Falco.

@Issif
No, without the rule everything is fine.
My goal is just to output all possible events. Maybe using falco only for that is a complete overkill?

Falco itself is a rule engine, the capture of the syscalls and their enrichment are made by the libs, and in your situation, the capture of the k8s audit logs from EKS are made by a plugin.
I don't see the added value of Falco if you want to collect all the k8s audit logs from Cloudwatch Logs, the rule engine becoming useless, and the output rate an issue (the tool is designed to trigger security alerts, they are not supposed to be fired dozens times per second, or your infra is highly compromised).
You can find the logic to pull the logs from Cloudwatch Logs used by our plugin here. I think it's pretty easy to get inspiration from it and to develop a little app in charge to get these logs, format them in the Falco payload format and then push to your http endpoint.

Thank you for your help, @Issif!


memory domain arch implementation not correct with respect to SMP on ARC

Describe the bug
Consider an SMP system with two CPUs.

CPU 0 is running a supervisor thread A which makes some API calls to configure a memory domain X
CPU 1 is concurrently running a user thread B which is a member of memory domain X

With the current code, the memory domain API changes made by thread A will not cause the MPU on CPU 1 to be reconfigured, and thread B retains the old memory domain configuration (by virtue of the CPU's memory domain state) until it is context switched out and then in again. The time until that happens is indeterminate, it could be quite some time if it is a cooperative thread.
To Reproduce
Found via code inspection.
Expected behavior
arch_mem_domain_* API invocations on some memory domain X synchronously reprogram the MPU on other CPUs if any of the other CPUs are running a user thread in memory domain X.
If another CPU is running a supervisor thread that belongs to memory domain X, this can be ignored, as memory domains only apply to user threads.
transitioning the thread to another domain must maintain stack and boot region access while this is happening.
Impact
I think this is low. Memory domains are typically set up at application initialization time, reprogramming memory domain properties as part of an application's normal state machine is an odd use-case.

note: I'm going to write a test case for this as I'm not sure everything is in order on x86 either.

Noted. We don't enable/support Userspace on ARC HS yet, there might be other issues as well with SMP and userspace.

Noted. We don't enable/support Userspace on ARC HS yet

ohh! misunderstanding on my part.
Feel free to close unless you want to leave this open as a reminder.

@andrewboie any hints on how that should or could be done properly? Indeed if another core is running cooperative thread (i.e. we cannot interrupt it) how can we re-program its MPU or MMU if it's an essential part of the core, i.e. only core itself may access its MPU or MMU, but not its peers in the cluster.

@andrewboie any hints on how that should or could be done properly? Indeed if another core is running cooperative thread (i.e. we cannot interrupt it) how can we re-program its MPU or MMU if it's an essential part of the core, i.e. only core itself may access its MPU or MMU, but not its peers in the cluster.

I expect you'll want something like an inter-processor interrupt to cause a page table or MPU register re-load.

@andrewboie any hints on how that should or could be done properly? Indeed if another core is running cooperative thread (i.e. we cannot interrupt it) how can we re-program its MPU or MMU if it's an essential part of the core, i.e. only core itself may access its MPU or MMU, but not its peers in the cluster.

I expect you'll want something like an inter-processor interrupt to cause a page table or MPU register re-load. Co-op threads don't disable interrupts.

Right, this is possible, yet we'll need to interrupt the [cooperative] task currently being executed to re-program PMU under its feet, right? And that was exactly my concern - may we interrupt cooperative task in that case?

An IPI interrupt would work, cooperative tasks can be interrupted (when they haven't locked interrupts).
If the interrupt locking is an issue, another solution would be to ensure/enforce no other task is running when changing memory domain settings. Or, at least no other task that is touched by the change (in the same memory domain).

Right, this is possible, yet we'll need to interrupt the [cooperative] task currently being executed to re-program PMU under its feet, right? And that was exactly my concern - may we interrupt cooperative task in that case?

To me this is as simple as sending an IPI and letting the IPI handler (running like any other ordinary interrupt) reprogram the MPU whenever it gets it.
I believe there's no requirement that we need to worry about interrupt locking, if IRQs are disabled on the other CPU for any reason just handle it once unlocked.

(I have do something similar for TLB shootdowns on MMU systems like x86_64 btw, was working on the code today)


Backup using seed words.

When at Level 0, the user should be able to select seed words as an option at Level 1.
When at Level 1, a user can change the backup type to note down the seed words.
This change option does not apply if you are at Level 2 or 3.

Note:  Opting for 12 words seed instead of 24

- The backup now and change backup screen will require additional option of using seed words
UX Link:
https://xd.adobe.com/view/3c76a519-ed48-4944-a7a5-026a2aca5a6d-6925/screen/e0e1d4ab-450e-436e-a563-0b29396f5eb1/

So we’ll need to create a dummy flow @Pawan2792  (till @summikhan11  sends the UX)
Here it is:

We need to have a prompt to ask the user what he/she wanna do(when they hit on any button of level 1)
If they select seed, then we just show the seed on a bottomsheet
If they select anyting else, we make them setup the password and then they can do iCloud or Device/Contact or PDF

Also, the bottomsheet on which we’ve these options of selecting backup method like iCloud, Contact, Device and PDF, on the same bottomsheet we need to have an option for seed as well, upon clicking it we’ll route the user to a screen with a text area on which there will be seed written(or we can reuse the seed bottomsheet that we use a level 0: no-backup-setup scenario)

link is updated,
will work on additonal screens after reviewing the video

@summikhan11 is the link Updated?

https://xd.adobe.com/view/3c76a519-ed48-4944-a7a5-026a2aca5a6d-6925/screen/dd008045-bf2d-46c5-b5c1-fffcf38aa49b/
Seed words

https://xd.adobe.com/view/24cad77c-7eb9-4623-a2dc-edf64b9e4743-7199/screen/96c52b18-a7d3-4d41-91ac-aea5480eae58/
home screens

Verified this issue on dev app v2.0.75(421)


feat: support terraform functions

fixes https://github.com/terraform-docs/terraform-docs/issues/766
solves issue #36

Hello @stevie- ,
thank you very much!
I’ve approved running the workflow awaiting completion.


Download and unarchive geckodriver binary

cc #1

The next step would be to store the binary somewhere in $HOME

The next step would be to store the binary somewhere in $HOME


Get metadata on service parameters

I'm authoring a service catalog as well as a client-side tooling experience for Azure Service Fabric. I'm facing a problem of not knowing what the expected parameters are for a particular service type. For my client-side tools, I want to be able to guide the user to provide correct/necessary parameters when they try to provision a new service instance. However, because the broker is not authored by me, the only way I can find out the parameters is to talk to the team or look at their source code. And I'm afraid if they decided to change parameters my client-side tool will break.
I think there should be a metadata endpoint or alike that allows query parameters of a service class. What are your thoughts on this?

Hi @Haishi2016
Check out this open PR that we expect to be merged soon: #165
Using JSON schemas, service brokers will be able to declare the configuration parameters that can be used for provisioning/updating a service instance and creating a service binding.
I'll close this issue for now, but please feel free to re-open it if that PR doesn't resolve your query. Thanks!


Add extension hook for getManyManyComponents()

What's the usecase for this?

@dhensby We're working on a module that allow many_many relationships support both draft and live modes. The module will just simply duplicate relationship table and add suffix ' _Live '. Extension hook is required for switching relationship table. If some many_many relationship requires this extension and it's in Live mode, the module calls getManyManyComponents() and return a new ManyManyList which $table has ' _Live ' suffix.
e.g.
Draft : Page_Slides
Live : Page_Slides_Live

@willmorgan Thanks for your feedback. The commit has been updated.

We really appreciate this new hook, as we are working on a very similar module (support for stages and versions in many-many relations). Unfortunately there is too few information passed with this hook (at least for us ;)). I would argue to include $componentName in order to allow lookup of additional information (e.g. configurations for the relation).
P.S.: I am not sure if is appropriate to add this comment to an already closed pull request - sorry if not :)

@sb-relaxt-at You could open a new pull request (against the 3 branch) to add that extra information that we could then review.
I’ve found myself needing the relationship name in an extension before, this is how I did it (I’m sure this can be improved, it was kinda rushed). This method builds an array of join table => relation name, and you can fetch the join table with $this->getJoinTable(), so you should be able to use the combination of the two to find the name of the relationship.

Does the ManyMantList not contain this information?

Nope, just join tables, foreign keys and extrafields

I guess we need to add another argument, then :P


read_excel python function error: default value of x in initialize.py needs to be a list for usecols to pass

Describe the bug
The value x remains an int and when passing x as the Usecols argument for read_excel function, it expects a list. The issue is x is being type checked for a float or a string. Only in those cases, is x being converted to a list. But you need a default list value for x if x is any other type (example- integer)
To Reproduce
Steps to reproduce the behavior:

Use same template file: v005
Run converter.py

Expected behavior
X is always converted to list no matter the type
Screenshots
If applicable, add screenshots to help explain your problem.

Additional Context: Recommended Fix

Adding @cjmyers for visibility

I think your fix will cause issues in other cases. I think there should be a better error message but I don't think you should force to list the way you are doing

you can add a further case for x is instance of int though

fixed in commit https://github.com/SynBioDex/Excel-to-SBOL/commit/0cdb25bd87a184740708e1040b511acbae6591f8


Using this as well as Liip Functional Test Bundle?

Apologies that this may not be an issue, but I'm trying to use this as well as the Liip Functional Test Bundle in my tests, which means I need to both extend their WebTestCase and your PHPUnit_Framework_DOMTestCase, but PHP doesn't do multiple inheritance. I notice you have a Trait in your code, but have been unable to use that trait in my Symfony project. Sorry if this is a newbie question, but is it possible to use both without copying/reimplementing your class?

You should be able to extend Liip's WebTestCase class and use the PHPUnit_Framework_DOMTestCase trait in your derived class. Just make sure you include the composer autoloader and handle the namespaces appropriately.

I ended up doing MediaWiki's hack and overriding the assertTag / assertNotTag / tagMatch functions in my abstract test case to duct tape things temporarily. For those of us who really need to test XML/HTML tag structure, the lack of an upgrade path is a real deal-breaker...


FontIcon property added to NavigationItem

Hey, thanks for the PR. I guess if we give the option to add an icon from the font, there should also be an option to select the font itself.

Hey, thanks for the PR. I guess if we give the option to add an icon from the font, there should also be an option to select the font itself.

It's a good idea, I added fontfamily too.


AWS CDK: Document needs to be updated

When we run cdklocal deploy following the example given on https://docs.localstack.cloud/user-guide/integrations/aws-cdk/#example , we get the below error.
Deployment failed: Error: TestStack: SSM parameter /cdk-bootstrap/hnb659fds/version not found. Has the environment been bootstrapped? Please run 'cdk bootstrap' (see https://docs.aws.amazon.com/cdk/latest/guide/bootstrapping.html)

Resolved in https://github.com/localstack/docs/pull/651. Thanks again for reporting & resolving the issue :+1:


[Project] Improve our onboarding experience

Overview
We want our users to be aware of the possibilities of the platform right when they join. We will explore how we could have a unified onboarding flow that asks people joining what features they are interested in (Collecting money, organizing events, paying expenses, host groups, etc.). And help them kick the ground running with the right set of features depending on their goals.Plus, it would give us "one CTA to rule them all" click Join and that's it
Ownership
Owner: @Memo-Es
Design

As a new Open Collective user, it would be helpful if joining the platform included some insights for the experience to feel more personalized. I don't need to know all the complexity between creating a collective or a host, and I can start using the platform with less cognitive load.

Main assumption to test
Suppose we unify the account creation of the platform. In that case, we are simplifying the experience and easing the understanding of the platform, which will result in tighter communities, more participation, and more money flowing through all the different initiatives hosted on the platform.
Opportunities

Incorporate a selection process in the main onboarding depending on the goals of the user
Considering a different way to ask info other than a traditional form
Have a defined landing for new users

Constraints
How are we asking the nitty during the setup? Like the organization's legal name, address, and should we have variable flows depending on the user's selection? Sounds a bit complicated
Related issues

https://github.com/opencollective/opencollective/issues/4768
https://github.com/opencollective/opencollective/issues/4772
https://github.com/opencollective/opencollective/issues/4256
https://github.com/opencollective/opencollective/issues/3758
https://github.com/opencollective/opencollective/issues/3988
https://github.com/opencollective/opencollective/issues/4764
https://github.com/opencollective/opencollective/issues/4240.

Priorities

[x] https://github.com/opencollective/opencollective/issues/5399
[x] https://github.com/opencollective/opencollective/issues/5400

Improving the experience for communities seeking a host #4240
We do not provide the tools needed for a community to find a host that is appropriate for them. They cannot find a host that works in their domain (mutual aid, climate, or open source), accepts projects in their geographic region (global or pacific northwest) or uses their native currency (USD, NGN).
A User-centric approach to activity on Open Collective #6285
Right now our users have to navigate between profiles, and find within them the parts of those profiles that are 'active'. For administrators and people working across a number of Collective, projects, and events this can be quite inefficient and irritating.
There's not a clear separation between the 'working' parts of Open Collective (filing, approving and paying expenses) and the 'profile' parts of Open Collective (my Collective, organisation, personal profile).
For example to file an expense for /opensource I have to go to the profile page and find the right button, instead of having a 'file an expense' button on my (logged in) dashboard at opencollective.com. This is different from an exploratory experience where I might be searching or browsing for projects to support or events to attend etc.
Redesigning our profile pages #5680

Everything on Open Collective looks the same (collectives, users, organisations, projects)

This causes confusion especially between organisations, hosts, collectives, projects and events. Profile pages have very different jobs, depending on what they're for i.e.
Events > sell tickets, attract sponsors
Hosts > accept applications
Users and organisations > say something about myself and share the projects I contribute to
Collectives and projects > attract sponsors, present financial information
Our current page structures and formats are so generic that they limit our ability to effectively meet those needs.
Our current onboarding process requires the user to understand what the platform does and interpret how they might use it to achieve their goals, this is BACKWARDS (SDRAWKCAB).
Instead our onboarding could be user/job-to-be done centric, asking or showing the user what they're here to do/could do and building an appropriate experience around them based on the information they provide. This experience could be incremental (starting with 'I want to support
Separating Open Collective as a tool from Open Collective as a company and platform provider.
There's no separation between the 'platform' and open collective inc's own marketing material. The expeirence isn't focussed enough on you as a user and what you can do with Open Collective once you're registered, as we mix (in our primary navigation etc) marketing and other 'sales' material with actual user needs/tasks etc.
Host Onboarding Process #3758
Our onboarding process for hosts is all or nothing, you have to KNOW that you want to create a host. Instead an incremental experience might enable people to go from being unable to find a host that's appropriate for them, creating an independent Collective, and finally — by learning and gaining confidence in their ability to use the platform — opening themselves up to offer fiscal hosting to other initiatives.
Of course there should still be an onboarding process for those who know what they want. But it probably should be as easy as accidentally clicking 'create a host' :D maybe 'schedule a call' or 'read more about being a host' with an explicit 'I read all the documentation!' checkbox.
Next Steps https://github.com/opencollective/opencollective/issues/4829#issuecomment-1148103264
Short term (Next sprint)

[ ] Get rid of the "For open-source/any community step."
[ ] https://github.com/opencollective/opencollective/issues/5628
[ ] Implement https://github.com/opencollective/opencollective/issues/4240

Short term + (Within a quarter)

[ ] (Shape-up) Admin panel for all users (Collectives, organizations, and users) #6285
[ ] Rethink our profile system #5680
[ ] (Shape-up) Separate platform experience and marketing experience

Mid term (This year 🤞🏼)

[ ] Redesign our profile pages part 2 (Hosts, users, projects, and events)
[ ] Admin panel for all users
[ ] Separate platform experience and marketing experience
[ ] (Shape-up) User-centric approach to activities and tasks in OC. Codename, OC as a workspace

if this is intended to replace any of the related issues above can we close them and reference this issue?

I would only close https://github.com/opencollective/opencollective/issues/4768, the other issues are about different things you do when you have your account already (Creating collectives, host orgs, etc)

2021-W47
I'm putting this one on the back-burner for now. I plan to organize a couple of activities for the upcoming async retreat and a workshop for the live one.

Update: needs more collective thinking and perspective so we'll pick this up at the retreat in Jan.

Update
We are starting this project with a research phase, due by the end of FY22Q1S1. This research phase aims to get some extra information about how people are getting to know us and what their struggles are while they have their first experience using the platform.
We should design a good first experience that works as an engagement/retention tool. Being clear about the features that people can use, displaying them in the right place and amount, so it's not overwhelming, so we help people find how OC can work for them faster.

[ ] Set up calls with host admins
[ ] draft of the document / research plan

Goals for Q1 Sprint 1 Week 4:

[ ] More calls this week. Last team members and collectives recommended by OCF
[ ] User journey template
[ ] Demo the progress

Goals for Q1 Sprint 1 Week 6:

[ ] User journey demo (Reality vs Proposal)

Update
The research phase is done, the next step should be about defining the specs for a short, mid, and long term approach to updating the onboarding flow.
Specific Goals

Short term onboarding flow(Specs)
Midterm onboarding flow (Definition)
Long term onboarding flow (Definition)

Publishing a wrap-up later today, next steps, and implementation notes.

Additional feedback (re: adding admin troubleshooting)
As a host admin, this is a canned reply I have to send quite frequently whenever I asked people to add more admin, and they reply that they have, but the admin do not appear on their page.

I still only see 1 admin on your page here: [link to collective's page, so that they are clear about which page the admin needs to be added to, since there's confusion about people having multiple profile pages]

The first thing to check is that the added admins need to accept their emailed invitation

(They might need to check their spam folder.)

If there is still no invite email, follow these instructions above to resend.
Make sure you clicked 'Save' at the bottom of the Add Admin page.

--some of this will be alleviated when we push the 'Host can set minimum # of admins' flow, but there is still confusion around getting the added admins to appear on the page.

Any time we can remove the requirement to click save, we should. It always
trips people up.

User feedback
We tried the new search engine this morning to look for collectives based in Spain. We filtered the search with the country (only filter we used). And there were only 3 collectives in search result. This is wrong because there are actually plenty of collectives in Spain. The fact we do not really ask collectives to enter this data when creating their page makes the region filter unusable.
I saw that @Memo-Es is proposing to include tags during onboarding: Adding tags in this step will help us categorize Collectives better, improving discoverability and more info about them.
Is it going to also include the region?

+1 -- we do need tags around sector (arts/culture, education, etc.) and
region for grants as well. I just got us $150k that relies upon us
improving the data we can provide the funder about our collectives, too!
On Fri, Apr 22, 2022 at 3:27 PM JF @.***> wrote:

User feedback
We tried the new search engine this morning to look for collectives based
in Spain. We filtered the search with the country (only filter we used).
And there were only 3 collectives in search result. This is wrong because
there are actually plenty of collectives in Spain. The fact we do not
really ask collectives to enter this data when creating their page makes
the region filter unusable.
I saw that @Memo-Es https://github.com/Memo-Es is proposing to include
tags during onboarding: Adding tags in this step will help us categorize
Collectives better, improving discoverability and more info about them.
Is it going to also include the region?
—
Reply to this email directly, view it on GitHub
https://github.com/opencollective/opencollective/issues/4829#issuecomment-1106516106,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVCHQZAI5K45UX4FXFBGBXLVGKSM3ANCNFSM5GA3KPNQ
.
You are receiving this because you commented.Message ID:
@.***>

@jfdh that's kinda what we expected over in #4295

[ ] addressing the lack of usage of country/tags, and how to include them in a sign up flow

was specifically a 'later' problem to solve.

kick off rough notes:
sign in/join flow
We need to be aware of the issue re. creating duplicate accounts and the glide path toward a one time code for authentication.

We'll combine the flows, let's include the 'continue' step to ensure we dont create a load of duplicate accounts. We should include a link to gmail and some info on passwordless logins.
These links are already included in the 'your magic link is on its way'
we'll tackle OTP codes when we tackle OAuth implementation
we need to think about the flow that incorporates multi-factor auth
we also need to think about the account creation flow

onboarding flow
Account creation

we moved from a single login and account creation to org/user because people were creating personal accounts called 'google', so we should ensure that we don't go back to that situation.
@Betree will provide a list of places that you can create an account on the fly (for example through the 'leave a comment' process on updates.

collective creation

should we remove the decision point for 'open source projects, support groups, any community' etc?
we could leave some projects blocked if we do this, we could change the direction from this page to link up to the collective fiscal host settings or the 'who's going to hold the money' part of the onboarding flow.

User feedback
We tried the new search engine this morning to look for collectives based in Spain. We filtered the search with the country (only filter we used). And there were only 3 collectives in search result. This is wrong because there are actually plenty of collectives in Spain. The fact we do not really ask collectives to enter this data when creating their page makes the region filter unusable.
I saw that @Memo-Es is proposing to include tags during onboarding: Adding tags in this step will help us categorize Collectives better, improving discoverability and more info about them.
Is it going to also include the region?
This is actually quite relevant for EU because we need to showcase which collectives are active and where to several institutional actors.

For the country filter to be useful, just like tags, I would suggest we include country as well (as an optional field) when creating a collective. Similar to what is suggested at, https://github.com/opencollective/opencollective/issues/4764
cc: @opencollective/design

@Memo-Es : Also as per today's discussion, maybe we need to also review the two factor authentication page (if it's setup) to see if there's any design changes necessary since that also falls under this sign-up flow.

This only appears when we setup two factor authentication in advanced settings.

[ ] this week, on 'memos onboarding conversations': visualising and prioritising

Meeting notes from Friday, May 20, 2022, 3:15 PM (UTC-5)  Duration: About 1 hour
Onboarding Breakdown:
Top-level project issue https://github.com/opencollective/opencollective/issues/4829
things we're working on now
sign in/join https://github.com/opencollective/opencollective/issues/5399
remove our fiscla host https://github.com/opencollective/opencollective/issues/5400
'small rocks'
Get rid of the "For open source/any community step"
Updates to 'generic' onboarding form
tags
locations
Find a host
A User-centric approach to activity on Open Collective
Right now our users have to navigate between profiles, and find within them the parts of those profiles that are 'active'. For administrators and people working across a number of Collective, projects, and events this can be quite inefficient and irritating.
There's not a clear separation between the 'working' parts of Open Collective (filing, approving and paying expenses) and the 'profile' parts of Open Collective (my Collective, organisation, personal profile).
For example to file an expense for /opensource i have to go to the profile page and find the right button, instead of having a 'file an expense' button on my (logged in) dashboard at opencollective.com. This is different from a exploratory experience where i might be searhcing or browsing for projects to support or events to attend etc.
Separating Open Collective as a tool from Open Collective as a company and platform provider.
There's no separation between the 'platform' and open collective inc's own marketing material. The expeirence isn't focussed enough on you as a user and what you can do with Open Collective once you're registered, as we mix (in our primary navigation etc) marketing and other 'sales' material with actual user needs/tasks etc.
Host Onboarding Process
Previous issue https://github.com/opencollective/opencollective/issues/3758
Our onboarding process for hosts is all or nothing, you have to KNOW that you want to create a host. Instead an incremental experience might enable people to go from being unable to find a host that's appropriate for them, creating an independent Collective, and finally — by learning and gaining confidence in their ability to use the platform — opening themselves up to offer fiscal hosting to other initiatives.
Of course there should still be an onboarding process for those who know what they want. But it probably should be as easy as accidentally clicking 'create a host' :D maybe 'schedule a call' or 'read more about being a host' with an explicit 'I read all the documentation!' checkbox.
Redesign our profile pages

Everything on Open Collective looks the same (collectives, users, organisations, projects)

This causes confusion especially between organisations, hosts, collectives, projects and events. Profile pages have very different jobs, depending on what they're for i.e.
Events > sell tickets, attract sponsors
Hosts > accept applications
Users and organisations > say something about myself and share the projects I contribute to
Collectives and projects > attract sponsors, present financial information
Our current page structures and formats are so generic that they limit our ability to effectively meet those needs.
Our current onboarding process requires the user to understand what the platform does and interpret how they might use it to achieve their goals, this is BACKWARDS (SDRAWKCAB).
Instead our onboarding could be user/job-to-be done centric, asking or showing the user what they're here to do/could do and building an appropriate experience around them based on the information they provide. This experience could be incremental (starting with 'I want to support
SHARED LINKS
https://docs.google.com/presentation/d/1YRTbb5vho5v-CX2dCho80ztfL45sRerWdztZdNmOs7Q/edit?usp=sharing

[ ] formalise next steps based on notes from convo last week.

Next steps summary
Note: Issues are pending
Short term (Next sprint)

[ ] Get rid of the "For open-source/any community step."
[ ] Updates to the 'generic' onboarding form (Tags, location)
[ ] Implement https://github.com/opencollective/opencollective/issues/4240

Short term + (Within a quarter)

[ ] (Shape-up) Admin panel for all users (Collectives, organizations, and users)
[ ] (Shape-up) Separate platform experience and marketing experience
[ ] Rethink our profile system (Likely kickstarted as a workshop in the next retreat for Sept 2022)
[ ] Redesign our profile pages part 1 (Collective page revamp)

Mid term (This year 🤞🏼)

[ ] Redesign our profile pages part 2 (Hosts, users, projects, and events)
[ ] Admin panel for all users
[ ] Separate platform experience and marketing experience
[ ] (Shape-up) User-centric approach to activities and tasks in OC. Codename, OC as a workspace

This is a six-month plan to progress in the onboarding experience based on the research and definition project we engaged in the last 2 sprints
cc @BenJam

I think I'm probably late to the conversation here and I'm not caught up in where we're at currently, but I've been considering more and more that:
Assessing and catering to distinctive audiences is pretty vital when explaining Open Collective to a newbie.
I've started a draft of what my dream home page might look like (I know we've just revamped it, but I'm still facing confusion when presenting it to people, and I don't even know where to direct them to offer clarity.)
Please excuse this very rough draft, but I think it could look someone like this (and then depending on which option you select, you would be presented with next steps. I started on the first one, didn't continue yet)

@kaylarep, I add here a thread by @alanna about the issue of speaking to different audiences. She explains better than I would why we are focusing on one audience only for our main message:

Thanks for this @Memo-Es very helpful to understand this: our target audience for OC is Hosted Collectives -- is it safe to say its, more specifically, the Admins/Organizers of hosted collectives?

Yes, Collective admins :)

Adding this to the pitching process for #5672 specifically.

This project has been prioritised again for the first cycle of 2023 the plan this sprint is (as @memo indicated above) to look again at

Get rid/reasses of the "For open-source/any community step."
#4240
https://github.com/opencollective/opencollective/issues/5628 including (#6077 and #6281, which @gustavlrsn will be leading)

separately we'll be taking a look a the following issues as part of a presence and identity area:

#5680
#6285

As to validate a new UX proposal for the onboarding, the plan is:

Map personas motivations and possible flows (Where people come from)
Analyze current design for the main design barriers, churn reasons and uncertainty zones
See the what the data and interviews can add to that
Gather and analyze some onboarding benchmarks
Set "How Might We", as main objectives of the task (and for each persona)
Work on different hypothesis
Present and get internal impressions with team
Usability test it with the final prototypes to validade with real users

Let me know if there is anything missing @Memo-Es

Week 4

[ ] Design proposal of onboarding improvements

Week 5

[ ] Collect insights on prototype proposals

[ ] Get the A and B prototypes wired up
[ ] Write test cards and set UX Metrics (preparing for next cycle)
[ ] Get feedback from people closely involved on the project

[ ] Finalize UX Copy
[ ] Usability Testing

[ ]  Invite people
[ ]  Set up test tasks and questions on Testing platform
[ ]  Test it!
[ ]  Iteration round (if necesary)
[ ]  Analyze results and validate design

[ ] Design System & UI

@tomsusemihl can you add the outcomes to https://coda.io/d/Make-Open-Collective_dnHLKv7oLV0/User-Research-Center_sulZq#Research-Efforts_tucOn/r18&view=modal


Add ability to restore HD key from CLI

Currently you can only restore HD key from GUI.
This should be added as a CLI feature as well

Was this done? I saw some code come through around this


⚠ Bofrost.nl has degraded performance

In 8d249b2, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 4474 ms

Resolved: Bofrost.nl performance has improved in 44e29f0 after 8 minutes.


pods/exec and pods/attach missing from API one pager

What happened?
Grepping through the api one pager for /exec/ and /attach  doesn't show anything
What did you expect to happen?
The exec and attach API to be documented fully on the API one pager
How can we reproduce it (as minimally and precisely as possible)?
Go to the relevant API one pager page and search for "/exec/" and see there are no results
Anything else we need to know?
No response
Kubernetes version

$ kubectl version
WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short.  Use --output=yaml|json to get the full version.
Client Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.0", GitCommit:"b46a3f887ca979b1a5d14fd39cb1af43e7e5d12d", GitTreeState:"clean", BuildDate:"2022-12-08T19:58:30Z", GoVersion:"go1.19.4", Compiler:"gc", Platform:"linux/amd64"}
Kustomize Version: v4.5.7
Server Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.0+k3s2", GitCommit:"f0ec6a4c127b2c671b271974a2f21783f0e3c525", GitTreeState:"clean", BuildDate:"2023-01-11T21:36:41Z", GoVersion:"go1.19.4", Compiler:"gc", Platform:"linux/amd64"}

Cloud provider

Rancher Desktop

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Install tools

Container runtime (CRI) and version (if applicable)

Related plugins (CNI, CSI, ...) and versions (if applicable)

/triage accepted
/priority backlog
I'm considering revising the one-page API reference into a collection of markdown pages (with nested HTML tables).
The non-standard operations like pods/exec and pods/attach are not included in the current reference generator. Fixing them there may take some time.

I wouldn't mind taking a look at fixing the non-standard operations, unless you're thinking to revise the entire generator.

This is still relevant

/assign

Fixed in https://github.com/kubernetes-sigs/reference-docs/pull/354
https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#get-connect-exec-pod-v1-core
/close


script: Use absolute path for module_initialized check

We should use absolute path for module_initialized check so that we will not get an error when we run the checkout_submodule.py script in non-CHIP_ROOT directory.

Changes requested: web sockets not required for embedded.
If you need web sockets for specific platforms, you probably need it for test scripts. Then you should checkout submodules for multiple platforms: linux for chip-tool builds, other platform for embedded builds.

@andy31415 The libwebsockets is not required by esp32 build, but is required by chip-tool build. For most of the users who want to build esp32 example, they also need to build chip-tool for testing, hence we want to make the libwebsockets available by default for esp32 checkout_submodules. Other Linux modules (except for libwebsockets) are not required by esp32.
If you have some concern on removing, how about adding esp32 under libwebsockets, and a comment to mention it's required by chip-tool?

Changes requested: web sockets not required for embedded.
If you need web sockets for specific platforms, you probably need it for test scripts. Then you should checkout submodules for multiple platforms: linux for chip-tool builds, other platform for embedded builds.

@andy31415 The libwebsockets is not required by esp32 build, but is required by chip-tool build. For most of the users who want to build esp32 example, they also need to build chip-tool for testing, hence we want to make the libwebsockets available by default for esp32 checkout_submodules. Other Linux modules (except for libwebsockets) are not required by esp32.
If you have some concern on removing, how about adding esp32 under libwebsockets, and a comment to mention it's required by chip-tool?

if chip-tool is being compiled for linux, you seem to need the "linux build sub modules". I do not believe libwebsockets is sufficient, you need to say platform linux if you intend to build linux bits.
If you are concerned that platform linux is too large, maybe we figure out some different platform name and we add that as an extra list.

@chshu - my concern is the use case. Right now the individual platform selection was picked for our CI so that CI does not pull more than needed.
CI for embedded (nrf, esp32, others) will explicitly not build chip-tool, so pulling in stuff because chip tool needs it is not helpful for our CI, hence my push back.
if you need to build both, what is wrong with checkout_submodulese.py (no platform ... will pull all ... and be slow) or checkout_submodules.py --platform linux --platform esp32 and then you have all is needed for both esp32 and native builds.

The correct syntax seems to be:
scripts/checkout_submodules.py --platform esp32 linux

kind of not intuitive ... but it works. Maybe we can improve ergonomics a bit and accept --platform esp32,linux for clarity.

@andy31415 Ok, understood your concern on the CI size.

If you are concerned that platform linux is too large, maybe we figure out some different platform name and we add that as an extra list.

--platform esp32,linux works, and a different platform (perhaps only for building tools) would be good to have.


attachment button moving left

Hi,
I am facing a UI issue.
I have set camera icon hidden. i start recording, on sending/locking/stopping moves the attachment option move left. It looks like camera button is invisible and not gone.

Piyush, thanks for reporting, on these actions manually make the view visibility gone like this
audioRecordView.getCameraView().setVisibility(View.GONE);
Manage for now, I'll fix this in next version..

Thanks, it worked.


spelling

I'm wondering if you're interested in a series like this.
https://github.com/jsoref/TypeScript/commits/spelling-full
has the individual changes.
I can split it into pieces if requested.

Hi @jsoref, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

I'm sorry, this is kind of crazy. Having a spell checker run on all files in a repository is not an acceptable sort pull request on its own, and not just for our project. I encourage you to please read all READMEs, CONTRIBUTING.md, and coding guidelines for repositories you are intent on contributing to.
There are certain directories and files that are not expected to be changed. Specifically, check out README.mds for certain directories where files were changed - directories to watch out for are tests/cases, lib, and docs. Anything found in docs should get an issue.
Code was actually broken here. Generated names shouldn't be touched at all since they're, well, generated and for a reason.
Furthermore, several changes were actually wrong (i.e. "expressing" changed to "expressiong"). Please make an effort to supervise spelling changes before sending them out for review.
I understand that you have good intent, but reviewing this sort of thing takes a long time for team members and is error prone. It also makes code attribution harder (i.e. git blame for specific lines). We'd potentially consider taking in a few spelling corrections a day.

I would love to see this broken up into reasonable chunks, probably one per gigantic file we have, a few that group up smaller source files, and then a separate PR for the error messages that has three commits -- one for diagnosticMessages.json, one for all the downstream changes in source, and one for the error baselines. That should be pretty easily reviewable (I :heart: copy editing so... yea)
Also, don't bother changing anything under tests. These are only ever seen by us and just excluding will help a lot.

@RyanCavanaugh: if you could identify lists of files you'd like as sets, I can certainly do that.
as noted, https://github.com/jsoref/TypeScript/commits/spelling-full has one commit per word family, which I generally find easier to review.
Each group has its own preferred way to review such things. The approach I took w/ ChakraCore was different than this one.

I think this set of groups should produce manageable diffs:

checker.ts
services.ts
parser.ts and binder.ts
Everything else under /src/compiler
Everything else under /src/
diagnosticMessages.json (do this after all the others so we don't see error message diffs in the other groups)
tests/baselines/* that are different due to diagnosticMessages.json

To clarify, everything else under src/compiler that isn't generated.

@RyanCavanaugh checker.ts is now #6932
I'm going to keep https://github.com/jsoref/TypeScript/commits/spelling-full up to date with the full series of changes, and I'll probably create a series for them for people to monitor (spelling-split).
I'll also strip out the tests/baselines from the patches next week (by moving them into a deletion commit "ignore").
Some repositories have pull-request hooks to automatically run commit tests and things, it was interesting to see that this one does not.

services.ts is now #6988


docs update with android bluetooth permissions

Summary

Test Plan

What's required for testing (prerequisites)?
What are the steps to reproduce (after prerequisites)?
Compatibility

OS
Implemented

iOS
✅❌

Android
✅❌

Checklist

[ ] I have tested this on a device and a simulator
[x] I added the documentation in README.md
[ ] I mentioned this change in CHANGELOG.md
[ ] I updated the typed files (TS and Flow)
[ ] I added a sample use of the API in the example project (example/App.js)

@pktippa BLUETOOTH permissions are not at level dangerous: https://developer.android.com/reference/android/Manifest.permission#BLUETOOTH
I'm pretty sure they are not requestable.


Maximum health decrease curse effect

An effect that would temporarily decrease the maximum health. It appears this can't be done with potion effects anymore, but it looks like there are spigot methods for it.

Something along the lines of
void applyEffect(Player player) {
    AttributeModifier modifier = new AttributeModifier(UUID, "Curse Health Debuff", -strength, AttributeModifier.Operation.ADD_NUMBER);
    player.getAttribute(Attribute.GENERIC_MAX_HEALTH).addModifier(modifier);
}

public void cleanUp(Player player) {
    player.getAttribute(Attribute.GENERIC_MAX_HEALTH).getModifiers().removeIf(m -> UUID.equals(m.getUniqueId()));
}

That looks good. Feel free to start working on that, I could assign the issue to you if you're unable to assign yourself.

To implement this in a safe and robust way I would rewrite the curse system as a separate plugin, while trying to keep as much the same as possible, if that's fine with @Derongan


mime-types 3?

Would allowing newer versions of the mime-types gem be feasible at the moment?  It looks like, barring use of deprecated methods, it should be a pretty painless changeover...

The mail gem depends on mime-types 1.x or 2.x.  The mail gem is used by Rails, so if we were restricted to mime-types 3.x we won't be compatible with rails.
If we supported 1.x through 3.x it would be OK.

@MrJoy Would you show us how mechanize does not work well with mime-types?  At least I fixed the test suite to work with mime-types 3.x, but haven't looked into real-world use cases.

The upcoming (currently in rc2) mail gem 2.6.4 supports mime-types 3.0, so mechanize could update its gemspec soon.

legacy rails apps will be using legacy mail, so mechanize will still need to be flexible with its dependecy

Wouldn't that imply that running mechanize in an app that requires mail >= 3.0 for some reason will not be possible?

I'll remove the "< 3" requirement later.  I thought I had done that already.

@knu The "< 3" requirement is still in mechanize.gemspec – looking forward to the removal, thanks a lot!

+1 3th version has memory optimizations. What status on that?

Sorry, this just slipped from my todo list.

@knu Are you planning release it with bump version soon?

@knu As this issue seems to have been fixed 10 weeks ago: is there anything holding back bumping the version so we can use mime-types 3.x? Thanks!

@knu In case there is a problem that needs to be fixed before bumping the version, could you share the specifics? Maybe we can assist. Thanks.

Finally, I've rolled out a new release 2.7.5.  I'd appreciate if any of you could check it out and give some feedback on this!


fix(ts): Update bucket options types

Fixes #346

[ ] Tests and linter pass

I did not check.

[ ] Code coverage does not decrease (if any source code was changed)

I did not check.

[ ] Appropriate docs were updated (if necessary)

I have not read all the docs, but the comments already suggested that this was possible, now the code is in harmony with them.

@JustinBeckwith I think the test is wrong, see https://cloud.google.com/nodejs/docs/reference/storage/2.0.x/Storage and comments in #346.

@JustinBeckwith CLA help?


Enhancer Issue

I have noticed that Enhancer &without Enhancer output processed video is having the same size & there is no difference in quality of the video.
For eg : Output video size without enhancer is 12 MB
Output video size with enhancer is also 12 MB
Can you pls Assist on this.
Thank You

Thank you for pointing out the issue, it has now been fixed.


not compiling on Mac, unresolved import super::dx12

I tried updating iced to 93fec8d273ef8305e1c2456abe0c8ecd7a9d9407 (Sept. 13).  When I run cargo b in the iced crate, it compiles, however when I try to compile my own code, I get this error:
error: DX12 API enabled on non-Windows OS. If your project is not using resolver="2" in Cargo.toml, it should.
  --> /Users/david.jaffe/.cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-hal-0.10.6/src/lib.rs:47:1
   |
47 | compile_error!("DX12 API enabled on non-Windows OS. If your project is not using resolver=\"2\" in Cargo.toml, it should.");
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0432]: unresolved import `super::dx12`
  --> /Users/david.jaffe/.cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-hal-0.10.6/src/lib.rs:62:20
   |
62 |     pub use super::dx12::Api as Dx12;
   |                    ^^^^ could not find `dx12` in the crate root

This is on a Mac.  I tried cargo update but that did not resolve the problem.  I also tried lowering the version of wgpu-hal to 0.10.3.  Any ideas?

If your project is not using resolver="2" in Cargo.toml, it should.

Is your project using workspaces? If so did you add resolver="2" to the root Cargo.toml?

Figured it out.  I had thought that resolver="2" was referring to a crate called resolver.  It is not.  It is referring to a directive that one puts in one's Cargo.toml.


Research - Dynamically create endpoints on request

Python sdk has a method create_endpoint -- research if this would allow us to dynamically create endpoints on the fly, making it so we can do globus file transfers without the need for a receiving ep.

deprecated as of v5


Is this https ready?

I'm using GitHub Pages.
According to this article:
https://help.github.com/en/articles/securing-your-github-pages-site-with-https
"If you enable HTTPS for your site, and your site's HTML still references images, CSS, or JavaScript over HTTP, then your site is serving mixed content, and you may have trouble loading assets. Serving mixed content also makes your site less secure."
Thanks!
w4rner

When I actually type in https://agileEducation.co ( https://agileeducation.co/ ) , it is secure:
. But when I just type the naked domain agileEducation.co ( http://agileeducation.co/ ) it redirects to a Not Secure version:
Do I actually need the CloudFlare implementation, or do I just simply need to make sure it redirects to an https version?
Thanks,
w4rner
On Tue, Aug 27, 2019 at 11:40 PM, Robert Peters <<EMAIL_ADDRESS>> wrote:

If the goal is github pages and SSL see this:
https:/ / blog. cloudflare. com/ secure-and-fast-github-pages-with-cloudflare/
(
https://blog.cloudflare.com/secure-and-fast-github-pages-with-cloudflare/
)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub (
https://github.com/BlackrockDigital/startbootstrap-landing-page/issues/71?email_source=notifications&email_token=AHP6SEWXEEB2GUTT75AAI7DQGWUO7A5CNFSM4IFJ67C2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5JKSDQ#issuecomment-525510926
) , or mute the thread (
https://github.com/notifications/unsubscribe-auth/AHP6SET4SLX3H3AL4ZD5DITQGWUO7ANCNFSM4IFJ67CQ
).

In the end, I just ticked here:


Importing/refresh sub_modules not working

If my main.py is calling and importing a modules or sub-modules with this structure:
module
-- file.py
main.py

the file.py will not be refreshed, but it will be correctly imported when Rhino/Gh is open for the first time.

Solved on 1148fee.


CORE-8954 Notary Batch Signature

Implement Batch signatures in TransactionSignatureService and use it for creating the notary signatures.
Test notes:

Smoke tests pass.
Relevant tests got adjusted.
The findMyKeys service's check and test got removed.
TransactionSignatureService could use some unit tests against the different batch input edge-cases.

API: https://github.com/corda/corda-api/pull/806

My only real concern is around ensuring you can't take a merkle tree out of context and craft a fake batch signature - I think that still needs very careful thinking through and possibly a check against a hard-coded list.
Otherwise a few minor niggles, and error message clarifications.

When we (re)create the wireTransaction objects we do a check if the digest settings match with the default settings:
https://github.com/corda/corda-runtime-os/blob/release/os/5.0/libs/ledger/ledger-common-data/src/main/kotlin/net/corda/ledger/common/data/transaction/factory/WireTransactionFactoryImpl.kt#L101
        check(metadata.getDigestSettings() == WireTransactionDigestSettings.defaultValues) {
            "Only the default digest settings are acceptable now! ${metadata.getDigestSettings()} vs " +
                    "${WireTransactionDigestSettings.defaultValues}"
        }

We can add some more checks checks to the TransactionSignatureService too if you prefer.


How to get AST with pretty dump before simplify

When i debug for frontend infra of codon, i found there is no existing api to dump the raw AST like that SimplifyVisitor can dump a S-expr string. The api like this code comment, or is a better method to dump to a "_dump_ast.sexp"? So there will be intuitively to diff raw ast with simplify ast.
ast::StmtPtr codeStmt = isCode
                            ? ast::parseCode(cache.get(), abspath, code, startLine)
                            : ast::parseFile(cache.get(), abspath);

///
// api like: codeStmt->dump();
// or:       ast::SomeVisitor::apply(std::move(codeStmt));
///

cache->module0 = file;

Timer t2("simplify");
t2.logged = true;
auto transformed =
    ast::SimplifyVisitor::apply(cache.get(), std::move(codeStmt), abspath, defines,
                                getEarlyDefines(), (testFlags > 1));
LOG_TIME("[T] parse = {:.1f}", totalPeg);
LOG_TIME("[T] simplify = {:.1f}", t2.elapsed() - totalPeg);

if (codon::getLogger().flags & codon::Logger::FLAG_USER) {
  auto fo = fopen("_dump_simplify.sexp", "w");
  fmt::print(fo, "{}\n", transformed->toString(0));
  fclose(fo);
}

And i noticed if i dump a test python file to codon simplify sexp or cir, it would load all sexpr/cir produced by stdlib, and it would cause to produce a large ir file with more information that does not need attention for the moment. Is there a way to avoid this? thank you!

Ho @CanftIn,
Right now, there is no user-facing AST API (and the whole simplify stage will be removed in the next version). You can print any AST in codon via LOG("{}", node->toString(0));.
You can also run codon with CODON_DEBUG=lt that will produce dump files that you can use for diffing. It's honestly a bit ugly at the moment, but handles well diffing and other simple operations.


HTTP API Documentation

For full information about how to use our HTTP API, please see the documentation.

This link to see the documentation goes to https://gopostal.io/~/http-sending which returns a 404.
I suppose there should be a documentation section on the actual installation instance.

I'll update the link.
https://github.com/atech/postal/wiki/Using-the-API

Closing in favour of #1030


[GOBBLIN-1908] Fix Date to Milliseconds Conversion to Use UTC

Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[X] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-XXX] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-1908

Description

[X] Here are some details about my PR, including screenshots (if applicable):
We had previously assumed the Date object returned from a Trigger uses the system default timezone, but taking a look at the javadoc and runtime values have shown it is already in UTC so we update our conversion function. To prevent further confusion about timezones, we also log the conversion that assumes the Date object is in system default timezone to make it easier to debug.

Tests

[X] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[X] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report

Merging #3772 (1f2fb09) into master (d6f546e) will decrease coverage by 3.82%.
Report is 1 commits behind head on master.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #3772      +/-   ##
============================================
- Coverage     49.74%   45.93%   -3.82%
+ Complexity     9438     2175    -7263
============================================
  Files          1767      416    -1351
  Lines         69294    17981   -51313
  Branches       7888     2189    -5699
============================================
- Hits          34471     8259   -26212
+ Misses        31636     8841   -22795
+ Partials       3187      881    -2306

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


Add an initial state in httpScript

Adds the initialState parameter when executing a request
Example
httpScript(
  'g :1234/user/$user.id',
  request,
  { user: { id: 1 } } // < Initial State
)

Do you want to httpScript to be overloaded with another method including the initialState parameter or just add the initial state parameter to the existing method?

The second option something like:
httpScript(script, httpRequest, state = {})

Completed


JavaScript / NodeJS backend

I don't currently have the time to look into creating this myself, but it would be nice to have a NodeJS backend, since as far as I can find no similar project currently supports both Python and NodeJS.

Yes, Node backend would be nice!


🐞 [BUG] - OUR FEATURED INTERNSHIPS card are not aligned

Description
The suggested intenship section's card are not well aligned.
Current behaviour

Expected behaviour

it has to be like this.
Reproduction steps
1. Go to 'Home'
3. Scroll down to 'Our Featured Intenships'
4. See error

Screenshots

Logs
No response
Browsers
Chrome
OS
Windows
Are you contributing for a program ?
Other
Code of Conduct

[X] I have read and agree to the Contributing Guidelines of this project.

please assign this issue to me .


Update box2d on version 3.0.0 for windows x64

[x] Changes comply with the maintainer guide.
[ ] SHA512s are updated for each updated download.
[ ] The "supports" clause reflects platforms that may be fixed by this new version.
[ ] Any fixed CI baseline entries are removed from that file.
[x] Any patches that are no longer applied are deleted from the port's directory.
[] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

The cmake config is useful but not on the right track IMO.

When not provided by upstream, package and targets should be prefixed as "unoffical".
https://learn.microsoft.com/en-us/vcpkg/contributing/maintainer-guide#add-cmake-exports-in-an-unofficial--namespace
It is too complex. Either patch the CMake build for an export, or restrict yourself to a single, minimal CMake config file.
Mind release-only builds. (No extra work if you patch the CMake build.)

Duplicate of #41473