Migration to Argo CD

@IanKWatts Is devops/base/sa/vault.yaml  needed still? I though @ShellyXueHan mentioned the SA is no longer required because CCM creates them by default now.

@IanKWatts Is devops/base/sa/vault.yaml  needed still? I though @ShellyXueHan mentioned the SA is no longer required because CCM creates them by default now.

@jleach I'm not sure if that service account is still required - or I have forgotten, if Shelly told me.  It still exists in each of the namespaces.
This PR is not ready to merge yet, but Shelly and I will migrate Prod to Argo CD this week, and I wanted to review the changes and address any remaining issues first.  Dev and Test have already been migrated to Argo CD.

@IanKWatts Might want to convert it to be a Draft PR then. Looks like @ShellyXueHan has a PR #16 open to remove the SA.

Vault operator is managing those services accounts now, so we don't recreate them here anymore. I just comment out but haven't deleted them yet, more of keeping them as a backup for now.


New page: Getting Started with transactional emails

Define and give examples of Transactional emails. Talk about how customers should use SendGrid for Transactional emails, link to the Transactional Email User Guide, and link to the APIs. Create the page in For Developers > Sending Email > V3 API, and use the API getting started page as a model.

@ksigler7 Hi! I wish to be assigned this issue 😃

@ksigler7 Hey! Very interested! Marketing Automation background here!

@tanhengyeow and @chrisbutler - awesome guys! would you want to work together on this? you could hash it out here in the comments


Auto kick for ubuntu/debian

This updates the ubuntu and debian modules.  Manual and auto should both be working.  Chain sets the ipxe values from u.kickstart.rax and passes thru to debian/ubuntu modules etc.

Shelving for now


3.9

You plan to deploy a website to Azure. The website will be accessed by users worldwide and will
host large video files.
You need to recommend which Azure feature must be used to provide the best video playback
experience.
What should you recommend?
A. an application gateway
B. an Azure ExpressRoute circuit
C. a content delivery network (CDN)
D. an Azure Traffic Manager profile

C


Can't run Rust

I get this error every time I try to run Rust code.
error: could not find Cargo.toml in /home/user or any parent directory
My cargo path is set in the settings.
I think this might be looking for a Rust project where one doesn't exist.

Same problem, can also get the error if the cargo folder isn't right (or is)
Error: spawn C:/cargopath  ENOENT

Same problem, can also get the error if the cargo folder isn't right (or is)

You should be pointing it to the cargo executable , not it's folder.

Fixed with release 0.18.0.


用你编译好的报错了

C:\Users\Xab\Desktop\tool\tream>main.exe
Traceback (most recent call last):
File "main.py", line 114, in
File "main.py", line 101, in main
TypeError: cannot unpack non-iterable NoneType object
[PYI-5688:ERROR] Failed to execute script 'main' due to unhandled exception!
[PYI-6256:WARNING] Failed to remove temporary directory: C:\Users\Xab\AppData\Lo
cal\Temp_MEI62562

看一下你的json


[SPARK-35921][BUILD] ${spark.yarn.isHadoopProvided} in config.properties is not edited if build with SBT

What changes were proposed in this pull request?

This PR changes SparkBuild.scala to edit config.properties in yarn sub-module in build with SBT like as build with Maven does.
Why are the changes needed?

yarn sub-module contains config.properties.
spark.yarn.isHadoopProvided = ${spark.yarn.isHadoopProvided}

The ${spark.yarn.isHadoopProvided} part is replaced with true or false in build depending on whether Hadoop is provided or not (specified by -Phadoop-provided).
The edited config.properties will be loaded at runtime to control how to populate Hadoop-related classpath.
If we build with Maven, these process works but doesn't with SBT.
If we build with SBT and deploy apps on YARN, the following warning appears and classpath is not populated correctly.
21/06/29 10:51:20 WARN config.package: Can not load the default value of `spark.yarn.isHadoopProvided` from `org/apache/spark/deploy/yarn/config.properties` with error, java.lang.IllegalArgumentException: For input string: "${spark.yarn.isHadoopProvided}". Using `false` as a default value.

Does this PR introduce any user-facing change?

No.
How was this patch tested?

