Hooks + Context not working within Tailwind component

The new Tailwind component makes it quite impossible to use hooks or context w/ react email.
As I'm using react-i18next for i18n, I'm using the useTranslation hook. So I'm not having a dynamic use case either, just using available tools.
Also, I'm using context to pass around some shared data without using prop drilling.
My workaround till now was having Tailwind as my root, so it won't interfere w/ context etc.
However, this won't work with the rewrite, as it's now required to have the <head> as a direct descendant of <Tailwind>.
The hooks issue was also mentioned in #1021, and also what's the probable cause:

@gabrielmfern that does seem a little weird to me, as I do expect hooks to run for other "static" use cases like static site generation or server-side rendering, especially as async server side rendering is becoming more of a thing, and indeed hooks run fine with renderToStaticMarkup. React contexts also work fine in static rendering, the issue is with how the tailwind function traverses the component tree and calls components as plain functions: https://github.com/resendlabs/react-email/blob/2374d0d099360c63fe7427febb239776c3bd6b3b/packages/tailwind/src/tailwind.tsx#L95C32-L95C32.
For now my workaround is using <MyReactContext.Consumer>{context => ...}</MyReactContext.Consumer> instead of the hook.

That's interesting, then I think this is an actual issue with the new Tailwind version, can you open an issue on this so we can reference it on a PR and discuss it there?

Originally posted by @gabrielmfern in https://github.com/resend/react-email/issues/1021#issuecomment-1850747538

Certainly something we have in mind and that we intend in fixing ASAP.

@gabrielmfern Do you happen to know if this is now fixed given that https://github.com/resend/react-email/pull/1383 is merged?

@WillsB3 Not yet fixed, but this is still going to be an issue that only happens when you have a context inside - as in a child of - the Tailwind component. So, a possible workaround is moving your context provider above Tailwind.
The fix for this is not going to be too hard, I just need to find the time to do it. Will let you know once I do.

Appreciate you sharing the workaround, will give it a go. Thank you 🙏

Would still love for this to be fixed, but we’ve worked around it for singleton providers by creating a provider/hook that executes synchronously. Here’s an example for react-intl support:
import { ReactNode } from "react"
import { IntlShape } from "react-intl"

import { Language, getLocaleData } from "."

type IntlContext = { intl: IntlShape; lang: Language }

const ref: {
  intl?: IntlShape
  lang?: Language
} = {
  intl: undefined,
  lang: undefined,
}

export const WithIntl = ({
  children,
  locale,
}: {
  children: ((args: IntlContext) => ReactNode) | ReactNode
  locale?: string
}) => {
  const { intl, lang } = getLocaleData(locale)
  ref.intl = intl
  ref.lang = lang

  if (typeof children === "function") {
    return children({ intl, lang })
  }

  return <>{children}</>
}

export const useIntl = () => {
  if (ref.intl !== undefined && ref.lang !== undefined) {
    return ref as IntlContext
  }
  throw new Error("useIntl called without <WithIntl> provider.")
}

Update on this: the issue is a bit harder to fix than I initially thought, there is no simple way to fix it. This is definitely a problem that is going to be here for some time before we can do the big changes for it. The only solutions I can think of require some breaking changes, both in rendering, and in how Tailwind is going to be used with React Email
The issue is that, since we don't and probably won't have a renderer of our own, we have to literally map the entire tree of elements that are children of the Tailwind component to actually inline the styles, but for this to work properly, we also resolve all components that are found, and that breaks the usual lifecycle for React sadly.


EPIC: Prepare Contribution of OpenFlux to community repo

Description
The work done for Open Flux should be contributed back to the FluxCD project. This Epic covers all related tasks required for that.
Done Criteria

[ ] Code has been reviewed by other team members
[ ] Internal technical Documentation created/updated
[ ] New / changed code is documented
[ ] Analysis of existing tests (Unit and Integration)
[ ] Unit Tests created for new code or existing Unit Tests updated
[ ] Integration Test Suite updated (includes deletion of existing unnecessary Integration Test and/or creation of new ones if required)
[ ] Enduser Documentation updated (if applicable)
[ ] Successful demonstration in Review

@Skarlso Paste in the discussion with Stefan about the OCI repo stuff.

Communication from Stefan regarding the registry implementation details:
Gergely Brautigam
  11:04 AM
How would you use the registry to store data? Would you use it as a plain blob store? Or stay on the Layer 0 side? Or use it somehow else? Like proper layering etc?

stefanprodan
  11:34 AM
The Flux OCI Artifacts are single layer, same as Helm. Makes little sense to me to layer yaml files, each layer implies a meta descriptor which at times could take more space than the actual yaml in the layer.
For Timoni artifacts I use 2 layers, one for all CUE definitions and one for the templates, but there is no such separation when you push plain YAMLs like Flux does.

Gergely Brautigam
  12:02 PM
Thanks! That’s good info. Since we are also using the registry approach it would be nice to align with you so in the future we literally just switch over and it should all just work.

stefanprodan
  12:08 PM
What’s important to note here is that source-controller uses a single layer, if your yamls are in more than one layer in some artifact, then it will not work with Flux.
  12:08 PM
You can point Flux to the right layer by specifying a media type Docs here https://fluxcd.io/flux/components/source/ocirepositories/#layer-selector


Refactored control to make it more Leaflet-y

This is the new control:

This is beautiful

Merged trough #59 (this pull with a rebase). Thanks for your hard work.


Error: Java heap space

Comparing the screenshot step is failing with an error: Java heap space
Further, look into gives:

When org.gradle.jvmargs=-Xmx1024m is set , the java heap error was consistent
When increased org.gradle.jvmargs=-Xmx4608m is set , the frequency of error has dropped down to almost 20%.

Comparing screenshots with previous ones.
[02:14:07]: ▸ > Task :sample:phoneDebugExecuteScreenshotTests FAILED
[02:14:07]: ▸ FAILURE: Build failed with an exception.
[02:14:07]: ▸ * What went wrong:
[02:14:07]: ▸ Execution failed for task ':sample:phoneDebugExecuteScreenshotTests'.
[02:14:07]: ▸ > Java heap space
[02:14:07]: ▸ * Try:
[02:14:07]: ▸ Run with --info or --debug option to get more log output. Run with --scan to get full insights.
[02:14:07]: ▸ * Exception is:
[02:14:07]: ▸ org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':sample:phoneDebugExecuteScreenshotTests'.
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:207)
[02:14:07]: ▸ at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:263)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:205)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:186)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
[02:14:07]: ▸ at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
[02:14:07]: ▸ at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
[02:14:07]: ▸ at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
[02:14:07]: ▸ at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
[02:14:07]: ▸ at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
[02:14:07]: ▸ at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
[02:14:07]: ▸ at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
[02:14:07]: ▸ at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
[02:14:07]: ▸ at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
[02:14:07]: ▸ at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:356)
[02:14:07]: ▸ at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
[02:14:07]: ▸ at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
[02:14:07]: ▸ at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
[02:14:07]: ▸ at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
[02:14:07]: ▸ at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
[02:14:07]: ▸ at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
[02:14:07]: ▸ at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
[02:14:07]: ▸ at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
[02:14:07]: ▸ at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
[02:14:07]: ▸ at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
[02:14:07]: ▸ Caused by: java.lang.OutOfMemoryError: Java heap space
[02:14:07]: ▸ at scala.collection.mutable.ResizableArray.ensureSize(ResizableArray.scala:106)
[02:14:07]: ▸ at scala.collection.mutable.ResizableArray.ensureSize$(ResizableArray.scala:96)
[02:14:07]: ▸ at scala.collection.mutable.ArrayBuffer.ensureSize(ArrayBuffer.scala:49)
[02:14:07]: ▸ at scala.collection.mutable.ArrayBuffer.$plus$eq(ArrayBuffer.scala:85)
[02:14:07]: ▸ at scala.collection.mutable.ArrayBuffer.$plus$eq(ArrayBuffer.scala:49)
[02:14:07]: ▸ at scala.collection.generic.Growable.$anonfun$$plus$plus$eq$1(Growable.scala:62)
[02:14:07]: ▸ at scala.collection.generic.Growable$$Lambda$2154/0x0000000801378040.apply(Unknown Source)
[02:14:07]: ▸ at scala.collection.Iterator.foreach(Iterator.scala:943)
[02:14:07]: ▸ at scala.collection.Iterator.foreach$(Iterator.scala:943)
[02:14:07]: ▸ at com.sksamuel.scrimage.AwtImage$$anon$1.foreach(AwtImage.scala:52)
[02:14:07]: ▸ at scala.collection.generic.Growable.$plus$plus$eq(Growable.scala:62)
[02:14:07]: ▸ at scala.collection.generic.Growable.$plus$plus$eq$(Growable.scala:53)
[02:14:07]: ▸ at scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:105)
[02:14:07]: ▸ at scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:49)
[02:14:07]: ▸ at scala.collection.TraversableOnce.to(TraversableOnce.scala:366)
[02:14:07]: ▸ at scala.collection.TraversableOnce.to$(TraversableOnce.scala:364)
[02:14:07]: ▸ at com.sksamuel.scrimage.AwtImage$$anon$1.to(AwtImage.scala:52)
[02:14:07]: ▸ at scala.collection.TraversableOnce.toBuffer(TraversableOnce.scala:358)
[02:14:07]: ▸ at scala.collection.TraversableOnce.toBuffer$(TraversableOnce.scala:358)
[02:14:07]: ▸ at com.sksamuel.scrimage.AwtImage$$anon$1.toBuffer(AwtImage.scala:52)
[02:14:07]: ▸ at scala.collection.TraversableOnce.toArray(TraversableOnce.scala:345)
[02:14:07]: ▸ at scala.collection.TraversableOnce.toArray$(TraversableOnce.scala:339)
[02:14:07]: ▸ at com.sksamuel.scrimage.AwtImage$$anon$1.toArray(AwtImage.scala:52)
[02:14:07]: ▸ at com.sksamuel.scrimage.AwtImage.pixels(AwtImage.scala:43)
[02:14:07]: ▸ at com.karumi.shot.screenshots.ScreenshotsComparator.imagesAreDifferent(ScreenshotsComparator.scala:51)
[02:14:07]: ▸ at com.karumi.shot.screenshots.ScreenshotsComparator.compareScreenshot(ScreenshotsComparator.scala:33)
[02:14:07]: ▸ at com.karumi.shot.screenshots.ScreenshotsComparator.$anonfun$compare$1(ScreenshotsComparator.scala:13)
[02:14:07]: ▸ at com.karumi.shot.screenshots.ScreenshotsComparator$$Lambda$2254/0x000000080141a840.apply(Unknown Source)
[02:14:07]: ▸ at scala.collection.parallel.AugmentedIterableIterator.flatmap2combiner(RemainsIterator.scala:133)
[02:14:07]: ▸ at scala.collection.parallel.AugmentedIterableIterator.flatmap2combiner$(RemainsIterator.scala:130)
[02:14:07]: ▸ at scala.collection.parallel.immutable.ParVector$ParVectorIterator.flatmap2combiner(ParVector.scala:66)
[02:14:07]: ▸ at scala.collection.parallel.ParIterableLike$FlatMap.leaf(ParIterableLike.scala:1074)
[02:14:07]: ▸ * Get more help at https://help.gradle.org/
[02:14:07]: ▸ Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
[02:14:07]: ▸ Use '--warning-mode all' to show the individual deprecation warnings.
[02:14:07]: ▸ See https://docs.gradle.org/6.5/userguide/command_line_interface.html#sec:command_line_warnings
[02:14:07]: ▸ BUILD FAILED in 14m 14s
[02:14:07]: ▸ 79 actionable tasks: 79 executed

