How to work with FileDescriptor?

FIrst of all, this framework is awesome! Apple should adopt the library as the official SDK (so they can also fixing the non type safe interface currently we are using).
I'm wondering what is the correct way to handle FileDescriptor.
The problem is, the current API only allows us to return a response, where the fd is not sent yet so we cannot close it immediately (or in defer). However, there is no way to know when the response is sent (or queued) so we cannot close the fd properly.
If we are dealing with xpc_fd_create directly, then it is quite easy as it calls dup internally. I think we also need to do similar things using XPCFileDescriptor (even for 12.0+). XPCFileDescriptor should dup the fd and close it after calling xpc_fd_create. User can still use FileDescriptor as long as they still want to hold the fd open in current process.

Further test suggests the fd is actually leaked somewhere, though I couldn't find where is wrong. I doubt this is some error of xpc but I got no proof yet.
As soon as the fd is sent though the xpc service the fd is leaked in both sides (service and client) that I have to terminate both sides to close the fd.

I can narrow the leak down to XPCEncoder
internal class MessageHandler {
        typealias RawHandler = ((XPCConnection, xpc_object_t) async throws -> xpc_object_t)
        let closure: RawHandler
        let requestType: Codable.Type
        let responseType: Codable.Type

        init<Request: Codable, Response: Codable>(closure: @escaping (XPCConnection, Request) async throws -> Response) {
            self.requestType = Request.self
            self.responseType = Response.self

            self.closure = { connection, event in
                guard let body = xpc_dictionary_get_value(event, MessageKeys.body) else {
                    throw Error.missingMessageBody
                }

                let request = try XPCDecoder().decode(type: Request.self, from: body)
                let response = try await closure(connection, request)
                // throw error here won't leak
                let encoded = try XPCEncoder().encode(response)
                // throw error here would leak
                return encoded
            }
        }
    }

Can you post a minimal project that reproduces the leak so I can try this myself? Thanks!

Here is an example. https://github.com/zhuhaow/leak-demo
Since it not easy to track the lifetime of fd, I use a pipe. The basic idea is if the write fd is closed, the read would get EOF. However, the read side won't get EOF unless we kill the server process to release all fd there.

There was a reference cycle. It wasn't just leaking a file descriptor, it was leaking the whole encoder 😬
Your branch should no longer leak if you rebase it against latest main.
I will look at the PR now.


fixed missing 's' in config example for bitbank csv

Oh the pitfalls of copy/paste :smile: ... I learned a lot about the import process via pdb (and learned about ipdb for colorized pdb) in the process though :sweat_smile:

No problemo! I'm learning a lot in the process, and happy to participate on a repo where maintainers are so quick to respond and helpful!


Update documentation for developers and users

Description
Update documentation in devtools, CONTRIBUTING, and README.
Todos
Notable points that this PR has either accomplished or will accomplish.

[x] Update devtools/README.md
[x] Update CONTRIBUTING.md
[x] Update README.md

Questions
Status

[x] Ready to go

Codecov Report

Merging #2 into master will not change coverage by %.
The diff coverage is n/a.

Hi @jmaat, this PR has several changes to documentation, with the main change being in CONTRIBUTING.md. Could you take a look?

This looks ready to merge.


looks nothing like the Logic App designer I get

[Enter feedback here]

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

ID: bc1a51f6-730a-6077-6f9d-90afeaceed20
Version Independent ID: 6d012a9a-5fbd-fd18-9656-c42e88bac5d0
Content: Connect to Azure Blob Storage from workflows - Azure Logic Apps
Content Source: articles/connectors/connectors-create-api-azureblobstorage.md
Service: logic-apps
GitHub Login: @ecfan
Microsoft Alias: estfan

Looks like this issue was closed by OP. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


[SPARK-9639][Streaming]Fix a potential NPE in Streaming JobScheduler

Because JobScheduler.stop(false) may set eventLoop to null when JobHandler is running, then it's possible that when post is called, eventLoop happens to null.
This PR fixed this bug and also set threads in jobExecutor to daemon.

Merged build triggered.

Merged build started.

Test build #39863 has started for   PR 7960 at commit b0864c4.

Test build #39863 has finished for   PR 7960 at commit b0864c4.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
 public static final class BinaryPrefixComparator extends PrefixComparator
 public static final class BinaryPrefixComparatorDesc extends PrefixComparator
case class SequenceNumberRanges(ranges: Seq[SequenceNumberRange])
     // class DataFrame

Merged build finished. Test PASSed.

LGTM. Thanks for catching and fixing this. Merging this to master and 1.5


[Bug]: When placed during rainning some transparent textures are broken

General Info

[X] I am running a modpack
[X] I can reproduce this issue consistently in single-player
[ ] I can reproduce this issue consistently in multi-player
[X] I have searched for this issue previously and it was either (1) not previously reported, or (2) previously fixed and I am having the same problem.
[ ] I am crashing and can provide my crash report(s)
[X] I am using the latest version of the mod

Forge version
43.3.7
Minecraft version
1.19.2
Mod version
RainShield-1.19-1.1.1
Java version
java 20.0.1
Issue Description
when placed the rain shield , many textures like flowers , water and other blocks look like have a mirrored layer that break the texture

as normal

during rainning

after placed rain shield

without rainning -> probably caused by particles effect

modpack used:
IronBerry Expert 0.8b where i have found and tested , idk if persist on previous
Additional Information
No response

This issue also occurs on the FTB Skies modpack (1.19.2). When the Rain Shield is actively blocking the rain, all backfaces of blocks are rendered. You can see this even better with blocks like Glass and Leaves. Going into spectator and clipping in to the ground will also show the issue more clearly.

Should be fixed with this commit https://github.com/Mrbysco/RainShield/commit/2d5337bf9a3fcb347fd37cb2279000051876c0c9 but I forgot to cause a new build to be uploaded

A version is being built and uploaded


NPE fix

fix npe https://github.com/kicksolutions/swagger2puml/issues/37

@msantosh1188 thank you. It seems I have no rights to merge PR..


[Do Not Merge] Invert Open and Close Icons on FilmstripViewer

The FilmstripViewer was showing the wrong icons when the filmstrip viewer was open and closed:
Incorrect:

Correct:

This is likely unnecessary as we're removing the open/close filmstrip functionality. Will close this as needed.


why does it only load the first camera params in "load_colmap_data"? There are numbers of cameras in raw colmap file "cameras.bin".

https://github.com/dunbar12138/DSNeRF/blob/33799570c4eccef51b7f1bb05c770a0b5ebeba89/llff/poses/pose_utils.py#L18

Got it. Thanks very much.


feat: cross-linking Gene Expression with Cell Guide

Cross linking GE with CG

#5236

Changes

modifying name of GeneInfoSideBar's style constant 'GeneUrl' to 'Link'
adding 'Link' into CellInfoSideBar

Testing steps

locally

Awesome work, @carolinechoi 🎉 !!
For UI changes, let's include at least a screenshot of the feature (or even a video for features with more complex test steps). This way it helps reviewers gain the context quickly and helps speed up the review too 😄

also the main has e2e tests fixed, so updating your branch should fix it 👌


chore(installation): add summary frontmatter

Summary didn't look good on https://deploy-preview-37--pytorch-ignite.netlify.app/how-to-guides/

Hugo summary can be from summary frontmatter or the content before <!--more-->.

Thanks Jeff !

@Priyansi please, make sure to do that in future PR.


Code spans in table heading not supported

Surrounding a table heading in back ticks results in a non-fatal error message, and an empty table heading.
e.g.,
The table heading:
| ``foo`` | bar
Produces the error:
*** lost markup <spanx style="verb">foo</spanx> in table heading
And renders equivalently to:
| | bar

Right, that was a limitation of RFCXMLv2.  We can fix that by outputting tables in RFCXMLv3.


Add spark.ml Tree perf tests

Adds performance tests for Random Forests and GBDTS implemented in ML pipelines API.

Adds a coproduct type to support polymorphism in "decision-tree" tests
The perf-tests utilize the DataFrame API since the underlying models in ML are private. This makes performance dependent on Spark SQL

@mengxr @jkbradley

I'll take a look now

Just import reorg.  I can merge it now, or after fixes, as you prefer.  Thanks!

Optimized imports

Now that the imports are optimal, I'll merge.  : )  Thanks!


ReceiveRecover and IEvent

First of all, I want to say that this is an awesome example that I have seen in the area of CQRS with AKKA.NET.
In lines 64 to 67 in the ReceiveRecover method, I see that ReceiveRecover can get an event other than the SnapshotOffer and it will update the state. I don't see a case that can happen other than it receives an event like RecoveryCompleted which should not update the state.
Could you please clarify when it is necessary to update the state in a ReceiveRecover method?

IEvent is custom marker interface defined for purpose of the project here. Each domain event used in this sample implements it. This sets a barrier on programmer preventing from accidentally trying to update the state of an aggregate from objects other than domain events.


feat: support disableWarning option for experimental

🔗 Linked issue
#2530
❓ Type of change

[X] 📖 Documentation (updates to the documentation or readme)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[X] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

Support disableWarnings option for disable warning messages from experimental features. Resolve #2530
📝 Checklist

[X] I have linked an issue or discussion.
[X] I have updated the documentation accordingly.

I completely remove it. You can check it.


feat: track and cache context of each compiler invocation

ref https://github.com/foundry-rs/foundry/issues/7379
ref https://github.com/foundry-rs/foundry/issues/4981
ref https://github.com/foundry-rs/foundry/issues/2704
The way Solidity assigns source_ids is simply by order in which sources are passed in compiler input. Thus, if we have two sources A.sol and B.sol, then on the first (non-cached) compiler run, A.sol will get assigned ID 1 and B.sol will have ID 2.
Then, if we change B.sol slightly and recompile, it will be the only source in the input, so it will have ID 1.
The same ID collisions are more often appearing on multi-version and multi-compiler builds. After many cached runs such discrepancies result in debugger basically displaying random sources.
This PR adds a way to link an artifact to the build info for input that produced it, thus allowing us to track correct source_id -> source mapping for cached artifacts.
I've added BuildContext which is the foundry context we are tracking for each compiler invocation. It is getting inlined into BuildInfo, and read along with cached artifacts. BuildContexts are indexed by the same IDs BuildInfos are, and each ArtifactId now has a reference to build_id which produced it.
Build info now produced on every compiler run, however, it does not include complete input and output unless project.build_info is true, to avoid overhead while keeping our internal logic working correctly.