Built with SBT and extracted config.properties from the build artifact and confirmed ${spark.yarn.isHadoopProvided} was correctly edited with trueorfalse`.
cat org/apache/spark/deploy/yarn/config.properties
spark.yarn.isHadoopProvided = false                                # In case build with -Pyarn and without -Phadoop-provided
spark.yarn.isHadoopProvided = true                                 # In case build with -Pyarn and -Phadoop-provided

I also confirmed the warning message shown above no longer appears.

cc @dbtsai FYI. It's more a followup of https://github.com/apache/spark/pull/28788

LGTM

Test build #140360 has started for PR 33121 at commit c4b2dd2.

LGTM too.

Merged into master for Spark 3.2 release. Thanks.

Test build #140360 has finished for PR 33121 at commit c4b2dd2.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
sealed trait FieldPosition extends LeafExpression with Unevaluable
case class UnresolvedFieldPosition(
case class ResolvedFieldName(path: Seq[String], field: StructField) extends FieldName
case class ResolvedFieldPosition(position: ColumnPosition) extends FieldPosition
case class ArraysZip(children: Seq[Expression], names: Seq[Expression])
case class AlterTableAlterColumn(
case class ShowCreateTableExec(

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/140360/


Left clicking results in the window flashing for a second and vanishing.

Hey posted on Reddit before about the left clicking issue  (tried the 1.1 version and the latest beta), it might be something on my end, this is a pretty minor issue and I usually work around it by just holding right click and clicking the name of the bookmark.

When I click on a bookmark name, the sub-component window flashes for a fraction of a second. The 'clear' button either has a grey or blue selection outline around it.
If (each time I click on a bookmark-name), I click an empty space in the black container box (between bookmark names or to the right of them), then click on the name, they load as intended with holding left click. If I try to click one without doing this, the name just flashes and instantly disappears.
Holding right click down and left click also works. I guess the window tries to grab focus sometime after the bookmark is clicked?
Also just to add I wouldn't really worry about this unless someone else has issues, it could just be me and holding right click isn't really an issue for me. Just figured I'd post some more information in case it became a widespread issue at some point.

Thanks for the details. Yes, seems to be a focus issue. The game client sometimes behaves in a weird way, e.g. when you win-D to minimize it, it immediately maximizes whenever you focus another window or panel. The next release will include another attempt to fix that. Should be out today. It's strange this issue is so inconsistent.

Same thing with 1.15.2-beta. But It really might just something weird on my end at this point and It doesn't really impact me anyway.
Also btw not sure if you intentionally or unintentionally left out the icons, just in case it was accidental the "img\Archnemesis Icons" directory+icons haven't been added to the 1.15.2 -beta.

Thanks for the heads-up, totally missed that. Still getting used to this GitHub business, lol. What kind of mouse are you using? It seems the script doesn't recognize your click as a regular left-button click.

So with the code like that, the middle two recipes (brine/shakari) generally work and the end two still flash and disappear, which is really odd.

Try replacing the KeyWaits with a while-loop:
while GetKeyState("LButton", "P")
sleep, 100

It should be functionally the same but may improve things.


Remove "beta" from library.properties "name" field

Will open issue within https://github.com/arduino/library-registry/issues to update the name of the repository/library once a new release is cut.

Thanks for the idea, will look into how to do this within the actions release workflow.


Vapor3 Add environment indicator

Add an indication of the environment the admin panel is running on to make it clear to the user.

Included in https://github.com/nodes-vapor/admin-panel/releases/tag/2.0.0-beta.7


How to call GetSasUriAsync

How to call GetSasUriAsync method .No documentation is provided

Feel free to browse source code and contribute to the documentation.


timed temporal operators

Does the project support timed temporal operators, such as Eventually0, 3, where a = stl.Predicate("a") > 0 ?
Thanks!

Hey @yuanzhou-yzhou, I think it should (but I haven't tested the python binding for the interval argument yet). You would essentially do
phi = stl.Eventually(a, (0,3))

Let me know if this works 😄 .
P.S. I am currently working on a 0.2.0 version of the library with better internals and bindings, so I will try to make the support a little better there.

Hi @anand-bala, thank you for your reply. I tried it, but unfortunately, the program is crashed with the error "Segmentation fault (core dumped)".


excessive delay on new deployment where invoker does not appear to receive kafka message from controller

Observed on master branch, running locally on a mac with docker-machine.
Steps to reproduce:
> redo setup prereqs couchdb initidb deploy
> wsk action invoke /whisk.system/samples/echo -u $(cat ansible/files/auth.guest)

Watch controller logs to confirm that kafka message posted to message bug:
> wskadmin syslog get 29 controller
...
[2016-06-21T14:50:18.584Z] [INFO] [#tid_29] [LoadBalancerService] user has 1 activations posted. Posted to invoke0[0][0]

Watch invoker logs and confirm that somewhere between 4-5 minutes later, the invoker should pick up the kafka message and invoke the action:
> wskadmin syslog get 29 invoker0 # repeat several minutes later
[2016-06-21T14:54:45.791Z] [INFO] [#tid_29] [Dispatcher] matching message to 1 handlers: invoker

@psuter @perryibm

@lehoanganh @domdom82 Please review the commit above (https://github.com/psuter/openwhisk/commit/7f8acd7def29f99d75de204fecd1a1e2ed6c8df4). The ansible roles for kafka and zookeeper were not correct and did not preserve the semantics of isAlive. This caused some combination of zookeeper/kafka misconfiguration that surfaces in the invoker with the symptom described above. This symptom seems to resolve itself after several minutes. We have not yet completely explained the issue but have strong evidence that restoring isAlive semantics avoid the problem. For pedagogy, we should further explain the observed effect.
The reason this symptom does not surface in Travis CI or local tests (unless you repeat the steps outlined above) is that there are several minutes worth of tests that run before the first test that required the invoker to be involved.
All roles should be checked for semantic equivalence with isAlive. @psuter and I fixed the two immediate ones that are impacting/blocking work related to streaming db support (needed for zip file uploads and the like). You should verify the other components are not equally giving false positive "is alive" responses.
FYI @jeremiaswerner

Reopened - observing a similar issue with controller on active ack.

Bumping zookeeper/kafka gap hid the issue again. This is unsatisfactory - need to dig and understand what's going on with zk/kafka at startup.
@perryibm

you meant, if the changes in open, the blue deployment is stil failed?

I observed this on my own local deployment on ubuntu rather than mac.  I did not experience the controller->invoker problem but repeatedly have run into the active ack (invoker->controller) where it takes 5 minutes before the path starts working - resulting in all blocking calls taking 30 seconds.

I tested Kafka <IP_ADDRESS> (scala 2.11) and changing the server alone did not fix this.  However, using the <IP_ADDRESS> client libs appear to have fixed the problem.  I will be retesting this and adding a new unit test with a name like (aaa.aaa....) so that it runs first as soon after deploy as possible.

Unfortunately retesting showed the problem is still present and now appears to be hitting the controller->invoker path instead.  This is slightly comforting because at least it's not specific to a path which makes no sense.  But back to the drawing board....

So it's not that the period of badness is 5 minutes.  Every single post is held back for about 5 minutes.  This was obscured (mitigated) by active ack timing out so that 30 seconds seem like the timing to look for.
[2016-06-30T18:03:49.471Z] [INFO] [#tid_65] [LoadBalancerService] user has 1 activations posted. Posted to invoke0[0][0]
[2016-06-30T18:05:01.685Z] [INFO] [#tid_72] [LoadBalancerService] user has 2 activations posted. Posted to invoke0[0][1]
[2016-06-30T18:06:09.062Z] [INFO] [#tid_77] [LoadBalancerService] user has 3 activations posted. Posted to invoke0[0][2]
[2016-06-30T18:07:17.123Z] [INFO] [#tid_86] [LoadBalancerService] user has 4 activations posted. Posted to invoke0[0][3]

[2016-06-30T18:07:41.818Z] [INFO] [#tid_65] [Dispatcher] matching message to 1 handlers: invoker
[2016-06-30T18:07:41.898Z] [INFO] [#tid_72] [Dispatcher] matching message to 1 handlers: invoker
[2016-06-30T18:07:41.899Z] [INFO] [#tid_77] [Dispatcher] matching message to 1 handlers: invoker
[2016-06-30T18:07:41.902Z] [INFO] [#tid_86] [Dispatcher] matching message to 1 handlers: invoker
[2016-06-30T18:07:45.744Z] [INFO] [#tid_88] [Dispatcher] matching message to 1 handlers: invoker

This is a frustrating bug....

The problem doesn't occur every time but seems to happen most of the time. (> 75%)  Having to re-deploy the system repeatedly makes this a time-consuming experiment.
Upgrading to kafka 0.10 (both kafka and client libs) apparently did not affect this bug.
While this problem was happening (in those runs), I was able to run a producer/consumer pair (https://github.com/mapr-demos/kafka-sample-programs.git) on another topic during the 5 minute period without any bad behavior.  This suggests there is nothing wrong with the kafka and zk containers but that the fault lies with the client libraries.
Checking consumer offsets did not reveal anything because this is consumer-centric data.
Long weekend follows....
The bug appears to have disappeared and just now it worked 5 times in a row.  Review of  the invoker and controller code shows no reason why invoker->controller would act any differently than the controller->invoker.
The kafka and zk containers are started without mapping to the host so there should be no state passing between subsequent container runs.

@perryibm did you check if the magical 2 seconds can be removed yet from openwhisk?

For me, the magical 2 seconds is not needed anymore.  However, I was never able to reproduce this variant of the bug so my testing is not definitive.  I think our distributed tests also did not show this up so I think you will have to test this as it showed reliably in your setup.


zkforge zkc: confusing error message when deploying a contract #80

Component
Foundryup
Have you ensured that all of these are up to date?

[ ] Foundry
[ ] Foundryup

What version of Foundry are you on?
forge 0.2.0
What command(s) is the bug in?
zkforge zkcreate
Operating System
Linux
Describe the bug
I try to deploy the smart contract before this error I have zkforge run zk-build

Is file present? are there any other files in that directory?


More deanon.

I don't know the right way to do the mouse bits, see what you think.
But it works, or seems to.
Signed-off-by: Ronald G. Minnich<EMAIL_ADDRESS>

This commit is included in 129. So it works in real hw.
LGTM.


cache all peer certificates per slot.

Fix: #836
Signed-off-by: Qi Zhang<EMAIL_ADDRESS>

Do we have a unit test cover:
GetCert (Slot 0), GetCert (Slot 1), Challenge (Slot 0) ?

Do we have a unit test cover:
GetCert (Slot 0), GetCert (Slot 1), Challenge (Slot 0) ?

Do we have a unit test cover: GetCert (Slot 0), GetCert (Slot 1), Challenge (Slot 0) ?
I need the below PR to get GetCert (Slot 0), GetCert (Slot 1). Could you please review it?

https://github.com/DMTF/libspdm/pull/895

#895 is merged. Please design the new test to increase coverage

Do we have a unit test cover: GetCert (Slot 0), GetCert (Slot 1), Challenge (Slot 0) ?

We created unit test for such case.

merge it together with emu, so that we can start test.
feel free to leave more feedback, if you find something need improve later.


已失效

The current version of the program may have expired. The new version may be released later.

此repo将不再受到任何支持。


Class io.delta.hive.DeltaInputSplit not found

Have you build hive connector, and add the hive-delta jar to your classpath?
https://github.com/delta-io/connectors

thanks，I  have solved the issue already。


Inquiries about solutions for the book's exercise answer

Hello! Thanks so much for the fantastic materials here. I am wondering if there are solutions for the exercises in the book Data Analysis for the Life Sciences? I think it will be helpful for the readers to verify the answers.

We do have plans of creating a solutions manual in the future. But, because these exercises are used in our online courses we don't currently make the solutions available. If you register for the online course (note there is a free version), you can see the solutions by trying the assessments.


Some recipes not matching to ARK 1.1.0 imports

Apologies if this has already been brought up, i couldn't find it in the current issues.
It seems that some recipes don't match the current imports for ark 1.1.0, is the docs version locked to a specific version of ark?
for example,
import * as Ark from '@ark-ui/solid/dialog' // <--- here i get the error 'Cannot find module '@ark-ui/solid/dialog' or its corresponding type declarations'
import { styled } from 'styled-system/jsx'
import { dialog, type DialogVariantProps } from 'styled-system/recipes'
import { createStyleContext } from '~/lib/create-style-context'

const { withProvider, withContext } = createStyleContext(dialog)

export * from '@ark-ui/solid/dialog' // <--- here i get the error 'Cannot find module '@ark-ui/solid/dialog' or its corresponding type declarations'
export type DialogProps = Ark.DialogProps & DialogVariantProps

const DialogRoot = withProvider(styled(Ark.Dialog.Root))
export const DialogBackdrop = withContext(styled(Ark.Dialog.Backdrop), 'backdrop')
export const DialogCloseTrigger = withContext(styled(Ark.Dialog.CloseTrigger), 'closeTrigger')
export const DialogContent = withContext(styled(Ark.Dialog.Content), 'content')
export const DialogDescription = withContext(styled(Ark.Dialog.Description), 'description')
export const DialogPositioner = withContext(styled(Ark.Dialog.Positioner), 'positioner')
export const DialogTitle = withContext(styled(Ark.Dialog.Title), 'title')
export const DialogTrigger = withContext(styled(Ark.Dialog.Trigger), 'trigger')

export const Dialog = Object.assign(DialogRoot, {
  Root: DialogRoot,
  Backdrop: DialogBackdrop,
  CloseTrigger: DialogCloseTrigger,
  Positioner: DialogPositioner,
  Content: DialogContent,
  Description: DialogDescription,
  Title: DialogTitle,
  Trigger: DialogTrigger,
})

It looks like ARK ui 1.x.x changed it import depndencies? perhaps the recipes need to be update too?
Thanks for such a great project

@futbotism
Thanks for bringing this to my attention. I will update the docs shortly. In the meantime checkout the Solid example to see how you can workaround this issue:
https://stackblitz.com/github/cschroeter/park-ui/tree/main/examples/panda/solid/vite?file=src%2Fcomponents%2Fui%2Fradio-group.ts

@cschroeter  awesome thanks, can confirm that pattern works

@cschroeter another issue is that the card component doesn't work for the settings above
for the recipe below, when using @ark-ui/solid: 1.1.0 and @park-ui/panda-preset: 0.24.0 the card component doesnt render its slot correctly in panda. I noticed there isnt a card component in ark ui, perhaps this has something to do with it.
The card itself renders fine as show in the screenshot below, i think panda isnt applying the style for some reason

import { ark } from '@ark-ui/solid'
import type { ComponentProps } from 'solid-js'
import { styled } from 'styled-system/jsx'
import { card, type CardVariantProps } from 'styled-system/recipes'
import { createStyleContext } from '~/core/style-context'

const { withProvider, withContext } = createStyleContext(card)

export type CardProps = CardVariantProps & ComponentProps<typeof ark.div>

const CardRoot = withProvider(styled(ark.div), 'root')
export const CardBody = withContext(styled(ark.div), 'body')
export const CardDescription = withContext(styled(ark.p), 'description')
export const CardFooter = withContext(styled(ark.div), 'footer')
export const CardHeader = withContext(styled(ark.div), 'header')
export const CardTitle = withContext(styled(ark.h3), 'title')

export const Card = Object.assign(CardRoot, {
  Root: CardRoot,
  Body: CardBody,
  Description: CardDescription,
  Footer: CardFooter,
  Header: CardHeader,
  Title: CardTitle
})

@futbotism
You mean data-scope and data-part? Do you need them?

@futbotism
You mean data-scope and data-part? Do you need them?

Sorry i don't quite follow, just trying to implement the Card component none of the panda styles are applied

for anyone else reading this you can overwrite the panda slot styles like so... this will help me get around the issue for now
const CardRoot = withProvider(styled(ark.div, {
  base: {
    // my styles here
    // border: 'solid 1px'
  }
}), 'root')

To report, the Select component is also not adding the panda styles similar to the Card. I feel like im missing something here... apologies if so
import {
  Select as ArkSelect,
  type SelectProps as ArkSelectProps
} from '@ark-ui/solid'
import { styled } from 'styled-system/jsx'
import { select, type SelectVariantProps } from 'styled-system/recipes'
import { createStyleContext } from '~/core/style-context'

const { withProvider, withContext } = createStyleContext(select)

export type SelectProps<T extends typeof ArkSelect = any> = ArkSelectProps<T> & SelectVariantProps

const SelectRoot = withProvider(styled(ArkSelect.Root), 'root')
export const SelectClearTrigger = withContext(styled(ArkSelect.ClearTrigger), 'clearTrigger')
export const SelectContent = withContext(styled(ArkSelect.Content), 'content')
export const SelectControl = withContext(styled(ArkSelect.Control), 'control')
export const SelectItem = withContext(styled(ArkSelect.Item), 'item')
export const SelectItemGroup = withContext(styled(ArkSelect.ItemGroup), 'itemGroup')
export const SelectItemGroupLabel = withContext(styled(ArkSelect.ItemGroupLabel), 'itemGroupLabel')
export const SelectItemIndicator = withContext(styled(ArkSelect.ItemIndicator), 'itemIndicator')
export const SelectItemText = withContext(styled(ArkSelect.ItemText), 'itemText')
export const SelectLabel = withContext(styled(ArkSelect.Label), 'label')
export const SelectPositioner = withContext(styled(ArkSelect.Positioner), 'positioner')
export const SelectTrigger = withContext(styled(ArkSelect.Trigger), 'trigger')
export const SelectValueText = withContext(styled(ArkSelect.ValueText), 'valueText')

export const Select = Object.assign(SelectRoot, {
  Root: SelectRoot,
  ClearTrigger: SelectClearTrigger,
  Content: SelectContent,
  Control: SelectControl,
  Item: SelectItem,
  ItemGroup: SelectItemGroup,
  ItemGroupLabel: SelectItemGroupLabel,
  ItemIndicator: SelectItemIndicator,
  ItemText: SelectItemText,
  Label: SelectLabel,
  Positioner: SelectPositioner,
  Trigger: SelectTrigger,
  ValueText: SelectValueText
})

@cschroeter i figured out the issue, it was because i was on "@pandacss/dev": "^0.16.0", but needed "@pandacss/dev": "^0.18.3" so some component recipe slots weren't working at all but others were, probably due to a change in the pandacss api.
For anyone with similar issues, package.json dependencies in packages/panda/package.json is your friend

@futbotism
Aweseome. Great that you figured it out <3


make dm push on its own work

when we already know which remote we're tracking for a dot, we can make dm push on its own just work.

We sort of know this. The "default remotes" in .dotmesh/config is a mapping from (remote,local dot name) -> remote dot name. We could certainly notice when there's only one remote connected to a local dot and use that, but there might be more than one, or zero.


Don't push to collection, use default catalog

LGTM.
Why are we removing from gcp-app-collection though? Do we need to clean up old releases from those collections too?

We want it on every gcp cluster, both MCs and WCs, so we want it as a default app rather than an app deployed only to MCs through the collection.


missing collection opt value is parsed to contain true

(cli/parse-opts [":opt"] {:coerce {:opt [:string]}})

current:
{:opt ["true"]}

expected:
{:opt []}

Notes
1.
The given example should not result {:opt [""]}.
If [""] is wanted, then it is possible via:
(cli/parse-opts [":opt" ""] {:coerce {:opt [:string]}})
{:opt [""]}

2.
(cli/parse-opts [":opt"] {:coerce {:opt [:boolean]}})

current:
{:opt [true]}

expected:
{:opt []} ;; inconsistent to the non-collection version, where missing value defaults to true?

or
{:opt [true]} ;; inconsistent to the proposal for other collections, where missing value results empty collection

I don't have a strong opinion here, but I would vote for {:opt []}, keeping "empty means true" an exception exclusively limited to (non collection) booleans.
3.
The other common collections (#{}, ()) should work similarly & data type (:string, :keyword, :symbol, :int, ...) should not matter:
(cli/parse-opts [":opt"] {:coerce {:opt (list :keyword)}})
{:opt ()}

(cli/parse-opts [":opt"] {:coerce {:opt #{:int}}}) ;; currently throws
{:opt #{}}

4.
(cli/parse-opts [":opt" "a" ":opt"] {:coerce {:opt [:string]}})
{:opt ["a"]} ;; so we can't distinguish  [":opt" "a" ":opt"] and  [":opt" "a"]...

;; alternatively we could throw in this case,
;; because no acceptable value is given for one :opt (the last one in this example)

5.
The proposed functionality can be achieved by changing add-val to the following. (This is, I guess, not the most performant alternative...)
(defn- add-val [acc current-opt collect-fn coerce-fn arg implicit-true?]
  (let [arg (delay (if (and coerce-fn
                            (not (coll? coerce-fn))) (coerce* arg coerce-fn implicit-true?)
                       (auto-coerce arg)))]
    (if collect-fn
      (if implicit-true?
        (update acc current-opt collect-fn)
        (update acc current-opt collect-fn @arg))
      (assoc acc current-opt @arg))))

The fix for #58 was the same as the fix for #57 since --opt without an additional value is always interpreted as "implicit true".


Move demograhics questionnaire to before survey questions

Hi Audrius,
Are you available for some extra work? Apple won't accept the app as such, and we need to change the demographics (age, income, etc) from the start of the app to the end part of the app.
So, the main flow would be:

Welcome
Consent
Instructions
--
Tracking, and finish tracking
Demographics (This is moved from start!)
Final questionnaire

And as with older version, Demographics is filled only once per app install. When are you able to do this change? And possibly only do it for iOS, Android is fine.

Hi, Committed 'src' forlder for ios app. You can use the folder instead of 'src' for ios app.

Checking.

Works OK, sent to App Store for approval. Thanks!


Start two kong charts in different namespace will affect each other?

Here is my problem:
I installed two kong charts in my cluster. For example, the kong in namespace nick-kong has custom plugin: plugin-A, plugin-B, the kong in namespace test-kong has custom plugin: plugin-C.
And when I create a KongPlugin with plugin C in namespace test-kong, I have a error:
Error: Internal error occurred: failed calling webhook "validations.kong.konghq.com": Post https://test-kong-kong-validation-webhook.test-kong.svc:443/?timeout=30s: dial tcp <IP_ADDRESS>:443: connect: connection refused
helm.go:94: [debug] Internal error occurred: failed calling webhook "validations.kong.konghq.com": Post https://test-kong-kong-validation-webhook.test-kong.svc:443/?timeout=30s: dial tcp <IP_ADDRESS>:443: connect: connection refused

here is the order of execution of commands:
# namespace nick-kong, has custom plugin: plugin-A, plugin-B
helm3 dependency update ./charts/kong/
helm3 install nick-kong./charts/kong/ -f ./config/helm_config/testing.yaml --namespace nick-kong --debug --create-namespace --set ingressController.installCRDs=false
kubectl wait --for=condition=available --timeout=600s deployment/$nick-kong-kong -n nick-kong

# namespace test-kong, has custom plugin: plugin-C
helm3 dependency update ./charts/kong/
helm3 install test-kong./charts/kong/ -f ./config/helm_config/testing.yaml --namespace test-kong --debug --create-namespace --set ingressController.installCRDs=false
kubectl wait --for=condition=available --timeout=600s deployment/$test-kong-kong -n test-kong

# now create a CRD resource KongPlugin with plugin-C in namespace test-kong
helm3 install test-kong-config ./coding-kong-config -f coding-kong-config/config/testing.yaml --namespace test-kong --debug

This is the yaml file finally generated by test-kong-config charts
apiVersion: v1
kind: Service
metadata:
  name: test-svc
spec:
  type: ExternalName
  externalName: nick.test.com
---
apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
  name: plugin-c
plugin: test-plugin
config:
  auth_token: 7dlda637-as7e-4377-asdb-4943ssd6e73f
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: test-ing
  annotations:
    plugins.konghq.com: plugin-c
spec:
  rules:
  - http:
      paths:
      - path: /api/name
        backend:
          serviceName: test-svc
          servicePort: 80

When I helm install  or apply yaml file directly, it returned:
Error: Internal error occurred: failed calling webhook "validations.kong.konghq.com": Post https://test-kong-kong-validation-webhook.test-kong.svc:443/?timeout=30s: dial tcp <IP_ADDRESS>:443: connect: connection refused
helm.go:94: [debug] Internal error occurred: failed calling webhook "validations.kong.konghq.com": Post https://test-kong-kong-validation-webhook.test-kong.svc:443/?timeout=30s: dial tcp <IP_ADDRESS>:443: connect: connection refused

I don’t know if it’s because I started two kong charts in one cluster.
I want to know why. And i want to know how to avoid it. thanks

anybody help!

ping @rainest

It shouldn't be because there are multiple instances--the URLs are workspaced (that's what the test-kong before svc in https://test-kong-kong-validation-webhook.test-kong.svc:443 is), and the only things that should be shared are the CRDs. Those may cause issues if you're trying to use different controller versions, but shouldn't affect communication with the webhook. Does it succeed if you only have one instance?
Do you see the same issue if you create that configuration bundle directly via kubectl? I don't really know much about Helm's behavior around checking custom resources against admission webhooks, which this appears to stem from.
Review of https://github.com/jetstack/cert-manager/issues/1425 suggests that this may be some scenario where old admission config somehow remains around, but again that's not something I'm particularly familiar with. Are the admission webhooks enabled for either? I'm not sure what's in those values.yamls.

I already solved this problem, I user a annotation for ingress, kongingress, kongplugin, kongconsumer.
like this:
apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
  name: plugin-c
  annotaions:
    kubernetes.io/ingress.class: egress

we can change kong ingress.class in values.yaml.
values.yaml
# some code
 ingressController:
  admissionWebhook:
    enabled: false
  ingressClass: egress
# some code

And then you add route for this kong-ingress you should add the annotations:
  annotaions:
    kubernetes.io/ingress.class: egress

I already solved this problem, I user a annotation for ingress, kongingress, kongplugin, kongconsumer.
like this:
apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
  name: plugin-c
  annotaions:
    kubernetes.io/ingress.class: egress

we can change kong ingress.class in values.yaml.
values.yaml
# some code
 ingressController:
  admissionWebhook:
    enabled: false
  ingressClass: egress
# some code

And then you add route for this kong-ingress you should add the annotations:
  annotaions:
    kubernetes.io/ingress.class: egress


Can add a go to top button

Give a brief about the bug ✍
There can be go to top button added for easy navigation in the page.

What is the expected behavior? 🤔
The go to top button will get you to the top of the page
Provide step by step information reproduce the bug 📄

Go to bottom of the page.
Try to go up.
See the error.

Select program in which you are contributing
No response
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @bheemajayashreee , You can't have another issue before completing the previous one 😀
you already have the following 1 open issues 👀 ! :
#4515

Hey @bheemajayashreee ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇

Hey @bheemajayashreee !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

Hey @bheemajayashreee! 🙂
It seems like you are not following proper guidelines !! 👀
Read documentation properly !!🙏
If you have any queries reach out to us on Discord🕹 .

Please assign this to me
On Fri, 14 Jun, 2024, 12:25 pm Kunj Patel, @.***> wrote:

Hey @bheemajayashreee https://github.com/bheemajayashreee! 🙂
It seems like you are not following proper guidelines !! 👀
Read documentation properly !!🙏
If you have any queries reach out to us on Discord🕹
https://discord.gg/fgwk4XZfxG .
—
Reply to this email directly, view it on GitHub
https://github.com/kunjgit/GameZone/issues/4516#issuecomment-2167355627,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A24HYZI47HYL3PAGXANM23DZHKHURAVCNFSM6AAAAABJJYFE5WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNRXGM2TKNRSG4
.
You are receiving this because you were mentioned.Message ID:
@.***>


Add delete records method support for kafka admin api

Hello. Sometimes it might be useful to delete messages from kafka topic without a trick with setting 1 second retention time.
I tried to implement this like in java version of client
https://github.com/apache/kafka/blob/f98e176746d663fadedbcd3c18312a7f476a20c8/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java#L2279
For me it solves the problem, hope it can be helpful for somebody.

This change is

I'm all for adding new features, but it would be nice to have some tests verifying this works.

Resuming this in https://github.com/wbarnha/kafka-python-ng/pull/136


README mention unexisting LICENSE file

Please include the mentioned LICENSE file.

@aviau  Thx for the reminder.


Stretch - Using Datadog / Snowflake, we can attempt to compare costs of using each database type

Research how this is done then catch up with Kyle, Josh or Iona to get it working with the app.


Fix tests

This PR fixes the tests and crongenerator env var handling.

Hmm. I need to test this patch a little further with another project. The problem I was trying to fix last night was:

you have a crontab and you cp.String() it.
parse that output
voila, multiple quotes

I'm going to set this aside until later tonight when I can test things.

LGTM

Thank you!


Parses invalid Async arrow with await

Input Code

   parse(async(x = await) => {  })

Babylon/Babel Configuration

var babylon = require('babylon').parse;

Expected Behavior
According to the specs, this should throw an syntax error. Esprima throws on it, but Acorn and Babylon does not.
Current Behavior
Parses just fine

This correctly throws in the latest version of babylon 6.17.2


Reinforcing

This PR adds the Fragment Reinforcer, a block allowing to reinforce fragments into a more valuable state.

The system is finished in just a few hours! This really was simple!

Merging this after CI.


#23: renamed insecure parameter to secure to fix design anti-pattern

I see this PR is merged. Still I's suggest you rename it once more before a release. This time to use-tls.


Add back the tests-spark310+

At least some of these seem to be real unit tests because they access internal functions so pull the aggregator jar here instead of the final dist jar. We may want to consider moving these into a sql-plugin test directory but for now make them run again on all non databricks 311+ builds.

build


Undefined behaviour when used with rayon (parllel iterators)

Describe the bug
Hey there, I have a function which shows spinner as needed and the function is as follows:
fn sync(name: &str, url: &str) -> Result<SyncStatus, <Self as Sync>::Error> {
        let temp_dir_builder = TempDir::build()?;
        let temp_dir = temp_dir_builder.path();

        let mut sp = Spinner::new(
            spinners::Dots,
            format!("Fetching bucket {name}..."),
            Color::Blue,
        );

        let repo = RepoBuilder::new()
            .clone(url, &temp_dir)
            .map_err(|_| ScoopieError::Sync(SyncError::UnableToFetchRepo))?;

        let head = repo
            .head()
            .map_err(|_| ScoopieError::Sync(SyncError::UnableToGetHead))?;

        let commit_id = head
            .peel_to_commit()
            .map_err(|_| ScoopieError::Sync(SyncError::UnableToGetCommit))?
            .id()
            .to_string();

        let bucket_dir = Config::buckets_dir()?;
        let bucket_path = bucket_dir.join(name);

        sp.update_text(format!("Reading metadata for bucket {name}"));
        let mut metadata = MetaData::read()?;

        let st = match (
            bucket_path.exists(),
            metadata.get(name).commit_id == commit_id,
        ) {
            (true, true) => SyncStatus::UpToDate(name.into()),
            (true, false) => {
                sp.update_text(format!("Reading manifests from bucket {name}..."));
                Self::read(&temp_dir)?.write_to(&bucket_path);
                metadata.write(name, url, &commit_id)?;
                SyncStatus::Synced(name.into())
            }

            (false, _) => {
                sp.update_text(format!("Reading manifests from bucket {name}"));
                Self::read(&temp_dir)?.write_to(&bucket_path);
                metadata.write(name, url, &commit_id)?;
                SyncStatus::Created(name.into())
            }
        };

        match st {
            SyncStatus::UpToDate(_) => {
                sp.success(&format!("Bucket: {name} is already synced to remote"))
            }
            SyncStatus::Synced(_) => sp.success(&format!("Bucket: {name} synced to remote")),
            SyncStatus::Created(_) => sp.success(&format!("Bucket: {name} has been created")),
        };

        Ok(st)
}

And it has been called as:
Config::read()?
            .known_buckets()
            .par_iter()
            .map(|v| Bucket::sync(v.0, v.1))
            .collect()

Expected behavior
A clear spinner with text from each function in one line but it outputs zibberish.
Screenshots
https://github.com/ad4mx/spinoff/assets/84739019/422f0aab-3ee4-4136-8dc3-376ae8902b4a

Hi, thanks for the issue. I am not exactly sure where the issue in the library's code is - but it's clear there's a problem. Just so I am on the same page, the constant flickering between Fetching bucket extras and Fetching bucket main is also a bug or is it expected behavior?

Hi, thanks for the issue. I am not exactly sure where the issue in the library's code is - but it's clear there's a problem. Just so I am on the same page, the constant flickering between Fetching bucket extras and Fetching bucket main is also a bug or is it expected behavior?

Yes the constant flickering between text is bug, it is expected that every text gets its new line but I also tried it with \n, where I get repeated amount of same text in each line.

The main problem is that the library wasn't really written with parallel iterators in mind.  Unfortunately I don't have enough time to find a possible solution to this at the moment. In the meantime,  consider trying other rust spinner libraries like spinners, maybe they could work.

Thanks, I would also try to look into it.


Is it possible to validate xpath in inspect.exe or outside winappdriver

I am using inspect.exe for analysing some element properties for windows application.
I am trying to use xpath for some elements. But for validating the xpaths, i have to execute whole script till the element step.
Is it possible to validate the xpath without executing the script, similar to console option in F12-Google chrome.
This can save lot of scripting effort.

use this
https://www.freeformatter.com/xpath-tester.html
but first you need to get the page source:
string source =   driver.PageSource;

@varun210619 Also you can use http://xpather.com/

@anunay1  @Shakevg
Thanks for the suggestions.
I want something already embedded in the inspect tool where I just type //*[@ attribute=value] and it would highlight the element. Same as in Chrome-Console.
I dont want to run script and then validate the xpath. I dont want to get pagesource also as its dynamic app and changes on clicking many elements.

@varun210619 You can try Appium Desktop but it does not always work (e.g. if your application has a splash screen).


fix error when scanning folders for feteched update for Alpine vulnerabilities

Fix error updater: an error occured when fetching update 'alpine': open /private/tmp/alpine-secdb808866024/Makefile/main.yaml: not a directory.
This error happens on MacOS with go version go1.7.4 darwin/amd64.
For some strange reason File.Readdirnames returns names of directories and files. I've changed this code to use File.Readdir that returns []Fileinfo and thus adding additional validation that skips non-directories, using IsDir() method.

changes to vendor folder are not related indeed. I just run "glide install" to build and test clair and glide updated couple files in vendor folder. Ignore these, sorry.

If these changes are indeed pulled in by glide install, but are not currently apart of the vendor directory, we should commit them. However, they should be in a separate commit. Likewise if you'd like to add a .gitignore file, please put it in a separate commit. Having individual commits like this helps in the future when you need to use tools like git blame to remember why a specific change was made.

OK, ignore this PR. I will create new with relevant change only


Typo in documentation for title

This page is using the capitalize filter instead of the title filter:
{{ "article title" | capitalize }}

should be
{{ "article title" | title }}

Fixed! Thanks


Fixing issue with timezones in unit tests

When you create a task in AppEngine, and you specify a specific ETA, the task will convert the supplied datetime to UTC.
By using datetime.datetime.utcnow() we get the correct UTC date, but Task will convert it internally to UTC again. For example:

It's 10:00 EST -05:00
datetime.datetime.utcnow() returns 14:00 (10:00 + 4h because daylight savings)
Using this 14:00 to create a Task will convert again and return 18:00.

The reason is because datetime.datetime.utcnow() doesn't add timezone information to the result date.
A couple of tests aren't passing because of this problem.
The solution is to add timezone information to the datetime used to create the task.

As part of this request, I also fixed the test cases to run using testbed and removed all the code pointing to old_dev_appserver which it is now deprecated.

Alright, so the last commit (020e4aa) does the following:

Remove pytz library
Adds a function in test_shared.py to convert from UTC to local using standard libraries (calendar)
Uses the function in the tests
Uses datetime.now instead of datetime.utcnow in the tests.

@aozarov, thoughts?
P.S.  We only need to fix one function but I don't want to keep piling up stuff on this Pull Request. As soon as we make a decision with these current changes, I can work on the other stuff.

Looks good.


Version 0.2.0

Codecov Report

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

@@           Coverage Diff           @@
##           master       #9   +/-   ##
=======================================
  Coverage   83.79%   83.79%
=======================================
  Files           2        2
  Lines         253      253
  Branches       33       33
=======================================
  Hits          212      212
  Misses         33       33
  Partials        8        8

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 95d45a7...c9380a0. Read the comment docs.


MSTEST0036 is shown for cases where no shadowing happens

Describe the bug
The following code shows MSTEST0036 (Do not use shadowing inside test class) even though no shadowing happens.
Steps To Reproduce
namespace TestProject1;

[TestClass]
public class BaseTest
{
    protected TObject CreateObject<TObject>()
    {
        throw new NotImplementedException();
    }
}

[TestClass]
public class ExtendedTest : BaseTest
{
    // MSTEST0036 is shown here
    private SomeType CreateObject()
    {
        throw new NotImplementedException();
    }
}

public class SomeType;

Expected behavior
No MSTEST0036 warning.
Actual behavior
MSTEST0036 is shown.
Additional context
This is a new problem in v3.6.0
I actually see MSTEST0036 twice in the error list - with different messages. It seems like one is from IntelliSense and the other one from actually building the project.
And the message "is already exist" should be fixed to be correct English.

Hi @cremor!
Thanks for the bug report, indeed there are a few problems. We will work on them.


Proposal: Tuple type

I propose the addition of a new built-in type tuple and that functions should always returns a single value:
// Single return value of int.
func f() int {
  return 1
}

// Single return value of the tuple (int, error).
func g() (int, error) {
  return 1, errors.New("error")
}

Destruction of the new tuple type should be handled as before when returning multiple arguments, in addition to being able to store the tuple in a var with separate destruction:
// Destruct inline with call.
i, err := g()

// Destruct from tuple var.
r := g()
j, err2 := r

A naive idea for how defining a user tuple type could look:
type Pair tuple (int, int)

My proposal is inspired by the ideas and problems from this article about Monads in Go by @awalterschulze: https://awalterschulze.github.io/blog/post/monads-for-goprogrammers/
In the article he describes composing functions that return errors, for example (not from the article):
func f() (int, err) {
  return 1, nil
}

func g(x (int, err)) (int, err) {
  return x
}

// Returns 1 and nil from f().
val, err := g(f())

Having these additions to the language would allow for some interesting functional concepts to be implemented cleanly.
I have tried to look for earlier proposals without finding any, please correct me if it has been brought up before. Would love to hear your thoughts!
Thanks,
Max Ekman

Seems to me that I could write your example as:
func f() (int, error) {
  return 1, nil
}

func g(i int, e error) (int, error) {
  return i, e
}

// Returns 1 and nil from f().
val, err := g(f())

Yes, using tuples is very slightly shorter, but the benefit seems quite small.  Is there another way that tuples provide a bigger benefit?

Yes in that case you are right.
I missed a small detail from the example in the article, there was another argument after the int, error pair. The specific section in the article of interest is called “Squinting” (I couldn’t link directly). Here is the initial example exactly from that section that will not currently compile:
func f() (int, error) {
    return 1, nil
}

func g(i int, err error, j int) int {
    if err != nil {
        return 0
    }
    return i + j
}

func main() {
    i := g(f(), 1)
    println(i)
}

Allowing functions to return either one value (the tuple) or multiple values (the components of the tuple) based on context-only rather than an explicit syntax seems like it has potential to make things a bit confusing.
func f() (int, int) {
    return 1, 2
}

func foo(args ...interface{}) {
    // ???
}

foo(f())

Is args []interface{}{(1, 2)} or []interface{}{1, 2}?
To address the kind of thing in your example, I would be a much bigger fan of just allowing multi-value returns to automatically expand into function arguments, without the addition of a tuple type. See https://github.com/golang/go/issues/973#issuecomment-142733515 though.

Thanks for the link to the interesting comment! Gives some insight. However, it would not be a problem if all functions always returns a single value. In that case the problem lies in allowing destruction when calling another function or not.
In your case with my proposal args would have the value []interface{}{(1, 2)}.

I'd definitely rather have it expand to []interface{1, 2}. Also, I personally don't like the idea of having a tuple type that gets expanded into whatever it assigns. After learning several languages that have features such as array restructuring and tuple destructuring, it starts to get confusing on whichever syntax I should use to destructure the tuple. I already have this issue with needing to remember if the ellipsis for a "spread" operator comes before or after the array (ie fmt.Println(array...).
Also, typically tuples allow for individual access to the returned arguments. This would hurt Go, as it would encourage the behavior of ignoring errors and possibly leaking resources (ie someMethod(os.Open("file.txt")[0])). This proposal doesn't offer a way to index into a tuple.
Either way, I think we might want to just add the features that we would want from tuples into multiple-return, rather than introducing an entirely new concept

You can already implement a tuple in Go as it is now, look at the following  example:
https://github.com/kmanley/golang-tuple
Furthermore, changing the language to remove multiple return is likely to break all existing Go code, and hence seems unadvisable.

Yes, I know a tuple type can be implemented. However by having a tuple as a native type the above mentioned composition pattern (and other functional patterns) can be implemented in a clean fashion. Please read the linked article if you haven’t to see what could be achieved cleanly with native tuples.
Regarding breaking existing code it will of course happen in varying degrees depending on how this would be implemented if accepted. Note however that this proposal is labeled for Go 2, which would allow backward incompatible changes (although encouraging to minimize them).

@ianlancetaylor
Having the return type be a fully fledged tuple type has some added benefits. The biggest one being that you can finally pass the result of a function through a channel without having to manually convert it to a struct. You can also define methods on them, which is always nice.
It also seems like there aren't a lot of negatives.  Seems to be a backwards compatible change, by just promoting a quirk in the spec to a proper type like any other.

Two really good points there which I hadn’t thought about! Especially the last one; imagine a 2d point type with methods for example!

It might be interesting to consider whether we can introduce a conversion between a function result and a struct with the same types, as in the following.  That might possibly be a smaller change to the language that achieves similar benefits.
type Pair struct {
    i int
    s string
}

func F() (int, string) { ... }

func G() chan Pair
    c := make(chan Pair)
    go func() {
        c <- Pair(F())
    }()
    return c
}

If we introduce a new kind of type we need to discuss things like how to initialize them, how to convert them, how to decompose them, and what composite literals look like.  It seems to me that most of the answers for a tuple will be the same as the answers for a struct.  That suggests that tuple doesn't add much to the language.  So let's think about what tuple does add, and it would take to make that work with struct.

In my experience, tuples are almost always less clear than the equivalent structs with named fields.
See related experience reports from Google's Guava libraries in Java, the Chromium project in C++, and numerous other sources.
(Note that Python's tuples are rendered somewhat less harmful through the use of namedtuple, which adapts a tuple into a struct — but then why not return a struct in the first place?)

@ianlancetaylor A very interesting simplification! That would solve the (not initially proposed but still valuable) case of directly sending multiple return values on a channel or into another function.
In addition it would still be valuable to be able to unpack return values into non-last parameters of a function:
func f() (int, error) {...}
func g(i int, err error, flag bool) (int, error) {...}
i, err := g(f(), true)

I believe that would make it possible to chain higher order functions as mentioned in the linked article in the original post. Is that correct?

@ianlancetaylor
Indeed, a seamless conversion between returns and structs will solve a lot of pain points when dealing with channels.

Just noticed that @tema3210 posted an example containing a fictional Tuple type in the sum types/discriminated unions issue (https://github.com/golang/go/issues/19412#issuecomment-510840923) which could be of interest to see. It is not directly related to this issue however.

Some points to be considered:
It is hard for the parser w/ no context to do such a thing when we have multiple return values. The only real choice would be to actually do destructuring as also proposed, but that would mean that multiple return values would become only syntax sugar and that looks like a break of Go's philosophy of keeping things simple, don't you agree? I mean, from a philosophical point of view, it seems that go wants the programmer to know what is happening avoiding to hide details and such.
If it does not, as Go 2 already has the proposal for parametric polymorphism (a.k.a generics), I don't think it would be necessary to use []interface as the return types. But that could be a consideration only if the first point is taken to be invalid.
Apart from that, what has been shown for function composition looks pretty good. But would it be necessary to have tuples in order to achieve that?
My final point is: tuples would be crazy good if we had something like pattern matching with guards and some other functional stuff. I fail to see them as being that big of a deal when not having the whole "functional armor".

Some good points there @conilas.
Regarding the function composition in my last example; that would not need tuples only allowing multiple return values as function parameters with additional parameters after it. Currently multiple return values directly passed to a function can only be the last argument.
I’m still intrigued by the simplification (conceptually) that functions would ever only be allowed to have a single return value, with multiple return values handled by returning a single tuple of some kind. If implemented cleverly it could be achieved without breaking too much backwards compatibility (i.e. letting the current multiple return syntax construct a tuple instead).

It might be interesting to consider whether we can introduce a conversion between a function result and a struct with the same types, as in the following. That might possibly be a smaller change to the language that achieves similar benefits.
type Pair struct {
    i int
    s string
}

func F() (int, string) { ... }

func G() chan Pair
    c := make(chan Pair)
    go func() {
        c <- Pair(F())
    }()
    return c
}

If we introduce a new kind of type we need to discuss things like how to initialize them, how to convert them, how to decompose them, and what composite literals look like. It seems to me that most of the answers for a tuple will be the same as the answers for a struct. That suggests that tuple doesn't add much to the language. So let's think about what tuple does add, and it would take to make that work with struct.

What happens if the Pair struct has 2 int fields and the F functions returns 2 ints too... and some day some one accidentaly swaps the order of fields in Pair struct?

Tuple types don't add enough to the language to be worth the additional complexity of a new kind of type.  Tuple types are too similar to struct types, and the additional facilities, while sometimes convenient, seem minor.  Therefore, this is a likely decline.  Leaving open for one month for final comments.

Maybe we don't need a new type, but add some of the discussed functionality to structs?

(Explicit) (un-)packing of function parameters
Easy declaration and instantiation: a := {1, "hello"} (only possible when types can automatically be inferred)
Easy struct constructor: Pair{F()}

Well, there could be something like Voldemort types from D[1] - in which the type would still be alive after the execution context of the function and we could create it automatically, but would only exist in the context of the calling stack of the function?
Maybe w/o having to declare the struct type inside the function, maybe declaring, idk.
Or maybe the stdlib could provide something like Pair<T1,T2>, Triple<T1, T2, T3> since there will be parametric polymorphism in the next version?

Easy struct constructor: Pair{F()}

I think this doesn't look good. How would this be implemented for n-uples anyway? One constructor for each n value written in the compiler?
[1] https://wiki.dlang.org/Voldemort_types

@darkdragon-001 If those ideas seem useful, they should probably be refined and turned into independent proposals.  It's fine to discuss them here, but the goal should be to make a new proposal.  Thanks.

I know this may be off-topic now, but the conversion between a function result and a struct could be made in the future with:
Pair{i, s: F()}

There were no further comments related to this specific proposal.  Other suggestions should become new proposals (that can refer to this one if appropriate).


Add posibility to use joins in reduce queries

@Iskren1990

I need to add a few more tests to verify something and that should be ready for merge.

@j4qfrost
Can you look at the code change there are 3 main parts with it:

I can't see any issues aside from naming @Reductions, I'm good to merge if you can answer my question about those two late statements. I agree that they shouldn't be nullable, but if they're already being set to something, I don't think they're necessary.

That's weird. I thought the run completed without errors at one point.


Feature/dynamic-options

Dynamic Options
Enabling blueprint.enableDynamicOptions grants the ability to provide dynamic template replacements at the time of file creation.
When enabled, a third dialog will appear during the New file from template workflow. This dialog will take a semicolon delimited list of inputs. Each input will be match to the appropriate replacement token.
The token in the template should conform to the format of {{$1}} where 1 will be replaced by the first input in the delimited list. The number in the token represents the position of the replacement.
Example: Given the input -> Foo;Bar
This template:
function showMyDynamicOptions() {
    print("{{$1}} comes before {{$2}}");
}

Will produce this result:
function showMyDynamicOptions() {
    print("Foo comes before Bar");
}

I have been thinking about a feature like this since the first commit of the project. This looks like a pretty pragmatic solution but I have a couple ideas to make the usage a little easier. Let me know what you think of them. They go from easiest to change to hardest, and really only the first one is the one I’d really like to have before giving a 👍 so we can avoid having another setting (since settings are somewhat hard to discover). The rest could be enhancements for later.

Can we remove the necessity of enableDynamicOptions by searching the template files for “{{$1}}”? If found then show the third input step. Should the index start at 0 or 1?
With change #1 in place, can we make it so the third step shows how many params it expects (search for {{$1}},  if found {{$2}} and so on to get the count of params)
If we know how many extra params there are can we make it so tha instead of a third step that is a colon separated list that it is separate prompts for each one (if there are 3 extra dynamic options it shows 3 extra input steps)
Instead of $1, $2, etc. could we do named params and have them be able to use the same transforms as the name input does? We can do this one later and existing templates would work (the names params would just be $1

Thanks for the work so far. I like the direction you started in.

I have updated the vscode version on master which should remove the event-stream package.

Thanks for reviewing and the suggestions, I play around with it a bit more tonight.

          1 Error

:no_entry_sign:
Please include an entry in CHANGELOG.md—if this is a trivial Pull Request that does not require a changelog entry please include #trivial in the title.

          1 Warning

:warning:
package.json was edited.

          1 Message

:book:
:tada:  Thanks for the Pull Request!

  Generated by :no_entry_sign: Danger

With this last commit, I made it where the tokens can now be named something custom {{$myTokenName}} as opposed to the numeric version. During the New file from template workflow the user will now be asked to provide a value for each unique token found in all of the selected templates.

After making the changes so that they are named variables instead of $1, $2 do you like it better?
Thanks for the work so far!

Version 3.0.0 has been published with this feature: https://github.com/reesemclean/blueprint/releases/tag/v3.0.0
Thanks!


pull request for e2e test at 01/19/2017 08:15:15

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


fix linux debug build / initialize curl

This class is definitely a "spooky action at a distance" kind of thing, which isn't intuitive to use, but I couldn't think of a better way to implement the global setup or libcurl with the recommended constraints: https://curl.haxx.se/libcurl/c/curl_global_init.html

Yeah we could put that static global also in urlClient I guess

In a C++ module, it is common to deal with the global constant situation by defining a special class that represents the global constant environment of the module. A program always has exactly one object of the class, in static storage. That way, the program automatically calls the constructor of the object as the program starts up and the destructor as it terminates. As the author of this libcurl-using module, you can make the constructor call curl_global_init and the destructor call curl_global_cleanup and satisfy libcurl's requirements without your user having to think about it.

@matteblair curl counts the calls to global_init/shutdown. so it should be save to have our static global Environment. Only minor issue could be that the init flags are set by who comes first.
https://github.com/curl/curl/blob/0afbcfd800c45e766e225e4ce273b128ee6a8c25/lib/easy.c#L200-L274


Feature Request: Show spelllang in statusline

Currently spell check mode is indicated with 'SPELL' in statusline.
Would it be possible to (optionally) show the value of spelllang in addition or instead of 'SPELL'?

good idea, please check current head.

looks good, thank you


SM 6.5 support in DXC

We have support for SM 6.5 within the Slang standard library.
As it stands Slang does not ship with a version of DXC (unlike with say glslang), and so the version of DXC which is used downstream is dependent on what is available on the host system. It seems the the generally available DXC version made available with Windows 10, is not new enough to support SM 6.5.
This means that our CI does not test any SM 6.5 intrinsics. This is more unfortunate because we do implement and test SM 6.5 intrinsics on CUDA, and it would be useful to compare the results.
Possible paths:

Build a new version of DXC locally that is more up to date - and place the binary within Slang binaries
Check 6.5 features with a local build, but dont worry about Slang binaries and wait until DXC with SM6.5 appears
Automate building, packaging and testing of DXC for Slang project
Just wait until SM 6.5 ships with Win10 and then make sure everything works

It's hard to know if the 'wait for win10' is sensible without knowing how look it will take for the new version to ship. If Slang is to be on the bleeding edge and DXC remains an important part of the mix - it may make sense to take on the effort of 3 at some point.
On looking at ...
https://docs.microsoft.com/en-us/windows/release-information/
it seems there is approximately a release a quarter, and it would appear likely there will be a new release relatively soon.

We do have tests running on SM 6.5. We include DXC version in slang-binaries


Tests for auth service

We need well documented tests for this service, since future students should take these as starting point for their tests.

Closed as of 4885ce30f0b82f51d374700a76598fea4ee8fdb1

Refactor due to Morphia usage and TravisCI MongoDB container

dev-1 branch now contains the Morphia-based MongoDB refactoring. Tests can now be refactored.

Fixed the tests. As agreed, they are now expecting a running MongoDB server and will fail if no connection can be established.


Adds Util class

Adds feature mentioned in #152

Can you merge this, so I can write tests for it? Tests go into #158

Thanks

Thanks


Color Picker popups in wrong direction

Godot version
4.0 beta 10
System information
Ubuntu 22.04.1 LTS
Issue description

Since the color is near the top of the inspector, I expect the color picker popup to appear below. However...

This is because there is no enough space to pop up below, so instead it pops up above, reckless of where the button is on the screen.
Steps to reproduce
Click on a color button that is closer to the top of the inspector, but doesn't have enough space to popup below.
You can for example create a Control node and check it with its Modulate property. Might require a smaller screen though.
Minimal reproduction project
N/A it's in the editor

I originally noticed and fixed this in my PR for the Gradient editor. Only now found that it's a broader issue.
Code I used to fix this in the Gradient Editor, which might help:
Size2 minsize = popup->get_contents_minimum_size();
bool show_above = false;
if (get_global_position().y + get_size().y + minsize.y > get_viewport_rect().size.y) {
	// Not enough space below. Draw above in one of two conditions:
	// 1. There is enough space above.
	// 2. The gradient editor's center is below the middle of the screen.
	if (get_global_position().y >= minsize.y || get_global_position().y * 2 + get_size().y > get_viewport_rect().size.y) {
		show_above = true;
	}
}

if (show_above) {
	popup->set_position(get_screen_position() - Vector2(0, minsize.y));
} else {
	popup->set_position(get_screen_position() + Vector2(0, get_size().y));
}
	popup->popup();

Also it looks like the popup direction is determined in color_picker.cpp, the void ColorPickerButton::pressed() function. Though there might be some deeper entity deciding these things, I don't know.


Follow symlinks

Sometimes it is convenient to symlink a cookbook directory from elsewhere into the cookbooks directory in order to test a cookbook maintained elsewhere. fix does not appear to follow symlinks under the cookbooks directory, only actual directories.
This failed with 'Cookbook rsyslog not found':
ln -s /some/path/to/rsyslog $KITCHEN/cookbooks/rsyslog
fix node=something recipe:rsyslog

While this worked:
cp -r /some/path/to/rsyslog  $KITCHEN/cookbooks/rsyslog
fix node=something recipe:rsyslog

While this is pretty easy to fix (just adding the option --copy-links to the rsync call), I am not sure it is a good idea.
If you include symlinks in your Chef repository, you can no longer be sure of what gets deployed and what not. That is precisely the most important concept of a kitchen repo: you have all the knowledge about your deployment

I'd agree that it shouldn't be a default option, but it would be nice to opt-in to it while developing/testing changes to a kitchen. I find that I typically (in chef-server devel mode) will symlink in a cookbook from a separate repo and make/test changes by pushing it out to a test/staging server. When I'm happy with the new cookbook I'll commit the changes to the externally tracked cookbook and then vendor it into my local kitchen with something like knife-github-cookbook.
Maybe there's a better development model for this that doesn't use symlinks?

But then when you create the symlink with a different name than the
cookbook itself? or how do you prevent the symlink name from
overwritting the "upstream" cookbook?
2011/10/13 Mike Heffner
<EMAIL_ADDRESS>
I'd agree that it shouldn't be a default option, but it would be nice to opt-in to it while developing/testing changes to a kitchen. I find that I typically (in chef-server devel mode) will symlink in a cookbook from a separate repo and make/test changes by pushing it out to a test/staging server. When I'm happy with the new cookbook I'll commit the changes to the externally tracked cookbook and then vendor it into my local kitchen with something like knife-github-cookbook.
Maybe there's a better development model for this that doesn't use symlinks?
--
Reply to this email directly or view it on GitHub:
https://github.com/tobami/littlechef/issues/64#issuecomment-2395196

Not sure I follow, the first point. Even with directories, I could import a cookbook 'rsyslog' but name the directory 'nginx' and the same problem exists, right?

Why would you name the cookbook 'rsyslog' as 'nginx'? Of course it would collide, the same as with symlinks. What I don't get is how you kann "vendor a cookbook" from an external repo into your kitchen, but while testing changes use a symlink to the external cookbook instead. Both would have the same name. Or do you only do that for new cookbooks, and once they work you substitute the symlink with the actual code?

Oh, correct. Before I vendor it I setup the symlink, make sure the external cookbook works correctly, then I remove the symlink and vendor it. So it never exists in two locations at the same time.
Similarly if I've already vendored an upstream cookbook I sometimes temporarily remove the vendored cookbook directory, replace it with a symlink, test, change, and update the upstream cookbook, then replace the symlink with the vendored directory again. Definitely less common as the new cookbook test.
Like I said, I mainly do this for lack of a better model. I guess some people use git submodules. So you could bring in an upstream cookbook as a git submodule, hack on it, and still be able to easily push those changes to the upstream cookbook.

Ok, I see. Maybe it is time to introduce a config file for LittleChef (not just auth) so that we can add features that can be switched on and off


Change thread_context from being an argument passed to threads.

The fact that threads functions are passed their own context as an argument is very ugly:
void threadFunction(thread_context* c);
I wish to change it so that threads can refer to their context simply using a namespace like:
DeterministicConcurrency::this_thread::[stuff].

Could be achieved easily considering we could use https://en.cppreference.com/w/cpp/thread/thread/id/hash to use an unordered_map.


rails 3.2

Does it support rails 3.2?

Hello Jack,
Thus far, the minimum supported version was rails 4.0. Given your request, I fired up a rails 3 app and tested the gem, it appears fully functional. I updated the gem and pushed to github and rubygems.org to support rails 3. It's obviously not well tested. If you give it a try and find any problems, please open a bug or fork and make a pull request. Thanks!

Justin,
Many thanks, will test it out.
Regards,
Jack

On Mar 10, 2015, at 6:35 PM, Justin Tomich<EMAIL_ADDRESS>wrote:
Hello Jack,
Thus far, the minimum supported version was rails 4.0. Given your request, I fired up a rails 3 app and tested the gem, it appears fully functional. I updated the gem and pushed to github and rubygems.org to support rails 3. It's obviously not well tested. If you give it a try and find any problems, please open a bug or fork and make a pull request. Thanks!
—
Reply to this email directly or view it on GitHub.


Merge 1.9.x

An alternative approach to #1879.

@marqh - this has sprouted its own green tick now :wink:

@marqh - this has sprouted its own green tick now

grand, one of the tests had timed out

i've captured the workflow in #1881


How to set profile picture?

How to set profile picture using the api?

same here?

well, i tried the function but it wont work /: i guess theres a problem with encryption .. could be ?
getting exception: Exception thrown: 'WhatsAppApi.Helper.ConnectionException' in WhatsAppApi.dll
but dont know where .. i guess its an empty exception block ?


Code shows in hint in tutorial "Simple Extension" when language is Chinese

Describe the bug
Code shows in hint in tutorial "Simple Extension" when language is Chinese
Steps to reproduce the behavior

Navigate to https://arcade.makecode.com/
Click "More..." -> "Language" -> choose "Simplified Chinese"
Open "Simple Extensions" in tutorial and navigate to second step and observe

Expect behavior
Code shouldn't show in hint in tutorial "Simple Extension" when language is Chinese
Actual behavior
Code shows in hint in tutorial "Simple Extension" when language is Chinese

Additional context

OS: Windows(rs6)
arcade version: 0.15.11
Microsoft MakeCode version: 5.30.38

the ```package snippet on crowdin has corgio translated as 小狗 (https://crowdin.com/translate/kindscript/3803/en-zhcn), breaking the package import. Will that translation as soon as I figure out how to use crowdin :)

simplified chinese is now fixed, I checked the other languages and traditional chinese was broken as well so I just fixed that as well.
Ideally, that snippet probably shouldn't end up on crowdin, or maybe should get patched to ignore attempts at translations; it shows up in a different font as a code snippet (monospace rather than sans-serif), but that's pretty subtle and is a very easy way to break tutorials completely in different languages.


neovim: Fix withRuby regression

The wrapper refactor https://github.com/NixOS/nixpkgs/pull/344541 effectively make withRuby always enabled.
Fix https://github.com/NixOS/nixpkgs/issues/351839.
After this, with programs.neovim.withRuby = false;, nvd shows nixos system:
Version changes:
[U.]  #1  nixos-system-nuc       24.11.20241028.09f31f9 -> 24.11.20241029.4e68a0e
Removed packages:
[R.]  #1  bundler               2.5.16
[R.]  #2  gemfile-and-lockfile  <none>
[R.]  #3  neovim-ruby-env       <none>
[R.]  #4  ruby                  3.3.5
[R.]  #5  ruby3.3-msgpack       1.7.2
[R.]  #6  ruby3.3-multi_json    1.15.0
[R.]  #7  ruby3.3-neovim        0.10.0
Closure size: 2176 -> 2169 (37 paths added, 44 paths removed, delta -7, disk usage -36.5MiB).

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

ty for the fix.


Global axis translation does not work

Operating system or device, Godot version, GPU Model and driver (if graphics related):
Fedora 64bit godot master 19b1ff0fc5f7acce23176ad6c8752604357472f0
Issue description:

the axis translation in global coordinates is broken, it does not respect the axis
example

Steps to reproduce:
try to translate something by axis
ping @n-pigeon
Link to minimal example project:

I think it's a recent regression, I wasn't seeing this weirdness in 9a78efc when I was demonstrating Godot's axes for someone on Discord.

most probably it's a regresion from f1c2a18e57a8214a7881ac760c0c225ddbf5da64

What? O_o I tested it and worked.
Testing it now on master and also works. What the hell...
Can you give me test project?

@n-pigeon it is in every project, but there is something weird, it only happens with release_debug, in debug build im unable to reproduce.

@djrm
Ah ok, I tested only with debug build. (I must remember this lesson for future xD)
Thx for clues. :)