Snapshot tests on Phone
Version: 5.13.0

🤔 @NassirFfx the sample projects we have are not able to reproduce this error. can you please upload a sample project we can use to reproduce this bug? I'm also wondering if this is related to the number of images you have or the size of some images.

I'm having the same issue. It seems to happen only when a certain amount of differences are detected (e.g. 250+ changed screenshots or so).

I'm also reproducing the issue with Shot 5.14.1.
I have 22 screenshots which have a resolution of 1080x2400. If I run them on a different device with a tolerance of 1.0, so they all pass with a warning, I have an OOM exception if Xmx is set at 2G, but pass if I change it to 4G.

I get this when I have a significant number of differences. (And I know tolerance is applied after gathering differences). From looking at the code of the image comparison library, the AWT images are never flushed. Maybe adding this will help?

For me PR #314 helps

I think the issue is due to parallelism when comparing images and not really a garbage collection issue. (While debugging locally I could see that the total used memory was properly being recycled during execution)
screenshots.par.flatMap(compareScreenshot(_, tolerance)).toList

I am not too familiar with scala, but I believe converting the collection to a parallel collection with par will by default set the number of threads to Runtime.AvailableProcesses. I think this matches the number of available cores on your machine.
When there are a lot of image differences the imagesAreDifferent function can potentially take up quite a bit of memory due to allocating an array of pixels for each set of screenshots to compare against.
These two factors can lead to random out of memory issues depending on which set of screenshots are being processed at the same time. If we have 4 threads then we are loading 4 sets of images at the same time. The sets of images that get processed per run is somewhat random as par doesn't guarantee ordering. So my hunch is the inconsistent failures happen due to bad luck of processing a set of multiple images that doesn't fit into memory.

I tried to set the maximum concurrency using -Dscala.concurrent.context.maxThreads=1 but unfortunately that didn't seem to work for me.

To test I cloned the project and locally tested setting a maximum thread pool size which seems to have alleviated my issues.
//set the maximum number of threads to 2
private val taskSupport = new ForkJoinTaskSupport(new ForkJoinPool(2))

def compare(screenshots: ScreenshotsSuite, tolerance: Double): ScreenshotsComparisionResult = {
  val screenshotsParallel = screenshots.par
  screenshotsParallel.tasksupport = taskSupport

  val errors =
    screenshotsParallel.flatMap(compareScreenshot(_, tolerance)).toList
  ScreenshotsComparisionResult(errors, screenshots)
}

Perhaps one solution would be add an optional max threads to the plugin extension so that we can control the parallelism on memory constrained machines (CI executors)?

Alternatively, I tried removing parallelism altogether and it fixed my issue as well. Anecdotally the comparison time for my project (1.5k screenshots) took about 6 seconds instead of 2 seconds. This isn't too bad for my use case so I may go with this option as the bulk of the time is spent generating the comparison screenshots.
screenshots.flatMap(compareScreenshot(_, tolerance)).toList

For me PR #314 helps

I noticed that you closed it due to it not being considered a "complete solution." Could you please clarify what aspects are still missing?
Currently, I'm encountering "heap space" and "java.lang.IllegalArgumentException: Self-suppression not permitted" exceptions after transitioning to a higher Android version on my testing AVDs. I had to set tolerance = 0.01 due to variations in a few pixels and I usually get one of the exceptions for test runs with 200+ shots. (shorter test are fine) I've already set org.gradle.jvmargs=-Xmx8192M long time ago.

Hi, any chance for an update here? This thing happens for me as well, driving me crazy at this point TBH :)
@karsie could you please tell what exactly is wrong with your proposed solution?

I only managed to fix all my issues by converting the entire thing to Kotlin (mainly due to the lack of Scala knowledge on my part). What I also encountered why converting it, is that there is 1 action where all recorded screenshots are copied using Scrimage (and thus loading every file into an awt image), where this could easily be achieved using regular file copy.


Team Arena (Missionpack)

Would you be interested in adding TA? I have the packs and it works perfectly on MacOS M1.

I prefer to each user adds the mods they wants.
This installation provides only the basics.


Added Security Definitions to StatSocial  API.

Added Security Definitions to StatSocial  API.

@maryguirola Thank you.


Refactor stream.Write

Fixes #83.

[Current coverage][cc-pull] is 86.95%

