Feature/321 add optional key parameter to retrieve

PR details
What is the purpose of this pull request? (put an "X" next to an item)

[x] Add a CLI option

What changes did you make? (Give an overview)
closes #321
Is there anything you'd like reviewers to focus on?

MetadataType
CLI Argument
retrieve by key
API

API Discovery
discovery
:x:
REST

Asset
asset
:heavy_check_mark:
REST

Automation
automation
:heavy_check_mark:
SOAP

Automation: Data Extract Activity
dataExtract
:heavy_check_mark: via collection filter
REST

Automation: File Transfer Activity
fileTransfer
:heavy_check_mark: via collection filter
REST

Automation: Filter Activity
filter
:heavy_check_mark: via collection filter
REST

Automation: Import File Activity
importFile
:heavy_check_mark: via collection filter
REST

Automation: SQL Query Activity
query
:heavy_check_mark: via extra SOAP req
REST

Automation: Script Activity
script
:heavy_check_mark: via collection filter
REST

Campaign Tag
campaign
:heavy_check_mark: via collection filter
REST

Content Area (Classic)
contentArea
:heavy_check_mark:
SOAP

Data Designer Attribute Groups
attributeGroup
:heavy_check_mark: via collection filter
REST

Data Designer Set Definitions
setDefinition
:heavy_check_mark: via collection filter
REST

Data Extension
dataExtension
:heavy_check_mark:
SOAP

Data Extension Template
dataExtensionTemplate
:heavy_check_mark:
SOAP

Data Extract Type
dataExtractType
:heavy_check_mark:
REST

E-Mail (Classic)
email
:heavy_check_mark:
SOAP

E-Mail Send Definition
emailSendDefinition
:heavy_check_mark:
SOAP

Folder
folder
:x:
SOAP

FTPLocation
ftpLocation
:heavy_check_mark: via collection filter
REST

Journey
interaction
:heavy_check_mark:
REST

Journey: Entry Event Definition
eventDefinition
:heavy_check_mark:
REST

List
list
:heavy_check_mark:
SOAP

Mobile Connect Code
mobileCode
:heavy_check_mark: via collection filter  (tbc by @DougMidgley)
REST

Mobile Connect Keyword
mobileKeyword
:heavy_check_mark: (tbc by @DougMidgley)
REST

Role
role
:heavy_check_mark:
SOAP

Triggered Send
triggeredSendDefinition
:heavy_check_mark:
SOAP

User
accountUser
:heavy_check_mark:
SOAP

Checklist

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] ESLint & Prettier are not outputting errors or warnings
[x] README.md updated (if applicable)
[ ] CHANGELOG.md updated
[x] ran npm run docs to update developer docs

@DougMidgley  - can you please verify that the solution works for

[ ] MobileKeyword
[ ] MobileCode


Implement automated coding contract handling

[x] Discovery of Coding Contracts across the network
[ ] Classification and solving of contract types
[x] Logging and displaying of results

Partially implemented, not every coding contract is handled yet.


Take advantage of clang-formats new rules

Because why not

Should this be good to merge now?

Would need to be applied to the codebase first, but so long as everyone likes the style it's fine


CAPI bug: uws_res_override_write_offset

must be in a separate branch
https://github.com/uNetworking/uWebSockets/blob/c5d687540ab6d12b5f33685892a08eb112df6ab1/capi/libuwebsockets.cpp#L1143

elaborate

No return and No else, branching is indeed needed, I added the fix to PR #1571


report a vulnerability link is unreachable

What happened:
the "report a vulnerability " link is unreachable in https://github.com/kurator-dev/kurator

What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

Kurator version:
Others:

@LiZhenCheng9527

/assign @LiZhenCheng9527

It is fixed broken link in README.md.


Port mapping properties are not shown for external interface

Create interface with proxy send timeout in Edit external interfaces and endpoints view. Edit added interface. Send timeout is not shown.

This may be a bug in abilities for port mapping properties.

It is a bug in ability.


Migrate static data in the merit order chart preferably to ETSource + output_element_series

I'm talking ofcourse about these lines of code.
Somehow it feels a bit weird that these lines are over there. I would love to see those in an output_element_serie. The thing is than that the gql's responsible for handling the return data needs to return three values, the capacity, the operating_costs and the load_factor (in the correct order, or as a Hash?).
There are 25 keys, so times three 75 gql's? Seems a bit like a lot that can be cleaned up. 😅

@grdw , what is the status of this issue?

Fixed by https://github.com/quintel/etmodel/commit/ea3a67a1d652b2757b400896a7f7ee372bca059c


Add SPM

Gonna build packages for SPM and make the iOS department pay for it.
Make PHP developers great again

https://github.com/M2Mobi/Marky-Mark/issues/98

@SMillerDev your build is failing because of UIKit imports, will you fix it? :)

I might

You clearly have a higher interest in it then beating your colleagues though. You might be better off making your own pull request. You could be the hero that fixes this for all users of Marky-Mark.

Couldn't (really) wait for this to be merged, it turned out to work just fine for me. Nice one Sean!

@lvnkmn are you saying this implementation is correct and my tests are just wrong?

Not trying to offend your tests here. It works for what I need it to do, that's all.

I'm not at all offended, just disappointed in my google skills 😄

It works well if you import UIKit in missing files :)

Remaining failure seems to be an issue with iOS 13 more then SPM. @M2Mobi/ios any ideas?


demo link broken

Currently live demo says...
"You can test the live demo of the library running from the GitHub page"
and points to https://tentone.github.io/geo-three/examples/index.html
It should point to:  https://tentone.github.io/geo-three/

Yes, but even if fixed, it's affected by https://github.com/tentone/geo-three/issues/16#issuecomment-860561933
While these 2 issues need to be fixed independently, they interact, because there's no benefit in linking a broken demo either (whether it's 404 or nonfunctional due to errors).

@wallabyway  Thanks a lot, i will fix the link and point it to the right URL.

Thank you for such an impressive library !
I back-ported it to an old Three.js R71 library


Any plans for pytorch?

Python version of torch was released recently: http://pytorch.org/
Any plans to move openface over? Might make installation and development tasks easier in the future now that everything is in Python instead of Lua.

Yes, I'll merge a PR adding PyTorch support

A Pytorch implementation would make installation process much simpler.

@bamos Has it been added?


RegressionAdd log for p1 statistics

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


[DCA] Query CLC Runners stats

What does this PR do?

adds a http client to be used by the DCA to query CLC Runners stats
updates DCA cache with CLC Runners stats

Motivation
Rebalance and optimize the cluster level checks dispatching logic
Additional Notes
https://github.com/DataDog/datadog-agent/pull/3931

@CharlyF Thank you for the review 💯
I've made updates and I also added a small logic to calculate busyness based on the collected stats. The rebalancing algorithm will be implemented in another PR but based on this branch.
Looking forward to a 2nd review 🔥

replaced by https://github.com/DataDog/datadog-agent/pull/4068


Support Function-implementing class inheritance

Here is my problem:
public abstract class A<T> implements Function<T, Bar> {
    public A(HttpHeaders headers, ...) {}
    public final Bar apply(T t) {
        return doSomething();
    }

   public abstract Bar doSomething();
}

@Mapper
public class B extends A<Foo> {

    @MapperFactory
    public B(HttpHeaders headers, ...) {
        super(headers, ...);
    }

    public Bar doSomething() {
        // ...
    }
}