I would be curious to know how release_debug vs debug has a difference :p

in my case its just the compiler, i do release_debug with gcc and debug with clang
g++ (GCC) 7.2.1 20170915

@Zylann Me too xDDD
I can confirm it break with release_debug... (I use gcc for both)

@Zylann @djrm
Problem was in uninitialized bool. In debug target it was false as intended but in release_debug it was initialized by true and that was the problem :B


SSL tests: compress generated output a little

Don't emit duplicate server/client sections when they are
identical. Instead, just point to the same section.

+1


fix: fix go.mod

Proposed changes
Not sure when this happened but our go.mod is all over the place, you are suppose to have two sections, one for direct and one for indirect dependencies but we had multiple sections all with a combination of all and making the file really hard to mantain and probably breaking some tooling around it

@colm-quinn there's no linter for go.mod extralegally enough, and it's a file that's suppose to be managed by tooling, my feeling somebody added things manually and just the tooling couldn't cope and decided to do the best it could


Error when bundling the commonmark module

Here the demo project
https://github.com/duongphuhiep/webpack-bug01
This project contains only index.js which
require('commonmark')

And webpack gives error when creating the bundle
ERROR in ./~/entities/maps/xml.json
Module parse failed: /home/duong/dev/webpack-bug01/node_modules/entities/maps/xml.json Line 1: Unexpected token :
You may need an appropriate loader to handle this file type.
| {"amp":"&","apos":"'","gt":">","lt":"<","quot":"\""}
|
 @ ./~/entities/lib/encode.js 1:31-58