Merging [#212][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.04%

@@             master       #212   diff @@
==========================================
  Files            69         69
  Lines          4269       4179    -90
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           3714       3634    -80
+ Misses          324        316     -8
+ Partials        231        229     -2

Powered by Codecov. Last updated by [ee77e85...4750924][cc-compare]
[cc-base-branch]: https://codecov.io/gh/lucas-clemente/quic-go/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/lucas-clemente/quic-go/compare/ee77e85af3c9fe68684ae96b43be49f7a69a62dd...4750924b27b54bfda7e9f045c52ab62399f6f72c?src=pr
[cc-pull]: https://codecov.io/gh/lucas-clemente/quic-go/pull/212?src=pr


fix: show filter & show download should not control add new row link visibility in table widget

Fixes #18346
##Description
Toggling show filter and show download properties from there property pane should not have hide/show the add new row link
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

Manual

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/ok-to-test sha=b1f9bd0

/ok-to-test sha=b1f9bd0

/ok-to-test sha=0467192

/ok-to-test sha=0467192

/ok-to-test sha=f1fc7f4

/ok-to-test sha=25b7031ee811ffa0aee6f828a630d1533b2550b4


Editing the DynamoDB in Cloudformation Launch.

Hi,
I see that the DynamoDB is filled by this part of the code
"Settings": {
            "Metrics": {
                "Url": "https://metrics.awssolutionsbuilder.com/generic",
                "SolutionId": "S00030"
            },

But i exactly would like to edit this part, is there any option to do so?
So it will choice a different URL but with the same info.
Regards,

Hi,
We use this for customers that opt-in for sending us anonymous usage data to get a better insight in how are solutions are uses. If you want to collect this information yourself you can certainly use your own url and capture this data in your own service that handles the calls.
regards,
Arie

Closing due to time elapsed since last correspondence. Please re-open this if you are still having an issue.


Is payload text can save the detail exception or custom information from activity?

Right now if a TaskFailedException is thrown in execution of Activity, the reason can be saved into payload.
But how to save the other information like exception detail into payload text too?

Hi @jarvan-jiang - can you please clarify your question? A concrete example of what you're looking to save would help me understand. Thanks

Hi @jarvan-jiang - can you please clarify your question? A concrete example of what you're looking to save would help me understand. Thanks

Hi @davidmrdavid , sorry make you confusion, let me try to explain more.
What I mean is, when I throw TaskFailureException in an Activity, the first parameter reason of TaskFailureException will be stored in Payloads table, which is nice. However, the rest like innerException  and details are not saved.
        public TaskFailureException(string reason, Exception innerException, string details)
            : base(reason, innerException)
        {
            Details = details;
        }

Is there is a way to save more info from the rest parameters than reason? Or I have to manually put all the info into reason?

Thanks @jarvan-jiang.
I did a bit triage here, the answer is not immediately obvious to me, but I wanted to document some findings here.
First - the Payload table schema is specified here:
https://github.com/microsoft/durabletask-mssql/blob/e5155826631f8abc8852c1adeb41e958ca4870d7/src/DurableTask.SqlServer/Scripts/schema-1.0.0.sql#L29-L41
There I can see a Text field that I expect may serve as a "catch all" to serialize all sorts of information. This your exception details would probably go, I think.
I also see that when we read from the database, we do try to read the failure details, at least if the if-statement branch in the snippet below is taken:
https://github.com/microsoft/durabletask-mssql/blame/e5155826631f8abc8852c1adeb41e958ca4870d7/src/DurableTask.SqlServer/SqlUtils.cs#L171-L187
and I see that if-statement branch is taken if the Payload column contains a JSON:
https://github.com/microsoft/durabletask-mssql/blob/e5155826631f8abc8852c1adeb41e958ca4870d7/src/DurableTask.SqlServer/SqlUtils.cs#L225-L237
This was implemented here: https://github.com/microsoft/durabletask-mssql/pull/188
So this brings me to a few questions:
(1) What package and version of DurableTask MSSQL are you using? Please list the package name (there's multiple, depending on whether you're running DTFx directly, or running Durable Functions / serverless) and the version?
(2) Do you see anything in the Payload column for your task failures?
(3) Looking at the aformentioned PR, there should be a new configuration called ErrorPropagationMode.UseFailureDetails which should serialize these extra details. Is that something you've set or can try setting? If you can try setting it and reproduce with it, that would help us proceed further.
I also see a report here that the new failure mode may have some edge cases when sub-orchestrators and their activities are involved. Please take a look and let me know if this matches your symptoms. Thanks!


Content is ignored in 202 response messages

Description:
When an API returns HTTP 202 on a POST, WSO2 API Manager fails to return anything and the request times out.
The following appears in the carbon.logs.
TID: [-1234] [] [2018-02-08 09:18:57,972] ERROR {org.apache.synapse.transport.passthru.PassThroughHttpSSLSender} -  Failed to submit the response {org.apache.synapse.transport.passthru.PassThroughHttpSSLSender}
org.apache.axis2.AxisFault: Payload could not be written as JSON.
        at org.apache.synapse.commons.json.JsonUtil.writeAsJson(JsonUtil.java:276)
        at org.apache.synapse.commons.json.JsonFormatter.writeTo(JsonFormatter.java:62)
...
TID: [-1234] [] [2018-02-08 09:18:57,985]  WARN {org.apache.synapse.core.axis2.Axis2Sender} -  Trying to send a response to an already responded client request - Rest API Context : /test202/LATEST {org.apache.synapse.core.axis2.Axis2Sender}
TID: [-1] [] [2018-02-08 09:19:57,621]  WARN {org.apache.synapse.transport.passthru.SourceHandler} -  Connection time out after request is read: http-incoming-96 Socket Timeout : 60000 Remote Address : /<IP_ADDRESS>:39768 {org.apache.synapse.transport.passthru.SourceHandler}

This has been tested on version 2.1.0-update8 and using a mock API definition which goes against http://httpstat.us/202
This may be a duplicate of APIMANAGER-5731. While a pull request exists and has been merged in April 20171. It does not say in which version of WSO2 API Manager it will be fixed.
Affected Product Version:
WSO2 API Manager v2.1.0-update8
OS, DB, other environment details and versions:
CentOS 7, MariaDB, jdk1.8.0_151
Steps to reproduce:

Define a mock API in APIM, with one request: POST /202 (see swagger def below). Production/Sandbox Endpoint: http://httpstat.us/

swagger: "2.0"
paths:
  /202:
    post:
      responses:
        "200":
          description: ""
      parameters:
        - name: Payload
          description: Request Body
          required: false
          in: body
          schema:
            type: object
            properties:
              payload:
                type: string
      x-auth-type: "Application & Application User"
      x-throttling-tier: Unlimited
info:
  title: Test202
  version: LATEST

Subscribe to API and try to Execute request in Store. Request times out and above lines will appear in /wso2carbon.log.

Related Issues:
APIMANAGER-5731

This cannot be reproduced in the latest build of the upcoming 2.2.0 release, therefore resolving the issue
This will be available with 2.1.0-update14


CheckBox to SimpleTableHeaderAdapter

I am using this table view and trying to create a table with a header checkbox and checkbox for each row. Something like below;

I was able to render checkboxes in rows but could not find a way to set it in the header with 'SimpleTableHeaderAdapter'. Is there a way to include views in the header?
I only see these constructors;
public SimpleTableHeaderAdapter(Context context, params string[] headers);
public SimpleTableHeaderAdapter(Context context, params int[] headerStringResources);

Note: I am working with Xamarin C#

I got to know that we can use customized TableHeaderAdapter as our Data adapter.
I was successful with the following example
public class CustomTableHeaderAdapter : TableHeaderAdapter  {     public CustomTableHeaderAdapter(Context context)     {         super(context);     }    public override View GetHeaderView(int columnIndex, ViewGroup parentView)    {         switch( columnIndex )          {             case 0: return RenderCheckBox();             case 1: return RenderTextCell( "Column header");             default: return null;         }     }         private View RenderTextCell(string text)         {             var textView = new TextView(this.Context);             textView.Text = text;             return textView;         }         private View RenderCheckBox()         {             CheckBox checkBox = new CheckBox(this.Context);             checkBox.Click += HeaderCheckBox_Click;             return checkBox;         } }


Address in forward url

hi, is there a possibility of including the address in forward.url? Currently I am doing a 'second lookup' on my receiving server. Thanks

Yes, address parameter is already supported.

pretty cool :+1:  So I'd just add another ;{address}& I guess

I got the above working. Thanks


Implement enforcing monotonicity within GBLinear

In reference to ticket: #2515
Use will need to provide monotonic factors indexes in monotone_constraints using the following format:
{Factor Index},{Direction(1|-1)};...
and as for factors that does not have rules they can be skipped,
Example:
monotone_constraints = "13,1;332,-1;2334,1"
the model will force a positive weight for factors marked with 1 and negative weight for factors marked with -1

@mhmoudr As, I've mentioned earlier, please reuse the parsing and initialization approach from gbtree. It's already there, ready to use - just declare std::vector<int> monotone_constraints. I see how the sparse format for the constraints vector could be convenient, but it doesn't outweigh the inconvenience of introducing and keeping yet another custom interface.

I am ok switching back to the dens vector in term of configuration, but one last question, are you open to unify the implementation for this parameter under the sparse format. keep in mind that it will break backward compatibility for current users.
As a workaround (to be backward compatible) we can have a check for ; if it exists in the config then we parse it as sparse (for both gbtree and gblinear) otherwise we keep the dens parsing. Thoughts!?

@mhmoudr I see no significant need for switching to sparse API for monotonicity.

@khotilov , In my case as I have turned some futures using one-hot encoding into value specific columns, which results ~3000 features, and when it comes to configuring monotonicity constraints for a factor index 2750 and 2752 only in sparse format all what I have to do 2750,1;2752,-1 on the other hand with the existing traditional configuration I have to 2749 leading 0, until I am able to add 1 or -1 and the number of zeros can be miss-configured easily, this is why I see the need for such way to configure monotonicity constraints.

It's rather easy to prepare such vector in R or python, e.g.,
#R interface can take a vector
mc = integer(100)
mc[c(22,33)] = 1
mc[c(77,88,99)] = -1

#python interface needs string
mc = np.array([0]*100)
mc[[22,33]] = 1
mc[[77,88,99]] = -1
str(tuple(mc))

The CLI, though, is inflexible... But it's better to keep the core simple. Convenience features could be implemented within interfaces, if necessary.

Codecov Report

Merging #2546 into master will decrease coverage by 8.42%.
The diff coverage is 4.54%.

@@             Coverage Diff              @@
##             master    #2546      +/-   ##
============================================
- Coverage     42.84%   34.42%   -8.43%
============================================
  Files           150       76      -74
  Lines         11306     7106    -4200
  Branches       1139      703     -436
============================================
- Hits           4844     2446    -2398
+ Misses         6137     4558    -1579
+ Partials        325      102     -223

Impacted Files
Coverage Δ
Complexity Δ

src/gbm/gblinear.cc
12.5% <4.54%> (-1.33%)
0 <0> (ø)

include/xgboost/learner.h
0% <0%> (-100%)
0% <0%> (ø)

include/xgboost/tree_model.h
6.17% <0%> (-34.51%)
0% <0%> (ø)

src/common/common.h
70% <0%> (-30%)
0% <0%> (ø)

src/learner.cc
18.21% <0%> (-8.27%)
0% <0%> (ø)

src/gbm/gbtree.cc
16.16% <0%> (-4.1%)
0% <0%> (ø)

src/common/io.h
25% <0%> (-2.78%)
0% <0%> (ø)

src/data/sparse_page_raw_format.cc
82.69% <0%> (-1.93%)
0% <0%> (ø)

src/objective/rank_obj.cc
10.45% <0%> (-0.14%)
0% <0%> (ø)

... and 81 more

Continue to review full report at Codecov.

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

@khotilov , back to this PR, I have applied the requested change for the constraint parameter, where I also moved the parameter parsing code into a shared file between tree and linear.
In term of the applying the constraints it stays as it was before, please check and let me know if you have any other issue or question.

Closing as gblinear has changed significantly.


Department Not Editing Properly

When editing a user, the department doesn't get updated
Admin/Superadmin Account

Fixed


Remove configuration panel from dashboard

This is not a great idea from a security perspective.

Go for it!

Sir, I have a question regarding this issue
By dashboard do you mean this?

And by configuration do you mean this two?

@roy9495 Hi, no. Platformatic DB creates a dashboard for your Platfromatic app. You can read about it here:
https://oss.platformatic.dev/docs/reference/db/dashboard

We have removed the local dashboard


Clear single specific packet via REST and CLI

Is there any way, and can it be added?
/clear-packets/{channel-id}/{sequence_number}
to clear a single specific packet.
Rest and CLI both.
Originally posted by @puneet2019 in https://github.com/informalsystems/hermes/issues/3401#issuecomment-1772841206

I was just about to create an issue for this, I'd like to upvote the value of this! :)


Ignoring app ID and defaulting to UNIT_ID_DEFAULT_BANNER test ads

Admobadapter version or commit:
v1.4.6
Android compileSdkVersion:
27
Issue description briefly:
I can't get the app to display real ads, it seems to be ignoring my app ID in the strings resource and defaulting to String UNIT_ID_DEFAULT_BANNER = "ca-app-pub-7246006002889486/6993938523"; // Google's Test unit ID from the BannerAdPreset class.
Steps to reproduce:
You can build the sample app MainActivity_ListView_Banner with your own app ID in the strings resource and it will ignore it and default to Google's Test unit ID.

@HaydenCampbell will check!


Support memory pool for FFT functions

Original implementation of cupy.fft does not use memory pool at the stage of making a FFT plan.
It spoils the computation speed and has possibility to raise out of memory exception.

LGTM!


CookieManager affects other st components behaviour.

Hi...
Someone post it also here: https://discuss.streamlit.io/t/cookies-support-in-streamlit/16144/35
but the solution provided in this post is forcing to use forms and that shouldn't be the solution.
import streamlit as st
import extra_streamlit_components as stx

cookie_manager = stx.CookieManager()

button = st.button("Get cookies")
if button:
    st.subheader("All Cookies:")
    cookies = cookie_manager.get_all()
    st.write(cookies)
    st.success("This should show up for longer than a split second")

The problem is that the st.success message dissapears....
Any solution for this issue?
Thank you so much.
Regards.

@aegeavaz I think this is related to my issue I just created: https://github.com/Mohamed-512/Extra-Streamlit-Components/issues/58

Should be fixed in 0.1.70


Added the ability to manually enter the slug

Thanks for submitting this @guladima. I'll check this out in the next day or so and give you any feedback I have.


[IOTDB-6272] Fix wrong RealNumber check for PartialPath

Issue：https://issues.apache.org/jira/browse/IOTDB-6272
"0e38" should be considered as a real number.

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

Comparison is base (ef6dc0a) 49.02% compared to head (75fd34a) 49.19%.
Report is 15 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff              @@
##             master   #11754      +/-   ##
============================================
+ Coverage     49.02%   49.19%   +0.16%
- Complexity    25011    25263     +252
============================================
  Files          2835     2847      +12
  Lines        177395   178111     +716
  Branches      21252    21302      +50
============================================
+ Hits          86965    87613     +648
- Misses        90430    90498      +68

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


Quality in notification

https://github.com/ruddarr/apns-worker/blob/main/payloads/series-episode-upgrade.json


Document Consumer and Producer-Initiated Transactions in SI Outbound Adapter

See: https://stackoverflow.com/questions/57504481/transactionid-prefix-for-producer-only-and-read-process-write-producerfencedex/57511897#57511897
In a multi-instance application using consumer-initiated and producer-only transactions, we need 2 templates because for consumer-initiated, we need a shared transactional id, but producer-only transactions must have unique ids for each instance.

Add test in SIK.

Resolved by https://github.com/spring-projects/spring-kafka/issues/1204


Tab complete - SimpleDispatcher

In SimpleDispatcher.java, we are getting a list of tab complete options but never actually adding them to the result list. We should change line 341 from:
mapping.get().getCallable().call(source, parts.length > 1 ? parts[1] : "", Collections.unmodifiableList(passedParents)));

to:
suggestions.addAll(mapping.get().getCallable().call(source, parts.length > 1 ? parts[1] : "", Collections.unmodifiableList(passedParents));

Why don't you create a PR?

That's right, but you forgot one thing:
We have to append parts[0] + " " to every suggestion the subcommand delivers, then add them to the list.


[Feature][Server & ui] Add Backward Dependent Execution

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description

Use case
None
Related issues
None
Are you willing to submit a PR?

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

Code of Conduct

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

#7579


minor updates

just a bundle of minor updates/fixes

interesting.
the failure is because ci pins down the libs used (like the docker build), but doesnt pin down the q-m-f version (which makes sense, else it wouldnt be useful at all).
so it fails on the bytes/octets thing (for ipaddr-4.0.0) since it uses ipaddr-3.1.0 ...
i would prefer if someone who understands the docker build path updates the ipaddr version there over me pinning it down for the qubes-builder build.

note-to-future-self on this:
a) figure out the head commit hash of https://github.com/ocaml/opam-repository
b) stick that hash in the git-reset-hard line in Dockerfile
c) run a docker build
d) stick the this-build hash from the end of the build process in the last-known line in build-with-docker.sh
e) do a full rebuild in a clean dvm, just to be sure. the hashes should match now.

