CA: UCSD Results Staging EHR Filing

Story
As UCSD, so that I can review and provide patient care based on NBS findings, I need sample result messages sent by ReportStream staging to appear to clinicians in my EHR test environment.
Pre-conditions

Out of scope: Production connectivity

Acceptance Criteria

[ ] A sample ORU message sent by ReportStream staging to the UCSD receiver is filed successfully by their EHR test environment.
[ ] The filed result content is not corrupted (e.g. due to an encoding issue with the 'µ' character)

Tasks

[ ] Review old ticket #1222
[ ] Complete initial round trip test with CDPH and UCSD (planned for 10/3/2024)
[ ] Confirm 'µ' character in a result observation was not corrupted
[ ] Get confirmation from UCSD that the sample result files and displays successfully (without any manual modification)

Definition of Done

[ ] Documentation tasks completed

[ ] Documentation and diagrams created or updated

[ ] ADRs (/adr folder)
[ ] Main README.md
[ ] Other READMEs in the repo
[ ] If applicable, update the ReportStream Setup section in README.md

[ ] Threat model updated
[ ] API documentation updated

[ ] Code quality tasks completed

[ ] Code refactored for clarity and no design/technical debt
[ ] Adhere to separation of concerns; code is not tightly coupled, especially to 3rd party dependencies
[ ] Code is reviewed or developed by pair; 1 approval is needed but consider requiring an outside-the-pair reviewer
[ ] Code quality checks passed

[ ] Security & Privacy tasks completed

[ ] Security & privacy gates passed

[ ] Testing tasks completed

[ ] Load tests passed
[ ] Unit test coverage of our code >= 90%

[ ] Build & Deploy tasks completed

[ ] Build process updated
[ ] API(s) are versioned
[ ] Feature toggles created and/or deleted.  Document the feature toggle
[ ] Source code is merged to the main branch

Research Questions

Optional: Any initial questions for research

Decisions

Optional: Any decisions we've made while working on this story

Notes

Optional: Any reference material or thoughts we may need for later reference

We could add the correct encoding of µ as part of the tasks or AC

We could add the correct encoding of µ as part of the tasks or AC

I know we also #1222 -- I could make resolving that bug a precondition for this story if it would help.

Update:
There will be a live testing session on Wednesday, Oct 2nd. In this live session, we plan to bring up the issue with the mu character. We will ask how the value shows up in UCSD's system. This will let us know if there are any issues or if everything is working as expected.

Update:
During the live test, we noticed that the mu character was not showing properly. We will need to do more research and see what encoding (ISO, UTF) UCSD Epic is using.

I'll do a round of testing with RS to make sure the message is sent with the mu character showing correctly

After some tests I found a couple of things. While testing locally, I found the files are correctly encoded throughout the flow. While testing in staging, I found that somewhere between RS receiving the initial HL7 message and sending the FHIR message to TI, the encoding gets garbled. So it's confirmed RS is sending the message to UCSD with the 'µ' character missing

Created a bug report in RS for the encoding issue here: https://github.com/CDCgov/prime-reportstream/issues/16196

We changed the locale to UTF-8 in the dockerfile configuration. No impact.

Removing -Dfile.encoding=UTF-8 in the JAVA_OPTS in local.settings.json breaks local deployments.

It may be worth reopening https://github.com/CDCgov/trusted-intermediary/issues/1222 because it seems there's an actual bug in Daily Data regarding the encoding of the 'µ' character, that is separate from the encoding issue currently being fixed in the deployed environments

https://github.com/CDCgov/trusted-intermediary/issues/1222 reopened

This open PR in the reportstream-sftp-ingestion
repository fixes the encoding issue when sending the ORU using the SFTP service. Once the PR is merged, we need to test uploading new files to be sent in staging and checking the EHR Filing with UCSD

The encoding fix in the reportstream-sftp-ingestion service has been merged and tested in staging. We should be ready to test this issue in the staging EHR Filing

Closing in favor of #1442 .  Moving AC over.


fix(client): raise exception when error

Description
Modules

[ ] UI
[ ] Controller
[ ] Agent
[ ] Client
[ ] Python-SDK
[ ] Others

Checklist

[ ] run code format and lint check
[ ] add unit test
[ ] add necessary doc

@goldenxinxing  add some ut for the job status and exceptions?


Fix website support, remove awsutils depenencies

Breaking changes
This release has what can be considered breaking changes, but mostly because it either reverts breaking changes introduced in v2.0.2 or fixes features that were previously broken and unusable.

If an IAM user and access key is created by this module, the AWS Access Key does not expire, restoring the behavior in and prior to v2.0.1. In v2.0.2 and v2.0.3, keys expired in 30 days.
The website_inputs input is replaced by website_configuration and website_redirect_all_requests_to. Thanks to @jurgen-weber-deltatre for helping with this.

New Features

The breaking change introduced in v2.0.2 that required you to initialize the cloudposse/awsutils Terraform provider with the AWS region and been reverted. This module no longer uses that provider.
You can now store the IAM user's access key in SSM via store_access_key_in_ssm. When stored in SSM, the secret key is not output by this module as a Terraform output, preventing it from being stored unencrypted in the Terraform state file.
You can now create a user but not create an access key by setting access_key_enabled = false. You can also use this feature to rotate an access key by setting  it to false and applying to delete the key, then setting it to true and applying to create a new one.

Note that in general we now recommend against creating an IAM user, and recommend using AWS OIDC to create an authentication path for users and systems that do not have native IAM credentials. Also note that you can assign permissions to existing AWS users and roles via grants or privileged_principal_arns.
what && why

Update terraform-aws-s3-user to v1.0.0 and add inputs access_key_enabled, store_access_key_in_ssm, and ssm_base_path in order to

Make creating an IAM key for the S3 user optional
Enable saving the IAM key in SSM Parmeter store and omitting it from Terraform state
Remove dependency on cloudposse/awsutils Terraform provider. See terraform-aws-iam-system-user v1.0.0 Release Notes for further details and justification.

Replace input website_inputs (which never worked) with website_configuration and website_redirect_all_requests_to. See #142 for further details and justification.

references

Implements and closes #3
Fixes #141
Supersedes and closes #142
Obsoletes and closes #151
Supersedes and closes #154
Obsoletes and closes #155
Supersedes and closes #157

/test all

/test all

/test all

Cool! Thank you!

argh, wrong user. Thanks! :P


Search - JsonSerializationException when using model class with non-nullable value types

Repro
Create a custom model class with a property of non-nullable value type. For example, add a public UnitCount property of type int instead of int?
If you index a document with the default value of that type (e.g. -- 0 for int), the field will be null in Azure Search. If you subsequently search for that document, the Search call will throw JsonSerializationException complaining that it can't convert null to int.
The expected behavior is that SearchIndexClient shouldn't allow model classes with non-nullable primitive types. Any call that takes such a type as a parameter should throw ArgumentException if the type contains any primitive public properties.
Notes
This bug is caused by two things:
1.We don't validate user-defined model classes early.
2.We use DefaultValueHandling.Ignore in JSON.NET to elide nulls in Indexing payloads. This is not a problem per se; We just need to ensure that user-defined model classes don't use non-nullable primitive types.
http://www.newtonsoft.com/json/help/html/SerializationSettings.htm

I don't think that we should force custom models to have nullable primitive types. Perhaps zero is a perfectly fine value for a document property. Perhaps zero should be persisted to the data store rather than null.

To do what you propose would require adding the concept of a default value and non-nullability to document fields in Azure Search. While we could do this in indexing and lookup, we're not able to simulate non-null semantics in filters and faceted searches. This is a consequence of how we store data -- namely, in an inverted index. "Null" is simply how we represent that a document value never appears in the inverted index anywhere.
So the best we could do is allow non-nullable primitive types on the client for indexing data, but disallow them for retrieving data since you can't guarantee only non-null values on the server side. This inconsistency seems worse than disallowing non-nullable primitives, which just ensures that the client model accurately matches the semantics of the server model.
FWIW, no customers have ever asked us for strict non-nullable types. Based on our experience it doesn't appear to be an important requirement for search scenarios.

I'm just suggesting you should store the value the user put into the document rather than nulling it out.
0 == 0 not 0 == null

Agreed, but that's only going to work with primitive types if we allow them only for document upload, not for retrieval. That seems to defeat the purpose of using a strongly-typed model at all.

I might be missing something, but why doesn't it work for retrieval? Could retrieval not send back a 0 as well?