error[rejected]: failed to satisfy license requirements
┌─ icu_locid 1.5.0 (registry+https://github.com/rust-lang/crates.io-index):4:12
│
4 │ license = "Unicode-3.0"

we can add "Unicode-3.0" to allowed in deny.toml


Microsoft Edge does not like the W3CWebSocket wrapper

Scenario:
A web application that uses browserify and a 3rd party JS library that uses WebSocket-Node to run in both browser and Node. So, when doing the browserify stuff, lib/browser.js is taken (which is just a wrapper of the native WebSocket in the browser).
However, Microsoft Edge 11 does not like it and fails ("invalid syntax"). It seems that this here does not point to window but to something strange (see the image):

I don't have an Edge browser so it will take some time before I can put my hands into this. In the meanwhile may be someone can help.

I tried to reproduce this today using Microsoft Edge 44.17763.1.0,Microsoft EdgeHTML 18.17763, but I was unable to. It seemed to work fine.
Perhaps this works on newer versions of Edge? I don't have an easy way of testing on older versions.

If Microsoft Edge 44.17763.1.0 uses Chromium, then there should be zero issues.

It does not; the Chromium version hasn't been released yet. They have dev and canary builds available that use Chromium, but it's not stable yet.

I am seeing this same issue - but in Chrome.  this is simply undefined:


Enable setting the "Max expansion depth" for a model

I would like to get

instead of

which is the default behavior
How can I do ?
Thx

Do you mean clicking on the litter triangles? It isn't clear what you would like to have, would you be able to add more context?

Thx for the last reply.
I would like to get a view with all the items collapsed by default (like if you clic on all the small triangles yes).
By default all the items are expanded

thx for the reply too ... so no direct solution ?

Not at the moment, I think there is some handling built in for setting the default visible depth, but it will have to be reviewed before publicly documented.

Great !
Thank you

Actually I just saw that maybe we have something undocumented, would you be willing to try out to see if adding the attribute schema-expand-level="1" solves this for you?

So simple :)
Yes, it's working well.
Thx !!


Create Minimum Elements to Add to Form a Given Sum

How is this at all relevant to the project? First off, none of the code is in Python, second off, this code is irrelevant?

With no reply, marked as spam. Reply with reasoning for the label to be removed.

My apologies I made a mistake while making the Pull Request.


Make TemplateName an interface

Fixes #140

@rultor merge

@rultor merge

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

@rultor merge

@suseika Done! FYI, the full log is here (took me 8min)


Enhancement

Can you update the readme to give contributors more knowledge about the project.

Sure, Will do that ASAP.


Fix scheduler runtime

Requires setting up graph repositories: iow and iowprov in your SPARQL endpoint

Looks great, ty for this Ben!!