Merged as #75 - thanks!


Native english speakers: ready for sleep or ready to sleep?

I have a quick question for you guys native english speakers. Is prepareToSleep() or prepareForSleep() better? Or even prepareForSleeping()? Same for READY_TO_SLEEP, READY_FOR_SLEEP or READY_FOR_SLEEPING? Thank you!

I think prepareToSleep() is better.
I am tired and ready to go to sleep.
I am tired and ready for bed.

That's what I thought, but I just saw this: HOW TO PREPARE FOR SLEEP WITH MINDFULNESS, so I was wondering.

The first thing I noted was the URL which contains, in order, the words "dummies", "religion", and "spirituality". Nothing against these of course....
Furthermore, that text says or being on the computer before bed. To be honest, I've spent years and years with computers, but have never actually been on one. #facepalm

Good point, but the dummies books are serious and well-known in France, I thought the above link was the english equivalent. Thanks!

A bit late off the mark, but my vote would also be for prepareToSleep().  A natural follow-on would be goToSleep(), the alternative to this goForSleep sounds weird.

I think:

prepareToSleep means prepare for the act of going to sleep, "sleep" here being a verb
prepareForSleep means prepare for the state of being asleep,  "sleep" here being a noun

So they're both OK,  but for me the first is slightly more natural.

Alright, thank you! We all agree for prepareToSleep and READY_TO_SLEEP. 👍


Dark Mode/Theme

Can we get a dark theme or dark mode for the UI?    Plus, dark mode looks cool too. ;)
Here's an example of what I'd like to see...

This is already supported on macOS (see screenshot in README.md) and in the browser version (Safari and recent Chrome beta). Windows support is blocked by electron/electron#15316 and electron/electron#18119.


Extraction("Failed to set file flags") on libalpm's file db