This triggers a compilation error although it shouldn't:
[ERROR] Mapper must have one and only one method qualifying as mapper method (either implemente Guava's Function interface or define a single non private method)

In short inherited Function apply should be detected.

Note that adding the following method to B:
public Bar apply(Foo foo) {
    return super.apply(foo);
}

will only delay the problem.
The generated Mapper interface won't extend any types, as the Function type implemented in A is not detected.

A start would be (cf. JavaxParsingServiceImpl):
  private Collection<? extends Element> allMethods(TypeElement classElement) {
    Collection<Element> result = new ArrayList<>();
    result.addAll(classElement.getEnclosedElements());

    TypeMirror superclass = classElement.getSuperclass();
    TypeElement element = (TypeElement) processingEnv.getTypeUtils().asElement(superclass);
    if (element.getQualifiedName().toString().startsWith("java.lang")) {
      return result;
    }

    result.addAll(allMethods(element));
    return result;
  }

Remaining problems:

generated interface does not extend Function
apply generic parameter is not resolved (and then does not compile)

Hello,
Thanks for reporting the issue.
The DAMapping framework does indeed not support class hierarchy of mappers. I didn't think that would actually be of any use. I couldn't figure what kind of behavior could actually be held by an abstract class since mappers are supposed to hold quite atomic pieces of code.
While I work out support for it, here is something that I think should workaround the problem (not tested):
@Mapper
public class B extends A<Foo> implements Function<Foo, Bar> {

    @MapperFactory
    public B(HttpHeaders headers, ...) {
        super(headers, ...);
    }

    public Bar doSomething() {
        // ...
    }
}

In my usecase, I define many mappers doing a similar work: converting an entity to a JAX-RS response. While the mapping itself is different from entity to entity, the rest can be abstracted away (therefore the abstract class).
This is feasible, although generic parameter resolution is going to be tricky.

@fbiville, does the workaround actually work for you?
I agree, this feature can be implemented.

This workaround works, except I'm blocked by https://github.com/lesaint/damapping/issues/59

did you take a look at #43 ? I would welcome some user feedback on the solution I suggest

Nailed that one, generics included!
Fix available in branch support_dedicated_class_hierarchy

Will try to test it tomorrow.

done


search uses deprecated v1 api

mastodon.social gives a 404 for api/v1/search because it has been replaced with api/v2/search, making it impossible to search from subway tooter

ST will try v2 first and if response code indicates error , then try v1.
https://github.com/tateisu/SubwayTooter/blob/dc8148b3d17c439d20373d0f83443d2c6ec08bae/app/src/main/java/jp/juggler/subwaytooter/api/TootApiClient.kt#L1281
https://github.com/tateisu/SubwayTooter/blob/406ce8e5c522fb8982a2776f98b250caee54997e/app/src/main/java/jp/juggler/subwaytooter/column/ColumnTask_Loading.kt#L1226

ahh, it seems the search works but the placeholder is incorrect and misleading

in this case, both of v2 and v1 have been failed.
Perhaps the conditions under which the app should fall back from v2 to v1 should be narrower (e.g., fall back to v1 only if v2 returns a 404), but I am not clear on that.

i think v2 search requires a user token now, so it probably returns 401.
not completely sure though, haven't tested it yet
On Sat, Oct 29, 2022, 2:51 PM tateisu @.***> wrote:

in this case, both of v2 and v1 have been failed.
Perhaps the conditions under which the app should fall back from v2 to v1
should be narrower (e.g., fall back to v1 only if v2 returns a 404), but I
am not clear on that.
—
Reply to this email directly, view it on GitHub
https://github.com/tateisu/SubwayTooter/issues/201#issuecomment-1295935340,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACQ5OX7NENSVOTZHILHD5I3WFVWZJANCNFSM6AAAAAARRRYFFE
.
You are receiving this because you authored the thread.Message ID:
@.***>

if parameter q is famous tag,  mastodon.social returns tags with plot, it
means v2 search succeeded.
I think the behavior of v2 search was  changed if parameter q is empty.
2022年10月30日(日) 6:24 trwnh @.***>:

i think v2 search requires a user token now, so it probably returns 401.
not completely sure though, haven't tested it yet
On Sat, Oct 29, 2022, 2:51 PM tateisu @.***> wrote:

in this case, both of v2 and v1 have been failed.
Perhaps the conditions under which the app should fall back from v2 to v1
should be narrower (e.g., fall back to v1 only if v2 returns a 404), but
I
am not clear on that.
—
Reply to this email directly, view it on GitHub
<
https://github.com/tateisu/SubwayTooter/issues/201#issuecomment-1295935340
,
or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/ACQ5OX7NENSVOTZHILHD5I3WFVWZJANCNFSM6AAAAAARRRYFFE
.
You are receiving this because you authored the thread.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://github.com/tateisu/SubwayTooter/issues/201#issuecomment-1295981585,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACRQ6E36O6IFBPUBVF23HTWFWIXPANCNFSM6AAAAAARRRYFFE
.


using center and defaultCenter

I am using default center prop to set the default center, and center prop (set to undefined by default) to center markers on click event.
When I change center prop, I get
'GoogleMap: defaultCenter prop changed. You can't change default props.'
The React inspector shows defaultCenter unchanged.
Am I doing something no right?
What is the proper usage?
Thanks!

== is not the same as ===
As you understand  even for empty objects {} === {} is false,
in current lib as in many others equality is not deep equality but reference equality.
Also it's a bad idea to have defaultValue and value (The same for center)
In react 15 React DOM now warns if you specify both value and defaultValue for an input.
Please read about controllable and uncontrollable React components, or search issues here about.


How do you I change the default storage location "/var/tmp/ocis"?

Your documentation leads me to "Configuration using config files",
it then mentions "ocis-proxy reads proxy.json..." which seems to be an archived project,
and then says full configuration examples in our repositories, but the ones that could provide an answer are blank.
Running the Server has not provided a default ocis.yml anywhere I can find.
So, please, can someone explain how to change "/var/tmp/ocis".
example.json and example.yml in following are blank
https://github.com/owncloud/ocis/tree/master/ocis/config

oCIS proxy and all other extensions have been archived because they were moved to the oCIS monorepo.
The configuration example files can be found in the subfolder "config" of the folders named after the extensions, eg. for the proxy its here: https://github.com/owncloud/ocis/blob/master/proxy/config/proxy-example.json
For changing the default storage path you currently need to change a lot of parameters, but we are working on it to make it easier (https://github.com/owncloud/ocis/pull/1048).
Following example is using environment variables to configure oCIS to store data to /var/lib/ocis
SETTINGS_DATA_PATH=/var/lib/ocis/data/settings
STORAGE_DRIVER_OCIS_ROOT=/var/lib/ocis/data/storage/ocis/users
STORAGE_SHARING_USER_JSON_FILE=/var/lib/ocis/data/storage/shares.json
STORAGE_SHARING_PUBLIC_JSON_FILE=/var/lib/ocis/data/storage/publicshares.json
STORAGE_HOME_TMP_FOLDER=/var/lib/ocis/data/tmp/storage/home
STORAGE_METADATA_TMP_FOLDER=/var/lib/ocis/data/tmp/storage/metadata
STORAGE_METADATA_ROOT=/var/lib/ocis/data/storage/metadata
STORE_DATA_PATH=/var/lib/ocis/data/store

According to some of the recent release notes - one can specify $OCIS_BASE_DATA_PATH variable in the environment config files ... https://newreleases.io/project/github/owncloud/ocis/release/v1.14.0
However, when I tested it against OCIS 1.9.0 that variable is not respected, files kept getting created in the default /var/tmp/ocis/storage location

According to some of the recent release notes - one can specify $OCIS_BASE_DATA_PATH variable in the environment config files ... https://newreleases.io/project/github/owncloud/ocis/release/v1.14.0
However, when I tested it against OCIS 1.9.0 that variable is not respected, files kept getting created in the default /var/tmp/ocis/storage location

Sure, it does not work in oCIS 1.9.0 because it was introduced in oCIS 1.14.0. There also is no equivalent in oCIS 1.9.0 to that. So there is no way around updating to oCIS 1.14.0 or later, but there are also a lot of other bug fixes you'll get with that ;-)


reduce quoteservice spans

Changes
Update slim auto-instrumentation to beta4, and remove psr-15 auto-instrumentation.
Merge Requirements
For new features contributions please make sure you have completed the following
essential items:

[x] CHANGELOG.md updated to document new feature additions
[ ] Appropriate documentation updates in the docs folder

Maintainers will not merge until the above have been completed. If you're unsure
which docs need to be changed ping the
@open-telemetry/demo-approvers.

From 14 spans to 3 spans. Nice!

Fix towards https://github.com/open-telemetry/opentelemetry-demo/issues/659


Add partition grid

Adds feature to print partition list as a grid which falls back to a list in case only 1 column can fit or if cli is not running in a tty

Deprecating this in favour of https://github.com/crazystylus/otadump/pull/31 - we're adding a proper GUI to Tauri.


Added MasterProducts endpoint

User description
Description:

Added MasterProducts endpoint

PR Type
enhancement, documentation

Description

Added new Products and MasterProducts endpoints to the ApiClient, enabling CRUD operations for both product types.
Implemented ProductState enum to manage product states with a default state method.
Created models for Product and MasterProduct with necessary attributes and traits.
Introduced BaseWriteModel and specific write models (ProductCreate, ProductUpdate, MasterProductCreate, MasterProductUpdate) for handling product data operations.
Updated Changelog.md and README.md to document the new endpoints and provide usage examples.

Changes walkthrough 📝
Relevant filesEnhancement11 files

ApiClient.phpAdd Products and MasterProducts endpoints to ApiClient

src/ApiClient.php
Added Products and MasterProducts endpoints to the ApiClient.  Updated the version constant to '0.6.0'.

+2/-0

MasterProducts.phpImplement MasterProducts endpoint with CRUD operations

src/Endpoints/MasterProducts.php
Implemented CRUD operations for MasterProducts.  Added methods to get, create, update, and delete master products.

+106/-0

Products.phpImplement Products endpoint with CRUD operations

src/Endpoints/Products.php
Implemented CRUD operations for Products.  Added methods to get, create, update, and delete products.

+106/-0

ProductState.phpDefine ProductState enum for product status management

src/Enums/ProductState.php
Added ProductState enum with various states.  Provided a default state method.

+17/-0

MasterProduct.phpCreate MasterProduct model with attributes and traits

src/Models/MasterProduct.php
Created MasterProduct model with attributes.  Included traits for ID, timestamps, and dynamic attributes.

+31/-0

Product.phpCreate Product model with attributes and traits

src/Models/Product.php
Created Product model with attributes.  Included traits for ID, timestamps, and dynamic attributes.

+33/-0

BaseWriteModel.phpIntroduce BaseWriteModel for write operations

src/WriteModels/BaseWriteModel.php
Introduced BaseWriteModel for write operations.  Implemented method to convert data to array.

+22/-0

MasterProductCreate.phpAdd MasterProductCreate model for creating master products

src/WriteModels/MasterProductCreate.php
Added MasterProductCreate model for creating master products.  Included methods to set various attributes.

+136/-0

MasterProductUpdate.phpAdd MasterProductUpdate model for updating master products

src/WriteModels/MasterProductUpdate.php
Added MasterProductUpdate model for updating master products.  Included methods to set various attributes.

+136/-0

ProductCreate.phpAdd ProductCreate model for creating products

src/WriteModels/ProductCreate.php
Added ProductCreate model for creating products.  Included methods to set various attributes.

+157/-0

ProductUpdate.phpAdd ProductUpdate model for updating products

src/WriteModels/ProductUpdate.php
Added ProductUpdate model for updating products.  Included methods to set various attributes.

+150/-0

Documentation2 files

Changelog.mdUpdate changelog with new endpoints

Changelog.md

Documented the addition of Products and MasterProducts endpoints.

+5/-0

README.mdDocument Products and MasterProducts endpoints with examples

README.md
Added documentation for Products and MasterProducts endpoints.  Included examples for CRUD operations.

+130/-0

💡 PR-Agent usage:
Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

This branch was created from the feat-products branch.


Stats for dashboard

Not ready for merge yet, but this is a first pass at the dashboard stats piece. Currently not behind any auth, but that might be OK. Needs a bit of frontend love too.

Changes Unknown when pulling ee707717731fe4f1d67c8755b82800365f83568f on stats-for-dashboard into ** on master**.

Changes Unknown when pulling ee707717731fe4f1d67c8755b82800365f83568f on stats-for-dashboard into ** on master**.

Changes Unknown when pulling c1a9ab60b5a8abac7931a2b70db196fd2db97952 on stats-for-dashboard into ** on master**.

Changes Unknown when pulling 35696470b879eae58a391006b94a0c1154540ceb on stats-for-dashboard into ** on master**.

Changes Unknown when pulling 674b195cf01104d5a0fe89fc088f3714c2499dfe on stats-for-dashboard into ** on master**.

 As an user I want the system to help improve my efficiency.

Coverage increased (+0.6%) to 94.002% when pulling 4ce463497e511b7c09d87d4e0def65450132f592 on stats-for-dashboard into 5ffcb122733000fdb4f047702f66c9429cd5f37b on master.


feat: Feature testing - rename output -> then

Description
Rename "Output" folder to "Then" to be consistent with Gherkin syntax.
Pull-request quality

[x] The title adheres to this guide
[ ] Tests are written and executed locally
[ ] Subsystem tests have been tested (by manually deploying to dev_002)

Am I missing something? It looks like you're mostly just deleting test files.

Yes, Git didn't recognize it as a rename, but rather delete and add. Thus the issue I'm trying to resolve.


[CI] Build wheels in CI instead of source install

Anything you want to discuss about vllm.
https://github.com/vllm-project/vllm/pull/3798#issuecomment-2032408340

shoud be done by https://github.com/vllm-project/vllm/pull/3859


No way to prevent deselect

Ideally, there should be a way to prevent deselecting if you have it set to only allow single selection

Deselect is only enabled when you decide to show the buttons.


Allow for incorrect start index in xref

Found several PDFs (unknown creator) with xref tables that start:
xref
1 <num>
0000000000 65535 f

This should not happen, as the first entry in the first xref is always supposed to be 0.
These files open OK in the viewers I tried.
This PR adds a work-round to allow the files to be read.
I guess it might be worth logging a warning?

Being able to parse PDFs like this makes a lot sense, and I love that there's a sample PDF+spec.
I'm not super keen on the instance_variable_get though, it feels like it'll be hard to maintain in the long term. Do you think we can find an alternative way to get the spec green?

lovely!


Deployment

As a boot camp student
I want the prework notes to be structured on a webpage
So that I can Easily find and read the information
GIVEN a Prework Study Guide website
WHEN I visit the website using the URL,
THEN I can access my website from any browser


The with operator

Calyx currently supports a with in three locations: invoke, if, and while. The basic idea is that some operations need to execute a combinational group to make combinational components active during execution before reading values from the output ports of the respective combinational operator.
The current with operator has the following nice properties:

Reasoning is local. Since the combinational group is only defined to be active for a specific part of the execution---while the condition is evaluated for if and while and while the component is executed for invoke---it does not disrupt local reasoning of groups and control operators.
Easy to compile into normal groups. This is because of (1). All uses of comb groups can be turned into normal groups using the remove-comb-groups pass.

I am going to claim that (1) & (2) are good and probably important properties to maintain when extending the language. There are two competing proposals for a more general with operator in my mind and we can evaluate them using these properties.
Scoped with Operator
This will define a generic with operator that can be used like any control operator and activates a combinational group:
with comb_group {
  while lt.out {
    seq { g1; g2 }
  }
}

The semantics of the operator is that assignments within it are active during the entire scope of execution. In my opinion, this approach violates both (1) and (2). For example, when reasoning about g1, the compiler needs to be aware of the entire stack of combinational groups that may be currently active. Additionally, there is no way to compile this operator into simple groups since the values on the inputs in the combinational group may change between execution of internal groups.
Enable with
This is a more modest extension to the language and is in spirit of the other uses of with:
seq {
  g1 with comb_group1;
  g2 with comb_group2;
}

This operator, like previous additions of with, is easy to implement and retains (1) and (2). Compiling away the with operation is as simple as copying all the assignments in the combinational group into the group.
Given this, I'm leaning towards the second proposal but would like to hear other opinions about this. Both of these will allow implementation of inlining of invokes as discussed in #807.

More thoughts from a discussion about these two options: It seems that we've kind of tangled ourselves in this mess because of the way invoke works–it allows for scope execution of continuous assignments. Initially, this was in the form of assignments to its input/output ports and now this includes the combinational group attached to it. So either way, we're in a place where we have to lose the "local" reasoning of groups that we thought we had because we are working in a world where continuous assignments can essentially be lexicaly scoped.
The another comment is that the second proposal, enable-with, cannot express inlining correctly. Consider this program:
par { g1; g2 }

Where both g1 and g2 read from the parent component's input port in. If inlining proceeds the way we're imagining,  every group that uses an interface port now needs to additionally invoke a combinational group that provides the assignments to those ports once inlined, g1 and g2 will invoke the same combinational group and therefore has a parallel assignment conflict.

So either way, we're in a place where we have to lose the "local" reasoning of groups that we thought we had because we are working in a world where continuous assignments can essentially be lexicaly scoped.

I'm not entirely following this; specifically, why scoped assignments would lead to the loss of local reasoning. Can you elaborate / provide an example?

You can't reason about the assignments inside any group in isolation; you have to look at the stack of all active continuous assignments at each group enable to really understand what's going on.
For example, we have a papercut check to ensure that a register's write_en and in port are always driven together in a group. With scoped combinational groups, this no longer a property of a group---it is instead the property of a group enable contextualized by the set of active combinational groups.


Possible syntax simplification - type inference

Say I have a Value Notifier, controller and a widget (it's a simplified example)

import 'package:flutter/material.dart';
import 'package:get_it/get_it.dart';
import 'package:get_it_mixin/get_it_mixin.dart';

class FirstSampleNotifier extends ValueNotifier<Model?> {
  FirstSampleNotifier() : super(null);
}

class Model {}

class FirstController {
  final FirstSampleNotifier firstSampleNotifier;

  FirstController(this.firstSampleNotifier);
}

class FirstWidget extends StatelessWidget with GetItMixin {
  FirstWidget({super.key});

  final firstController = GetIt.I<FirstController>();

  @override
  Widget build(BuildContext context) {
    final model = watch(target: firstController.firstSampleNotifier);
    return const Scaffold();
  }
}

The type of model in the build method isn't inferred (it's dynamic), unless I do instead:
final model = watch<ValueNotifier<Model?>, Model?>(target: firstController.firstSampleNotifier);
then it's correctly identified as being Model?.
Is there something I'm missing or is this long way of putting it the only way when the Value Notifier type is nullable?

Similar example with a value notifier whose value is bool and it isn't nullable:

import 'package:flutter/material.dart';
import 'package:get_it/get_it.dart';
import 'package:get_it_mixin/get_it_mixin.dart';

class SecondSampleNotifier extends ValueNotifier<bool> {
  SecondSampleNotifier() : super(false);
}

class SecondController {
  final SecondSampleNotifier secondSampleNotifier;

  SecondController(this.secondSampleNotifier);
}

class SecondWidget extends StatelessWidget with GetItMixin {
  SecondWidget({super.key});

  final secondController = GetIt.I<SecondController>();

  @override
  Widget build(BuildContext context) {
    final boolValue = watch(target: secondController.secondSampleNotifier);
    return const Scaffold();
  }
}

Again, the type of boolValue isn't inferred, I have to write instead
final bool boolValue = watch(target: secondController.secondSampleNotifier);
which isn't a big thing, but am I missing something here? Is there some syntactic sugar I don't see?

I recommend switching to my new package watch_it which has a more intuitive API and probably solves your problem too.


configure the grep behaviour

Thank you for your work on this great extension!
I'd like to configure the search_log_content function to grep on commit messages instead of commit content. I read your doc but didn't find if this is possible or not. Can you please clarify?
Thanks again!

In the search_log_content there is no way to search based on commit message. It was designed to search in the content of the commits (added, deleted or moved text).
I can try to implement something to change the grep behaviour while searching. Something like this: https://github.com/nvim-telescope/telescope.nvim/blob/b79cd6c88b3d96b0f49cb7d240807cd59b610cd8/lua/telescope/actions/init.lua#L1270-L1290

In the search_log_content there is no way to search based on the commit message. It was designed to search in the content of the commits (added, deleted, or moved text).
I can try to implement a keymap to change the grep behavior while searching. Something like this<EMAIL_ADDRESS>
this keymap does work already for filtering over the commit message.
I believe the issue can be closed.

@aaronhallaert the default keymap is c-space: https://github.com/nvim-telescope/telescope.nvim/blob/dc1ea28cc2a02cd1cebb9d80e967807d668f78f8/lua/telescope/builtin/__lsp.lua#L366
I've used a different binding for this keymap but other than that it's working for me out of the box.

it's possible that this keymap is limited to live grep by default, if that's the case add it to the defaults:
			require("telescope").setup({
				defaults = {
					mappings = {
						i = {
							["<C-f>"] = require("telescope.actions").to_fuzzy_refine,
						},
					},
				},
			})

Good to know that this already works for Telescope.


It adds the TEG.  Do we really need circulators???
[ ] I dunno anymore whatever the atmos techs yell at me about
[x] Sobbing

Media

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

Changelog

:cl: eclips_e

add: The TEG is here. All hail breaking reality.

teslaloose

if anyone could check if the math is correct i would be happy

Wow. This thing will be an excuse to return to the engineering department.

instyamerg dis

sick

please make this a draft

Yall really want me to get the Tesla in faster huh

if you give me the TEG ss13 sprites i might be able to improve it if you want

superseded by #18840 (am i using the right term???)

yes


Setup base theme

Demo :
https://github.com/scaffold-eth/se-2-challenges/assets/80153681/83baa225-5b6b-43fe-8032-aa499a7d021d
Description :

SRE theme
SE-2 Theme

NOTE: I tried replicating almost all the colors but secondary and base-100 colors were generated by me (don't know if they go well with the brand theme)

I tried configuring the theme such that we had to do minimal changes at the component level everything auto-adapts and looks nice with configured SRE theme.
TODO :

[ ] Set default style for buttons similar to SRE buttons
[ ] Optimize fonts using next/font

Demo Link : https://se-chall.vercel.app/
Open to reconfiguring / reconsidering the whole thing 🙌

Great job @technophile-04 :raised_hands:


some bugs in CategoricalFocalLoss function

super(BinaryFocalLoss, self).init(reduction=reduction, name=name)
the BinaryFocalLoss may be CategoricalFocalLoss

@CyrilZhao-sudo  This is fixed now, thanks.

@CyrilZhao-sudo This is fixed now, thanks.

For the layer，MultiheadAttention， the output shape is always (batch_size, field_size, embedding_size), not (batch_size, field_size, embedding_size*num_head). en ?

@CyrilZhao-sudo This is fixed now, thanks.

Here, class DefaultPreprocessor,  fit_transform method,
{if copy: # TODO  bug here
X = copy.deepcopy(X)
y = copy.deepcopy(y)}   .  the copy  may be copy_data.

@CyrilZhao-sudo This is fixed now, thanks.

Here, class DefaultPreprocessor, fit_transform method,
{if copy: # TODO bug here
X = copy.deepcopy(X)
y = copy.deepcopy(y)} . the copy may be copy_data.


Refactored the getHintContent to HintContent issue #1012

Description
We have a shared component called FormFieldWrapper. There are some parts of it that use old patterns that we'd like to update.
There are these get getter type functions that return JSX. Really these should be components that return JSX in accordance with modern patters.
This would would be to assess those parts of FormFieldWrapper and refactor and improve them.
For example, this getHintContent, should be a component called HintContent
Which issue(s) does this PR relate to?
Testing
test the FormFieldWrapper component
Trade-offs
Screenshots

Checklist

[ ] This PR is associated with a JIRA and it is mentioned in the commit message footer ("Closes …")
[ ] Significant changes have been tested downstream to avoid breaking changes
[ ] This PR contains breaking changes and states in the commit message body ("BREAKING CHANGE: …")
[x] I have reviewed the changes and provided detail to the sections above

@nataliepina  will this changes do?

@nataliepina will this changes do?

Unfortunately this is not quite what we want, as we want to get rid of the use of the components in this manner.

Should I remove getHintContent from the children and replace it by the component?

Should I remove getHintContent from the children and replace it by the component?

Apologies @Chirag-Nanda I did not fully dig into this issue when creating it and i've taken some time to look into this, it's going to be a really involved change that would likely require refactoring the complete use of FormFieldWrapper. I think it's best if we close this one and table the changes until later on and I can take the time to research and formulate a well documented issue around this.
I'll try to add some more issues soon for open source contributions that are better defined soon. Cheers!


No automatic signin?

Hi, I'm just writing to thank you for writing this project. I was just wondering will you be implementing automatic sign-in too?

@emailsubjekt , thank you for creating the bug!
Automatic sign in is already implemented and is named 'silent sign in'.
Could you please recommend a change in documentation to make the feature easier to discover for people like you?
You can check how the feature works at https://flatter-auth-ui-demo1.codemagic.app/#/
Here is the steps:

Open the link
Sign in
Close browser
Open the link again
It is expected that you will be signed in automatically.

If it does not work for you, please, create bug with the details like what browser you use.


Resolve selection for universal locks needs its own logic.

Unlike platform specific locks, universal locks only ever will have 1 locked resolve contained within - the universal resolve. That resolve should always be picked without ranking dists; only the requires_python, if present, should be used to fail fast in the case that the targets don't comply.

The groundwork for this was layed in #1625 with the introductio of LockedResolve.resolve.
https://github.com/pantsbuild/pex/blob/2e2d1e50e604fdee48b0d51aea482ca255521ff0/pex/resolve/locked_resolve.py#L435-L445
All that's needed now is replacing Lockfile.select with it:
https://github.com/pantsbuild/pex/blob/2e2d1e50e604fdee48b0d51aea482ca255521ff0/pex/resolve/lockfile/lockfile.py#L139-L149


refactor: ♻ enforce @immutable and declare final Notation classes

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1075

Relevant Lines:
1075

💛  - Coveralls


pretty printer: group operations by precedence

[*binary.Mul]
    "Left":
    [*binary.Plus]
        "Left":
        [*expr.Variable]
            "VarName":
            [*node.Identifier]
                "Value": a;
        "Right":
        [*expr.Variable]
            "VarName":
            [*node.Identifier]
                "Value": b;
    "Right":
    [*expr.Variable]
        "VarName":
        [*node.Identifier]
            "Value": c;

Currently, above AST is printed incorrectly: $a + $b * $c.
It must group Plus expression and print ($a + $b) * $c

Could be simpler with better parenthesis support inside parser/AST.
See #97.


pull request for e2e test at 01/29/2017 05:56:11

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Srun args

Hi, I already merged the other PR, was this one opened by accident?

Yes, it was an accident. Thanks!


[v0.5.1] Unresolved shapes unless opened once in the editor

Not sure if this is an issue with the language server or the vscode extension so starting here.
Issue
When I start VSCode in my Smithy 2.0 package the LSP reports that all my custom shape are unresolved. Building the model works fine and there are no exceptions/warnings.
Opening the file that contains the shape definition fixes the issue, but reoccurs every time the editor is restarted.
Example
# src/foo.smithy
$version: "2"
namespace com.bing.bong

use com.bing.bong.util#TagSet

...

structure Blah {
  ...
  tags: TagSet, // Target: member shape targets an unresolved shape `com.bing.bong.util#TagSet`Smithy LSP
}

# src/util/Tag.smithy
$version: "2"
namespace com.bing.bong.util

...

structure Tag {
  key: String,
  value: String,
}

@uniqueItems
list TagSet {
  member: Tag,
}

I have this same issue. Very annoying if you have a many-file Smithy definition.

This is fixed in https://github.com/smithy-lang/smithy-vscode/releases/tag/0.6.0, assuming you have a smithy-build.json or .smithy-project.json that tells the extension/language server which smithy files are a part of your project.


Update README.md

please add level

@sanjay-kv @samarasimhapeyala  @zeeno2616  @Jisha-tr please assigned the level

@sanjay-kv could you please assign level 3🥹

@sanjay-kv I’m really close to earning the badge, and this would help me reach it. I’d be so grateful if you could do me this favor! .... please

HEy @saras-69 I appreciate that, but if i assign level3 for adding just name other contributor gonna make an issue. why dont you work on the readme files in this repo. https://github.com/recodehive/machine-learning-repos


Set type:module in package.json

index.js is an ES6 module, and so requires type: module be set in package.json to work properly in all setups.
It would also suffice to rename it to index.mjs, and not touch package.json, i believe.

Thank you, the change is published to npm, v 1.1.4


Generic Grid model interface.

The General Grid can take a small piece of the Goyal Grid and re-normalize them to a given set of parameters.
@hrwakeford and I have the data on the reduced grid, and Hannah also knows also knows the specifics of what parameters are fixed vs normalized vs ...
Her code to do this is already written and available here : https://github.com/hrwakeford/Generic_Grid

Done in #173


Added SVG Editior "Boxy SVG"

Here you can easily edit any SVG file and save them for free.
Link - https://boxy-svg.com/

I think you have a typo. It should be "Editor", not "Editior". Can you, please fix it? Thanks!

Fixed it. Thanks for letting me know.


Demo Enhancements

I am things to track that I might want to add new
DEFINITELY ADD:

[x] Slack integration with end to end demo

NICE TO HAVE

[ ] Using the GH CLI to interact with workflows
[ ] Show how to turn on debugging
[ ] Conditional steps (this is in advanced, maybe show here)
[ ] Concurrency?
[x] Demo 05 - make the PR fail initially
[ ] For Demo 5 deploy, can we combine DEV/QA into one job using a matrix strategy
[ ] Show how you can add status badges for the workflows
[x] Interactions with Slack or Microsoft teams

tested ability to execute workflows using the GH CLI, with parameters, and it worked. The plan is to add instructions for this as "extra" if there is time during the talk.  Otherwise, we do need to add this to the advanced GitHub Actions talk

I think, based off time, that most of these are going to be moved to my Advanced talk.  I'll re-evaluate after I do a couple of dry runs.


Phen2Gene benchmarking samples

The Phen2Gene paper benchmarks the software performance on 281 samples. This data has been made publicly available and can be converted to phenopacket form and added to the corpora in pheval

Fantastic idea!


New Request: Control a remote wifi switch for subwoofer

My subwoofer in standby consumes 10W (too much)
Is it possible to command a shelly1 or sonoff (http command) to remove power when the denon is turned off and power on it when the denon is turned on?
Thanks

@rinoronie Thank you for your input. 10W is indeed a lot. Have you tried to do this already by using an HTTP command plugin and adding some automations? I think this should do exactly what you want and this feature is quite far outside the 'control of a Denon receiver'.

Thanks
I think anyone who has a denon could have the same problem
How do I know if the denon is on?

You can add automations that if the Denon turn on/off you can turn on/off the switch that controls your subwoofer. It is quite easy.

An Home (apple) automation? Ah ok it is easy...
But I dont’t have an apple hib domestic and I don’t do automation.
I has think that use the raspberry

Ok can’t help you with that sorry. Maybe you can buy an old iPad or something to use as home hub or an Apple TV. Good luck :)


chore(ci): don't use redirected earthly

The cure is worse than the disease right now. While there is a 1 in 200 chance of this internal buildkit error (which Earthly folks tell me they are actively looking into), right now it makes logs hard to read

Should we delete the earthly-ci wrapper script if it's no longer used? We can always go back to git history to retrieve it if we want to bring it back.

Benchmark results
Metrics with a significant change:

note_successful_decrypting_time_in_ms (8): 250 (+143%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
64 txs

l1_rollup_calldata_size_in_bytes
772
772
772

l1_rollup_calldata_gas
6,844
6,832
6,832

l1_rollup_execution_gas
587,325
587,313
587,313

l2_block_processing_time_in_ms
1,489 (+3%)
5,295
10,316

note_successful_decrypting_time_in_ms
:warning: 250 (+143%)
476 (+7%)
688 (+5%)

note_trial_decrypting_time_in_ms
40.1 (-57%)
73.9 (+75%)
98.3 (+58%)

l2_block_building_time_in_ms
18,787
73,523
146,494

l2_block_rollup_simulation_time_in_ms
18,576
72,775
145,025

l2_block_public_tx_process_time_in_ms
8,537
33,178
66,746

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
16,063 (+4%)
29,965 (+2%)

note_history_successful_decrypting_time_in_ms
929 (+4%)
1,729 (+2%)

note_history_trial_decrypting_time_in_ms
46.1 (-59%)
126 (+21%)

node_database_size_in_bytes
19,132,496
35,782,736

pxe_database_size_in_bytes
29,859
59,414

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
156
47,815
31,978

private-kernel-inner
177 (+1%)
80,846
31,978

private-kernel-ordering
137 (+1%)
57,732
49,888

base-parity
75.0 (+3%)
128
265

root-parity
123 (-8%)
1,244
265

base-rollup
12,182 (-1%)
110,926
957

root-rollup
49.8
4,551
821

public-kernel-app-logic
1,673 (+1%)
62,069
52,067

public-kernel-tail
4,264 (+1%)
168,566
7,491

merge-rollup
3,169 (+1%)
2,760
957

public-kernel-teardown
116 (+2%)
62,069
52,067

public-kernel-setup
117 (-2%)
62,069
52,067

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
512 leaves
1024 leaves
2048 leaves
4096 leaves
32 leaves

batch_insert_into_append_only_tree_16_depth_ms
11.0
17.7
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.8
31.6
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.642
0.548
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
51.4
80.6 (+1%)
260
508 (+2%)
988 (+1%)
1,937 (+1%)
N/A

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
96.0
159
543
1,055
2,079
4,127
N/A

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.527
0.497 (+1%)
0.474
0.474 (+1%)
0.468 (+1%)
0.464 (+1%)
N/A

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
60.8
119 (+1%)
375
747 (+2%)
1,466 (+1%)
2,918 (+1%)
N/A

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
105
207
691
1,363
2,707
5,395
N/A

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.537
0.537 (+1%)
0.511
0.512 (+1%)
0.508 (+1%)
0.509 (+1%)
N/A

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
67.8 (+1%)

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
109

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
0.590

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
51,450
537,961

Transaction size based on fee payment method

Metric
native fee payment method
fpc_public fee payment method
fpc_private fee payment method

tx_with_fee_size_in_bytes
897
1,145
1,345

Transaction processing duration by data writes.

Metric
0 new note hashes
1 new note hashes
2 new note hashes

tx_pxe_processing_time_ms
1,252 (-1%)
870 (+1%)
3,482 (-2%)

Metric
1 public data writes
2 public data writes
3 public data writes
4 public data writes
5 public data writes
8 public data writes

tx_sequencer_processing_time_ms
840
692 (-3%)
1,341 (-3%)
905 (-3%)
2,057 (-3%)
1,162 (-3%)


Limit resources rule operates against resource-types rather than paths

Addressing #643

Great! and thanks for proper tests!

:+1:

Codecov Report

Merging #644 into master will increase coverage by 0.08%.
The diff coverage is 94.44%.

@@             Coverage Diff              @@
##             master     #644      +/-   ##
============================================
+ Coverage     83.49%   83.58%   +0.08%
- Complexity      815      825      +10
============================================
  Files           150      150
  Lines          2218     2230      +12
  Branches        307      310       +3
============================================
+ Hits           1852     1864      +12
  Misses          230      230
  Partials        136      136

Impacted Files
Coverage Δ
Complexity Δ

...o/zally/rule/zalando/LimitNumberOfResourcesRule.kt
95% <94.44%> (+7.5%)
13 <12> (+10)
:arrow_up:

Continue to review full report at Codecov.

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

:+1:

:+1:

👍


is it possible to use local URL ?

hi, i have IOS uri/local url from cameraRoll react native, can i use it ? because i always get error using that ? can you tell me path of ios file..
thanks.

We can support this, maybe just change this line.

Hi
In which release are you planing to add the feature?

Could you explain how your would change that line? Right now my asset-libary://asset URLs are returning file not found. Thanks.

@matthewng
hi,
Have you solved your problem?I have the same problem,
I copy the video from the asset-libary://asset URLs, in simulator,it's works well,bu in my phone,it's  failed.

Hi,
same issue..
I'm using react-native-image-crop-picker to pick a video
ImagePicker.openPicker({
   mediaType: 'video',
}).then((video) => {
   console.log(video);
   console.log(video.path);
   MediaMeta.get(video.path)
      .then(metadata => console.log(metadata))
      .catch(error => console.log(error));
   this.onChangeData('video', video);
});

video.path  is valid because I can upload the video with this path..
but MediaMeta return Cannot read property 'get' of undefined

I solved removing file:// from path

Thanks to @Ilario17.
removing file:// works on android as well.


update for gulp-typescript handbook example

TypeScript Version:  1.8.0
Code
I believe the  tsconfig.json file in TS + Gulp  handbook example  need to be updated with
     "exclude": [
        "node_modules"
    ]

Expected behavior:
no errors
Actual behavior:
The last example with browserify returns this:
TypeScript error: node_modules/bs-recipes/recipes/webpack.typescript.react/src/components/HelloWorld.tsx(12,13):
Error TS17004: Cannot use JSX unless the '--jsx' flag is provided.

This issue was moved to Microsoft/TypeScript-Handbook#355


Should law enforcement use the timestamps stored locally or on the server?

Describe the bug
A clear and concise description of what the bug is.
Firstly, anyone reading this, please can you double check my interpretation of what the code is doing and ideally actual apps; as I have not run the app, only looked through code and could be wrong.
I noticed on the website that:
https://covid19.nhs.uk/privacy-and-data.html

The app will not be able to track your location and it cannot be used for monitoring whether people are self-isolating or for any law enforcement purposes.
The app cannot access your personal identity or any other information on your phone.

However, the application appears to capture, store locally and in some cases send to the backend the  timestamp of BLE events to millisecond accuracy (storage, seconds for the web request?) which is likely shared in close proximity to the device that it connected to and is storing a similar event.
Millisecond accuracy is pretty granular and even second can be pretty revealing, especially in smaller communities.
Often the general public is not the list of suspects the police have for a crime; it is usually a far narrower list of suspects, so whilst timestamp pairs may be relatively anonymous for the rush hour commuters on the Central Line; they probably are less so for the set of people who were caught on CCTV entering a park in the evening where perhaps a mugging occurs.
So a few questions for this issue:

Is my understanding wrong?
If crimes happen should law enforcement be encouraged to use the timestamps (assuming any appropriate warrants are acquired) to match up victims event times with any suspected criminals event times and perhaps any other purposes they may have for correlating whether two people met or not.
Can the docs or the app be updated to make it clear to law enforcement that this capability exists.

My read through the code:

Current timestamp provider: https://github.com/nhsx/COVID-19-app-Android-BETA/blob/acfb01e3c40ac8f35cb85b55208e6efa3a10241d/app/src/main/java/uk/nhs/nhsx/sonar/android/app/ble/Scanner.kt#L38
Generate timestamp using provider: https://github.com/nhsx/COVID-19-app-Android-BETA/blob/acfb01e3c40ac8f35cb85b55208e6efa3a10241d/app/src/main/java/uk/nhs/nhsx/sonar/android/app/ble/Scanner.kt#L190
Timestamp proxied through: https://github.com/nhsx/COVID-19-app-Android-BETA/blob/acfb01e3c40ac8f35cb85b55208e6efa3a10241d/app/src/main/java/uk/nhs/nhsx/sonar/android/app/ble/Scanner.kt#L210
Timestamp in millis: https://github.com/nhsx/COVID-19-app-Android-BETA/blob/acfb01e3c40ac8f35cb85b55208e6efa3a10241d/app/src/main/java/uk/nhs/nhsx/sonar/android/app/ble/SaveContactWorker.kt#L47
Timestamp stored in JSON for web request to backend https://github.com/nhsx/COVID-19-app-Android-BETA/blob/acfb01e3c40ac8f35cb85b55208e6efa3a10241d/app/src/main/java/uk/nhs/nhsx/sonar/android/app/diagnose/review/CoLocationApi.kt#L62

To Reproduce
Trigger a BLE event and check storage and then trigger a web request (diagnosis exercise?) that would send the events centrally?
Expected behaviour
The documentation to be clear on this subject for law enforcement purposes.
Screenshots
Sorry only a code review.
Desktop (please complete the following information):
Git hash in the links for source code seen.
Smartphone (please complete the following information):
Android app; suspect Ios is similar.
Additional context
Add any other context about the problem here.

Please refer to our security and privacy guidance https://covid19.nhs.uk/privacy-and-data.html - "The app will not be able to track your location and it cannot be used for monitoring whether people are self-isolating or for any law enforcement purposes."

Please refer to our security and privacy guidance https://covid19.nhs.uk/privacy-and-data.html - "The app will not be able to track your location and it cannot be used for monitoring whether people are self-isolating or for any law enforcement purposes."

Thank you for your comment; but the issue already quotes that text.
Could you explain why my understanding of the data is wrong?
For instance
6 people enter a park
1 is a victim of a crime and has a BLE event.
Is there enough data stored from BLE events on the 5 suspects phones for police to identify which one was next to the victim or which one was engaged in other social (non)interaction and can be ruled out.
Should the police seek warrants for the 5 users' phones? Should the users have the right to volunteer their BLE data to the police to rule them out of the investigation if innocent and it is evident, perhaps from their conflicting BLE data.

Maybe going in too deep here? Possibly too granular for a timely App launch?

Maybe going in too deep here? Possibly too granular for a timely App launch?

Why would this disrupt an app launch? I am only seeking  clarity on whether the public can use this to assist in criminal investigations (whether voluntarily or if necessary by warrant). Crime hasn't stopped during lockdown and if there is a use case for this data; then how usable it is should be clear.

It is outside the scope of the project. The only design brief for the App is to help stop people suffering/dying from Coronavirus.  This alone would reduce the demand on under-resourced Police, CJS, CPS etc. They get were getting telephone calls where neighbours who do not get on (some almost 'at War'!), were complaining, asking for them to attend, with regards to social-distancing etc just to 'get-at' or annoy their neighbour.
All we, 'the Public' needs to do, if they have a Smartphone, is download and install the 'Official' App from the Official URL and read and follow the instructions plus use a bit of common sense (phone with you all the time, switched on, Bluetooth, check battery drain etc).
Whether you have or do not have a Smartphone (excluding emulators), you will still get a snail-mail letter from Government with a questionnaire URL. If you have internet access and a device with a browser, (or can borrow one) then all people in a certain geographical area, will be expected to answer this questionnaire.  Isle of Wight have had this.
This is not a 'let's see what else this can do' or 'what would this be useful for' project. You have totally valid questions however we probably need to only keep the single target in sight.

This is not a 'let's see what else this can do' or 'what would this be useful for' project. You have totally valid questions however we probably need to only keep the single target in sight.

Whilst you may wish for NHSX to stick to a single target, it is NHSX that has chosen to make the statement about the law enforcement limitations. If you wish them to stick to a single target and not address tertiary uses, then perhaps ask them to remove the statement about tertiary uses.
In the meantime, it is right for the statement to be questioned and tested for accuracy by the public. I'm not asking for a feature change to the application to improve law enforcement capability; I'm only asking for the documentation to match the implementation if my concern that the documentation is wrong, is valid.

OK :)

Can't law enforcement use the Investigatory Powers Act 2016 to track your phone location anyway?
I don't know if they can use that for this data but it wouldn't surprise me if they tried

I'm pasting this message in every active GitHub issue, so you may receive duplicate notifications.
Today, I'm happy to announce that NHSX has released the full git commit history for the Isle of Wight Beta apps.

Android - https://github.com/nhsx/COVID-19-app-Android-BETA
iOS - https://github.com/nhsx/COVID-19-app-iOS-BETA

As discussed, we have redacted API keys, sensitive domain names, and some of the developers' personal details. I am still waiting on final approval to publish the server-side code.
I would like to personally thank the community for your comments, bug reports, and vulnerability disclosures. They all went into helping the development process.
The beta trial of this app has now ended and we've moved to the next phase of app development. It is our intention to publish the source code of future apps as the binaries are released to the public.
Once again, thank you for being part of this.
Terence Eden
Head of Open Technology - NHSX


schemas api ,add info in services.yaml

Coverage decreased (-0.01%) to 71.568% when pulling ffcaecd3ebb45334af36e1f2dda2a074d04d7283 on aseTo2016:master into 18ae8099ce8f8083309dca4eaa6f1274c59a3a16 on ServiceComb:master.

Codecov Report

Merging #130 into master will not change coverage.
The diff coverage is 50%.

@@           Coverage Diff           @@
##           master     #130   +/-   ##
=======================================
  Coverage   67.25%   67.25%
=======================================
  Files          18       18
  Lines        4184     4184
=======================================
  Hits         2814     2814
  Misses       1193     1193
  Partials      177      177

Impacted Files
Coverage Δ

server/service/util/dependency.go
54.51% <50%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Coverage increased (+0.1%) to 71.703% when pulling f3e01557417ec61facbf6f4960ccb42cfe474df6 on aseTo2016:master into 18ae8099ce8f8083309dca4eaa6f1274c59a3a16 on ServiceComb:master.


[mosquitto] Move mosquitto to Common chart

Details
mosquitto seems to be a pretty light-weight and simple chart, that could easily be integrated with the common chart.
Helm chart name:
mosquitto
Describe the solution you'd like:
Common Chart integration
Anything else you would like to add:
Mostly for reference and reminder, not expecting it to happen tomorrow.
Additional Information:

I don't have a way to mount configmaps with release-generated names in values.yaml in common. Mosquitto 1.x will run okayish without one (though persistence is off the table), but 2.x is out of the question as it's secure-by-default

@ishioni I get it... That might actually require a change in common to allow something like "config-tpl" (as we also have for envtpl)

I've already figured out the method in transmission, so expect one in the coming days

@ishioni awesome! :)

@Ornias1993 monitor #626


Netbird not working on Unifi after Firmware 4.0

Since the update to beta firmware 4.0 on the Unifi Dream Machine Pro Netbird doesn't connect anymore, it worked fine on firmware 3.2.12.
Are you using NetBird Cloud?
Yes
NetBird version
0.27.10
NetBird status -d output:
OS: linux/arm64
Daemon version: 0.27.10
CLI version: 0.27.10
Management: Connected to https://api.netbird.io:443
Signal: Connected to https://signal.netbird.io:443
Relays:
[stun:stun.netbird.io:5555] is Unavailable, reason: dial: failed to listen: dial: dial udp <IP_ADDRESS>:5555: connect: invalid argument
[turns:turn.netbird.io:443?transport=tcp] is Unavailable, reason: dial: dial: dial tcp <IP_ADDRESS>:443: connect: invalid argument

I have the same identical problem, but my version is stuck at 25.5. Any version higher than that does not allow me to connect to the Netbird cloud.

Daemon version: 0.25.5
CLI version: 0.25.5
Management: Connected to https://api.netbird.io:443
Signal: Connected to https://signal.netbird.io:443
Relays:
[stun:stun.netbird.io:5555] is Available
[turns:turn.netbird.io:443?transport=tcp] is Available
FQDN: ****.netbird.cloud
NetBird IP: .../16
Interface type: Kernel
Peers count: 4/8 Connected

2024-07-09T13:35:29+02:00 WARN client/cmd/root.go:234: retrying Login to the Management service in 1.299560714s due to error rpc error: code = DeadlineExceeded desc = context deadline exceeded
Error: login backoff cycle failed: rpc error: code = DeadlineExceeded desc = context deadline exceeded
root@****:/persistent/dpkg/bullseye/packages# netbird status -d
Daemon status: LoginFailed
Run UP command to log in with SSO (interactive login):
netbird up
If you are running a self-hosted version and no SSO provider has been configured in your Management Server,
you can use a setup-key:
netbird up --management-url <YOUR_MANAGEMENT_URL> --setup-key <YOUR_SETUP_KEY>
More info: https://docs.netbird.io/how-to/register-machines-using-setup-keys

Just tried downgrading and testet a few versions:
0.26.3 is the last one that works for me. Everything after that gets the same error as in my first post.
Daemon version: 0.26.3
CLI version: 0.26.3
Management: Connected to https://api.netbird.io:443
Signal: Connected to https://signal.netbird.io:443
Relays:
[stun:stun.netbird.io:5555] is Available
[turns:turn.netbird.io:443?transport=tcp] is Available
Nameservers:
[<IP_ADDRESS>:53] for [benjaminbu.ch] is Available
FQDN: dream-machine-pro.netbird.cloud
NetBird IP: <IP_ADDRESS>/16
Interface type: Kernel
Quantum resistance: false
Routes: -
Peers count: 2/5 Connected

The same for me at Unifi Cloud Gateway Ultra. Netbird 0.28.6 doesn't work. Following above suggestion after downgrade to 0.26.3 everything start working

same issue on openwrt, Netbird 0.26.3 works for me

I'm also affected on RutOS (OpenWRT derivative) @ Teltonika RUTX50

looks like somebody made a progress with this or similar issue at https://github.com/netbirdio/netbird/issues/2512

Thanks to somebody's suggestion on Slack I tried using legacy operation mode using mikrotik guide and it started working.
basically:
mkdir /etc/sysconfig
cat <<'EOF' >/etc/sysconfig/netbird
export NB_LOG_LEVEL=info
export NB_DISABLE_CUSTOM_ROUTING=true
export NB_USE_LEGACY_ROUTING=true
EOF
/etc/init.d/netbird start

After some Slack explanation of the legacy mode I have confirmed my router (and probably all other Teltonik/RUTOS routers) does not use nftables, still stuck at the legacy iptables and this is the reason for the weird error of invalid argument.
This could get documented somewhere @mlsmaycon

FYI: on the Slack we've checked for fwmark/SO_MARK support on the system using this Python script (there was 3.9.7 in available on RutOS), which appears to be properly supported:
root@yelk:~# python netbird-socket-test.py
Successfully set SO_MARK option
OK
root@yelk:~# cat netbird-socket-test.py
import socket
import sys

def test_fwmark():
    try:
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

        sock.setsockopt(socket.SOL_SOCKET, socket.SO_MARK, 100)

        print("Successfully set SO_MARK option")
        return True
    except OSError as e:
        print(f"Failed to set SO_MARK option: {e}")
        return False
    finally:
        sock.close()

if __name__ == "__main__":
    if test_fwmark():
        print('OK')
        sys.exit(0)
    else:
        print('ERROR')
        sys.exit(1)

FYI: after some source code patching and rebuilding, current conclusion by @lixmal is:

I see, so there's some unknown issue with using the fwmark

Thanks for validating the solution @nazarewk.
With 0.26.4+, the Linux client uses IP rules and firewall marks to handle routing. The flags NB_DISABLE_CUSTOM_ROUTING and NB_USE_LEGACY_ROUTING disable this behavior and fall back to the previous functionality. The downside of having these enabled is that these devices can't be clients of exit nodes.
I am almost certain, @lixmal can correct me if I am wrong, that only the NB_USE_LEGACY_ROUTING would be enough for your case.

I am almost certain, @lixmal can correct me if I am wrong, that only the NB_USE_LEGACY_ROUTING would be enough for your case.

Yes it did, let's continue on my specific use case at #2530 , added a lot more informatioin there extracted from the Slack thread.

any further suggestions on this? the NB_USE_LEGACY_ROUTING does not appear to be working for me with v0.33.0


Update setup-guides-for-microsoft-365.md

Updated the setup guides with the recent changes made in the admin center.

Issue#https://github.com/MicrosoftDocs/microsoft-365-docs/issues/7297

@JohanFreelancer9 Please copy review

@msbemba

@JohanFreelancer9


Email system

Send code with email for signup and forgot my password.

Blocker: first need to setup Redis and Celery
Then: https://www.youtube.com/watch?v=7dUxyIp5mMI&list=PLOLrQ9Pn6caz-6WpcBYxV84g9gwptoN20&index=3


Ignition blueprint config support on rhel9

This allows a user to configure the system via edge-simplified-installer
using an ignition configuration specified in the blueprint.
This ignition config can be embedded in the ISO as a Base64
encoded file (ignition.embedded.data) or as a file
containing the URL where the ignition config file is served
(ignition.embedded.url).
This embedded config (either data or url) ends up in the root
of the ISO.
The user can also instead specify an URL serving an ignition
config file that will passed as a karg and be fetched at first
boot (ignition.firstboot.url).

depends on osbuild/osbuild-composer#3130 (that PR sets the things needed to run ignition, this PR allows the user to configure the things to pass to ignition, so this PR doesn't break anything)

This pull request includes:

[ ] adequate testing for the new functionality or fixed issue
[ ] adequate documentation informing people about the change such as
[x] submit a PR for the guides repository if this PR changed any behavior described there: https://www.osbuild.org/guides/ --> see osbuild/guides#96

@runcom , regarding the kernel arguments, I know that in #3130  via support kargs in blueprint commit we can already do this, but from the user point of view it might be more straightforward to add it via the specific blueprint option so that you have less room to mess thins up. What do you think?
Also, the PRs are going to collide in the igniton_stage.go file, that is intentional to handle all the ignition stuff in one place.

Pleas also remember to update the documentation in the guide - https://github.com/osbuild/guides/blob/main/osbuild-composer/src/blueprint-reference/blueprint-reference.md

regarding the kernel arguments, I know that in #3130 via support kargs in blueprint commit we can already do this, but from the user point of view it might be more straightforward to add it via the specific blueprint option so that you have less room to mess things up. What do you think?

If we can, we should try to give users high-level options that we translate to kargs (or other things), so totally agree with this principle :)