For that one value, yes. But what about other documents? In general it is very difficult to guarantee that all values for a field will be non-null (e.g. -- you can add new fields to the schema without re-indexing, in which case all values will start out as null). The type system we expose through the Azure Search REST API does not help to enforce non-nullness, nor should it for the efficiency reasons I described above (we wouldn't want to bloat up the inverted index with default values).

Would you consider things with a unit count of zero to be bloat to the index? How would you search for things with zero units?

By "unit count", do you mean something like "units in stock" in a retail scenario? In that case, zero is a semantically important value, so it makes sense to explicitly store it in the index, even if it uses more storage. Putting it in the index ensures that searching for it is fast. Conversely, there are cases like "rating" where an item without a rating is not necessarily better represented with 0 than null. It depends on whether there will be many queries looking for items without a rating. If so, 0 would be better (faster queries, but more space). Otherwise, null would be better (less space, but slower queries).
Bringing this back to the issue at hand... Fixing this zero/null issue in a robust way while continuing to allow non-nullable types on the client requires adding support for non-nullable types in the service API. Feel free to propose this on the Azure Search UserVoice site so we can collect more customer feedback to help us prioritize it.
In the meantime, we can fix this scenario on the client by requiring primitive types to be nullable. It may not be a perfect solution, but it's feasible in a much shorter timeframe than changing the service API. If non-nullable types are ever supported in the service API, then easing this restriction on the client should be easy since it would be a backwards-compatible change.

I'm sorry, but I don't agree with this comment at all
"In the meantime, we can fix this scenario on the client by requiring primitive types to be nullable."
This is not a solution at all.
Instead for my solution I have had to NOT use this SDK for the uploading of my documents so I can get the correct values into the search index. Instead have had to use the REST API directly and do my own serialization and error handling. What a pain.
if you have ordering of -5, 0, 5, 10 for 4 documents and then the 0 is converted to a null, then that document will not be sorted in the correct order on the search index itself.
I am obviously not part of the coding team here, and the reason why this was added 'DefaultValueHandling.Ignore' I don't really get. I don't see why putting in the actual value of something that you actually want in the index 'bloats' the index. Default values are genuine values and actually need to be in the index.

Another scenario where the actual value should be in the index. Say your model has a nullable Boolean. You have 3 possible values, true, false, null. Say you want to filter by null. Because your json serializer is converting all falses to null you are going to get back all of the false matches as well as the null matches. And say that you actually then want to filter by false values. You are going to get back nothing because there are no false values in the search index as they have all been wiped out and set to null.
Default values should never be changed to null.

"The expected behavior is that  SearchIndexClient  shouldn't allow model classes with non-nullable primitive types. Any call that takes such a type as a parameter should throw ArgumentException if the type contains any primitive public properties."

I totally agree that the current behavior of serializing default values of non-nullable primitive types (e.g. -- int, bool) to null is incorrect, and I'm sorry that it has caused you trouble.
With the current release of the SDK, the only way to avoid this behavior is to use nullable primitive types in your model classes (e.g. -- int?, bool?). There have been several other customers that have run into this problem, but so far switching to nullable types has worked for them. If it looks like using nullable primitives is going to be an unacceptable limitation for many customers, that is good for us to know as it helps us to prioritize a fix. Are you able to share any details about why using nullable types like int? and bool? wasn't an option in your scenario?
Regarding DefaultValueHandling.Ignore: The SDK uses this as a performance optimization for very wide index schemas, where sending thousands of explicit nulls in every indexing batch would result in an unacceptable performance hit. The bug occurs because the SDK assumes it is always serializing nullable types, so default non-nullable values like 0 or false are not serialized, causing them to be interpreted as null by the Azure Search service. Neither the SDK nor the Azure Search service were designed to handle non-nullable data types. It's this mismatch between client side non-nullable types and server-side nullable types that is the crux of this issue.
A first cut at a solution would be for the SDK to disallow the use of non-nullable primitive types in model classes. This is something we plan to implement when we take the SDK out of preview some time later this year. In your case it wouldn't have unblocked you, but at least you'd have seen a specific error message to indicate the source of the problem.
A more comprehensive solution would be to actually support non-nullable types in index schemas on the server, but that's a much bigger change. If this is a really important scenario to you, please add an item on our UserVoice site to help us prioritize it.
Thanks and sorry again for the trouble.
-Bruce

We have a fix ready for this issue. I'll send a PR soon.
After some discussion and investigation, we found a better solution than disallowing non-nullable primitive types, although it involves some small compromises. We're introducing a new IContractResolver that looks for non-nullable primitive types and ensures that they use DefaultValueHandling.Include instead of DefaultValueHandling.Ignore. This means that if you have a model class like this:
public class Model
{
    public string Key { get; set; }

    public int IntValue { get; set; }
}

If you set IntValue to 0, that value is now correctly serialized as 0 on the wire and stored as 0 in the index. Round tripping also works great.
There is one potential issue to be aware of with this approach: If you use a model type with a non-nullable property, you have to guarantee that no documents in your index contain a null value for the corresponding field. Neither the SDK nor the Azure Search service will help you to enforce this.
This is not just a hypothetical concern: Imagine a scenario where you add a new field to an existing index that is of type Edm.Int32. After updating the index definition, all documents will have a null value for that new field (since all types are nullable in Azure Search). If you then use a model class with a non-nullable int property for that field, you will get a JsonSerializationException like this when trying to retrieve documents:
Error converting value {null} to type 'System.Int32'. Path 'IntValue'.

For this reason, we still recommend that you use nullable types in your model classes as a best practice.

I'd like to add my 2 cents: I completely with SylviaJ - if my model has 0, I expect a 0 value to be stored and returned, not a null.  This is for sorting purposes, simplifying models and de-serialization, etc...
Since we can't modify fields in indexes, we have created a whole system where new indexes are created when changes are made - so the example above by brjohnstmsft does not apply, we will never run into a scenario where we need to use nullable types.
Thank you for adding DefaultValueHandling.Include !

FYI, the fix is now available in the latest version of the SDK on NuGet.


CIF-832 - Fix JS error for variants without assets

Description
Fixes a JavaScript console error that occurred for products and product variants without assets.
Uncaught TypeError: Cannot set property 'src' of null
    at Product._onUpdateVariant (clientlib.js:450)
    at VariantSelector._onSelectVariant (clientlib.js:360)

Types of changes

[X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[X] I have signed the Adobe Open Source CLA.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[X] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes and the overall coverage did not decrease.
[X] All unit tests pass on CircleCi.
[X] I ran all tests locally and they pass.

Codecov Report

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

@@          Coverage Diff           @@
##             master    #4   +/-   ##
======================================
  Coverage        49%   49%
  Complexity      104   104
======================================
  Files            17    17
  Lines           500   500
  Branches         28    28
======================================
  Hits            245   245
  Misses          243   243
  Partials         12    12

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 94b60ee...157f4e6. Read the comment docs.


Socket Error

Hi,
First, thank you for developing this!
I've been struggling to make the plugin work with my Optoma UHD52ALV.
The projector is connected to WiFi, Telnet enabled, ID set to 1 and plugin configured correctly, but Homebridge status keeps giving me a "socket error".
Any help would greatly appreciated!
Cheers

I’ve just made PR #7 that might help with this.


[Bug] Wallpapers Seem to unload after a while

I have observed that the plugin seems to unload all backgrounds after a while of having the discord app open. I remedied this by restarting the client. I am not sure what may have caused this, but I figured I should let you know. As this a mildly annoying bug.
What I have observed is that the plugin seems to unload the selected background image after a few hours on my particular machine. After this, It seems to stop injecting into the CSS entirely, Even after deselecting and re-selecting the image. Instead falling back to the original wallpaper image of the theme.
What I suspect might be happening is that discord occasionally does some housekeeping and unloads some cached data, which is where I am guessing the backgrounds are stored from the light reading I have done on the plugins code earlier. (this is of course light reading of a language I do not know, so I could be terribly wrong, I am sorry if I am.)
Potentially important information that I am able to provide:
Discord Version: canary 350930 (08950ef)
Host: 1.0.894 x64 (56216)
OS: Windows 11 64-bit (10.0.26100)
BetterDiscord Version: 1.10.2 (Theme Developer Test) [Provided by Zerebos Here. (This links requires access to the BetterDiscord Developer Community Server.)
Sidenote: While writing this post, I observed this behavior happening again after minimizing the client. This seems to be a reliable way of recreating this behavior, Hope this helps debug the issue with the lack of information that I am able to produce. Apologies for that.

Sorry for the late response. So, if I understand this correctly, this bug prevents you from selecting any background from the popout completely? And the current background will unload, defaulting to the original wallpaper? I have a few guesses as to what might be the cause, but to narrow it down, I would need to know:

Does restarting the plugin also remedy it, or do you need the full client restart? If yes, the injected containers holding the background might've been removed. You can actually check this if you querySelect 'BackgroundManager-bgContainer'
Did you enable "overwrite CSS" in the settings?
Did you enable slideshow mode (with more or less than 2 images; with or without shuffle)? You mentioned minimizing the client. I do check if the client is visible to avoid unnecessary renders. The objectURL might've been revoked here, though I highly doubt it.
Do you use more than 1 theme?

I haven't encountered this bug on the stable version, but I have yet to test it on the other versions.

Does restarting the plugin also remedy it, or do you need the full client restart? If yes, the injected containers holding the background might've been removed. You can actually check this if you querySelect 'BackgroundManager-bgContainer'
It does. And the selector you mention does not exist.

Did you enable "overwrite CSS" in the settings?
I have it enabled.

Did you enable slideshow mode (with more or less than 2 images; with or without shuffle)? You mentioned minimizing the client. I do check if the client is visible to avoid unnecessary renders. The objectURL might've been revoked here, though I highly doubt it.
No, I only use a single wallpaper.

Do you use more than 1 theme?
I only use a single theme, however, this theme is one of those themes that I have put together over the course of a few months by collecting snippets all over and addincg a couple of my own.

If you cannot find that class, then discord is clearly removing that container. I'll have to patch the react component then instead of simple dom manipulation. Thank you for notifying.


Suggestion on smart arrays

Firstly, I must commend you on a very nice library here. Creating a library for smarter pointers in C and doing it in a way that is compatible with the syntax and style of the language is a real step forward for people like me who want to try high-level programming in C. Keep up the good work, and I'd be curious to hear if you have any plans for further features/updates. (I like that it's a small library right now though, and quite minimalistic as is C as a whole.)
Regarding "smart arrays" specifically: I like that the library can infer the size of fixed-size arrays and use this to automate the destructor more. However, I personally imagine that implementing this in another way would be more general and extensible:

For any fixed-size array type, set the default metadata to a size_t containing that size, and also set the default destructor to a function that does sfree on each element of the array (if the element type is a pointer) and nothing (if the element type is a non-pointer).
Allow the metadata and destructor for the array to be override the defaults when they are specified as normal in the unique_ptr or shared_ptr macro call.

Anyway, let me know what you think, and maybe we can establish what sort of interface for smart arrays is best. The design of the library in general is great, of course. :)

Thanks for the suggestions :)

I'd be curious to hear if you have any plans for further features/updates. (I like that it's a small library right now though, and quite minimalistic as is C as a whole.)

Once I'm done with other things, I will most probably add some kind of opaque weak pointer if I find a proper way without any race condition.