ERROR in ./~/entities/maps/entities.json
Module parse failed: /home/duong/dev/webpack-bug01/node_modules/entities/maps/entities.json Line 1: Unexpected token :
You may need an appropriate loader to handle this file type.
...
 @ ./~/entities/lib/encode.js 6:32-64

ERROR in ./~/entities/maps/legacy.json
Module parse failed: /home/duong/dev/webpack-bug01/node_modules/entities/maps/legacy.json Line 1: Unexpected token :
You may need an appropriate loader to handle this file type.
...
@ ./~/entities/lib/decode.js 2:16-46

ERROR in ./~/entities/maps/decode.json
Module parse failed: /home/duong/dev/webpack-bug01/node_modules/entities/maps/decode.json Line 1: Unexpected token :
You may need an appropriate loader to handle this file type.
...
 @ ./~/entities/lib/decode_codepoint.js 1:16-46

My guess: the commonmark module contains some very long line.. and webpack could not handle that?

You probably need to use the json-loader: https://github.com/webpack/json-loader

why json-loader? commonmark is a javascript module
npm install commonmark --save

Most likely one of its dependencies is trying to import a json file.
Node supports require calls to json files, but webpack doesn't support json imports out of the box.

Yup, you need to set up json-loader due to the way commonmark has been developed. If still relevant, feel free to re-open at Stack Overflow.