Hmm actually not able to spin this up locally anymore. Getting a bind error, perhaps similar to the one you had previously? Do you remember how you fixed that? Tried deleting all volumes/containers, still persists.
(Seems to be coming from e2edagster_docker_example_webserver but there is nothing else in the docker service logs e2edagster_docker_example_webserver output and confused since like before /home isn't anywhere.
0/1: preparing [=================================>                 ]
overall progress: 0 out of 1 tasks
1/1: invalid mount config for type "bind": bind source path does not exist: /ho…

If this branch works for you, you are good to merge,and then I can clean up / add once I figure out this mount issue. Maybe I could auto add the following so we don't need to manually apply the "migration" every time the graph is spun up. (Assuming I am understanding you right)

Requires setting up graph repositories: iow and iowprov in your SPARQL endpoint

If this branch works for you, you are good to merge,and then I can clean up / add once I figure out this mount issue. Maybe I could auto add the following so we don't need to manually apply the "migration" every time the graph is spun up. (Assuming I am understanding you right)

That would be great


[BUG] azureServiceTokenProvider not working on macOs when the region is set to china

Describe the bug
build keyvaultclient with azureServiceTokenProvider will thow error when you set your region to china in macOs
Expected behavior
var azureServiceTokenProvider = new AzureServiceTokenProvider();
            var keyVaultClient = new KeyVaultClient(
                           new KeyVaultClient.AuthenticationCallback(
                               azureServiceTokenProvider.KeyVaultTokenCallback));
            ConfigurationBuilder newBuilder = new ConfigurationBuilder();
            newBuilder.AddAzureKeyVault(keyVaultUrl, keyVaultClient, new DefaultKeyVaultSecretManager());
            var root = newBuilder.Build();

this code get run successfully
Actual behavior (include Exception or Stack Trace)
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried to get token using Azure CLI. Access token could not be acquired. Fatal Python error: config_get_locale_encoding: failed to get the locale encoding: nl_langinfo(CODESET) failed
Python runtime state: preinitialized

   at Microsoft.Azure.Services.AppAuthentication.AzureServiceTokenProvider.GetAuthResultAsyncImpl(String resource, String authority, CancellationToken cancellationToken)
   at Microsoft.Azure.Services.AppAuthentication.AzureServiceTokenProvider.<get_KeyVaultTokenCallback>b__8_0(String authority, String resource, String scope)
   at Microsoft.Azure.KeyVault.KeyVaultCredential.PostAuthenticate(HttpResponseMessage response)
   at Microsoft.Azure.KeyVault.KeyVaultCredential.ProcessHttpRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.Azure.KeyVault.KeyVaultClient.GetSecretsWithHttpMessagesAsync(String vaultBaseUrl, Nullable`1 maxresults, Dictionary`2 customHeaders, CancellationToken cancellationToken)
   at Microsoft.Azure.KeyVault.KeyVaultClientExtensions.GetSecretsAsync(IKeyVaultClient operations, String vaultBaseUrl, Nullable`1 maxresults, CancellationToken cancellationToken)
   at Microsoft.Extensions.Configuration.AzureKeyVault.AzureKeyVaultConfigurationProvider.LoadAsync()
   at Microsoft.Extensions.Configuration.AzureKeyVault.AzureKeyVaultConfigurationProvider.Load()
   at Microsoft.Extensions.Configuration.ConfigurationRoot..ctor(IList`1 providers)
   at Microsoft.Extensions.Configuration.ConfigurationBuilder.Build()

To Reproduce
Set macOs region to china ,after i set the region to United states everything works fine
Environment:
Microsoft.Azure.KeyVault  3.0.4
Runtime Environment:
OS Name:     Mac OS X
OS Version:  10.14
OS Platform: Darwin
RID:         osx.10.14-x64
.netCore 3.0
Visual Studio Enterprise 2019 for Mac
Version 8.4.4 (build 91)

//fyi @heaths

The azure CLI is failing to load:
Fatal Python error: config_get_locale_encoding: failed to get the locale encoding: nl_langinfo(CODESET) failed

@iscai-msft or @chlowell any thoughts to fix this?
@a4r5twer do you get a similar issue when you use the azure CLI (e.g. az keyvault key list (args)) with your region set to China?

az keyvault key list
@heaths

hi heaths after setting my location to china i can get the keyvault list
and i can download it to local by az keyvault secret download --file command as a txt

How exactly are you setting your locale to China? If setting LANG to something like LANG=zh-CN could you try LANG=zh-CN.UTF-8?

Also, try az login (run az logout first if you're already logged in). It's possible that enumerating keys in Key Vault doesn't run through the same code path.

Closing with no customer response. If you still require help, please provide the information requested and we can reopen the bug for further troubleshooting.


Mirror servers don't work anymore

Chimu and kitsu no longer exist

oof, do you have any replacements?

I downloaded your code and modified with other APIs osu.direct and nerinyan. I tried a few others but didn't work. These two did the job


New console has a few shortcomings

It seems history is not saved in the new console
"links" to julia file when using @which are no longer clickable, this was a pretty useful feature

It seems history is not saved in the new console

It is for me. Can you check Base.REPL.find_hist_file() in Juno and in a plain REPL?

"links" to julia file when using @which are no longer clickable, this was a pretty useful feature

Yeah, that's unfortunate. You can usually click on links, but IIRC they need to start with ./ or similar (like in error messages). For that specific thing you can also just call @edit sin(2) or similar which will take you straight to the right file.

A restart of the julia session does not seem to load .juliarc

It does for me ;)

To me it would make sense to reload .juliarc e.g. when changing git branches (and .juliarc containing include code)

That seems like a bad idea to me. You can just manually kill Julia when doing that if you really need to.

Some of these are probably due to our cycler booting a process before you ask for it (and therefore before the changes you made to history or .juliarc).

Some of these are probably due to our cycler booting a process before you ask for it (and therefore before the changes you made to history or .juliarc).

Yes, this is what is happening. If I restart Atom, the "recent" history is there.

If you don't mind waiting longer for new processes you could just switch to the Basic boot mode, which should alleviate those issues.

I've reverted back to the legacy console. There are other issues with the regular REPL I have noticed:

you can't click to move the cursor, this was useful when entering multiple lines at a time
you can't collapse or expand results
types that don't have a dedicated print method still printed nicely in the old command, as it just showed a list of fields, which you could expand or collapse (in the REPL, all the field contents are printed inline, which is much less useful)
issues with font printing with some Unicode characters, where the character width is not computed properly, making some characters overlap or the cursor be in the wrong place
no more autocomplete suggestions
I have added those to the original issue.

What were the shortcomings of the original console? I feel like using a regular Julia REPL will be very limiting...

Are these features going to be reimplemented? Other than 1. and 6., which are obviously bugs.
I guess we can't use the Legacy Console forever, can we?


Windows form tree view

When I use FlaUI testing for an windows form tool, it has a tree view control, and now I need select tree node 1 by 1 so could you please create a method to select all nodes in the future?

What kind of tree view are you using? The default tree view only supports single selections as far as I know.


fix(sandbox): Prevent hanging child processes

Rename SandboxCoordinator -> SandboxPool
Make sure newly created sandboxes are also disposed if the SandboxPool is already disposed

fixes #396

BTW this also fixes our flaky integration tests

Epic! You figured out the issue 🥇


[Rating] add isActive prop to IconContainerComponent

Fixes https://github.com/mui/material-ui/issues/35563
This PR adds isActive prop that can be extracted via IconContainerComponent. This prop tells wether a specific rating item is currently active.

[x] I have followed (at least) the PR section of the contributing guide.

hey @siriwatknp , maybe you missed this PR

@ZeeshanTamboli sorry to tag you, but I think @siriwatknp is busy. Could you maybe be the reviewer instead? I just don't want this PR to go unnoticed

Added:

new example on documentation page for using isFilled Prop on Component supplied to IconContainerComponent
new test to make sure that isFilled prop is sent to the Component Prop

@nicolas-ot Thanks for you work. But now that I think of it, we should not support such a feature without a proper real world use-case. See https://github.com/mui/material-ui/issues/35563#issuecomment-1552604929.
I would also suggest working on more pressing issues regarding the Rating component - https://github.com/mui/material-ui/issues?q=is%3Aopen+is%3Aissue+label%3A"component%3A+rating"+sort%3Areactions-%2B1-desc

@nicolas-ot Thanks for you work. But now that I think of it, we should not support such a feature without a proper real world use-case. See #35563 (comment). I would also suggest working on more pressing issues regarding the Rating component - https://github.com/mui/material-ui/issues?q=is%3Aopen+is%3Aissue+label%3A"component%3A+rating"+sort%3Areactions-%2B1-desc

@ZeeshanTamboli I think the answer to your question would be the same as the answer to the question what is the proper real world use-case of IconContainerComponent prop. I would guess it's to give the user more flexibility on controlling the rating icons (e.g. a different whacky meme for each item).
In this example MUI Docs, you can see that as an alternative to isFilled prop, a styling is used to make the color gray. I would suggest here that isFilled serve as an alternative, so that user can controll the component directly without needing to change the style manually.
const StyledRating = styled(Rating)(({ theme }) => ({
  '& .MuiRating-iconEmpty .MuiSvgIcon-root': {
    color: theme.palette.action.disabled,
  },
}));

Your point is valid. The isFilled prop would be useful to provide a custom component for the rating item based on the filled state, plus the custom component can have custom styles, while the classes can only be used to override the styles. However, IMO, I still think we should wait for a proper real world use case. Otherwise, we are adding features nobody is using and thus compromising the increase of bundle size (even though it would be very minimal). Let's wait for the reporter's reply.


Activate rpc-state-istanbul CI Job

What is wrong?
While adding Python 3.8 support in #1679 I noticed that we do not run rpc state tests against istanbul. I wanted to fix that right away in that PR but it looks like the tests do not pass :sob: which is why I'm creating this issue instead.
How can it be fixed

Activate py37-rpc-state-istanbul in the .circleci/config.yaml
Work through the failures

This was done by #1749


Implement Error Handling for Kubernetes Version Mismatch in ZenML

Open Source Contributors Welcomed!
Please comment below if you would like to work on this issue!
Contact Details [Optional]
<EMAIL_ADDRESS>What happened?
Users are encountering an error when the version of the ZenML Kubernetes orchestrator does not match the version of their actual Kubernetes deployment. The error message is not explicit about the cause of the issue, leading to confusion. An example of the error message is:
AttributeError: module 'kubernetes.client' has no attribute 'V1CronJob'

This error can be resolved by updating the ZenML Kubernetes integration (zenml integration install kubernetes -y), but the current error message does not guide users towards this solution.
Task Description
Implement a clear and informative error handling mechanism in ZenML to catch and adequately report Kubernetes version mismatches. The goal is to provide users with a specific error message that suggests updating the Kubernetes integration in ZenML when a version mismatch is detected.
Expected Outcome

ZenML should catch Kubernetes version mismatches and display an explicit error message to the user.
The error message should suggest a potential solution, such as updating the Kubernetes integration with ZenML.
This enhancement will aid users in quickly diagnosing and resolving version mismatch issues.

Steps to Implement

Analyze the current error handling mechanism for the Kubernetes orchestrator in ZenML.
Implement specific error handling that detects version mismatches between ZenML's Kubernetes orchestrator and the user's Kubernetes deployment.
Develop a clear and user-friendly error message that includes guidance on resolving the issue (e.g., updating the Kubernetes integration).
Test the implementation to ensure that version mismatches are correctly caught and reported.
Update documentation to include information about this error handling and steps to resolve version mismatches.

Additional Context
Improving error handling for version mismatches is critical for a smooth user experience, especially for those deploying pipelines in Kubernetes environments. This update will help users to quickly identify and address compatibility issues.
Code of Conduct

[ ] I agree to follow this project's Code of Conduct

Hi @strickvl, Can I pick this up and work on it?

Yes @Dev-Khant sounds good. Let us know if there's anything that's unclear along the way, and please make sure to follow our contribution guidelines, esp basing your branch/PR on the develop branch and not the default main branch. Thanks!

Hi @strickvl, I'm busy with work but I'll raise a PR when I get time. In the meantime, if someone asks you can assign this to them. Sorry for any inconvenience

Hey can i get started on this ?

Hi @strickvl I wanted to try and reproduce this error, does this error occur when the zenml k8s orchestrator is running?


[FEATURE] Support to limit the spark engine max running time

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Search before asking

[X] I have searched in the issues and found no similar issues.

Describe the feature
For some use case, we might need restart the spark engine periodically.
For example, to load the latest udf and jars.
So we need support to limit the spark engine max running time.

if the spark engine has run for the specified time, it can deregister itself from engine discovery space(such as zookeeper) so that it will not receive new request
wait the current connection close, then terminate the engine life

Note that, this feature is not suite for flink engine, not sure whether it is suite for trino engine.
We will implement it for spark in this PR.
Motivation
Restart the engine to load the latest udf and jars.
Describe the solution
No response
Additional context
No response
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

cc @lightning-L

Ok, I will take on this task


Conversation UI fails to load at first launch

Github issues should be used for bugs and feature requests. Use Stack Overflow for general "how-to" questions.
Version
4.4.1
Describe the bug
I installed the Bot Framework Emulator (Windows Setup) on two different machines. On both machines I was not able to bring up the conversational view to talk to my bot. The initial screen shows up where it asks for an endpoint url. When I type in my bot's endpoint url and click 'connect' nothing happens. If I create a .bot file and then try to load it, the application's screen is blank.
After I close the emulator and open it again the problem goes away and everything works as expected. This has happened on two different work machines so I don't think it's anything with my box.
To Reproduce
Steps to reproduce the behavior:

Install emulator
Run emulator
Add bot endpoint and click connect
Nothing happens

Expected behavior
The bot conversation view shows up
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.
[bug]

@smacdo - Did these machines previously have the Emulator installed on them?

No they did not.

I am able to repro this as described. It appears the Emulator is attempting to read the server.json when first launched but this file is written for the first time on exit. A fix is forthcoming.

This was fixed by #1577


feat: add a typescript project to validate configuration using moduleResolution=bundler

WIP
Notes
This reproduces the issue mentioned in https://github.com/process-analytics/bpmn-visualization-examples/issues/390#issuecomment-1743573656.
$ npm run build
> build
> tsc
src/index.ts:1:35 - error TS7016: Could not find a declaration file for module 'bpmn-visualization'.
'projects/typescript-config-validation/node_modules/bpmn-visualization/dist/bpmn-visualization.esm.js'
implicitly has an 'any' type.
There are types at 'projects/typescript-config-validation/node_modules/bpmn-visualization/dist/bpmn-visualization.d.ts',
but this result could not be resolved when respecting package.json "exports".
The 'bpmn-visualization' library may need to update its package.json or typings.

1 import { BpmnVisualization } from 'bpmn-visualization';
                                    ~~~~~~~~~~~~~~~~~~~~

Found 1 error in src/index.ts:1

Closing, this reproduction project is going to be directly integrated in bpmn-visualization with https://github.com/process-analytics/bpmn-visualization-js/pull/2972.
This will give faster feedback.


Write an RFC for monorepo support

After the discussion in #192, it seems like we're ready for an RFC for monorepo adoption. This will focus on the specific implementation, how to best transition, and what specific configuration and automation changes we will need to make.

@zackkrida shall we close the discussion issue in favor of this one?

This is so exciting! I'm glad that it almost works!

I could not figure out how to get the setup-node-env action working with a subdirectory of the repo. This is a big blocker; as far as I can tell it would require changes to the action. It's possible I'm missing something or getting something incorrect. I would love to be proven wrong!

I think, at least for setup-node-env, that it would indeed run at the root of the repository, and that would have to be part of our monorepo approach. If pipenv started supporting true monorepos then we'd manage the monorepo configuration at the root of the repo as well.
One of the advantages of running node at the root of our repo for everything would be that our automations would also be just another package.
However, this pre-supposes that we do the work to create a true pnpm managed monorepo where the nuxt app is just a package in the monorepo.
If pipenv started support monorepos, as I said, it would also be at the root and each of our python projects would just be packages inside the monorepo.
I think if we treat the nuxt project as a package with a pnpm node monorepo project at the root then we wouldn't have the same scoping issues.
What do you think?

@sarayourfriend that's a good point I overlooked, that we could treat it like a more conventional monorepo that bundles multiple JS or python packages into one repo. I admittedly didn't even consider it because it seems to really muddy the barriers between all our codebases. That said, it's definitely doable. I'll experiment with it a bit in fauxpenverse today!

Was this an attempt to unify all the four repositories into one (frontend, API, catalog, browser extension) or the frontend with the browser extension?

@krysal essentially it was moving the openverse-frontend repo into the openverse repo.

One thing to consider - many of our CI/CD actions for the API & catalog run just commands. just can be run in a subdirectory, so it seems like we could use run commands with working-directory to manage those cases. Is it just the node setup that was causing trouble with your testing, or were there other actions that made it difficult too?

@AetherUnbound any of our commands using run steps and executing shell scripts can be scoped to the proper directories easily. The only issue is with 3rd party actions that interact with files, expect them to be in the repo root, and don't expose any configuration.

Got it. I know that the docker steps also allow the context/dockerfile to be specified. Would it be a great effort to identify exactly which 3rd party actions are causing us trouble and draw up a plan for tackling them?

@zackkrida What are the next steps here? Are we putting this on the back-burner for now?

In case it's not obvious, this was deprioritized as I didn't have the bandwidth to work on it. @dhruvkb has recently expressed renewed interest.


UI Audit: Documentation Generator/HTML Template

Reason/Context
In order to understand what is working and what is not working as far as the UI of the documentation template, auditing all of the current design patterns and visual styles might help us to define the problems that are present in the current UI and help us to define a new design system.
The findings of this audit will help us to start working on the smaller components of 1 of 3 design systems needed for the initiative. This design system will be for Documentation Generator until we decide on a better name for this design system as well as its parent system and sisters.
How will this audit be carried out?
The audit will be completed in figma by re-creating the components from the UI and sorting the components based on usage. From there, we should be able to define inconsistencies as well as noting any design patterns that exist currently.
Here is the working Figma file to follow along --> https://www.figma.com/file/S4TVyXHCYblq8SykRhKhAz/AsyncAPI-Documentation-UI-Audit?node-id=2%3A2

UI/UX Audit
Below is an audit of problems that I noticed in the current UI of the AsyncAPI visual documentation components. I encourage you to share your thoughts on the report below or something else that you noticed in the UI that can be improved.
View this report on my notion -->
View Figma file of audited UI -->
Goals for this audit

View all of the existing UI at a glance
Identify problems/inconsistencies with the UI based on audit
Use problems to leverage solutions to create brand new UI
Use this audit to define some UX inconsistencies/potential problems as well

Problems identified
Problem # 1
Typography doesn’t match between markdown (in Info Object) and various typography within the AsyncAPI documentation

Problem # 2
Outputted sidebar component contrast ratio is not AAA compliant

A11y Compliance test done in Figma

Problem # 3
Notice how dropdown button arrows are not centered to the text (could also be an illusion because the text is normal case)

Right arrow appears to be situated just above the center line of the text

Problem # 4
There seems to be no clear color palette, which might make it hard for users to apply their own brand colors to the generated docs

Problem # 5
This tag has two different types of spacing, which I don’t believe was intentional

**Tag version 1:** More top and bottom padding

**Tag version 2:** Less top and bottom padding, more left and right padding

Problem # 6
Tags look more like buttons, and there is no clear distinction between a clickable tag and a non-clickable tag

You can’t tell which ones are buttons and which ones are tags

Problem # 7
General inconsistencies with tag formatting, such as padding, type size, type weight, text transform, border colors, etc. No unified tag language.

Screenshot of all audited tags in the existing UI

Problem # 8
PUB/SUB labels type styles and size/spacing are inconsistent

Screenshot of audited PUB/SUB operation labels that exist in the current UI

Problem # 9
[More of a question rather than a stated problem]: Does this operation information need to be expandable/collapsible?

Example of expandable/collapsible UI, Screenshot from the actual UI in the application

Problem # 10
[UX Note]: Is the Schemas section of the documentation UI necessary? While necessary in the spec, is it useful for the EDA consumer to see in the documentation or is it useful enough to see the message schema within the Message itself?

Screenshot from the HTML template showing the Schemas section in the documentation

Problem # 11
The inline code bock doesn’t show with expected formatting

Screenshot of output when entering back ticks in markdown

@mcturco Awesome audit.  I agree with you with all points.

[More of a question rather than a stated problem]: Does this operation information need to be expandable/collapsible?

You can have several Operation specific information for several bindings/protocols so you can end up with a very complex scheme of values that need to be scrolled, that's what the collapse button is for, but we can think about how to solve it better in the new design. Maybe through tabs? Each separate tab is a protocol, what do you think?

[UX Note]: Is the Schemas section of the documentation UI necessary? While necessary in the spec, is it useful for the EDA consumer to see in the documentation or is it useful enough to see the message schema within the Message itself?

It represents all schemas that you use in your spec, but I agree with you that we if we show them in messages, then we can skip that section. We should remember about it.

@mcturco Awesome audit.  I agree with you with all points.

Thank you! 😄 I'm sure this is something that you and I will be working on together once we get far enough in the design

You can have several Operation specific information for several bindings/protocols so you can end up with a very complex scheme of values that need to be scrolled, that's what the collapse button is for, but we can think about how to solve it better in the new design. Maybe through tabs? Each separate tab is a protocol, what do you think?

Gotcha, I will definitely consider this when designing the component for that. It might just have to end up being an expandable/collapsable UI component in the end, but I will see what we can do to make it better 😄

It represents all schemas that you use in your spec, but I agree with you that we if we show them in messages, then we can skip that section. We should remember about it.

Cool! Glad you agree, this is something that Fran mentioned once before as well.


Switch to Accelerate for blurring

Core Image crashes were still showing up in our stack traces
even after many speculative fixes. Lets see if accelerate does
better.

@garrettmoon This looks great overall!  Very excited to test and profile!


feat: Add vale github action

I'm not sure I agree with all these rules but I picked the Vale project's .vale.ini config to start.
Quickstart for reviewing this PR and experimenting with other styles:
# install vale (MacOS)
brew install vale

# modify .vale.ini
$EDITOR .vale.ini

# download new styles and rules based on modification
vale sync

More information is available in their documentation online.


[mobile] Number input triggers not registering touch events

🐛 Bug report
The NumberInput component triggers only register mouse events, and doesn't work on mobile.
💥 Steps to reproduce

Go to number-input documentation
Open responsive mode in devtools, and enable a touch based device (mobile or Desktop(touch)) (see device toolbar on
the top of the screenshot below)
Try to click on increment and decrement triggers
The value doesn't increase nor decrease

💻 Link to reproduction
Reproduction is possible right from the documentation.
🧐 Expected behavior
The expected behavior is for the triggers to register touch events as well as mouse events.
🧭 Possible Solution
In the decrementTriggerProps and incrementTriggerProps , respectively here and here, (the code is the same):
      onPointerDown(event) {
        if (isIncrementDisabled || !isLeftClick(event)) return
-       if (event.pointerType === "mouse") {
+       if (["mouse", "touch"].includes(event.pointerType)) {
          send({ type: "TRIGGER.PRESS_DOWN", hint: "increment" })
          return event.preventDefault()
        }
        if (isHTMLElement(event.target)) {
          event.target?.focus()
        }
      },

🌍 System information

Software
Version(s)

Zag Version
0.27.1

Browser
Chrome 119.0.6045.105 (Official Build) (arm64)

Operating System
macOS Ventura 13.6

📝 Additional information
The behaviour works as expected in the Firefox devtools because the touch implementation sends both the mouse event and the touch event.
Sorry if I missed some part of the documentation that explained how to support touch events, some workaround, or the reason for not supporting them.
Thanks a lot 🙏

Good catch @etnbrd,
I just pushed a fix for this. We'll release an update shortly.
If the issue persists after upgrading, I'll re-open it.


Deploy master mhc mdb

For the bare metal environment, we want to deploy by default MHC and MDB resources for master nodes.

/cherrypick release-4.2


require continual-local-storage

Some fitting use 'async' which breaks 'cls' if being used.  Requiring 'cls' before 'async' preserves the chain.

Coverage increased (+0.007%) to 95.755% when pulling 23bf36d5be30dfd91630fbc86ee32e531aa261c1 on Dan70402:require-cls into a944eb97059da3f8fc26c614cbc39f8a9633b40f on theganyo:master.


Style candles/bars individually using logic conditions

Hello Louis,
Thank you for your amazing work here - it's awesome!
Is there a way to style bars individually using logic conditions, overriding the overall general candle_style settings?  The end result would look like:
https://tradingview.github.io/lightweight-charts/tutorials/customization/data-points
For example, I want to style a "3 up" engulfing candle (h>h1 & l<l1 & o<c, where h is today's high and h1 is yesterday's high, etc) in a certain way.  The "3 up" would be have specific up/down color, up/down border, and up/down wick properties to distinguish it visually from the other 7 candle pattern styles I would implement.
I did this successfully using mplfinance already:
https://github.com/matplotlib/mplfinance/blob/master/examples/marketcolor_overrides.ipynb (for reference)
But your library is noticeably faster and superior in multiples ways, so I'm hoping there is a way to do this.
Many thanks!

#thestrat?

Hey @matthewjarman,
Thank you!
I took a look at that example you linked and it seems all the code does it add a 'color' column to the dataset.
I added a color column to a normal ohlcv.csv with df['color'] = 'orange' and that will give you an entirely orange candle series( you can also add borderColor, wickColor as columns to style those too).
In order to style individual ones, you'll need to fill your candle data with the normal up/down colors, and then add in your specific colouring. For example:
import pandas as pd
from lightweight_charts import Chart

df = pd.read_csv('ohlcv.csv')

if __name__ == '__main__':
    chart = Chart()

    for column in ('color', 'wickColor', 'borderColor'):
        df[column] = 'red'
        df.loc[df['close'] > df['open'], column] = 'green'
        df.loc[df.index[-10]:df.index[-1], column] = 'orange'

    chart.set(df)
    chart.show(block=True)

I had no idea this was a feature in Lightweight Charts; thanks for pointing it out.
Louis

Hi Louis,
Thank you for quick reply!  I appreciate it!
When I try the code snippet above, it appears only the body color ('color )is being recognized/processed, and not the wickColor or borderColor.
I also encoded a price DataFrame using a separate method with exactly the colors combos I want, and noticed the same thing when the chart was rendered.
In the pic below, I took your code snippet and then changed the body colors to make this issue easier to see - the chart is of AAPL though 8/9.  Orange is now yellow and green is now purple.  This makes seeing the green wicks and green borders for up days & red wicks and red borders for down days easier to see.  By observation, looks like up days are close > open, and down days the opposite.
Any ideas on why this happens?  It's pretty cool that this is so close to working!

Does that occur when using one of the ohlcv.csv's from the examples? Its working on my end (version 1.0.15).

Figured it out by comparing the ohlcv.csv columns to my df columns and doing some tinkering.  For the individual coloring to work, the df cannot have the date as the index.  Once the index is reset, the 'date' column must be named 'date' and not 'Date'.  I had my df setup correctly otherwise.
It works perfectly now.  Very cool.
Many thanks!

@matthewjarman Can we even color the volume candles?

@nipunshrivastava you can, but you need to create a subchart to do it.  I have not figured out a way to manipulate the volume colors when the volume is plotted in the main chart window.  If interested you can create a colored volume subchart with the following steps:
(1) Transform the volume data: take the single "array" of volume values and convert them into an OHLC DataFrame (now a histogram) where open = 0, low = 0, high = volume[x], close = volume[x], where x is the current position in the index.
(2) Add colors as desired: you can add any or all of these three columns to the DataFrame - 'color', 'wickColor', 'borderColor'.  Loop through the DataFrame and assign colors like 'red' (etc) or RGB or RGBA values to whichever of these columns you want to add.
Here's what I did to create the subchart according to my visual preferences - I called it chart2 since it's below the main chart window (chart1).
# Create chart #2: volume
chart2 = chart.create_subchart(width=1, height=0.5/num_sub_charts, sync=True)
chart2.precision(0)
chart2.legend(visible=True, font_family='Trebuchet MS', ohlc=False, percent=False)
chart2.price_line(line_visible=False)
chart2.price_scale(text_color='grey')
chart2.time_scale(time_visible=False, visible=False)
chart2.grid(vert_enabled=False, horz_enabled=False)
chart2.run_script(f'{chart2.id}.series.applyOptions({{priceFormat: {{type: "volume"}}}})')
volume = test.xform_vol_ohlc_df(ticker)
chart2.set(volume)

Here's the code for xform_vol_ohlc_df().  It performs steps (1) and (2) from above.  It written to be easy to understand and not optimized for speed.  As FYI, the color scheme is for the Strat candle patterns (by Rob Smith), which is how I look at candle patterns on charts.  It's a personal preference, so color the volume bars according to whatever scheme you desire.
def xform_vol_ohlc_df(self, ticker_param):
    """
    'create_vol_ohlc_df' creates a ohlc DataFrame for volume
    """
    try:
        data = self.load_price_data(ticker_param.upper())
        opens = np.zeros(shape=data.shape[0], dtype=float)
        highs = np.zeros(shape=data.shape[0], dtype=float)
        lows = np.zeros(shape=data.shape[0], dtype=float)
        closes = np.zeros(shape=data.shape[0], dtype=float)

        for i in range(1, data.shape[0]):
            highs[i] = data.at[data.index[i], 'Volume']
            closes[i] = data.at[data.index[i], 'Volume']

        tmp_df = pd.DataFrame()
        tmp_df['date'] = data.index
        tmp_df['open'] = opens
        tmp_df['high'] = highs
        tmp_df['low'] = lows
        tmp_df['close'] = closes

        bodyColor = np.empty(shape=data.shape[0], dtype=np.chararray)
        bodyColor.fill('red')
        wickColor = np.empty(shape=data.shape[0], dtype=np.chararray)
        wickColor.fill('red')
        borderColor = np.empty(shape=data.shape[0], dtype=np.chararray)
        borderColor.fill('red')

        for i in range(1, tmp_df.shape[0]):
            cur_date = data.index[i]
            o = data.at[data.index[i], 'Adj_Open']
            h = data.at[data.index[i], 'Adj_High']
            l = data.at[data.index[i], 'Adj_Low']
            c = data.at[data.index[i], 'Adj_Close']
            o1 = data.at[data.index[i-1], 'Adj_Open']
            h1 = data.at[data.index[i-1], 'Adj_High']
            l1 = data.at[data.index[i-1], 'Adj_Low']
            c1 = data.at[data.index[i-1], 'Adj_Close']

            if h <= h1 and l >= l1 and c > o:
                bodyColor[i] = 'black'
                wickColor[i] = 'yellow'
                borderColor[i] = 'yellow'
            elif h <= h1 and l >= l1 and c <= o:
                bodyColor[i] = 'yellow'
                wickColor[i] = 'yellow'
                borderColor[i] = 'yellow'
            elif h > h1 and l < l1 and c > o:
                bodyColor[i] = 'black'
                wickColor[i] = 'cyan'
                borderColor[i] = 'cyan'
            elif h > h1 and l < l1 and c <= o:
                bodyColor[i] = 'cyan'
                wickColor[i] = 'cyan'
                borderColor[i] = 'cyan'
            elif h > h1 and l >= l1 and c > o:
                bodyColor[i] = 'black'
                wickColor[i] = 'green'
                borderColor[i] = 'green'
            elif h > h1 and l >= l1 and c <= o:
                bodyColor[i] = 'green'
                wickColor[i] = 'green'
                borderColor[i] = 'green'
            elif h <= h1 and l < l1 and c > o:
                bodyColor[i] = 'black'
                wickColor[i] = 'red'
                borderColor[i] = 'red'
            else:  # h <= h1 and l < l1 and c <= o:
                bodyColor[i] = 'red'
                wickColor[i] = 'red'
                borderColor[i] = 'red'

        tmp_df['color'] = bodyColor
        tmp_df['wickColor'] = wickColor
        tmp_df['borderColor'] = borderColor

        self.last_op = 'create_vol_ohlc_df'
        self.last_outcome = 'SUCCESS'
        return tmp_df

    except Exception as e:
        self.last_op = 'create_vol_ohlc_df'
        self.last_outcome = 'FAIL: {:s}'.format(str(e))
        traceback.print_exc()
        return None

Hope this helps.


Added a formula for version 3.9.0 of Watchman

Certain versions of Ember CLI will fall back to Node Watcher when Watchman is not ~> 3.0.0

Certain versions of Ember CLI

Which versions? New or old ones?

Ember CLI 1.13.1 has semver checks that don't recognize watchman 4+ as being supported.  It's fixed in later patch versions, but if you're stuck on 1.13.1 like my team is for now, we would like a way to install this specific version of watchman, with brew, through our provisioning script.

@shaheenery I'd recommend hosting this in your own tap for now. It doesn't feel like this is a formula that will be needed widely or long-term. Sorry and thanks!

Hey @mikemcquaid , no worries.  I didn't realize that only long-term or widely needed formulas were welcome.  Since it is so easy to have your own custom taps, I guess it really don't matter if a formula makes it into homebrew-versions.  I think I was just assuming that home-brew versions was meant to be a place that held all of the past versions of homebrew formulas that anyone could want, but that would make the list incredibly long.  Keep up the good work, thank you for maintaining.

Thanks for the kind words!

We're making some changes to Versions that should end up with some clearer guidelines around this sort of thing. Apologies for the lack of clarity at the moment on what's accepted and what isn't.

I appreciate the apology, but it's not necessary.  I wanted a formula anyway I'll just add tapping my personal repo to our team's provisioning script.


[SDPA-686] Added global css change on h2 to match font size in sketch for xs screen.

…reen with the sketch file.

**JIRA issue:**https://digital-engagement.atlassian.net/browse/SDPA-686
Changed

Added global text size change for h2 only on xs screen to match the sketch requirement.

Screenshots

Close for now until the ticket got progress.


When trying to run the example_scenes.py from the console nothing happens

I have succesfully installed all the packages required for working in manim. Problem arrises when trying to run the example_scenes.py from the console. Console reports no errors and it seems like everything went smoothly, however no video windows pop up and actually show the animation. I am working on windows 10, python 3.7.3 32bit

Figured it out. Intead of doing
python3 manim.py example_scenes.py SquareToCircle -pl
in the console, I have done
manim example_scenes.py SquareToCircle -pl
and it works like it should now.
Still not sure why the first thing didn't work though


Add module documentation unclear / possibly broken

I'm trying to follow the documentation to add a module to pypyjs.  It isn't clear from the docs at what stage in the process I should be using the module_bundler.  Here is my current build script (which takes many hours to run so fast experimentation is out of the question - thus I'm here asking for help).
#!/bin/bash -x
git clone https://bitbucket.org/pypy/numpy.git
git clone git@github.com:pypyjs/pypyjs.git
cd pypyjs
git submodule init
git submodule update
npm install
pypy ./tools/module_bundler.py add ./lib/modules ../numpy/
sudo make
make dist

The resulting pypyjs-0.4.1.tar.gz does not seem to contain numpy as import numpy fails.  Looking through the Makefile I think it's getting deleted here.
./lib/pypyjs.vm.js: ./build/pypyjs.vm.js
        cp ./build/pypyjs.vm.js ./lib/
        python ./tools/extract_memory_initializer.py ./lib/pypyjs.vm.js
        python ./tools/compress_memory_initializer.py ./lib/pypyjs.vm.js
        rm -rf ./lib/modules/   <--------- HERE
        python tools/module_bundler.py init ./lib/modules/

As this ./lib/modules folder being deleted had numpy in it.

I guess you may have figured this out since you closed the issue, but noting for future reference: the build pypyjs bundle include a copy of the module_bundler.py script, which you can use to add/remove modules to it after it's been built.
Doing this step:

pypy ./tools/module_bundler.py add ./lib/modules ../numpy/

later in the build process will probably have the same effect


Add test and handle better output duplication to stdout

When an error is diplayed, it is printed to stdout. We did that because we wanted to see the error logs in the stdout log file of our web apps. The problem is that it leads to duplication when printit is using for CLI. Moreove it should not be the default behavior.
It was the opportunity to add some tests to this lib.
NB: The coverage is not 100%.

Thanks!


Remove support for python3.8

Out of interest, what is the thinking behind this, given py37 is EOL in 2023-06-27, and py38 over a year later (2024-10)?

@dalepotter That is bringing molecule in sync with other projects such ansible-core and ansible-lint, which already require py39 or newer. Main reason for this is to ease maintenance, so we can focus on fixing bugs than covering older versions of python. Each extra versions we support adds considerable costs, human time in particular.
PS. When me mention supported, we mean fully-supported. A version that only gets security updates does not count as supported from our point of view. Think that you face a serious bug, nobody will help you merge a fix for it if that is not related to security for py37. For this reason alone, we cannot really say that we provide more support than whatever is provided by the upstream dependency (python in this case).
I also observe that you never contributed to molecule project, maybe if you can spend some time and become an active contributor, we might be able to support older pythons for longer.
While we do not use maintenance branches with molecule, that might change in the future, which will allow people to backport important fixed to older versions. Still, that need active community contributors in order to happen.

@ssbarnea thanks for clarifying the thinking - I certainly agree that it would not make sense to maintain support for versions which themselves are not supported by ansible-core.


m1 mac installation

seems like i can't use the binary from the lates release out of the box.
i get the following error when running ic-repl:
❯ ic-repl
dyld[56920]: Library not loaded<EMAIL_ADDRESS>  Referenced from: /usr/local/bin/ic-repl
  Reason: tried<EMAIL_ADDRESS>(no such file), '/usr/local/lib/libssl.1.1.dylib' (no such file), '/usr/lib/libssl.1.1.dylib' (no such file)
[1]    56920 abort      ic-repl

i tried solving it by running
❯ sudo ln -sfn<EMAIL_ADDRESS>/usr/local/lib/libssl.1.1.dylib

but this lead to this new error:
❯ ic-repl
dyld[57026]: Library not loaded<EMAIL_ADDRESS>  Referenced from: /usr/local/bin/ic-repl
  Reason: tried<EMAIL_ADDRESS>(no such file), '/usr/local/lib/libssl.1.1.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/usr/lib/libssl.1.1.dylib' (no such file)
[1]    57026 abort      ic-repl

then i installed an x86_64 version of homebrew following the instructions here and installed<EMAIL_ADDRESS>again using it, which finally worked.
maybe the process can be simplified?

I don't have M1, so I cannot test it. Does cargo build from master work? You can also try build with feature static-ssl enabled.

cargo build worked, although i don't know if this is due to the above step of using the x86_64 version of homebrew. Will close this issue anyways, thanks for the quick response!ls


Cannot put 'Term' inside 'ResourceArc', or: Support for storing references to Erlang datatypes in Rustler structs?

For some use cases (c.f. https://github.com/chrrasmussen/Idris2-Erlang/issues/4) it would be nice to store references to Erlang datastructures inside a Rust structure.
Converting (serializing) the data to Rust types before storage is slow and breaks for certain types like references which might be garbage-collected and then later when deserializing the data they might be no longer valid. A prime example is the Erlang 'ref' type (such as used by :atomics, :counter or NIF modules).
ResourceArc might store a pointer to an arbitrary Erlang term inside (as long as the ResourceArc as a whole is constructed/passed back to the same Env the term came from), but currently this is not possible because Term itself does not have a ResourceTypeProvider implementation.
Either adding a ResourceTypeProvider implementation for Type or adding a separate class called e.g. TermArc whose implementation would be similar to ResourceArc but simpler since no type-conversions would need to take place would be possibilities.

We can't really do this, we wrap the C NIF API, and this is not supported functionality there. ResourceArc is just a wrapper for resources, and you can't store terms in there safely.
One possibility to accomplish what you are trying to do could be to allocate an owned environment, and then use that for storing terms outside of the process heap. This is a really interesting idea actually, and we should probably look into implementing it. It would require testing to figure out any potential caveats to this approach in regards to memory usage or performance.

Thank you for you reply!
I had a go making a simple implementation of a managed mutable box type using an owned environment:
#[derive(Clone)]
pub struct TermArc
{
    inner: std::sync::Arc<std::sync::Mutex<TermArcAux>>,
}

pub struct TermArcAux
{
    owned_env: OwnedEnv,
    saved_term: SavedTerm
}

impl TermArc {
    pub fn new(term: Term) -> Self {
        Self{inner: std::sync::Arc::new(std::sync::Mutex::new(TermArcAux::new(term)))}
    }

    pub fn get<'a>(&self, env: Env<'a>) -> Term<'a> {
        let inner = self.inner.lock().unwrap();

        // Copy over term from owned environment to the target environment
        inner.owned_env.run(|inner_env| {
            let term = inner.saved_term.load(inner_env);
            term.in_env(env)
        })
    }

    pub fn set(&self, term: Term) -> Atom {
        let mut term_ptr = self.inner.lock().unwrap();
        term_ptr.owned_env.clear();
        term_ptr.saved_term = term_ptr.owned_env.save(term);

        atoms::ok()
    }
}

impl TermArcAux {
    pub fn new(term: Term) -> Self {
        let owned_env = OwnedEnv::new();
        let saved_term = owned_env.save(term);
        Self{owned_env: owned_env, saved_term: saved_term}
    }
}

Since I'm new to Rustler there probably are some ways to improve this further.

As for memory usage: I have not done any profiling so far (nor do I know what a good approach would be to profiling this kind of code), but I did have a look at the internals of the BEAM's `erl_nif.c implementation.
As far as I was able to tell w.r.t. above implementation, it means that:

both reading (get) and writing (set) require a deep copy of the term to be made.
allocating the OwnedEnv should be reasonably fast as much less work is done than allocating a 'normal' process environment. Not that this is very important because new will probably be called much less often than get/set.
clearing the OwnedEnv (during set) should be very fast, since it does nothing else than calling the destructors of all saved terms (which in above code is only one).

I have another idea: If e.g. an ETS handle is created and then moved to inside an OwnedEnv, we can read/write to this ETS data from anywhere without incurring the copying overhead that we'd have from moving terms into and out of the owned environment directly.
So this might allocating and de-allocating an owned environment slightly slower, but will probably  significantly increase the read/write speed from/to it. This is probably worthwhile.

I'm pretty sure reading and writing from ETS also performs a copy of the term.
On Wed, Oct 21, 2020, at 00:03, Qqwy wrote:

I have another idea: If e.g. an ETS handle is created and then moved to inside an OwnedEnv, we can read/write to this ETS data from anywhere without incurring the copying overhead that we'd have from moving terms into and out of the owned environment directly.

So this might allocating and de-allocating an owned environment slightly slower, but will probably significantly increase the read/write speed from/to it. This is probably worthwhile.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/rusterlium/rustler/issues/333#issuecomment-713166405, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGN7UTV3YXZCRHCF5SHTPTSLYCL7ANCNFSM4SAPCBXQ.

@hansihe Yes, unfortunately it does.
I think the 'OwnedEnv' is the best we can do right now. It would be great if a hook would be added to erl_nif to tell the runtime that you're storing a reference to an object in your structure (and another one to relinquish this reference later), so that cheap refcounting can be used rather than expensive copying.
I think this would be the final piece of the puzzle to allow us to use native containers (arrays, vectors, queues, and the likes) which could be very useful in certain circumstances.


feature: plain text output switch

Sometimes I want it help me write some markdown without rendering.
Add a switch button so that the answer may be shown in plaintext directly.

I think can add a "copy as plain text" button, because display in plain text is essentially the same as editing the response.

你可以点击编辑复制纯文本


add createInvalidArgumentError(); see #3676

updated error code table in docs
all other changes in docs are from prettier
updated --compilers test

@plroebuck, please take some tylenol before reviewing docs/index.md :wink:

@plroebuck 	here's an example of how the try/catch block in runMochaJSON is incorrect (I changed it in another PR): https://travis-ci.org/mochajs/mocha/jobs/490660198#L2102


Update sbt-ci-release to 1.7.0

About this PR
📦 Updates com.geirsson:sbt-ci-release from 1.5.7 to 1.7.0
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.geirsson", artifactId = "sbt-ci-release" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.geirsson", artifactId = "sbt-ci-release" }
}]

