Improve user navigation through demos

Following the site re-design, it is now straightforward for a user landing on the main page (or main demo page) to find the entry point to the basic demos. However, there is not much guidance on where to go next.
It would be nice to have a mechanism for navigating a user through various sequences of related tutorials. The 'related demos' in the side bar is a starting point for this, but we can also do something more concrete.
For example:

provide navigation links to "previous/next demo" at the bottom of demos; more specific than just having "related demos"
provide some curated lists on the main demo page. For example, clicking a button that says "interested in quantum chemistry?" will provide a list of recommend demos focused on qchem, and any prerequisite demos, to work through
a collapsible sidebar on the left that displays a demo's location relative to other demos in a list, as shown in the graphic below. This would be the most challenging to organize and implement, but might also provide the best experience because it allows a user to see more context about what the demo contents may be used for

Yep, this would be amazing. :+1:
How come you think it would be hard to organize and implement?

The tree itself is easy to construct, the challenge would be updating everything when new demos are added.
Using the drawing as an example, suppose we add a demo between A and B - this would be part of both the red route and the blue route. If we were to just  hardcode the sidebars the way the 'related demos' currently are, we'd have to manually update all of the demos to incorporate the new one. This would be tedious so we will have to figure out how to automate it within sphinx.
We should be able to use sphinx-tabs to enable switching between routes like I drew, but I'll have to look into how to handle their contents. Ideally there is something built into sphinx that allows us to specify a table of contents for each route. Then in the individual demos we indicate which routes the demo is part of, and when the website is built it pulls the information and populates the tabs. If sphinx doesn't have that functionality, we can build it ourselves :)

Rather than having all information about different routes hard-coded into the demos themselves (either by hand or using sphinx), would it make more sense to have a standalone page with all of the "mini-courses", and when you click on one, it renders its own page with its own navbar, and each page is viewed in a subframe?

As a new user I am finding it very difficult to just find examples that use Tensorflow, or just Strawberry Fields, or other examples that are just to do with chemistry etc. Some kind of easy to understand categories would be helpful.

That's useful feedback, thanks @hpssjellis!
Have you used the filters on the right hand side of the page?

Unfortunately, they currently vanish on narrow browser windows, so perhaps we should move them to a more prominent location.

I missed those on a full window, since we are so used to sidebar Ads I didn't even see them. Yes on my cell phone, even with desktop view they did not show.  I was thinking of something more like this page I have that shows every demo, but perhaps split up into sensible sections.  list format. I will dig a bit and see if I can find some categories.
Even this very cool page https://pennylane.ai/qml/demonstrations.html only shows a few of the demos at a time. Took me a bit to realize that the images scroll.
Actually just a problem with any large site that has a lot to show, very confusing for beginners to reduce the information overload to find simple starting points. By the way @josh146  the site is nicely done.

Thanks @hpssjellis! All feedback is valuable and we will take it to heart. We're always trying to find ways to give users the best experience :slightly_smiling_face:

Thanks @hpssjellis!

Already solved on the right side of the demos 😄
I think this can be closed @ikurecic


Adds device plugin support