metrics: Add metricClusterDeploymentSyncsetPaused

The OpenShift Dedicated SRE team would like to be alerted when a production ClusterDeployment has a hive.openshift.io/syncset-pause="true" annotation for some threshold duration.
This adds a new Prometheus metric to allow for such an alert.  It's essentially a boolean for each ClusterDeployment.

@dgoodwin Reworked as you suggested, though CI tests seem to be wedged at the moment.
This version is a little more intrusive as I had to split a util function into two and tend to its unit tests.

@dgoodwin Reworked as you suggested, though CI tests seem to be wedged at the moment.
This version is a little more intrusive as I had to split a util function into two and tend to its unit tests.

:100:
Thanks!
/lgtm

:100:
Thanks!
/lgtm


Copy (Ctrl+C) doesn't work

It never has for me (though I some other editor bugs have been fixed; play is a lot more usable than it was originally).

Paste (with text from another source) does work. Copy+Paste does nothing (presumably bad clipboard contents ignored).
Using Firefox 55.0.3 on Fedora 25.

Can you try the debugging steps listed in #96 and check the linked Ace issue to see if it seems relevant?

Same as in #96. I guess it's a duplicate then, sorry, but I think you were premature in closing, because it's still an issue.

Duplicate of #96

I closed it because the reporter stopped caring about it. I've reopened it because you care about it. Either you will identify the root cause of the issue or stop caring about it as well, and then I'll close it again 😈

