add legend as dict for line plots with test

Please confirm that this PR has done the following:

[x] Tests Added
[x] Documentation Added
[x] Description in RELEASE_NOTES.md Added

Adding to RELEASE_NOTES.md
Please add a single line in the release notes similar to the following:
- (#XX)[http://link-to-pr.com] Added feature which does something

Perhaps, if a user reads the docstring, they won't know what value
MAX_LEGEND_LABELS is. In the future, we should make that configurable (much
like matplotlib has rcparams), but I'm not sure that time is now..
On Mon, Jul 16, 2018 at 11:44 AM, Daniel Huppmann<EMAIL_ADDRESS>wrote:

@danielhuppmann commented on this pull request.
thanks @gidden https://github.com/gidden, I was thinking of doing
something similar already!
lgtm, one suggestion for clearer docstring...
In pyam/plotting.py
https://github.com/IAMconsortium/pyam/pull/71#discussion_r202625074:

@@ -472,9 +475,10 @@ def line_plot(df, x='year', y='value', ax=None, legend=None, title=True,
The column to use for y-axis values
default: value
ax : matplotlib.Axes, optional

legend : bool, optional

   Include a legend (`None` displays legend only if less than 13 entries)

   default: None

legend : bool or dictionary, optional

   Add a legend. If a dictionary is provided, it will be used as keyword

   arguments in creating the legend.

   default: None (displays legend only if less than 13 entries)

rephrase to 'as specified by MAX_LEGEND_LABELS'?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/IAMconsortium/pyam/pull/71#pullrequestreview-137357672,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABVAEfcMC_liGvda82GHBUYRxunnOQIYks5uHGB3gaJpZM4VK3GQ
.

ok @danielhuppmann, this now implements a more intuitive way of setting our labels and I can now confirm that lineplot by composition works as I expect it to! Just tested with alphas.

@danielhuppmann did you mean to add a commit here?

@gidden just resolved the merge conflict from accepting PR #70 so that I can merge

great, thanks!
On Tue, Jul 17, 2018 at 2:20 PM, Daniel Huppmann<EMAIL_ADDRESS>wrote:

Merged #71 https://github.com/IAMconsortium/pyam/pull/71.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/IAMconsortium/pyam/pull/71#event-1737548330, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABVAEYK-Yx7wNgBWStcOvKpBZW6njIVDks5uHdaggaJpZM4VK3GQ
.


added rearrange_array

Hey @anweshaghosh12345 !
Thank you for contributing to this repository.
Can you please add a folder with the name of the question or concept, and create a small README.md, explaining the question or concept? You can add your solution file in that folder itself.
Follow this example to see how to add files to this repo.


Disable GIT_SHALLOW for cmake < 3.10.

Using GIT_SHALLOW in ExternalProject_Add makes the cloning a lot faster but seems to break for older cmake versions. This PR attempts to address that.
Requires testing from people with old cmake versions!

@tilmantroester works for me. Thanks a lot!

@tilmantroester this doesn't seem to work for me (v3.5), but it works if I remove GIT_SHALLOW ${SHALLOW_GIT_CLONE} altogether.

@tilmantroester this doesn't seem to work for me (v3.5), but it works if I remove GIT_SHALLOW ${SHALLOW_GIT_CLONE} altogether.

@damonge Could you try again? It should hide the whole GIT_SHALLOW business when cmake < 3.10 now.

This works for me now.


macvlan not passing back bridged traffic

I can't tell if this is an intentional design or actually a bug.
I'd like to run a docker container that operates a layer 2 bridge to its hosts wired LAN. This will let me encapsulate the VPN setup into a nice composable docker image. However, I can't figure out how to persuade macvlan to actually pass over traffic from a bridge running in the container. This is my setup:
sudo docker network create -d macvlan --subnet=<IP_ADDRESS>/24 --gateway=<IP_ADDRESS> -o parent=eth0 macnet32
Start image here:
sudo docker run -it --rm --net=macnet32 --privileged --cap-add=NET_ADMIN --cap-add=SYS_ADMIN --device=/dev/net/tun balenalib/rpi-raspbian:stretch
Install tools we might need:
apt-get update -qq && apt-get install -qq telnet net-tools bash bridge-utils iproute2 tcpdump netcat iputils-ping

At this point, I have a virtualized Mac address
root@47a06376b029:/# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet <IP_ADDRESS>/8 scope host lo
       valid_lft forever preferred_lft forever
42: eth0@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
    link/ether 02:42:0a:00:00:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global eth0

I can also see broadcast traffic on the docker host's LAN if I snoop using tcpdump on eth0. So far so good.
Next, I reconfigure eth0 onto a bridge:
ip addr del <IP_ADDRESS>/24 dev eth0
ip link add br0 type bridge
ip link set eth0 master br0
ip link set br0 up
ip addr add <IP_ADDRESS>/24 dev br0
ip route add default via <IP_ADDRESS>

Now I can tcpdump on br0, see the hosts network traffic, etc. Good so far.
The problem comes with I add into the br0 a virtual NIC from ZeroTier:
ip link set ztzlgjibd7 master br0

Once I do this, the docker container can see traffic and IP addresses both locally and on the VPN and can freely ping and TCP connect to services both on the LAN and within the virtual network. Nodes on the VPN network are able to see broadcast traffic originating from the docker host's physical network. So packets are flowing from the docker host's lan to the br0 device inside the docker container and then getting pushed out to the VPN. But this appears to be one way only -- traffic on the VPN network is not getting mirrored back to the docker's local LAN. For instance, if I ping a client on the VPN network from the local host network, I can see the arp requests for that IP address appear at that remote client as it should. However, traffic does not pass back from the VPN to the local host network. Thus I can't ping or connect between the networks.
Is this a limitation of macvlan?

I noticed the same issue. Good to know, that further tests are useless. I hope that this issue will be solved, soon.
But, I think the problem relies in driver itself that only packets with destination mac address of this virtual network link will be forwarded.


[Discussion] Application State Management

We should add application state management using redux and redux toolkit to simplify the application data flow.
I like to use Redux for state management in React apps.
I'm not used to use Redux Toolkit (but like it enough) so I'm open to other options.
I've used redux-saga with success in other projects but I think it might be too much for us (or for now).

@hammer @danvk @sergioramos @sehyod I've created this issue and the PR #30 with an implementation proposal (with other features).

I'm out of my depth here so I will let @danvk comment on whether this is a good idea. I have seen some commentary on reducer and context for lightweight state management without Redux, and I have also seen React-side libraries like React Query for server side state management (e.g. calls out to the AI from the editor) that may be in scope to discuss now?

@hammer I think that our app will be complex enough to work with a state management library. But I agree that Redux can be too much.
@sergioramos pointed out that we can maybe use Recoiljs instead.
What are your thought on this @danvk?

@cguedes for recent projects I've used the built-in React state management (useState, very occasionally useReducer) and react-query to manage network calls. I have wound up using reselect  a few times when things got nasty. My sense is that Redux proper has become a bit less ubiquitous than it was, say, five years ago as the built-in state management tools have improved.
So my general inclination is similar to @hammer, that a fancy state management tool is something we can adopt as we feel the need for it. But things may have improved since I last used Redux and I've never used Reduce Toolkit, so I'll take a look at the PR!

@danvk notes that the future of Recoil is discussed at https://github.com/facebookexperimental/Recoil/issues/1495 with lots of recommendations to use https://github.com/pmndrs/jotai or https://github.com/pmndrs/zustand

Chatted with Eimen of Isaac Editor last night and he mentioned he's using zustand and loves it!

https://jotai.org/docs/basics/comparison#how-is-jotai-different-from-zustand
https://github.com/pmndrs/jotai/issues/13

Lol nice to see we're in good company here: https://twitter.com/martpie_/status/1660198736880959490

Ha it turns out the guy who tweeted that is building a desktop app with Electron: https://github.com/martpie/museeks.

Ha it turns out the guy who tweeted that is building a desktop app with Electron: https://github.com/martpie/museeks.

I see that the project is using redux with toolkit.
https://github.com/martpie/museeks/blob/fcf12bd03a02911385f85d1196c6d09fe11a11de/package.json#L43
But working actively to move to Zustand (given that is similar to Redux IMO).
https://github.com/martpie/museeks/pull/675

Jotai is like Recoil. Zustand is like Redux.

@hammer should we go with Jotai and merge #52 or you think we should also try Zustand?
I suggest that we prioritize the implementation of a state management library for the main functionality without delay. We can then reassess the situation as the application grows.

I defer to y'all on Jotai vs. Zustand. @danvk I know you're off today but if you have any input I'd appreciate hearing it!

Hey folks!

But working actively to move to Zustand (given that is similar to Redux IMO).

I can explain a bit my rationale if it can help you make a choice.
Redux is to Recoil what Zustand is to Jotai.

Redux and Recoil are older, but more complete and are "proven"
Zustand and Jotai are newer, and simpler
Jotai/Record are bottom-up while Redux/Zustand are top-down.

Why I am currently lending towards Zustand:

I fell in love with SolidJS's createStore, which is very similar
RTK is great, but still verbose
My setup is a bit peculiar, as I historically started with Flux (before Redux even existed), and I used Actions as some kind of APIs (PlayerAction.play(), PlaylistsActions.create(), etc), so my thunks are extremely weird blobs of getState + business logic
I love Zustand conciseness (actions+state together, no reducers). Zustand's model look similar to what I did (which does not mean my code is nice, it's not)
Zustand has some very nice advanced features (store persistence, async out of the box, etc)
Testing is easy-ish
It will be MUCH easier to migrate from RTK to Zustand (paradigm is the same: stores + selectors) than something else.

Right now I'm just toying with it, but I'll probably stick with it :)
ps: Zustand and Jotai are from the same maintainers, they're not competitors, just two strategies to the same problem.

BTW I also found The new wave of React state management to be a helpful overview

I haven't finished reading but what I read so far is a fantastic piece. It explains well the context of React and state management tools, and why Redux can be a problematic solution (which I very much agree) 👏 will finish reading and share internally

Thanks you @martpie! Our general philosophy is to stay away from frameworks and try to keep things lightweight as long as possible so are leaning towards Jotai. Your input is very helpful!

@cguedes in the absence of negative feedback on Jotai and given our preference for something lightweight early on, let's go with that for now to unblock this issue.

@cguedes are we good to close this now that we've gone with Jotai?

Sounds good! Again if we're fighting the framework to code in a way that's less natural, I'm open to using something more Redux-like even if it's a bigger framework. RTK and Zustand both seem to be widely used and supported too.

BTW while doing a bit more digging I noticed that people seemed to like https://github.com/reduxjs/redux-devtools for debugging with Redux, and that Jotai has something similar at https://github.com/jotaijs/jotai-devtools, in case that hasn't turned up for y'all yet.

Just to add a little more context to the discussion: I think we're not used to the Jotai approach, which is why we still have our doubts about it, but Jotai does come with some significant advantages, such as not having to manage stores or context and always being able to access atoms from any react component. And we can also save data in local storage directly with atomWithStorage.