labels: sbt-plugin-update, early-semver-minor, semver-spec-minor, artifact-migrations, commit-count:1

Superseded by #383.


[QUESTION]: Can you please update the status of Unity XT CSI support for EKS Anywhere to YES

How can the Team help you today?
Details: ?
I have installed and successfully tested Unity XT CSI 2.5.0 with EKS Anywhere with multiple variations and configurations. I am a part of Dell APJ Presales team. Can you please update the status of the compatbility matrix to yes for the Unity XT CSI for EKS Anywhere on this page
https://dell.github.io/csm-docs/docs/csidriver/
The entire deployment and scenario testing for the UNITY-XT 2.5.0 on EKS Anywhere running 1.23 version of Kubernetes is documented here
Deploying the Unity XT CSI driver on EKS Anywhere: https://ambar-thecloudgarage.medium.com/eks-anywhere-part-1-dell-emc-unity-xt-csi-version-2-2-0-f639773ac488
Scenario testing (including volume creation, persistence, snapshots, etc.): https://ambar-thecloudgarage.medium.com/eks-anywhere-part-2-dell-emc-unity-xt-csi-version-2-2-0-7756103b364e
I had undertaken similar work for PowerScale CSI 2.5.0 and the engineering team took note of all the installation logs and scenarios to finally create the PR and update the status to YES.
Could you please do the needful. Feel free to reach out to me in case,
cheers,
Ambar Hassani