Extraction("Failed to set file flags") gets returned whenever I try to extract Arch an linux's libalpm file db with uncompress_archive
Tried both Ownership::Ignore and Ownership::Preserve (desired behaviour is ignore).
This only happens specifically with .tar.gzip files.
Output of the file command on one of the target files: gzip compressed data, from Unix, original size modulo 2^32.
Files are generated with pacman -Fyb /target/dir/ and are located in /target/dir/sync/.
Tried to extract /target/dir/sync/* to /target/dir/extracted/* (of course without the *, it's just to represent the individual file names).
Filesystem in use: ext4 + luks;
Package manager libarchive version: 3.6.1-1;
OS: EndeavourOS (based on Arch Linux);
Both GNU tar and bsdtar don't present this problem but GNU tar presents an error regarding an unknown keyword SCHILY.fflags (Perhaps this is problem?)

Is it possible for you to provide a test tarball? First, I intend to improve the error reporting for this case, then see if we can handle it.

Sure, those come directly from an arch linux repository mirror:
http://archlinux.de-labrusse.fr/extra/os/x86_64/extra.files
http://archlinux.de-labrusse.fr/community/os/x86_64/community.files
http://archlinux.de-labrusse.fr/core/os/x86_64/core.files
(would've uploaded on github myself but it doesn't allow me).
If you are on an Arch system it's also possible to generate such files with the stated pacman command.
Do mind that I read somewhere that it might be a problem related to libarchive and the filesystem in use, so I'm not entirely sure that you might experience this problem. But if that were the case, bsdtar would also fail since it depends on libarchive as well, but it doesn't.
I'll also add that I've tried creating an archive myself with:

tar caf testarchive.tar 1 2 3 (where 1, 2 and 3 were empty dirs)
gzip -c testarchive.tar > testarchive.tgz

and the error persisted with testarchive.tgz

Correction: Seems like using this other repo, this weird error doesn't happen.
The repo that distributes the erroring files is this http://archlinux.iskon.hr/extra/os/x86_64/extra.files

Could you create an automated test showing the error? so I can pick the PR and look at how to fix it.

Sorry if I took so long, been busy (in the meantime I temporarily fixed my program by calling the bsdtar program)
https://github.com/OSSystems/compress-tools-rs/pull/86


Problem !

Hey, serve friends
I have a problem
I want to display pdf files in the project (without side software)
I got this packet into the project, but I still did not write it
And when I want to run it, it does not work and does not run !!!!
This text is error !!!!
Error:Execution failed for task ':app:transformNativeLibsWithStripDebugSymbolForDebug'.

java.lang.NullPointerException (no error message)

My gradient version is 2.3.3
I run the project on Android 5.1 (virtual)
Thank you for advising

Not sure what you are trying to do but click
File
invalidate caches/restart
Then rebuild.

@mostafaamirhaghi1370 Please edit title to reflect your problem, this is not good issue title.

Duplicate of #1stmetro
Still, it makes a mistake !!!!

Duplicate of #1stmetro
Still, it makes a mistake !!!!

Still, it makes a mistake !!!!

@1stmetro
Still, it makes a mistake !!!!

Sounds like a gradle issue, upgrade to the latest release.. would be a start,

@1stmetro
my dear friend ,,
I downloaded the latest version of the grader from the site,
I introduced it through the settings
I did not have an eternity
But it makes the mistake again
Only this packet will fail
  !!!

@1stmetro .
my dear friend ,,
I downloaded the latest version of the grader from the site,
I introduced it through the settings
I did not have an eternity
But it makes the mistake again
Only this packet will fail
!!!

Take a look here
https://stackoverflow.com/questions/39615618/gradle-2-2-0-execution-failed-symbolfordebug

i have similar problem

Error:Execution failed for task ':app:transformNativeLibsWithStripDebugSymbolForDebug'.
java.lang.NullPointerException (no error message)
when remove this package ... project has run (without any porblem)
i need help for fix and open PDF file !
thank's


Beta Drops all Listening after running for several hours

Wallet now shows no listening services on Receive after running for several hours. Stop/Start Listening does not resolve the issue, must restart wallet. However, after quitting, the following are not killed and require manually killing before restart:
188839 pts/0    Sl     2:20 /home/greg/Epic/epic-gui-wallet/resources/bin/linux/epic-wallet -c /home/greg/.epic/main owner_api
188879 pts/0    Sl     4:37 /home/greg/Epic/epic-gui-wallet/resources/bin/linux/ngrok start --none --authtoken xxxx --log stdout
242886 pts/0    Sl     0:00 /home/greg/Epic/epic-gui-wallet/resources/bin/linux/epic-wallet -t /home/greg/.epic/main -c /home/greg/.epic/main listen --method http
242901 pts/0    S      0:02 /home/greg/Epic/epic-gui-wallet/resources/bin/linux/tor -f /home/greg/.epic/main/tor/listener/torrc
After killing then running wallet again, stop listener then quit still leaves processes running:
245741 pts/0    Sl     0:00 /home/greg/Epic/epic-gui-wallet/resources/bin/linux/epic-wallet -c /home/greg/.epic/main owner_api
245769 pts/0    S      0:01 /home/greg/Epic/epic-gui-wallet/resources/bin/linux/tor -f /home/greg/.epic/main/tor/listener/torrc
245781 pts/0    Sl     0:00 /home/greg/Epic/epic-gui-wallet/resources/bin/linux/ngrok start --none --authtoken xxxxxxxx

Can't reproduce with release instance so may be npm issue.


[Bug] Streams not updating in the background with the badge

Streams shown after re-opening the extension after the 5 minute refresh interval don't update.
Example:

Before opening the extension the badge shown 85 streams live (no example image)

After opening it it updated to 84 and the streams didn't refresh, shown with the steam "offline" preview image.

Example image:

And after clicking refresh button or re-opening the extension it updated the steams in the popup

Example image:

It's very rare to catch this bug and be able to debug it, so this will take some time

Maybe fixed with #16 update,
gonna keep an eye on it if I'm right


createSchedules does not render in Calendar (IE9+)

Version
1.8.1
Development Environment
Internet Explorer 9+
Current Behavior
I use createSchedules(), but only in Internet Explorer it does not render on the calendar.
I've also tried render(), but it does not work

OK, I'll check it out.


Version Flag

Hi Friends!
Would it be possible to add a --version to the arguments provided by this binary?
You know all us crazy mac admins like versions, and i'd like to assume that there will be a few that would like to report the verison in jamf of this application, as it doesn't reside in /Applications but rather in /usr/local/bin/ I envision writing a EA along the lines of
#!/bin/zsh
echo "<result>`/usr/local/bin/aftermath --version`</result>"

To collect that version and ensure that my fleet is running the latest.
bonus points would it also print the version number in the top of the aftermath log file.
Thank you for all you do

RD

Issue resolved in latest PR and release

Thank you
On Wed, Oct 12, 2022, 20:25 Stuart Ashenbrenner @.***>
wrote:

Issue resolved in latest PR and release
—
Reply to this email directly, view it on GitHub
https://github.com/jamf/aftermath/issues/37#issuecomment-1276568645, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABLUS7LCRMHN6UQOC2V3DALWC37AZANCNFSM6AAAAAAQ65L56Q
.
You are receiving this because you authored the thread.Message ID:
@.***>


Implement ClientSideCacheManagerEntity API

Low level API into the ServerSideCacheManagerEntity, no Ehcache dependencies here yet.

This has been done as part of other issues and is available with Ehcache 3.1.0.


Change menus that do not work with keyboard controls.

Change menus that do not work with keyboard controls.

@KellyeDC Rough Estimation 15-30 hours: but we need a list of places, not everywhere it's done easily, and some places can now work incorrectly now.

@yevhenobertas Please make all updates for both static and state content where applicable.  Once completed, the PO will review and we will identify any places that may have been missed.


add closed captions to writer.

For players expecting CLOSED-CAPTION=NONE, allows "NONE" to be added via VariantParams.Captions


perf(checkExpression): move checkExpression to valueChanges.

What kind of change does this PR introduce? feature

This change is

Current coverage is 92.88% (diff: 100%)

Merging #367 into master will increase coverage by 0.16%

@@             master       #367   diff @@
==========================================
  Files            16         16
  Lines           769        773     +4
  Methods         147        147
  Messages          0          0
  Branches        198        198
==========================================
+ Hits            713        718     +5
+ Misses           56         55     -1
  Partials          0          0

Powered by Codecov. Last update 5d49548...570ed54

seems not working when changes come from formState for example :(


Add Adobe Inc. Logo

Adobe Corporate Logo
Description
Adobe Inc. formerly Adobe Systems Incorporated, is an American company.
Link to the vector file, preferably from an official source
https://upload.wikimedia.org/wikipedia/commons/6/6e/Adobe_Corporate_logo.svg

Added in 92bb74e98bca1ea1ad794442676ebc4e75038adc
Thanks


FIO Integration Engineer

Overview
The Foundation for Interwallet Operability (FIO, http://fioprotocol.io) is looking for an Integration Engineer to work with FIO integration partners to help them integrate SDKs and features of the FIO protocol.
FIO Protocol is fully open source with documentation and APIs. FIO Protocol is built on a blockchain platform that uses C++ as its smart contract programming language. Blockchain functionality is accessed via an API. Integration of FIO features by crypto wallets and exchanges is facilitated by Typescript, Kotlin, and iOS SDKs.
The Integration Engineer opportunity is scoped as a fully remote, full or part-time contract position. This is a great opportunity for entry-level developers who want to get into the crypto/blockchain space by working with a growing protocol that is integrating directly with many different wallets and exchanges!
$6,000 - $8,000 / month depending on experience.
Core Responsibilities

Answer technical questions from crypto wallets and exchanges regarding FIO integration development
Collaborate with the broader team to identify, understand, and resolve integration issues and integration partner escalations
Manual testing of integrations (crypto wallets and exchanges). These include mobile (iOS and Android), browser, and hardware-based wallets
Develop an integration checklist and ensure that partner deliverables meet objectives in functionality, quality, and performance
Create and improve Developer Hub integration documentation
Development work to integrate FIO into open source wallets and exchanges
Online technical support to end users and integration questions on technical issues

Additional Responsibilities (depending on time, skills, and interest)

Contribute to development on the FIO Javascript automated test harness
Contribute to front-end development of various FIO projects

Requirements

Familiar with blockchain technology
2+ years hands-on experience with JavaScript development
Strong organization and project management skills

Position filled. Closing.


Component family in System constructors

I want to cast my vote for removing component family from system constructors. I would much rather provide the family inside the class as an override function.
You may close this issue. Thanks for the library, I am enjoying the null-safety.

Where do you see the advantage of a function over a constructor arg?

Just to separate it so I can parse it easier with my eyes. It can get messy up there with multiple components + conditions using (all,any,none).
Example:
class  MySystem : IteratingSystem() {

    override val family = family { all(MyComponent) }

}

I had that idea at the beginning but now introducing such a change will break the code for all users using 2.x version. That's why it is not gonna happen but might come in a 3.x version, if that is ever going to be released 😅


2.38: New structure is not backward compatible with mappersmith/test

Actually, I jumped the gun here. It was my editor that was wrong.


Fix libcufft tests.

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Fixes tests. See https://github.com/conda-forge/libcublas-feedstock/pull/10 for context.

@conda-forge-admin, please rerender


modifying loss functions for binary segmentation

Hello, I realize this is a bit beyond the scope of your project, but I was wondering whether I could run some code modifications past you. I'm trying to use these loss functions for binary semantic segmentation.
TLDR, I wanted to ask what exactly is happening with the line: p = p[torch.arange(p.shape[0]), target]
As well as check why we need the "1 - p" in the final loss term: loss = (1 - p ** self.q) / self.q. I think it's making my loss negative.
#--------------
modification1
#--------------
Because I am not doing multi class classification, but binary pixel level classification, I replaced:
p = self.softmax(input)
p = p[torch.arange(p.shape[0]), target]
with:
p = self.bce(input,target)
where self.bce = nn.BCEWithLogitsLoss(pos_weight=torch.tensor([weight],device = "cuda:0"), reduction='none')
I'm not sure if I'm correct about what is happening with p[torch.arange(p.shape[0]), target] and whether it can be replaced with the binary cross entropy loss.
#--------------
modification2
#--------------
The modifications above got things running, but resulted in negative loss, so I also replaced:
loss = (1 - p ** self.q) / self.q
with:
loss = (p ** self.q) / self.q
Finally, here is the GeneralizedCrossEntropy class with my modifications:
#---------------------------------------------------------
class GeneralizedCrossEntropy(nn.Module):
#---------------------------------------------------------
    """Computes the generalized cross-entropy loss, from `
    "Generalized Cross Entropy Loss for Training Deep Neural Networks with Noisy Labels"
    <https://arxiv.org/abs/1805.07836>`_
    Args:
        q: Box-Cox transformation parameter, :math:`\in (0,1]`
    Shape:
        - Input: the raw, unnormalized score for each class.
                tensor of size :math:`(minibatch, C)`, with C the number of classes
        - Target: the labels, tensor of size :math:`(minibatch)`, where each value
                is :math:`0 \leq targets[i] \leq C-1`
        - Output: scalar
    """

    def __init__(self, q: float = 0.7, weight=None) -> None:
        super().__init__()
        self.q = q
        self.epsilon = 1e-9
        self.bce = nn.BCEWithLogitsLoss(pos_weight=torch.tensor([weight],device = "cuda:0"), reduction='none')

    def forward(self, input: torch.Tensor, target: torch.Tensor) -> torch.Tensor:

        # p = self.softmax(input)
        # p = p[torch.arange(p.shape[0]), target]
        p = self.bce(input,target)
        p += self.epsilon
        # loss = (1 - p ** self.q) / self.q
        loss = (p ** self.q) / self.q

        return torch.mean(loss)

Hi @K-D-Gallagher ,
The line  p = p[torch.arange(p.shape[0]), target] selects, for each image in the batch, the predicted probability $p$ associated to that target. For example, if our input after softmax was p=[[0.3, 0.1, 0.6], [0.5, 0.4, 0.2]] and our targets were [2, 1], that line would return the array [0.6, 0.4].
In your case, for binary tasks, you could achieve the same result by returning $p$ if the target associated to the value is 1, and $1 - p$ otherwise, while keeping the rest of the code unchanged.
E.g., assuming input is the unnormalized scores and target is a vector of the same shape as input with values $\in$ {0, 1}, you could replace the first two lines of the forward method with:
p = torch.sigmoid(input)
p = torch.where(p == 1, p, 1 - p)


fe in bootalgo3

@s3alfisc
Is fe supposed to be a long variable of being in a particular entity/group (like hhids) or are they already supposed to be dummy variables?
https://github.com/s3alfisc/fwildclusterboot/blob/99f5ec51392ea70a61d0e54dc53b739de057b3b5/R/boot_algo3.R#L71

The fe variable is currently not used in boot_algo3() - it's just a placeholer in my R code. For the future and in wildboottest(), I think it should be a categorical series.


Armstrong checker

Is your feature request related to a problem? Please describe.
The background color of the page and the input box is same which is not so attractive.
Describe the solution you'd like
If the colors are different it would look better.
Describe alternatives you've considered
Changing the background color of the page.
Additional context

@TusharKesarwani @zugzwang03 please assign me this issue

Assign me this issue please

Do not create duplicate issue and pull request


circleci: automate release to publish pre-built binaries to GitHub

I am not sure if the Cruise org account has opted in GitHub Actions beta, but thats certainly worth taking a look later.


WIP Added integration test for bucket level rules creation

Signed-off-by: Stevan Buzejic<EMAIL_ADDRESS>Description
Adds integration tests that should cover different use-cases of detector creation by focusing on behavior during monitor creation
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #139 (a76b747) into main (68231e9) will decrease coverage by 0.03%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##               main     #139      +/-   ##
============================================
- Coverage     39.19%   39.15%   -0.04%
+ Complexity      891      890       -1
============================================
  Files           176      176
  Lines          6702     6701       -1
  Branches        815      815
============================================
- Hits           2627     2624       -3
- Misses         3834     3835       +1
- Partials        241      242       +1

Impacted Files
Coverage Δ

...lytics/transport/TransportIndexDetectorAction.java
0.00% <ø> (ø)

.../opensearch/securityanalytics/util/IndexUtils.java
60.46% <0.00%> (-0.90%)
:arrow_down:

...g/opensearch/securityanalytics/model/Detector.java
69.89% <0.00%> (-0.70%)
:arrow_down:

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


Feat/run config init

Runs init scripst which specify invoke commands to be run when first deploying. Checks if there wasn't previously an alias stored to determine when to run the init command. Allows one to specify a source account for the command by prefixing SOROBAN_ACCOUNT= or STELLAR_ACCOUNT=

Resolves https://github.com/loambuild/loam-sdk/issues/74

@chadoh comments have been addressed


Add PVsyst as option to ModelChain

ModelChain currently provides only the De Soto model when a single diode model is used. ModelChain should use a kwarg to select among available single diode models, and test for consistency of the module_parameters dict with the selected single diode model.

I need some advice on this one. ModelChain._dc_model can be pointed at ModelChain.singlediode. We need an additional keyword to select among the single diode models so that we call the correct calcparams .  Where should we attach this keyword?  I'd like to retain the simplicity of dc_model=singlediode and let the module parameters point to the appropriate model. Should ModelChain.infer_dc_model return the additional keyword?

It occurs to me that PVsyst has a long history, during which it has evolved.  So just using the name PVsyst would not be enough to identify an algorithm or model.
I also think we should anticipate that inferring a model from the presence or absence of certain parameters will not always work.
I'm not sure whether that helps you with your specific questions, but it seemed relevant.

I'll make certain to note 'v6' in the comments.  If we implement a different PVsyst model we can change the keywords.

Please take this with a grain of salt as I myself am still learning about the current ModelChain architecture. ModelChain.singlediode "feels" superfluous to me as an unnecessary/improper layer of wrapping. Recall that PVSystem.singlediode already wraps a "raw" function singlediode, and I think that the scale_voltage_current_power, belongs in the PVSystem wrapper, because it is a system-level property. Is there some way that we can more effectively abstract ModelChain.dc to simply call the appropriate PVSystem calculation, without worrying about if it's a singlediode or SAPM or PVWatts implementation? That said, it seems that a fundamental purpose of ModelChain is to translate weather info into the proper inputs for the dc model, so I am not claiming that ModelChain will be totally agnostic here, rather it's a simplification of the dc abstraction layers.

I think there is an even more fundamental disconnect here, which is that the single diode model signature pvsystem.singlediode(photocurrent, saturation_current, resistance_series, resistance_shunt, nNsVth, ivcurve_pnts=None) is not on parity with the other "dc" functions pvsystem.sapm(effective_irradiance, temp_cell, module) and pvsystem.pvwatts_dc(g_poa_effective, temp_cell, pdc0, gamma_pdc, temp_ref=25.).

One quick point: ModelChain calls the PVSystem methods, not the pvsystem functions. The method signatures are even more similar:

PVSystem.sapm(effective_irradiance, temp_cell, **kwargs)
PVSystem.pvwatts_dc(g_poa_effective, temp_cell)

Note, however, that PVSystem.sapm returns a DataFrame while PVSystem.pvwatts_dc returns a Series (assuming time series input as in ModelChain).
@thunderfish24 are you proposing that we need a method such as:
PVSystem.singlediode_from_weather(effective_irradiance, temp_cell, calcparams='desoto', **kwargs)
If so, I agree that this would simplify the higher level ModelChain code when implementing the PVsyst option.
At the risk of hijacking this issue, some of the discussion in #418 and #83(!) is relevant here.

Below is an idea, where the pvsystem.single_diode function is essentially the same as the current pvsystem.singlediode. Note the overloading of F and H vs. effective_irradiance and cell_temp, respectively, in the highest level method calc_model_dc of PVSystem, because if one is using a matched reference cell with a back-of-cell temperature sensor, then F and H are directly available, otherwise F and H would typically be first derived from SAPM's effective irradiance and cell_temp, like the other single diode models. This removes a lot of wrappers in PVSystem, but I haven't totally thought through the SAPM and PVWatts integration at this level or "all the things" into the higher level ModelChain.
class PVSystem(object):
...
    # This property would normally be set by PVSystem constructor
    self.model_dc = 'pvsyst_v6'  # or 'desoto' or 'campanelli' or 'sapm' or 'pvwatts'

    def calc_model_dc(self, overloaded_irradiance, overloaded_temperature):
        if self.model_dc ==  'pvsyst_v6':
            return single_diode(get_params_pvsyst_v6(overloaded_irradiance, overloaded_temperature, **self.module_parameters))
        elif self.model_dc ==  'desoto':
            return single_diode(get_params_desoto(overloaded_irradiance, overloaded_temperature, **self.module_parameters)
        elif self.model_dc ==  'campanelli':
            return single_diode(get_params_single_diode_campanelli(overloaded_irradiance, overloaded_temperature, **self.module_parameters)
        elif self.model_dc ==  'sapm':
            return sapm(overloaded_irradiance, overloaded_temperature, **self.module_parameters)
        elif self.model_dc ==  'pvwatts':
            return pvwatts_dc(overloaded_irradiance, overloaded_temperature, **self.pvwatts_parameters)

# These are module-level functions in pvsystem, without wrappers.
def single_diode(...):
    # Essentially the same as current singlediode function (not sure about system scaling here)
    ...
    return ...

def get_params_pvsyst_v6(effective_irradiance, cell_temp, **kwargs):
    ...
    return IL, I0, Rs, Rsh, NsVth

def get_params_desoto(effective_irradiance, cell_temp, **kwargs):
    ...
    return IL, I0, Rs, Rsh, NsVth

def get_params_campanelli(F, H, **kwargs):
    ...
    return IL, I0, Rs, Rsh, NsVth

def sapm(self, effective_irradiance, temp_cell, **kwargs)
    ...
    return ...

def pvwatts_dc(g_poa_effective, temp_cell, **kwargs)
    ...
    return ...

@wholmgren Note that I wasn't able to see your reply before posting the above architecture idea.

I think, e.g., get_coeffs_pvsyst instead of get_params_pvsyst_v6 would be closer to Cliff's suggested nomenclature w.r.t. the coefficients of the single diode equation to be solved (with the v6 in the documentation, as mentioned above).
Also, I do value incremental improvements, but I also think the current architecture is a considerably disconnected and has a lot of "glue" :) to wade through when trying to make further contributions.

I added an else case above that handles a custom, user-defined single diode model (sdm).

I pushed an initial prototype with more implementation details to #478. WARNING: The code is broken. I am now analyzing the changes to sapm and pvwatts_dc function APIs (inputs and outputs) to make them compatible, and then I will look into the ModelChain integration. I'll point out again that this eliminates a whole bunch of function wrappers in PVSystem (which I see as superfluous), and aims to unify the API for all the DC models in PVSystem, i.e., single diode, sapm, and pvwatts. Another design goal here is to retain modeling workflows relying on "low-level" function calls.
@cwhanse I added a placeholder for where the get_coeffs_pvsyst single diode model coefficients would be calculated.

I think the quickest solution will require yet more glue. Some thoughts for the longer term:
(1) If you want people to do something for free, then make the cost to them sufficiently low.
(2) Rails Conf 2012 Keynote: Simplicity Matters by Rich Hickey

@thunderfish24 Mark I like the direction your pull request is going. It's not a small change and I'm going to have a number of comments/requests, including some to dial back the scope of the changes in some cases. I'm concerned that your (1) remark indicates that we are not communicating well through the comment board. Happy to have a phone call with you, or private emails.

@cwhanse I appreciate you reaching out. At the bottom of it, I think I'm mostly just frustrated that I don't have the time to really offer up working prototype that is integrated across the stack, and I get even more concerned about the time-consuming "heavy lift" involved to (1) properly rally consensus around a ModleChain refactor, (2) actually implement the refactor with the understanding that it may not end up being better and/or accepted in the end, and (3) make for a sufficiently smooth transition for users using legacy code.
I'm taking a little breather here, so I may be quiet for a while. I'll make one last point for consideration on this topic. I am in good agreement with many that the base-level functionality in functions is a key foundation for pvlib. When it comes to a "developer API" for adding DC model functions, etc. into ModelChain or PVSystem, it could be a valuable design goal to make this the same as the "user API" for adding these model functions (e.g., https://pvlib-python.readthedocs.io/en/latest/modelchain.html#User-defined-models). I have seen several software projects where the two API's are different, meaning both have to be understood and maintained and usually one ends up worse off than the other.

@thunderfish24 well I appreciate the frustrations about time and about getting consensus on design changes.  If you'd like, and there's a practical way to do it, feel free to share your partial code with me (by email or other technique). I think we have reached enough of an agreement on direction of this change that I could push it further along.

Closed via #555


Ensure Accumulo logs good error messages for bad files.

Recently observed a tablet server logging a message about a file it could not open during split.  Neither the filename or tablet were logged, making tracking the issue down difficult.
Was thinking of writing  test like the following to flush this problem out.
foreach fileSize : 1..256
   foreach operation : MAJC, MINC, SPLIT, SCAN
       * Create random file of size fileSize
       * Replace a tablet file with random file
       * Execute operation
       * Ensure filename show up in logs (filename should be unique for each loop iteration).

I am going to try this one.  Are there any existing tests or code sections that have sections similar to what you have outlined?  Also, where you expect this test be added?

I was just thinking of writing some throw away code that ran the test and then manually inspecting log messages to ensure good output.  It would be nice to have regression test, but I am not sure what the best way to do this is. Seems like it would require creating a standard way for ITs to inspect servers process log files.  Not sure if that infrastructure exists for ITs.

I am not sure I am ready for this ticket, so I am going to work on something else.


Review scrollbar-stable

From @willmcgugan: I have a suspicion that scrollbar-stable doesn't work, or (fairly likely) I don't understand what it does.

I think it does work, or at least it did work as of a couple of months ago. I believe I use it in my file manager.

Yeah, I think I understand it a bit more now. Does seem to do something useful.


Investigate Sound Sensors

One possible way of playing simon says is by the sounds.
Investigate sound sensors and what it would take to process the sound signals.

We have decided to no longer pursue sound sensors, instead we have a working solution with photo resistors


Make grammar and readability improvements to documentation

Coverage decreased (-8.2%) to 84.576% when pulling b4e2ba1ea5b10ddf3dc694409630f25fece223bd on chukShirley:docs-grammar-readability-fixes into b47e9a2d8baf36d579eda26b25d0c0a30a6a170d on ZF-Commons:master.

Can you please rebase against latest master as test do not pass :(.
Thanks!

Coverage remained the same at 92.825% when pulling 4e642e116b1ea875dd1650fdb2b7f86b6394e800 on chukShirley:docs-grammar-readability-fixes into 1f2b0c69d97f9afd331b0092f7d252ee4d1cf161 on ZF-Commons:master.


New-feature-branch : Successfully pushed the full AES-256 and PBKDF2 encryption enhancements

Hi @jindalpriyanshu101 and @jinx-vi-0,
I have successfully pushed the full AES-256 and PBKDF2 encryption enhancements in the new-feature-branch. You can find the changes in the pull request I created.
Thank you for your guidance throughout this process!
Best regards,
Ishrat noori :)

Well, looks like things are messed up as you kight have synced the fork before raising this PR.
I can see 517 file changes, and its next to impossible to find your actual changes in such case..
I'd recommend you to delete this branch, and redo your changes in a new up-to-dated branch. This way you'll not face any merge conflicts and it'll be easy for us to review your changes @Ishratnoori.
I appreciate your active cooperation till now ;D

Can i create a pull request?

Can i create a pull request?
its displaying like CANT AUTOMATICALLY MERGE
what should i do?

Yup, you should be creating a pull request only.


2017 copyright, fixes #76

Codecov Report

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

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


Phone Validation Does Not Work

The email validation works great on my  screen. However, the phone validation always displays "error message" for these valid phone numbers: 1-555-111-3333,<PHONE_NUMBER>, or<PHONE_NUMBER>. Here is the code that I used:

Thank you in advance for your support.
Wen Hoang

in the latest version,<PHONE_NUMBER> and<PHONE_NUMBER> are correct. But the 1-555-111-3333 is not. You can see the regexp
/^(\(?[0-9]{3}\)?)((\s|\-){1})?[0-9]{3}((\s|\-){1})?[0-9]{4}$/

Phone validation is not working for me. If i use phone="US" on the input element, then validation will work only for numbers like<PHONE_NUMBER> but not<PHONE_NUMBER> or<PHONE_NUMBER>. Using phone="en-US" or [phone]="'en-US'" throws an error message saying "Unable to get property '9' of undefined or null reference" in the get_types function. I think that's within the LibPhoneNumber library. Just wondering if anyone else was seeing this.

@mikelt21 same for me: TypeError: Cannot read property '9' of undefined.

same for me: TypeError: Cannot read property '9' of undefined.

@mikelt21  you have a solution?

Having the same issue as @mikelt21

Getting this error after i upgraded to Angular 5 during phone validation.
ERROR TypeError: Cannot read property '9' of undefined
at get_types (metadata.js:105)
at Object.is_valid (validate.js:34)
at Object.isValidNumber (index.es6.js:42)
Tried phone="US" but it doesn't work and breaks down. Unable to complete the forms with phone #.
Please Can anyone help?


Add DotEnv::parse()

Description
Currently DotEnv handles all its functionality in one go, using load(). This splits out the function so parse() returns the key =>value array and then load() still handles setting the variables. This allows external parsing of .env files (particularly for testing purposes). All tests and usage should remain consistent.
Checklist:

[X] Securely signed commits
[X] Component(s) with PHPdocs
[ ] Unit testing, with >80% coverage
[ ] User guide updated
[X] Conforms to style guide

I'm baffled by this error. This is working locally. @lonnieezell any ideas? anyone?

Check this. Might be helpful
https://devcentral.nasqueron.org/D1604

@MGatner I created below PR with all your changes, except parse() method return null and array. Please have a look on my PR:
https://github.com/codeigniter4/CodeIgniter4/pull/2589

That's a baffling change to get tests working but I will give it a shot.

Ohhhh I see, I had specified array return type but was returning a boolean. Thanks for catching that! Very strange error message but I'm hopeful that was all.

Ohhhh I see, I had specified array return type but was returning a boolean. Thanks for catching that! Very strange error message but I'm hopeful that was all.

Cool, i hope now your PR will be green also. I will close mine :)

Leave yours! I'll merge it. Just making sure these tests pass (look good) to be sure, then I'll close this.

@musmanikram Your PR has unsigned commits so I actually can't merge it. I will merge this one but another special thanks for troubleshooting and solving this issue!

@MGatner i am more than happy to help and contributing a to a framework which i am using from last 7 or 8 years


Correct wcwidth computation for pretty outputs.

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en
https://github.com/ridiculousfish/widecharwidth    license is pretty clean.
As PrettyBlockOutputStream and VerticalRowOutputStream are consumed by human, readability excels performance.
Before,

After,

Great, we always wanted it!

Missing test.
Test should have double-width characters (Chinese), zero-width characters,
two variants of Russian letter ё:
ё - d191 in UTF-8
ё - d0b5cc88 in UTF-8

@alexey-milovidov almost done. I don't find anything related to client testing. What should one look like?

two variants of Russian letter ё:

Can you post a csv file with that letter? I'm not sure if I can generate it correctly.

@amosbird FYI,  I hope that'll be helpful : )

@zhang2014 Thanks. Those ёs are all of width 1 from what I can tell. I assume there is a variant that need special treatment.

hmm, simple copy paste of that ё just works. Looks a bit weird in terminal though

OK, updated 298's result


fix: remove twind from import map

closes https://github.com/denoland/fresh/issues/1379
There seems to be a bit of confusion about the "new" twind plugin. twind.ts is the old plugin, which is what the issue is complaining about. The actual new plugin is twindv1.ts which has a nice line like import { stringify, virtual } from "https://esm.sh/@twind/core@1.1.3";. The old plugin should probably also do this. I don't see any reason why we should dirty the import map.
This PR changes the old plugin to use absolute imports. I suppose this could cause problems if someone has changed their import map to use a newer version of twind... But they should probably just use twindv1.ts at that point instead. Thoughts?

Hi @marvinhagemeister, I thought I would take a look at Fresh again because it's been too long. My favorite way of getting back to a project is by dusting off some old PRs. Fortunately some of mine are still floating around.
What do you think about this? I know there's the plan to switch to uno, but that has also been planned for a while. This seems like a small simplification in the mean time.

Closing due to migration to tailwind.


Specify minor version of pydantic to avoid dependency issue

What kind of change does this PR introduce?
Bug fix related to https://github.com/supabase-community/gotrue-py/pull/286

Thanks!

@J0 This PR got merged to the main branch but was not released. Can you do a minor release with the latest main branch?

@J0 I didn't realize this wasn't in a release yet. That's lucky. Please don't cut any more releases until we can revert or add a compatibility layer

@olirice that's sad that other libs still in 1.0. Got it.


Add option for sequencing centre in BAM file

Bowtie 1
Output options:
--sam-RG <text>
Add  (usually of the form TAG:VAL, e.g. ID:IL7LANE2) as a field on the @RG header line. Specify --sam-RG multiple times to set multiple fields.
--sam-RG is ignored unless -S/--sam is also specified.
Bowtie2
SAM options:
--rg
Add  (usually of the form TAG:VAL, e.g. SM:Pool1) as a field on the @RG header line.
e.g.:
--rg CN:nameofourgroup

Moved to nf-core


Dockerfile and readme changes to reflect.

This should be ready for dockerhub integration.
Start at step 4
You might need to updatethe readme to reflect your true dockerhub username.
Line 167 and 170 in the readme.

This has now been merged into master. Thank you so much for your help, Urothis!


Rename master to a new name [FEEDBACK REQUIRED]

Context
Master is considered offensive by some people, considering it a reference to slavery. To make sure people are not offended we shouldn't be using a different name.
Goal
Replace master mentions with new name:
Options:

the-one
core
center
main
trunk
2b-released

Opinions on what name to take, will take the most voted for in 7 days?

my first option is master.
my second option would be core.

currently favoring the-one myself

Icah voted for main on linkedin

Ich would say the one

1st choice: the-one
2nd choice: main

I really only see main these days and that’s my preference too.

the-one is top tier for me

core 1
the-one 4
main 3


Feat/add code comments

Description
This PR adds code comments where needed, also renamed get-events.js to get-events-data.js because that naming sounds more reasonable. Also put every data-related helper to src/lib instead of lib because it is more src-code bound then for instance the render function which we use in our serverless functions.

Zal ik even wachten met deze mergen tot die van Gijs erdoorheen is?

Yeeted


sources.snippets.extended_filetypes snippet configuration not being used

Make sure you have done the following

[X] I have updated to the latest version of blink.cmp
[X] I have read the README

Bug Description
I recently upgraded to the latest version of blink.cmp and modified my config to the latest schema, but am noticing that setting sources.snippets.extended_filetypes seems to do nothing, and I do not see my javascript snippets loaded in typescript buffers, for example.
When I log files from this line I can see all of my custom snippets are loaded as search paths:
https://github.com/Saghen/blink.cmp/blob/765ee4cfb6d71e9d88a27f64f406251f3aa85fac/lua/blink/cmp/sources/snippets/scan.lua#L8

But when I log the configuration and default configuration here, I can see that my snippets config is {}, and while the default snippets config is as expected:
https://github.com/Saghen/blink.cmp/blob/765ee4cfb6d71e9d88a27f64f406251f3aa85fac/lua/blink/cmp/sources/snippets/registry.lua#L26

Ex. of custom TODO snippet being loaded in a javascript file

Ex. of this same TODO snippet not being loaded in typescript file:

Here is my nvim/snippets/package.json:
{
  "name": "my-snippets",
  "contributes": {
    "snippets": [
      {
        "language": "all",
        "path": "./all.json"
      },
      {
        "language": "lua",
        "path": "./lua.json"
      },
      {
        "language": "sh",
        "path": "./sh.json"
      },
      {
        "language": "yaml",
        "path": "./yaml.json"
      },
      {
        "language": "css",
        "path": "./css.json"
      },
      {
        "language": "ruby",
        "path": "./ruby.json"
      },
      {
        "language": "json",
        "path": "./json.json"
      },
      {
        "language": "fish",
        "path": "./fish.json"
      },
      {
        "language": "norg",
        "path": "./norg.json"
      },
      {
        "language": "javascript",
        "path": "./javascript.json"
      },
      {
        "language": "html",
        "path": "./html.json"
      },
      {
        "language": "toml",
        "path": "./toml.json"
      },
      {
        "language": "zsh",
        "path": "./zsh.json"
      }
    ]
  }
}

And my nvim/snippets/javascript.json file for example:
{
  "TODO": {
    "body": "// TODO: ${0}",
    "prefix": "td"
  },
  "Debug Log": {
    "body": "console.log(\"${1}: \", ${0})",
    "prefix": "dl"
  },
  "Debugger": {
    "body": "debugger;",
    "prefix": "db"
  },
  "ESLint Disable": {
    "body": "/* eslint-disable */",
    "prefix": "ed"
  },
  "ESLint Ignore": {
    "body": "/* eslint-ignore ${0} */",
    "prefix": "ei"
  }
}