@hammer we think you can close this for now as we are more confident about Jotai 💪

Just a few thoughts looking at our use of Jotai a few weeks after committing to it (@cguedes mentioned at the meeting today that this is a part of the stack that not everyone's feeling great about)…

Pros

Eliminates all the object spread / deep copying boilerplate that you see in Redux
It seems hard / impossible to have accidental state mutation, drop a rerender or access a stale version of some piece of state since you always have to go via set / get.

Cons

The get() / set() syntax looks a little strange vs Redux's function composition
We wind up writing a lot of write-only atoms (though we'd be writing this logic in some form anyway)
There's no central (TypeScript) definition of the application's state

Would be interested to hear more from others if there are more specific pain points or examples of Jotai being awkward, but in general our code looks OK to me? There may be some opportunities to factor out common patterns (e.g. atom families) but I think it is succeeding at keeping our state management out of our UI code.


Hook / event for manipulate $data in outputSSO

Recently I had to hack this in: we wanted to use a custom field ($currentUser->displayName) as the name passed in the outputSSO $data.
Either a hook to manipulate that data, or an event (vanillaforums.outputSSO or something) to manipulate this data would be great. Of course if its an event, you'd have to pass $data by reference so it can be changed.

Pull requests are always welcome :)

Yep, planning on it. Just wanted to make the issues so I didn't forget.
Do you have a preference on event vs hook?

I'd go with an event.

good :) i'll whip something up


Imports basing on tsconfig.json paths

On .st.css files I can import another ones using custom paths defined inside of the tsconfig.json, under compilerOptions.paths, but the intelligence throws a error.
tsconfig.json

-st-import

It works on the webpack compile, but the intelligence does not recognize that it is a valid path, throwing this error:
cannot resolve imported file<EMAIL_ADDRESS>

Thanks for trying out Stylable.
The paths option is a custom TypeScript resolution feature that Stylable is unaware of. In the case of building with webpack, what probably happens is that that the TypeScript integration is shared through webpack with the Stylable webpack-plugin.
As for the Stylable extension, it is not aware of what was defined in the webpack or TypeScript configs, and so the custom paths resolutions are not taken into consideration in the IDE.
A possible solution we may offer, is passing a custom resolver to the Stylable configuration, and having that be picked up by the extension. But this approach would still require integrating some sort of resolver that supports paths from the user side.
If you can provide a small reproduction of your setup, or if the project is publicly accessible, I'd be glad to take a look and investigate further.

The project is private, but I did a example here: https://github.com/jorge-armando/stylable-alias-issue
I understand. I don't know if it's possible, but the intelligence could inherit the paths defined in tsconfig.json or create an extra configuration inside stylable.config.js to insert the paths.
relative paths in large projects can become a headache for using too many "../../../.."

Thank you for the reproduction case, we've started looking at it to see how it would behave under different solutions, and will update once we have more information.

I'm currently facing the same issue, but leveraging webpack resolver aliases - something like following:
module.exports = {

    resolve: {
        alias: {
            "@components": path.resolve(__dirname, 'src/components/'),
            "@projects": path.resolve(__dirname, 'src/projects/')
        }
    },

};

It compiles just fine, but intelligence fails. A way to define this in the stylable config would work just fine for us.

update: we've looked into this, and we think we can make it work for both TS paths and webpack aliases by adding a new resolver configuration to the stylable.config.js file. We're trying to make this as seamless as possible throughout our various integrations, and also add it to the stylable-intelligence extension automatically.
I hope to have more on this in the coming days.

Exciting news!
We just released new versions of Stylable and the Intelligence plugin that expose the ability to add a stylable.config.js file in the root of the project, and provide it with a defaultConfig that the plugin (and all integrations) can pick up.
Sorry for the delay on this, we ended up solving it a bit more thoroughly than originally thought.
I tested this on your reproduction project (and a webpack alias one) and it seems to work fine locally for me, would love to hear that it works for you as well.
Example stylable.config.js config I used to test this out:
const { createDefaultResolver } = require("@stylable/core");
const { TsconfigPathsPlugin } = require("tsconfig-paths-webpack-plugin");
const { typedConfiguration } = require("@stylable/cli");
// const { join } = require("path");

module.exports = {
  defaultConfig(fs) {
    return {
      resolveModule: createDefaultResolver(fs, {
        // alias: {
        //   "wp-alias": join(__dirname, "src/webpack-alias"),
        // },
        plugins: [
          new TsconfigPathsPlugin({
            configFile: require.resolve("./tsconfig.json"),
            extensions: [".st.css"],
          }),
        ],
      }),
    };
  },
  stcConfig: typedConfiguration({
    options: {
      srcDir: "./src",
      outDir: "./st-types",
      dts: true,
    },
  }),
};

Note: the commented out lines are for using webpack aliasing functionality instead of TypeScript paths.

p.s. you may need to "Restart Extension Hosts" in VSCode, if the Intelligence plugin was already setup before you config your stylable.config.js file.

Closing as we now offer the ability to configure this behavior for stylable-intelligence, please open an issue if something else doesn't appear to be working.


update immer version

Fixes issue #10559

Duplicate of #10412

Closing because it's a duplicate of #10412

Closing because it's a duplicate of #10412


ConnectionResetError: [Errno 104] Connection reset by peer

Hello,
When I'm running the training script, I get this error after some iterations, do you know how to fix it:
ConnectionResetError: [Errno 104] Connection reset by peer

Thanks for your reply. Yes I'm using 2 CPUs with 22GB memory and Tesla V100-SXM3-32GB, so on the hardware side, I think it should be enough.
I have tried today to set the  --nworkers to 0 but the issue still persists. It trains for a while (till ~33% of epoch 1), and then throws the error.

Mine was 1.11.0

I have tried with pytorch 1.11.0, and the same error still exists.

That's kind of strange...
We tested our code on Ubuntu and RHEL machines, and we also trained the models using V100 before, but we haven't encountered this issue.
I think it is some problem with PyTorch itself, but I searched online and didn't find any definite explanation or solution.
I would recommend trying to test using another machine if the error persists.

I made another trial, with the same GPU and 2 CPUs, but this time I added 120 GB of RAM memory, and the model was training fine. However, it took quite a lot of memory space around 110 GB; I think that there is a memory leak somewhere; maybe that's due to torch.multiprocessing.set_sharing_strategy("file_system")?

I also encountered the same problem. Have you solved it? @darkdevahm


Hover syntax highlighting colour not working

Hi, with the recent update to fortls 1.11.1 something must have changed causing this weird colouring for the type of a variable when hovering.

Hello there @hansec
Can you reopen this please?
krvajal (the owner of Modern Fortran) stopped responding a while ago so I released a new version with some fixes, and now the new version of the extension goes with the name pedro-ricardo.linter-gfortran
Therefore this fix b4ffed1 stop working and a similar bug happens like this one

As he might comeback I suggest you yo add an or there, not overwrite.
Thank you :+1:


Add ttf feature to plotters