This adds support in krustlet for Kubernetes device plugins, which enable Kubernetes workloads to request extended resources, such as hardware, advertised by device plugins as described by this issue #594.
This implements the Kubernetes Device Plugin Manager. It implements the device plugin framework's Registration gRPC service. A device plugin (DP) can register itself with the kubelet through this gRPC
service. This allows the DP to advertise a resource like system hardware to kubelet. The DeviceManager contains a NodePatcher that patches the Node with resources advertised by DPs. Then the K8s scheduler can schedule Pods that request those resources to this Node.
This adds a Resources State to kubelet between the Registered and ImagePull states. If the K8s scheduler schedules a Pod that requests aresource, the Resources State will first check that the requested resource is syntactically an extended resource by using utils from resources.rs[^2]. If it is, it calls out to the DeviceManager. The device manager notifies the DP (each connection with a DP is stored in a PluginConnection) that it wants to use some of its resources by making an allocate gRPC call. On success, it (should[^1]) ensure that all necessary mounts, environment variables, annotations, and device specs are added to the Pod (which's Containers) are requesting the DP resource.
In order to free up Device Plugin resources used by terminated Pods, the DeviceManager contains a PodDevices structure that queries K8s Api for currently running Pods before each allocate call. It then will update it's map of allocated devices to remove terminated Pods.
Some of the above is summarized in the following project layout (besides the Resources state, changes to provider interface, kubelet startup, etc):
kubelet/src
└── resources
    ├── util
    |      └── mod.rs
    ├── device_plugin_manager
    │   ├── mod.rs
    │   ├── manager.rs
    │   ├── node_patcher.rs
    │   ├── plugin_connection.rs
    │   └── pod_devices.rs

This PR is still a work in progress. Outstanding work includes:

[x] Handling the grace period and removal of registered device plugins that go offline No grace period needed. Immediately removing the device plugin (PluginConnection) and its devices if it drops its end of the ListAndWatch channel.
[x] Add documentation
[x] More unit tests
[x] More in-line documentation
[ ] Addressing in-line todos
[x] Testing via running with a device plugin
[x] Check mutex handling switched to using tokio::sync::RwLock
[x] Check asynchronous updating of shared device list

Outstanding questions:

[ ] How to handle environment variables, device specs, or annotations specified in a Device Plugin AllocateResponse
[x] Should the Allocated state be made into a generic Resources state for later when support for standard K8s resources (cpu and memory) is added?
[x] Where should the resources.rs utils live. This is related to the previous question.

[^1]: There currently does not seem to be support for environment variables, device specs, or annotations in kubelet. For now, this only supports HostPath volumes or Mounts in the device plugin API.
[^2]: More information on the resource model can be found in the Kubernetes resource design proposal.
closes #594

Please make sure to update this section of the documentation once you're ready to document this PR :)
https://github.com/deislabs/krustlet/blob/main/docs/topics/plugin_system.md#what-is-not-supported

I am running krustlet and a device plugin locally to test the end to end scenarios. I cannot seem to get the Node status patch here to work.  It is returning a node status patch without the added entries to node.status.allocatable and node.status.capacity.
For example, when a device plugin with resource name example.com/mock-plugin registers and advertises 2 healthy and 1 unhealthy device, the following patch should be applied to the node:
kubelet::device_plugin_manager::node_patcher: Patching krustlet-wasi node status with NodeStatus { addresses: None, allocatable: Some({"example.com/mock-plugin": Quantity("2")}), capacity: Some({"example.com/mock-plugin": Quantity("3")}), conditions: None, config: None, daemon_endpoints: None, images: None, node_info: None, phase: None, volumes_attached: None, volumes_in_use: None }

But the returned patch status does not contain the example.com/mock-plugin resource:
kubelet::device_plugin_manager::node_patcher: Node status patch returned Node { metadata: ObjectMeta { annotations: Some({"node.alpha.kubernetes.io/ttl": "0", "volumes.kubernetes.io/controller-managed-attach-detach": "true"}), cluster_name: None, creation_timestamp: Some(Time(2021-06-14T17:57:26Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: None, generate_name: None, generation: None, labels: Some({"beta.kubernetes.io/arch": "wasm32-wasi", "beta.kubernetes.io/os": "wasm32-wasi", "kubernetes.io/arch": "wasm32-wasi", "kubernetes.io/hostname": "kagold-ubuntu", "kubernetes.io/os": "wasm32-wasi", "type": "krustlet"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some("v1"), fields_type: Some("FieldsV1"), fields_v1: Some(FieldsV1(Object({"f:spec": Object({"f:taints": Object({})})}))), manager: Some("kube-controller-manager"), operation: Some("Update"), time: Some(Time(2021-06-14T17:57:26Z)) }, ManagedFieldsEntry { api_version: Some("v1"), fields_type: Some("FieldsV1"), fields_v1: Some(FieldsV1(Object({"f:metadata": Object({"f:annotations": Object({".": Object({}), "f:node.alpha.kubernetes.io/ttl": Object({}), "f:volumes.kubernetes.io/controller-managed-attach-detach": Object({})}), "f:labels": Object({".": Object({}), "f:beta.kubernetes.io/arch": Object({}), "f:beta.kubernetes.io/os": Object({}), "f:kubernetes.io/arch": Object({}), "f:kubernetes.io/hostname": Object({}), "f:kubernetes.io/os": Object({}), "f:type": Object({})})}), "f:spec": Object({"f:podCIDR": Object({}), "f:podCIDRs": Object({".": Object({}), "v:\"<IP_ADDRESS>/24\"": Object({})})}), "f:status": Object({"f:addresses": Object({".": Object({}), "k:{\"type\":\"Hostname\"}": Object({".": Object({}), "f:address": Object({}), "f:type": Object({})}), "k:{\"type\":\"InternalIP\"}": Object({".": Object({}), "f:address": Object({}), "f:type": Object({})})}), "f:allocatable": Object({".": Object({}), "f:cpu": Object({}), "f:ephemeral-storage": Object({}), "f:hugepages-1Gi": Object({}), "f:hugepages-2Mi": Object({}), "f:memory": Object({}), "f:pods": Object({})}), "f:capacity": Object({".": Object({}), "f:cpu": Object({}), "f:ephemeral-storage": Object({}), "f:hugepages-1Gi": Object({}), "f:hugepages-2Mi": Object({}), "f:memory": Object({}), "f:pods": Object({})}), "f:conditions": Object({".": Object({}), "k:{\"type\":\"OutOfDisk\"}": Object({".": Object({}), "f:lastHeartbeatTime": Object({}), "f:lastTransitionTime": Object({}), "f:message": Object({}), "f:reason": Object({}), "f:status": Object({}), "f:type": Object({})}), "k:{\"type\":\"Ready\"}": Object({".": Object({}), "f:lastHeartbeatTime": Object({}), "f:lastTransitionTime": Object({}), "f:message": Object({}), "f:reason": Object({}), "f:status": Object({}), "f:type": Object({})})}), "f:daemonEndpoints": Object({"f:kubeletEndpoint": Object({"f:Port": Object({})})}), "f:nodeInfo": Object({"f:architecture": Object({}), "f:containerRuntimeVersion": Object({}), "f:kubeProxyVersion": Object({}), "f:kubeletVersion": Object({}), "f:operatingSystem": Object({})})})}))), manager: Some("unknown"), operation: Some("Update"), time: Some(Time(2021-06-14T17:57:26Z)) }]), name: Some("krustlet-wasi"), namespace: None, owner_references: None, resource_version: Some("13893"), self_link: None, uid: Some("42de55c7-b593-41fc-9090-28296f0bd280") }, spec: Some(NodeSpec { config_source: None, external_id: None, pod_cidr: Some("<IP_ADDRESS>/24"), pod_cidrs: Some(["<IP_ADDRESS>/24"]), provider_id: None, taints: Some([Taint { effect: "NoSchedule", key: "kubernetes.io/arch", time_added: None, value: Some("wasm32-wasi") }, Taint { effect: "NoExecute", key: "kubernetes.io/arch", time_added: None, value: Some("wasm32-wasi") }]), unschedulable: None }), status: Some(NodeStatus { addresses: Some([NodeAddress { address: "<IP_ADDRESS>", type_: "InternalIP" }, NodeAddress { address: "kagold-ubuntu", type_: "Hostname" }]), allocatable: Some({"cpu": Quantity("4"), "ephemeral-storage": Quantity("61255492Ki"), "hugepages-1Gi": Quantity("0"), "hugepages-2Mi": Quantity("0"), "memory": Quantity("4032800Ki"), "pods": Quantity("110")}), capacity: Some({"cpu": Quantity("4"), "ephemeral-storage": Quantity("61255492Ki"), "hugepages-1Gi": Quantity("0"), "hugepages-2Mi": Quantity("0"), "memory": Quantity("4032800Ki"), "pods": Quantity("110")}), conditions: Some([NodeCondition { last_heartbeat_time: Some(Time(2021-06-14T17:57:26Z)), last_transition_time: Some(Time(2021-06-14T17:57:26Z)), message: Some("kubelet is posting ready status"), reason: Some("KubeletReady"), status: "True", type_: "Ready" }, NodeCondition { last_heartbeat_time: Some(Time(2021-06-14T17:57:26Z)), last_transition_time: Some(Time(2021-06-14T17:57:26Z)), message: Some("kubelet has sufficient disk space available"), reason: Some("KubeletHasSufficientDisk"), status: "False", type_: "OutOfDisk" }]), config: None, daemon_endpoints: Some(NodeDaemonEndpoints { kubelet_endpoint: Some(DaemonEndpoint { port: 3001 }) }), images: None, node_info: Some(NodeSystemInfo { architecture: "wasm-wasi", boot_id: "", container_runtime_version: "mvp", kernel_version: "", kube_proxy_version: "v1.17.0", kubelet_version: "0.7.0", machine_id: "", operating_system: "linux", os_image: "", system_uuid: "" }), phase: None, volumes_attached: None, volumes_in_use: None }) }

I have tried different types of patches (Merge vs Strategic) and pulling down the node status and patching with an updated one but have had the same result as above.
Does anyone know the best way to patch the node status? I am following a similar pattern as these node status patches that krustlet periodically does.

I am guessing this has something to do with the type of credential we are using. I thought we had fixed all of this with bootstrapping and requesting the right credentials, but perhaps we need another role as well

Thanks @thomastaylor312 for the help figuring out that we needed to use json patch.  Got node patching working in 8af4e54

I created a sample device plugin for testing the following end-to-end flow:

Run krustlet locally (on Kind)
Register a device plugin with krustlet
Deploy a pod that requests the device plugin advertised resource
See allocate called in Krustlet (Pod does not run because it is not a WASM application)

Steps to try it out yourself:
Run krustlet (on this fork), specifying the device plugins directory
export KRUSTLET_NODE_IP=<IP_ADDRESS>
KRUSTLET_DEVICE_PLUGINS_DIR=~/device-plugins just run
kubectl certificate approve kagold-ubuntu-tls

Clone and run the sample device plugin, specifying the same device plugins dir (be sure to include terminating /)
git clone https://github.com/kate-goldenring/sample-device-plugin
cd sample-device-plugins
cargo run ~/device-plugins/

Check that the krustlet node is now advertising an example.com/mock-plugin resource
kubectl get no krustlet-wasi -o yaml | grep example.com/mock-plugin

Apply a pod that requests the example.com/mock-plugin resource
cd sample-device-plugins
kubectl apply -f wasm-pod.yaml

Look at krustlet logs and see that allocate has been called. If you have a wasm application image, it would be great to see someone try this and replace the nginx container with it to see the application fully deployed.

Please make sure to update this section of the documentation once you're ready to document this PR :)
https://github.com/deislabs/krustlet/blob/main/docs/topics/plugin_system.md#what-is-not-supported

@bacongobbler added the documentation in 4e3bfac.

@bacongobbler @thomastaylor312 This is ready for review. The PR description should be up to date and documentation on the implementation was added in 4e3bfac. It explains that there is still not support for environment variables, annotations, and device specs being mounted into Pods that request device plugin resources. I am going to look into adding support for this but in the meantime, this is in a stable place to review.

@thomastaylor312 I believe I have addressed everything. Thank you and @bacongobbler for the feedback and help!


Remove v1 content building support

OSBS-6665

https://github.com/projectatomic/osbs-docs/pull/76
Maintainers will complete the following section:

[x] Commit messages are descriptive enough
[x] "Signed-off-by:" line is present in each commit
[x] Code coverage from testing does not decrease and new code is covered
[x] JSON/YAML configuration changes are updated in the relevant schema
[x] Changes to metadata also update the documentation for the metadata
[x] Pull request includes link to an osbs-docs PR for user documentation updates

Release notes added:
Improvements

Dropped support for container registry API V1
Dropped support for V1 content

I also removed the deprecation warning note for API V1


TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module

2024-08-05T20:04:51.008287Z [info     ] C:\autoidm\testing\mr_72\Job.meltano\loaders\target-postgres\venv\lib\site-packages\paramiko\transport.py:259: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module in 48.0.0

https://github.com/paramiko/paramiko/issues/2419
https://github.com/paramiko/paramiko/pull/2421

Added links to the paramiko issue and PR that will address this for us :)


useTransition().type does not expose done value after successfull form submit, like fetcher.type does

What version of Remix are you using?
1.9.0
Background Context
While creating my own custom hook to detect when  useSubmit is done responding from the server, I found that useTransition().type doesnt expose a done value, unlike fetcher.type
// Easier to implement since `done` is exposed on `fetcher.type`
const {submit} = useRemixFetcher({
  onSuccess(){..},
  onError(){..}
})

// harder to implement  since `done` is not exposed on `useTransition.type`
const {submit} = useRemixSubmit({
  onSuccess(){..},
  onError(){..}
})

Expected Behavior
After calling useSubmit and successfully receiving a response back from the server, useTransition's useTransition().state value should be idle and the useTransition().type value should be done, eventually
Actual Behavior
After calling useSubmit() and successfully receiving a response back from the server, useTransition.type  value does not get updated to done to indicate inform our remix app that the form submission has successfully completed, instead useTransition.type === 'idle'.
Steps to Reproduce
Stackblitz URL: https://stackblitz.com/edit/node-s1xxwy?file=package.json,app%2Froutes%2Findex.tsx
Testing useSubmit

Click getData button  inside the Child1Component container
View console.log's, you'll see that transtion.type will never have a done value

Testing useFetcher

Click getData button  inside the Child2Component container
View console.log's, you'll see that transtion.type will never have a done value

Video Reproduction
https://user-images.githubusercontent.com/6743796/211213158-2fb1623d-f0c8-406d-a5d1-5207ee7fdecd.mp4
Why is useTransition().type === 'done'  important?
1.Currently fetcher.type exposes done after a full form submission has completed:
https://github.com/remix-run/remix/blob/main/packages/remix-react/transition.ts#L121-L247

2.Having a done state is useful in user land, as it allows use to tap into when a submission completed from the backend.
For example, you can use fetcher.type === 'done' to trigger an onSuccess or onError callback in your code and show a Toast to the user after the server has responded successfully or with an error.
I created a custom lightweight hook around useFetcher called useRemixFetcher which allows a user specify onSuccess and onError callbacks like this & I use fetcher.type === 'done' to know when my submission has completed in order to fire my callbacks.
// DEMO: https://stackblitz.com/edit/node-s1xxwy?file=package.json,app%2Froutes%2Findex.tsx

const { submit, state } = useRemixFetcher({
    onSuccess: () => {
       toast.success('🎉 Success')
    },
    onError: (error) => {
       toast.error('❌ Error')
    },
  });

Currently it's  more complicated to detect when a useSubmit has completed due to done not being exposed to transition.type Stackblitz URL: https://stackblitz.com/edit/node-s1xxwy?file=package.json,app%2Froutes%2Findex.tsx

Follow up questions
I'm aware that useTransition is a global singleton whereas useFetcher's are completely independent of other useFetcher's
1.I was curious if this omission of done on useTransition is intentional?
2.I think we should expose it to TransitionStates just like how its exposed in useFetcher's FetcherStates type

@ryanflorence#9214  showed on the Roadmap planning LiveStream, potentially exploring something like this for a future API:
// Timestamped discussion for API above^: https://youtu.be/eGWG22olL0o?t=1936
useFetcher({
  onStart() {},
  onError() {},
  onSuccess() {},
  onComplete() {},
});

That future API would be really awesome, hopefully for useSubmit as well

Discord Thread

ryanflorence:
Transitions are never done. You can land on any url with both GET and POST. You are either loading, submitting, or idle. There is no “done” state like fetchers
abelsj60:
You're totally right, but you could look at the completion of a navigation as "done," which is where I settled. It can be meaningful at times.
ryanflorence:
location.key will be “default” for the first page visit. Every location after can then be thought of as either “done” or “idle”, we went with idle; I’m saying the semantics of your idea of “done” is the same as “idle”. It’s always done.

I need to dig into this more; regarding this thought from Ryan on useTransition:

I’m saying the semantics of your idea of “done” is the same as “idle”. It’s always done.

I'm curious why fetcher doesn't follow the same rule to represent "done" since in theory going back to idle is like done; simply observing this discrepancy from a consumer who lacks the context of the creators of the library code
Another idea 💭 ❓
Have transition.type emit a done value temporarily and after very short amount of time return it back to idle?
I just wish there was an easier way to detect when a useSubmit call is actually done
@kentcdodds @sergiodxa @brophdawg11  on your thoughts 🙏 ; i'm probably thinking about this the wrong way

This feels like a proposal to change the current APIs to more closely align useTransition.state and useFetcher.state, rather than a bug since these are both working as designed.  Should this be converted to a Discussion in the Proposals category?

since in theory going back to idle is like done or no?

This is where I land personally.  I think done is sort of confusing on fetchers, since (1) you can usually infer it from the presence of fetcher.data and (2) it's not really "done" since it can be relaunched at will.  My gut reaction is that once the events API comes around we remove the fetcher done state to align with navigations.  This would have to be a Remix v2 change though since it's breaking

There's a handy "convert to discussion" action - but that may only be available to maintainers?  If you don't see that let me know and I'll do it so you don't have to copy/paste everything over!

Hi @brophdawg11 - converting to a discussion sounds good 👍
I think its only available to maintainers - convert to discussion github docs
Initially was curious if transition.state not having done state was like fetcher was intentional or not before digging into the codebase 😄 thanks for saving me time and adding more context

For anyone else who stumbles upon my example & code in the future, I just saw in the v1.10.0 Remix release notes type was removed from the transition object

https://github.com/remix-run/remix/releases/tag/remix%401.10.0#:~:text=true%3B
}-,New hooks,-🪝