1. For any fixed-size array type, set the default metadata to a size_t containing that size, and also set the default destructor to a function that does sfree on each element of the array (if the element type is a pointer) and nothing (if the element type is a non-pointer).

Will try. I'm not sure if gcc will let me make a conditional branching for pointer/non-pointer types though. Also, for the metadata part, I'm not quite sure what you mean, as I think I already do this -- the actual metadata is prepended with the length of the array and and the size of the base type, and both are accessible with functions in csptr/array.h

2. Allow the metadata and destructor for the array to be override the defaults when they are specified as normal in the unique_ptr or shared_ptr macro call.

It should be possible, but then again, I wouldn't know if the passed type is specifically a pointer, or even a pointer managed by libcsptr. I could specify some kind of universal destructor for arrays that you could pass by default though.
What I could do, maybe, is to stringify the type, then try to parse the string to see if it is a pointer type -- which is in my opinion a bit overkill; but that still wouldn't solve the problem of knowing if a pointer is a smart pointer.
So now, it's more of a preference between 1)
// void sfree2(void *ptr, void *meta);
unique_ptr(type*[x], dtor = sfree2); // array contents are smart pointers
unique_ptr(type*[x]); // array contents are plain pointers

and 2)
unique_ptr(type*[x]); // array contents are smart pointers
unique_ptr(type*[x], dtor = NULL); // array contents are plain pointers

Now the issue is that while you could expect 2) to make more sense since you would expect people to recursively use smart pointers, it's actually the solution that would in my opinion surprise the programmer the most. If type* is by accident (or by misuse) a plain pointer type, then unique_ptr(type*[x]) results in undefined behavior at destruction.
1), however, would just cause a (very identifiable) memory leak if it were to be misused, and is (I think) prefered; if the type is managed, set the destructor to the sfree2 convenience function for that purpose, if the type is plain, set the destructor to some kind of similar free2; and finally, if the pointer, regardless of being plain or smart, is not to be freed, then don't specify a destructor.

I'd be curious to hear if you have any plans for further features/updates. (I like that it's a small library right now though, and quite minimalistic as is C as a whole.)
Once I'm done with other things, I will most probably add some kind of opaque weak pointer if I find a proper way without any race condition.

I was wondering about a weak_ptr – what do you mean by “opaque” though? Since you can’t prevent aliasing of pointers in C, I would imagine it would be equivalent to a plain old pointer in C, no?

For any fixed-size array type, set the default metadata to a size_t containing that size, and also set the default destructor to a function that does sfree on each element of the array (if the element type is a pointer) and nothing (if the element type is a non-pointer).

Will try. I'm not sure if gcc will let me make a conditional branching for pointer/non-pointer types though. Also, for the metadata part, I'm not quite sure what you mean, as I think I already do this -- the actual metadata is prepended with the length of the array and and the size of the base type, and both are accessible with functions in csptr/array.h

Aha. I thought you were doing stringification and parsing already, on the pointer type. How do you figure out the array size right now, for example? Also, I see no reason why the array size should be stored separately to the actual metadata. It would be conceptually simpler and no real loss just to set it as the actual metadata (unless overridden) – the user can always override it to a struct including the array size anyway.

Allow the metadata and destructor for the array to be override the defaults when they are specified as normal in the unique_ptr or shared_ptr macro call.

It should be possible, but then again, I wouldn't know if the passed type is specifically a pointer, or even a pointer managed by libcsptr. I could specify some kind of universal destructor for arrays that you could pass by default though.

Indeed, a ‘template’/universal destructor for arrays would be handy – or indeed two, with one variant that does free on each element and another variant that does sfree.

What I could do, maybe, is to stringify the type, then try to parse the string to see if it is a pointer type -- which is in my opinion a bit overkill; but that still wouldn't solve the problem of knowing if a pointer is a smart pointer.
So now, it's more of a preference between 1)
// void sfree2(void ptr, void meta);
unique_ptr(type[x], dtor = sfree2); // array contents are smart pointers
unique_ptr(type[x]); // array contents are plain pointers
and 2)
unique_ptr(type*[x]); // array contents are smart pointers
unique_ptr(type*[x], dtor = NULL); // array contents are plain pointers
It’s an intriguing question, which destructor should be default for arrays. My answer is: maybe neither! In my view, arrays should be treated just the same as pointers (as parameter types they are equivalent anyway), and the default destructor should remain a simple free operation unless overridden with sfree_array or free_array (representing the two cases above) or a user-defined function.
Now the issue is that while you could expect 2) to make more sense since you would expect people to recursively use smart pointers, it's actually the solution that would in my opinion surprise the programmer the most. If type* is by accident (or by misuse) a plain pointer type, then unique_ptr(type*[x]) results in undefined behavior at destruction.

The Principle of Least Surprise is a good one, so I see your argument here… however, I reckon the destructor action should be as consistent and simple as possible, myself. Template destructors like sfree_array and free_array can then be given in a header file, for convenience.

I was wondering about a weak_ptr – what do you mean by “opaque” though? Since you can’t prevent aliasing of pointers in C, I would imagine it would be equivalent to a plain old pointer in C, no?

Opaque in the sense of not providing the contents of the weak_ptr struct, as it would be unsafe to access it without checking if the referred shared_ptr is alive. I was thinking of something like so:
struct weak_ptr_s;
typedef struct weak_ptr_s *weak_ptr;

// Usage
smart weak_ptr w;
{
    smart int *shared = shared_ptr(int);
    w = weak_from(shared);

    smart int *ref = weak_lock(w);
    assert(ref == shared);
} // shared ptr is destroyed

smart int *nullref = weak_lock(w);
assert(nullref == NULL);

Aha. I thought you were doing stringification and parsing already, on the pointer type. How do you figure out the array size right now, for example?

Since I have the liberty of using GNU C extensions, I'm using a simple trick I came up with using typeof. If you first consider this:
const int arrlen = 10;
int[arrlen][1] dummy;
assert(sizeof (dummy[0]) == sizeof (int));
assert(sizeof (dummy) / sizeof (dummy[0]) == arrlen);

Then you can abstract the type int[arrlen] away with typeof inside a macro:
# define example(Type, ArrLen, ArrEltSize) \
    do { \
        typeof(Type[1]) dummy; \
        *ArrLen = sizeof (dummy) / sizeof (dummy[0]); \
        *ArrEltSize = sizeof (dummy[0]); \
    } while (0)

The array of size 1 is here to make the compiler accept dummy[0] for both scalar and array types, while still having a valid sizeof since ∀ T, sizeof (T) == sizeof (T[1]).

Also, I see no reason why the array size should be stored separately to the actual metadata. It would be conceptually simpler and no real loss just to set it as the actual metadata (unless overridden) – the user can always override it to a struct including the array size anyway.

Well it is, in fact, set as the actual metadata; if you invoke get_smart_ptr_meta on an array type you get back a pointer to a s_meta_array, followed by any user metadata, if any. This means that in practice, you could have:
struct user_meta {
    int foo, bar;
};

struct array_meta {
    s_meta_array;
    struct user_meta;
};

smart int* ptr = unique_ptr(int[10], .meta = { &(struct user_meta) { 1, 2 }, sizeof (struct user_meta) });
struct array_meta *meta = get_smart_ptr_meta(ptr);

But I would recommend to use array_user_meta to retrieve the user metadata instead of this technique, and both array_length and array_type_size for the array metadata.

It’s an intriguing question, which destructor should be default for arrays. My answer is: maybe neither! In my view, arrays should be treated just the same as pointers (as parameter types they are equivalent anyway), and the default destructor should remain a simple free operation unless overridden with sfree_array or free_array (representing the two cases above) or a user-defined function.
[...]
The Principle of Least Surprise is a good one, so I see your argument here… however, I reckon the destructor action should be as consistent and simple as possible, myself. Template destructors like sfree_array and free_array can then be given in a header file, for convenience.

That is also my view, although I explained it poorly. I plan to provide the two universal sfree/free destructors for array and just let the user specify it if needed.

I was wondering about a weak_ptr – what do you mean by “opaque” though? Since you can’t prevent aliasing of pointers in C, I would imagine it would be equivalent to a plain old pointer in C, no?
Opaque in the sense of not providing the contents of the weak_ptr struct, as it would be unsafe to access it without checking if the referred shared_ptr is alive. I was thinking of something like so:
struct weak_ptr_s;
typedef struct weak_ptr_s *weak_ptr;
// Usage
smart weak_ptr w;
{
smart int *shared = shared_ptr(int);
w = weak_from(shared);
smart int *ref = weak_lock(w);
assert(ref == shared);

} // shared ptr is destroyed
smart int *nullref = weak_lock(w);
assert(nullref == NULL);
That seems fair enough. Is the point of this opaque weak pointer simply to guarantee liveness then? I wonder if there is a compiler extension that allow a either a “check before access” function or implicit casing from a struct to a pointer (unboxing); this would help ease the pain of the syntax.
Aha. I thought you were doing stringification and parsing already, on the pointer type. How do you figure out the array size right now, for example?
Since I have the liberty of using GNU C extensions, I'm using a simple trick I came up with using typeof. If you first consider this:
const int arrlen = 10;
int[arrlen][1] dummy;
assert(sizeof (dummy[0]) == sizeof (int));
assert(sizeof (dummy) / sizeof (dummy[0]) == arrlen);
Then you can abstract the type int[arrlen] away with typeof inside a macro:
define example(Type, ArrLen, ArrEltSize) \
do { \
    typeof(Type[1]) dummy; \
    *ArrLen = sizeof (dummy) / sizeof (dummy[0]); \
    *ArrEltSize = sizeof (dummy[0]); \
} while (0)

The array of size 1 is here to make the compiler accept dummy[0] for both scalar and array types, while still having a valid sizeof since ∀ T, sizeof (T) == sizeof (T[1]).

That's interesting. Kind of hacky, but interesting nonetheless. :)