Fixes #39.
Credit is due to @tbejos for finding the fix (details in the discussion for #39 )

@shssoichiro You think this warrants a 0.5.1 release? This fixes video -g which is broken in 0.5.0


Calling Get-BestGenericImageName fails with error - cannot convert 20200211 to version

Describe the issue
Calling Get-BestGenericImageName in navcontainerhelper <IP_ADDRESS> fails with error
% : Cannot convert value "20200211" to type "System.Version". Error: "Version string portion was too short or too long."
At C:\Program Files\WindowsPowerShell\Modules\navcontainerhelper\<IP_ADDRESS>\ContainerHandling\Get-BestGenericImageName.ps1:28 char:72
+ ... ke $tag } | % { [System.Version]($_.SubString($tag.indexOf('*'), $_.l ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [ForEach-Object], RuntimeException
    + FullyQualifiedErrorId : InvalidCastParseTargetInvocation,Microsoft.PowerShell.Commands.ForEachObjectCommand`

Environment
NavContainerHelper is version <IP_ADDRESS>
NavContainerHelper is running as administrator
Host is Microsoft Windows 10 Enterprise - 2004 (and tested also on Windows Server 2019 Version 1809)
Docker Client Version is 19.03.5
Docker Server Version is 19.03.5
Root cause seems to be an image tag 20200211-generic which is not filtered out.

You are right, just published <IP_ADDRESS> with a fix for this really bad bug.

Excellent. Tested and running.

The reason for this was, that I also created a new set of generic images - published those as -generic-dev - and a setting in containerhelper to set the generic image in use. So my build machine was using the -generic-dev images - where the old -generic didn't exist.
This ment that all containerhelper tests was passing and all was fine - IF you had the genericImageName setting set to the right value...:-(
That won't happen again.

Thanks Freddy for a very fast resolution!

Shipped in <IP_ADDRESS>


Bump runtime

Readiness checklist

[ ] I added/updated tests.
[ ] I ensured that the PR title is good enough for the changelog.
[ ] I labeled the PR.
[ ] I self-reviewed the PR.

Description
Adding password protected X support.
Tests have to be added later.

@Siolto can you add a ticket for next sprint to add simple tests for the additions in this PR?


Added Learn Git from Codecademy

Awesome resource @vicky002 love the idea! Hope this contribution helps!

Hey @mstub , Thanks and Thank you for contributing to AlgoWiki. 🌮 🌯 🍰
Whatever links or resources you add, please sure that no links/courses are paid. We are hunting for free sources so that everyone. 🙁
👍
~
Vikesh


ClearChannel Issue

ClearChannel function seems to not be working at the moment. It causes a panic.

Perhaps this is caused by the length of char being too short.


How to get metrics by Rancher environment

So I've deployed the Prometheus stack and I've updated the pieces as I see you've made some changes to host node discovery and such. Things are working pretty solid, but I'm failing to see how I could separate nodes based on Rancher environment.
Not sure this is the best place for this comment, but the HostMetrics and ContainerMetrics show up with instance=<ip>:<port> and no other metadata AFAICT.
I'm pretty new to Prometheus itself, so maybe there's just some basic item I'm missing.

I'm literally testing that stuff in my reference deployment now!
Are you wanting to view nodes registered to the rancher server, but running in another 'rancher-environment'?

Yeah. Exactly. We have multiple Rancher environments (independent clusters) that are all controlled by 1 Rancher Server.
We use them to break apart both various teams and "environments" in the traditional sense (dev, qa, production, etc).
So it would be great to be able to see cluster performance by Rancher environment - host and container stats.

Also, if there's something I can help with, let me know. I can dig into and test some things.

Thanks @johnrengelman It's something that's on my list to add, but won't work 'out the box'.
The DNS auto-discovery i suspect will only work within an environment (i'll check that).
I previously got hostnames using confd but that got the hosts from metadata services, the trouble with this is that the API keys used in that scenario limit you to a single environment. The cleanest way would be through DNS discovery, i'll have a dig to see if there is a way it can be done.

You can create global API keys in Rancher. You have to do it via the API though (not available in the UI)(https://forums.rancher.com/t/api-key-for-all-environments/279)
I've done this for my use locally (I have single API key that I can use to run rancher-compose against multiple environments).
Anyway...I'm trying some changes to rancher-prometheus exporter now, but I'm guessing we'd need to wrap the node-exporter with something that would allow it to push a label for the metrics that corresponds to it's Rancher Environment.

Today I learned...
If that's the case, i have a confd template that will run through the hosts listed out by the rancher-prometheus-exporter. The exporter gets it's keys through the labels, i'll have a look to see if the global value can be used with labels.
Regarding node-exporter, i'm sort of wondering if we could get those stats out of cadvisor and do away with node exporter in the long term. In the cadvisor GUI, it exposes things like CPU cores etc.

The other thing I'm having trouble grok'ing is how to handle customer Host labels from Rancher. So you can assign free-form labels to hosts in Rancher and use them for scheduling. Might be nice to somehow use that too.

In terms of how to get those labels into Prometheus for querying?

Yeah.

Tricky one, i could see how it can be done if we pulled all that data from the API. Would need a bit of attention within the api-exporter but in theory that info is all there and could be used to populate the config. That being said, i suspect we'd lose DNS auto-discovery. hmm

Actually, thinking about this more, the rancher-prometheus integration doesn't need to scan all environments, you could run a single copy in each environment that points to the same prometheus server. It's just that the data that it kicks out needs to include the Rancher environment name as part of it.

@johnrengelman Will look at getting that added in soon.

+1 for this. I've ended up writing a small script that pulls host information from the Rancher API (using admin keys that can see all environments) and feeding it into Prometheus as using file_sd_configs. Not as pretty as DNS discovery, but seems to work OK.

@ampedandwired That's not actually a bad way of doing it. There is the exporter (https://github.com/infinityworksltd/prometheus-rancher-exporter) that gives some of that info.
If your sticking to the environment model in Rancher being what it is, Federation in Prometheus is probably the most obvious way. Though it's not easy to auto-discover additional environments.
Or again of course, you could utilise something like Consul...

@ampedandwired Please can you share the script and the path where I should run it?
We want to use prometheus but just one for all our environments in Rancher.

@marlinhares Sorry, not easily able to share the script because it's mixed in with a bunch of internal stuff that I can't release. Maybe someday I'll get a chance to separate it out. The basic idea is (pseudocode only):
prometheus_config = []
for rancher_env in rancher_api.get_environments():
  for host in rancher_api.get_hosts(rancher_env):
    ip_address = host["ipAddresses"][0]["address"]
    port = 9104  # CAdvisor port
    target = "#{ip_address}:#{port}"

    prometheus_config.append({
      "targets": [target],
      "labels": {
        "rancher_environment_name": rancher_env["name"]
      }
    })

if prometheus_config != current_prometheus_config():
  with open("/etc/rancher-prometheus/hosts.json") as f:
    f.write(json.dumps(prometheus_config))

This results in a list of entries like this in /etc/rancher-prometheus/hosts.json:
{
  "targets": [
    "<IP_ADDRESS>:9104"
  ],
  "labels": {
    "rancher_environment_name": "production"
  }
}

Obviously /etc/rancher-prometheus/ needs to be mounted as a volume on your prometheus container.
And then you can tell prometheus to watch the directory that the file is being written to:
  - job_name: 'rancher'
    file_sd_configs:
      - files: ['/etc/rancher-prometheus/*.json']

Finally I use "global" rancher keys (mentioned in a previous comment above) so I only need one instance of this container for the whole Rancher installation.
Anyway, hope this helps.


#include <wasmtime/conf.h> fails since conf.h is not generated

When we try to bump to wasmtime v22.0.0 in https://github.com/tree-sitter/tree-sitter/pull/3428 we get the following error:
cargo:warning=/home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmtime-c-api-impl-22.0.0/include/wasi.h:12:10: fatal error: wasmtime/conf.h: No such file or directory
  cargo:warning=   12 | #include <wasmtime/conf.h>
  cargo:warning=      |          ^~~~~~~~~~~~~~~~~

When I checked this locally it seems that conf.h is not being generated when building the c-api via a crate as I could not find it in cargo:warning=/home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmtime-c-api-impl-22.0.0/include/, which is where I assumed it would be as that's where the headers are looking for it.

Related: https://github.com/Homebrew/homebrew-core/pull/175234

This changed in https://github.com/bytecodealliance/wasmtime/pull/8642 where conf.h is only generated as part of the cmake-based build process at this time. If using via the Rust build script that'll need to have support as well for generating conf.h, probably in the build directory, and generating another cargo build directive to add another include path pointing to the generated file

Just to be clear: These changes need to happen here in wasmtime-c-api, right?

I think there may be multiple issues in play here, so I'm not certain if a single fix in a single location will fix both issues here. One issue is that this line is no longer sufficient for the includes of Wasmtime because the conf.h file isn't generated anywhere as part of that build script. I think that's what tree-sitter is using and I think that's what tree-sitter is running into. Fixing that would involve updating the build script to do what CMake is doing which is to read conf.h.in and then postprocess it to generate a new conf.h. A new directive would then need to be printed to point to the location of this generated header file.
As for the Homebrew PR I don't know what's going on there. That looks like a possibly buggy installation of the C API because it looks like it was built from source and installed but conf.h is missing. That may indicate that CMake wasn't used to build/install but the PR looks like it was updated to use CMake. Given all that I don't know what's happening.

One issue is that this line is no longer sufficient for the includes of Wasmtime because the conf.h file isn't generated anywhere as part of that build script. I think that's what tree-sitter is using and I think that's what tree-sitter is running into

Yes. The main question is whether that is considered a regression to be fixed, or whether the official policy is now "use the cmake crate to build the C API".

As for the Homebrew PR I don't know what's going on there.

Sorry, that was just meant to show that the effect is not limited to one consumer: Homebrew had the same issue of no longer being able to build wasmtime-c-api via (pure) cargo and had to switch to a CMake based build. (Which is less intrusive since it's a standalone build that does not need to interface with a larger Rust project.)

If CMake can be used that'd be best yeah, primarily because that's what we're testing in CI and it's what's used to produce the artifacts. If that's not feasible this is minor enough I think it's ok to add custom logic to the build script too.

It seems like cmake runs cargo to fetch all necessary crates during the build time (previously cargo did that by itself)...

Yes cmake runs cargo build which will fetch if necessary. Is that an issue for your integration? If so where should the network fetching happen?

All necessary for a build process files need to be fetched before the build phase, where phases are: fetch -> patch -> configure -> build -> stage -> install.
  Now cargo is wrapped up with cmake, and as I said #8966 that adds complexity to the build process.

As a workaround for the time being could you continue to run cargo fetch during the fetch phase?

Can I get some guidance on how to use this crate in its current state? As it stands, the wasmtime-c-api crate seems to be completely unusable.
It doesn't seem to be possible to use the cmake crate to call cmake from the build.rs script, because the inner cargo will deadlock trying to lock the package folder. I could try calling cmake from tree-sitter's build.rs, but this feels wrong because it would then require keeping tree-sitter's build script up to date with the build script for wasmtime.
Am I missing something obvious? Thanks for any pointers. Happy to do some tweaking of the build script and file a PR with the results once I get it working.

I think https://github.com/bytecodealliance/wasmtime/pull/9031 should work well, thanks for opening a PR!
I'll note though that one of the reasons this snuck in, which I think I was also mentioning on the original PR for this support, is that there are no tests in-tree so we can't guarantee that this will keep working. Despite that though assistance in maintaining it is much appreciated!


Total parameter shown in summary does not correlate with the number of layer in my model..I don't know if is the bug in Keras or it my model problem

This is the Model summary
Layer (type)                    Output Shape         Param #     Connected to
input_1 (InputLayer)            (None, 1, 8, 1200, 1 0

input_2 (InputLayer)            (None, 1, 8, 1200, 1 0

input_3 (InputLayer)            (None, 1, 8, 1200, 1 0

input_4 (InputLayer)            (None, 1, 8, 1200, 1 0

input_5 (InputLayer)            (None, 1, 8, 1200, 1 0

input_6 (InputLayer)            (None, 1, 8, 1200, 1 0

input_7 (InputLayer)            (None, 1, 8, 1200, 1 0

input_8 (InputLayer)            (None, 1, 8, 1200, 1 0

input_9 (InputLayer)            (None, 1, 8, 1200, 1 0

input_10 (InputLayer)           (None, 1, 8, 1200, 1 0

average_pooling3d_1 (AveragePoo (None, 1, 8, 240, 24 0           input_1[0][0]

average_pooling3d_4 (AveragePoo (None, 1, 8, 240, 24 0           input_2[0][0]

average_pooling3d_7 (AveragePoo (None, 1, 8, 240, 24 0           input_3[0][0]

average_pooling3d_10 (AveragePo (None, 1, 8, 240, 24 0           input_4[0][0]

average_pooling3d_13 (AveragePo (None, 1, 8, 240, 24 0           input_5[0][0]

average_pooling3d_16 (AveragePo (None, 1, 8, 240, 24 0           input_6[0][0]

average_pooling3d_19 (AveragePo (None, 1, 8, 240, 24 0           input_7[0][0]

average_pooling3d_22 (AveragePo (None, 1, 8, 240, 24 0           input_8[0][0]

average_pooling3d_25 (AveragePo (None, 1, 8, 240, 24 0           input_9[0][0]

average_pooling3d_28 (AveragePo (None, 1, 8, 240, 24 0           input_10[0][0]

reshape_1 (Reshape)             (None, 8, 1, 240, 24 0           average_pooling3d_1[0][0]

reshape_4 (Reshape)             (None, 8, 1, 240, 24 0           average_pooling3d_4[0][0]

reshape_7 (Reshape)             (None, 8, 1, 240, 24 0           average_pooling3d_7[0][0]

reshape_10 (Reshape)            (None, 8, 1, 240, 24 0           average_pooling3d_10[0][0]

reshape_13 (Reshape)            (None, 8, 1, 240, 24 0           average_pooling3d_13[0][0]

reshape_16 (Reshape)            (None, 8, 1, 240, 24 0           average_pooling3d_16[0][0]

reshape_19 (Reshape)            (None, 8, 1, 240, 24 0           average_pooling3d_19[0][0]

reshape_22 (Reshape)            (None, 8, 1, 240, 24 0           average_pooling3d_22[0][0]

reshape_25 (Reshape)            (None, 8, 1, 240, 24 0           average_pooling3d_25[0][0]

reshape_28 (Reshape)            (None, 8, 1, 240, 24 0           average_pooling3d_28[0][0]

conv_lst_m2d_1 (ConvLSTM2D)     (None, 8, 16, 240, 2 9856        reshape_1[0][0]

conv_lst_m2d_3 (ConvLSTM2D)     (None, 8, 16, 240, 2 9856        reshape_4[0][0]

conv_lst_m2d_5 (ConvLSTM2D)     (None, 8, 16, 240, 2 9856        reshape_7[0][0]

conv_lst_m2d_7 (ConvLSTM2D)     (None, 8, 16, 240, 2 9856        reshape_10[0][0]

conv_lst_m2d_9 (ConvLSTM2D)     (None, 8, 16, 240, 2 9856        reshape_13[0][0]

conv_lst_m2d_11 (ConvLSTM2D)    (None, 8, 16, 240, 2 9856        reshape_16[0][0]

conv_lst_m2d_13 (ConvLSTM2D)    (None, 8, 16, 240, 2 9856        reshape_19[0][0]

conv_lst_m2d_15 (ConvLSTM2D)    (None, 8, 16, 240, 2 9856        reshape_22[0][0]

conv_lst_m2d_17 (ConvLSTM2D)    (None, 8, 16, 240, 2 9856        reshape_25[0][0]

conv_lst_m2d_19 (ConvLSTM2D)    (None, 8, 16, 240, 2 9856        reshape_28[0][0]

batch_normalization_1 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_1[0][0]

batch_normalization_2 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_3[0][0]

batch_normalization_3 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_5[0][0]

batch_normalization_4 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_7[0][0]

batch_normalization_5 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_9[0][0]

batch_normalization_6 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_11[0][0]

batch_normalization_7 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_13[0][0]

batch_normalization_8 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_15[0][0]

batch_normalization_9 (BatchNor (None, 8, 16, 240, 2 960         conv_lst_m2d_17[0][0]

batch_normalization_10 (BatchNo (None, 8, 16, 240, 2 960         conv_lst_m2d_19[0][0]

conv_lst_m2d_2 (ConvLSTM2D)     (None, 8, 16, 240, 2 18496       batch_normalization_1[0][0]

conv_lst_m2d_4 (ConvLSTM2D)     (None, 8, 16, 240, 2 18496       batch_normalization_2[0][0]

conv_lst_m2d_6 (ConvLSTM2D)     (None, 8, 16, 240, 2 18496       batch_normalization_3[0][0]

conv_lst_m2d_8 (ConvLSTM2D)     (None, 8, 16, 240, 2 18496       batch_normalization_4[0][0]

conv_lst_m2d_10 (ConvLSTM2D)    (None, 8, 16, 240, 2 18496       batch_normalization_5[0][0]

conv_lst_m2d_12 (ConvLSTM2D)    (None, 8, 16, 240, 2 18496       batch_normalization_6[0][0]

conv_lst_m2d_14 (ConvLSTM2D)    (None, 8, 16, 240, 2 18496       batch_normalization_7[0][0]

conv_lst_m2d_16 (ConvLSTM2D)    (None, 8, 16, 240, 2 18496       batch_normalization_8[0][0]

conv_lst_m2d_18 (ConvLSTM2D)    (None, 8, 16, 240, 2 18496       batch_normalization_9[0][0]

conv_lst_m2d_20 (ConvLSTM2D)    (None, 8, 16, 240, 2 18496       batch_normalization_10[0][0]

reshape_2 (Reshape)             (None, 16, 8, 240, 2 0           conv_lst_m2d_2[0][0]

reshape_5 (Reshape)             (None, 16, 8, 240, 2 0           conv_lst_m2d_4[0][0]

reshape_8 (Reshape)             (None, 16, 8, 240, 2 0           conv_lst_m2d_6[0][0]

reshape_11 (Reshape)            (None, 16, 8, 240, 2 0           conv_lst_m2d_8[0][0]

reshape_14 (Reshape)            (None, 16, 8, 240, 2 0           conv_lst_m2d_10[0][0]

reshape_17 (Reshape)            (None, 16, 8, 240, 2 0           conv_lst_m2d_12[0][0]

reshape_20 (Reshape)            (None, 16, 8, 240, 2 0           conv_lst_m2d_14[0][0]

reshape_23 (Reshape)            (None, 16, 8, 240, 2 0           conv_lst_m2d_16[0][0]

reshape_26 (Reshape)            (None, 16, 8, 240, 2 0           conv_lst_m2d_18[0][0]

reshape_29 (Reshape)            (None, 16, 8, 240, 2 0           conv_lst_m2d_20[0][0]

average_pooling3d_2 (AveragePoo (None, 16, 8, 80, 80 0           reshape_2[0][0]

average_pooling3d_5 (AveragePoo (None, 16, 8, 80, 80 0           reshape_5[0][0]

average_pooling3d_8 (AveragePoo (None, 16, 8, 80, 80 0           reshape_8[0][0]

average_pooling3d_11 (AveragePo (None, 16, 8, 80, 80 0           reshape_11[0][0]

average_pooling3d_14 (AveragePo (None, 16, 8, 80, 80 0           reshape_14[0][0]

average_pooling3d_17 (AveragePo (None, 16, 8, 80, 80 0           reshape_17[0][0]

average_pooling3d_20 (AveragePo (None, 16, 8, 80, 80 0           reshape_20[0][0]

average_pooling3d_23 (AveragePo (None, 16, 8, 80, 80 0           reshape_23[0][0]

average_pooling3d_26 (AveragePo (None, 16, 8, 80, 80 0           reshape_26[0][0]

average_pooling3d_29 (AveragePo (None, 16, 8, 80, 80 0           reshape_29[0][0]

average_pooling3d_3 (AveragePoo (None, 16, 8, 8, 8)  0           average_pooling3d_2[0][0]

average_pooling3d_6 (AveragePoo (None, 16, 8, 8, 8)  0           average_pooling3d_5[0][0]

average_pooling3d_9 (AveragePoo (None, 16, 8, 8, 8)  0           average_pooling3d_8[0][0]

average_pooling3d_12 (AveragePo (None, 16, 8, 8, 8)  0           average_pooling3d_11[0][0]

average_pooling3d_15 (AveragePo (None, 16, 8, 8, 8)  0           average_pooling3d_14[0][0]

average_pooling3d_18 (AveragePo (None, 16, 8, 8, 8)  0           average_pooling3d_17[0][0]

average_pooling3d_21 (AveragePo (None, 16, 8, 8, 8)  0           average_pooling3d_20[0][0]

average_pooling3d_24 (AveragePo (None, 16, 8, 8, 8)  0           average_pooling3d_23[0][0]

average_pooling3d_27 (AveragePo (None, 16, 8, 8, 8)  0           average_pooling3d_26[0][0]

average_pooling3d_30 (AveragePo (None, 16, 8, 8, 8)  0           average_pooling3d_29[0][0]

reshape_3 (Reshape)             (None, 8, 16, 8, 8)  0           average_pooling3d_3[0][0]

reshape_6 (Reshape)             (None, 8, 16, 8, 8)  0           average_pooling3d_6[0][0]

reshape_9 (Reshape)             (None, 8, 16, 8, 8)  0           average_pooling3d_9[0][0]

reshape_12 (Reshape)            (None, 8, 16, 8, 8)  0           average_pooling3d_12[0][0]

reshape_15 (Reshape)            (None, 8, 16, 8, 8)  0           average_pooling3d_15[0][0]

reshape_18 (Reshape)            (None, 8, 16, 8, 8)  0           average_pooling3d_18[0][0]

reshape_21 (Reshape)            (None, 8, 16, 8, 8)  0           average_pooling3d_21[0][0]

reshape_24 (Reshape)            (None, 8, 16, 8, 8)  0           average_pooling3d_24[0][0]

reshape_27 (Reshape)            (None, 8, 16, 8, 8)  0           average_pooling3d_27[0][0]

reshape_30 (Reshape)            (None, 8, 16, 8, 8)  0           average_pooling3d_30[0][0]

concatenate_1 (Concatenate)     (None, 8, 16, 8, 80) 0           reshape_3[0][0]
reshape_6[0][0]
reshape_9[0][0]
reshape_12[0][0]
reshape_15[0][0]
reshape_18[0][0]
reshape_21[0][0]
reshape_24[0][0]
reshape_27[0][0]
reshape_30[0][0]

reshape_31 (Reshape)            (None, 8, 10240)     0           concatenate_1[0][0]

time_distributed_1 (TimeDistrib (None, 8, 8)         81928       reshape_31[0][0]

dropout_1 (Dropout)             (None, 8, 8)         0           time_distributed_1[0][0]

time_distributed_2 (TimeDistrib (None, 8, 8)         72          dropout_1[0][0]

dropout_2 (Dropout)             (None, 8, 8)         0           time_distributed_2[0][0]

time_distributed_3 (TimeDistrib (None, 8, 2)         18          dropout_2[0][0]
Total params: 375,138
Trainable params: 370,338
Non-trainable params: 4,800

Thank you!

That model has ten ConvLSTM layers and three dense layers, Later i merge the output of each ConvLSTM layers and their output go through those dense layer. SO how come Total parameters shown in summary is very small


Translated random strings for worlds tab

Translated:

World.Category.Random
World.SortParameter.Random

(this comment will be updated if more changes will be made before this pull request's merge/closing)

Thank you for the translations!


Slash Commands Permissions

Hi,
Now that we have .setDefaultMemberPermissions to set permissions for commands in SlashCommandBuilder for slash commands. How can I check if check if the user typing the command has the command? I was thinking about the help command to list all commands so I can only display available commands for the user typing the command.
Example if one command has .setDefaultMemberPermissions(PermissionFlagsBits.BanMembers), and a user without that permission types the help command in slash to list all available commands. How can we hide that command from being displayed as the user doesnt have access?

Hi @pronthox, can I get documentation references to each :)

Nevermind that, I think you are asking for discord.js support instead. So basically when you use setDefaultMemberPermissions, the command gets grayed out for those who can't use it. AFAIK, discord doesn't provide a way to "hide" such commands.
And, about the help command, it is going to be a little complex for it, but I'm sure you can just introduce a new permissions property in slash commands to make it work out, OR check permissions of that slash command. In our case, we will "filter" all slashCommands in the help command with property permissions with current author permissions to get a new array of commands.
I hope that helps!


Positional arguments similar to command names get confused with commands

Rust Version
rustc 1.20.0-nightly (6d9d82d3d 2017-07-14)
Affected Version of clap
clap 2.25.0
Expected Behavior Summary
program file subcommand runs
Actual Behavior Summary
error: The subcommand 'file' wasn't recognized
	Did you mean 'nile'?

Steps to Reproduce the issue
Call a clap_app with a positional argument that looks like a command name.
Sample Code or Link to Sample Code
    let matches = clap_app!(("Something") =>
        (@arg FILE: +required "File to examine")
        (@setting SubcommandRequiredElseHelp)
        (@subcommand nile => (about: "Whatever"))
    ).get_matches();

While I agree this is annoying, if the values supplied have the possibility of being close to a subcommand, I'd compile without the suggestions feature. If that isn't an option, there are several AppSettings variants that help with this issue, such as making subcommands required, or disallowing args between subcommands.
I'm open to suggestions on how to approach this issue, but in order to provide suggestions, we have to check if the values supplied are similar to something.

This may be fixed with 2.27.1 however my concerns above still stand :wink:


Helidon plugin serverStreaming gRPC method immediately closes connection

Description
While integrating the Helidon plugin into Block Node, I attempted to open a streaming server connection but it was immediately closed by PbjProtocolHandler. The same gRPC method invocation against grpc.io will hold the connection open waiting for data to stream back.
Steps to reproduce

Setup a server streaming method which uses an Executor service to use the Flow.Subscriber to send back a stream of responses asynchronously.
Call the method using grpcurl. With grpc.io, the connection will be held open while the responses are received. However, with the Helidon plugin, it PbjProtocolHandler immediately closes the connection.

Additional context
No response
Hedera network
other
Version
v0.9.9
Operating system
macOS

I confirmed via wireshark that running echo "{\"start_block_number\": 1}" | grpcurl -vv -plaintext -proto ./block_service.proto -d @ localhost:8080 com.hedera.hapi.block.BlockStreamService/subscribeBlockStream is sending an End Stream flag
HyperText Transfer Protocol 2
    Stream: DATA, Stream ID: 1, Length 7
        Length: 7
        Type: DATA (0)
        Flags: 0x01, End Stream
            0000 .00. = Unused: 0x00
            .... 0... = Padded: False
            .... ...1 = End Stream: True
        0... .... .... .... .... .... .... .... = Reserved: 0x0
        .000 0000 0000 0000 0000 0000 0000 0001 = Stream Identifier: 1
        [Pad Length: 0]
        DATA payload (7 bytes)
        [Connection window size (before): 1048576]
        [Connection window size (after): 1048569]
        [Stream window size (before): 1048576]
        [Stream window size (after): 1048569]

According to the HTTP/2 spec, the End Stream flag should result in the stream being closed:

END_STREAM (0x01):
When set, the END_STREAM flag indicates that this frame is the last that the endpoint will send for the identified stream.
Setting this flag causes the stream to enter one of [the "half-closed" states or the "closed" state]

Therefore, I think the correct conclusion is that the previous implementation is out-of-spec when it doesn't close the streaming connection, having received this flag.
I think the correct solution is to devise an alternate testing mechanism, that doesn't send a premature end stream flag. I have noticed that running grpcurl -vv -plaintext -proto ./block_service.proto -d @ localhost:8080 com.hedera.hapi.block.BlockStreamService/subscribeBlockStream without any echo input doesn't cause the stream to close, so this may be an option.

Done


Could i run it on my mac？

I have try to run it on my mac，but some Linux commond not found in macos
bash: line 75: getent: command not found bash: line 75: getent: command not found [DoChat] 盒装微信 v0.7.0 FAIL: "reg add HKEY_CURRENT_USER\Software\Tencent\WeChat /v NeedUpdateType /d 0"

I want run it on my MAC BOOK PRD,But it seems a little problem

I have never test DoChat under MacOS.
Would love to hear from you or other mac os users about the progress of DoChat under MacOS.

i have the same error messages,  can you solve it ? In some special situations， we need to use it on mac. Thanks !!!


MassDetectors

@ansgarkorf can you review.
Still need to fix the FeatureFindingTest.
Somehow the number of datapoints in mzXML have changed

Looks good to me, can you switch from draft to regular PR?
Can you also make an issue that we have to make an extra module for the isotope mass detection? I suggest to tag Roman in that issue.


[Request] USB sound card example with I2S output

Would it be possible to have the ESP32-S3 show up as a USB Sound card? Then whatever audio it receives from the host would get sent out as I2S to a DAC (like the PCM5102A). I found this exact same thing for the STM32 blackpill here

I would be interested in something like this, too. Would it be possible to port other implementations to this library? For example: https://github.com/hathach/tinyusb/issues/1382#issue-1161917663


Fixing Society search

Note that this requires reloading of data due to small change in language counts. We now store SCCS and WNAI societies (for the future), these are blank and shouldn't be counted in language counts or displayed in the society results table.
Fix for #276 .

Current coverage is 91.18%

Merging #277 into master will decrease coverage by -0.31% as of a847aa9

@@            master    #277   diff @@
======================================
  Files           35      35
  Stmts         1822    1826     +4
  Branches         0       0
  Methods          0       0
======================================
- Hit           1667    1665     -2
  Partial          0       0
- Missed         155     161     +6

Review entire Coverage Diff as of a847aa9

Powered by Codecov. Updated on successful CI builds.


Speed up regexp

[ ] Compile regexp at package init.
[ ] remove regexp.MustCompile within function.
[ ] Improvement of benchmark value

currently:


Unable to save GIF on iOS devices，and images cannot be saved via links on Android devices.

Feature request
We have some links to web images，We hope to save the image to the album of the phone through the link. Unable to save GIF on iOS devices，and images cannot be saved via links on Android devices.  We use react-native-cameraroll (4.0.0) now.
Code sample
RNCCameraRollManager.m
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
      PHAssetChangeRequest *assetRequest ;
      if ([options[@"type"] isEqualToString:@"video"]) {
        assetRequest = [PHAssetChangeRequest creationRequestForAssetFromVideoAtFileURL:inputURI];
        placeholder = [assetRequest placeholderForCreatedAsset];
        if (![options[@"album"] isEqualToString:@""]) {
          photosAsset = [PHAsset fetchAssetsInAssetCollection:collection options:nil];
          PHAssetCollectionChangeRequest *albumChangeRequest = [PHAssetCollectionChangeRequest changeRequestForAssetCollection:collection assets:photosAsset];
          [albumChangeRequest addAssets:@[placeholder]];
        }
      } else {
        NSData *data = [NSData dataWithContentsOfURL:inputURI];
        PHAssetResourceCreationOptions *options = [[PHAssetResourceCreationOptions alloc] init];
        [[PHAssetCreationRequest creationRequestForAsset] addResourceWithType:PHAssetResourceTypePhoto data:data options:options];
      }
    } completionHandler:^(BOOL success, NSError *error) {
      if (success) {
        NSString *uri = [NSString stringWithFormat:@"ph://%@", [placeholder localIdentifier]];
        resolve(uri);
      } else {
        reject(kErrorUnableToSave, nil, error);
      }
    }];

Remark
I've only fixed it on iOS devices.

Thanks, this method works well.


chore: release 2.1.0

:robot: I have created a release beep boop
2.1.0 (2023-09-07)
Features

selector read from filename (882dc0c)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/infodusha/define-html/releases/tag/v2.1.0 :sunflower:


basic version of for-comprehensions

This PR adds a basic implementation of Scala's for-comprehension.
It will only apply flatMap and map. Any filtering must be done manually.
Example usage can be seen in the tests but I would be happy to add documentation.
There is one limitation in that the type information is of the final result is lost and returned as Option<any>. In theory it should be Option<B> where B is the result type of the last function. Unfortunately it is not possible to get the type information of the last element of an array defined by a rest argument.

@shogogg thanks for merging, let me know if you want me to update the docs

@linusnorton Thanks to PR, and please give me the PR that update docs if you can.


Extend support for device identification other than serial number

This PR contains changes that:

extends support for device-identification for edge devices other than serial number (which is supposed to be provided by manufacturer ).
But if serial number from manufacturer (/sys/devices/virtual/dmi/id/product_serial or /sys/devices/virtual/dmi/ id/chassis_serial) is not available then it will be populated as mac addresses of available network interfaces like :
Device Info: IFACE_eth0=02:42:ac:11:00:03;IFACE_eth1=...and so
-if serial number is present then
Device Info: SNXXXXX;IFACE_eth0=02:42:ac:11:00:03;IFACE_eth1=...and so
Manual testing done and Device Info in OV gets updated as above.

Signed-off-by: Sarita Mahajan<EMAIL_ADDRESS>

Fixes #333

Can you change the commit message to feat  from refactor?


Add hexo-filter-image plugin

Check List
Please read and check followings before submitting a PR.

[ ] I want to publish my theme on Hexo official website.

[ ] I have read the theme publishing doc.
[ ] link URL is correct.
[ ] preview URL is correct.
[ ] preview URL web site is rendered correctly.
[ ] Add a screenshot to source/themes/screenshots.
[ ] Screenshot filename is same as value of name.
[ ] Screenshot size is 800 * 500.
[ ] Screenshot file format is png.

[x] I want to publish my plugin on Hexo official website.

[x] I have read the plugin publishing doc.
[x] link URL is correct.

[ ] Others (Update, fix, translation, etc...)

Please try not to use the master branch (of your fork) for pull request, otherwise you'll end up with the same issue as https://github.com/hexojs/site/pull/1069 in future PRs.
In fact, do not use master branch for any pull request even in other repos.

I would advice not to touch the master branch (of your fork) except to sync with upstream. To sync,
$ git clone https://github.com/JoeyBling/site hexo-site
$ cd hexo-site
$ git remote add upstream https://github.com/hexojs/site
$ git checkout master
$ git fetch upstream
$ git rebase upstream/master
$ git push -u

Always push commit(s) (of your work) to a new branch. Once the pull request has been merged in the upstream, remove the branch in your local copy
$ git checkout master
$ git b

Anyway, looks like this plugin is trying to resolve similar issue as hexo-typora-image? https://github.com/hexojs/site/pull/735

Anyway, my understanding of the purpose of this plugin is to prepend root value to the image path. This also can resolved by the img tag plugin.
{% img /path/to/image %}

Perhaps hexo-renderer-marked can add a workaround for that issue.

Yes, you're right, I just chose to rewrite the plugin without breaking the Markdown syntax

@curbengh Well, can't I select master branch commit request?

Yes, you're right, I just chose to rewrite the plugin without breaking the Markdown syntax

That's fine, I do understand some may prefer pure Markdown syntax. https://github.com/hexojs/site/pull/735 also addresses image path issue, but looks like this plugin fixes different issue.
Anyway, thanks for raising up this issue, I'm working on to fix it in hexo-renderer-marked.

Well, can't I select master branch commit request?

you could, it's just discouraged, I suggest a branch so that the issue in https://github.com/hexojs/site/pull/1069 doesn't come back again (in future PRs). If you're sure that this is the only or the last PR for this repo, it's fine to use the master branch.

@curbengh Yeah. It's only right to choose the right plugin for you, depending on the situation

@curbengh that's great,thanks,that is the last PR for this repo, it's can to use the master branch.

I just tested your plugin and it works for root: /testPath and root: /testPath/ 👍 .
Aside from the tag removal, can you update your readme to show root: /testPath/, instead of root: /testPath. I'm aware both works, but having a trailing slash is a preferred convention.

I just tested your plugin and it works for root: /testPath and root: /testPath/ 👍 .
Aside from the tag removal, can you update your readme to show root: /testPath/, instead of root: /testPath. I'm aware both works, but having a trailing slash is a preferred convention.

Thank you for your feedback，And I solved this problem in version 1.2.1

Update dependency package use npm update hexo-filter-image -save
Then execute hexo clean to test it

all right,I don't need to do anything else.
finish this PR

Thank you for your feedback，And I solved this problem in version 1.2.1
Update dependency package use npm update hexo-filter-image -save
Then execute hexo clean to test it

I meant the readme of your plugin, specifically the Example section. Please change
root: /testPath
to
root: /testPath/

Well, Are you didn't delete the tags for me?
so,how can i do it.create new PR?

Thank you for your feedback，And I solved this problem in version 1.2.1
Update dependency package use npm update hexo-filter-image -save
Then execute hexo clean to test it

I meant the readme of your plugin, specifically the Example section. Please change
root: /testPath
to
root: /testPath/

Well, maybe I didn't understand it well enough and it has been fix.
I was wondering if the config root: /testPath will affect the hexo build?

Well, maybe I didn't understand it well enough and it has been fix.
I was wondering if the config root: /testPath will affect the hexo build?

Hexo appends a trailing slash if missing, but we recommend user to always put a trailing slash. I suggest to add a trailing slash to your readme to avoid user confusion and be consistent to the hexo's default.

Well, maybe I didn't understand it well enough and it has been fix.
I was wondering if the config root: /testPath will affect the hexo build?

Hexo appends a trailing slash if missing, but we recommend user to always put a trailing slash. I suggest to add a trailing slash to your readme to avoid user confusion and be consistent to the hexo's default.

yeah,I add a trailing slash to readme,good job

Why haven't I seen the update on the official website? Can't find my plugin.
Isn't this PR request approved now?

Thanks.


2018 iPads missing

New iPads (up from iPad7,5) are not supported. Anyone with a safe PR for that? Thanks.
https://www.theiphonewiki.com/wiki/Models

This PR seems to work fine: https://github.com/sebyddd/SDVersion/pull/91


Chinese vocab contains ##word which embeddings seem meaningful as I test them in a Chinese sequence classification task?

However, embeddings of the characters (##char) seem meaningful as I test them in a Chinese sequence classification task. I want to ask how you get the embeddings of these (##char) characters. Are they just randomly initialized? Thank you!
Originally posted by @sz128 in https://github.com/google-research/bert/issues/62#issuecomment-439272835

weight share...

@nbcc  could you please elaborate it?
Is it because the embedding weight of ##word are copied from those without '##' ?
Thanks~


Add scrollback config property

Add documentation for scrollback config property being added in https://github.com/zeit/hyper/pull/3038

Thanks!


Verilator xinit

I already talked to Taylor about commit message conventions for future commits. I will take a quick look and merge this in tonight and also email BRG to let them know about this change.
@taylorpritchard Did you try a specific register file test that fails with --test-verilog='ones'? Or do we need to add that?

@cbatten There is one test that fails with --test-verilog='ones' (provided the code is added to the test file to pass through the argument to the translation tool)

OK. This looks great. It looks like the current tests in RegisterFile_test.py actually incorrectly assumed the register state was initialized to zero. So I fixed that in the test cases, then I added a new test case named test_regfile_1R1Wconst0 which passes even though we do not explicitly check on a read to ensure that we always return 0 when reading r0. So this passes:
 % py.test ./RegisterFile_test.py -k const0
 % py.test ./RegisterFile_test.py -k const0 --test-verilog

However, with the new features that @taylorpritchard added, we can force Verilator to set all uninitialized state to ones and then it fails:
 % py.test ./RegisterFile_test.py -k const0 --test-verilog='ones'

So I am going to go ahead and merge this into the ece4750 branch and then master. Thanks @taylorpritchard!

We already merged this into the master branch


Noticed two Parameters Keys

Hey, I'm working on enabling streams in my Neptune template and checked here for an example of how to implement it. I noticed in the json that there are two parameters keys (lines 110 and 115), which seems like a mistake.
Reference:
https://github.com/aws-samples/amazon-neptune-samples/blob/a33f481707014025b41857966144b4a59d6c553b/gremlin/neptune-streams/cloudformation-templates/services-neptune-stack.json#L100-L125

Thanks for reporting this. The first Parameters should probably be folded into the second: I'll look to push a change.
Regarding the actual enabling of Streams, the template uses the lab mode format for enabling streams – see https://docs.aws.amazon.com/neptune/latest/userguide/features-lab-mode.html.
This, while still currently supported, has been replaced by a neptune_streams parameter: https://docs.aws.amazon.com/neptune/latest/userguide/features-lab-mode.html
The CloudFormation template will work as is for enabling Streams, but the preferred approach now would be:
 "Parameters": {
       " neptune_streams": "1"
     }


Cloner Console Part 2 Part 2

About the PR
Yeah I revived the old fishfish pr, draft because I still have a lot of cleanup and I can't merge upstream because it crashes with a weightless bug.
Changelog

:cl: Fishfish458, Rane

tweak: Reworked cloning. It now takes a cloning pod, cloning console, and medical scanner linked together with a multitool.
remove: You can no longer prescan to be cloned. Your body has to be in the scanner at the time of cloning.

What do you want me to do about body reassemble since it's already pretty broken and incompatible with this

What do you want me to do about body reassemble since it's already pretty broken and incompatible with this

Um you can probably leave it commented out and then i can fix it after the pr is merged. On thing of note, im not sure the species field in humanoid appearance is properly updated and tracked.

Ive made fixes to skeletons in a new pr, so i suggest removing all unnecessary changes in your code lest you may run into a lot of conflicts.

I'll just fix it after that's merged because this isn't gonna build if I uncomment that


Edit/Delete ClienID/Secret

The problem
Hi !
At first install I had an typo in the ClienID/Secret input. I uninstalled Miele in HACS and installed it new.
When I start the configuration Steps now, I am not asked for the ClienID/Secret again but will be directed to the miele-Homepage immediately.
How do I delete or edit the ClienID/Secret ? Where are they stored ?
Thank you !
Version of miele integration having the issue?
0.1.21
Version of Home Assistant Core having the issue?
2024.1.5
Anything in the logs that might be useful for us?
No response
Additional information
No response

See here: https://github.com/astrandb/miele/discussions/247

Ah Ok ! Thank you.
Maybe the steps could be implemented into the Wiki/FAQ.


Tuning notebook updated to include csv upload

Code to provide csv as training dataset included.
Separate and detailed section for Dataset preparation.
Added more details about different types of dataset we can provide.

@MarkDaoust Could you take a look at this? I had a couple of questions about documenting protos.

Could you take a look at this? I had a couple of questions about documenting protos.

I've done a drive-by. Agree on the protos comment - thanks for fixing that @nidhinpd-YML.


Update all places to use cached metric

We need to use new cached metric returned from subutai system info command in all places where RAM metric is  used: in calculations and in UI display

Done


nix-pin: init at 0.1.2

Motivation for this change
Introduces nix pin (https://github.com/timbertson/nix-pin) at 0.1.2.
Nix pin is a development utility for "pinning" individual nixpkgs derivations to in-development versions.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build nix-pin

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: nix-pin
Partial log (click to expand)
Cannot nix-instantiate `nix-pin' because:
error: attribute 'nix-pin' in selection path 'nix-pin' not found

No attempt on x86_64-linux (full log)
The following builds were skipped because they don't evaluate on x86_64-linux: nix-pin
Partial log (click to expand)
Cannot nix-instantiate `nix-pin' because:
error: attribute 'nix-pin' in selection path 'nix-pin' not found

No attempt on aarch64-linux (full log)
The following builds were skipped because they don't evaluate on aarch64-linux: nix-pin
Partial log (click to expand)
Cannot nix-instantiate `nix-pin' because:
error: attribute 'nix-pin' in selection path 'nix-pin' not found

@GrahamcOfBorg build nix-pin

@GrahamcOfBorg build nix-pin

Success on x86_64-linux (full log)
Attempted: nix-pin
Partial log (click to expand)
building
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/l4g7wm0riakfcghng5h7q4qmkbni103a-nix-pin-0.1.2
strip is /nix/store/fzcs0fn6bb04m82frhlb78nc03ny3w55-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/l4g7wm0riakfcghng5h7q4qmkbni103a-nix-pin-0.1.2/bin
patching script interpreter paths in /nix/store/l4g7wm0riakfcghng5h7q4qmkbni103a-nix-pin-0.1.2
/nix/store/l4g7wm0riakfcghng5h7q4qmkbni103a-nix-pin-0.1.2/bin/nix-pin: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/azw9ys2m2fpfzf730xjcxja890gpyp58-python3-3.6.4/bin/python3"
checking for references to /build in /nix/store/l4g7wm0riakfcghng5h7q4qmkbni103a-nix-pin-0.1.2...
/nix/store/l4g7wm0riakfcghng5h7q4qmkbni103a-nix-pin-0.1.2

Success on aarch64-linux (full log)
Attempted: nix-pin
Partial log (click to expand)
building
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/q1win1q16m0c3gncal2g17fpf5hyrrp0-nix-pin-0.1.2
strip is /nix/store/3zq400fri5dv7d30lpxlqm2v9y1iis6j-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/q1win1q16m0c3gncal2g17fpf5hyrrp0-nix-pin-0.1.2/bin
patching script interpreter paths in /nix/store/q1win1q16m0c3gncal2g17fpf5hyrrp0-nix-pin-0.1.2
/nix/store/q1win1q16m0c3gncal2g17fpf5hyrrp0-nix-pin-0.1.2/bin/nix-pin: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/dm6n8imydr8bdhr4j6l6wwfx8h99h781-python3-3.6.4/bin/python3"
checking for references to /build in /nix/store/q1win1q16m0c3gncal2g17fpf5hyrrp0-nix-pin-0.1.2...
/nix/store/q1win1q16m0c3gncal2g17fpf5hyrrp0-nix-pin-0.1.2

Success on x86_64-darwin (full log)
Attempted: nix-pin
Partial log (click to expand)
configuring
no configure script, doing nothing
building
installing
post-installation fixup
strip is /nix/store/0fzpxnsanc02i4jsb1yhchjp4p62b2n3-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/bkzlhda2w6kp5ab7ffppilxpv8dj89k2-nix-pin-0.1.2/bin
patching script interpreter paths in /nix/store/bkzlhda2w6kp5ab7ffppilxpv8dj89k2-nix-pin-0.1.2
/nix/store/bkzlhda2w6kp5ab7ffppilxpv8dj89k2-nix-pin-0.1.2/bin/nix-pin: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/mxrl6zan6h63cwl62bd91bgaghz2d94y-python3-3.6.4/bin/python3"
/nix/store/bkzlhda2w6kp5ab7ffppilxpv8dj89k2-nix-pin-0.1.2


Help adjusting stopwords

Hi there - Firstly thank you for this search option. It's incredibly helpful.
This isn't an issue, I'm just looking for a little help/guidance. I need to adjust the stopwords for my project as we have two important methods called 'from' and 'to' which are currently not showing in the search.
I looked up stopwords on the lunr repo and the following solution seemed so simple, but I just can't get it to work.
https://github.com/olivernn/lunr.js/issues/201

If you really need to search for words that are stop words you can remove the stop word filter like so:

index.pipeline.remove(lunr.stopWordFilter)
Alternatively you can generate your own stop word filter that is more specific to your use case:
var myStopWordFilter = lunr.generateStopWordFilter(['your', 'stop', 'words', 'here'])
index.pipeline.before(lunr.stopWordFilter, myStopWordFilter)
index.pipeline.remove(lunr.stopWordFilter)

I assumed I could just pop it here in the lunr-search.js? But no luck. I've tried a few different ways and exhausted all the links I can find.
constructor(searchDocs, searchIndex, baseUrl = "/") {
    this.searchDocs = searchDocs;
    this.lunrIndex = lunr.Index.load(searchIndex);
    this.baseUrl = baseUrl;

    const myStopWordFilter = lunr.generateStopWordFilter(['my', 'stop', 'words', 'here']);

    this.lunrIndex.pipeline.before(lunr.stopWordFilter, myStopWordFilter);
    this.lunrIndex.pipeline.remove(lunr.stopWordFilter);
  }

Any help would be hugely appreciated. Happy to swing you over a fee for assistance.
Thanks for reading.

Adding an option for it.

stopWords option addded, check readme


need a small delay multi-box session launches

It may just be that with GW2 on an SSD and 32G RAM installed that I am an exception.
However, I consistently have what appears to be a contention issue between multiple sessions of GW2 being launched from buddy.  The exception is from the gw2 exe and says "You do not have sufficient privileges to patch the file at this location.  Please log in as an administrator and try again."  If I restart the failed instance, it starts properly.
More Info.  Upon thinking of this, I realized my first instance is started from a shortcut using these parameters "-shareArchive -nopatchui -email "" -password "".  Then when I feel a need, I start gw2buddy and launch more sessions.  The issue with gw2 only happens when I try to add 2 or more sessions using gw2buddy AFTER starting the initial session from the shortcut.  Perhaps this is the root-cause. PS I was able to duplicate the issue starting all sessions from buddy.
I thought a brief delay after spawning multiple clients might relieve the issue.

I’m having an issue where none of the instances after the first one even attempt to load up, not sure where to start then manually though.
Interesting theory on the performance idea, using 64GB Ram, 36 Cores and nVME drives here too, perhaps a delay or forced slow down might be good. I’ll see if I can force that myself and compile locally.

I was using ( and still am ) version 1.0.5 when I reported this.  I will try a new version and report back.

I tried 1.7.  I wasn't able to get even 2 screens to start at once.  I did keep getting messages about excessive fixups. I'd get the fixup message starting 1.7 or 1.0.5 after trying 1.7.  Plus, switching between 1.0.5 and 1.7,  my account list was lost each time.
Interestingly, after 'trying 1.7' a few times, now that I've reverted to 1.0.5, it seems to launch 4 windows at once successfully every time so far.    ( I DO remember trying at least one version sometime between 1.0.5 and 1.7 a while ago.)
I am still using Windows 7 pro, 32GB, SSD or regular HD.

I guess it was wishful thinking.  I went back to 1.0.5 and initially the performance seems better (happens less often).  I still get an occasional failure with 1.0.5, so far it seems less frequent.  It didn't seem like the new version added any new files other than the .exe.  Perhaps a registry setting is a bit different now after exposure to 1.7.
I  believe I had tried other versions of buddy along the way.  If you let me know what to target, I can export some of the registry keys if that helps.

The reg keys related to LB are pretty transient. All they do is keep track of known Client instances.
Any version of LB save files won’t really change much either. They really just store account info and a handful of other things.
 The exe also won’t show many signs of change, but the UI and feature set does change.

@mwrich4 - I had the "same" issue and at some point (between moving back and forth between 1.6.2 and the previous version) the "same" issue went away.
The issue was (in my case but the results you are describing were the exact same as I had experienced, except version numbers of LB) that the process which LB appeared to correctly be grabbing for GW2 had a handle list of size 0 and in turn could never find the mutex to kill as the code will normally loop over the handles and kill the mutex but there was not a list to loop over. I checked that the code had the right process ID by printing a debug msg and checking in sysinternals and sure enough it did, yet LB's handle list for the process got back a size 0 list.
"Making the issue disappear, sadly":
At one point, I at least rebooted my machine but I believe also switched versions, (maybe 3rd time, to 1.6.2) and started LB back up per usual in visual studio and could never get the bug to reproduce ... the "stupid" obtaining of the process's handle list code worked as intended ;p , always ... I have started LB hundreds of times now and never had an issue except after the the initial install and first LB run manifesting itself after restarting LB for the second time (ever) through the multiple version changes and one PC reboot. I have been lazy and not wiped out all configuration files and tried from scratch yet ... which I really need to do if I want to solve it or get a better ... handle ... on the handles. (Yeah that last sentence deserves a slap but I had to do it.)

Bumping this since I'm up to LaunchBuddy version 2.3.2 and still occaisionally see the mutex clash when I open more than one client at a time.


Add prerelease support

Publish a prerelease on CI label or in a PR on a non-master branch on version change.
Signed-off-by: Miroslav Kovar<EMAIL_ADDRESS>

Codecov Report

Merging #222 (7d288d8) into master (a705b70) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #222   +/-   ##
=======================================
  Coverage   60.70%   60.70%
=======================================
  Files         147      147
  Lines       19310    19310
  Branches     4265     4265
=======================================
  Hits        11722    11722
  Misses       4185     4185
  Partials     3403     3403

Flag
Coverage Δ

integration
34.89% <ø> (+<0.01%)
:arrow_up:

unittests
53.46% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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


Latest ember-qunit, @ember/test-helpers, ember-resolver

CI failure is unrelated. Will put up a separate PR to fix it.
We should actually follow this up with another PR which bumps these to the actual latest and drops the @types packages. 🚀

Correction on (2) above: we do have the latest; the actual change will be dropping 3.24 LTS from our support range (eventually).

@chriskrycho yeah, that was my assumption as well.
My idea with general purpose addons - if addon actually does work in older versions of Ember with no or minimum effort, there might be mo benefit dropping official support for older Ember versions. (this is highly opinionated of course)


Update callers of file depot depot hash

Removes deprecation warnings present in specs
resolves #3038

@jrafanie Please review

@miq-bot add_label technical debt

@miq-bot add_label test

Not planning on fixing rubocop comments since they are unrelated to my changes

@jrafanie All tests passed, output no longer has depot_hash warnings


pypy3Packages.cryptography: fix build under pypy

Description of changes
cryptography always requires pkg-config for building its native Rust extension. This was erroneously excluded when building with pypy.

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/)
23.11 Release Notes (or backporting 23.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

[X] Fits CONTRIBUTING.md.

Too many rebuilds to go into master.


IT keyboard layout for the Pulse 15

Fixes #38. Since there was no IT layout in the repo, i've created the SVG from scratch, based on the US-ISO layout and a picture of my actual laptop keyboard.
I performed a "File -> Clean Up Document" in Inkscape to reduce the file size.
Also, i've noticed that in the US-ISO svg file, most lines and polylines in the "grid" layer (lots of them!) reference the #XMLID_74_ clipPath. This seems to massively slow down Inkscape when zooming in and out.
Since that clipPath covers the entire keyboard area, it doesn't actually clip anything, so i've commented out the definition (line 83) and the zooming slowdown seems fixed now. Maybe i'm missing something here, feel free to un-comment that back if it was useful.

Thanks for your contribution! :+1:


[Urgent] Certbot command fails when creating new SSL certificate using DNS challenge

Checklist

Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?

Yes

Are you sure you're not using someone else's docker image?

Yes

Have you searched for similar issues (both open and closed)?

Yes

Describe the bug

When creating an SSL certificate using DNS challenge, this error appears:
Error: Command failed: certbot certonly --config "/etc/letsencrypt.ini" --cert-name "npm-1" --agree-tos --email "EMAIL REDACTED" --domains "DOMAINS REDACTED" --authenticator dns-porkbun --dns-porkbun-credentials "/etc/letsencrypt/credentials/credentials-1"
Traceback (most recent call last):
  File "/usr/local/bin/certbot", line 5, in
    from certbot.main import main
  File "/usr/local/lib/python3.7/dist-packages/certbot/main.py", line 6, in
    from certbot._internal import main as internal_main
  File "/usr/local/lib/python3.7/dist-packages/certbot/_internal/main.py", line 28, in
    from certbot import crypto_util
  File "/usr/local/lib/python3.7/dist-packages/certbot/crypto_util.py", line 42, in
    from certbot import interfaces
  File "/usr/local/lib/python3.7/dist-packages/certbot/interfaces.py", line 21, in
    from acme.client import ClientBase
ImportError: cannot import name 'ClientBase' from 'acme.client' (/usr/local/lib/python3.7/dist-packages/acme/client.py)

    at ChildProcess.exithandler (node:child_process:402:12)
    at ChildProcess.emit (node:events:513:28)
    at maybeClose (node:internal/child_process:1100:16)
    at Socket. (node:internal/child_process:458:11)
    at Socket.emit (node:events:513:28)
    at Pipe. (node:net:301:12)

Nginx Proxy Manager Version

2.9.19
To Reproduce
Steps to reproduce the behavior:

Go to 'SSL Certificates'
Click on 'Add SSL Certificates'
Check 'Use a DNS Challenge'
Click on 'Save'
See error

Expected behavior

SSL certificate created and shown under 'SSL Certificates'
Screenshots

N/A
Operating System

RaspberryPi OS Lite Bullseye
Additional context

https://github.com/certbot/certbot/pull/9356/commits/21dbe0cc7d06ed5c8b01153820f7f3cb28631cb2
This commit have removed some deprecated code from Certbot, and the removal of 'ClientBase' causes NPM to break.

A workaround can be found here in #2448

A workaround can be found here in #2430

Can confirm workaround works. Hoping for a fix on NPM end.


"Unhandled promise rejection" (version 0.4.4)

I upgraded to 0.4.4 today and can no longer open git-blame by pressing ctrl-b. Looking at the console, this error appears every time I press ctrl-b:
Unhandled promise rejection Promise__proto__: Promise[[PromiseStatus]]: "rejected"[[PromiseValue]]:
Error: Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.

Would be happy to look into the non-minified dev environment but not sure how to do that.

I also just started seeing this.

See also #83 for more discussion.

This should be resolved in v0.4.5. Please update and see if that fixes the issue. Reopen if not.

Thanks! This was fixed for me. I had to restart Atom for the toggle behavior to work.

I'm on v0.4.5 and I'm getting very similar problems to this issue. Below an image of the error in the dev console.

If you'd rather have me open a new issue, please say so.


Wallet stuck on synchronzing sporks, synchronizing additional data at 25% with low peer count

Describe the issue
Maximum peer count was three while others on slack were reporting teens and higher.  Restarted the wallet and now maximum peers has been two.
Now wallet is stuck on sync'ing sporks.  Consistently at 25%.
Can you reliably reproduce the issue?
If so, please list the steps to reproduce below:

Restart wallet.
Wallet advances to sync'ing sporks state, and sticks at 25%.

Expected behavior
Wallet should advance beyond this state, in a reasonable amount of time.  Half an hour or more is not reasonable.
Actual behavior
Wallet sticks at this sync'ing sporks state.
Screenshots.

What version of XC Core are you using?
v3.0.04
commit id: 97a21bcbf289e181f8f1aeb95d20eb9490c0a0e3
v3.0.02 on ubuntu
Machine specs:

OS:  Tested on BOTH win7 x64 and ubuntu 14.04LTS.  Same behaviour.

Any extra information that might be useful in the debugging process.
Turned off Windows firewall completely.  No change.

hy can you tell me what you excactly did? we tried forking another coin and got the same issue

Check the times of your systems.  If the system clocks are off, it will cause just such a problem.  In this case, my client machine was not properly sync'ing to NIST as it should, and it was off by hours.
kind regards
----- Original Message -----
From: "PXLFuSSeL [Masked]"
To<EMAIL_ADDRESS>Cc: "wrexc"<EMAIL_ADDRESS>"State change"<EMAIL_ADDRESS>Sent: Monday, June 25, 2018 10:59:12 AM
Subject: Re: [XCurrency/xc] Wallet stuck on synchronzing sporks, synchronizing additional data at 25% with low peer count (#9)
hy can you tell me what you excactly did? we tried forking another coin and got the same issue
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub , or mute the thread .

any solution?

  Check your client computer clock to make
sure it is within a few minutes of actual time in your time zone.  Make
sure your other nodes clocks are accurate, too.
On Fri, 2018-07-13 at 20:13 -0700, ArcanaCoin [Masked] wrote:

}
},
{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"hideOriginalBody": "false",
"originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB",
"title": "Re: [XCurrency/xc] Wallet stuck on synchronzing sporks,
synchronizing additional data at 25% with low peer count (#9)",
"sections": [
{
"text": "",
"activityTitle": "ArcanaCoin",
"activityImage": "https://assets-cdn.github.com/images/email/message_
cards/avatar.png",
"activitySubtitle": "@ArcanaCoin",
"facts": [
]
}
],
"potentialAction": [
{
"name": "Add a comment",
"@type": "ActionCard",
"inputs": [
{
"isMultiLine": true,
"@type": "TextInput",
"id": "IssueComment",
"isRequired": false
}
],
"actions": [
{
"name": "Comment",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName":
"IssueComment",\n"repositoryFullName":
"XCurrency/xc",\n"issueId": 9,\n"IssueComment":
"{{IssueComment.value}}"\n}"
}
]
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/XCurrency/xc/issues/9#issuecomment-4049946
68"
}
],
"@type": "OpenUri",
"name": "View on GitHub"
},
{
"name": "Unsubscribe",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "MuteNotification",\n"threadId":
294468967\n}"
}
],
"themeColor": "26292E"
}
]