Could ignition_data be called just data? As it is already in the ignition section. In general, how does this compare to how CoreOS handles ignition configuration? Do you have any thoughts on this @cgwalters ?

Could ignition_data be called just data? As it is already in the ignition section. In general, how does this compare to how CoreOS handles ignition configuration? Do you have any thoughts on this @cgwalters ?

Sure thing, will change it :+1:
We are using some of the scripts that the CoreOS team uses to handle ignition (https://github.com/fedora-iot/ignition-edge), small changes here and there but it should be very similar.

This ignition config can be embedded in the ISO as a Base64
encoded file (ignition.embedded.ignition_data)

Where is this file physically present?  It's not clear to me from the PR.  Is that referencing a kernel argument?
You may already be aware but I think it's still worth cross-referencing here: For CoreOS we¹ developed an IMO neat system where an Ignition config can be dynamically embedded in an ISO image: https://coreos.github.io/coreos-installer/cmd/iso/#coreos-installer-iso-ignition-embed
The way this works is by sticking the config into a "reserved" area of the ISO.  Given that Edge is already using coreos-installer, this could make sense to also support (would I think require a bit of work to replicate bits of cosa buildextend-live in the ISO).
One advantage of this is that it gives a clear model for building a "generic" ISO that can have e.g. machine-specific customization injected later.
But - that's all specific to the ISO.
To support the generic functionality of embedding a custom Ignition config "statically", it can be injected into /usr/lib/dracut/modules.d/40ignition-conf today.  Note on CoreOS derivatives we have:
[root@cosa-devsh ~]# cat /usr/lib/dracut/modules.d/40ignition-conf/00-core.ign
{
  "ignition": {
    "version": "3.0.0"
  },
  "passwd": {
    "users": [
      {
        "name": "core",
        "gecos": "CoreOS Admin",
        "groups": [
          "adm",
          "sudo",
          "systemd-journal",
          "wheel"
        ]
      }
    ]
  }
}

(This config should likely not be present on Edge derivatives as the "core" user is obviously a continuation of a CoreOS default and when moving to full custom images it's likely not desired)
But, other "static" configuration can be injected in the same way.
¹ Specifically IIRC @bgilbert and @jlebon, I was only tangentially involved

This ignition config can be embedded in the ISO as a Base64
encoded file (ignition.embedded.ignition_data)

Where is this file physically present? It's not clear to me from the PR. Is that referencing a kernel argument?

We put the file in the root of the ISO:
[root@citest-1 si]# ll /mnt/disk/
total 802405
drwxr-xr-x. 1 root root      2048 Nov 29 06:30 EFI
-r--r--r--. 1 root root      2048 Nov 29 06:34 boot.catalog
-rw-r--r--. 1 root root 821653588 Nov 29 06:33 disk.img.xz
-rw-r--r--. 1 root root      1629 Nov 29 06:30 ignition_config
drwxr-xr-x. 1 root root      2048 Nov 29 06:33 images

It does not reference a kernel argument.

You may already be aware but I think it's still worth cross-referencing here: For CoreOS we¹ developed an IMO neat system where an Ignition config can be dynamically embedded in an ISO image: https://coreos.github.io/coreos-installer/cmd/iso/#coreos-installer-iso-ignition-embed

I wasn't aware of that at all! CC'ing  @runcom ! From a quick look at it, if I understood it correctly, it would require producing the ISO first and then the installer should be ran later on to embed the config file. We do not run the installer until we are installing the image, so maybe that "later" (regarding the customisation injection that is made later on) wouldn't work for us since we just want to have a .iso with everything in there that can be installed and that's it.
But, again, CC'ing @runcom since I do have less context.

The way this works is by sticking the config into a "reserved" area of the ISO. Given that Edge is already using coreos-installer, this could make sense to also support (would I think require a bit of work to replicate bits of cosa buildextend-live in the ISO).
One advantage of this is that it gives a clear model for building a "generic" ISO that can have e.g. machine-specific customization injected later.
But - that's all specific to the ISO.
To support the generic functionality of embedding a custom Ignition config "statically", it can be injected into /usr/lib/dracut/modules.d/40ignition-conf today. Note on CoreOS derivatives we have:
[root@cosa-devsh ~]# cat /usr/lib/dracut/modules.d/40ignition-conf/00-core.ign
{
  "ignition": {
    "version": "3.0.0"
  },
  "passwd": {
    "users": [
      {
        "name": "core",
        "gecos": "CoreOS Admin",
        "groups": [
          "adm",
          "sudo",
          "systemd-journal",
          "wheel"
        ]
      }
    ]
  }
}

(This config should likely not be present on Edge derivatives as the "core" user is obviously a continuation of a CoreOS default and when moving to full custom images it's likely not desired)
But, other "static" configuration can be injected in the same way.
¹ Specifically IIRC @bgilbert and @jlebon, I was only tangentially involved

I wasn't aware of that at all! CC'ing @runcom ! From a quick look at it, if I understood it correctly, it would require producing the ISO first and then the installer should be ran later on to embed the config file. We do not run the installer until we are installing the image, so maybe that "later" (regarding the customisation injection that is made later on) wouldn't work for us since we just want to have a .iso with everything in there that can be installed and that's it. But, again, CC'ing @runcom since I do have less context.

I'm not familiar with the Edge install flow, but I can explain the CoreOS install flow this fits in and you can see from there whether it makes sense to adapt to it as well.
Users download a generic live ISO from e.g. getfedora.org (or for RHCOS, e.g. the mirror). They can then customize that ISO using coreos-installer iso customize. Users can choose how much to customize it. All this is done "offline", without having to actually boot the ISO. Crucially, the --dest-device switch will make it so that simply booting the ISO will initiate an install and reboot. All this to say that the Ignition embedding feature that Colin mentioned above provides a lot of power (that's what backs most of the iso customize features).
Though it's not clear to me from this PR whether the Ignition config we're talking about is for the ISO or for the installed system. Obviously a lot of this flexibility comes from the fact that CoreOS ISOs themselves run Ignition (and then we talk about "Ignition configs within Ignition configs" when embedding the target system's config within the ISO's config, but that's what the iso customize work is intended to simplify).

Thanks for our input on this @cgwalters and @jlebon!
I think you are right @7flying , that we want to make any customisations (and hence ignition insertion) at image build time, rather than after the fact, so static ISOs + dynamic customisations doesn't really make sense.
That said, it might be worth considering putting our ignition file in the same "reserved" location that the coreos tool does? I think this is sort of an internal detail, so could be done in a follow-up, but if it makes sense to be consistent we should be :)
I think a good mental model would be that the R4E image that comes out of image builder is structured the same way as a coreos installer ISO after the dynamic configuration has been applied. Unless there are technical quirks I'm not aware of that would make this not worth it, of course.

Rebased due to #3166

Thanks for our input on this @cgwalters and @jlebon!
I think you are right @7flying , that we want to make any customisations (and hence ignition insertion) at image build time, rather than after the fact, so static ISOs + dynamic customisations doesn't really make sense.
That said, it might be worth considering putting our ignition file in the same "reserved" location that the coreos tool does? I think this is sort of an internal detail, so could be done in a follow-up, but if it makes sense to be consistent we should be :)

Having an standardised  way of doing things sounds always good to me :), but I have to check with others on the team.

I think a good mental model would be that the R4E image that comes out of image builder is structured the same way as a coreos installer ISO after the dynamic configuration has been applied. Unless there are technical quirks I'm not aware of that would make this not worth it, of course.

Right now I have no clue about how to do this in osbuild-composer, we might need to modify/extend one of osbuild's copy stages to handle that placement (size/alignment stuff I guess), but that would be it.

I think it's not really important to match the same mechanism right now; i.e. I would definitely not block on it.  It's something that can be done later.

I think it's not really important to match the same mechanism right now; i.e. I would definitely not block on it. It's something that can be done later.

Yup, I agree with this. Just something to keep in mind as an aspirational goal ;)

thanks for the review @achilleas-k !


Sim 2916 build exe

Allow python 3.8.1 and greater and less than 3.11
Downgrade numpy to 1.24.4 so it's compatible with pyinstaller

LGTM


Enable back allWarningsAsErrors for Kotlin build scripts once Kotlin assignment plugin becomes stable

In https://github.com/gradle/gradle/pull/23547 we disabled allWarningsAsErrors for Kotlin build scripts (check https://github.com/gradle/gradle/pull/23547#discussion_r1080979491), since Kotlin assignment plugin emits a warning, that it is experimental.
We should enable that back once the Kotlin assignment plugin becomes stable.

Added to 8.2 RC1 milestone for now, so we don't forget about it. But if plugin won't be stable till then it should be moved to next milestone.


Generate a Javadoc

100 points

W16 OK

F16 OK (100 pts)

F17 OK (100 pts)

Looks like pull request #30 addresses this ok.

F17 CLOSED


Setting up environments

Closes #42.

note: for some reason celery jobs aren't kicking in for me ATM (well -- with yesterday's version, started with ./up) and don't see anything in docker log for those instances on that... yet to figure out how to troubleshoot and/or compare to behavior in master, where I believe it worked