Relevant configuration
require("blink-cmp").setup({
  keymap = {
    ["<C-u>"] = { "scroll_documentation_up" },
    ["<C-d>"] = { "scroll_documentation_down" },
    ["<C-n>"] = { "select_next" },
    ["<C-p>"] = { "select_prev" },
    ["<C-e>"] = { "accept" },
    ["<C-space>"] = { "show" },
    ["<C-q>"] = { "hide" },
    ["<C-k>"] = { "show_documentation" },
    ["<C-j>"] = { "snippet_forward" },
    ["<C-h>"] = { "snippet_backward" },
  },
  nerd_font_variant = "mono",
  highlight = {
    use_nvim_cmp_as_default = true,
  },
  windows = {
    documentation = {
      auto_show = true,
    },
  },
  sources = {
    completion = {
      enabled_providers = { "lsp", "path", "snippets", "buffer", "lazydev" },
    },
    providers = {
      lsp = { fallback_for = { "lazydev" } },
      lazydev = { name = "LazyDev", module = "lazydev.integrations.blink" },
    },
    snippets = {
      name = "Snippets",
      module = "blink.cmp.sources.snippets",
      score_offset = -3,
      opts = {
        friendly_snippets = true,
        search_paths = { vim.fn.stdpath("config") .. "/snippets" },
        global_snippets = { "all" },
        extended_filetypes = {
          eruby = { "ruby", "javascript" },
          typescript = { "javascript" },
          vue = { "javascript", "html", "css" },
        },
        ignored_filetypes = {},
        get_filetype = function(_)
          return vim.bo.filetype
        end,
      },
    },
  },
})