hello,  kindly how can I check computer clock.   I can see the correct time and timezone on my computer.


Can't Login

I have download 1.0.8 amd 1.0.9 but login and Signup buttons are not working. Even the button not showing properly.

+1

1.0.11, Google Pixel 6

This is amazing that you have MAD rating G.O.A.T. but you app is so over-engineered that you can't really use it. You can't event login into it with google. This is fascinating

onec I click login button there is nothing happened

Hello everyone, I'm excited to announce that this repository has now migrated to utilize OpenAI's official chat API. Please refer to the new guidelines for instructions on running this project. Thank you for your attention!


Re-election of master causes ~40s cluster outage

The Elasticsearch team indicate (in issues/discussions) that a master re-election should only cause a ~5 second outage of the cluster. In practice, I am consistently seeing 40-55 second outages. It could possibly be related to #105 ?
By outage, I mean the clients timeout on any call, whether it be _cluster/health or even _cat/indices.
From looking at the logs, it appears that the remaining master eligible nodes notice that the actual master has left the cluster, they quickly re-elect a new master, then nothing happens for >30s. It appears the cluster is waiting for a response from the now dead master. When the dead master is finally removed (zen-disco-node-failed log messsage) everything works again.
This feels like a misconfiguration of the masters.
I've replicated the issue in both 5.x and 6.x.