I'm not sure what you mean. I still care about it. What do you expect me to do? It seems to be the bug in Ace you linked, so my plan was to wait until it is fixed upstream. (I guess I don't care enough to invest the time to fix it myself. Especially since the simple editor works.)


Add easter egg

Add an easter 🥚

I'll take this 😄

@Norech This is open for everybody 😃

Awesome Easter eggs everyone! You can keep them coming but closing the issue for now :) 🍆


Could not bind to IPv4 or IPv6

I got the following error while installing zulip
-------------------------------------------------------------------------------
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v01.api.letsencrypt.org/directory
-------------------------------------------------------------------------------
(A)gree/(C)ancel: a
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for ce.scu.ac.ir
Cleaning up challenges
Problem binding to port 80: Could not bind to IPv4 or IPv6.
IMPORTANT NOTES:
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.

Zulip installation failed!

The install process is designed to be idempotent, so you can retry after resolving whatever issue caused the failure (there should be a traceback above). A log of this installation is available in /var/log/zulip/install.log

The log file also contains those line. What is the problem with binding?

Is that the same as https://github.com/certbot/certbot/issues/5840
?

I think Certbot's security model is such that they don't allow that for the "get a cert" phase -- because what they want is to check that you have administrative control over the server before issuing an SSL certificate, and that means used a privileged port (any user account can access port 5000).