Hi @thecloudgarage  Thanks for qualifying and the detailed write up. We will work on raising a doc PR for the same.


[DOC|TEST] opt() documentation improvements, better errors message for sequence mismatch.

Document difference between Some()/None() and opt.

Windows CI is having bad time again - fails at Extracting archive: external\mingw32.7z Can't open as archive: 1

Well, I guess I can consider fusion completely deprecated - half a month for PR with fully green CI, give moth since PR has been opened, zero reaction ...
1.6 also broke pattern matching installation, because nobody cared to even tag it properly (the fix for #99 has been merged months ago).
I no longer see any reason to continue to try and maintain this, will move code to a separate library that I can at least tag and release properly - I wanted it to be a standardized solution, but it seems like nobody else is interested


Recovery the the former debug console

I wonder why the former debug console was removed. In the former version, when start a debug, the output is redirected to output, I can clear it easily, but now, it's redirected to a specify terminal, I can't even clear any longer. Can i change it or the feature was removed.

/needsMoreInfo - What language are you debugging? What VS Code version? What extensions?


fix link to vendor docs in README

Changes
Updated the link to the vendor docs to point towards the vendor directory in the Tekton Chains repository, previously this would redirect to https://github.com/docs/vendor which led to a 404 error.
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[x] Has Docs included if any changes are user facing
[ ] Has Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings)
[ ] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
NONE