Did you try disabling Ipv6 as per comment in #105?

I just gave it a try and with NETWORK_HOST set to _eth0:ipv4_ on the masters and still see the same behavior.

Can you try the latest 6.3.1 images (this repo has yet to be updated) and report back? Want to make sure this isn't a version thing.
Also, can you reproduce this all the time? Have you tried different Kubernetes clusters?

I'm seeing the same behavior with 6.3.1.
So far, all of my testing has been in GKE, but I've seen this behavior across several versions.  I have docker edge so can try with the kubernetes that provides if I have enough resources on my workstation.
After a lot of troubleshooting today I got the outage down to 14s.  With help from a colleague who knows ES better than me today, we did lots of testing and log reading and adjusted the various timeouts available.   From the logs, it looks like the cluster is waiting for an acknowledgement from the dead master about the new cluster state.  Changing the timeouts in the masters wasn't enough, I eventually changed them in the clients and data nodes as well.
The image I'm using is based on yours, I've added some more configuration to elasticsearch.yml
discovery:
  zen:
    ping.unicast.hosts: ${DISCOVERY_SERVICE}
    minimum_master_nodes: ${NUMBER_OF_MASTERS}
    commit_timeout: ${ZEN_COMMIT_TIMEOUT}
    publish_timeout: ${ZEN_PUBLISH_TIMEOUT}
    fd:
      ping_interval: ${FD_PING_INTERVAL}
      ping_timeout: ${FD_PING_TIMEOUT}
      ping_retries: ${FD_PING_RETRIES}