neovim version
NVIM v0.11.0-dev-1301+ge8e3b443f8-Homebrew Build type: Release LuaJIT 2.1.1732813678 Run "nvim -V1 -v" for more info
blink.cmp version: branch, tag, or commit
v0.7.3

Looks like you placed the snippets configuration at sources.snippets instead of sources.providers.snippets

Doh, that makes sense. Thanks for the help.


Image uploads not working

The upload() method doesn't seem to work. Trying
bot.upload('File:Example demo image', './path/example.png', 'test upload').then(console.log, console.log);

gives something like:
{
  upload: {
    result: 'Warning',
    warnings: { badfilename: 'Example_demo_image.png' },
    filekey: '17fs8hruecag.6ar5l2.26892.png',
    sessionkey: '17fs8hruecag.6ar5l2.26892.png'
  }
}

The image hasn't actually been uploaded. Changing the file name doesn't change anything.
I had tried this out on Test Wikipedia, if that's relevant.

We are using mwbot with MW 1.31 (LTS). It has not been tested with more current wikis. We might again work on mwbot when MW 1.35 becomes more relevant for us.

works with current integration tests.


[#111875397] Trigger GDS_Production_Backup after Puppet deployment

Puppet is now hosted on public GitHub, so we should back it up to GitHub Enterprise like we do with all of our other apps.

:+1: LGTM, merge when ready

:+1:


Adjust/Fix "Showing results for" dropdown

no dropdown if only a single xml file was uploaded
edit style of dropdown to fit overall page design

Case of uploading only a single xml could be neglected. Use case is definitely for multiple files.
What style improvements?

not a good idea to neglect single xml uploads in case of a quick search or testing purpose.
reg. style improvements:
what about nr 19 from http://t3n.de/news/10-freie-html5-435735/
(adjust color & font to header)


Support of Shelly EM Gen1 device with the Shelly3EmExporter

Hello,
I noticed that it is possible to collect metrics from a Shelly EM Gen1 device with the Shelly3EmExporter by monitoring only 2 indexes and not collecting the current.
Here an excerpt of the Shelly3EmExporter config for a Shelly EM:
  targetMeters:
  - index: 0
    ignorePower: false
    ignoreVoltage: false
    ignoreCurrent: true
    ignorePowerFactor: false
    ignoreTotal: false
    ignoreTotalReturned: false
  - index: 1
    ignorePower: false
    ignoreVoltage: false
    ignoreCurrent: true
    ignorePowerFactor: false
    ignoreTotal: false
    ignoreTotalReturned: false
  ignoreRelayStateMetric: false

From the documentation of the Shelly EM Gen1 API at https://shelly-api-docs.shelly.cloud/gen1/#shelly-em-emeter-index, you can notice that no current is returned, but we have an additional "reactive" attribute returning the "Instantaneous reactive power".
I am then wondering about the best way to officially support this device and compute a current:

Improve this Shelly3EmExporter to collect the "reactive" metric when available and compute the current when it is not available (based on the power, voltage and the power factor)
Or rather do so through a new exporter?

Thanks

I think it would be better to keep it very simple and go with option 2. 🙂
1 Device = 1 Exporter
This is what people usually expect and search for and keeps it consistent with the current approach.
It would be a bit confusing to direct someone looking to export a Shelly EM to use the Shelly 3 EM Exporter.
As for calculating values it can be added and made configurable in the config file.
Something like "calculateCurrent: true" underneath the ignores (per-meter).
The best approach is probably duplicating the 3 EM Exporter as a new "ShellyEmExporter" project and modifying accordingly.
As I am sure you probably already knew 👍

All looks good 🙂
The only small change is the config name.
Initially, I made a mistake in mixing naming conventions and having config names prefer device names.
Later on, I realized that and started enforcing camelCase.
It's better not to touch existing exporters as that would cause issues after updating existing installations.


struct literal syntax does not work with custom dialect

The following should work, but instead fails with Expected an expression:, found: { at Line: 1, Column 8
use sqlparser::dialect::Dialect;

#[derive(Debug)]
pub struct MyDialect;
impl Dialect for MyDialect {
    fn is_identifier_start(&self, ch: char) -> bool {
        ch.is_alphabetic() || ch == '_'
    }

    fn is_identifier_part(&self, ch: char) -> bool {
        ch.is_alphabetic() || ch.is_ascii_digit() || ch == '$' || ch == '_'
    }

    fn supports_filter_during_aggregation(&self) -> bool {
        true
    }

    fn supports_group_by_expr(&self) -> bool {
        true
    }

    fn supports_named_fn_args_with_eq_operator(&self) -> bool {
        true
    }
}

fn main() {
    let sql = "select {'a': 1}";
    let dialect = MyDialect;
    let parser = sqlparser::parser::Parser::new(&dialect);
    assert!(parser.try_with_sql(sql).unwrap().parse_statement().is_ok());
}

FWIW, it seems like this is due to the usage of dialect_of! throughout the parser code.
It seems like either the dialect itself needs to be in control of supported syntaxes, or a custom dialect should just be treated as an extension of GenericDialect.
I think the latter would be a bit easier as dialect_of is used ~100 times, so that would be a lot of functionality to expose to the Dialect trait.

Looking more closely at the code, it looks like you can "extend" a dialect by implementing the Dialect::dialect method
impl Dialect for MyDialect {
    fn dialect(&self) -> std::any::TypeId {
        std::any::TypeId::of::<sqlparser::dialect::GenericDialect>()
    }


Fix 404 Page Redirection for Invalid Routes

This pull request improves the handling of invalid routes by implementing a proper redirection to the 404.html page for any invalid or non-existent paths on the website. Previously, navigating to a non-existent route would display a "File not found" error, causing a poor user experience. Now, the application gracefully redirects to a custom 404 page, improving the overall usability and consistency.
Before

After
Please refer to the video below for a detailed overview and clear understanding
https://github.com/user-attachments/assets/34d434d6-0621-4a3a-99c6-c840437aeb43
Please merge it @ANSHIKA-26

Mention issue number

Please review and add label @ANSHIKA-26


"Unable to load OpenGL"

I could compile the project, but it fails to run with Unable to load OpenGL

That would emitted by this code: https://github.com/tsherif/space-shooter.c/blob/master/src/platform/linux/linux.c#L103-L148
Can you find out which step is failing?

How would I figure that out.

You can step through it or change the print statements so they're all different.

Ok, doing that tells me it's from this: GLXFBConfig *fbc = glXChooseFBConfig(display, DefaultScreen(display), visualAtt, &numFBC);

Does it work if you delete these 4 lines? https://github.com/tsherif/space-shooter.c/blob/master/src/platform/linux/linux.c#L111-L114

I get
X Error of failed request:  GLXBadFBConfig
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  0 ()
  Serial number of failed request:  44
  Current serial number in output stream:  44

TIL you have to make sure your window and GL context use the same FB config: https://github.com/tsherif/space-shooter.c/commit/426b9355bbea00fc87101389cb763403152ff78f
Can you try again and let me know if this helps?

Now I get:
No framebuffer config found.
Unable to load OpenGL.

Ok back to the original error. What if you remove the parameters for multisampling?
If that doesn't work, can you run glxinfo on your machine and paste the output here?

X Error of failed request:  GLXBadFBConfig
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  0 ()
  Serial number of failed request:  45
  Current serial number in output stream:  45

This looks like your problem:
    Preferred profile: compat (0x2)
    Max core profile version: 0.0
    Max compat profile version: 2.1

space-shooter.c uses a 3.3 core profile. What kind of machine are you running this on?
That said, I should add better error messages if the required OpenGL version isn't supported. I'll update this ticket to be about that.

I'm on a Macos M1 VM. The patch to Qemu doesn't support OpenGL above 2.
On Mon, Dec 13, 2021, 8:46 PM Tarek Sherif @.***> wrote:

This looks like your problem:
Preferred profile: compat (0x2)
Max core profile version: 0.0
Max compat profile version: 2.1

space-shooter.c uses a 3.3 core profile. What kind of machine are you
running this on?
That said, I should add better error messages if the required OpenGL
version isn't supported. I'll update this ticket to be about that.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/tsherif/space-shooter.c/issues/2#issuecomment-993077845,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALXWUYERY2I4VYZUYABKALTUQ2OXXANCNFSM5J3SXKMA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Added improved error logging in c990e770880a0c6c7e7d26d7e83a12ef01451264 and c130846fc9ef308b608a18f393db7c15e9491c47.


How to play this toys? could somebody show me a wiki !

https://code.google.com/archive/p/androguard/wikis


Improving hover effects

The hover effect can be improved here.
@devjainofficial assign this to me so that i can help

@ADARSHsri2004 You can Work on it.


fix(connlib): allow 1s ACK for packet before refreshing DNS

Currently, we refresh DNS mappings when:

We translate a packet for the first time
There are no more incoming packets for 120 seconds
There is at least 1 outoing packet in the last 10 seconds

The idea was to coordinate with conntrack somehow, to expire DNS translation at the point where the NAT session of the OS stops being valid. That way, if the triggered DNS refresh changes the resolved IPs it would never kill the underlying connection.
However, TCP sessions by default can last for up to 5 days! And I have no idea how long for ICMP. To prevent killing these connections, we assume that for TCP and ICMP packets will elicit a response within 1s. The DNS refresh for a translation mapping that hasn't seen any responses is thus delayed by 1s after the last packet has been sent out.
To get an idea of how this works you can imagine it like this
|last incoming packet|------ 120 seconds + x seconds ----|out going packet|----1 second ----|dns refresh|
However this another case where dns refresh is triggered, in this case the same packet triggers the refresh period and the period where it was used in the last 10 seconds
|last incoming packet|------  111 seconds ----|out going packet|---- 9 seconds ----|dns refresh|
The unit tests should also make clear of when we want to trigger dns refresh and when we don't.

This has a lot of edge cases :sob: ! Please review carefully @thomaseizinger

@thomaseizinger alright! should be quite easier to read now, please let me know what you think