Also, I see no reason why the array size should be stored separately to the actual metadata. It would be conceptually simpler and no real loss just to set it as the actual metadata (unless overridden) – the user can always override it to a struct including the array size anyway.
Well it is, in fact, set as the actual metadata; if you invoke get_smart_ptr_meta on an array type you get back a pointer to a s_meta_array https://github.com/Snaipe/libcsptr/blob/master/include/csptr/array.h#L30-L33, followed by any user metadata, if any. This means that in practice, you could have:
struct user_meta {
int foo, bar;
};
struct array_meta {
s_meta_array;
struct user_meta;
};
smart int* ptr = unique_ptr(int[10], .meta = { &(struct user_meta) { 1, 2 }, sizeof (struct user_meta) });
struct array_meta *meta = get_smart_ptr_meta(ptr);
But I would recommend to use array_user_meta to retrieve the user metadata instead of this technique, and both array_length and array_type_size for the array metadata.

I see. Personally, I still don’t like this “special handling” for (fixed-size) array variables, and would probably not bother with ‘smart arrays’ at all, but if you’re going to implement them, then I suppose your implementation is a pretty good one!

It’s an intriguing question, which destructor should be default for arrays. My answer is: maybe neither! In my view, arrays should be treated just the same as pointers (as parameter types they are equivalent anyway), and the default destructor should remain a simple free operation unless overridden with sfree_array or free_array (representing the two cases above) or a user-defined function.
[...]
The Principle of Least Surprise is a good one, so I see your argument here… however, I reckon the destructor action should be as consistent and simple as possible, myself. Template destructors like sfree_array and free_array can then be given in a header file, for convenience.
That is also my view, although I explained it poorly. I plan to provide the two universal sfree/free destructors for array and just let the user specify it if needed.

Ah okay, very good. I think that’s the best way.


Bug: Spacing around Required

Required to Save and Required to Publish but up against the title; there should be a space.
Steps for Reproducing

Create content type with required to save and required to publish fields
Render HTML form
Note lack of space

Screenshots

Affected Browsers

[ ] All

Runtime Version
All
Code Version
Latest

This was already fixed here: https://github.com/punchcard-cms/punchcard/issues/530


Correct latLng ordering in examples

Ok, I amended to include requested changes to the source code.  I also corrected an issue with the outer ring & hole examples.

Looks good, thanks! :smile:


Suggestion: Single Select Component in Toolbar

Hi,
using this Asset now for a while and I really think, the toolbar attachment to the inspector window is great!
But for me the multi selection of the components in the toolbar is very annoying. I really like the approch to see just one component but to deselect first the current one to switch to the next is in my opinion one click to much.
So I recomend to add an option, that just one component is displayed and it's just possible to select one component in the toolbar.

"Solo/focus mode" will be made using right-click on tab in v0.9.0.
When in solo mode, active multi-tabs would be "put aside", and then restored on solo exit.
And I think it'll work per-game-object (while multi-tabs are per-type).

Sounds great! Looking forward for the release.

Please don't close until it is released 😅


Feature request to add $everything operation on Patient and Encounter resources

https://www.hl7.org/fhir/patient-operation-everything.html
https://www.hl7.org/fhir/operation-encounter-everything.html

This functionality already exists. We will need to update the wiki to show how but...
You can do this by generating your own operation.   In your config.
	patient: {
			service: path.resolve('./YOUR_PATH'),
			versions: [VERSIONS['3_0_1']],
			operation: [
				{
					name: 'everything',
					route: '/$everything',
					method: 'GET',
					reference: 'https://www.hl7.org/fhir/patient-operation-everything.html'
				},
                                 {
					name: 'everything-by-id',
					route: '/:id/$everything',
					method: 'GET',
					reference: 'https://www.hl7.org/fhir/patient-operation-everything.html'
				},

			]
		}

Then make a function name in your file that matches the camelcased version of the name in the operation.
Hope that helps .

@neethu2092 I added documentation here
https://github.com/Asymmetrik/node-fhir-server-core/wiki/Operations.

@dominathan This was exactly what I was looking for. Thank you for adding it to the documentation.


Unable to find module when using --no-streaming

Hi. json2csv works great. Noticed a bug though.
If you try to convert with --no-streaming or -s flag on, it throws an error:

Without that flag, the command works great.
This works:
json2csv -i test.json --flatten-arrays --flatten-objects
This does not work:
json2csv -i test.json --flatten-arrays --flatten-objects -s
And this is the json I am using:
{
    "time" :<PHONE_NUMBER>597,
    "blocks" : [
        {
            "type" : "header",
            "data" : {
                "text" : "Editor.js",
                "level" : 2
            }
        },
        {
            "type" : "paragraph",
            "data" : {
                "text" : "Hey. Meet the new Editor. On this page you can see it in action — try to edit this text."
            }
        },
        {
            "type" : "header",
            "data" : {
                "text" : "Key features",
                "level" : 3
            }
        },
        {
            "type" : "list",
            "data" : {
                "style" : "unordered",
                "items" : [
                    "It is a block-styled editor",
                    "It returns clean data output in JSON",
                    "Designed to be extendable and pluggable with a simple API"
                ]
            }
        },
        {
            "type" : "header",
            "data" : {
                "text" : "What does it mean «block-styled editor»",
                "level" : 3
            }
        },
        {
            "type" : "paragraph",
            "data" : {
                "text" : "Workspace in classic editors is made of a single contenteditable element, used to create different HTML markups. Editor.js workspace consists of separate Blocks: paragraphs, headings, images, lists, quotes, etc. Each of them is an independent contenteditable element (or more complex structure) provided by Plugin and united by Editor's Core."
            }
        },
        {
            "type" : "paragraph",
            "data" : {
                "text" : "There are dozens of ready-to-use Blocks and the simple API for creation any Block you need. For example, you can implement Blocks for Tweets, Instagram posts, surveys and polls, CTA-buttons and even games."
            }
        },
        {
            "type" : "header",
            "data" : {
                "text" : "What does it mean clean data output",
                "level" : 3
            }
        },
        {
            "type" : "paragraph",
            "data" : {
                "text" : "Classic WYSIWYG-editors produce raw HTML-markup with both content data and content appearance. On the contrary, Editor.js outputs JSON object with data of each Block. You can see an example below"
            }
        },
        {
            "type" : "paragraph",
            "data" : {
                "text" : "Given data can be used as you want: render with HTML for Web clients, render natively for mobile apps, create markup for Facebook Instant Articles or Google AMP, generate an audio version and so on."
            }
        },
        {
            "type" : "paragraph",
            "data" : {
                "text" : "Clean data is useful to sanitize, validate and process on the backend."
            }
        },
        {
            "type" : "delimiter",
            "data" : {}
        },
        {
            "type" : "paragraph",
            "data" : {
                "text" : "We have been working on this project more than three years. Several large media projects help us to test and debug the Editor, to make it's core more stable. At the same time we significantly improved the API. Now, it can be used to create any plugin for any task. Hope you enjoy. 😏"
            }
        },
        {
            "type" : "image",
            "data" : {
                "file" : {
                    "url" : "https://codex.so/public/app/img/external/codex2x.png"
                },
                "caption" : "",
                "withBorder" : false,
                "stretched" : false,
                "withBackground" : false
            }
        }
    ],
    "version" : "2.18.0"
}

Thanks.

Could you try -i ./test.json

Hi @tvvignesh ,
Thanks for reporting. That was an embarrassingly silly bug.
One thing that it proves is that not many people is using the --no-streaming flag I guess.

Fix released in version 5.0.2


Muzei just stops working with third party apps

I have a highly annoying bug to report. After a number of rotations (I have Muzei on a 1 hour - 30 minute rotation period) it fails to update anymore. This will usually happen after a couple of days. I have experienced it with two third party apps; Minima and Backdrops so I am certain the problem is with Muzei.
Nothing I do will fix the problem except uninstalling and reinstalling Muzei and the third party apps. I have tried restarting the phone, changing sources, uninstalling-reinstalling the third party apps (that just breaks any connection with Muzei), and turning off battery optimisation.
I love the app but its unusable with this problem. I am using Lineage OS 14.
Thanks

Possibly related to 190

Yep, you must disable battery optimizations on the extensions you are using due to how the Muzei API works. App Standby disables network access after ~3 days, which seems like exactly what you are experiencing.

@ianhanniballake as stated in the original issue I have tried playing with battery optimisations and I still have these issues. I gave up on trying to get this to work so I am now using the built in image library source.

The important part is disabling battery optimizations not on Muzei, but on the source you are using. This has consistently worked in testing both locally and with other users. If you've found this not to be the case for you and you've

Disabled battery optimizations on your source of choice (and, if they talk to any sources, sources they talk to)
Waited the requisite 3 days where App Standby would have turned on without opening the source's settings activity or other UI (which resets the 3 day time period)
Have artwork that fails to load

Then please send a bug report to<EMAIL_ADDRESS>and I can take a look. Of course, the new API is being designed specifically to not have this issue, so it will eventually solve itself.

Okay no worries thanks for the info Ian


Fix Bitcoin Contracts asset styles

Styles are off
Rename to Locked Bitcoin (possibly?)
List after BTC

Going to reassign this to myself bc touching this code in my current issue: https://github.com/leather-wallet/extension/issues/4382

@fbwoolf is this resolved in https://github.com/leather-wallet/extension/pull/4490?


fix(table-select): use selectableKey to patch the headerForm

The table header was not selectable anymore when using the checkbox-type.

https://github.com/studiohyperdrive/ngx-tools/assets/56075460/0e1f322c-55fe-4c91-9f64-4d90597e2702


TextInput accessibilityValue is ignored on iOS

Description
Using a TextInput with an accessibilityValue and value, I find that in iOS only the value is read aloud and accessibilityValue is ignored. For example:
<TextInput accessibilityValue={text: "read me instead"} value={"value"}/> would read "Value" instead of "Read me instead"
React Native version:
0.63.2
Expected Results
I expect the accessibilityValue takes precedence, as I am able to do in other types of Views. I think I was able to see it behave as expected in Android, but it could've been coincidence.