And these are the values from my the test run where the outage was down to 14s:
        - name: ZEN_COMMIT_TIMEOUT
          value: "5s"
        - name: ZEN_PUBLISH_TIMEOUT
          value: "5s"
        - name: FD_PING_TIMEOUT
          value: "1s"
        - name: FD_PING_INTERVAL
          value: "1s"
        - name: FD_PING_RETRIES
          value: "3"

These timeout values are all defaulted at 30s I believe.
In all my testing, this is the log message that coincides with the cluster becoming available again:
[2018-07-13T01:06:03,056][INFO ][o.e.c.s.MasterService    ] [es-master-85c765b64b-zjxzv] zen-disco-node-failed({es-master-85c765b64b-w84n9}{EdRMiBJ1S3Wbc8YZRRQ7jg}{BN1tySSWQeyjqoSDqZlj7Q}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{xpack.installed=true}), reason(transport disconnected), reason: removed {{es-master-85c765b64b-w84n9}{EdRMiBJ1S3Wbc8YZRRQ7jg}{BN1tySSWQeyjqoSDqZlj7Q}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{xpack.installed=true},}

As I mentioned earlier, the only sense I can make of it is that the cluster nodes are waiting for the dead master to confirm the new cluster state.  Once it is removed, everything works again as all members have committed the new state.
@chrislovecnm asked me to add him here.