ready for review!


If a line starts with  this text does not vanish
 this text vanishes

If a line starts with a  the rest of the line vanishes.
I wasn't able to spot the reason more specific. But here is a MRE for you to see what I mean.

resulting in

This behaviour isn’t limited to raw-typst at all; any line starting with an HTML comment will have the entire line removed, because pulldown-cmark treats the whole line as a HTML block, and we remove HTML blocks.
Relevant is https://github.com/pulldown-cmark/pulldown-cmark/issues/712. While I agree it’s counterintuitive, this behaviour is part of the CommonMark specification – see https://spec.commonmark.org/0.30/#example-177.
I suppose we could try and hack around it by making a nested markdown parser for the rest of the HTML block, but I’m not so keen on that.
Leaving open to remind myself to document the behaviour at least.

Maybe it's already to late, but the example doesn't reflect the entire removal of the line or does it?
*bar*
*baz*

results in
*bar*
baz

That’s because when rendering markdown to HTML, one passes the HTML code straight through – Typst is different because it doesn’t support HTML. The important part of that example is that *bar* is not converted to bar, which demonstrates that it’s in a HTML parsing context and not a Markdown parsing context.

Though actually, if we do end up embedding an HTML parser in this library, which we’ll need to if we want to support custom elements (unless we just leave that to the user as a callback…? I just thought of that now and I’m not sure what the best approach is), then this issue would be fixed.
But the current behaviour is not a bug in and of itself, but just a consequence of us not supporting HTML.


[DOC] Qualification Tool documentation revamp

Credits to @rwlee
Reorganization and revamp of the qualification docs, opened as draft due to a few pending fixes + need for initial feedback and discussion.
During my initial review I, @rwlee ,  found it very hard to follow the documentation, use the examples, or find what I was looking for. Lack of table of contents, wording of many things, inconsistent formatting/wording/examples, repetitive explanations, etc. Other files need similar fixes, but this was a necessary starting point.
Describe the documentation you'd like
Here are some remaining fixes needed before moving out of draft:

[ ]  Review/fix terminology for Spark Application (we're using it and spark-shell in a weirdly and interchangeably)
[ ] (optional) unify ID vs Id vs id
[ ] Fix suggested download path for spark
[ ] Reword/rewrite Detailed Application Stages Report
[ ] Reword/rewrite Detailed Application Execs Report
[ ] Reword/rewrite end of Understanding the Qualification Tool Output
[ ] Reword/rewrite Detailed Application Execs Report
[ ] Markdown link check
[ ] Run through spell check

We moved to the new nvidia docs platform


Dark theme - Third, fifth etc. sub-level wrong styling

Not that big an issue but the styling for the third, fifth etc. levels is wrong in the dark theme.

Could you add a screenshot? I'm not sure I understand this completely.

@rohit-gohri Sure. will do so tomorrow (if I don't forget).

Fixed in latest release.

@rohit-gohri Thanks

I am observing the same issue in v2.1.2 (with Docusaurus 3.5.2). 3rd level background and dropdown background (text barely visible) seem wrong. Screenshot and minimal OpenAPI spec attached.

openapi_sample.json

@protyposis please open a new issue


Requeue requests with a delay after failed retries

Rather than give up entirely on a reconcile request even after retries are exhausted in the handleRootPolicy method, this requeues the request to be processed 5 minutes later instead.

@gparvin and @ckandag, after thinking about this a while, I think this is a safer approach rather than giving up entirely on a reconcile request.


Support prototype script libraries

Pull Request Test Coverage Report for Build 684306026

8 of 52 (15.38%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-4.5%) to 70.364%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

Engine/Extensions/TextrudeMethods.cs
0
3
0.0%

Engine/Extensions/Group.cs
0
41
0.0%

Totals

Change from base Build 682186086:
-4.5%

Covered Lines:
665

Relevant Lines:
938

💛  - Coveralls

Pull Request Test Coverage Report for Build 684306026

-44 of 52 (15.38%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-4.5%) to 70.364%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

Engine/Extensions/TextrudeMethods.cs
0
3
0.0%

Engine/Extensions/Group.cs
0
41
0.0%

Totals

Change from base Build 682186086:
-4.5%

Covered Lines:
665

Relevant Lines:
938

💛  - Coveralls


'Did you know' section is cut off when browser is smaller

Describe the bug
(From internal holistic testing )
It's noticeable when we reduce the browser window, but the share dialog is not adjusting to it.
Expected Behavior
Adjust the size to view all the share options
Reproduction Steps & Sample
Under Sharing, the "Did you know?" section is cut off when browser window is narrower than 1310px. (Actually cuts off at ~1360 because padding on right should match padding on left.)
image
Other Relevant Info
No response

https://devtopia.esri.com/WebGIS/arcgis-portal-app-templates/issues/9834


feat: add 3 new fields to ChainStateView::tip_state(ChainTipState)

Motivation

Add helper fields to chain state for better performance measurement

Proposal

Add 3 new fields to ChainTipState struct

Links

Close #927

@duguorong009 Is this PR "ready for review"?

@duguorong009 Is this PR "ready for review"?

Yes, it is ready now. @ma2bd

@afck
How about this one? https://github.com/linera-io/linera-protocol/pull/1397/commits/9455ea81ff358f3b26ffdb656a43ac0f1b3835d9

Thank you!


Feature request: select aggregation level by time period length

The Whisper docs say:
'When data is retrieved (scoped by a time range), the first archive which can satisfy the entire time period is used.'
and in the code, this comment appears:
'Lower precision archives must cover larger time intervals than higher precision archives.'
This seems to be targeted at the usual metric configuration, where one retains e.g. 1s metrics for a week, 5m metrics for a month, 1h metrics for a year.
Our setup is for a research platform which logs some very short-duration events. We anticipate that we'll need to store full-resolution log data for up to two years, and we also need to store aggregated metrics for the same length of time to support graphs with long time periods. However, the aggregated metrics are useless once the full-resolution data has been discarded.
This doesn't work so well with Whisper's archive selection method above. An ideal solution would be to be able to specify a rule for Whisper that explicitly matches a time period length to an archive - e.g. queries for a period of up to 1 day return the 1s metrics, up to 1 month return the 5m metrics, etc.
Probably not a high priority, but maybe an interesting use case.
Thanks!

Yes, it's a valid use case, agreed - if configurable and not default ofc.


No linux install script: heartbreaking

extremely and heavily heartbreaking

Once I found out only .bat files on release, I instantly searched on Issues, am glad I am not alone. I refuse to boot Windows 11 exclusively for this, I would rather not use this at all. Can't believe it.

The original project on which the fork has been made has linux installation instructions. I will try to see if i can make it work by one way or another. I'll keep this updated if I make it work


instrument rails5 api

Rails 5 comes with an API only mode. The base controller class in this case ActionController::API. ActionController::API has nothing to do with  ActionController::Base so controllers extending  ActionController::API are not getting instrumented correctly.

Are those CI failures real? It would be great to get this merged so testing rails-api applications works out of the box. Currently missing support for rails-api isn't mentioned in any of the documentation.

@athurn thank you! we are reviewing this for inclusion in our next release.

@ndelage we have done much work on our testing, and hopefully our next release should make public travis happier.
Regarding rails-api support, we do instrument controller actions by subscribing to action controller events, but we had not automatically included this module into ActionController::API so methods like newrelic_ignore were not available in descendant classes thereof. A simple workaround is to include it on your own in application_controller.rb, but we will be accepting this PR so that the next release will do it for you.

This has been released in version 3.17.2! Thanks, @athurn!


istio  and  kong

NOTE: GitHub issues are reserved for bug reports only.
For anything else, please join the conversation
in Kong Nation https://discuss.konghq.com/c/kubernetes.

Summary
SUMMARY_GOES_HERE
Kong Ingress controller version
0.9.1
Kong or Kong Enterprise version
kong
Kubernetes version
paste kubectl version output
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.2", GitCommit:"52c56ce7a8272c798dbc29846288d7cd9fbae032", GitTreeState:"clean", BuildDate:"2020-04-16T11:56:40Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"16+", GitVersion:"v1.16.9-aliyun.1", GitCommit:"4f7ea78", GitTreeState:"", BuildDate:"2020-05-08T07:29:59Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
Environment

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

What happened
Excuse me, I want to combine kong and istio. But don't know how to do it. There are some official tutorials but they are not very detailed. For example, how to replace the gateway of istio and combine it with virtualservice. The native istio virtualservice is bound by selecting the istio gateway. So can I bind to the kong ingress controller or other ways. I strongly suggest that the official can give a relatively complete case. This place is really confusing.

We are planning to provide a complete how-to on running Kong with Istio soon, and the work is tracked in #703.
I have added your request to that issue. Let's continue our discussion there - closing this issue as a duplicate. Please describe in #703 what exactly you are trying to achieve with Kong, and we might be able to cover that in docs.


Update CI

Closes #788. This PR updates the CI to address several minor issues:

Bump cache-action version
Bump Codecov-action version using newly added repo secret
Remove temporary genno pin

We can also use this to solve the current CI failure of the windows-tutorials test. As far as I can see, this failure stems from a cache being used -- at least, the setup-gams step does not fail for the other windows-CI-tests not using a cache for gams. (was resolved by iiasa/actions#12)
How to review

Read the diff and note that the CI checks all pass.

PR checklist

[x] Continuous integration checks all ✅
[x] Add or expand tests; coverage checks both ✅
~[ ] Add, expand, or update documentation.~ Just CI updates
~[ ] Update release notes.~ Just CI updates

@khaeru This PR is ready in principle, the only thing we might want to still adapt is the pre-commit action usage.

Good catch, thanks :)


Disable exceptions.

As per the style guide, we're already avoiding exceptions, but disabling them altogether lets us see better where any library-generated exceptions are (uncaught exceptions in threads only report the thread entry point, which makes it rather difficult to debug).

Lgtm


Copy jar file to libraries folder if possible

Allows for the launcher to skip the step of re-downloading Rift when the user already has it and is running the installer.

Thanks :)


error in multiplying/dividing a matrix by a scalar in DSL

We have an incompatibility between R and C execution of matrix/scalar multiplication (same issue for division).
The following example works in compiled code but not in R, because model[[scalNode]] is a 1-dim array.
One kludgey possibility is to wrap a drop() around model[[scalNode]] in such situations. Adding a [1] to get model[[scalNode]][1] messes up the compiled code because model[[scalNode]] is a scalar.
I'll note that this came up in testing contexts before but (I don't think) we realized it would affect DSL calculations when run in R.
I'm happy to work on this but wanted Perry to weigh in on thoughts on what to do about it.
mynf <- nimbleFunction(
    setup = function(model, matNode, scalNode) {},
    run = function(mat = double(2)) {
#        tmp = model[[matNode]] * model[[scalNode]]  # same issue if matrix is from a node instead
        tmp = mat * model[[scalNode]]
        returnType(double(2))
        return(tmp)
    })

code <- nimbleCode({
    sigma ~ dunif(0, 5)
    mat2[1:2,1:2] ~ dwish(R[1:2,1:2], 4)
})
m <- nimbleModel(code, inits = list(sigma = 1, R = diag(2)))

rnf <- mynf(m, 'mat2', 'sigma')
rnf$run(diag(2))
#Error in mat * model[[scalNode]] : non-numeric argument to binary operator
cnf = compileNimble(rnf, m, showCompilerOutput = T)
cnf$rnf$run(diag(2))

I just published a branch ExperimentalFixToIssue284 that has a fix for this.
Lines 1188-1232 of BUGS_model.R are where the code is generated for active bindings for R model classes.  At some point long ago we had problems with R model variables being set to subtly different types at different times, with non-enforcement during assignment.  So apparently we made everything an array, even a 1-dimensional array of length one rather than a  vector of length one.  Apparently the problem of the current Issue was not noticed.  To fix it, I added a third case of the active bindings that uses a substitute template (see the code) for length-one vectors and does not convert values to be array.
Also the code on lines 92-99 in types_modelValues.R that initializes a modelValues object had the same issue, so I made a similar change there.
These changes pass test-models.R.  Let's run any other tests involving models before concluding there are no unintended consequences.

ok, I've run the full tests on that branch and things seem fine. I'll merge
in.
On Tue, Apr 4, 2017 at 9:22 PM, perrydv<EMAIL_ADDRESS>wrote:

I just published a branch ExperimentalFixToIssue284 that has a fix for
this.
Lines 1188-1232 of BUGS_model.R are where the code is generated for active
bindings for R model classes. At some point long ago we had problems with R
model variables being set to subtly different types at different times,
with non-enforcement during assignment. So apparently we made everything an
array, even a 1-dimensional array of length one rather than a vector of
length one. Apparently the problem of the current Issue was not noticed. To
fix it, I added a third case of the active bindings that uses a substitute
template (see the code) for length-one vectors and does not convert values
to be array.
Also the code on lines 92-99 in types_modelValues.R that initializes a
modelValues object had the same issue, so I made a similar change there.
These changes pass test-models.R. Let's run any other tests involving
models before concluding there are no unintended consequences.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/nimble-dev/nimble/issues/284#issuecomment-291750251,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACYr3u428vSybkdoVFi8VrqQE-8MQ4gNks5rsxbwgaJpZM4MwGgL
.


Create calibreapp-image-actions.yml

Issue: #2
Used Github Image Actions to optimize images
Added .github/workflows/calibreapp-image-actions.yml in the repository
Image Actions will compress images so that they’re smaller, every time we push an image in the main branch,
We can control the quality of the images, we have kept it to default as of now
Image Actions adds optimized images to the current Pull Request and posts a summary comment.
Image Actions will run in the following scenarios:
on Pull Requests containing images (not including forks)
on pushing of images to main (for forks)