oh - transition.type is still there - that wording is confusing.  I updated it to clarify we removed type in the new useNavigation hook that is replacing useTransition.  But for Remix v1 useTransition remains unaffected.  In Remix v2 we'll drop useTransition so it's recommended to start moving over to useNavigation now ahead of an eventual Remix v2 release.

I'm also going to transfer this issue over to the react-router repository since all the useFetcher and useNavigation code lives over there now.


[Issue] - Health Checker shows sec vuln when disabling external access ECP

Provide Version Number
<IP_ADDRESS>2
Describe the issue

Disabled external access on ECP (https://www.alitajran.com/disable-external-access-to-ecp-exchange/).
Run the Health Checker
Health Checker shows below security vuln:

Expected behavior
It's not telling clearly if we need to set something or if we should not use IP restrictions on ECP.
Shouldn't it be possible to use IP restrictions and get a NON-security vuln shown in Health Checker? Or another piece of information that tells us what to do so this can be fixed.

duplicate of #1260


Alpine Ski House Happiness Meter - Updated to new MS Azure Cognitives Services SDK

I replaced the old SDK (Project Oxford) with the new one Microsoft.Azure.CognitiveServices.Vision.Face -Version 2.0.0-preview and changed the app as needed.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: maduva sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

closing this since you are creating a new one with more changes included


[CARBONDATA-1226]adding libthrift dependency

can't build successfully because missing thrift  dependency.
Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[CARBONDATA-<Jira issue #>] Description of pull request

[ ] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).

[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.

[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

[ ] Testing done
 Please provide details on
 - Whether new unit test cases have been added or why no new tests are required?
 - What manual testing you have done?
 - Any additional information to help reviewers in testing this change.

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Can one of the admins verify this patch?

Build Success with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/96/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2668/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/carbondata-pr-spark-1.6/588/

@sehriff   Two comments:

The pull request's JIRA number is wrong([CARBONDATA-1081]), please double check it.
The libthrift dependency has been added to format module,  and format jar with version number(1.1.1-SNAPSHOT ) has been uploaded to maven center.  I think you should be able to build successfully if your script is correct.

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2912/

Build Failed with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/326/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2917/

Build Failed with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/331/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2918/

Build Failed with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/332/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2919/

Build Failed with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/333/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2920/

Build Failed with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/334/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2921/

Build Failed with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/335/

Can one of the admins verify this patch?

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/53/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/82/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.1/107/

Build Failed  with Spark 2.3.2, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/106/

Build Failed  with Spark 2.4.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.4/103/

Build Failed  with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/10/


Optional services in Gnome 3

Most of the services enabled by default when enabling Gnome 3 as the desktop manager are only required by the optional packages. Requiring you to disable them when you only want to use the core packages and a small subset of the optional packages.
I disabled the optional packages by excluding them:
environment.gnome3.excludePackages = pkgs.gnome3.optionalPackages;
And added the ones I wanted to keep in environment.systemPackages.
The following services are all optional, they only disable parts of Gnome, but are nog required for it to run correctly.
# Used in e.g. GParted to acquire the necessary rights
# without having to open it as administrator.
security.polkit

# GNOME Disks (gnome-disk-utility) is a GUI around this service.
services.udisks2

# As far as I could tell only required by the users settings menu.
services.accounts-daemon

# Used to determine your location, used in e.g. GNOME Maps.
services.geoclue2

# Assistive Technology Service Provider Interface,
# a framework to integrate accessibility functions in applications.
services.gnome3.at-spi2-core

# By using the evolution-data-server, other GNOME applications
# are integrating with Evolution.
services.gnome3.evolution-data-server

# These speak for themselves.
services.gnome3.gnome-documents
services.gnome3.gnome-online-accounts
services.gnome3.gnome-user-share

# Necessary for Nautilus to have the ability to automount e.g. USB sticks.
services.gnome3.gvfs

# GUI for PGP keys, works in combination with Gnome keyring.
services.gnome3.seahorse

# A quick previewer for Nautilus.
services.gnome3.sushi

# Tracker is a search engine, search tool and metadata storage system.
services.gnome3.tracker

# Required by the sound mechnisms of Gnome.
hardware.pulseaudio

# Backend used in e.g. Empathy, the chat client.
services.telepathy

# If enabled, Gnome has integration for it in the top bar.
networking.networkmanager

# If enabled, the bluetooth settings menu can be used.
hardware.bluetooth

In my case for example, only having polkit, gvfs and pulseaudio will suffice. So maybe it would be better to have a setting that determines whether they should be enabled by default? Like environment.gnome3.includeOptional, which would then include pkgs.gnome3.optionalPackages and enable these services.

(triage) @lethalman I think you are the main Gnome maintainer, what are your thoughts about this?

We have environment.gnome3.excludePackages, I'd agree in having the same for services.

That would be an improvement over my current solution:
# Disable most of the services required by the optional Gnome packages.
# security.polkit.enable = mkForce false;
# services.udisks2.enable = mkForce false;
# services.accounts-daemon.enable = mkForce false;
services.geoclue2.enable = mkForce false;
# services.gnome3.at-spi2-core.enable = mkForce false;
services.gnome3.evolution-data-server.enable = mkForce false;
services.gnome3.gnome-documents.enable = mkForce false;
services.gnome3.gnome-keyring.enable = mkForce false;
services.gnome3.gnome-online-accounts.enable = mkForce false;
services.gnome3.gnome-user-share.enable = mkForce false;
# services.gnome3.gvfs.enable = mkForce false;
services.gnome3.seahorse.enable = mkForce false;
services.gnome3.sushi.enable = mkForce false;
services.gnome3.tracker.enable = mkForce false;
# hardware.pulseaudio.enable = mkForce false;
services.telepathy.enable = mkForce false;
# networking.networkmanager.enable = mkForce false;
# services.upower.enable = mkForce false;
hardware.bluetooth.enable = mkForce false;

GNOME must be working with full features. You had to disable those in your config, and that's fine and expected. I can accept some more mkDefault in the nixos service, but I don't think we can do anything much smarter than that.

(triage) any updates?


Updated example data to have correct getdist columns

Description
As noted in #48, the loglikelihood column is incorrect for the getdist chains files.
MultiNest was also not generated from the correct seed, which this PR also addresses.
Checklist:

[x] I have performed a self-review of my own code
[x] My code is PEP8 compliant (flake8 anesthetic tests)
[x] My code contains compliant docstrings (pydocstyle --convention=numpy anesthetic)
[x] New and existing unit tests pass locally with my changes (python -m pytest)
[ ] I have added tests that prove my fix is effective or that my feature works

This only affects the GetDist and Nested Sampling examples, not any analysis or plotting, right?

This only affects the GetDist and Nested Sampling examples, not any analysis or plotting, right?

Indeed. It's a very minor change code-wise. I only spotted it when trying to compute the Bayesian Model dimensionality for mcmc samples from the loglikelihood column in #48 . The deeper nested sampling runs also make for slightly more converged plots.


Fixed wrong script links in README

Minor fix to repair the broken links to the zz-signing / zz-mainline-signing script.

Good catch, thanks.


Kanban setup

Project requirement ✍

Created an empty repository for the project with best practices of GitHub flow.
Copied all project to-dos to the Kanban board.
Assigned tasks to each member of the group 💯 .

Project description 🗒

This group comprises two members, that is @shafiuyushawu and @ZewdieMc.
Please find the link to our project space-travelers-kanban-board

STATUS: INVALID CODE REVIEW REQUEST 🛑 🛑
Hi @shafiuyushawu and @ZewdieMc,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.
Invalid Code Review Request
You should provide the link to your Kanban board, not your repository.
Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear. And please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.

Hello @TedLivist
Thank you!

Hi @shafiuyushawu  and @ZewdieMc 👏 👏,
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉

Highlights
Added link to GitHub project ✔
Listed information about the number of people in the group ✔
Assigned tasks to each member of the group fairly ✔
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

@OyePriscilla Thank you!

@OyePriscilla Thank you!

@shafiuyushawu You welcome!


mkv support

Any way to add support for mkv files or subtitles when playing from local offline offline storage?
Thanks for the work you put in on this project.

Kiran, I was not able to understand how to play local mkv's using plex. Could you please tell a bit more? I've installed plex on my phone, but I haven't found server app for phone. As I can understand, my phone should be server that sends videostream to webview inside CarStream. Another question: does all the traffic make a loop via internet in this case. Or plex is clever enough to use local server without internet usage. Does this work without any internet connection?


null error when running ballerina program

Description:
when running ballerina run on a simple helloworld program against the nightly build ballerina-platform-macos-installer-x64-0.974.0. I get the following error when installed with mac osx installation.
ballerina: error loading balo null
When I run the externally downloaded binary the execution happens with the same user.
The above error can be avoided only when the ballerina run is executed under super user.
Steps to reproduce:

Install ballerina nightly build ballerina-platform-macos-installer-x64-0.974.0 on mac os.
execute ballerina run hello-world.bal on a ballerina file

Affected Versions:
0.974.0
OS, DB, other environment details and versions:
MacOs
Related Issues (optional):

Suggested Labels (optional):
Critical, Bug, Installer
Suggested Assignees (optional):
Tharik

Fixed with https://github.com/ballerina-platform/ballerina-lang/pull/9035


Kokoro broke

https://source.cloud.google.com/results/invocations/0b399dac-9be4-4242-b0f0-a016caafbc75/targets
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Waiting for /tmpfs/kokoro_build_exit_code to contain an integer exit code.
kokoro_log_reader: Exhausted retries waiting for bash to return an integer exit code, returning exit code 137 instead. This is not a Kokoro error! This usually means: 1) Your build was killed by something in the VM 2) Exited normally, but that the parent shell of the nohup'd build process is IO blocked and could not write out the exit_code_file in 60 seconds. In this case be sure that all processes launched by your build are properly cleaned up before exiting to free up resources and reduce IO contention, or 3) There was a BSOD, the VM rebooted, the builder has reconnected but the process is of course gone.

python-3.7.9         | 45.3 MB   |            |   0%

gcc-riscv64-elf-newl | 61.4 MB   |            |   0%
gcc-riscv64-elf-newl | 61.4 MB   |            |   0%

xz-5.2.5             | 341 KB    |            |   0%
xz-5.2.5             | 341 KB    |            |   0%

pip-20.3.3           | 1.8 MB    |            |   0%
pip-20.3.3           | 1.8 MB    |            |   0%

libftdi-1.3          | 154 KB    |            |   0%
libftdi-1.3          | 154 KB    |            |   0%

isl-0.21             | 1.5 MB    |            |   0%
isl-0.21             | 1.5 MB    |            |   0%
[Errno 28] No space left on device
CondaError: Failed to write to /tmpfs/src/github/fpga-tool-perf/env/downloads/conda-pkgs/symbiflow-yosys-plugins-1.0.0_7_g59ff1e6_23_g3a95697_17_g00b887b_0194_g40efa51-20201120_145821.tar.bz2
  errno: 28
[Errno 28] No space left on device
CondaError: Failed to write to /tmpfs/src/github/fpga-tool-perf/env/downloads/conda-pkgs/make-4.2.1-h1bed415_1.conda
  errno: 28
CondaError: Failed to write to /tmpfs/src/github/fpga-tool-perf/env/downloads/conda-pkgs/libuv-1.40.0-h7b6447c_0.conda
  errno: 28
[Errno 28] No space left on device: '/tmpfs/src/github/fpga-tool-perf/env/downloads/conda-pkgs/icestorm-0.0_0719_g792cef0-20201120_145821.tar.bz2'
[Errno 28] No space left on device: '/tmpfs/src/github/fpga-tool-perf/env/downloads/conda-pkgs/lz4-c-1.9.2-heb0550a_3.conda'
[Errno 28] No space left on device: '/tmpfs/src/github/fpga-tool-perf/env/downloads/conda-pkg

[ID: 3681945] Build finished after 406 secs, exit value: 137

Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
[18:29:35] Collecting build artifacts from build VM
Build script failed with exit code: 137

I believe the problem is no longer valid.


Lifetime Parameters

It's probably just because I'm new to rust, but how do I make a Dispatcher a member of a struct without having to bubble lifetime parameters through my entire object hierarchy?

I think you should be able to set the lifetime parameters to 'static as long as all your systems are 'static (i.e. none of your system types contain lifetime parameters themselves).

This is what I ended up doing.  It felt kinda of wrong, but these things should live for the entire lifetime of the program, and I think that's basically the definition of 'static.


python3Packages.dsmr-parser: 0.30 -> 0.31

Motivation for this change
Update to latest upstream release 0.31
Change log: https://github.com/ndokter/dsmr_parser/releases/tag/v0.31
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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/)
21.11 Release Notes (or backporting 21.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
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 147029 run on x86_64-linux 1

2 packages built:

python38Packages.dsmr-parser
python39Packages.dsmr-parser


Change LinkResolver's default return type to string | null | undefined

Is your feature request related to a problem? Please describe.
With the recent improvements to Route Resolver, Link Resolver can now be used as a way to override Route Resolver's URL. To do this, Link Resolver must return a nullish value to fallback to the Route Resolver's value.
LinkResolver's return type can be configured via the ReturnType type parameter (see source here), but it defaults to string. Defaulting to string requires overriding the return type anytime Link Resolver is used as a way to override Route Resolver since it will return a nullish value.
Describe the solution you'd like
LinkResolver's default return value should change from string to string | null | undefined to support nullish return values.
Describe alternatives you've considered
LinkResolver can be configured to return nullish values using its type parameter, but this is unergonomic and feels like straying from best practices.
LinkResolver<string | null | undefined>

Additional context

None

Do we want to move on with that (I'm all for it), happy to work on it on v7

Yes, let's do this!

Addressed in 3e1fc53 (#265), didn't feel like it was worthy of a standalone PR, left context in the commit body :)


Alignment of same color colors in why krishiconnect

Is there an existing issue for this?
I have searched the existing issues
What happened?
Alignment of same color colors in why krishiconnect. The uneven color doesn't look good.

Record:
I agree to follow this project's Code of Conduct
I'm a GSSOC'24 contributor
I want to work on this issue.
@Anushkabh , Please assign me this issue.

@Anushkabh, Please merge this PR.


Leshan Server

All the Leshan demo servers are down ! Can anybody fix that ??

Apache was down... So only web interface was not accessible,  I don't know why ? :thinking:
I restarted it, it should be ok now.


Batch & Transaction Memory Storage

Resolves https://github.com/thehubbleproject/hubble-contracts/issues/548
Out of scope:

Marking batches/txns as finalized.

TODO

[x] Link/hookup existing functionality to current implementations in client.
[x] Unit/integration tests.
[x] Add doc comments around all new interfaces/types/implementations.
~- [ ] (optional?) Integrate finalization state transitions~ https://github.com/thehubbleproject/hubble-contracts/issues/592

@ChihChengLiang Ready for your review.

One other thing I should note: A lot of the work in this PR is tightly coupled with different related domain concepts (batches, transactions) having to know explicitly about each other in order to properly store their state. As we build more functionality out, it might make sense to use some sort of message bus like a NodeJS EventEmitter to allow these different domains to talk to each other via eventing without explicitly calling cross domain in code. This would also reduce the services/managers (dependencies) that any given piece would need to function.
I experimented with an async event emitter in one iteration of this but ran into some issues. I will likely revisit this concept in future work when and where it makes sense.


_text.Text docstring revision

reverted all Nov 2 commits save part of  557196f examples/vehicle_dim.py, delete  # drawing_tool.set_grid(True)
installed and tested pre-commit, which issued a warning:

[WARNING] The 'rev' field of repo 'https://gitlab.com/pycqa/flake8' appears to be a mutable reference (moving tag / branch).  Mutable references are never updated after first install and are not supported.  See https://pre-commit.com/#using-the-latest-version-for-a-repository for more details.  Hint: pre-commit autoupdate often fixes this.

running pre-commit autoupdate as suggested removed the warning, but modified some files.  I did not want to commit them, but the following error gave me no choice:

[ERROR] Your pre-commit configuration is unstaged.

I believe these changes were okay so I committed them.
In short, this PR changes the class Text docstring in _text.py, and deleted # drawing_tool.set_grid(True) in examples/beam1.py
I merged master into this branch (3 commits) so it can be merged directly, if so you choose.

Great! Thanks for the contribution. Your commit history is pretty untidy. Do you mind if sort that out for you? We don't need all those "precommit test" commits in our history, for example. Similarly, we use Conventional Commits so that release notes can be automatically generated.

Yes, please - the reason for this is that I was setting up the pre-commit machinery when I did not have additional commits to make, and I wanted to make sure it worked properly prior to PR.
Then, IDK how to tidy the mess; sorry!

@ReblochonMasque for reference, I'll show you what I did to fix this.
This is the commit tree for your purge_examples branch (I've cloned your fork locally):

As you can see it's pretty messy with various merges (its always better to rebase :-) ) intertwined with real changes. Firstly I checked out the commit on which you first based the branch, and created a new branch from that point:
git checkout 7bf839b
git checkout -b repair

Now I can copy the commits we want on to that new branch. Looking through the list there is one we want, ab476aa and ideally we'd have the commit with the drawing_tool comments removed too, but this isn't in an isolated commit, so we can just mop that up at the end.  So I update purge_examples to point to this commit pointer:
git checkout purge_examples
git reset --hard repair

Lastly, this branch is now based on place which master was a while ago not the latest version of master from my fork. Your fork has commits in master which are not in mine, so I add my repo as a new remote called upstream
git remote add upstream git@github.com:rvodden/pysketcher.git

And then reset master so that it points to the same place as my repo:
git checkout master
git pull upstream master

Switch back to our new purge_examples branch and rebase it of the new master:
git checkout purge_examples
git rebase master

RIght now all these changes are just local, we've published none of our changes. So lastly lets force push onto your remote which will update the PR (we have to force push as we're editing history):
git push origin purge_examples -f

And now the remote branch (and the PR) only contain that commit :-)

LGTM - thank you for the contribution :-)

Great, thank you for spending the time to teach me - I am afraid this is still above my pay grade, but I'll try to learn.
You've rephrased the commits' comments so they "match requirements/standards", but I could not find the requirements. Can you point them to me so I can save you the trouble in the future?
Could you please see if you could provide an answer to this discussion opened Nov 1st? Maybe some bullet point guidelines if you don't have much time? that would be quite useful to help me evaluate my involvement.
Many thanks


Drongo tarball for each Sparrow release

Since github release of Sparrow includes full source tarball it makes sense to also have a corresponding Drongo tarball in each release.
That way it will be possible to re-build Sparrow without using git or for archival reasons.

Since github release of Sparrow includes full source tarball it makes sense to also have a corresponding Drongo tarball in each release.

This is automatically provided by Github. Unfortunately, it does not appear possible to include submodules in the release tarballs: https://stackoverflow.com/questions/34719785/how-to-add-submodule-files-to-a-github-release.

That way it will be possible to re-build Sparrow without using git or for archival reasons.

It's unclear to me that this adds much - if Github is no longer available, the source tarballs it hosts won't be available either.

I wasn't aware github had an easy way to fetch corresponding submodule versions for each release.
submodule snapshot is available on a parent release tree snapshot (for example: https://github.com/sparrowwallet/sparrow/tree/1.6.6) and easily downloadable.
That solve the issue.
Thanks.

True, TIL. Click on the drongo submodule, Code > Download ZIP.


Bug fix for Sentinel-2 derivative STAC

This is updating the dc_tools suite, but not the stac.py file that has the new changes in it.
Better upgrade the odc-stac library too.


Integer variables causes many crash

Considering following query
query ($limit: Int!, $offset: Int!) {
    postList(__limit: $limit, __offset: $offset) {
        title
        slug
    }
}

And following variables
{"limit": 1, "offset": 0}

There are multiples bad type check which cause issues with integer values as PHP evaluate directly integer values as boolean ... We need to strict test null values !
Also add an array cast for json values in Request::setVariables(). Dunno if it's the right fix for this last one.

Thank you for contributing, will add to the nightly update!

👍 Could you consider update Youshido/GraphQLBundle ?

Later tonight, I have something else coming


Citrus 2.6.2 issue with Spring 4.3.x for Camel in Action book

Hi
I just upgraded to 2.6.2 and we have a TODO in the pom.xml about an issue with spring 4.3.x. I tried to run the test and it still fails with latest spring version.
I wonder if you guys could help and take a look?
https://github.com/camelinaction/camelinaction2/commit/a91926c18acb85ebca1cb038e5d882569c1a4954#diff-e47bb94fc43b39788639fad581271e8dR17

Yes, that 2.6.2 Citrus version is still bound to Spring 4.2.x because Spring 4.3.x changed some behavior regarding handling of autowired list of beans. Citrus 2.7 which is likely to be released in December 2016 is then using Spring 4.3.x and Java 8.


Time info disappeared after setting a task to be reminded later

A task is set to be reminded as follows: - [ ] Task (@2021-08-28 12:00). After changing the reminder to be one week after, it would become - [ ] Task (@2021-09-04), where the time disappears.

It is my expected behavior.
I feel strict time management(with time info) is not needed because I'm using another Calendar services.
When I choose Remind me later, I just want to postpone the task (e.g, I'm busy, or task not finished...).
I like this style because @2021-09-04 is more simple than @2021-08-28 12:00.
Could you tell me your use case?

(Of course, your suggested feature can be optionally provided with settings!)

Could you tell me your use case?

Sure. I am using Fantastical as a Calendar app. It also supports syncing tasks from reminder apps like Todoist.

If a synced reminder with time info, Reminder A, is not marked as done yesterday, it would be automatically moved to today at the same time in Fantastical.
Of course, the actual date info associated with Reminder A would not change in Todoist or Fantastical. It is just displayed on today in Fantastical.
I find this way of handing reminders natural, as there is a time info in the original reminder.

(Of course, your suggested feature can be optionally provided with settings!)

Therefore, it would be great to have such an option in settings for the user to choose if one wants to keep the time info or not. 😃

I feel strict time management(with time info) is not needed because I'm using another Calendar services.

Yes, I understand this. In fact, I also do it similarly, i.e., one only puts events/reminders that have to happen on a specific date or at a specific time in the Calendar. This is also what GTD method suggests regarding how to use Calendar.
Regarding how to use this Reminder plugin, I would imagine using it for tasks that have lower priorities, i.e. those not have to happen at a specific time or date, than those in the Calendar. So, there should not be a conflict in my use case.
Therefore, in my use case, it would still be useful to move reminders without losing the time info.

Thanks a lot for sharing your use case.
I understand your situation(using with other apps).
I'll consider to introduce new setting soon.


No shell ?

Hi Team,
Could anyone advise why i am receiving the connection back when try with netcat but nothing happening when i start the listener ?

@SmailDH it looks like the cmd payload you used with cme is using https, but the hoaxshell server was not started with -c and -p, used to provide certificate and private key files to start the listener via https. Maybe if you change protocol=https to protocol=http in the payload, it will actually work.
Another suggestion is to use Villain, which has the hoaxshell listener built-in and can also generate payloads (like the cmd-curl you are using) quickly, among other things.
hope it helps!

Thank you @t3l3machus , Yes it did work with "http" but doesn't look it handle the display very well, i will try to use the Villain as suggested :)

@SmailDH please let me know if you had the same issue with villain.

@SmailDH please let me know if you had the same issue with villain.

I will do , thank you!


Why?

Would love to see a blog or doc page on why you thought Lua on the JVM was a good idea.

What use cases does this make easier?
What problems does this solve?
Are you using it for any real world solutions?

Thanks! I've added a short description of what Rembulan can be used for to the Readme, and will think about writing a longer, more detailed version for the documentation.


drop binary factor

when doing binary classification with type = "prob" in partial_dependence we should drop one factor level, (how we know which idk, an option?), change the prob attribute as FALSE and assign the column for the other level the name of the target variable. This will get handled like regression in plot_pd.

fixed in c6d13d2cafdafa5f1815a6550352ed185a1a050f


fix(defaults): macOS env.APPDATA should be undefined

Close #24

Current coverage is 100% (diff: 100%)

Merging #27 into master will not change coverage

@@           master   #27   diff @@
===================================
  Files           1     1
  Lines          36    37     +1
  Methods         0     0
  Messages        0     0
  Branches        0     0
===================================
+ Hits           36    37     +1
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update b7f6245...5e5c391

LGTM.

Thanks!


Avoid ConcurrentModificationError while disposing StoreWatcher

cc @jimbeveridge

Travis is sad. Please don't merge until travis is happy again.

@sethladd Travis is happy now. Merging :)


Enable macOS notarization

This PR fixes #74782
The signing service currently has an issue, so the app bundle comes back broken. We're waiting on a fix from their side.

🥂

Has this been released yet? I downloaded VSCode from code.visualstudio.com today, February 8, 2020, and it still gives me this error message on Catalina.

@jtlapp this change is in master but hasn't been released yet (should be in insider's build).

@stripedpajamas We're currently finishing up a release, so Insiders is locked for a couple days.


Suggestion: document optional driver parameters

Short version: would you consider adding some more documentation in the README for what each of the optional driver parameters do? They are a bit mysterious right now, especially proxy, authType and encoding.
Longer version:
I spent a few hours today banging my head against why Storage operations on a webdav disk using this driver were failing silently. I eventually figured out from the Flysystem error handling docs that I could do a try {} catch() {} call that caught League\Flysystem\FilesystemException exceptions, which led me to the error message "Unable to write file at location: test.jpg. necessary data rewind wasn't possible" which led me to this Stackoverflow response which led me to try out setting authType to 1, and it worked! But I don't know why and I would have loved to avoided that rabbit hole. I think extended docs here could help others.
Thanks for considering it!

Hi @ChrisHardie,
I have edited the README and added the optional types. Hope this will helpt others.


need LICENSE.txt or anyfile which could resolve this error

If hipify_torch is added as submodule in pytorch , setup.py install throws the following error :
Building wheel torch-1.12.0a0+git95204c4
-- Building version 1.12.0a0+git95204c4
['CMakeLists.txt', 'Makefile', 'setup.py', 'LICENSE', 'LICENSE.md', 'LICENSE.txt']
/var/lib/jenkins/pytorch/third_party/hipify_torch
Could not find any of CMakeLists.txt, Makefile, setup.py, LICENSE, LICENSE.md, LICENSE.txt in /var/lib/jenkins/pytorch/third_party/hipify_torch
Did you run 'git submodule update --init --recursive --jobs 0'?

@sunway513 Is it okay to add a BSD-3 license to hipify_torch? It'd be similar to https://github.com/ROCmSoftwarePlatform/FBGEMM-private/blob/rocm/hipified/LICENSE


update packages

:white_check_mark: Build TheIdServer 7.4.4-fix-dependencies1-0017 completed (commit https://github.com/Aguafrommars/TheIdServer/commit/0ed7d2597a by @invalid-email-address)


升级到0.12.0登录报错

Describe the bug
{
"error": "code=500, message=Failed to find system setting list, internal=disk I/O error",
"message": "Failed to find system setting list"
}
{"time":"2023-04-03T16:12:41Z","method":"GET","uri":"/api/status","status":500,"error":"code=500, message=Failed to find system setting list, internal=disk I/O error"}
{"time":"2023-04-03T16:12:43Z","method":"GET","uri":"/sw.js","status":200,"error":""}
{"time":"2023-04-03T16:12:58Z","method":"GET","uri":"/api/status","status":500,"error":"code=500, message=Failed to find system setting list, internal=disk I/O error"}

Steps to reproduce
更新镜像升级报错
Screenshots or additional context
No response

访问/rss.xml
{
    "error": "code=500, message=Failed to get system customized profile, internal=not found",
    "message": "Failed to get system customized profile"
}

@ysicing  seem clean your cookie, maybe works. [尝试清理下cookie]


[BUG 🐜] Basin & table filling in before removing item.

Describe the bug
Don't know if this is intended behavior or not (if so, then feel free to just close this issue), but when either the Casting Basin or Casting Table has a created item in it from a being previously filled, it will immediately start filling the basin/table again before removing the item. Just feels odd behavior especially when casting something like an iron block. When the created iron block is removed, the basin/table is already filled with molten metal and immediately creates another iron block.
To Reproduce
Steps to reproduce the behavior:

Create a fluid piping system that feeds into either a Casting Basin or a Casting Table
Fill the system with any molten metal.
The basin/table will be filled with the molten metal.
The first recipe (in this case an iron block) will begin to be crafted.
Once the recipe is finished, but not before the crafted item is removed, the basin/table will be filled with molten metal again.

Expected behavior
5. Once the recipe is finished, but not before the crafted item is removed, the basin/table will be NOT filled with molten metal again until the crafted item is removed.
Screenshots
Jade showing that the basin is filled with molten metal again even though the created iron block has not been removed yet.

Environment:

MC/Forge version - 1.20.1
Create version - 0.5.1.f
Create Metallurgy version - 0.0.5

Hey @CravenCraft 👋
Sorry for being late. I announced a week ago that I was going on vacation and so on completely stopping development and therefore ticket issues etc.
For your problem, don't worry, this is not a bug. Just an oversight on my part. But rest assured, I have completely reworked the code for the Casting Basin/Table and will work similarly to TiC. Which means that this will no longer happen.
If you have any other questions, don't hesitate. I will close this post if I don't get answers in the next few days!

No worries. I have a handful of bugs for my own mods that I need to look into. Finding time to fix them all is tough haha.
But nice! This mod scratches the itch that other forging mods don't really hit. Can't wait to see how it evolves in the future!

Thanks a lot! That give me a lot of motivation! ❤
I'm bit curious, i will check your mods in ur Github repos.

Hey @CravenCraft 👋
Sorry for being late, see on Create Metallurgy Discord why the development is so slow. But I have finally push the code for the rework of Casting Basin/Table with the dynamic fluid capacity depending on the recipe requierement. You can found the main commit here that adding the feature -> Github Commit


There is no log tracing for websocket packet

For websocket connection, spring cloud gateway has no logs for each packet for debugging or tracing.

Closing in favor of #2638


Fixed #334 : Sort by barcode, name, brand

Description
The history items can now be sorted based on title , brand , time , barcode and most importantly nutrition grade.
Related issues and discussion
#334
Screen-shots, if any
Dialog

Sort by Time

Sort by Title

Sort by Brand

Sort by Grade

Hey @PrajwalM2212,
Your changes looks good to me!

Can you show us sort by brand on a different example? The rest look fine to me. However, the icon is not consistent with the rest of the icons in the app. This should be a material design icon.
It would probably be best to have this as a dialog to allow the user to choose the sorting direction.

@Karljoones

Icon made materialistic
Material Dialog created
Different brand example shown

Looks good to me, thank you for making the changes. Maybe "time" should be "Recently viewed"?

@Karljoones "time" changed to "Recently viewed"

Hey @PrajwalM2212,
Your changes looks good to me!

Hey @PrajwalM2212,
Your changes looks good to me!

It looks good as a first version, but I'm going to open a bug server side, so that we can sort all the products, and not just the first 10, the first 20…
An added advantage of adding a server side sorting API is that we can have more sorting criteria without increasing the initial size of the JSON
Otherwise, fine for merging feature wise.

Merged, thanks @PrajwalM2212


Add new role - build_push_container

build_push_container aims to be a generic role that can build multi-arch containers and push them to remote registry.
JIRA: OSPRH-9713

recheck

recheck

recheck

/approve

/lgtm


app error occured while query with parameters on replication mode of mysql 6.x

i use replication mode on mysql 6.x ,when i do query with parameters app throw Exception such as
java.sql.SQLSyntaxErrorException

then i found the reason here, I think statement.execute don't need any argument
https://github.com/apache/incubator-skywalking/blob/0929ff3453c3178db82a4b5399054900ab84bba0/apm-sniffer/apm-sdk-plugin/mysql-5.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/jdbc/mysql/wrapper/PreparedStatementWrapper.java#L156

Could you send a pull request foe this?

i have send the pull request #2260

Fixed.


Support loaders specified as an array

Current if the loaders are specified as an array, then extract will
assume they are the options. If the notExtractLoader is specified as
an array then there will be an error when trying to split it.
It might be best to only support this change if loaders: is used
instead of loader: but even solving that problem at all seems to be
a larger issue. This at least allows for using an array of loaders
even if it still must be in a loader: context.

+1, it's nicer to have multiple loader objects with their own query objects than to have long chained querystrings.


Testing Using Nock does not work

Bug Report
It looks like in v8 of @octokit/requests, they switched from using Node's HTTP api, to using fetch. The latest published nock does not have support for fetch, so it does not catch the requests.
Current Behavior
As described in documentation and set up by create-probot-app, using nock does not intercept requests.
describe('My App', () => {
  test('app', () => {
    const mock = nock('https://api.github.com')
            // Test that we correctly return a test token
            .post('/app/installations/2/access_tokens')
            .reply(200, {
                token: 'test',
                permissions: {
                    metadata: 'read',
                },
            });
        await probot.receive({name: 'repository', payload});

        expect(mock.pendingMocks()).toStrictEqual([]);
  });
});

API requests get through and fail because of invalid keys, tokens, or installation IDs
Expected behavior/code
Documented examples of testing should work and not let requests through.
Environment

Probot version(s): 13.0.2
Node/npm version: Node 18.12.1, NPM 8.18.2
OS: Windows 11
Nock: 13

Possible Solution

Update documentation to warn that nock does not currently work. Update create-probot-app to include nock@beta
-- or --
Somehow use the options.request.fetch  option with a custom mock function in @octokit/request

use nock 14 beta, which  should work with native fetch.

I figured that out while writing this bug, but it would be nice to have it documented somewhere. Maybe I should have put this in the doc's repo, but since it also applies to the create-probot-app I thought it made more sense to put it here

PRs are welcome. But somehow it feels wrong to document it now. If nock 14 becomes stable I would say yes.

You can use node-fetch yourself if you'd like, and avoid using the built in fetch API.


[BUG] -

Description
I am getting this error after running python3 app.py:
TypeError: Plain typing.TypeAlias is not valid as type argument
Reproduction steps
1. Created a virtual environment like this: virtualenv -p python3.10 myenv
2. Activate it: source myenv/bin/activate
3. Clone this repo:
git clone https://github.com/Cinnamon/kotaemon
cd kotaemon
4. Install libraries:
pip install -e "libs/kotaemon[all]"
pip install -e "libs/ktem"
5. Download PDF_JS_DIST and extract it to libs/ktem/ktem/assets/prebuilt
6. Start web server: python app.py

Screenshots
![DESCRIPTION](LINK.png)

Logs
No response
Browsers
No response
OS
No response
Additional information
No response

Hi @Tansif, I'm investigating the issue. Can you share the llama-index and llama-index-core versions in your environment?


Implicit declaration of function 'check_string' is invalid in C99

when I use cocoapods to download diff-match-patch, and compile my project, it failed, error is "Implicit declaration of function 'check_string' is invalid in C99" why?

Can you leave a note as to how this problem was resolved?  In case anyone else runs into it.
I have no expertise in Objective C or cocoapods, so I can't comment.

the sdk's version is so low that xcode warns these errors, i update the lastet version


Add Markdown Toolbar functionality to notebook smoke tests.

I tried adding some WYSIWYG editor tests, but it looks like we can't set the editor div's inner HTML using the driver methods we have currently.

Pull Request Test Coverage Report for Build 962122383

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

Totals

Change from base Build 961966093:
0.0%

Covered Lines:
26330

Relevant Lines:
55638

💛  - Coveralls

@Charles-Gagnon I started trying to add something, but once I noticed I was changing actual product code I reverted it. Are we able to modify that driver code?

We modify product code all the time - no problems there. Just make sure to put in the SQL CARBON EDITs to help with VS Code merges.

Ok, I'll give that a try next Test Monday.


Support for debugger path resolution in launch.json

In order to support various debuggers with various options etc. it will be necessary to use the launch.json file with launch configurations.
With the case of having multiple targets, CMake Tools provides the ability to use the command "${command:cmake.launchTargetPath}" after "program" which gets resolved to the current executable.
I would like to suggest that a similar feature be implemented to resolve a value for the "miDebuggerPath" variable that points to the current kits debugger exe (whether this location has to be specified in the kit configuration using a variable or is automatically detected does not matter).
This would allow for a single launch configuration to be used for multiple debuggers.
I encountered that this was an issue when I wanted to make use of both MinGW 32-bit and 64-bit toolchains in the same project. The gdb.exe programs were "incompatible" and I could not simply use one path for both kits as doing so resulted in an error.
The command could potentially be named "${command:cmake.kitDebuggerPath}", but that is purely a suggestion.
Otherwise keep up the awesome work on the plugin!

I have realized that the issue is rather something to do with my 64-bit debugger not being familiar with my 32-bit executable strangely enough, and that (actually) this should work out of the box. It is therefore a separate issue and not CMake Tools related. I have closed the issue.

I agree with this issue completely.
Do you happen to have multiple debuggers on your system and is CMake Tools selecting the incorrect one for your current configuration (thats what is happening to me).

@seppeon I'm not sure that this is something CMake Tools would know how to resolve for you, but if you have more information about how you're selecting a debugger based on a configuration, perhaps there's a way.  For the debug button, CMake Tools has a simple strategy, but once you're using launch.json, you have full control and can create the debugger configuration in the way that you like.


plt.Axes argument in CLV plots

It would be convenient to provide a plt.Axes instance to the current plots functions
Old behavior still supported
model = ...

plot_frequency_recency_matrix(model)

Example of new functionality
fig, axes = plt.subplots(ncols=2)

plot_frequency_recency_matrix(model, ax=axes[0])
plot_probability_alive_matrix(model, ax=axes[1])

It's only a few lines so I already have it implemented in order to make the example so can open PR if desired.
In doing so, also noting the inconsistency in the labels. "Historical Frequency" != "Customer's Historical Frequency"

Sounds good 👍


How can I make a separate exit handler for each scene on the cancel button

I have such code. And also there are several different scenes, and in each of them, on the cancel button, I have to exit to my handler.
When I use conversation.run for my target, when I click the button, I get an error, and conversation.run doesn't fire on it

Why are you using conversation.run in the first place? More importantly, why does https://grammy.dev/plugins/conversations.html#leaving-a-conversation not apply?

Why are you using conversation.run in the first place? More importantly, why does https://grammy.dev/plugins/conversations.html#leaving-a-conversation not apply?

For each dialog, I have my own method where you need to exit when you click on the cancel button. Creating a lot of cancel callbacks is a bad idea.

Did you open the link? It shows how to create a single cancel handler for the entire conversation.

I need to make a handler for each conversation when exiting it. If you do as shown in the documentation, you will have to write
if() {} else if() ...

Did you open the link? It shows how to create a single cancel handler for the entire conversation.

you will have to write
if() {} else if() ...

There is no such code in the example. I don't understand which code you're referring to. Are you sure we're talking about the same thing?
Let me copy the code here.
async function movie(conversation: MyConversation, ctx: MyContext) {
  // TODO: code the conversation
}

// Install the conversations plugin.
bot.use(conversations());

// Always exit any conversation upon /cancel
bot.command("cancel", async (ctx) => {
  await ctx.conversation.exit();
  await ctx.reply("Leaving.");
});

// Always exit the `movie` conversation
// when the inline keyboard's `cancel` button is pressed.
bot.callbackQuery("cancel", async (ctx) => {
  await ctx.conversation.exit("movie");
  await ctx.answerCallbackQuery("Left conversation");
});

bot.use(createConversation(movie));
bot.command("movie", (ctx) => ctx.conversation.enter("movie"));

Where do you want to put if-else things now?

There is no such code in the example. I don't understand which code you're referring to. Are you sure we're talking about the same thing?
Let me copy the code here.

No, you did not understand me. I will try to show an example of what I want to do
`async function mainMenu(ctx) {
await ctx.reply("mainMenu");
}
async function settingMenu(ctx) {
await ctx.reply("settingMenu");
}
async function movie(conversation: MyConversation, ctx: MyContext) {
// TODO: code the conversation
}
async function movie1(conversation: MyConversation, ctx: MyContext) {
// TODO: code the conversation
}
// Install the conversations plugin.
bot.use(conversations());
bot.callbackQuery("cancel", async (ctx) => {
await ctx.conversation.exit("movie");
await mainMenu(ctx);
});
bot.callbackQuery("cancel1", async (ctx) => {
await ctx.conversation.exit("movie1");
await settingMenu(ctx);
});
bot.use(createConversation(movie));
bot.use(createConversation(movie1));
bot.command("movie", (ctx) => ctx.conversation.enter("movie"));
bot.command("movie1", (ctx) => ctx.conversation.enter("movie1"));`
I hope I gave the correct example. I will have to create my own cancel callback for each scene. How can I solve this problem of creating either cancel1-cancel2-cancel2
or cancel_ and in the handler do if (ctx.match[1] === "mainMenu") return mainMenu(ctx); else if (ctx.match[1] === "settingsMenu") return settingMenu(ctx);

No, you did not understand me. I will try to show an example of what I want to do
async function mainMenu(ctx) {
    await ctx.reply("mainMenu");
}

async function settingMenu(ctx) {
    await ctx.reply("settingMenu");
}

async function movie(conversation: MyConversation, ctx: MyContext) {
    // TODO: code the conversation
}

async function movie1(conversation: MyConversation, ctx: MyContext) {
    // TODO: code the conversation
}

// Install the conversations plugin.
bot.use(conversations());

bot.callbackQuery("cancel", async (ctx) => {
await ctx.conversation.exit("movie");
    await mainMenu(ctx);
});

bot.callbackQuery("cancel1", async (ctx) => {
await ctx.conversation.exit("movie1");
    await settingMenu(ctx);
});

bot.use(createConversation(movie));
bot.use(createConversation(movie1));
bot.command("movie", (ctx) => ctx.conversation.enter("movie"));
bot.command("movie1", (ctx) => ctx.conversation.enter("movie1"));

I hope I gave the correct example. I will have to create my own cancel callback for each scene. How can I solve this problem of creating either cancel1-cancel2-cancel2
or cancel_ and in the handler do
if (ctx.match[1] === "mainMenu") return mainMenu(ctx);
else if (ctx.match[1] === "settingsMenu") return settingMenu(ctx);

With this example I agree that I now really have no idea at all what you want.

What do you even mean by scene?

With this example I agree that I now really have no idea at all what you want.

What do you even mean by scene?

conversation

What do you even mean by scene?

used to call it a scene

Scenes are completely different from conversations. If you think they are similar in how they work, this is probably the main point here why it doesn't work the way you think it does.

Scenes are completely different from conversations. If you think they are similar in how they work, this is probably the main point here why it doesn't work the way you think it does.

I understand that scenes and conversations are different.
My problem was that in each conversation on the cancel button I have to go to a different handler. Let's say from conversation movie I have to go to mainMenu, and from movie1 I have to go to settingsMenu

Where is this mapping from conversations to menus defined? Do you want to do something with https://grammy.dev/plugins/conversations.html#inspecting-active-conversations?

Closing due to inactivity.


min_steps_between_thumbs not work in slider

Describe the bug
param ’min_steps_between_thumbs‘ not work in rx.slider
To Reproduce
Steps to reproduce the behavior:
rx.slider(
        min_steps_between_thumbs=10,
        id="api_temperature",
        on_change_end=State.set_node_temperature,
    ),

Expected behavior
step 10.
Screenshots

min_steps_between_thumbs is intended to keep a slider with multiple thumbs from having overlapping values... but it looks like it was actually removed from chakra-ui (the component library that reflex wraps).
At any rate, it would not have any effect unless creating a slider with multiple thumbs (the thing you grab and slide along the track).
What is your intended behavior? It sounds like you want the slider to move in steps of 10... that would be the step prop, which seems to not be exposed... but you can always hack around unexposed props via the custom_attrs escape hatch.
import reflex as rx

class State(rx.State):
    v: int = 50

def index() -> rx.Component:
    return rx.container(
        rx.text(State.v),
        rx.slider(
            default_value=State.v,
            on_change_end=State.set_v,
            custom_attrs={"step": 10}
        ),
        width="40vw",
    )

# Add state and page to the app.
app = rx.App()
app.add_page(index)
app.compile()

I think we can definitely get the step prop added to the component as an actual prop, if that solves your issue.
And we should get the min_steps_between_thumbs prop removed, since it doesn't seem to work anymore.
Let me know if this sounds reasonable.

Hi @masenf ，
Great！ ’custom_attrs‘ works！It is very useful, thanks!


Cannot implement optional methods/attributes from Java if outer class is generic

This is due to the underlying type being lost on type arg substitution.

Fixed.


Unintentional skipping of Group code

https://github.com/gdsestimating/dxf-parser/blob/887a26af9181c62bb5d016b606882d9897f5b7d7/src/entities/lwpolyline.js#L94
When we are on this lane because we detected group code NOT from VERTEX but from LWPOLYLINE, we should call
scanner.rewind();

before returning.
So when we jump back to looping over LWPOLYLINE group codes, we dont skip one.
Effectively this skips 210 code which is extrusionDirectionX and it is missing from entity.
Easy fix and makes sense :)

Good catch. Thanks for looking into this. I'm happy to take a pull request. Otherwise I'll get to it next time I work on this project.


Can I know the time interval when the clips are scraped?

I'm relaying clips to Nabi's Discord server through Holodex API.
I'm currently making requests every 3 minutes, but there are cases where it is not synchronized for more than 10 minutes.
If there's a fixed scrap scheduler, I think I can reduce the number of bad requests.

nvm my fault


DON-615: Tweek mobile menu design

Before and after screenshots, taken in Firefox set to iPhone 11 Pro display size:

@bdsl thanks, this is looking far better! I think there's a few more tweaks we can do:
It'd be really good if you can add the down arrows on the right side of the links which have submenus underneath them, as well as the multicoloured triangles on the left hand side of the submenu items, as per the Figma design. Any chance we can do this?

ah I see one of the menu items in the examples in this repo already has an icon. So I think it's just a case of adding the same in the actual fronted. https://github.com/thebiggive/components/blob/29fd510ff5bd8378e2bd1857b0c2f9ddbec620f4/src/index.html#L37 . Will make a PR over there for that.

@bdsl thanks, this is looking far better! I think there's a few more tweaks we can do: It'd be really good if you can add the down arrows on the right side of the links which have submenus underneath them, as well as the multicoloured triangles on the left hand side of the submenu items, as per the Figma design. Any chance we can do this?

I can give it a go. Do you know if we have those arrows and triangles already created, or if it may mean creating new image assets?

@bdsl I don't think we need images, I think it can be purely using HTML and CSS. See for example here: https://stackoverflow.com/questions/12089679/add-a-simple-down-arrow-image-to-drop-down-menus

@bdsl As for the triangles, they might actually need to be images. Perhaps ask Beth if she has assets for them?

ah so we have just the one green triangle (https://github.com/thebiggive/components/blob/2f37b43fbb7fab819c476ba449cfa895dd4c072b/src/assets/images/triangles-combined.svg) . I can easily copy that and make all the other colours, what would help most is if anyone has the hex colour codes for them - the green is code #2AF135 but what's the code for the other triangles we need? I'll ask Beth, thanks.

@alihejazi I've added the triangle icons, code is split between here and https://github.com/thebiggive/donate-frontend/pull/837 . Not sure how to test both together, but it should be fine to deploy in either order, it won't do anything until both are in place.

@alihejazi I've added the triangle icons, code is split between here and thebiggive/donate-frontend#837 . Not sure how to test both together, but it should be fine to deploy in either order, it won't do anything until both are in place.

@bdsl Looks fantastic so far. I would suggest we make the triangle names more generic, in case we later (in the future) find other places to use them too. For example, I'dd suggest something like .icon-{colourName}, e.g. .icon-purple, .icon-orange, and if the colour ever was one of our primary colours we could name it .icon-primary, .icon-secondary, .icon-tertiary


Error: "All com.android.support libraries must use the exact same version"

Hi,
How can I get rid of this error? It happens when I add your library to my Gradle.
All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 25.3.1, 23.2.0. Examples include com.android.support:animated-vector-drawable:25.3.1 and com.android.support:preference-v7:23.2.0 less... (Ctrl+F1)
There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion.)

My Gradle:
apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.3"
    defaultConfig {
        applicationId "<my_package_name>"
        minSdkVersion 21
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
    compile 'net.xpece.android:support-preference-color:1.2.7'
}

I think you should upgrade the dependencies in your library. Thank you!

As in README you have to explicitly say which version of preference-v7 you
wish to use.
Add this to your dependencies
compile "com.android.support:preference-v7:25.3.1"

Dne 6. 6. 2017 14:31 napsal uživatel "Giuseppe Montuoro" <
<EMAIL_ADDRESS>
Hi,
How can I get rid of this error? It happens when I add your library to my
Gradle.
All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 25.3.1, 23.2.0. Examples include com.android.support:animated-vector-drawable:25.3.1 and com.android.support:preference-v7:23.2.0 less... (Ctrl+F1)
There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion.)
My Gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.3"
defaultConfig {
applicationId "<my_package_name>"
minSdkVersion 21
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
compile 'net.xpece.android:support-preference-color:1.2.7'
}
Thank you!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/consp1racy/android-support-preference/issues/70, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEYIzQfmC3-1PcGtiANmKjDjxQP74YS_ks5sBUaqgaJpZM4NxRpR
.