Same problem here.

.app domain never runs on port 80

How solve?

For installing Zulip, @mobtexapp, you can just use the --self-signed-cert option to install Zulip, and then get your SSL certificate whatever way you like and install it following our documentation.  It's impossible to use certbot on ports other than port 80 for getting a cert, though you only need certbot to control port 80 for a few seconds, so depending on how unacceptable downtime is for whatever's running on other ports, you might still be able to use certbot to get a certificate.

Is it possible that Zulip is installing apache2 package and starts is before certbot?
Or are you starting apache2 but using certbot in standalone mode?
While installing zulip, it looks like apache2 is installed in someway, it was not there before. So either Zulip or Certbot is starting the service which holds port 80.
Just run service apache2 stop and continue installing server again.

@emrahgunduz Zulip does not install apache2.  You can consult /var/log/dpkg.log to try to figure out how it got installed on your system.

@timabbott thanks for the tip.
As it turns out, if you searched "certbot install", the fist link you'll get is a link that defaults to cerbot-apache. If you are not careful, and not selected "none of the above", given instructions also install apache2 binary, which blocks port 80.
It would be nice if you could add a warning in your documentation for those who want to install certbot, to not select the apache, nginx or any other software but install the common version.

@emrahgunduz so, our installation documentation recommends passing the --certbot option and having Zulip invoke certbot for you; what documentation were you looking at?

@timabbott does passing --certbot, install the required items? Documentation do not specify this detail. That's why I installed it via apt by myself. If it does, it would be nicer to specify this detail.
What I meant with my previous comment was, adding a warning paragraph in "Install SSL Certificates" so users in a hurry (like me) would not make the same mistake if they are installing certbot themselves.


Deeplinking fallback not working

Github issues are for bug reports. If this is a question around usage or understanding please use
Stack Overflow. https://stackoverflow.com/questions/tagged/uber-api
Library version:
Repro steps, stacktrace, screenshots:
Expected Behavior:

Deeplink.Fallback.MOBILE_WEB and Deeplink.Fallback.APP_INSTALL are not navigating to play store or mobile web