@yarikoptic Try again with the latest code.  Using that, the celery containers come up fine for me.


Live preview on globals doesn't show anything

Link to reproduction
https://github.com/wSzki/payload_livepreview_bug
To Reproduce

yarn dev
navigate to http://localhost:3000/admin/globals/TestGlobal/preview

Describe the Bug
Hello,
Live preview isn't showing anything on globals
Collections work fine and shows an error if the URL to the front end is invalid.
No error logs are shown in the server or web browser's console
Noticed the issue on 2.0.7
Payload Version
2.0.9
Adapters and Plugins
default plugins from blank template

@wSzki got this fixed with #3801. It will go out in the next release. Thank you for reporting this 👏 there's a test written to prevent future regression as well.


doc: document Lean.Elab.StructInst

This adds:

a module doc for Lean.Elab.StructInst, which gives an overview of how the code for structure instance elaboration works
docstrings for each definition in Lean.Elab.StructInst

Note: I'm aware this isn't the usual contribution process; however, I was encouraged on Zulip to make this pull request directly (i.e. without making an issue first) since this is a small PR (in the sense of no functionality being introduced).

Thanks! I've incorporated a good amount of this into refactoring at #6110.


fix: secure pods

Checklist:

[ ] My organization is added to USERS.md.

Yet to get make codegen working :(  Wanted to put it out here to see if anything fails. Question, are these tests run against a Kubernetes cluster?

@sbose78 What is the issue with make codegen?

I'll make a separate PR for server - limiting this one for controller only.
I seem to be having the time="2021-03-22T04:07:09.974Z" level=fatal msg="open argo-server.key: permission denied" issue on OpenShift with the manifests from master.
Related: https://github.com/argoproj/argo-workflows/pull/4750


Update legislator data for Illinois

Add two new legislators. Contact information was updated, and some removal of middle initials from given_names.

Pull Request Test Coverage Report for Build 341

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 70.57%

Totals

Change from base Build 338:
0.0%

Covered Lines:
928

Relevant Lines:
1315

💛  - Coveralls


chore: create integration documentation

Initial documentation so we have something to point people to.
To be expanded and iterated.

Thanks for the quick review!


Can user edit previously stored content in WYSIWYG mode? SOLVED

I'm trying to allow a user to edit content previously stored as a string from the editor. On my "edit" page, I tried setting pell.content as both innerHTML and textContent as done in the examples. My problem is that I wish the user to not have to deal with any HTML tags but to see the content as it was on the original pell editor form (on the "add" page). I'd like the old content to appear in the pell editor in WYSIWYG mode. Sorry if this is not a Pell issue but please advise.
I'm fairly new and guessing this may be an issue with unsanitized data but I'm not totally familiar with what the ramifications are.
I just realized I'm in a mess where the user can further apply formatting tags to previous tags, etc. For example, user highlights this text within the editor
Blah...
 and clicks "Italic" button, then saves and italic is applied to the p tags.  Maybe I'm in over my head here..

This turned out to be a simple problem due to using ejs template for my first time. To not escape HTML in the template I should have used <%- htmlSnippet %> rather than <%= htmlSnippet %>


SIMSBIOHUB-566: Update to Node 18

Links to Jira Tickets
https://apps.nrs.gov.bc.ca/int/jira/browse/SIMSBIOHUB-566
Description of Changes
Update from Node 14 to Node 18.
Testing Notes
Builds, deploys, and runs as normal.

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

Project coverage is 52.87%. Comparing base (0f534e3) to head (33b64f5).

:exclamation: Current head 33b64f5 differs from pull request most recent head df9ed8c. Consider uploading reports for the commit df9ed8c to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##              dev    #1263   +/-   ##
=======================================
  Coverage   52.87%   52.87%
=======================================
  Files         546      546
  Lines       16296    16296
  Branches     2530     2530
=======================================
  Hits         8617     8617
  Misses       7079     7079
  Partials      600      600

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


General Issue: ADBCVA Research

Background Information
Look through the ADBCVA datasets on ophthalmology studies to which you have access. Please leave comment(s) here detailing ophthalmology-related:

common derivations (that maybe take a lot of repetitive code)
custom macros
common variable derivations
common endpoint derivations
common derived parameters

Aim is to find out what functions/code we can provide in {admiralophtha} to streamline the production of an ADBCVA dataset in R. Then we can make issues for each piece of programming work and start implementing it!
Definition of Done
No response

@manciniedoardo Just seen your comment above - I've written a very similar thing in the ADOE thread!
Going back to last week's conversation on ADBCVA vs. ADOE, I've seen a couple of different approaches in our Phase 3s:

I've seen the individual components of the combined overall BCVA score (such as the 1m test, the 4m test etc) as part of the ADOE dataset, but then the combined overall BCVA score is in a separate dataset ADBCVA
I've also seen the combined overall BCVA score within the ADOE dataset and the individual components do not appear to be available anyway; ADBCVA does not exist

Given the fundamental importance of BCVA data, I think we should look to standardise this. Personally it seems logical to me to have all BCVA data in either ADOE or ADBCVA, rather than split across the two datasets.

@wholmes57 I agree, although as discussed in last week's call all we can do is provide a template showing how we would map the data, and then provide the tools to program the ADaM datasets accordingly. If study teams want to do it differently (eg, use an ADOE dataset froe everything) then our tools should still allow that.

I have seen across a couple of different Roche ADBCVA programs that there are lines of code dedicated to converting ETDRS scores to LogMAR scores. The conversion is a one-liner:
logMAR = -0.02 * ETDRS + 1.7

but it might be worth making a utility function etdrs_to_logmar that implement it, so that we could do something like:
ABCVA <- ADBCVA %>%
  mutate(AVAL = ifelse(<select ETDRS records only>, etdrs_to_logmar(OESTRESN), OESTRESN)

or maybe:
ABCVA <- ADBCVA %>%
  etdrs_to_logmar(<selection criteria for ETDRS records only>)

and possibly an inverse logmar_to_etdrs function? I think the first option is more attractive and, although quite simple, increases the transparency of the program
In general, this is quite  a simple concept, but still valuable in my opinion: rather than just seeing a formula, you encode it in a function but describe what the function is doing.


fix model prediction issue in PC mode

when running OP in PC mode, the path prediction is messed up, so use Hardware::TICI() to check instead of Hardware::EON()

This was done to fix the UI for C3 replays. The real fix is either #22230 or #22574.


Update MD file on new branch 2017-22-16_03-11-05

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestCon.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


feat(text-field): add placeholder property

related to #224
I opened this PR to start a discussion around issue #224 that was opened last year. This feature branch added support for the mdc-text-field--no-label class, so it seems like a good time to support placeholder text when a label isn't present. The examples for text fields without labels on Material IO display text fields without labels still having placeholder text.

I won't get to this this week, so I'll reopen it later when I've made the changes. Thanks for the feedback!


[FEATURE REQUEST] Sub-folders (albums within an album)

This features comes from a limitation I just encountered. I wanted to create a main Album of a project. But inside this project album I needed to make new sub-folders (or sub albums?) to organize the project (one sub album for background pictures, another one for characters, etc.). However, I couldn't find any way to do that, but I think it would be very useful, especially when public sharing is needed.
Thank you for your work

This is something we won't be pursuing for the time being.
For now, albums and tags is what we support in this regard and are thinking of improving tags soonish


Air Pro Auto Mode Description

Just a small little adjustment for the next release. The Auto mode for the Air Pro is Standard and Quiet. I think you're currently referring to it as Normal.

fixed in v1.4.1


Removes global keep alive flag.

Puts keep alive and cache and pool level.

Looks like you're good to go.  Pls file a Jira and let's get this thing merged.


Fix onConflict with custom schemaMeta

Fixes #1527
Problem
Currently onConflict and its variants completely ignore SchemaMeta (whether you provide a custom one or a default one although you only notice a difference with a custom SchemaMeta)
Solution
There were various issues that I found which caused the problem, they are detailed below

When you have an OnConflict, BetaReduction was never applied on the target if the target happened to be a OnConflict.Target.Properties. The solution here was to apply BetaReduction on the target if it happened to be a OnConflict.Target.Properties.
When you had a OnConflict.Update, BetaReduction was never applied to the assignments for the update body. The solution here was to apply BetaReduction on all assignments
The neutralize method on OnConflict.Excluded and OnConflict.Existing was incorrect which meant thatcase ast if replacements.contains(ast) =>
  BetaReduction(replacements - ast - replacements(ast))(replacements(ast))

Didn't work correctly when we were doing BetaReduction on a OnConflict.Excluded/OnConflict.Existing

Notes
In on case we happen to use asInstanceOf, i.e. when we apply a BetaReduction to a property. This will always return a Property. Alternately we can match on it, see if its a property and return a failure otherwise (not sure how strict we want to be here).
I also did some minor syntax improvements + ascribed manual type annotations (in general we should put type annotations for the return type of methods/functions as it makes a non trivial difference in Scala's compilation speed)
Checklist

[X] Unit test all changes
[X] Update README.md if applicable
[X] Add [WIP] to the pull request title if it's work in progress
[X] Squash commits that aren't meaningful changes
[X] Run sbt scalariformFormat test:scalariformFormat to make sure that the source files are formatted

@getquill/maintainers

Hum looks like tests hit a snag

@deusaquilus PR should be ready now, found the root cause. Everything in the notes is updated


useSWR calling fetcher sometimes too often in unit test

Bug report
Description / Observed Behavior
I'm using useSWR in a component that I test with react-testing-library. In most cases the unit test passes, but sometimes it fails when checking how often the fetcher of the useSWR hook has been called and with which parameters. The rendered dom looks fine though. Note that I change the key of the useSWR hook to represent filtering in my application. For unit tests I use the recommended <SWRConfig value={{ dedupingInterval: 0, provider: () => new Map() }}> to avoid flakiness. I don't use refreshInterval.
The unit test renders a component without a filter, then enters a search term into a filter input which updates the useSWR key, and after that, the search term is deleted again.
From the logs of one of the flaky failed tests I see this order of execution:

render component with useSWR with key ["some-endpoint", ""]
useSWR fetcher fetches with "searchText":""
render component with useSWR with key ["some-endpoint", ""]
render component with useSWR with key ["some-endpoint", ""]
render component with useSWR with key ["some-endpoint", ""]
render component with useSWR with key ["some-endpoint", ""]
searchText is changed to "my search text"
render component with useSWR with key ["some-endpoint", "my search text"]
render component with useSWR with key ["some-endpoint", "my search text"]
useSWR fetcher fetches with "searchText":"my search text"
render component with useSWR with key ["some-endpoint", "my search text"]
render component with useSWR with key ["some-endpoint", "my search text"]
render component with useSWR with key ["some-endpoint", "my search text"]
searchText is changed to ""
render component with useSWR with key ["some-endpoint", ""]
render component with useSWR with key ["some-endpoint", ""]
render component with useSWR with key ["some-endpoint", ""]
useSWR fetcher fetches with "searchText":"my search text"

⚠ that's weird - why does swr fetch this again, it just has fetched this in the last call to fetcher, also it mismatches the current key

render component with useSWR with key ["some-endpoint", ""]
useSWR fetcher fetches with "searchText":""

Expected Behavior
The fetcher function should not be called unnecessarily, and especially it should behave deterministically.
Repro Steps / Code Example
I do not yet have a reproduction repo yet, I'm still trying to make the error appear consistently in my own application's unit tests, but that's the issue with flakiness.
I'd be happy though to get hints on where I could add console.logs to find out the root cause. Or ideas on why swr could behave that way and call the fetcher with "searchText":"my search text" two times in a row (sometimes).
Additional Context
SWR version: 1.2.2
Note that the issue mostly happens on slower CI machines, so the theory is that the root cause is a race condition in the internal swr state. Maybe something like useSWR is rendered, puts in a request into its queue, then useSWR is rerendered and even though the deduping interval is 0, it does not yet see that the first request is enqueued because of some scheduling state issue, and enqueues another request. Could that be the case?

Hi,
This is indeed hard to trigger, I tried but couldn't really.
A few observations:

Why does your fetcher, execute with ""? Even with [""] the fetcher should not be triggered.
Do you have any other hooks on the same rendering cycle?
Even if you can't share your code because it's private, perhaps you could translate to pseudo-code?
requestAnimationFrame, could sometimes misbehave depending on your test environment.

Good that you are trying to produce a test.

Why does your fetcher, execute with ""? Even with [""] the fetcher should not be triggered.

I maybe over-simplified the pseudo-code. I have some more array items in the key.

Do you have any other hooks on the same rendering cycle?

There are a lot more hooks.

Even if you can't share your code because it's private, perhaps you could translate to pseudo-code?

It‘s too big, especially the rendered components. I‘m trying to compact it, but that takes a lot of time. I‘m hoping to rather find out more with console.logs in the swr code (happy for pointers).

However, if you don't see this issue in production/development, then I'd point a finger at the testing environment.

The rendered data looks fine, so the issue is just unnecessary calls to the fetcher which is not possible to spot in production. So I‘m not sure if these unnecessary api calls happen in production too. It‘s an issue because I have no other way of unit testing that the api is called with the correct parameters.

Ok, now I see an issue on production too, even though it's the opposite: the key of useSWR changes (and during debugging I see that useSWRHandler is called with the updated key multiple times), but the fetcher is not called with the updated array key.

I debugged through the reproducible issue on production (where the fetcher is not called even though the key updated), and it looks like the body of the useIsomorphicLayoutEffect that should react to the key change is not called, even though the key did change. useSWRHandler is called twice with the updated key. Further key changes work again, so I'm not sure why this happens, but it's consistent.
Could this be a react bug in useLayoutEffect? I'm on 17.0.2.

btw. my pseudocode is something like this (next.js app):
const useMySearch = () => {
  const router = useRouter()
  const filters = useMemo(()=>filterFromQuery(router.query),[router.query])
  const {data, error, mutate, isValidating} = useSWR(router.isReady ? arrayFromFilters(filters) : null, myFetcher)

  const updateFilters = (newFilters) => {
    // updating the url shallowly will update router.query which will implicitly update filters and trigger a fetch
    router.replace({
      href: urlFromFilters(router.asPath, newFilters, config),
      clientSideRouting: true,
      options: { shallow: true },
    })
  }

  return {data, error, mutate, isValidating, updateFilters}
}

this is vastly simplified though. note that executing updateFilters causes 2 rerenders in a row by next.js, one for the changed route and updated router objects, and another one for announcing the route to screen readers (small dom update).

ok, the useLayoutEffect error seems not to be connected to swr at all, i could reproduce it with a simple useEffect in my component. it seems to be related to a useRef that i use, but i don't see anything wrong with the usage. so no need to discuss the useLayoutEffect error here further. i'm not sure if the error from the original post is related though, so i'll keep this open, ok?

I created a reproducing example and a react bug ticket for the second issue: https://github.com/facebook/react/issues/24042


fix graph view with content dir as root

moved notes and attachments to content root and set relativeURLs to true

fixes #3