After much troubleshooting, I realized the actual problem is the query I am running.  The documentation says "reads" should succeed while the master is being elected and I assumed that a GET on /_cat/indices would be a "read".  This call will fail for the duration that I have described in this issue but a search query like /<index-name>/_search?q=some%20text will work throughout the entire master election & cluster state update/publish process.

Thanks for reporting back @erkolson. I'm going to close this, but let me know if you want to re-open and define any other course of action.


Won't Work Outside Demo

I tried demo, and absolutely love it. However I have followed the steps and cannot get it to fully work outside of the demo.
Suggestion: Instead of having all the files and the demo and dist files - Re-create it were the main File as only a Index.html and then has an Assets folder holding the other files and then a CSS and Dist/JS Folder containing the files they need.  Also create a 2nd Note file that gives several CSS/Html command options, were these option can be copied and pasted into other css/html files.
Also with the Index.html give one straight forward demonstration for all photos that can be repeated over and over in other project.

I figured out the issue....


Create Transaction fail-safe

On Send-Tab, the User can either specify a feerate by using the Range-slider or by manually entering a fee into the associated text box.
Using the slider, the range is capped to the smallest point on the spectrum (1 sat/vB); one cannot drag further.
Using the text box, entering a fee, there is also a protection to not fall below 1 sats/vB feerate (text box gets a red border and "Create Transaction >>" is greyed out):

