misleading error when import client module in server component

// "use client" <-- forget to add this
import { useFormState } from "react-dom"
import { generateResponse } from '../actions/chat.js'

export function Client () {
  const [state, dispatch] = useFormState(
    generateResponse,
    null
  )
  return (
    <div>
      {state}
      <button
        onClick={() => {
          dispatch()
        }}
      >
        Generate Response
      </button>
    </div>
  )
}

nice catch. let's target v0.20.

Error: [vite] Named export 'useFormStatus' not found. The requested module 'react-dom' is a CommonJS module, which may not support all module.exports as named exports.
CommonJS modules can always be imported via the default export, for example using:

import pkg from 'react-dom';
const {useFormState, useFormStatus} = pkg;

is the error I get now.
Do you think we can improve it more?

@himself65 What do you think the error should be? What do you suggest for that?

"Seems like you are importing Client Component on the server side. Please add "use client" on the file" or something.

try to remove "react-server" condition and compile again, if it works so it's a CSC

Wouldn't it be too much work to tackle for the moment?

useFormState was deprecated, so as<EMAIL_ADDRESS>I tested to import useActionState in RSC. it occurs the error below:

Thanks. It feels less misleading.
I'll close this issue as it's mitigated.
But, in general, error messages are not good and there's huge room for improvement. It's just not only this.


fix: Argument must be passed by reference, value given issue

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 94.16%. Comparing base (db59b08) to head (fdc107f).
Report is 8 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff              @@
##             master      #85      +/-   ##
============================================
- Coverage     94.41%   94.16%   -0.26%
- Complexity      262      266       +4
============================================
  Files            34       34
  Lines          1039     1045       +6
============================================
+ Hits            981      984       +3
- Misses           58       61       +3

Flag
Coverage Δ

os-ubuntu-latest_php-8.1
94.16% <100.00%> (-0.26%)
:arrow_down:

os-ubuntu-latest_php-8.2
94.16% <100.00%> (-0.26%)
:arrow_down:

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Strip types not working?

Hey there, cool work!
I spotted that when I had code like:
export const getInitialCode = (fallback: string, location: Location) => {}

It would be converted into:
export const getInitialCode = (fallback: string, location: Location) => {}

Which was used inside a .jsx file - causing a type error.
The settings were the default in the React example, using v0.2.1:
  civetPlugin({
      stripTypes: true,
      outputExtension: 'jsx',
      outputTransformerPlugin: 'vite:react-swc',
    }),

( I fixed by switching the output to tsx)

stripTypes should be working now, in v0.2.3.  Let us know if you run into this issue again!


[Darwin] Duplicate MTRDevice with git cp

I'm not sure this would help after a merge-squash but here it is.

welp

Closing this, as this is causing more work than is worth it.


Fix for BR2 integrator [br2-fix]

Removes an unnecessary factor of 0.5 in the BR2 integrator penalty term for DG diffusion. BR2 should always work with kappa = 0, eta = 1, but it was failing (the operator was indefinite) for highly distorted meshes.
Thanks to @smsolivier for bringing this to my attention.

PR
Author
Editor
Reviewers
Assignment
Approval
Merge

#2579
@pazner
@tzanio
@tzanio + @brendankeith
09/28/21
09/28/21
⌛due 10/05/21

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

Merged in next for testing...

@smsolivier, in the last commit I changed the coefficient from factor*sqrt(eta) to sqrt((factor + 1)*eta).
I believe this should be correct, because this factor is squared in the end, and the requirement should be that it is (strictly) greater than the number of faces of a given element.
However, I noticed that with k = 0, e = 1, this will fail on the 3point mesh. I suspect that this might be because the computation of the lifting operators is ill-conditioned on such a stretched mesh (in other words, the method is ok analytically, but fails numerically). Running with a larger value of eta works fine.
What do you think?

That's another good catch. I tested sqrt((factor +1)*eta) on my end and it seems to work well on the 3point mesh. I am effectively testing a problem where the diffusion coefficient -> 0 though. I think it works because the other terms are scaled by the small diffusion coefficient which makes the BR2 term relatively larger. If I scale the BR2 term by the diffusion coefficient I see the behavior you mention where k=0, eta=1 fails but even just k=0, e=2 works.
I implemented this scaling by just modifying the MassIntegrator constructor on line 62 to accept a coefficient that is passed in through the constructor of DGDiffusionBR2Integrator. Not sure if this would be a good addition or not. It does prevent over penalization in my test case when the diffusion coefficient -> 0 but with the right solvers I haven't seen over penalization cause any issues.

Yes, I think that accepting a coefficient will be a good addition.
Does adding the coefficient to the mass integrator on line 62 really do the right thing? It seems to me like that will actually do the opposite of what we want, because the mass matrix inverse appears in the lifting operators (e.g. a diffusion coefficient c will then scale the BR2 penalty by 1/c).
Instead, maybe it makes more sense to put the coefficient in in the weight w (together with eta).

Yes, you're right about the matrix inversion. I pass in 1/c to the mass integrator so that the BR2 term will be scaled by c in the end. I like this because it emulates taking the Schur complement of an LDG discretization of the flux form. In flux form, its common for the (1,1) block to be scaled by 1/c so that the derivative terms in the vector and scalar equations are symmetric.

@smsolivier, I just pushed a version with a coefficient. It's a bit different approach than what you described, but I think it should work properly. Does it look OK to you?
Sorry to the reviewers for making these changes after the PR was already reviewed…

Yep looks good. I think that should work. Maybe an average of the coefficient on the face would be better? Not sure how much that would matter.

Yep looks good. I think that should work. Maybe an average of the coefficient on the face would be better? Not sure how much that would matter.

Good idea, I think that would line up with what the DGDiffusionIntegrator does. I made the change.


9.5.Release Build for HPHX-24099,23708

9.5.Release Build for HPHX-24099,23708

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 3 committers have signed the CLA.:white_check_mark: vishwanathan-m1:x: amitaG-HCL:x: mark-bengeYou have signed the CLA already but the status is still pending? Let us recheck it.


Feature: allow tagging of AWS interfaces and EIPs with custom tags

User would like to add unique tags per NIC and EIP. Currently, the var.tags is available but it is applied to all resources.
Use Case
The use case would be for F5 Cloud Failover Extension to satisfy AWS requirements in which NICs and EIPs must be tagged with the failover labels, nic maps, and VIP IPs. Specifically the primary IP on the external NIC must be tagged with 2 tags for example. Then the public IPs must be tagged too.
https://clouddocs.f5.com/products/extensions/f5-cloud-failover/latest/userguide/aws.html#define-aws-network-infrastructure-objects
Current behavior
Successful deployment of BIG-IP, but all NICs are tagged the same. There is no way to specify unique tags per NIC. In order to setup HA failover, manual workaround needed to add tags after deployment to NICs and EIP is needed.
Workaround
Must retrieve NIC info based on instance ID, then must do a tag resource. However, terraform recommends against using both tag resource and the resource itself due to overriding of each other. So...you must go enable the tag manually after. Still though, since the BIG-IP module doesn't contain those tags in state...upon next run...it will wipe out the values.
# BIG-IP 1 external NIC info
data "aws_network_interface" "bigip_ext" {
  filter {
    name   = "attachment.instance-id"
    values = [module.bigip.bigip_instance_ids]
  }
  filter {
    name   = "tag:Name"
    values = ["BIGIP-External-Public-Interface-0"]
  }
}

Then tag...
# Add Cloud Failover tags to BIG-IP 1 NICs
resource "aws_ec2_tag" "bigip_ext_label" {
  resource_id = data.aws_network_interface.bigip_ext.id
  key         = "f5_cloud_failover_label"
  value       = format("%s-%s", var.projectPrefix, random_id.buildSuffix.hex)
}
resource "aws_ec2_tag" "bigip_ext_nicmap" {
  resource_id = data.aws_network_interface.bigip_ext.id
  key         = "f5_cloud_failover_nic_map"
  value       = "external"
}

Retrieve EIP info...
# BIG-IP 1 Public VIP info
data "aws_eip" "bigip_vip" {
  public_ip = module.bigip.public_addresses["external_secondary_public"][0]
}

Tag EIP...
resource "aws_ec2_tag" "bigip_vip_label" {
  resource_id = data.aws_eip.bigip_vip.id
  key         = "f5_cloud_failover_label"
  value       = format("%s-%s", var.projectPrefix, random_id.buildSuffix.hex)
}
resource "aws_ec2_tag" "bigip_vip_ips" {
  resource_id = data.aws_eip.bigip_vip.id
  key         = "f5_cloud_failover_vips"
  value       = "${local.vm01_vip_ips.app1.ip},${local.vm02_vip_ips.app1.ip}"
}

Suggestion
Add ability for the module parameters on the subnet lines to take additional tags.
Current...
module "bigip" {
  source                     = "F5Networks/bigip-module/aws"
  prefix                     = format("%s-3nic", var.projectPrefix)
  mgmt_subnet_ids            = [{ "subnet_id" = var.mgmtSubnetAz1, "public_ip" = true, "private_ip_primary" = "" }]
  mgmt_securitygroup_ids     = [var.mgmtNsg]
  external_subnet_ids        = [{ "subnet_id" = var.extSubnetAz1, "public_ip" = true, "private_ip_primary" = "", "private_ip_secondary" = "" }]
  external_securitygroup_ids = [var.extNsg]
  internal_subnet_ids        = [{ "subnet_id" = var.intSubnetAz1, "public_ip" = false, "private_ip_primary" = "", "private_ip_secondary" = "" }]
  internal_securitygroup_ids = [var.intNsg]
}

With tags...
module "bigip" {
  source                     = "F5Networks/bigip-module/aws"
  prefix                     = format("%s-3nic", var.projectPrefix)
  mgmt_subnet_ids            = [{ "subnet_id" = var.mgmtSubnetAz1, "public_ip" = true, "private_ip_primary" = "" }]
  mgmt_securitygroup_ids     = [var.mgmtNsg]
  external_subnet_ids        = [{ "subnet_id" = var.extSubnetAz1, "public_ip" = true, "private_ip_primary" = "", "private_ip_secondary" = "", "more_tags_here" = "" }]
  external_securitygroup_ids = [var.extNsg]
  internal_subnet_ids        = [{ "subnet_id" = var.intSubnetAz1, "public_ip" = false, "private_ip_primary" = "", "private_ip_secondary" = "", "more_tags_here" = "" }]
  internal_securitygroup_ids = [var.intNsg]
}

To be clear, the tagging should allow specific tagging of the NIC in addition to the EIP created by the module.

Similar feature needed in Azure repo too - https://github.com/F5Networks/terraform-azure-bigip-module/issues/33

This request is now being tracked internally with ID INFRAANO-862. Thanks!


Revising Monotone Least Squares as python notebook

Draft PR with .ipynb file