Ops, I did not see that... My fault!


Improve Upgrade Handling while publishing an App

Add Documentation for upgrade parameter.
If upgrade is not needed just install the app. this helps when the user just wants to have the app running but doesn't know if an upgrade is necessary or not. just always publish with the upgrade parameter and then the app is ready in any case.

I understand the scenario, but if I select -upgrade I actually want it to fail if the prior app wasn't installed correctly or I accidently changed appid or other strange things.
We could do the following:
change this:
if($navAppInfoFromDb.ExtensionDataVersion -eq $navAppInfoFromDb.Version -and $upgrade){ to this
if($navAppInfoFromDb.ExtensionDataVersion -eq $navAppInfoFromDb.Version -and $upgrade -and $install){
basically meaning that if you supply both parameters, then it will install or upgrade.
(and then remove the install=true)
Make sense?

you are absolutely right. code adjusted.

Looking at it, I would like to request one more change in order to minimize impact on older versions etc.
this:
$navAppInfoFromDb = Get-NAVAppInfo -ServerInstance $ServerInstance -Publisher $appPublisher -Name $appName -Version $appVersion -Tenant $tenant -TenantSpecificProperties
if($navAppInfoFromDb.ExtensionDataVersion -eq  $navAppInfoFromDb.Version -and $upgrade -and $install){
    $install = $true
    $upgrade = $false
}

should be
if($upgrade -and $install){
    $navAppInfoFromDb = Get-NAVAppInfo -ServerInstance $ServerInstance -Publisher $appPublisher -Name $appName -Version $appVersion -Tenant $tenant -TenantSpecificProperties
    if($navAppInfoFromDb.ExtensionDataVersion -eq  $navAppInfoFromDb.Version -and $upgrade -and $install){
        $install = $true
        $upgrade = $false
    }
}

Sorry for not including this feedback in the first round

Thanks

hi freddy the optimizations were not so good after all. now the code doesn't do what it's supposed to.
if an old version was already installed and an upgrade is necessary $install is no longer set to $false and therefore runs into an error.
how do we proceed here? should i provide a pr with a fix?

If I read the code - install is set to $false if the app is already installed in the same version - install should not be set to false if an old version exists - or?
if you supply -ignoreIfAppExists - does it then work?

you are right.
we have just tested a case which we had not considered: the old app version was already uninstalled.
why not just change it like this way:
    if($navAppInfoFromDb.ExtensionDataVersion -eq  $navAppInfoFromDb.Version){
        $upgrade = $false
+   } else {
+       $install = $false
    }

I have a new problem with this code:
if($navAppInfoFromDb.ExtensionDataVersion -eq  $navAppInfoFromDb.Version){
        $upgrade = $false
+   } else {
+       $install = $false
    }

If -install and -upgrade are specified and there was no previous version of the app ( what means install), then after the sync $navAppInfoFromDb.ExtensionDataVersion = $null and does not equal $navAppInfoFromDb.Version what means $install = $false what is wrong.
I had to do 2 changes to this to make it work:
if(($navAppInfoFromDb.ExtensionDataVersion -eq  $navAppInfoFromDb.Version) -or `
($navAppInfoFromDb.ExtensionDataVersion.Length -eq 0))
{
     $upgrade = $false
} else {
     $install = $false
}

and I had to add $upgrade = $false under ignoreifinstalled
$appInfo = (Get-NAVAppInfo -ServerInstance $serverInstance -Name $navAppInfo.Name -Publisher $navAppInfo.Publisher -Version $navAppInfo.Version @addArg)
                        if ($appInfo) {
                            $publishIt = $false
                            Write-Host "$($navAppInfo.Name) is already published"
                            if ($appInfo.IsInstalled) {
                                $install = $false
                                Write-Host "$($navAppInfo.Name) is already installed"
                               ########## new ##########
                                $upgrade = $false
                                Write-Host "$($navAppInfo.Name) is already upgraded"
                               #######################
                            }
                        }

Sorry I did not have time to create a pull request, but it seems to work like this.

if you could copy/paste this into a new issue, then I will have a look when I return home from vacation.


Issues with null custom atributes

Hello,
I've added a custom attribute that is NOT part of the signup portion of my policy but IS part of the signup policy. When I programatically query the user from graph I do NOT see this custom attribute. This is for a specific. I am able to see custom attributes that are part of the signup policy though. How can i add custom attributes without them being part of the signup?

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

ID: c29c26fd-dad6-8435-0694-ba82c784818a
Version Independent ID: fab7c0ac-b35b-83f5-5a1e-c8a6ce26dc8b
Content: Define custom attributes in Azure Active Directory B2C
Content Source: articles/active-directory-b2c/active-directory-b2c-reference-custom-attr.md
Service: active-directory
GitHub Login: @davidmu1
Microsoft Alias: davidmu

@nezoic
Thanks for your feedback! We will investigate and update as appropriate.

I'm closing this out as it is a duplicate of #18144

Generally the recommended approach is to keep the signup policy separated in its own application and only use the policies for the bare minimum needed to create the initial account or authenticate the approved user.
If you are looking for more detailed troubleshooting of this issue please direct your question to MSDN and we will reply there. https://social.msdn.microsoft.com/forums/azure/en-US/home?forum=windowsazuread

We will proceed to close this thread. If you have further questions please direct them to us on the MSDN forum linked above or tag me in the comments.


Can't import library

Not usually a Julia user so apologies if I have missed something obvious..
I have just installed Julia 1.0.3, and I can clone the package, but when I run
using GeneralizedDynamicTopicModels as indicated, I get the following error:
julia> using GeneralizedDynamicTopicModels
[ Info: Precompiling GeneralizedDynamicTopicModels [892460d7-a05a-5b76-a12f-c6cff44d4fe4]
ERROR: LoadError: UndefVarError: include not defined
Stacktrace:
 [1] top-level scope at none:0
 [2] include at ./boot.jl:317 [inlined]
 [3] include_relative(::Module, ::String) at ./loading.jl:1044
 [4] include(::Module, ::String) at ./sysimg.jl:29
 [5] top-level scope at none:2
 [6] eval at ./boot.jl:319 [inlined]
 [7] eval(::Expr) at ./client.jl:393
 [8] top-level scope at ./none:3
in expression starting at /home/galm/.julia/dev/GeneralizedDynamicTopicModels/src/GeneralizedDynamicTopicModels.jl:1
ERROR: Failed to precompile GeneralizedDynamicTopicModels [892460d7-a05a-5b76-a12f-c6cff44d4fe4] to /home/galm/.julia/compiled/v1.0/GeneralizedDynamicTopicModels/byyYa.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1203
 [3] _require(::Base.PkgId) at ./loading.jl:960
 [4] require(::Base.PkgId) at ./loading.jl:858
 [5] require(::Module, ::Symbol) at ./loading.jl:853

A quick google tells me Julia has changed the way it imports, but I still don't know how I should change the source to make it work. Any tips?
Thanks very much!

Hey!
Thanks for reporting, I'll look into that as soon as possible.
Cheers

Hey,
I haven't touched this code in a while, so I did not immediately notice what the problem was. The code was written for Julia v0.6 (see the REQUIRE file) and since, a lot has changed. I am willing to do the effort of adjusting everything to the Julia v1.0 packaging system and syntax changes but this will take me a while since I'm able to work on this at max a day per week.
As a workaround, please check if you can use the package with Julia v0.6.
Cheers,
Patrick


changed url in flake to string

this time, in template file

Thank you Ronnie @veeronniecaw.
Merging.


docker doc is not correctly format for volume part

in https://github.com/docker/docker/blob/master/docs/reference/commandline/volume_create.md, it can be found docker volume create is not correctly formated , because it is wrong in doc format there.
You can check here also, https://docs.docker.com/engine/reference/commandline/volume_create/
it is wrong.

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

#dibs

I am working on to submit a fix for it


Fix bug calculating rating key

Coverage decreased (-0.008%) to 27.555% when pulling 4d91c56dde22b44be3e49ad151df5377d948eb47 on rating into 28f419df68e19e95ff317a2e8d8a288872accf49 on master.

Coverage decreased (-0.008%) to 27.555% when pulling 4d91c56dde22b44be3e49ad151df5377d948eb47 on rating into 28f419df68e19e95ff317a2e8d8a288872accf49 on master.

Coverage decreased (-0.006%) to 27.556% when pulling aa94c368ca90424a9ed29d6518438b281070cd3a on rating into 28f419df68e19e95ff317a2e8d8a288872accf49 on master.