Connecting to the pre-configured aranguren server (fulcrum testnet), it is possible to go below a rate of 1sat/vB and "Create Transaction" -> Finalize/Sign -> Broadcast.

Sparrow 1.6.3
Fee Rates Source: Minimum 1sat/vB "Server"
Of course, this Tx does not propagate but besides switching servers (or using the 'Refresh Wallet' option) at a later stage, the transaction is showing up in Transaction-Tab :grinning:

IMO there should be a autonomous protection to not go below the minimum rate. Beginners might also see a recommended feerate on, e.g. mempool.space, enter those values in the text box under the impressionen that it is the absolute fee.

Thanks, it turns out the aranguren server was returning a min relay fee rate of 0 sats/vb. The minimum permissible value has been set to 1 sat/vb as of 4b2b8f6.


Adding sphinx-sitemap

To inform search engines about the URLs of the blog that are available for web crawling.

FUBAR~


Add a link to feature review at approval time

When you click the details link from github on a merged PR you'll get to the feature review page without any "time" param specified.
There is a large text: " Feature Status: Approved at 2017-01-30 08:12:01 UTC", and we can make it a link so can go to the feature review at approval time.

Yes that's useful, I think there is another time related improvement. In the Releases page if you click on the "Approved" link it will take you to the FeaturReview at the time of approval of the FeatureReview.

But instead the time you see in the FeatureReview should be the time of the deploy event


[Docs] deprecated.md broken link

The deprecated.md page is linking to the Github v1.12.0 release page, but that tag doesn't exist yet. Only v1.12.0-rc*
Replace the link by a valid one like the v1.12.0-rc3

At the time those docs were written, we didn't know yet that docs would be published before GA release; not sure if we should fix this, or just "know" that they're temporarily broken

I think that if a user clicks on one of those links they we'll get surprised.
I've created  PR #24471 to fix this, and later we can make the link point to the GA tag when it gets released.

The point is that RC4 is going to be released next week, RC5 possibly a week later, so I'm not sure it's worth updating each time

I don't think we need to update it each time. It's better having it pointing to an older RC than sending the user to a 404.

see my suggestion in #24471 - link to https://github.com/docker/docker/releases/


Exit with error status.

When terminate is called, assume it's an error and exit with an appropriate termination state.
Otherwise it's not possible to use unfloader in a pipeline.

I'm actually surprised I wasn't doing this before!