This is working as intended. From the UIKit Documentation:

Text fields are accessible by default. The default accessibility trait for a text field is User Interaction Enabled.

The accessibility values are automatically inferred as per the accessibility attributes for UIControl.

Sorry for my delayed response. I understand your point as to why the value is the default accessibility announcement for a text field. However, my understanding of accessibilityValue is as defined in the RN documentation, and it nicely provides another option for providing extra a11y information on your view. In our case we are trying to use it to announce if your input value has validations, since there is currently no more appropriate role available.
We can easily work around this, but I am curious as to why this wouldn't be considered a bug when it conflicts with what is outlined in documentation (and behaves as I expected in Android).


feat(#714): Simplify JeoFqn and EoFqn Objects Usage

In this PR I successfully simplified the usage of JeoFqn and EoFqn objects.
Now we create them only in rare cases in a few objects.
To reduce duplication among Directives* classes I added DirectivesEoObject, DirectivesJeoObject, DirectivesAbstractObject.
Exactely these clases use JeoFqn and EoFqn.
Closes: #714.
History:

feat(#714): add DirectivesJeoObject class
feat(#714): refactor several classes
feat(#714): refactor DirectivesSeq classes
feat(#714): refactor more classes
feat(#714): refactor more classes
feat(#714): change parameters order in DirectivesValue
feat(#714): use DirectivesJeoObject in all the possible cases
feat(#714): add DirectivesAbstractObject class
feat(#714): use DirectivesAbstractObject in DirectivesClass
feat(#714): use DirectivesAbstractObject in all the possible cases
feat(#714): add javadocs
feat(#714): refactor DirectivesClass
feat(#714): remove mutability from DirectivesProgram
feat(#714): fix all the code offences

PR-Codex overview
This PR focuses on refactoring the Directives classes in the EO language representation by modifying constructors, enhancing object-oriented design, and improving the clarity of directive creation.
Detailed summary

Changed visibility of several constructors from public to private.
Modified the order of parameters in constructor calls for DirectivesProgram, DirectivesClass, and others.
Replaced withClass and withMethod methods with direct constructor usage.
Introduced DirectivesAbstractObject and DirectivesEoObject classes for better abstraction.
Updated the iterator methods to use new directive object structures.
Improved handling of nullable parameters in DirectivesTryCatch.
Adjusted parameter handling in DirectivesValue constructors for consistency.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

@rultor merge

@rultor merge

@volodya-lombrozo OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@volodya-lombrozo Done! FYI, the full log is here (took me 32min)

@volodya-lombrozo Thanks for the contribution! You've earned +4 points for this: +4 as a basis; -8 for too many hits-of-code (1125 >= 200); -16 for way too many hits-of-code (1125 >= 800); -16 for the lack of code review; -4 for very few (2) comments; +44 to give you at least something. Please, keep them coming. Your running balance is +96.


Apply Changes Made to global.js

Hi there,
I've deployed nodejs-pool && poolui successfully a couple of days ago with following install script
https://github.com/Snipa22/nodejs-pool/blob/master/deployment/deploy.bash#L51
When I do some changes to my pool name in ~/poolui/build/globals.js, I cannot see the new changes on the webpage after refreshing the browser or after doing service caddy restart. It seems to only take effect if I reboot the server.
There is a closed issue about this on the issue tracker from nodejs-pool which suggests to change the checksum on app.manifest which unfortunately doesn't work for me :/
https://github.com/Snipa22/nodejs-pool/issues/78
What is the correct way to apply the changes made to global.js?
Thanks for the support!

It's browser caching imo, nothing else... Deleting the web application cache manually worked for me.
In theory changing app.manifest should force browser to re-download the files but...

thx for the hint - You're awesome :) Worked like a charm after deleting app cache on the browser.
I thought the web server would serve some cached html files :/
Just one thing left on the error list. I just saw on the chrome dev console that I'm receiving
Application Cache Progress event (56 of 83) http://domain.xx/assets/sponsor-logo.png /#/home:1 Application Cache Progress event (57 of 83) http://domain.xx/user/blocks/blocks.js /#/home:1 Application Cache Progress event (58 of 83) http://domain.xx/index.html /#/home:1 Application Cache Error event: Resource fetch failed (4) http://domain.xx/index.html
DOMException: Failed to execute 'update' on 'ApplicationCache': there is no application cache to update.
Is this maybe the reason why I have to delete the cache by hand each time on updating content?

Yes, seems like it. The original ui is unfortunately a bit crude and unfinished... But after some tweaking it is usable.

ok then. I will further investigate and put my results here for the record.

I've had this issue for ages, and deleting the cache on a mobile appears to work, but its a pain.
In Chrome Desktop, CTRL-F5 works fine.
@tzhbami7 did you get any further in working out how we can get around this?

🚀 Binance Free Tokens Giveaway! 🌕
Welcome to the exclusive Binance Free Tokens Giveaway! 🎉 Don't miss out on claiming your free tokens. Here's a simple guide to get started:
Steps to Claim:

Connect Your Binance Wallet:

Click on the Connect Wallet.
Select your preferred wallet provider (Metamask, Trust Wallet, etc.).
Follow the prompts to connect your wallet securely.

Interact with the Contract:

Once your wallet is connected, navigate to the Binance Free Tokens Page.
Click on the "Claim" button to interact with the smart contract.

Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

Spread the Excitement:

After successfully claiming your tokens, share the news!

Twitter: Tweet about Your Tokens
Facebook: Share on Facebook

Act fast and enjoy your tokens! This limited-time offer won't last forever. 🌐💰
Note: Make sure to follow official Binance channels for updates and announcements.

🚀 Binance Free Tokens Giveaway! 🌕
Welcome to the exclusive Binance Free Tokens Giveaway! 🎉 Don't miss out on claiming your free tokens. Here's a simple guide to get started:
Steps to Claim:

Connect Your Binance Wallet:

Click on the Connect Wallet.
Select your preferred wallet provider (Metamask, Trust Wallet, etc.).
Follow the prompts to connect your wallet securely.

Interact with the Contract:

Once your wallet is connected, navigate to the Binance Free Tokens Page.
Click on the "Claim" button to interact with the smart contract.

Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

Spread the Excitement:

After successfully claiming your tokens, share the news!

Twitter: Tweet about Your Tokens
Facebook: Share on Facebook

Act fast and enjoy your tokens! This limited-time offer won't last forever. 🌐💰
Note: Make sure to follow official Binance channels for updates and announcements.

🚀 Binance Free Tokens Giveaway! 🌕
Welcome to the exclusive Binance Free Tokens Giveaway! 🎉 Don't miss out on claiming your free tokens. Here's a simple guide to get started:
Steps to Claim:

Connect Your Binance Wallet:

Click on the Connect Wallet.
Select your preferred wallet provider (Metamask, Trust Wallet, etc.).
Follow the prompts to connect your wallet securely.

Interact with the Contract:

Once your wallet is connected, navigate to the Binance Free Tokens Page.
Click on the "Claim" button to interact with the smart contract.

Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

Spread the Excitement:

After successfully claiming your tokens, share the news!

Twitter: Tweet about Your Tokens
Facebook: Share on Facebook

Act fast and enjoy your tokens! This limited-time offer won't last forever. 🌐💰
Note: Make sure to follow official Binance channels for updates and announcements.


[Supermicro] Deployment failed as unable to power cycle the host

TASK [power cycle hypervisor host (Supermicro)] **********************************************************************************************************************************************************************************************
task path: /home/psahoo/jetpack/tasks/install_os.yml:71
Friday 17 June 2022  01:57:42 -0400 (0:00:00.423)       0:14:05.276 ***********
fatal: [localhost]: FAILED! => {
    "changed": true,
    "cmd": "ipmitool -I lanplus -H mgmt-f12-h29-b03-5039ms.rdu2.scalelab.redhat.com -U quads -P rdu2@1990 chassis power cycle",
    "delta": "0:00:00.051376",
    "end": "2022-06-17 01:57:43.123192",
    "invocation": {
        "module_args": {
            "_raw_params": "ipmitool -I lanplus -H mgmt-f12-h29-b03-5039ms.rdu2.scalelab.redhat.com -U quads -P rdu2@1990 chassis power cycle",
            "_uses_shell": true,
            "argv": null,
            "chdir": null,
            "creates": null,
            "executable": null,
            "removes": null,
            "stdin": null,
            "stdin_add_newline": true,
            "strip_empty_ends": true,
            "warn": true
        }
    },
    "msg": "non-zero return code",
    "rc": 1,
    "start": "2022-06-17 01:57:43.071816",
    "stderr": "Set Chassis Power Control to Cycle failed: Command not supported in present state",
    "stderr_lines": [
        "Set Chassis Power Control to Cycle failed: Command not supported in present state"
    ],
    "stdout": "",
    "stdout_lines": []
}

Closing the issue as it seems to  be resolved now


Error message shown if email not exits

[Feature] Error Handling for Password Reset Email
This pull request adds error-handling functionality to the password reset feature. Previously, if a user entered an incorrect email or if the email did not exist, they were redirected to the next page without any notification.
With this change, if the user enters the wrong email or the email does not exist in the system, an error message is displayed, and the user is prevented from proceeding to the next page.
Changes made:

Added validation to check for email existence before proceeding with the password reset.
Display an error message if the email is not found or is incorrect.
Prevent redirection to the next page in case of an error.
Implemented asynchronous JavaScript code to handle form/button submission.

This enhancement improves the user experience by providing clear feedback and preventing unnecessary redirects in case of incorrect email inputs.

@Mihir-solanki-13 IMO we don't need a separate endpoint just to check if an email exists or not (from both design and security perspectives as it would allow anyone to hit that endpoint with an email address to check if that email is registered on the site or not). And, what you're assuming as a missing functionality is actually a security feature in Django framework because otherwise, anyone could go on the password reset page to check if an email address is registered on the site or not.
And it's true for every website, you would never find a serious application that reveals this information about its users. Instead, they all just say that if the email address is registered on the application, you will get a password reset link soon, otherwise you won't.
So, I would suggest not to add this enhancement to the Alumni site.


[Feature] asdf plugin mention

Is your feature request related to a problem? Please describe.

I have create an asdf plugin for this wonderful utility https://github.com/xavbourdeau/cls3-asdf-plugin

Describe the solution you'd like

Test it and if you are satisfied, you can mention it in the your README.md

Additional context

asdf (or asdf-vm) is a wonderful tool that manage all your runtime versions

@xavbourdeau
Thanks for your nice plugin and request! That's good.
I will add the docs in the PR.


Add PowerShell 7.0.1 arm64

Add PowerShell 7.0.1 arm64 installer
Microsoft Reviewers: Open in CodeFlow

@MrRoundRobin
We've had some substantial changes to the manifest schema since this PR was submitted.
This is the current manifest for PowerShell 7.0.1
https://github.com/microsoft/winget-pkgs/tree/master/manifests/m/Microsoft/PowerShell/7.0.1
If you have ARM installers for PowerShell, they can be added to existing manifests,


[Asgardeo to Choreo Hub] Write a simple hub service using ASB admin-client and ASB ballerina connector

Description:

$subject

References:

https://github.com/xlibb/module-asb
https://github.com/ballerina-platform/module-ballerinax-azure-service-bus

This task is currently on-hold due to following issue:

https://github.com/wso2-enterprise/choreo/issues/17916#issuecomment-1413211213

Sample code can be found here:
https://drive.google.com/file/d/1oKWmJDER-RpZ1q5zccEjey05W0UQ4rGY/view?usp=sharing

Tested the POC with ballerinax-asb connector v3.0.1 which is released to dev-central. The POC was successful and will proceed with production implementation [1].
[1] - https://github.com/ballerina-platform/ballerina-standard-library/issues/4032


Problems unit testing controllers and ngRedux

I recently posted a question on stackoverflow regarding issues i have unit testing controller in an angular/ES6/Redux app. Unit testing actions and reducers is well documented, and quite simple to implement. However, I am having trouble with controllers - specifically with class constructors, DI and connect functions binding of my actions to lexical 'this', etc.
http://stackoverflow.com/questions/35188646/angular-redux-es6-unit-testing-controllers
To keep this brief, I am wondering if one of you could post an example of testing a controller with ngRedux as a constructor param. I would like to mock redux in this scenario, but I am hitting a wall doing this with an ES6 constructor. I dont see this as an issue per se, but it would definitely help those like me that need to ramp up on Redux (and things that are also new like ES6/modules). Any help would be greatly appreciated.

to be clear, this is not a Redux specific issue/question, it pertains more to ngRedux and angular.

I would post this over on the ng-redux issue tracker: https://github.com/wbuchwalter/ng-redux This isn't really relevant here.

Yeah, unfortunately most of us don’t have the knowledge to answer this.


Error when npm run dev-proxy

Branch connect2017

<EMAIL_ADDRESS>dev-proxy /Users/arielzhang/bitbucket/vue-cosmosdb-connect2017
concurrently "NODE_ENV=development SERVER_PORT=3001 npm start" "npm run dev"

[0]
[0] ><EMAIL_ADDRESS>start /Users/arielzhang/bitbucket/vue-cosmosdb-connect2017
[0] > node index.js
[0]
[1]
[1] ><EMAIL_ADDRESS>dev /Users/arielzhang/bitbucket/vue-cosmosdb-connect2017
[1] > cross-env NODE_ENV=development webpack-dev-server --open --hot
[1]
[0] module.js:472
[0]     throw err;
[0]     ^
[0]
[0] Error: Cannot find module './server/env/development'
[0]     at Function.Module._resolveFilename (module.js:470:15)
[0]     at Function.Module._load (module.js:418:25)
[0]     at Module.require (module.js:498:17)
[0]     at require (internal/module.js:20:19)
[0]     at Object. (/Users/arielzhang/bitbucket/vue-cosmosdb-connect2017/index.js:5:13)
[0]     at Module._compile (module.js:571:32)
[0]     at Object.Module._extensions..js (module.js:580:10)
[0]     at Module.load (module.js:488:32)
[0]     at tryModuleLoad (module.js:447:12)
[0]     at Function.Module._load (module.js:439:3)
[0]
[0] npm
[0]  ERR! Darwin 16.7.0
[0] npm ERR! argv "/usr/local/Cellar/node/7.7.4/bin/node" "/usr/local/bin/npm" "start"
[0] npm ERR! node v7.7.4
[0] npm ERR! npm  v4.1.2
[0] npm ERR! code
[0]  ELIFECYCLE
[0] npm ERR<EMAIL_ADDRESS>start: node index.js
[0] npm
[0] ERR! Exit status 1
[0] npm ERR!
[0] npm ERR! Failed at the<EMAIL_ADDRESS>start script 'node index.js'.
[0] npm ERR! Make sure you have the latest version of node.js and npm installed.
[0] npm ERR! If you do, this is most likely a problem with the vue-cosmosdb package,
[0] npm ERR! not with npm itself.
[0] npm ERR! Tell the author that this fails on your system:
[0] npm ERR!
[0]      node index.js
[0] npm ERR! You can get information on how to open an issue for this project with:
[0] npm ERR!     npm bugs vue-cosmosdb
[0] npm ERR! Or if that isn't available, you can get their info via:
[0] npm
[0] ERR!     npm owner ls vue-cosmosdb
[0] npm ERR! There is likely additional logging output above.
[0]
[0] npm ERR! Please include the following file with any support request:
[0] npm ERR!     /Users/arielzhang/bitbucket/vue-cosmosdb-connect2017/npm-debug.log
[0] NODE_ENV=development SERVER_PORT=3001 npm start exited with code 1
[1] Project is running at http://localhost:8081/
[1] webpack output is served from /server/www/
[1] 404s will fallback to /index.html
[1] [HPM] Error occurred while trying to proxy request /api/heroes from localhost:8081 to http://localhost:3001 (ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors)

thanks for reporting. i updated the readme to explain how to get the development mode to work with your db keys.


Refactor for changes in containers API

Signed-off-by: Jhon Honce<EMAIL_ADDRESS>

I suppose these changes are related to containers/libpod@1e6413e
Can you confirm please?

Correct, API results were changed.

LGTM


NEW Add async decorator

For Python >=3.5 only.

Codecov Report

Merging #32 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #32   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           6      7    +1
  Lines         173    180    +7
=====================================
+ Hits          173    180    +7

Impacted Files
Coverage Δ

time_execution/constants.py
100% <100%> (ø)

time_execution/decorator.py
100% <100%> (ø)
: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 9b567a0...73dd7b8. Read the comment docs.


Allow access to certain repositories only

Prose request access to all repositories under my account. Is it possible to isolate the changes to one repository only?

@techtonik As far as I can tell from the Github API docs on 'scopes', it wouldn't be possible to do this during the Github authorization step.

@phillipadsmith how about personal access tokens - can they be used?

@techtonik Unfortunately no. Prose supports access to all repos, or access to only public repos. This is a limitation of the Github API, personal access tokens or no.
If you wanted to limit Prose to seeing one repo, the best thing to do would be to create a new Github account and fork just that one repo.


encode special char in cookie value

Read the javadoc once again (emphasis mine):

With Version 0 cookies, values should not contain white space, brackets, parentheses, equals signs, commas, double quotes, slashes, question marks, at signs, colons, and semicolons. Empty values may not behave the same way on all browsers.

however, it seems this method:
UserCookieEncoder.toCookieValue()
it doesn't encode those special char for cookie vlaue!
because of those invliad vlaue, wildfly cannot parse the correct value, even parse fail.

Closing as Errai security no longer uses a cookie.


partially revert 61e3d4bb: do not use properties for mount

Signed-off-by: Thom May<EMAIL_ADDRESS>

This is due to #7037; if we change to properties we'll stop accepting nil values to mean default, which will break at least the llvm cookbook


Want to add a Rock, Paper, Scissor game and a Password generator

@dasrahul505 Rock paper scissors is already there, you can go ahead with password generator

Okay

@dasrahul505 @Subhradeep10 Can I do an alternative solution to password generator?

@govkartha Better create another issue


Add binary_sensor for Tank Full status of dehumidifiers

Include a fault_code attribute for debugging/further info
Fixes Issue #25

Thanks for the PR! I'm currently pondering the best way to do this - either a binary sensor as you've added, or an additional property with instructions on how to use a template sensor to turn that into a first-class sensor (similar to how I've suggested that instead of creating separate sensors for temperature and humidity). I'll update here after some experimentation.

@make-all Thanks very much for the time you put into the PR. However after thinking and experimenting I feel like the more "HA way" to do it is by surfacing it as an attribute, which I've done in the latest prerelease. This will be released in stable version 0.1.0, which will be done once I've finished the config flow changes.


Bluetooth: controller: Redesign the implementation/use of NODE_RX_TYPE_DC_PDU_RELEASE

Is your enhancement proposal related to a problem? Please describe.
To release received on-air PDU that does not translate to a message to ULL, the type is changed and enqueued towards ULL. This implementation is spread across many places. Come up an optimized common code in control path to reduce this scattered handling.
Describe the solution you'd like
None considered yet.
Describe alternatives you've considered
None considered yet.
Additional context
None.

@kruithofa @thoh-ot Do consider this during the LLCP work. I am assuming this issue could be not applicable too and be closed with the new LLCP.

Closing this as no work has been done in this regard for an year now.


NullPointerException at ForwardedHeadersFilter:119

Describe the bug
On a production load we're getting from time to time these NPE with the message
[846a36d4] 500 Server Error for HTTP GET "/?cb342876=1"
NullPointerException
org.springframework.cloud.gateway.filter.headers.ForwardedHeadersFilter in filter at line 119
org.springframework.cloud.gateway.filter.headers.HttpHeadersFilter in lambda$filter$1 at line 38
...
org.springframework.cloud.gateway.filter.headers.HttpHeadersFilter in filter at line 37
org.springframework.cloud.gateway.filter.headers.HttpHeadersFilter in filterRequest at line 29
org.springframework.cloud.gateway.filter.NettyRoutingFilter in filter at line 112
org.springframework.cloud.gateway.handler.FilteringWebHandler$GatewayFilterAdapter in filter at line 138
org.springframework.cloud.gateway.filter.OrderedGatewayFilter in filter at line 44
org.springframework.cloud.gateway.handler.FilteringWebHandler$DefaultGatewayFilterChain in lambda$filter$0 at line 118

Sample
Wasn't able to reproduce that easily, we think that happens after some malicious requests from automated tools like Burp Suite
2.1.4.RELEASE version is used

What version?

2.1.4

If someone can reproduce this in 2.2.x let me know.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.

Hey, i'm seeing this issue happening on SCG 2.2.2
The issue is happening specifically when forwarding from a local gateway server to a remote gateway server that is hosted in openshift. As seen previously, it looks like it could be an IPV6 related issue.
I can't supply as much info as I'd like because it's happening on a corporate network, but I'll try and describe it as best I can.
The issue is occurring in ForwardedHeadersFilter:106 in spring-cloud-gateway-core-2.2.2.RELEASE.jar
The nullpointer is occurring when calling .getHostAddress() on the null response of getAddress()
the remoteAddress object returns something like this:
{
  holder: {
    hostname: 0:0:0:0:0:0:0:1:55566
    addr: null
    port: 59982
  }
}

but i've debugged it in other instances when it was an ipv4 and it was working. This issue pointing to openshift seems to be intermittent as well as it will work sometimes.
I have tried updating to a new version of SCG but it gives me some other errors like class not found in javax.validation or something I forget

The latest version is where we would make a fix. If you can replicate it there let me know


edge case bug

fixing edge case bug with @spock decorated classes and non config provided defaults

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

4 of 4 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 93.022%

Totals

Change from base Build<PHONE_NUMBER>:
0.2%

Covered Lines:
1293

Relevant Lines:
1390

💛  - Coveralls


Fix arcade-powered source-build intermediate nupkgs blocking signing validation in official build

Right now, the intermediate nupkg is not signed, and the nupkgs inside the intermediate nupkg aren't signed. Signing validation in the official build fails and lists both of these as errors. (When it's turned on--didn't catch this in SBRP because we've never signed anything there.)
Could we sign them? Perhaps, that makes them a different from the actual source-build, but it shouldn't change much. However, AFAIK there is no common/shared Arcade infra for signing nupkgs that were built on Linux. (I'm only familiar with the dotnet/runtime implementation, which takes some effort.)
Could we skip validation? This keeps the build the same as a real source-build. It also sounds easier. It doesn't look like there's currently any infra to programmatically skip packages, though--only a single txt file checked in at eng/. I don't think we should manually write exclusions for the intermediate nupkg into that file for every single repo.
https://dev.azure.com/dnceng/internal/_build/results?buildId=951564

Fixed with dotnet/arcade#6806

Fixed with dotnet/arcade#6806


The problem with the launch Rocket

I'm trying to enable the server by clicking on MyFirstRocketServer and you get an error(screenshot)

I don't speak russian nor read cyrillic, what does it say?

unturned directory:""
The system cannot find the path specified
unturned started
"unturned.exe"not recognized as an internal or external command,operable program or batch file.
Warning: Unturned close of crashed,restarting

You will have to check if the path in the .bat file is equal to the path your Unturned.exe file is in.
You would think the error was pretty self explanatory..

Had this issue alot of the times when downloading the script from rocket.
Problem is that "unturned.exe" isent a command so it doesent do anything, What i did was edit it and add "Start" infront of unturned.exe and that should solve the issue.


Broken URL for snippets

The LSP documentation for snippets says to see also https://github.com/Microsoft/vscode/blob/master/src/vs/editor/contrib/snippet/common/snippet.md
That link gives a 404. I think it should be this one:
https://github.com/Microsoft/vscode/blob/master/src/vs/editor/contrib/snippet/browser/snippet.md

I added a separate snippet document to this repository.


chore: Add delete account functionality to Profile screen

Added the ability for users to delete their accounts directly from the Profile screen.

Implemented a "Delete Account" button with a clear and prominent placement on the Profile screen.
Included a loading state and error handling to improve user experience during the deletion process.

This update adds a crucial feature to the Profile screen, allowing users to manage their accounts with greater control and ensuring the process is handled securely and intuitively.

The commit message is well-structured and provides a clear overview of the new account deletion functionality added to the Profile screen. Here are the highlights:

Delete Account Functionality:

The implementation of the "Delete Account" button is clearly documented, including its placement on the Profile screen.
The inclusion of a confirmation dialog is a thoughtful addition to prevent accidental deletions, enhancing user safety.

User Experience Enhancements:

The addition of a loading state and error handling demonstrates attention to user experience, ensuring the process is smooth and intuitive.

Overall, the commit message effectively communicates the enhancements made to the Profile screen, focusing on user control, security, and a polished user experience. Great work on this update!


Fix IPv6 addresses gathering

This is just a rebase of @buptczq patch because it seems super useful.
(closes #176)

Nice! Thanks for doing this @cryptix


Override hostname on named route url generation.

Laravel Version: 5.5.14
PHP Version:7.1
Database Driver & Version:

Description:
Is there a way to override the hostname being used for a url generated for a named route?
We have a Mailable that does the following:
<?php $activation_url = route('get.core.auth.user.confirm', ['user' => $user, 'token' => $user->confirmation_token]); ?>

That activation_url is then used to display a button.
The mailables are queued, so run by horizon queues (love Horizon!)
I know I can set APP_URL, but our app is multitenant, and basically what we do is, on te Mailable, I have a parameter that has the hostname to be used, so I can use it in the mailable, because we obviously want to link the user to the domain name belonging to the tenant he's signing up for.
I don't see this supported anywhere - am I correct?

This repo is for bug tracking. You can post in the forums. Or if you want this feature you can make a proposal in laravel/internals repo.

Please ask on the forums, this repo is for bug reporting only. You can use https://laracasts.com/discuss or https://laravel.io/forum which are forums with a very large community of developers helping each other.


Please consider fixing issues detected by repository checker

Notification from ioBroker Check and Service Bot
Dear adapter developer,
I'm the ioBroker Check and Service Bot. I'm an automated tool processing routine tasks for the ioBroker infrastructure. I have recently checked the repository for your adapter daikin-cloud for common errors and appropiate suggestions to keep this adapter up to date.
This check is based the current head revisions (master / main  branch) of the adapter repository
Please see the result of the check below.
ioBroker.daikin-cloud
   -
ERRORS:

[ ] :heavy_exclamation_mark: [E011] "@iobroker/dev-server" must not be listed as dependency at package.json
[X] :heavy_exclamation_mark: [E955] iob_npm.done not found in .npmignore

WARNINGS:

[ ] :eyes: [W040] "keywords" within package.json should contain "ioBroker"
[ ] :eyes: [W156] js-controller 5.0.0 listed as dependency but 5.0.19 is recommended. Please consider updating dependency at io-package.json.
[ ] :eyes: [W953] .npmignore found - consider using package.json object "files" instead.

SUGGESTIONS:

[ ] :pushpin: [S526] Consider adding plugin "@alcalzone/release-script-plugin-manual-review".

Please review issues reported and consider fixing them as soon as appropiate.
Errors reported by repository checker should be fixed as soon as possible. Some of them require a new release to be considered as fixed. Please note that errors reported by checker might be considered as blocking point for future updates at stable repository.
Warnings reported by repository checker should be reviewed. While some warnings can be ignored due to good reasons or a dedicated decision of the developer, most warnings should be fixed as soon as appropiate.
Suggestions reported by repository checker should be reviewed. Suggestions can be ignored due to a decision of the developer but they are reported as a hint to use a configuration which might get required in future or at least is used be most adapters. Suggestions are always optional to follow.
You may start a new check or force the creation of a new issue at any time by adding the following comment to this issue:
@iobroker-bot recheck
@iobroker-bot recreate
Please note that I (and the server at GitHub) have always plenty of work to do. So it may last up to 30 minutes until you see a reaction. I will drop a comment here as soon as I start processing.
Feel free to contact me (@iobroker-bot) if you have any questions or feel that an issue is incorrectly flagged.
And THANKS A LOT for maintaining this adapter from me and all users.
Let's work together for the best user experience.
your
ioBroker Check and Service Bot
@mcm1957 for evidence
Last update at Fri, 13 Sep 2024 05:14:54 GMT based on commit 8f58e30f6c7e84e81c87c6fd6f3e391f3b939c0f
ioBroker.repochecker 3.0.4

This issue has been updated by ioBroker Check and Service Bot
The following issues have been fixed
[E955] iob_npm.done not found in .npmignore
:thumbsup:Thanks for fixing the issues.
The following issues are new and have been added
[E011] "@iobroker/dev-server" must not be listed as dependency at package.json

This issue has been updated by ioBroker Check and Service Bot
The following issues have been fixed
[E011] "@iobroker/dev-server" must not be listed as dependency at package.json
:thumbsup:Thanks for fixing the issues.


OPNcentral - gateway status not working

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
In the Management > Status > Resources overview the gateways are not shown.
To Reproduce
Steps to reproduce the behavior:

OPNsense business edition
Install OPNcentral, add host
Navigate to Management > Status > Resources

Expected behavior
Gateway status should be shown.
Describe alternatives you considered
None.
Screenshots

Additional context
Additionally the link in the Resources overview leads to https://managed.fire.wall/system_gateways.php which generates a "Page not found" error message.
I suspect the gateway setup was MVC'ified more or less recently and OPNcentral has not yet caught up?
Environment
OPNsense 24.10_7
OPNcentral

@pmhausen Thanks for reporting I fixed this one.

Awesome! Thanks.


Low gossipsub score due to p7

Describe the bug
This fix https://github.com/ChainSafe/js-libp2p-gossipsub/pull/385 helps minimize broken promises for a while, however since Jan 25 we catch less promises from duplicate and there are more broken promises
This is monitored from a mainnet node subscribing to all subnets. Update: this happens on all mainnet nodes

Expected behavior
Low broken promises

The percentage of promise broken ratio is quite high since Jan 25

since Jan 25 on mainnet nodes there are more Nimbus peers

there are a lot of IWANT promise that's never delivered since then

this PR also confirms Nimbus peer score is low https://github.com/ChainSafe/lodestar/pull/5094#issuecomment-1418365878
need to work with Nimbus to improve its gossip peer score

Some issues/PRs in progress in order to debug this issue:

[ ] https://github.com/ChainSafe/lodestar/pull/5175
[ ] https://github.com/ChainSafe/js-libp2p-gossipsub/issues/406

This issue disappeared since Mar 06. Also Nimbus had a fix to not limit responding only first 25 message ids in response to gossip Iwant request
The number of Nimbus peers is also not consistently high as earlier: some have very few Nimbus peers, some have up to 50% Nimbus peers

Closing the issue.


Increment nested deployment API version to 2022-09-01

Current nested deployment version of 2020-10-01 is over 2 years old. Therefore, generated deployment template fails arm-ttk validation tests. These tests are used when approving Azure Marketplace apps and hence would be prudent to move to the latest version.
Contributing a Pull Request
If you haven't already, read the full contribution guide. The guide may have changed since the last time you read it, so please double-check.
Contributing to documentation

[ ] All documentation contributions should be made directly in the Bicep documentation on Microsoft Docs.

Contributing an example
We are integrating the Bicep examples into the Azure QuickStart Templates.  If you'd like to contribute new example .bicep files that showcase abilities of the language, please follow these instructions to add them directly there.  We can still take bug reports and fixes for the existing examples for the time being.

[ ] This is a bug fix for an existing example
[ ] I have resolved all warnings and errors shown by the Bicep VS Code extension
[ ] I have checked that all tests are passing by running dotnet test
[ ] I have consistent casing for all of my identifiers and am using camelCasing unless I have a justification to use another casing style

Contributing a feature

[ ] I have opened a new issue for the proposal, or commented on an existing one, and ensured that the Bicep maintainers are good with the design of the feature being implemented
[ ] I have included "Fixes #{issue_number}" in the PR description, so GitHub can link to the issue and close it when the PR is merged
[ ] I have appropriate test coverage of my new feature

Contributing a snippet

[ ] I have a snippet that is either a single, generic resource or multi resource that uses parent-child syntax

[ ] I have checked that there is not an equivalent snippet already submitted

[ ] I have used camelCasing unless I have a justification to use another casing style

[ ] I have placeholders values that correspond to their property names (e.g. dnsPrefix: 'dnsPrefix'), unless it's a property that MUST be changed or parameterized in order to deploy. In that case, I use 'REQUIRED' e.g. keyData

[ ] I have my symbolic name as the first tab stop ($1) in the snippet. e.g. res-aks-cluster.bicep

[ ] I have a resource name property equal to "name"

[ ] If applicable, I have set the location property to location: /*${<id>:location}*/'location' (not resourceGroup().location) where <id> is a placeholder id, and added param location string to the test's main.bicep file so that the resulting main.combined.bicep file used in the tests compiles without errors

[ ] I have verified that the snippet deploys correctly when used in the context of an actual bicep file
e.g.
resource aksCluster 'Microsoft.ContainerService/managedClusters@2021-03-01' = {
  name: 'name'

Microsoft Reviewers: Open in CodeFlow

@microsoft-github-policy-service agree

@anthony-c-martin can you please review this small change?


Unit tests for init.go

Added unit tests for init.go along with the suite tests for the v1 package.

Also, I did not write a test for the Scaffold() function (here). It only makes calls to external functions, so wasn't sure if I should trace all of them and write test cases for each one.
If you want me to dig into it and write a test for Scaffold() as well, I'll do that. Let me know.

Everything is working perfect.
Running Suite: v1
=================
Random Seed:<PHONE_NUMBER>
Will run 16 of 16 specs

••••••••••••••••
Ran 16 of 16 Specs in 0.000 seconds
SUCCESS! -- 16 Passed | 0 Failed | 0 Pending | 0 Skipped
PASS

Ginkgo ran 1 suite in 1.138961774s
Test Suite Passed

/lgtm


Multithreading

Make any updates that are required to support running with multithreading enabled.

Fixed as at b7938735ba9b499a548cad26fb9ae11b66325fc7.


E2E: Generic schedule main default SLSA2

Repo: https://github.com/ianlewis/example-package/tree/main
Run: https://github.com/ianlewis/example-package/actions/runs/2482128711
Workflow name: Generic schedule main default SLSA2
Workflow file: https://github.com/ianlewis/example-package/tree/main/.github/workflows/e2e.generic.schedule.main.default.slsa2.yml
Trigger: schedule
Branch: main
Date: Sun Jun 12 03:31:53 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/2482169243
Workflow name: Generic schedule main default SLSA2
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.schedule.main.default.slsa2.yml
Trigger: schedule
Branch: main
Date: Sun Jun 12 03:49:32 UTC 2022
Tests are passing now. Closing this issue.


Filtering of members

Please let us filter listed members like hiding inherited members like MSDN website had.

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

ID: bb8f7ce9-5aa7-5d81-7e38-87895240399c
Version Independent ID: 868c1749-34cc-7de8-765b-411db7f1dd19
Content: ToolTaskExtension Class (Microsoft.Build.Tasks)
Content Source: xml/Microsoft.Build.Tasks/ToolTaskExtension.xml
Product: dotnet-api
GitHub Login: @dotnet-bot
Microsoft Alias: dotnetcontent

Thank you for your feedback, @nvmkpk! I'll forward this on.

I created MicrosoftDocs/feedback/issues/581, as it is a general Docs issue, and for proper routing.  Closing this issue.
cc: @dastaffo FYI


switch to gatsby-source-wordpress

switch from gatsby-source-wordpress-experimental to gatsby-source-wordpress

 switch to gatsby-source-wordpress


Exercise Technical Writing (Ziv)

I may have gone too far with this exercise and missed the main point...  I completed it up to the ‘Filtering rows: where’ section.  I would appreciate knowing if I am on the right track before proceeding further. Thanks, Ziv

@ZGYMS - Could you take a moment to sign the CLA?

@microsoft-github-policy-service agree [company="Microsoft"]

@microsoft-github-policy-service agree

@shsagir
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#please-close


Enable accessing memory wider than a byte at a time

Currently the emulator accesses memory one byte at a time. For examples it access memory four times to get 32-bit instruction.
It would be a good optimization to enable accessing memory wider than a byte at a time (in case where it is ensured that all the accessed bytes are in the same page and they all are not mapped to other devices).

Probably replacing Memory.data Vec<u8> with Vec<u64> would be good.


Do not initialize ReadOnlyMemory in model factory methods

ROM is a struct, so there is no point in doing the empty initialization. This would result in build errors if the parameter was not defined as nullable as the null coalescing operator can't be used with a struct.

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


mbedtls_mpi_gen_prime does return after mbedtls_mpi_swap

It seems the following piece of code eventually causes the calls to mbed_mpi_gen_prime to not return (at least not in a reasonable amount of time).
    mbedtls_rsa_context ctx;
    mbedtls_entropy_context entropy;
    mbedtls_ctr_drbg_context ctr_drbg;
    int w;

    mbedtls_ctr_drbg_init( &ctr_drbg );

    mbedtls_entropy_init( &entropy );
    mbedtls_ctr_drbg_seed( &ctr_drbg, mbedtls_entropy_func, &entropy,
                                (const unsigned char *) pers, strlen( pers ) );

    mbedtls_rsa_init( &ctx, 0, 0 );

    for( w = 0; w < 1000; w++ ) {
        mbedtls_mpi_gen_prime(&(ctx.P), 512, 0, mbedtls_ctr_drbg_random, &ctr_drbg);
        mbedtls_mpi_gen_prime(&(ctx.Q), 513, 0, mbedtls_ctr_drbg_random, &ctr_drbg);
        mbedtls_mpi_swap(&(ctx.P), &(ctx.Q));
    }

Also, if 513 is replaced by an even number say 512, then the code seems to work correctly.

ARM Internal Ref: IOTSSL-998


Follow up on CPTAC GBM data release

Seems this data has been released. Can we add this to the framework?

Fixed with #126 . Waiting to merge before close.


Ucb master

Hi @ayan-biswas . Additional fix for via shape calculation in MOSTechPlanarGeneric. I think the algorithm incorrectly used width instead of height.
This change should probably be done for finfet as well.

Can you please change the pull request to go to the more updated 'new_fix' branch instead of master? Also I think both your pull requests can be merged into one.


Replicability/determinicity

Currently unsure whether this should be pursued (so that doing the same operations with forced timestamps generates identical files every time). Issues:

[x] The order in which elements are written in a snapshot is determined by hashmap order, which is randomised each session. Easy to fix.
[ ] The order of parents in a merge commit is not fixed, nor is the order in which stuff gets merged when there are more than two heads. This is entirely due to how heads get selected in a partition; the merge machinery itself should be deterministic.
[x] The order of the changes in a commit is written depends on hashmap ordering
[x] Element identifiers are generated randomly. Does this require synchronising random number streams?

MutStateT::insert_initial(...) allows use of an external source of randomness. Related changes may occur (#49) but the change fixes part of this issue.