[x] My Pod Leader knows I'm working on this Pull Request
[x] I've explained what the Pull Request is adding.
[x] I've explained why this is important.

LGTM!


[stable/rabbitmq] cannot log in after deployment

Is this a request for help?: Yes
Version of Helm and Kubernetes:
Kubernetes: GKE with 1.9.7-gke.3, RBAC enabled
HELM: 2.9.1 - all charts up-to-date

Which chart: stable/rabbitmq
What happened:
Installation went fine, I provided username and password in the values.yaml. After deployment, it echoes back the correct username and gives me a command to retrieve the password, which also returns the correct password (both as set in the yaml file). I kubectl --proxy and go to the URL given by the chart (http://<IP_ADDRESS>:8002/api/v1/proxy/namespaces/default/services/rabbitmq:15672/), where I am presented with the RabbitMQ login screen, as expected.
When trying to log in with the username and password, it heads back to the login page, stating that login has failed, but also pops up an HTTP auth input box asking for credentials (as if Auth: basic is in place). Entering the credentials there does not work either. I cannot log in at all.
I have removed and re-deployed RabbitMQ numerous times, I have tried admin, user, the default passwords, etc., I dug into the logs and see that my user is "created successfully", but cannot get past the login screen.
Logs show no further errors. I tried installing the chart with debug enabled, but that does not work; I get a whole bunch of other errors flung at me which might belong in a different ticket.
What you expected to happen:
I expect to be able to log in to the admin console with the given username and password.
How to reproduce it (as minimally and precisely as possible):

Take the values-production.yaml
Set the username and password fields
Add some extra plugins. My full list is; rabbitmq_management,rabbitmq_peer_discovery_k8s,rabbitmq_stomp,rabbitmq_web_stomp,rabbitmq_mqtt
Deploy with helm install --name rabbitmq -f values-production.yaml
The output will give you a command for proxy with kubectl, run it
Go to the URL given in the output. May require some reloads before the underlying service is up and running, but it should present you with the RabbitMQ login screen
Try to log in, fail.

Anything else we need to know:
The fact that I get presented an auth basic login box after I try to log in is very strange. I am not sure if this behaviour is generated by RabbitMQ, or by something in GKE?

I've seen the same behaviour, but I'm not on GKE, running K8S via kops... and I don't even get the login failed message, whenever I try to login clicking on the button in the RabbitMQ login screen I get an Auth Basic that I can't get through.
PS: I don't have any extra plugins installed

I can confirm the call to /api/whoami, which, according to the documentation, should return "details on the currently logged in user".
I inspected the request a bit more and saw that the www-authenticate header of the whoami call is set to
Basic realm="kubernetes-master"

Googling that gives me the Kubernetes API server source, not RabbitMQ. Could it be that calls to /api/whoami on RabbitMQ and being redirected to the Kubernetes API for some reason?

One further update; I just destroyed the service again (helm del --purge) and changed the serviceType in the values.yaml to LoadBalancer - essentially exposing the service through an external IP directly.
If I install it like that, it gives me some other command to get the external IP. It took a minute before that returned a valid IP, but once it did, I could access the console directly on that IP, on port 15672.
Using this approach I CAN log in and everything works as expected. This must really be some oddity that is specific to being proxied using kubectl, as directly accessing the service works.
This works, but it is far from ideal. While I have a sensible case to expose the AMQP port to the world, I really do not want the admin console to be accessible from outside the cluster... I know I can set up 2 services (a ClusterIP and a LoadBalancer) with the LoadBalancer only exposing AMQP, but while this bug exists, that means I cannot access the admin console at all.

More update;
This seems to be a direct result of this - https://github.com/kubernetes/kubernetes/issues/38775
Which means the experienced behaviour is "intended" for security reasons. It also means logging in to RabbitMQ via kubectl proxy is not possible at all and the instructions given at the end of the helm install are misleading.

This was inadvertently resolved by #7030, which gives port-forward commands that actually work. Closing this issue.


Decorators conflicts with no-unused-vars

'xxx' is defined but never used(no-unused-var)

The error messages above shows up when i import my decorator and used it in the file.
ESlint version: 3.19.0
babel-eslint version: 4.14.0
Could you give me a hint on this one?

Same problem
"eslint": "3.19.0",
"babel-eslint": "8.2.2",

Same,
<EMAIL_ADDRESS><EMAIL_ADDRESS> "parser": "babel-eslint",   "parserOptions": {     "ecmaVersion": 7,     "sourceType": "module",     "ecmaFeatures": {       "experimentalObjectRestSpread": true,         "experimentalDecorators": true,         "jsx": true     }   }, "env": {     "browser": true,     "node": true,     "es6": true   } }

Don't know why this has been closed without any solution?

👍

Same problem here:
"babel-eslint": "7.2.3",
"eslint": "^3.19.0"

Seeing with babel-eslint 8.2.2

Hi ! It works for me with babel-eslint v8.0.x
npm i<EMAIL_ADDRESS>

same here, I am getting this error using 8.2.2
Using the export keyword between a decorator and a class is not allowed. Please use export @dec class instead
switching back to 8.0.0 the error goes away ...

Same here, even I'm using babel-eslint v8.0

Still getting no-unused-vars error/warning for decorators.
"eslint": "^5.6.0", "babel-eslint": "^10.0.1",

i have the same problem.
"eslint":"5.7.0",
"babel-eslint":"10.0.1"

Me too
"eslint": "5.9.0",
"babel-eslint": "10.0.1"

for me its working now with
"babel-eslint": "10.0.1",
"eslint": "5.13.0"

I also have the same problem.
"babel-eslint": "^10.0.2",
"eslint": "^5.16.0"

same issue
"babel-eslint": "^10.0.2",
"eslint": "^6.0.1",

Thank you for the issue. Now that @babel/eslint-parser has been released, we are making this repository read-only. If this is a change you would still like to advocate for, please reopen this in the babel/babel monorepo.


"cargo install --git" requires a crate name when a workspace has multiple binaries

Problem
What I did:
I tried running the command:
cargo install --git https://github.com/ZcashFoundation/zebra --branch main

But I got the error:
    Updating git repository `https://github.com/ZcashFoundation/zebra`
error: multiple packages with binaries found: zebra-utils, zebrad

I tried:

specifying --bin zebrad
specifying --bins
modifying the default-members in the workspace Cargo.toml to exclude zebra-utils

Then I found the correct command syntax in #7194:
cargo install --git https://github.com/ZcashFoundation/zebra --branch main zebrad

Steps

Run cargo install --git https://github.com/ZcashFoundation/zebra --rev 65e38b3c74eb06b14939448e368848f8ff0598b1

Possible Solution(s)
Here's what I expected:

--bin zebrad should install the binary with that name, if there are multiple packages with binaries
--bins should install all binaries, if there are multiple packages with binaries
if there is only one binary in the workspace default-members, that binary should be installed
a multiple packages with binaries found error should give users a hint about how to specify a single crate

Notes
Output of cargo version:
cargo 1.45.1

Output of uname -a:
Linux ... 5.4.75 #1-NixOS SMP Thu Nov 5 10:43:38 UTC 2020 x86_64 GNU/Linux

Closing as a duplicate of #4830.  These all sound like reasonable suggestions to me, though.

Closing as a duplicate of #4830.  These all sound like reasonable suggestions to me, though.


FLEX-2294 ~ Adds variables for TLS configuration.

SonarQube analysis reported 15 issues

 15 major

Watch the comments in this conversation to review them.
Top 10 extra issues
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 ConfigurationToOslpSetConfigurationRequestConverter.java#L32: The Cyclomatic Complexity of this method "convert" is 29 which is greater than 10 authorized.
 OslpGetConfigurationResponseToConfigurationConverter.java#L41: The Cyclomatic Complexity of this method "convert" is 20 which is greater than 10 authorized.
 OslpChannelHandler.java#L281: Refactor this code to not nest more than 3 if/for/while/switch/try statements.
 OslpChannelHandler.java#L363: Refactor this method to throw at most one checked exception instead of: java.io.IOException, com.alliander.osgp.webdevicesimulator.exceptions.DeviceSimulatorException
 OslpChannelHandler.java#L396: This block of commented-out lines of code should be removed.
 OslpChannelHandler.java#L429: The Cyclomatic Complexity of this method "handleRequest" is 31 which is greater than 10 authorized.
 OslpChannelHandler.java#L854: Make this IP "<IP_ADDRESS>" address configurable.
 OslpChannelHandler.java#L865: Make this IP "<IP_ADDRESS>" address configurable.
 OslpChannelHandler.java#L997: Make this IP "<IP_ADDRESS>" address configurable.
 OslpChannelHandler.java#L1049: Remove this unused method parameter "device".

All is well.

All is well.

SonarQube analysis reported 15 issues

 15 major

Watch the comments in this conversation to review them.
Top 10 extra issues
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 ConfigurationToOslpSetConfigurationRequestConverter.java#L32: The Cyclomatic Complexity of this method "convert" is 29 which is greater than 10 authorized.
 OslpGetConfigurationResponseToConfigurationConverter.java#L41: The Cyclomatic Complexity of this method "convert" is 20 which is greater than 10 authorized.
 OslpChannelHandler.java#L281: Refactor this code to not nest more than 3 if/for/while/switch/try statements.
 OslpChannelHandler.java#L363: Refactor this method to throw at most one checked exception instead of: java.io.IOException, com.alliander.osgp.webdevicesimulator.exceptions.DeviceSimulatorException
 OslpChannelHandler.java#L396: This block of commented-out lines of code should be removed.
 OslpChannelHandler.java#L429: The Cyclomatic Complexity of this method "handleRequest" is 31 which is greater than 10 authorized.
 OslpChannelHandler.java#L854: Make this IP "<IP_ADDRESS>" address configurable.
 OslpChannelHandler.java#L865: Make this IP "<IP_ADDRESS>" address configurable.
 OslpChannelHandler.java#L997: Make this IP "<IP_ADDRESS>" address configurable.
 OslpChannelHandler.java#L1049: Remove this unused method parameter "device".

All is well.


(PUP-11265) Push last used environment and loaders onto the context

Previously, if the agent run decided to use the last server environment, it would not push the current environment and loaders onto the context.
Metadata requests that don't specify an environment will cause the indirector to fall back to the environment stored in the context, which in our case is the environment the agent started in instead of the converged one.
Push the current environment and loaders if we're using the last server environment, and extract the logic to a separate method.

jenkins please test this