Hi @rubiop! I guess that you coded the notebook in google colab, saved the notebook as a *.ipynb file and transformed into the python file via jupytext. Is that correct?

Hi @rubiop! I guess that you coded the notebook in google colab, saved the notebook as a *.ipynb file and transformed into the python file via jupytext. Is that correct?

@bonh That's absolutely correct... I saw that there was a bunch of specifications that remains after the jupytext transformation, I was hoping this won't be an issue. Is it? Do you know if there is way to clean that? I use jupytext --to py mynotebook.ipynb to transform my notebook, maybe there is some other option to specify.

I am working on it and will hopefully come up with a nice solution...


[Forecasted Pipeline] Add forecast-specific fields to OpenAPI schema definition

Blocked by
N/A
Blocks

#869

Why is this issue important?
We want to ensure that published GrantModificationEvents emitted by this service are well-defined for downstream consumers. Now that we are planning to include data about forecasted grant opportunities in these events, the OpenAPI schema definition should be updated to reflect the new data fields.
Current State
Fields specific to forecasted grant opportunities are absent from the openapi/openapi.yaml file, which serves as the official spec for events published to AWS EventBridge by the PublishGrantEvents Lambda function.
Expected State
The OpenAPI schema includes definitions for the new fields. (See https://github.com/usdigitalresponse/grants-ingest/issues/330, along with https://github.com/usdigitalresponse/usdr-gost/issues/3212#issue-2372968120 for more details) on the fields that need to be documented.
Implementation Plan
Update the Grant object type schema definition.
While not set in stone (I'm certainly open to discussion), consider the following proposal for how to incorporate the new fields:

Add the following fields to the Grant object schema:

forecasted_estimations (open to better naming suggestions here)

not required
$ref to a (currently undefined) ForecastedEstimations object type (see below).

fiscal_year

not required
string type, with year format
min/max (i.e. fixed) length of 4 characters
regex pattern ^\d{4}$

Add the following fields to the GrantorContact object schema:

name

not required
string type

phone

not required
string type

Define a schema for a new ForecastedEstimations (again, feel free to suggest a better name) object type with the following fields:

award_date

not required
string type, with date format

project_start_date

not required
string type, with date format

synopsis_close_date

not required
CloseDate type (as a $ref)

synopsis_post_date

not required
string type, with date format

Relevant Code Snippets
No response

@TylerHendrickson which field does forecasted_estimations map to in the list of new columns to be added in 3212 ? Just trying to understand the diff between this list and the one Jeff drafted in that ticket, where there are proposed columns estimated_synopsis_close_date_explanation and is_forecasted.

@masimons Just recapping what we discussed in the meeting today:

In the proposal above, forcasted_estimations maps to a a new container object type (proposed name ForecastedEstimations in the OP) type for other fields to-be-populated from values pulled from the source XML:

EstimatedAwardDate -> .forecasted_estimations.award_date
EstimatedProjectStartDate -> .forecasted_estimations.project_start_date
EstimatedSynopsisCloseDate -> .forecasted_estimations.synopsis_close.date (where .forcasted_estimations.synopsis_close_date is itself an object of type CloseDate)
EstimatedSynopsisCloseDateExplanation -> .forecasted_estimations.synopsis_close.explanation (where .forcasted_estimations.synopsis_close_date is itself an object of type CloseDate)
EstimatedSynopsisPostDate -> .forecasted_estimations.post_date

Some of these fields are arguably duplicitous – the proposal treats them as distinct fields ("these are the values which are estimated for the forecast") which will presumably eventually align with extant fields once the Grant is no longer forecasted

e.g. .forecasted_estimations.synopsis_close.date is relevant for forecasted grants, but once the grant is fully published (and no longer a forecast), the relevant value would be .opportunity_milestones.close.date.
Therefore, there's an argument that, contrary to my above proposal, we reuse the values (e.g. just populate EstimatedSynopsisCloseDate -> .opportunity_milestones.close.date until the grant is no longer being forecasted, at which point the mapping becomes CloseDate -> opportunity_milestones.close.date).

I can think of reasons why it would be useful to treat them as distinct, but perhaps reusing existing fields would help promote clearer semantics – in particular, that a forecasted grant is a grant that just hasn't been opened yet, is still subject to change, and therefore has estimated values instead of official ones.

IIRC is_forecasted was meant to just be a helper value on the Finder side to help disambiguate database records in the grants table. Rather than creating a discrete field on this schema, I think it would be better to derive that based on whether post_date is in the past or future.

@masimons Just recapping what we discussed in the meeting today:

In the proposal above, forcasted_estimations maps to a a new container object type (proposed name ForecastedEstimations in the OP) type for other fields to-be-populated from values pulled from the source XML:

EstimatedAwardDate -> .forecasted_estimations.award_date
EstimatedProjectStartDate -> .forecasted_estimations.project_start_date
EstimatedSynopsisCloseDate -> .forecasted_estimations.synopsis_close.date (where .forcasted_estimations.synopsis_close_date is itself an object of type CloseDate)
EstimatedSynopsisCloseDateExplanation -> .forecasted_estimations.synopsis_close.explanation (where .forcasted_estimations.synopsis_close_date is itself an object of type CloseDate)
EstimatedSynopsisPostDate -> .forecasted_estimations.post_date

Some of these fields are arguably duplicitous – the proposal treats them as distinct fields ("these are the values which are estimated for the forecast") which will presumably eventually align with extant fields once the Grant is no longer forecasted

e.g. .forecasted_estimations.synopsis_close.date is relevant for forecasted grants, but once the grant is fully published (and no longer a forecast), the relevant value would be .opportunity_milestones.close.date.
Therefore, there's an argument that, contrary to my above proposal, we reuse the values (e.g. just populate EstimatedSynopsisCloseDate -> .opportunity_milestones.close.date until the grant is no longer being forecasted, at which point the mapping becomes CloseDate -> opportunity_milestones.close.date).

I can think of reasons why it would be useful to treat them as distinct, but perhaps reusing existing fields would help promote clearer semantics – in particular, that a forecasted grant is a grant that just hasn't been opened yet, is still subject to change, and therefore has estimated values instead of official ones.

IIRC is_forecasted was meant to just be a helper value on the Finder side to help disambiguate database records in the grants table. Rather than creating a discrete field on this schema, I think it would be better to derive that based on whether post_date is in the past or future.

@masimons

The more I think about this, the more I think that "re-using" current fields is the cleanest way to go.

I think I agree; I'll update the proposal on this OP for this issue. Thanks for the feedback!
(cc @joshgarza – I'll flag in a separate comment once I've made those changes to the ticket so you know this is ready for work.)

Sprinkling some documentation assets around:

Federal Grants data field mappings spreadsheet
LucidChart diagram (companion to the above) collaboration

View-only diagram published 2024-07-29

@TylerHendrickson just wondering if you and josh were able to chat this week about how to model the estimated end date and open/post date for the forecasted grants? have we solidified that yet?

@masimons Just a heads-up that the implementation plan for this ticket has been revised (should be for the last time).


Config routeRules with runtimeConfig values

Environment

Operating System: Darwin
Node Version:     v18.14.0
Nuxt Version:     3.5.3
Nitro Version:    2.4.1
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      runtimeConfig, typescript, css, build, hooks, vite, modules, gtm, devtools
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Reproduction
https://stackblitz.com/edit/github-p8jezy?file=nuxt.config.ts,package.json

Run npm run build
Run NUXT_REDIRECT_URL="test" node .output/server/index.mjs to overwrite runtimeConfig
Go to page /register (redirection is set in routeRules)

Describe the bug
When I add the routeRules in nuxt.config.ts like this it works
routeRules: {
        // Homepage pre-rendered at build time
        '/agb': { prerender: true },
        '/datasecurity': { prerender: true },
        '/imprint': { prerender: true },
        '/cs/api/**': { proxy: `${process.env.REDIRECT_URL}/api/**` },
        // Redirect router until there migrated
        '/register': { redirect: `${process.env.REDIRECT_URL}/register` },
      },

But in my case I want to use runtimeConfig for the values (wich I can set via NUXT_REDIRECT_URL in production).
To make this working I explored the hook nitro:config. The docu page https://nuxt.com/docs/api/advanced/hooks#nitro-app-hooks-runtime-server-side describe Called before initializing Nitro, allowing customization of Nitro's configuration. so I tried it and local it works fine. But in a production build when I start the app via NUXT_REDIRECT_URL="test" node .output/server/index.mjs the /route redirection seems to be endless and the browser says "Too many redirects"
Additional context
If there is any other possibility to set routeRules with runtimeConfig values let me know.
In my production case I need it for the proxy rule
No response
Logs
No response

Your nuxt config is evaluated in dev and before building but it is not evaluated at runtime. So defining route rules there that are dependent on environment variables will not affect your runtime app.

Okey got it. Maybe i will handle the redirect pages i another way for my case like redirect definition after build time. But my biggest problem is the proxy setting. I really like that we can define a proxy rule as a one liner now 👍  but the value is changing in the environment. Process.env is ignored after the app is built :( Do you know any other smart solution?

You could add your own proxy middleware within a nitro plugin, for example? You'd have access to runtimeconfig there.

Do you mean a nitro plugin with this https://nitro.unjs.io/guide/plugins or a nuxt server middleware described here https://nuxt.com/docs/guide/directory-structure/server#server-middleware ?

I meant a nitro plugin. You could likely also do this within a nitro API route.

Can you explain me your idea ?

devonik
You can also use the built-in proxy helpers: https://github.com/unjs/h3#proxy
The implementation in nitro https://github.com/unjs/nitro/blob/main/src/runtime/route-rules.ts#L36

@or2e Thanks for the recommendation and the built in proxy in route rules is a awesome feature. I already used it (See first post) and it worked but the problem for this ticket was that I am using a runtime environment variable for the request url and any environment variable in route rules will be statically written while build time.
So I had the staging environment url used in prod environment as example

@devonik
Yeah, I know what you mean.
You can create your own server plugin like you already did, use there runtimeConfig and sendProxy/proxyRequest instead of manually calling ofetch

Same problem here! It would be awesome that routeRules "re-render" that values in runtime. In my case, we create a docker image with our nuxt-server and, depends on which environment we want to deploy, the proxy is different. What bother me a little bit is that it worked on "proxy" options of nuxt2. I hope we can use it that way. Meanwhile, I would try @devonik solution. Thanks a lot for share it!!

@jcpascolo
On stage/prod env we use nginx to proxy the api

that it worked on "proxy" options of nuxt2

I thought exactly the same. I used also the proxy setting in nuxt 2 nuxt.config

I need to address this issue. We build Docker images and want to set the proxy URL based on the environment. In Nuxt 2, we could set the proxy URL at runtime, but in Nuxt 3, there’s no elegant way to do this. I hope this issue won’t be closed with the aforementioned workaround. :(

I think it would be really helpful, if there would be a copy-paste example for a proxy in nuxt 3 that requires runtimeConfig. Especially if it worked in Nuxt 2 with no issues.
It's really not easy to know where to place the proxy:

nuxt.config.ts?
server/middleware?
server/plugins?
server/api?

This is a common use case which deserves a bit more guidance.

Someone should make a new issue for that since this post is closed long time ago

This is a common use case which deserves a bit more guidance.
I like that one and feel the same. Sometimes it's a bit of self exploration. But still awesome how much possibilities we just have

@oemer-aran had the same issue now on another project i migrated nuxt2 to nuxt3. I like your solution, thanks for sharing! Looks clean and works smooth. I needed to proxy cause 2 apis so i just added 2 server middlewares

There is a proxy utility function in h3 that you can use. Here’s an example:
// file: /api/images/[...slug].ts

export default defineEventHandler(event => {
  const path = event.context.params.slug
  return proxyRequest(event, `${useRuntimeConfig().public.IMAGES_ENDPOINT}/${path}`)
})

Although I haven’t tested it for edge cases, you may need to tweak its options.
@pi0
@danielroe
Do you have any recommendations?


max_position_embeddings and vocab_size

I am trying to evaluate the embeddings generated by ProtMamba, and I have a few questions:

max_position_embeddings = 2048 in the pre-trained model, which prevents me from passing any amino acid sequence greater than this length. Since I only want the embedding of a single sequence, which may be greater than 2048 but certainly within the context length of the model, is there any way to bypass this restriction?

What is the meaning of vocab_size = 50277?

Thanks!

Hi, sorry for the delay:

For now we decided to fix the maximum positional embedding to 2048, therefore each sequence shouldn't be longer than that. This obviously doesn't limit the context length of the model, ideally you can feed hundreds of sequences as input (if each of them is shorter than 2048 residues). We plan to increase the maximum allowed length in the next versions of the model.
vocab_size = 50277 is the standard initialization used by Mamba, we overwrite that in our config to 38.

Thank you for your reply. I will keep an eye out for the next version!


implement timestep handling for remake

#281 starts in on a remake version of createMakefiles but doesn't yet do timestamp checking for the fetch section. Let's add this and test the heck out of it.
Because remake doesn't have symbolic targets that get run every time, we need some different way to get remake to re-run. I think the solution is going to be a vizlab wrapper to remake::make() that first checks for and deletes any fetch targets that aren't supposed to live forever, THEN runs remake::make(). A wrapper function also allows us to add some additional fun functionality; here's my working outline of that function:
vizmake <- function(target_name, ...) {

  stop('not yet implemented')

  # check the format of the viz.yaml (limited checks so far)
  validateVizYaml()

  # decide whether createRemakefile needs to be rerun

  # remake::delete any timestamps or fetch items whose time is up

  # run remake::make(target_name, ..., remake_file='remake.yaml'). show a timestamp for #283

}

DiagrammeR::grViz("
digraph G {

graph [layout = dot,
       rankdir = TB]

node [shape = box,
      style = filled,
      color = grey]

node [fillcolor = pink]
file_exists

node [fillcolor = skyblue]
currency1; currency2

node [fillcolor = yellow]
check_timetolive

node [fillcolor = orange]
fetchTimestamp

node [fillcolor = green]
make_file

node [fillcolor = red]
dont_make_file

node [shape = oval,
      fillcolor = lightgrey]

edge [color = grey]

file_exists -> no -> make_file
file_exists -> yes -> currency1
currency1 -> alwaysCurrent -> dont_make_file
currency1 -> other -> check_timetolive
check_timetolive -> before_timetolive -> dont_make_file
check_timetolive -> after_timetolive -> currency2
currency2 -> sometimesCurrent -> fetchTimestamp
currency2 -> neverCurrent -> make_file
fetchTimestamp -> same_timestamp -> dont_make_file
fetchTimestamp -> new_timestamp -> make_file

{rank = same; no; yes;}
{rank = same; other; alwaysCurrent;}
{rank = same; after_timetolive; before_timetolive;}
{rank = same; sometimesCurrent; neverCurrent;}
{rank = same; new_timestamp; same_timestamp;}
{rank = same; make_file; dont_make_file;}

}
")

Here's how we can handle all these cases within remake:
A. file_exists isn't a function, just the state of the repository. remake figures this out.
B. currency1 is an if statement in vizmake that decides whether to call  checkTimeToLive or not based on whether the item is alwaysCurrent or not (this info is in the viz.yaml).
C. checkTimeToLive should compare the file timestamps on the remake 'objects' (.rds files in the store) to the current time (Sys.time()). If the time difference between those two timestamps is greater than TTL, then remake::delete() the timestamp file.
D. currency2 is actually a call to fetchTimestamp every time; i'll revise the graph below to reflect this. The two possibilities beneath that decision point are that fetchTimestamp on a neverCurrent item always creates a new_timestamp, whereas other fetchTimestamp methods should always return a new object (i'd better check that the file timestamps on remake's .rds files get changed every time they get deleted and rebuilt - we need them to) but may return either a new value (if the remote timestamp has changed) or an identical value (if the remote timestamp hasn't changed).
E. if the timestamp object gets changed, remake should figure it out and refetch the file.
The above preprocessing steps should happen on all viz id targets in the remake file each time vizmake is called, even if only one or two targets have been called out in target_names. thus, calling vizmake on a single process item will still involve re-fetching a dependency of that process item if the fetch item has gone out of date. if someone really wants to bypass this, they should call process('vizid') instead of vizmake('vizid').
The above graph has six routes to the bottom. From leftmost (1) to rightmost (6), here's how the above rules play out:

Every remake recipe already does this, because remake rules say that if the target file or object doesn't exist, it gets made. Most targets (except those in route 6, the alwaysCurrents) should depend on a fetched timestamp, which remake will create once and then leave untouched as long as we leave it untouched:cache/cars.csv:
  depends: cars_data_timestamp
  command: fetch('cars-data')
cars_data_timestamp:
  command: fetchTimestamp('cars-data')

When the time to live has been exceeded, never-current fetch items should always have their timestamp objects deleted, and neverCurrent should create a new timestamp equal to the current Sys.time() so that it's always different from what it was before, so the fetching always happens.
When the time to live has been exceeded, sometimes-current fetch items will check their timstamps. If the timestamp has changed, fetching should happen.
When the time to live has been exceeded, sometimes-current fetch items will check their timstamps. If the timestamp has NOT changed, fetching should NOT happen.
When the time to live has not been exceeded, it doesn't matter whether fetch items are neverCurrent or sometimesCurrent; they are not refetched.
Fetch items for which fetchTimestamp == alwaysCurrent don't even need to specify a timestamp file or go through the time-to-live check, because they never get refetched:data/iris.csv:
  command: fetch('iris-data')

With the above strategy in mind, we can revise the graph:
DiagrammeR::grViz("
digraph G {

graph [layout = dot,
       rankdir = TB]

node [shape = box,
      style = filled,
      color = grey]

node [fillcolor = pink]
file_exists

node [fillcolor = skyblue]
currency

node [fillcolor = yellow]
check_timetolive

node [fillcolor = orange]
fetchTimestamp

node [fillcolor = green]
make_file

node [fillcolor = red]
dont_make_file

node [fillcolor = white,
      color = orange]
neverCurrent; sometimesCurrent

node [shape = oval,
      fillcolor = lightgrey,
      color = grey]

edge [color = grey]

file_exists -> no -> make_file
file_exists -> yes -> currency
currency -> alwaysCurrent -> dont_make_file
currency -> other -> check_timetolive
check_timetolive -> before_timetolive -> dont_make_file
check_timetolive -> after_timetolive -> fetchTimestamp
fetchTimestamp -> neverCurrent -> new_timestamp
fetchTimestamp -> sometimesCurrent
sometimesCurrent -> same_timestamp
sometimesCurrent -> new_timestamp
new_timestamp -> make_file
same_timestamp -> dont_make_file

{rank = same; no; yes;}
{rank = same; other; alwaysCurrent;}
{rank = same; after_timetolive; before_timetolive;}
{rank = same; sometimesCurrent; neverCurrent;}
{rank = same; new_timestamp; same_timestamp;}
{rank = same; make_file; dont_make_file;}

}
")

:point_up: file_exists should be file_exists & current_with_deps

closed by #316


BUG: BURST requires tabulate

Please add tabulate to the dependencies in requirements.txt and minimum_requirements.txt. Currently, if you import the library, you get a ModuleNotFoundError for tabulate. This in turn effects all imports of functions from the library.
Here is the stack trace:
import trackeval
File "./trackeval/__init__.py", line 2, in <module>
from . import datasets
File "./trackeval/datasets/__init__.py", line 9, in <module>
from .burst import BURST
File "./trackeval/datasets/burst.py", line 2, in <module>
from .burst_helpers.burst_base import BURSTBase
File "./trackeval/datasets/burst_helpers/burst_base.py", line 7, in <module>
from trackeval.utils import TrackEvalException
File "./trackeval/__init__.py", line 2, in <module>
from . import datasets
File "./trackeval/datasets/__init__.py", line 9, in <module>
from .burst import BURST
File "./trackeval/datasets/burst.py", line 3, in <module>
from .burst_helpers.format_converter import GroundTruthBURSTFormatToTAOFormatConverter, PredictionBURSTFormatToTAOFormatConverter
File "./trackeval/datasets/burst_helpers/format_converter.py", line 4, in <module>
from tabulate import tabulate
ModuleNotFoundError: No module named 'tabulate'

Alternatively, if you didn't want to modify the minimum_requirements, you will need to do one of the following (or something similar). The second solution would provide backwards compatibility and is my recommendation:

not import datasets in ./trackeval/__init__.py. Not sure what issues this would cause elsewhere in the library.
In ./trackeval/datasets/__init__.py, you can add a try / except block to catch this issue as follows. You can change these lines:

from .burst import BURST
from .burst_ow import BURST_OW

to
try:
    from .burst import BURST
    from .burst_ow import BURST_OW
except ImportError as err:
    print(f"Error importing BURST due to missing underlying dependency {err}."

Hey David.
Can you make a PR with your suggested change number 2 (and add tabulate dependency to requirements.txt but not minimum_requirements.txt), so I can simply review and accept the PR? (not easy for me to make these changes myself at the moment).
If you're free to do this right now, can be sorted very quick :)

Also thanks!

Yes, can do.

Done


Problem installing

Hi,
since I'm trying to use the newest Version of djangocms-blog, pip spits out an error:
xslt-config: not found
Did I miss something? Do I really have to install Microsoft Visual C++ 10.0 to use djangocms-blog on a Windows machine?

xslt-config is required by lxml python package, which -if I recall correctly- is a dependency of htmlib used by django CMS.
Some python packages requires compiler and headers as they contained native code and python code only.
This is not an issues of djangocms-blog per se

@Orangensaft have you managed to solve the issue?

Closing this to due lack of feedback
@Orangensaft feel free to reopen if you can reproduce this


Fetch Spec support fails on destination attribute

When parsing a fetch spec, an lhs key path that is of the form 'toObjA.toObjB.objBAttribute" fails.
This seems a pretty common use case.

I actually haven't run into this, so I haven't bothered implementing it. I'd welcome a Pull Request if you'd like to take a stab at it. See also https://github.com/rentzsch/mogenerator/blob/master/mogenerator.m#L172 and #15


Replace remaining Pardot/Gravity forms with SFMC forms

Confirm that no Pardot forms remain.

There is a pardot form when you scroll to the bottom of this page and click "I have questions".  There may be others...

We have four locations where forms exist:
KubeCon Sponsorship contract request form - is a Pardot form today
End User I have a question form - is a Pardot form today
Join now I have a question form - is a Gravity form today (lives  on https://www.cncf.io/about/join/)
CNCF homepage newsletter sign up - is a Gravity form today (at the very bottom)
The only form we are very concerned about performance for is the newsletter form that lives on our homepage, so we do require an optimized form for this.
Chris Abraham has the optimized code, but there is an error. See below, no resolution yet.

[ ] Migrate End User I have a question form

[ ] Migrate the sponsorship contract request form

[ ] Migrate the Join Now page, I have a question form

[ ] Migrate the Newsletter subscriber form

[ ] Marijana and team - Fix the error to implement SFMC form

[ ] Marijana and team - build new forms for sponsorship, end user and join now for Katelin and Kim review and sign off. Push to Chris A once the review is complete

We had a call with Marijana and team this week.  I am going to be tracking the migration of forms to SFMC using this sheet.  I'm also going to be QAing them, once I get access to SFMC.  I am waiting on Marijana to get access to her JIRA board, which we'll use to track requests from her, rather than email which wasn't working.  @kwussow if you have the ability to give my LFID (cjyabraham) permissions for her board, that would be great.

Hi Chris,I do not see that I have permission to do this. When you login to LF
Jira, can you search for it? Taylor Waggoner might be able to give you access.
The board is calledDIGITAL MARKETINGKANBAN BOARD
https://jira.linuxfoundation.org/secure/RapidBoard.jspa?rapidView=192&view=detail&selectedIssue=LP-5217
Katelin Wussow
Business Development Manager - Cloud Native Computing FoundationLocation &
Time-zone: Denver, CO MSTphone:<PHONE_NUMBER>web:https://www.cncf.io/email:
<EMAIL_ADDRESS>a meeting with me: www.calendly.com/kwussow
On Fri, Dec 6, 2019 2:06 PM, Chris Abraham<EMAIL_ADDRESS>wrote:
We had a call with Marijana and team this week. I am going to be tracking the
migration of forms to SFMC using this sheet. I'm also going to be QAing them,
once I get access to SFMC. I am waiting on Marijana to get access to her JIRA
board, which we'll use to track requests from her, rather than email which
wasn't working. @kwussow  if you have the ability to give my LFID (cjyabraham)
permissions for her board, that would be great.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

I don't see that I have permissions either, sorry!
Taylor Waggoner
Sr. Operations Analyst  - Cloud Native Computing Foundation
Location & Time-zone: Portland, OR - PT
web:https://www.cncf.io/
<EMAIL_ADDRESS>On Fri, Dec 6, 2019 4:23 PM, Katelin Wussow<EMAIL_ADDRESS>wrote:
Hi Chris,I do not see that I have permission to do this. When you login to LF
Jira, can you search for it? Taylor Waggoner might be able to give you access.
The board is calledDIGITAL MARKETINGKANBAN BOARD
https://jira.linuxfoundation.org/secure/RapidBoard.jspa?rapidView=192&view=detail&selectedIssue=LP-5217
Katelin Wussow
Business Development Manager - Cloud Native Computing FoundationLocation &
Time-zone: Denver, CO MSTphone:<PHONE_NUMBER>web:https://www.cncf.io/email:
<EMAIL_ADDRESS>a meeting with me: www.calendly.com/kwussow
On Fri, Dec 6, 2019 2:06 PM, Chris Abraham<EMAIL_ADDRESS>wrote:
We had a call with Marijana and team this week. I am going to be tracking the
migration of forms to SFMC using this sheet. I'm also going to be QAing them,
once I get access to SFMC. I am waiting on Marijana to get access to her JIRA
board, which we'll use to track requests from her, rather than email which
wasn't working. @kwussow  if you have the ability to give my LFID (cjyabraham)
permissions for her board, that would be great.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Chris,
If you have access to LF Jira, you should be able to access her board. The
link I sent previously will take you there
On Fri, Dec 6, 2019 at 9:36 AM Taylor Waggoner <
<EMAIL_ADDRESS>wrote:

I don't see that I have permissions either, sorry!
Taylor Waggoner
Sr. Operations Analyst  - Cloud Native Computing Foundation
Location & Time-zone: Portland, OR - PT
web: https://www.cncf.io/
email<EMAIL_ADDRESS>https://events19.linuxfoundation.org/events/kubernetes-forum-seoul-2019/
https://events19.linuxfoundation.org/events/kubernetes-forum-sydney-2019/
On Fri, Dec 6, 2019 4:23 PM, Katelin Wussow<EMAIL_ADDRESS>wrote:

Hi Chris,
I do not see that I have permission to do this. When you login to LF
Jira, can you search for it? Taylor Waggoner might be able to give you
access.
The board is called Digital MarketingKanban board
https://jira.linuxfoundation.org/secure/RapidBoard.jspa?rapidView=192&view=detail&selectedIssue=LP-5217
Katelin Wussow
Business Development Manager - Cloud Native Computing Foundation
Location & Time-zone: Denver, CO MST
phone:<PHONE_NUMBER>
web: https://www.cncf.io/
email<EMAIL_ADDRESS>schedule a meeting with me: www.calendly.com/kwussow
On Fri, Dec 6, 2019 2:06 PM, Chris Abraham<EMAIL_ADDRESS>wrote:
We had a call with Marijana and team this week. I am going to be tracking
the migration of forms to SFMC using this sheet
https://docs.google.com/spreadsheets/d/1h9SudSuu5Th7nZQ0ytJ4qzugFMtWKEVcQDHJkfVcS8Q/edit#gid=0.
I'm also going to be QAing them, once I get access to SFMC. I am waiting on
Marijana to get access to her JIRA board, which we'll use to track requests
from her, rather than email which wasn't working. @kwussow
https://github.com/kwussow if you have the ability to give my LFID
(cjyabraham) permissions for her board, that would be great.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/cncf/sfdc/issues/2?email_source=notifications&email_token=ALEZNHPU6RXWMJKOFIH7B53QXJL5XA5CNFSM4I42LUM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGEFVPA#issuecomment-562584252,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALEZNHPFYURUQDFEBINMVVLQXJL5XANCNFSM4I42LUMQ
.
--
Katelin Wussow
Business Development Manager - Cloud Native Computing Foundation
Location & Time-zone: Denver, CO MST
phone:<PHONE_NUMBER>
web: https://www.cncf.io/
email<EMAIL_ADDRESS>schedule a meeting with me: www.calendly.com/kwussow

This is completed


Add label on the links

Hi,
Is it possibile add a label for every links?
Thanks a lot.

Thanks for asking, you can do this by adding "meta" data to every link like this:
# html
new Diagram('#diagram', 'index.json').init('bandwidth');

# index.json
...
  "links": [
    {
      "source": "Node 1", "target": "Node 2",
      "meta": {"bandwidth": "10G"}
    }
  ]
...

See https://github.com/codeout/inet-henge#labels for details.


Add documentation and api to resolve route when promise is resolved.

Need to have the ability to resolve a route after a promise is resolved.
For example, if I have a special route that performs mostly logic, like pre-fetching or validating (no views), then I need to be able to redirect to another route upon resolution.

Version
4.0.0

This is a bug tracker, not a support system. For usage questions, please use Stack Overflow or Reactiflux. Thanks!


missing ap_int.h

Following instructions for building IDCT example, I have a build issue:
$ make run TARGET=sw_emu
Makefile:90: [WARNING]: g++ version older. Using g++ provided by the tool : /opt/Xilinx/Vivado/2021.2/tps/lnx64/gcc-6.2.0/bin/g++
mkdir -p ./build_sw_emu
/opt/Xilinx/Vivado/2021.2/tps/lnx64/gcc-6.2.0/bin/g++ -I./includes/xcl2 -I/opt/xilinx/xrt/include/ -I/opt/Xilinx/Vivado/2021.2/include/ -I./src -O0 -g -Wall -fmessage-length=0 -std=c++11 ./includes/xcl2/xcl2.cpp -o build_sw_emu/host.exe ./src/host.cpp  ./src/idct.cpp -L/opt/xilinx/xrt/lib/ -lOpenCL -lpthread -lrt -lstdc++ -lxilinxopencl
In file included from ./src/host.cpp:39:0:
./src/types.hpp:35:20: fatal error: ap_int.h: No such file or directory
#include <ap_int.h>
^
compilation terminated.
In file included from ./src/idct.hpp:45:0,
from ./src/idct.cpp:40:
./src/types.hpp:35:20: fatal error: ap_int.h: No such file or directory
#include <ap_int.h>
^
compilation terminated.
make: *** [build_sw_emu/host.exe] Error 1

Same issue. How did you resolve it?

Your issue is most likely due to the fact that the ap_int.h file is not in your g++ include path.
Which version of the Xilinx tools are you using?
What is the XILINX_VIVADO env var set to?


[feature] proxy need

Is it possible to develop a proxy address feature, in my country, the direct download https://huggingface.co network is not connected, you need to use a proxy, this proxy method
export HF_ENDPOINT=https://hf-mirror.com

pleae consider my answer in this issue if it will be sufficient in your case #11

pleae consider my answer in this issue if it will be sufficient in your case #11

thanks


Index all people in search, including ministers

Previously: Ministerial roles are indexed in search, as well as
people, so to avoid someone with a ministerial role appearing
twice in search we didn't index people with ministerial roles.
We're not happy to include the duplicates, as they are slightly
different, and the 'people' result may be more useful for users
than the role.
The finding things team are happy with this change, and once
all people are being index they're going to look at weighting
to promote people results above roles.

:+1: code

:+1: code, too.
Is there no easy-to-add description field for people, or did you decide not to worry about that for now?

@rboulton The description needs a bit of discussion and I wanted to get this bit done first, so it'll be in another PR.


client: remove empty file

The definition of RequestPrivilegeFunc has been moved elsewhere,
obseleting this file. Removing for general hygiene.
Signed-off-by: Stephen J Day<EMAIL_ADDRESS>

LGTM

LGTM


language-php not working

https://codepen.io/danieldilly/pen/mXZQoR
As the Codepen above shows, language-php doesn't appear to be working.
The PHP code sample on the Codepen is taken directly from the following article where PrismJS is working effectively (perhaps a previous version).
https://www.smashingmagazine.com/2012/05/building-real-time-commenting-system/
language-bash isn't working for me either

I figured out my problem.  I was not aware that I had to import components to get some features working.
import prism from 'prismjs'
import 'prismjs/themes/prism.css'
import 'prismjs/components/prism-php'
import 'prismjs/components/prism-bash'


Readme file must be improved

The written details are not enough to launch the package.

@sahin52 Thanks for the feedback
What more information do yoi need? Can you help improve the documentation?

@sahin52 Thanks for the feedback
What more information do yoi need? Can you help improve the documentation?

I couldn't understand how to make the project. catkin_make didnt work. I couldnt find a makefile either. Could you please tell how to use the project? I am new to Ros, Mavros, Px4 etc. So, sorry if the problem is about me.

I couldn't understand how to make the project. catkin_make didnt work. I couldnt find a makefile either. Could you please tell how to use the project? I am new to Ros, Mavros, Px4 etc. So, sorry if the problem is about me.

@sahin52 If you understand how to use ROS, it should be quite straight forward, since some people are using this repo without any issues.
You should copy this project into your catkin workspace, and run
catkin build

@sahin52 If you understand how to use ROS, it should be quite straight forward, since some people are using this repo without any issues.
You should copy this project into your catkin workspace, and run
catkin build

Thanks

Thanks

@sahin52 Are those instructions enough for you?

@sahin52 Are those instructions enough for you?

Yes, thanks

Yes, thanks


Chenerate report from "local" file in github worker

Describe
Dear all
maybe I miss an already existing feature.
In a github worker I run Checkov and "locally" create checkov-report.xml
checkov -d . --framework terraform --output junitxml > checkov-report.xml
I do not intend to push checkov-report.xml to the repo.
This seems to pull the repo again and there  checkov-report.xml is not available.
- name: Publish Checkov Test Results
uses<EMAIL_ADDRESS>with:
name: Checkov Test Results
path: ./checkov-report.xml
reporter: junit
Proposed solution
  - name: Publish Checkov Test Results
    uses<EMAIL_ADDRESS>    with:
      name: Checkov Test Results
      path: ./checkov-report.xml
      reporter: junit
      local-source: true

Abilit to choose to run "locally"
Alternatives considered

the error was: reporter: junit
solution: reporter: java-junit


How to prioritize local controller route over Host proxy configs

Fantastic library by the way! I'm having some trouble getting my proxy app to work as I need, and I'm sure I'm just missing the magic incantation:

I'm using YARP to reverse proxy requests to different services based on the host.
However, the reverse proxy app also has an endpoint for ACME cert renewal that the proxy should handle directly.
When I visit localhost/.well-known/acme-challenge/{value} I correctly get the response from the proxy controller
When I visit domain1.com/.well-known/acme-challenge/{value}, the request is reverse proxied to domain1.com

I don't want this behavior. I want all requests, regardless of domain, to go to the controller

I've tried changing Order in the controller as well as the proxy configurations, but it doesn't change the behavior. It seems that per-host filtering trumps all explicit priority specifications.
Perhaps there's a way to tell YARP to ignore anything going to .well-known/acme-challenge/{value}
Is there a way to solve this problem?

What route definitions are you using for ACME and YARP? The most specific match wins, starting with the path, method, host, and then headers.
Order helps break ties but note that the default matchers run with a large negative number order (-100 for hosts).

Thanks for the quick reply:

Order helps break ties but note that the default matchers run with a large negative number order (-100 for hosts).

I tried to give my controller Order int.MinValue and it still doesn't get prioritized :-)
I'm using a custom ConfigurationProvider for the proxy with each host configured as follows:

And the ACME controller looks like this:

I also tried creating a custom route matcher so that I can put {**catchall:notAcme}, but that just throws a 404 not found when it's the acme path :-)

Your setup works fine for me 😁 on .NET 6. Which ASP.NET version are you on? There was a wildcard routing bug in older versions.

I'm on .net6 and Yarp 1.0.0. Just to be clear @Tratcher : Did you test with an http request that includes a hostname other localhost? It goes to the controller if your hostname is localhost and <IP_ADDRESS>.
To repro this locally I have to add an entry to my hostfile so that somedomain.com goes to Yarp (and of course somedomain.com needs to be a domain configured in Yarp).

Ok! This took a lot of digging. I don't think this is the fault of YARP, but an issue with how ASP.NET routing works. I was able to print out all my app's routes, and both YARP and the controller routes appear to be configured correctly, including the "Order" fields. But I guess asp.net prioritizes Host matching over the Order field.
I was finally able to achieve my desired behavior by branching the middleware: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware/?view=aspnetcore-6.0#branch-the-middleware-pipeline

I'm on .net6 and Yarp 1.0.0. Just to be clear @Tratcher : Did you test with an http request that includes a hostname other localhost? It goes to the controller if your hostname is localhost and <IP_ADDRESS>.
To repro this locally I have to add an entry to my hostfile so that somedomain.com goes to Yarp (and of course somedomain.com needs to be a domain configured in Yarp).

Yes, I tested with setting the host header to domain1.com matching your setup.

Interesting! I wonder what was different with my setup? I need to wrap this up before my certs expire, but I'll try to repro this in an isolated project.


object/sql: fix SQL parameter types

fix #3299

Codecov Report
Patch coverage: 62.19% and project coverage change: -0.03 :warning:

Comparison is base (7a9859d) 55.55% compared to head (6a15109) 55.53%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3303      +/-   ##
==========================================
- Coverage   55.55%   55.53%   -0.03%
==========================================
  Files         142      142
  Lines       33741    33883     +142
==========================================
+ Hits        18746    18818      +72
- Misses      13013    13070      +57
- Partials     1982     1995      +13

Impacted Files
Coverage Δ

pkg/meta/utils.go
55.51% <0.00%> (-9.49%)
:arrow_down:

pkg/vfs/internal.go
52.69% <40.00%> (-0.57%)
:arrow_down:

cmd/info.go
15.38% <41.66%> (+1.15%)
:arrow_up:

pkg/meta/tkv.go
71.24% <59.25%> (-0.41%)
:arrow_down:

pkg/meta/sql.go
59.52% <75.00%> (+0.47%)
:arrow_up:

pkg/object/sql.go
54.36% <80.00%> (ø)

pkg/meta/redis.go
66.75% <83.72%> (-0.07%)
:arrow_down:

pkg/meta/base.go
65.33% <94.28%> (+0.66%)
:arrow_up:

cmd/sync.go
50.34% <100.00%> (ø)

pkg/meta/tkv_badger.go
73.38% <100.00%> (ø)

... and 12 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


[Quest/Malawi Core] Wrong patient menu items being rendered

Describe the bug
In a patient's profile, the wrong menu items are being rendered in the overflow menu.
To Reproduce
Steps to reproduce the behavior:

Go to the patient's register
Select an ART client
In their profile, check the options in their overflow menu

Expected behavior
Currently, these are the options shown:

I expect these options:

Smartphone (please complete the following information):

Device: Samsung A12
Android version: 11
Build number: RP1A.200720.012.A127FXXU4AUK1
Version: 30

Additional context
N/A

fix and merged,
@f-odhiambo


How could we integrate this linter on a react workflow?

Hey Eduardo, i work for aliada were we are doing react and i was wondering how we could use this to lint our html and match it to our components. I see that you do react too and maybe have thought about this.

Hi Guillermo, I think you can achieve that linter flow using Jest + Enzyme + Bootlint (Node.js API).
https://github.com/facebook/jest
https://github.com/airbnb/enzyme
https://github.com/twbs/bootlint
Let me know if I could help with something else. ✌


Small non-functional changes to stateful transform

Very minor changes. The test removed is basically a duplicate of the AIE2 equivalent test, doesn't add any coverage.
Background: I'm grokking this pass to work out how to get around
error: 'amdaie.circular_dma_cpy_nd' op access pattern of strided operation overlaps with next one, which is not supported for now

What would be very useful would be to reduce complexity so that we only have we need. For example, look at the arguments in
def AIE_ObjectFifoCreateOp: AIE_Op<"objectfifo", [Symbol]> {
  let summary = "Create a circular buffer or channel between two tiles";
  let arguments = (
    ins SymbolNameAttr:$sym_name,
        Index:$producerTile,
        Variadic<Index>:$consumerTiles,
        AnyAttrOf<[ConfinedAttr<I32Attr, [IntMinValue<0>]>, ArrayAttr]>:$elemNumber,
        TypeAttrOf<AIE_ObjectFifoType>:$elemType,
        BDDimLayoutArrayAttr:$dimensionsToStream,
        BDDimLayoutArrayArrayAttr:$dimensionsFromStreamPerConsumer,
        DefaultValuedAttr<BoolAttr, "false">:$via_DMA,
        DefaultValuedAttr<BoolAttr, "false">:$plio
  );

how many of the arguments can we simplify/drop (@jtuyls) ? For example, I imagine plio isn't something we want.

how many of the arguments can we simplify/drop ? For example, I imagine plio isn't something we want.

certainly those last two can be dropped. AIE_ObjectFifoType (and thus $elemType) could entirely be dropped and just replaced with memref (trust me I've tried it...) but air uses it.... :shrug:

how many of the arguments can we simplify/drop ? For example, I imagine plio isn't something we want.

certainly those last two can be dropped. AIE_ObjectFifoType (and thus $elemType) could entirely be dropped and just replaced with memref (trust me I've tried it...) but air uses it.... 🤷

Ok I'll probably remove last 2 today at some point (in this PR or another if you accept this in which case I'll just land it and start afresh). Not sure what air problem is w.r.t. any of this code, it doesn't use any object fifo related stuff does it?

how many of the arguments can we simplify/drop ? For example, I imagine plio isn't something we want.

certainly those last two can be dropped. AIE_ObjectFifoType (and thus $elemType) could entirely be dropped and just replaced with memref (trust me I've tried it...) but air uses it.... 🤷

Ok I'll probably remove last 2 today at some point (in this PR or another if you accept this in which case I'll just land it and start afresh). Not sure what air problem is w.r.t. any of this code, it doesn't use any object fifo related stuff does it?

https://github.com/Xilinx/mlir-air/blob/b5a5116b21f70812e941fc2184be28980bb8eab1/mlir/lib/Conversion/AIRToAIEPass.cpp#L1102


implement support for __rust_alloc_error_handler

Fixes https://github.com/rust-lang/miri/issues/3439

@bors r+

:pushpin: Commit 66be834b88576d1f2b47e44ab73d2cf7d77e5894 has been approved by RalfJung
It is now in the queue for this repository.

@bors r+

:pushpin: Commit 150a4e9365036784217e7176455763d81db1ee74 has been approved by RalfJung
It is now in the queue for this repository.

:hourglass: Testing commit 150a4e9365036784217e7176455763d81db1ee74 with merge 2321476b0af5f59e4e618517786650b9eca5005c...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing 2321476b0af5f59e4e618517786650b9eca5005c to master...


Requesting To Add Patterns In Java

Hi, I loved your work so far and have got a hang of what you are trying to accomplish. I would like to contribute this repository by creating a whole new branch dedicated to all these patterns in Java Programming Language

Thanks for reaching out Arun, you can definitely contribute to this repository with Java programs for the existing patterns or any new ones you wish to add. Fork the project, create a branch and let me know when you make your first pull request! All the best and thanks for showing interest...


Remove state between connectAdvanced calls in example

When I saw this example I was initially excited by the prospect of storing state between connectAdvanced calls.
I thought of the uses like storing the deleted todo items, or even just the count. But then it dawned on me that the idiomatic approach to Redux, such as the ability for time travel - is challenged when the previous state is stored. For example if I stored deletedTodoCount and then used time travel this figure would be wrong because the previous state would be from the future.
For newbies like myself, suggesting this in documentation can be misleading and might encourage the wrong practice of depending on the difference between states for props when really should come from the store.

Well, it's not used there anyways, so that's OK to remove. Thanks!


Unify the logic of dedicated and shared KMS AAD and Optimize readme documentation and samples

1.Unify the logic of dedicated and shared KMS AAD.
2.Optimize readme documentation and samples.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Confusion: Extending Compiler

Hey there,
This package, at face value, may well be a lifesaver for an application im building, connecting a django backend with a typescript nextjs frontend.
I've started playing around with the library, and the default compiler, but have noticed that theres no first class support for some pydantic features.
Namely:

I want to add a new type for date (datetime.datetime --> z.date())
I want to extend to capture information from 'Annotated' pydantic types (which for instance, allow conforming a float to a certain range using gt / lt attributes). These would map to zods min() and max() functions

I've tried extending using a custom compiler and overriding the type for these fields, something similar to :
class Compiler(pydantic2zod.Compiler):
    def _modify_models(self, pydantic_models: list[ClassDecl]) -> list[ClassDecl]:
        for model in pydantic_models:
            for f in model.fields:
                if f.type == UserDefinedType(name='datetime.datetime'):
                    print(f"found datetime")
                    f.type = LiteralType('z.date()')

        return pydantic_models

but this doesnt quite work.

I'll take a look.
In the meantime if you could give some sample pydantic models you have in mind, that would be helpful.

I've added support for datetime.datetime:
Say this
from datetime import datetime
from pydantic import BaseModel

class User(BaseModel):
    name: str
    created_at: datetime

is translated to
import { z } from "zod";

export const User = z.object({
  name: z.string(),
  created_at: z.string().datetime(),
}).strict();
export type UserType = z.infer<typeof User>;

But note that it's not possible to convert datetime.datetime to z.date(). e.g. this will error:
const { z } = require('zod');

// Define a schema using Zod
const User = z.object({
    name: z.string().min(2),
    age: z.number().int().positive(),
    email: z.string().email(),
    created_at: z.date()
});

const raw = {
    name: "John Doe",
    age: 25,
    email<EMAIL_ADDRESS>    created_at: "2021-01-01"
    // created_at: "2021-01-01T00:00:00Z" // errors too
};

const user = User.parse(raw);
console.log("Validation succeeded:", user);

See https://zod.dev/?id=dates-1
So that's probably not what you want.

Added some support for numerical type constraints:
from typing import Annotated
from pydantic import BaseModel, Field

class Employee(BaseModel):
    age: Annotated[int, Field(ge=18, le=67)]
    level: Annotated[int, Field(1, gt=0, lt=6)]
    salary: Annotated[float, Field(gt=1000, lt=10000)]

I'll close this issue.
See if that helps. And if it doesn't, please open a new one with more specific examples.
Thank you.


The GraphPred part

Looking forward to releasing the graph prediction codes in this repo.

https://github.com/ShunChengWu/3DSSG

As mentioned in the README.md that “Note that the graph prediction module is not yet released. You may encounter error if you build with BUILD_GRAPHPRED=ON. That part will be released soon.” Can the SceneGraphFusion repo directly use the graph prediction module now? i.e, Can I build the project with BUILD_GRAPHPRED=ON now?

oh I see. you should be able to build it with BUILD_GRAPHPRED=ON now.

Another question is, why the labels.instances.annotated.v2.ply and the mesh.refined.v2.obj are loaded in renderer/Renderer3RScan.h？I orginally think that only the sequence is necessary. In this case, how to use it for my own data?

oh I see. you should be able to build it with BUILD_GRAPHPRED=ON now.

When executing command
cmake -DBUILD_GRAPHPRED=ON -DBUILD_GUI=ON ..
The error was encountered
SceneGraphFusionDebugPred/libGraphSLAM/edge.h:3:10: fatal error: graphPredictor/MemoryBlock.h: No such file or directory  #include "graphPredictor/MemoryBlock.h"           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. libGraphSLAM/CMakeFiles/libGraphSLAM.dir/build.make:75: recipe for target 'libGraphSLAM/CMakeFiles/libGraphSLAM.dir/GraphSLAM.cpp.o' failed make[2]: *** [libGraphSLAM/CMakeFiles/libGraphSLAM.dir/GraphSLAM.cpp.o] Error 1 CMakeFiles/Makefile2:457: recipe for target 'libGraphSLAM/CMakeFiles/libGraphSLAM.dir/all' failed make[1]: *** [libGraphSLAM/CMakeFiles/libGraphSLAM.dir/all] Error 2 Makefile:90: recipe for target 'all' failed make: *** [all] Error 2
Looking forward to your reply. Thank you.

Hi sorry for the late reply.
These files are used to generate the rendered views. As you may notice that the depth map provided by the RIO dataset is in rather low quality and resolution.
If you want to test on your own data, you can write your own data loader that can provide RGB, depth images, and poses.

Thanks! But I wonder if you would mind leaving your personal contact (like wechat, fb, ins, etc.) so that I can ask for your advice more conveniently (in Chinese).  I am not so familiar with this field but admire your great job.  If so, you can send it to my email<EMAIL_ADDRESS>

No problem. I will send you an email shortly.

haha The email I sent to you was rejected. I just ask you some problems here.
我想请教一下，所使用的inseg库（看代码和文章后知道应该是15年那篇文章发布的库）有没有包含稠密重建这部分呢？我觉得没有，然后我的理解是，现在已经有一个完全稠密重建好的三维mesh，这个inseg库索完成的事，就是在每个时刻t，读取rgbd和估计好的pose，depth图上分割，将分割好的结果映射回三维mesh的那部分点上。而您代码中的可视化（renderer/GUI等）部分就是将这个过程非常丝滑地呈现出来。不知道我这样理解是否正确。
如果正确的话，那么我觉得这个过程还是没有达到那种实时重建mesh+实时分割的效果？（因为已经有一个建好的mesh）
如果我想达到实时地一边稠密重建，同时完成分割、SG等预测的效果，基于您这个工作，是不是能够完成呢？是不是前面加上一个比如ElasticFusion/BundleFusion这些稠密重建方法就可以呢？


Error message translation with i18n

When trying to translate validation error messages with i18n I was unable to change the titles for the 'problem', 'summary' and 'resolution' parts. The content can be easily changed, the titles however are hardcoded in [mongoid_error.rb] (https://github.com/mongoid/mongoid/blob/master/lib/mongoid/errors/mongoid_error.rb#L25-L27).
Sadly this makes translations into other languages weird.
I think it would be useful to allow setting these values via i18n locales as well. If you agree I'd be happy to supply a pull request.
Cheers
Hagen

If you can do a pull request that would be great!

Sure. I will probably not get around to it before Sunday though.


Sync with upstream

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: jprjr:x: leafoYou have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: jprjr:x: leafoYou have signed the CLA already but the status is still pending? Let us recheck it.


Import Blog Posts

Create a Shell Script that parses through WordPress and creates blogposts from past wordpress blogposts

Two posts have been migrated. May reopen at a later time to import other content.


double clicking IL index labels in linear IL views navigates to virtual addresses

Makes it much harder to follow large IL logic in linear view

This is also true in IL graph views.


Fix Doc for API_ENDPOINT Configuration

Fix outdated Documentation.

Maybe it would be good to have a "configuration" file, to enable the Admin to easily configure the system. Instead of looking for the Variable in the source code.

+1 for incremental improvement :-)

I vote for merge, who will click the button?

Usually the first co-author who looked at the change retains the right/duty to merge it. Or he asks somebody else to take over.

@schlomo I don't think there is a "usually" in this case, but what you say sounds reasonable. We could also look at something like:
http://rfc.zeromq.org/spec:16
For now, perhaps we should agree on the following simple rules:

pull-requests are responded to with the actions: merge, comment or reject
pull-requests can be merged on a first-come first-serve basis
you never merge your own pull-requests
if something broken was merged in a pull-request, another pull-request must be made to fix it

Having said that, here goes!

I didn't noticed that there was a documentation for the variable as i moved it. The Documentation is still not valid. There is not longer a global called AFP_API_ENDPOINT. It's now part of a angular constant service appVars with the key afpApiEndpoint. I can fix this on Monday.
For me the app.js is the configuration of the angular app. It defines the main module, the constants and the config. But we could move the constant service definition in a separate file if this helps to administrate it.


Not able to search by phone number of email address

I'm using the latest linux release. When I ran using -p or -e according to the examples provided, it does not detect the input parameter.
./DetectDee detect -p<PHONE_NUMBER>4,13188524682
INFO   [2023-05-07 05:43:19] Detect for []
./DetectDee detect -e mail<EMAIL_ADDRESS>INFO   [2023-05-07 05:43:10] Detect for []

At present, email and phone number search are only backup search methods for username search, with not much website data. More data will be gradually added later.


Should I expect to see a single query when I enter a route, or possibly multiple?

I've just started to actually investigate and look into the efficiency of my GraphQL code and Relay queries. I am implementing DataLoader but noticed that some of my database query functions were being executed multiple times despite being DataLoader batch functions (I only expect to see them executed once). So I tabbed over to Chrome and can see that the React dev tools shows that Relay is making 3 separate queries for this single react router route. These 3 queries explains my DataLoader issue, but leads me to a new question: I thought a single route would be condensed into a single Relay query, is that true?
I'm using react router relay and react router dynamic routes. I'd post my route tree, but since I'm not using JSX routes that's not very simple to share my routes.
It's my understanding that react router relay takes care of building the graphql query for a particular route's component tree. If I hit a single route, should I expect to see 1 relay query? I'm currently seeing 3.

Actually, I'd like to clarify this because I'm not sure what React dev tools means here. It shows this ...

It says Request 1, but 3 Queries. The Chrome network tab shows 3 seperate requests, so I'm not sure why React dev tools says Request 1, but 3 queries.

It's the responsibility of the network layer to translate queries into network requests. The default network layer emits each query as a separate HTTP request, but that's the baseline behavior of the default one.
For a real application, you should definitely use a network layer and a corresponding server that support batching multiple queries into a single HTTP request. For example, I'm currently using https://github.com/graphql/express-graphql/pull/100 (on npm as @taion/express-graphql) and https://github.com/taion/relay-network-layer (https://github.com/taion/relay/commit/daa46a8345184dbeda0790d613211d75d5c869ff pulled out as a separate package, on npm as @taion/relay-network-layer) – these support batched GraphQL queries executed with the same context value, to get optimal caching with DataLoader.
I believe the most popular open-source batching network layer is @nodkz's https://github.com/nodkz/react-relay-network-layer – consider using that if you don't need the context-related semantics that I have.

But also, no, RRR takes your queries and combines them into a single query config/Relay route. It doesn't otherwise touch your queries themselves.

Thanks for the info!

Issue #9 about how to use DataLoader with https://github.com/nodkz/react-relay-network-layer
Example of how you can use a single DataLoader for all (batched) queries within a one HTTP-request in RRNL https://github.com/nodkz/react-relay-network-layer/blob/master/examples/dataLoaderPerBatchRequest.js


Local video stream has a slight lag

Start the Video Chat Demo in the Unity editor on a Windows desktop
Observe the captured video in the local peer window

IS: the captured video has a slight lag, i.e. when I move my hand I can see the movement happening a tiny bit later in Unity. In contrast, when I look at the captured video in the Camera app of Windows I do not see such a lag.
SHOULD: have (almost) no lag

Possible hints:

Are you running in Release?
The Unity Editor is an editing app, not an end user product; you cannot really compare performance there, as the Editor likely induces some extra cost over a shipped product.
There are known improvements and optimizations that need to be made in the WebRTC UWP code for video capture and encoding that MixedReality-WebRTC currently consumes. Work on this has just started.
The WebRTC architecture is not designed for optimizing local video playback, although I do agree there should be almost no lag anyway; the current playback pipeline is much longer than it could be (see above point) but is anyway optimized architecturally to deliver frames to the remote peer and minimize that latency. Comparing with the Camera app of Windows which does only local playback is not really fair IMHO.

There is also some on-going work about external track support (see #35 for example), which would allow using an external capture pipeline with integrated local playback, which should get latency similar to the Camera app.

@djee-ms Thank you for the response. It actually was only a matter of setting the max video frame rate in the media player to 60 instead of 30.

Oh right, I forgot about that one! Glad that's fixed. 👍

Hi,
I have a similar issue but more than a slight lag. I am trying webrtc among 2 computers. One of them is a desktop PC and the other is laptop PC. There are huge delays in webcam and received video images in laptop. Even, laptop shows its own local webcam video in a 1-2 seconds delay (cannot understand how?), but the desktop gets laptops webcam image much faster (almost no delay) than the loptop shows its own webcam (with 1-2 seconds). This is very interesting. I suspect VideoRenderer has a lag since there are the same delays in both local and receiver images where VideoRenderer is the shared component among these two. The frame rate of video renderer is 30 as default. I do not think problem is with communication since image is received in desktop PC with out any delay.
Best regards


Link to raw GitHub files

Description of your changes

This allows you to copy and paste the commands without having cloned the repo (which you don't need to do unless you're planning to fork the platform).
I have:

[ ] Read and followed Upbound's contribution process.
[ ] Run make reviewable to ensure this PR is ready for review.
[ ] Added backport release-x.y labels to auto-backport this PR, as appropriate.

How has this code been tested

Just by looking at the rendered markdown in this PR, and making sure the links work.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Scenario is not finished

"Create a second virtual network" section doesn't make sense unless the documentation shows how to connect it to the first vnet, and/or to set it up for using the resolver from vnet1.

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

ID: 67376353-3eff-47d3-3e52-13600075ebd4
Version Independent ID: 88cd7c90-2a27-a389-a751-99b5dc37120e
Content: Quickstart - Create an Azure private DNS resolver using the Azure portal
Content Source: articles/dns/dns-private-resolver-get-started-portal.md
Service: dns
GitHub Login: @greg-lindsay
Microsoft Alias: greglin

@nlasok1 Could you please share the document that you are referring to or wanting us to make changes?

My apologies. I assumed the link on the docs page included the original page info.
here is the link https://docs.microsoft.com/en-us/azure/dns/dns-private-resolver-get-started-portal

@nlasok1 , thank you for bringing this to our notice. We have assigned this to the content owner/author for update & doc correction. In the meantime, you can follow the PowerShell tutorial as it has complete steps.
@greg-lindsay , the Azure portal tutorial is not complete. The steps to link the second Vnet to the DNS forwarding ruleset & creating a forwarding rule are missing which was present in the Azure PowerShell tutorial. Please add the steps in this doc for clarity.

The additional instructions were added several weeks ago. See https://learn.microsoft.com/en-us/azure/dns/dns-private-resolver-get-started-portal#link-your-forwarding-ruleset-to-the-second-virtual-network

#please-close


Add JUMP Mitocheck feature analysis comparison with KS tests

Related to the analysis in https://github.com/WayScience/JUMP-single-cell/pull/13

Legend:
Comparing JUMP and Mitocheck nuclei feature spaces. (A) Kolmogorov-Smirnov (KS) test results comparing JUMP and Mitocheck per common CellProfiler feature colored by specific CellProfiler feature group. The boxplot whiskers represent the interquartile range of 1,000 permutations of randomly subsampled JUMP single-cells from a single plate (JUMP Pilot plate BR00116991) compared to Mitocheck. Mitocheck and JUMP sample size is the same (n = 2,916). We show both raw and z-score normalized comparisons. (B) The same KS test results focused on AreaShape measurements, which showed the lowest differences in feature distributions across datasets. (C) Comparing variance of JUMP and Mitocheck for all CellProfiler features. The dotted lines are the function y=x (anything below is a feature with higher variance in Mitocheck). Note that low variance features group together near zero and obscure colors. (D) The same variance plot as panel C except focused only on the AreaShape features.

Thanks again for the review @jenna-tomkinson ! I will go ahead and merge now.


Simplify the implementation getting raw strings from ZendStrings

Now we can use the pointer in ZendString itself.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
We've detected an issue with your CI configuration that might affect the accuracy of this pull request's coverage report.
To ensure accuracy in future PRs, please see these guidelines.
A quick fix for this PR: rebase it; your next report should be accurate.

10 of 12 (83.33%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.08%) to 79.252%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/Lib/PhpInternals/Types/Zend/ZendOpArray.php
0
1
0.0%

src/Lib/PhpInternals/Types/Zend/ZendString.php
7
8
87.5%

Totals

Change from base Build<PHONE_NUMBER>:
0.08%

Covered Lines:
1906

Relevant Lines:
2405

💛  - Coveralls


Azure RBAC - Allow Multiple Roles  / Ability to select resource

Hi
It would be nice to allow the selection of multiple roles to assign to a group. For example, I would like to have the team receive reader to see all the resources, but also have specific roles assigned like Data Factory Contributor.
On the flip side, it might make more sense to grant a generic permission at the RG and then Elevate on some resources (data factory, ADLA). The current plugin goes as far as RG.

so far ill manage w/ perms at the RG. not a rush.its not a blocker for the pipelines i have on the go.

Sorry for the late response due to some personal stuff I haven't been able to proccess this hope to be able to do this in august

Investigated and will not be added to the extension


fix(table-tr-style): style tr style

set style on tr and td instead of only td
Proposed Changes

Potential Breaking Changes

Acceptance Criteria

[ ] The proposed changes are covered by unit tests
[ ] The potential breaking changes are clearly identified
[ ] README.md is adjusted to reflect the proposed changes (if relevant)

Zoom at 110% in the table, all pixel with no colors should be correct now

Codecov Report

Merging #1506 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1506   +/-   ##
=======================================
  Coverage   98.65%   98.65%
=======================================
  Files         502      502
  Lines       10390    10390
  Branches     2404     2404
=======================================
  Hits        10250    10250
  Misses        140      140

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 ff174f5...ba5bbf9. Read the comment docs.


[CINFRA-826] Fix replication2 TSAN

Scope & Purpose
This PR attempts to fix the current TSAN issues that were introduced in https://github.com/arangodb/arangodb/pull/19285

protect the _syncListeners with the _syncListenersMutex
std::move() the additional logPersistor copy

Here is the tsan.log file
Jenkins: https://jenkins01.arangodb.biz/job/arangodb-ANY-linux-san.x86-64/2063/

[x] :hankey: Bugfix
[ ] :pizza: New feature
[ ] :fire: Performance improvement
[ ] :hammer: Refactoring/simplification

LGTM, but couldn't we avoid adding an RW lock completely by creating the listeners a bit earlier in the code? I.e. register all sync listeners first, and only then call notify on them when the sync listeners won't change anymore.

Totally! In fact, this is how it worked before. The only such listener is the logPersistor, that is instantiated once in RocksDBEngine.cpp:1271. This means that registerSyncListener() is only called once.
But, TSAN generated about 8 warnings, I just wanted to silence it. I was weary to add a new warning suppression because this involves RocksDB related code and did not want to take the risk of hiding something that might show up in the future. Instead, I chose to over-engineer this already over engineered sync-listener stunt. Once our custom WAL implementation is ready for use, I am going to remove this from the syncer thread.
If you believe a suppression would've been better, I'm happy to change it back.


install: reference optional dependencies

Report
It might be worth mentioning on https://dvc.org/doc/install the various optional DVC dependencies to install.

@dberenbaum
https://dvc.org/doc/install/macos#install-with-pip - does it cover the needs? (these dependencies are needed only when you use pip or conda.
We can review the list (I would expect the DVC team to keep it up to date).


az sql server update --set fails when ad-admin principalType is null

Describe the bug
I first add an AzureAD administrator to my SQL server using az sql server ad-admin create, or by performing a similar action in the Azure portal. This appears to work fine.
If I then try to update an unrelated field on my SQL server using az sql server update --set, then the command will fail with an error that the AzureAD admnistrator is missing principal type.
Command Name
az sql server update
Errors:
(ExternalAdministratorPrincipalType) Invalid or missing external administrator principal type.
Please select from User, Application or Group.

To Reproduce
# Create a group in azure ad
az ad group create --display-name MyTestGroup1 --mail-nickname MyTestGroup1
adminGroupId=$(az ad group show --group MyTestGroup1 --query 'objectId' -o tsv)

# Create a SQL Server without an ad-admin
az group create -n rg-reproduce-error --location norwayeast

az sql server create \
  -g rg-reproduce-error \
  -n sql-reproduce-error \
  -u sqladmin \
  -p superduperstr0ngpassword1!

# Add an ad-admin
az sql server ad-admin create \
  -g rg-reproduce-error \
  -s sql-reproduce-error \
  -u MyTestGroup1 \
  -i $adminGroupId

# Try to update a field
az sql server update \
  -g rg-reproduce-error \
  -n sql-reproduce-error \
  --set tags.Role=Something

Expected behavior
A tag "Role=Something" should be added to my SQL Server resource
Environment summary
Linux-5.13.8-200.fc34.x86_64-x86_64-with-glibc2.33
Python 3.9.6
Installer: RPM

azure-cli 2.27.1

Extensions:
azure-devops 0.18.0

Additional context
The environment summary is for my local machine. However, the same error appears in an Azure-DevOps hosted agent release pipeline running Ubuntu-20.04. We use the az sql server update --set PublicNetworkAccess={Enabled/Disabled} at the start and end of a pipeline to apply database migrations to a SQL Server which is normally only accessible from our VNET.
This pipeline started failing yesterday, 12 august.
I reproduce it with changing tags above because it's simpler not having to set up VNET and private endpoints...
If I look at my sql server I can see that indeed the principal type is missing.
This may indicate that the bug is in the az sql server ad-admin create command, or the API it talks to.
$ az sql server show -n sql-reproduce-error -g rg-reproduce-error --query administrators
{
  "administratorType": "ActiveDirectory",
  "azureAdOnlyAuthentication": null,
  "login": "MyTestGroup1",
  "principalType": null,
  "sid": "{revoked}",
  "tenantId": "{revoked}"
}

I see we were two people reporting the same issue at the same time :sweat_smile:
Duplicate with #19227
I'll leave this open for now since I think I describe it more thoroughly

route to service team

Hi, I am facing the same issue when using the Azure CLI Task with azure pipelines. Any resolution for this issue ?

sql service team should look into this

Hi, I am facing the same issue when using the Azure CLI Task with azure pipelines. Any resolution for this issue ?

A work-around is to remove the AD-Admin from the SQL server. But then that group/app/person looses access.

Another work-around is to use an old version of Azure CLI. Version 2.16.0 is known not to have this bug.
Something like this works for me in bash, and could be put into a Bash task in Azure Pipelines
ARM_CLIENT_ID=<your-client-id>
ARM_SUBSCRIPTION_ID=<your-subscription-id>
ARM_TENANT_ID=<your-tenant-id>
ARM_CLIENT_SECRET=<your-client-secret>
docker run --rm -it mcr.microsoft.com/azure-cli:2.16.0 /bin/bash -c "az login --service-principal -u $ARM_CLIENT_ID -p $ARM_CLIENT_SECRET --tenant $ARM_TENANT_ID && az account set -s $ARM_SUBSCRIPTION_ID && az sql server update -n sdir-d-sqlvsrv-core01 -g sdir-d-rg-common --set publicNetworkAccess=Enabled"

Well there was a massive commit with breaking change in it:
https://github.com/Azure/azure-cli/commit/588910d98f07a885c3d840a548c72fc599a44df1
The SDK is updated and it contains a few changes related to managed identity, and aad admin. Didn't dive into it further, but that would be the commit that might have caused it.
Is there a way we can assist the service team?

I am no longer able to reproduce this error, so it looks like it has been fixed.
az sql server show -n sql-reproduce-error -g rg-reproduce-error --query administrators now correctly shows "principalType": "Group" instead of "principalType": null for my reproduce steps in the issue description.
Closing.


Unsupported Swift Version

Swift code needs to be updated, plugin cannot be used anymore until that is completed.

I am having the same error... Xcode 8 make migration to Swift 3 :)

Finally I solve it doing this https://github.com/BasqueVoIPMafia/cordova-plugin-iosrtc/blob/master/docs/Building.md

What did you do exactly? Thanks!

I have the same problem. Any insight? Please re-open.


problems extracting squashfs-image

I am trying to extract a squashfs image:
Scan Time:     2017-11-13 01:51:24
Target File:   /mnt/hdd/temp/fritz/var/tmp/filesystem.image
MD5 Checksum:  9cbfa202cc5acd8c13788d1b4978268a
Signatures:    344

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             Squashfs filesystem, big endian, version 4.0, compression:xz, size: 32122637 bytes, 5246 inodes, blocksize: 65536 bytes, created: 1971-01-07 18:57:17

However, the output folder is empty. I tried it with sasquatch and unsquashfs to no avail:
$ unsquashfs filesystem.image
Reading a different endian SQUASHFS filesystem on filesystem.image
Filesystem on filesystem.image is (4:0), which is a later filesystem version than I support!

 Not technically a binwalk bug though, as it just uses those for extraction.
Here is a workaround that should solve your problem: use 7zip as your squashfs extractor:
dg@ubuntu:~/workspace/binwalk_issue_301/var/tmp$ binwalk -e -D 'squashfs:squashfs:7z x %e' filesystem.image

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             Squashfs filesystem, big endian, version 4.0, compression:xz, size: 42501273 bytes, 5280 inodes, blocksize: 65536 bytes, created: 1971-05-07 21:54:33

dg@ubuntu:~/workspace/binwalk_issue_301/var/tmp$ binwalk _filesystem.image-0.extracted/0

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             ELF, 32-bit MSB MIPS64 executable, MIPS, version 1 (SYSV)
681592        0xA6678         End of Zip archive, footer length: 22
689384        0xA84E8         Unix path: /sys/bus/usb/devices
704128        0xABE80         SHA256 hash constants, big endian
828872        0xCA5C8         ELF, 32-bit MSB MIPS64 executable, MIPS, version 1 (SYSV)
846299        0xCE9DB         Neighborly text, "neighbor_sa_imageet_neighbour_by_name"
849028        0xCF484         Neighborly text, "neighbor_all_isakmp_sasmalloc"
849062        0xCF4A6         Neighborly text, "neighbor_all_ipsec_sassock_fastclose"
1034424       0xFC8B8         Unix path: /var/tmp/ike.log
... rest of results truncated ...

Additional Info
Doing a hexdump on the file, I am seeing the xz signature (fd 37 7a 58), so I don't think it is an edge case like http://www.devttys0.com/2011/08/extracting-non-standard-squashfs-images/, but I could be wrong.
In any case, 7zip seems to be able to handle it. There may still be more data in the archive though. When you run 7z x filesystem.image  get get the extracted filesystem file which then binwalk can read, but the 7zip extraction ends with an error message:
ERROR: There are some data after the end of the payload data : filesystem

Sub items Errors: 1

Archives with Errors: 1

Open Errors: 1

Sub items Errors: 1

Did you guys found a solution to extract Squashfs filesystem, big endian, version 4.0 ?
7z doesn't work neither.
My case is this FRITZ firmware : https://drive.google.com/file/d/1CB2-td7iDnMegNPQXzuUVsiSAb57LtbH/view

@Fckroun I haven't.
These tools may be useful:
can convert squashfs endianness - https://github.com/project-magpie/jffs2dump
unsquashfs may be able to extract it out of the box - https://tldp.org/HOWTO/SquashFS-HOWTO/mksqoverview.html
The file you posted is an executable, and it doesn't seem like there is an easy way to extract firmware from it.

@decidedlygray The executable file is used to update the firmware using a windows device, and going through a hexdump we can clearly identify the magic bytes '73 71 73 68' of a squashfs filesystem.
The problem was that the squashfs-tools do not support version 4 big endian filesystems.
What I found later, was this fork of squashfs-tools by onekey-sec :
https://github.com/onekey-sec/sasquatch
where they developed 'sasquatch-v4be' an alternative to 'sasquatch' for this particular case and it works like a charm.

@Fckroun  ok, excellent. Good find!
Unsolicited plug: I've used their online scanner service and it's pretty great. I haven't tried out their unblob  yet, which i think is their replacement for binwalk
Glad you were able to find a solution

Binwalk v3 supports this variation of SquashFS


Add notifications section in settings

Issue: #25
WIP PR to add push notifications and notifications settings in the app settings menu.
In Progress

Notifications for when Nook's Cranny and Able Sisters open and close
Toggle to verify if island time is synced with device time

TODO

Notifications for special events
Add toggles for other push notifications

@TheVaan

I would appreciate moving settings from section widget to section view. It’s not really user friendly putting settings in a widget.

I don't quite follow. Do you mean put all the sections in a single table separated by sections?

@rohanrk Oh my god. Sorry! I read this PR right after I woke up. My brain mixed up a few things. You've done everything right!


Add array values dynamically

Hi, I have some trouble to add values to an ArrayField.
I'm doing the following:
let model = this.formService.findById(attribute, this.formModel);
let arrayControl = this.formGroup.get(attribute) as FormArray;
let i = 0;
for (let value of arrayValues){
    this.formService.addFormArrayGroup(arrayControl, model);
    let input = model.get(i).group[0] as DynamicInputModel;
    input.valueUpdates.next(value);
    i++;
}

As the result I have only the first value of the array that is set and I don't understand why !

@Darkheir Hi!
There's something going on here I cannot fully explain. It's got something do to with change detection and asynchronism.
So this should litte change should make your code work:
for (let value of arrayValues){
    this.formService.addFormArrayGroup(arrayControl, model);
    let input = model.get(i).group[0] as DynamicInputModel;
    setTimeout(() => input.valueUpdates.next(value), 0);
    i++;
}

@udos86,
This is the same "bug" I told you on #438 , you cannot add anything to the model and call anything that modifies the control itself on the next line (like valuesUpdates, etc), you have to wrap it in a setTimeout() call. This further confirms my bug report (or maybe its a limitation from Angular4 itself) that you closed.

Thanks, this works !


Rearrange S3 API methods handlers traversal

weed/s3api: rearrange s3 methods handlers to ensure correct methods requesting
Otherwise current calls for some methods (i.e. GetObjectAcl) ends up with wrong method selection (i.e. GetObject).
Added generic comment rule of traversing methods

Did s3tests pass?
https://github.com/chrislusf/seaweedfs/blob/master/docker/Makefile#L58

Uh, oh, didn't see that 😔  I'll check in a moment

@kmlebedev thanks a lot! There were 2 failed tests for multi objects deletion. Will fix it

@kmlebedev it looks like those failing tests and test suites are not working on master at least on 6bee1e9714dace680b19d5a3e8481915e3755ff5 commit (here is an external link to diffchecker https://www.diffchecker.com/0WicrhtW)
I've got an email with your comment about panic but cannot see it currently, can you please share it once again?

@kmlebedev it looks like those failing tests and test suites are not working on master at least on 6bee1e9714dace680b19d5a3e8481915e3755ff5 commit (here is an external link to diffchecker https://www.diffchecker.com/0WicrhtW)

@zerospiel Yes it is, test test_list_multipart_upload_owner looks suspicious

Actually, this is because of #2631 that codes of lines
func (s3a *S3ApiServer) PutBucketAclHandler(w http.ResponseWriter, r *http.Request) {
	s3err.WriteErrorResponse(w, r, s3err.ErrNotImplemented)
}