QueryPC2::uniprot_id_to_reactome_pathways returns more results than RTX

Hi Kevin,
MWE in RTX: pc.uniprot_id_to_reactome_pathways("P68871").

First we will get http://www.pathwaycommons.org/pc2/search.json?q=P68871&type=pathway
Then react ID appears only in json["searchHit"]["pathway"] will be fetched.
Another react ID will appear in json["searchHit"]["uri"] but we don't count it in. E.g. R-HSA-6798695

MWE in BioThings:

First we access http://biothings.io/explorer/api/v2/directinput2output?input_prefix=uniprot&output_prefix=ncbigene&input_value=P68871 and get ncbigene:3043
Then we get http://biothings.io/explorer/api/v2/directinput2output?input_prefix=ncbigene&output_prefix=reactome.pathway&input_value=3043
Looks like we count all the react ID in Pathway Commons json["searchHit"]["uri"] in the response.

I don't know which side is correct, RTX or BioThings. Could you please check it out? Thanks!
Best,
Yao

@erikyao
Hi Yao, my understanding is that you should trust the results from BioThings Explorer (which contains both json['searchHit']['pathway'] and json['serachHit']['uri']).
When you make a query like this: http://www.pathwaycommons.org/pc2/search.json?q=P68871&type=pathway.

The['searchHit']['uri'] represents the direct pathway which this protein 'P68871' is involved, e.g. R-HSA-6798695.

And the ['searchHit']['pathway'] field represents the parent pathways of 'R-HSA-6798695', e.g. R-HSA-168249, R-HSA-168256.

I am using one part of JSON output as example here:
`{
"uri": "http://identifiers.org/reactome/R-HSA-6798695",
"biopaxClass": "Pathway",
"name": "Neutrophil degranulation",
"dataSource": [
"http://pathwaycommons.org/pc2/reactome"
],
"organism": [
"http://identifiers.org/taxonomy/9606"
],
"pathway": [
"http://identifiers.org/reactome/R-HSA-168249",
"http://identifiers.org/reactome/R-HSA-168256"
],
"excerpt": null,
"size": 1319,
"numParticipants": 1309,
"numProcesses": 10
},
You could double check the web page from reactome:http://reactome.org/content/detail/R-HSA-6798695. When you scroll down to the row 'Participant of', you should see 'Innate Immune System'. (This is the parent pathway of R-HSA-6798695). And if you click on it, it should lead you to http://reactome.org/content/detail/R-HSA-168249. And if you look for the parent for R-HSA-168249, you should find R-HSA-168256.
Given that, I think when you are querying for all pathways which a protein/gene participates in, you should both include all the results. In the current parser in RTX, you are only including the parents results, which is not sufficient.
And BTW, because the PC API is not well designed (e.g. they use URI to represent values), I chose not to include them in BioThings Explorer. So when you are querying for uniprot-reactome association, you are directly getting results from MyGene.info. And the data source of MyGene.info for pathway directly comes from Reactome, which you surely can trust.
Let me know if you have any further questions!

Good. I’ll record this as a bug of RTX.
Thank you, Kevin.
On Thu, May 31, 2018 at 7:32 PM Kevin Xin<EMAIL_ADDRESS>wrote:

@erikyao https://github.com/erikyao
Hi Yao, my understanding is that you should trust the results from
BioThings Explorer (which contains both json['searchHit']['pathway'] and
json['serachHit']['uri']).
When you make a query like this:
http://www.pathwaycommons.org/pc2/search.json?q=P68871&type=pathway.

The['searchHit']['uri'] represents the direct pathway which this
protein 'P68871' is involved, e.g. R-HSA-6798695.
And the ['searchHit']['pathway'] field represents the parent pathways
of 'R-HSA-6798695', e.g. R-HSA-168249, R-HSA-168256.
I am using one part of JSON output as example here:
`{
"uri": "http://identifiers.org/reactome/R-HSA-6798695",
"biopaxClass": "Pathway",
"name": "Neutrophil degranulation",
"dataSource": [
"http://pathwaycommons.org/pc2/reactome"
],
"organism": [
"http://identifiers.org/taxonomy/9606"
],
"pathway": [
"http://identifiers.org/reactome/R-HSA-168249",
"http://identifiers.org/reactome/R-HSA-168256"
],
"excerpt": null,
"size": 1319,
"numParticipants": 1309,
"numProcesses": 10
},
You could double check the web page from reactome:
http://reactome.org/content/detail/R-HSA-6798695. When you scroll down to
the row 'Participant of', you should see 'Innate Immune System'. (This is
the parent pathway of R-HSA-6798695). And if you click on it, it should
lead you to http://reactome.org/content/detail/R-HSA-168249. And if you
look for the parent for R-HSA-168249, you should find R-HSA-168256.
Given that, I think when you are querying for all pathways which a
protein/gene participates in, you should both include all the results. In
the current parser in RTX, you are only including the parents results,
which is not sufficient.
And BTW, because the PC API is not well designed (e.g. they use URI to
represent values), I chose not to include them in BioThings Explorer. So
when you are querying for uniprot-reactome association, you are directly
getting results from MyGene.info. And the data source of MyGene.info for
pathway directly comes from Reactome, which you surely can trust.
Let me know if you have any further questions!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kevinxin90/RTX_BioThings_Explorer/issues/1#issuecomment-393740272,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AElzcAe8ku5yklJIFcLdD3qCN0k_KIIJks5t4KfCgaJpZM4UV_JE
.


AttributeError: module 'airflow.settings' has no attribute 'engine'

Can not  init db env in dev mode:
Traceback (most recent call last):
  File "/Users/admin/Anaconda3/envs/sheenflow/bin/sheenflow", line 8, in <module>
    sys.exit(main())
  File "/Users/admin/Git/Public/sheenflow/airflow/__main__.py", line 38, in main
    args.func(args)
  File "/Users/admin/Git/Public/sheenflow/airflow/cli/cli_parser.py", line 51, in command
    return func(*args, **kwargs)
  File "/Users/admin/Git/Public/sheenflow/airflow/cli/commands/db_command.py", line 34, in initdb
    print("DB: " + repr(settings.engine.url))
AttributeError: module 'airflow.settings' has no attribute 'engine'

Please remove sheenflow-airflow package, this is a local dev-test.

Please remove sheenflow-airflow package, this is a local dev-test.


bluetooth shell deadlock on USB shell UART

tests/bluetooth/shell on nrf52840dk_nrf52840 builds, and when I type bt init the subsystem initializes.
If I use 58f1e393bb16cf0872af8191f642989e8e560037 in https://github.com/pabigot/zephyr/commits/issue/27599 to switch to using a USB console that's also the shell device, the command line bt init never returns.
Debugging shows that bluetooth/shell/bt.c successfully invokes bt_enable(bt_ready) and returns, but bt_ready() hangs in the shell_print marking the completion of initialization.  Additional diagnosis shows that shell_pend_on_txdone() is never receiving the signal to proceed.
This behavior is reproduced both without and with #27025.

@pabigot can you test it over UART as well? I suspect that this might be related to #25672

IIRC I did test it that way since it's the default configuration, and it worked fine.  It possibly is related; the CDC ACM UART appears to use the system work queue to complete transmission, while a real UART would do it though interrupts.  If bt_enable() is also using it, and trying to print from it, that could be a problem.

It is a problem but I couldn't figure out how to overcome that. Similar situation happens with mcumgr #27727.

Results of some investigation: bt_enable() invokes bt_init() from the system work queue, which blocks until the initialization completes.  While it's blocked work items have been queued for cdc_acm_irq_callback_work_handler that would have to be processed to unblock it.
This can be resolved by adding a dedicated work queue in subsys/usb/class/cdc_acm.c, but that doesn't help because usb_transfer_work() is also using the system work queue and can't make progress until bt_init() gets out of the way.
This can be resolved by adding a dedicated work queue in subsys/usb/usb_transfer.c.
Solutions are in the updated https://github.com/pabigot/zephyr/commits/issue/27599 (which also includes #28369 as an alternative to #28339).  However putting a clone of the system work queue in every module that wants to use a work queue is not sustainable.
I think the use of the system work queue in USB and Bluetooth both need to be reviewed.
It may also be that the shell needs to document that shell_fprintf() should not be used from anything that might be invoked by a work queue.
FYI @jfischer-phytec-iot @joerchan

It's actually sufficient to give the USB infrastructure its own work queue, and let usb_transfer and cdc_acm share it.  That might be a viable solution.

I think the use of the system work queue in USB and Bluetooth both need to be reviewed.

Using a bluetooth work-queue instead of the system workqueue has been suggested other places, for example to free up the availability of the system-workqueue.
However this issue seems to be that the API of shell over CDC ACM cannot be called from the system-workqueue without the risking a deadlock. So solving this problem in the USB CDC ACM driver seems like the correct fix here.
Adding another workqueue could be expensive it terms of RAM though, as the work done in the callbacks could mean you need a large system workqueue stack.
Is it a possibility that the callback work is still done in the system workqueue, but the tx_work is done in another workqueue or possibly a TX thread?

However this issue seems to be that the API of shell over CDC ACM cannot be called from the system-workqueue without the
risking a deadlock. So solving this problem in the USB CDC ACM driver seems like the correct fix here.

It's not isolated to shell; any blocking UART transmission over CDC ACM will suspend whatever thread is animating the UART flow.  The impact is not localized to tasks within the CDC ACM driver since it depends on other parts of USB to get and put data, so the fix can't be done within CDC-ACM itself.
Dunno who wants to take this on, but if I were to do it I'd have an Kconfig-controlled selection of the work queue used by the USB subsystem, either system or its own, and have the USB-specific one default selected when CDC-ACM is enabled. Too much functionality depends on UART being able to make progress regardless of which thread is waiting for it.  I can submit that as a fix if nobody else has a different approach in progress.
At this time I don't recommend changes to Bluetooth, just taking into account that other system work queue users can block it and considering future changes.


Allow duplicate rule variable usage.

This fixes #1996 by removing the variable name from the lookups stack once the recursive lookup call has been performed. Without this, any previously expanded variable could no longer be referenced in the command, as Ninja would (incorrectly) complain about a cyclical dependency.

You mean #1966 instead of #1996, right?

Oh absolutely, good catch :-) I have uploaded a new commit with the right number in the message. Fortunately, the test already has the correct number.

Is it possible to create a more lightweight unit test for this? (if too complicated don't bother)
Have you seen #2202 and can comment on the differences?

friendly ping. The pull request was updated to include an explanation.


Make Fee field of swap response repeated

btw since this is your first merge into this repo, make sure you've already read and are following https://bloxroute.atlassian.net/wiki/spaces/TRAD/pages/42991617/Git+Submodule+Management#Working-with-Other-Developers to coordinate the merge between this and the main API repo