Which ports does lego actually need/use?

This is another question/clarification.
From reading the entire README, my understanding is that lego only needs to use port 443 by default, unless you use a custom port, then you need to forward 443 to that.
From https://www.guyrutenberg.com/2015/11/07/getting-started-with-lets-encrypt-tutorial/:

The next step is to issue the certificate and prove to Let’s Encrypt that you have some control over the domain. The client supports two methods to perform the validation. The first one is the standalone server. It works by setting up a webserver on port 443, and responding to a challenge from the Let’s Encrypt servers. However, if you already have your own web-server running on port 443 (the default for TLS/SSL), you would have to temporarily shut it down.

Which seems to confirm that idea.
However, commit https://github.com/xenolf/lego/commit/c4add3c81ed1bac4f8df20d9ca76e47521a82401 says:

Assumes the lego binary has permission to bind to ports 80 and 443.

This is the only mention of port 80 that I see in the README.
Is that accurate? Does it actually need both 80 and 443 (meaning I need to temporarily stop whatever's running on both 80 and 443 when running lego)? Or does it only need 443, and mentioning port 80 is unintended? /cc @mholt
Whatever the answer is, I think it would be helpful to cover in a little more detail that given ports need to be available temporarily while lego is running, and that you need to shutdown something else that might be running there. Just to let people know that it's normal procedure (and maybe suggest alternatives, etc.).
Thanks again, this project is great!

Well, from trying it, it looks like it does use/need port 80 in addition to 443:
2015/12/08 01:47:41 [INFO] acme: Trying to solve HTTP-01
2015/12/08 01:47:41 [www.example.com] Could not obtain certificates
	Could not start HTTP server for challenge -> listen tcp :80: bind: permission denied

I find that surprising because of the following parts of the README:

Pass the --port option and specify a custom port to bind to. In this case you have to forward port 443 to this custom port.

Mentions only 443, not 80. It's not even --https-port, just --port, which makes you think there's only ever going to be one.

  --port                               Challenges will use this port to listen on. Please make sure to forward port 443 to this port on your machine. Otherwise use setcap on the binary

Same.

// A client facilitates communication with the CA server. This CA URL is
// configured for a local dev instance of Boulder running in Docker in a VM.
// We specify an optPort of 5001 because we aren't running as root and can't
// bind a listener to port 443 (used later when we attempt to pass challenge).
client, err := acme.NewClient("http://<IP_ADDRESS>:4000", &myUser, rsaKeySize, "5001")
if err != nil {
  log.Fatal(err)
}

Once again, only 443 is mentioned, and it's made to sound like the only port.

The README has not been updated to reflect the latest changes. Thanks for reminding me to do that.
Lego uses the ports 80 and 443 depending on which challenge is being solved. HTTP-01 needs port 80 and TLS-SNI-01 needs port 443 as specified in the ACME spec.
The --port option was included to allow people to run lego without root and/or when there already is a webserver running which is occupying the mentioned ports. In case you pass the --port option to lego it changes the listening port of any challenge which needs a listening port to the port you specified.

The README has not been updated to reflect the latest changes. Thanks for reminding me to do that.

Thanks!

Lego uses the ports 80 and 443 depending on which challenge is being solved. HTTP-01 needs port 80 and TLS-SNI-01 needs port 443 as specified in the ACME spec.
In case you pass the --port option to lego it changes the listening port of any challenge which needs a listening port to the port you specified.

Oh, really. So if I set --port=5000, does that mean both both HTTP-01 and TLS-SNI-01 will get answered on port 5000? Do you still need to forward 433 to 5000, or is that part outdated?

Lego gets a list of challenges from the server. We choose the first challenge in this list which we can solve. Depending on which challenge that is (the list is always randomized - at the moment 50/50 for HTTP-01 and TLS-SNI-01) we then start a server on either port 80 or 443 if no --port option was spcified.
If you pass --port=5000 we will use that port instead and depending on the challenge either serve TLS-SNI-01 or HTTP-01 on that port. After the challenge is solved we tear the server down and go on.
In case of HTTP-01 you need to forward connections that have a request path starting with /.well-known/acme/ from port 80 to port 5000.
For TLS-SNI-01 you need to forward port 443 to port 5000 as we need to be able to respond to TLS handshakes - there is no HTTP involved here.
Also note that TLS-SNI-01 will not work when SSL termination is happening somewhere else.

That's very clear and I understand now, thanks.

Fixed in 6314bea


Make API toctree visible

toc tree was set to hidden on the API index page. Fixing issue 540

Fixes #540

@shreyasbapat

Hello @OptXFinite! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file src/einsteinpy/coordinates/utils.py:

Line 76:13: W503 line break before binary operator

In the file src/einsteinpy/metric/base_metric.py:

Line 302:17: W503 line break before binary operator
Line 308:17: W503 line break before binary operator

In the file src/einsteinpy/metric/kerrnewman.py:

Line 148:13: W503 line break before binary operator
Line 193:17: W503 line break before binary operator
Line 201:25: W503 line break before binary operator
Line 202:25: W503 line break before binary operator
Line 208:21: W503 line break before binary operator
Line 221:17: W503 line break before binary operator

In the file src/einsteinpy/symbolic/predefined/bessel_gravitational_wave.py:

Line 30:9: W503 line break before binary operator

Commenting on the second commit: Since the first failed formatting updates, I ran the tox -e reformat to update formatting which seems to be causing tests to fail.

Hey @OptXFinite, thanks for the PR. Could you sync your branch with einsteinpy:main and then make the change in docs/source/api/index.rst? The formatting and unit-test errors have been fixed in main now. We should be able to merge after.

Superseded by #620.


Unbound Debug implementations of BufReader and BufWriter

Hi there,
Otherwise when used in structs it requires to have additional bounds.

Thanks!


The NODENAME is fixed on 'rabbit', can not support other value

In my rabbitmq-env.conf, I can change the NODENAME to other value, like:
#Rename the node
NODENAME=mq
MNESIA_BASE=/home/rabbitmq/mq-data
LOG_BASE=/home/rabbitmq/rabbitmq_server-3.6.1/log

every server is configed as the same NODENAME.
but, when I start the rabbitmq servers, they are not clustered, and in log:
=ERROR REPORT==== 10-Mar-2016::17:11:02 ===
autocluster: Can not communicate with cluster nodes: [rabbit@xxxxxxxxx]

so, the NODENAME of servers in the cluster, should not change to other value?

Hey @dunty I think it is hardcoded here, this would explain why there is no way to currently override that value:
https://github.com/aweber/rabbitmq-autocluster/blob/b3472595e01800577d6f3c45ffa992000e579785/src/autocluster_util.erl#L61-L71
node_name(Value) ->
  Host = case autocluster_config:get(longname) of
    true  -> as_string(Value);
    false ->
      Parts = string:tokens(as_string(Value), "."),
      case length(Parts) of
        1 -> as_string(Value);
        _ -> as_string(lists:nth(1, Parts))
      end
  end,
  list_to_atom(string:join(["rabbit", Host], "@")).

This will be supported in 0.5.0 which should drop within the next week.


Oil and Gas Ternary Diagram [PYTHON]

App name
dash-oil-and-gas-ternary
App

[ ] This app is currently deployed on Dash(R) Gallery: [deployment URL]
[x] This app is new

Source code repository
https://github.com/plotly/dash-oil-gas-ternary
Current appearance

Redesign

Playground deployment
https://dash-playground.plotly.host/dash-oil-gas-ternary/

Plz slack me for the design file whoever gonna do this app

@YunkeXiao Could you try to keep a max height for the dcc.Dropdown? You can check this out for some inspiration: https://github.com/plotly/dash-bio/blob/d16a10d7a4444c37b8da3a515171100594b46b20/assets/clustergram-style.css#L126


disk img registry

/kind enhancement
Is there any reason why we only use quay.io to distribute KubeVirt images?
The architecture for quay.io is pretty bad resulting in severe outages in recent times.  I would like to see us get some redundancy.   CentOS yum repos have had redundancy for like 17.5 years.

I don't know about the options we have.
Docker is being moved away in many cases due to the pull limits.
We could provide our images on something like Google Container Registry, but that would mean additional cost for pulls we need to pay. Are there other options or does the CNCF suggest/provide anything?
Does GitHub offer something like this now?

GitHub offers a registry ... https://docs.github.com/en/packages/guides/about-github-container-registry

Just passing through, personally I push images to quay.io, & docker.io for all builds. Critical images also go to ghcr.io & public.ecr.aws. I fallback to pulling from docker.io during quay outages. ghcr/ecr is last resort due to costs getting out of hand quickly on them.
I wish K8s had a native feature to pull fully qualified images in a list via weighted mechanism. Absent of that a manual flip covers outage times where a pull through mirror isnt present or doesnt have cached content.

I will check with RH OSPO / CNCF to see what they can provide for GitHub services


bug: Restoring a chat tab without a valid access token produces broken sign-in experience

Version
Main 18f61937d41be0d1ad88642485085d51d7c89a5f
Describe the bug

Sign in, start a chat.
Go to https://sourcegraph.com/user/settings/tokens and revoke your token
In VSCode, reload the window

You end up in this state, where the login UI is in the chat, but the login buttons don't work:

Expected behavior
Always show login in the sidebar.
Additional context
No response

I'm closing this in favor of related issue #2392. That issue reflects the customer impact better: new users who click on a toast to sign in will also end up in this state.


Add Carnivores by Creo

Song Name
Carnivores
Artist Name
Creo
Source
Youtube
Youtube Link
GRJ6GR-HqplSQ1sl
Direct File Link
No response
Song ID
690265
Start Offset [ms]
0
Extra
Created from Auto Nong.
Created for level: 62857306

reject
invalid yt link


streamAudio interception

Is there any way interception ongoing stream because when customer speak i need to interception on going coversation i mean ongoing base64 chunk

Actually no, there is no way to intercept what is being streamed from the module to the websocket server; the chunks are sent either directly or through the buffer depending on the buffer size. It is sent as L16, meaning raw 16bit audio chunks.
You could intercept it though by setting up a middle man, your websocket server, which can intercept the received audio and forward it further. There you have full control of the audio.

OK even we can use in ESL ,to stop ongoing stream but the problem its pause current chunk ,if we add extra websocket server in between again its extra latency

Right, I understand your request but unfortunately there is no other way around. You can't start two streams for example from the same channel. The module streams audio to websocket server, and access to the data is only available at the endpoint which is the websocket server. If you introduce a middleware websocket server, at the same server, the latency will be minimal.
The audio sent to the websocket server could be saved to a file in parallel while being streamed (just an idea) which will give you access to it. It is beyond the actual purpose of the module but you could implement it very easily.

sure i will try thins and thanks


Patch for highLowMultiplier.

This patch fixes #212 on Dota2 replays after patch 7.23

Hey @nikicat, thank you for your work.
I spent a bit of time with this bug, and have come to the conclusion that there must be a bug on Valve's side somewhere. Makes no sense to encode -Float.MAX_VALUE..Float.MAX_VALUE in 4 bits.
In the replay I have here, the value is written exactly ONCE (for the whole replay), with an integer value of 0.
I  opted for a different approach to "fix" this, by removing the min and max values from the serializer, which will make the value decode to 0.0f for now.
Still thankful for the contribution though, keep 'em coming!

Ok, @spheenik, no problem. Thanks for quick update!


Theme Not Playing

I just downloaded this plugin, ran the task to download all theme songs, and verified that a random selection of folders do have a working theme.mp3 file within them.
When accessing the show's page, the one from which you can play an episode, watch the trailer, or read the description, I hear nothing. I've tried this on both my browser and from the Jellyfin app on my TV.
Is there any additional configuration required, aside from installation and running the task, or am I incorrect in assuming that the theme should play when accessing the show's page?

Jellyfin Version - 10.8.8
Plugin Version - <IP_ADDRESS>

Hello, had the same problem just now. If you go to your Display settings and enable the feature, "Theme Songs". Hope that helps, cheers.

What if it doesn't appear in the Display section of libraries? I have the plugin installed and the themes downloaded, but have no option to "enable Theme Songs"?
I have restarted, stopped & started Jellyfin, still no joy.


Design & Components

We could maybe introduce the usage of some building blocks from the tailwind community:

daisyUI
https://github.com/shadcn-ui/ui
https://github.com/tailwindlabs/headlessui
https://github.com/mdbootstrap/Tailwind-Elements
https://github.com/ben-rogerson/twin.macro

Since the app will be a bit small, we could also just build the necessary blocks we'll use anyway.

Attached @Theisflo draft
ds_ui.pdf
Note NFT-Data shall be uploaded to /srv/app/nftdata (e.g. an image). Details on the binary-data management (db-schema, flow, ... ) will be outlined in #25

Assign to @pedrolucasp to implement in branch new-ui

Closing, since many break-out tasks exist


snapOffset updating

Hi. In my project I want to add easing animation for snap distance like fadeIn('slow') or transition: all 130ms ease-in. Also I have idea for this option which can snap to offset not only with dragging but when I release mouse click in this distance so I can manually dragging containers and also control snapping. I'm not good in JS, please help me somebody.

Outside the scope of this project.


PUT on a sub-property of an element

Hi, I could not find this in the documentation, so I'll ask here.
Is there a way to make a put on a subelement without doing a get first?
I have this situation:

obj is retrieved at /objs/{objId}
status property of obj is set by the user to a new value
a PUT must be issued to /objs/{objId}/status

Business requirements make mandatory to only do the PUT on the "subelement", a PUT on the whole object would break things (namely object version persistence) outside of our control (sadly). Is this use of rest API supported by restangular?

Wouldn't the PATCH method be a better fit for your case ?
As the PATCH method purpose is to update only part of an object instead of the whole object.

I will check with the client department if a patch can work without triggering their PUT side-effects (that's the issue at hand).
Using the sub-resource URI was a way to circumvent the side effects totally by not entering that endpoint


feat: MaskRCNN upgrade to TensorFlow 2.x + Filesyncer support(preprocessing-TFOD-MaskRCNN)

Need to change this hint to: Path to the last fine-tune checkpoint for this model in default object storage. Leave empty if this is the first time you're training this model.

Need to change this hint to: Path to the last fine-tune checkpoint for this model in default object storage. Leave empty if this is the first time you're training this model.


Lua - onAnimationFinished(name, tag)

What feature do you want to get added on the base engine?
It would be pretty cool, if there would be a function, that checks, if an animation has ended, and it would revert back to going idle.
Like if there is a special cutscene midsong, and the chacarcter would then either fade away or change.
and to prevent those visual effects from happening. you could use for example
function onAnimationFinished(name, tag)
   if name = 'CustomAnim' then
   setProperty('dad.alpha',0)
end

the animation name could either be defined in the character json, if it is a character, or if it is a lua sprite, used via script or even in a stage, it could be checked with those define by addAnimationbyIndices() or addAnimationByPrefix()
also, seeing the issue from #11437
it could then work similar or as a more comfort way of using
if getProperty('dad.animation.curAnim.name') == 'singLEFT' then
   if getProperty('dad.animation.curAnim.finished') then
      debugPrint("LEL")
   end
end

just with a check of, what the current anim is and then if it is finished or not (also because that construction somehow does not work?)
To test your sight, and reliability, please select the option of what should NOT be requested.
Stage Editor, 6K+ support, and winning icons.

tbh i really dont think this is needed

then at least, how would I check, if a specific animation is finished?

if getProperty(dad.animation.finished) and getProperty(dad.animation.curAnim.name) == 'animName' then


find by nummeric needs string

Hi Joe,
first let me thank you for creating that awesome in-memory database :-)
I think I found a minor bug about to find entries. You can reproduce it by creating a small db with an index by e.g. coordinates x and y, what are numbers.
var collection = db.addCollection('treasure', {indices: ['x', 'y'] });
collection.insert({
  x: 1,
  y: 1,
  text: 'here is the treasure'
},
{
  x: 20,
  y: 10,
 text: 'here a stupid one was digging into the ground'
});

If you try to find it by
collection.find({'x': 1, 'y':1}); // doesn't whistleblow that it was right

you will get en empty result (without no comment about wrong way to ask for).
If you do right, you will find an entry:
collection.find({'x': '20', 'y': '10'});

There are several ideas about preventing trouble for developers:
If you want to do it more performance supporting, a simple warning about inserting numbers instead of text would be right.
Else you could convert the find request to strings in general.
-Dan

Thanks Dan for catching this, will look into this asap!

@Student007 talking to @obeliskos i actually found that the problem doesn't reside in the fact that you need to pass a string for a number, but the fact that you're using a slightly wrong syntax in the find (which I had not noticed!): instead of find({x: 1, y: 1}) you need to do find({x: 1}, {y:1}) the difference being that you need to pass two distinct object queries, not a single object with two properties.
I actually couldn't reproduce the issue because i was using the correct syntax (force of habit really...), so I was a bit confused, and i can confirm Loki behaves as expected. Closing this but let me know if you encounter any more problems (and of course feel free to re-open this if you feel there's an issue).

Yes I think the insert should read :
collection.insert([
  { x: 1, y: 1},
  { x: 20, y: 10 }
]);

and your find should look like :
collection.find({
  '$and': [
    {'x': 20}, {'y': 10}
  ]
});

I would propose to make this very explicit in the documentation. I too was using this approach to finding an object using a multi-property object, and I was getting what I thought were random results back :(
Any particular reason not to support this way of finding objects? It seems so natural.

Would this work?
loki.Collection.findObject = function(template) {
  var k, obj1, query;
  query = [];
  for (k in template) {
    if (! template.hasOwnProperty(k)) continue;
    query.push((
      obj1 = {},
      obj1[k] = template[k],
      obj1
    ));
  }
  return this.findOne({
    '$and': query
  });
}

@retorquere i'm all for a PR if you want to submit one. Your trick is neat, the important thing is to utilize find (which you do!) so to leverage indexes.

https://github.com/techfort/LokiJS/pull/155

I take it then this:
keys.find({citekey: { '$in': citekeys }, libraryID: libraryID}))

is also not OK? Would that then be
@keys.find({'$and' : [{citekey: { '$in': citekeys }}, {libraryID: libraryID}]})

that's correct.
On Sat, May 30, 2015 at 8:12 PM, retorquere<EMAIL_ADDRESS>wrote:

I take it then this:
keys.find({citekey: { '$in': citekeys }, libraryID: libraryID}))
is also not OK? Would that then be
@keys.find({'$and' : [{citekey: { '$in': citekeys }}, {libraryID: libraryID}]})
—
Reply to this email directly or view it on GitHub
https://github.com/techfort/LokiJS/issues/142#issuecomment-107076635.

BTW, don't know where else to leave the praise, but LokiJS has provided me with a very clean solution to  safely implement DB caching in my app. I'm seeing 10-20x speedups. Very happy.

Thanks! DB caching has been a very common use case for Loki, and I envisage
doing the same on the server side, with loki providing a nodejs native
alternative to redis, with the added advantage of providing dynamic views
and queries. I have prototypes of a server loki running as a front for
mongo or rethinkdb and it works quite well. Thanks a lot anyway!
On Sat, May 30, 2015 at 8:30 PM, retorquere<EMAIL_ADDRESS>wrote:

BTW, don't know where else to leave the praise, but LokiJS has provided me
with a very clean solution to safely implement DB caching in my app. I'm
seeing 10-20x speedups. Very happy.
—
Reply to this email directly or view it on GitHub
https://github.com/techfort/LokiJS/issues/142#issuecomment-107078267.

One thing that lok does that I haven't yet seem elsewhere is triggers (.on) and the changes list. Makes it super-easy to keep consistency between collections, and I have a background timer that causes the cache to flush ever minute, so it's very save.

have you got a gist for that - sounds interesting!
On Sat, May 30, 2015 at 8:41 PM, retorquere<EMAIL_ADDRESS>wrote:

One thing that lok does that I haven't yet seem elsewhere is triggers (.on)
and the changes list. Makes it super-easy to keep consistency between
collections, and I have a background timer that causes the cache to flush
ever minute, so it's very save.
—
Reply to this email directly or view it on GitHub
https://github.com/techfort/LokiJS/issues/142#issuecomment-107078709.

I've put up a gist at https://gist.github.com/anonymous/e62cc4e401921506a6dc, but mind that this is Firefox privileged ("chrome") javascript -- I don't know whether the idle observer is available in regular JS. In any case, settimeout is, and if you want to get really funky, you could just hand off the flush to a web worker, as long as the actual flush is done over web services.
In my case, the flush is to sqlite, and even just batching the flush to a 5 second interval has made a huge difference. I am doing fairly naive caching, as in, I don't do inspections to see if something needs to be loaded from the real storage; at startup, I read everything I need cache for into loki, and after that, all reads and writes go to loki only. At shutdown, idle events, and every 5 minutes just to be sure, I flush the collected changes out to sqlite. Made the difference between slow-but-usable and being the fastest Zotero translator by a factor of 10. It has allowed me to do on-demand background exports of bibliographies -- had been done before, but not where you could casually have 10 different of them going.


'You are here' spot disappears on toilet report map

Can it show on the Toilet Report map? It would make it easier to understand where the toilet is in relation to you, and to navigate to the toilet.

We just have a marker for the centre of the map at the moment, or do you mean something more like what is implemented in the old iteration of the toilet map?
At the moment, we have the Get Directions button for navigation. This takes users to their Maps app, which we hope would do a far better job of guiding them to a toilet (having specific directions, auto-updating their location, allowing them to specify what sort of transport, etc).

We work out the distance of loos from three types of location:

Where the user is
A place the user searches for
A specific point chosen on the map

This is implemented by working out the distance of loos relative to where the map is centred; the user providing their location or searching for a place just changes the point the map is centred to as appropriate.
This works well, as:

It's quite intuitive for a user to use
As soon as they move around, they have learnt how to find the nearest loos from any location
It's easy to indicate where the distances are calculated from
We can just use the marker showing the centre of the map and there is no confusion between the three disparate sources of locations

That said, I think we've unearthed two issues here:

Where the locations are calculated from can seem ambiguous
Having another icon for the user's location is definitely confusing in its current form, as it suggests that the location is being used more than it actually is; the locations aren't actually calculated from here directly after the map is moved. I think the solution to this is probably to remove the extraneous blue marker.
It's hard to keep track of where the locations were calculated from after you click on a loo
As soon as you click on a loo, we stop showing where the distances were calculated from; maybe it would help to keep showing this marker and stop moving it? That way, if a user searches for loos around their location and clicks on a loo, they'll still be able to see where they were originally.

An alternative solution to both would be to stop using the centre of the map to calculate distances from and use something else instead, though I can't think immediately what would be as intuitive.

My inclination is that the blue dot for location is both more useful and more familiar than the grey dot for map-centre so I wouldn't want to get rid of that.
I think if you're less familiar with looking at maps, or the area you are in, it's easy to assume that the grey dot is a 'you are here' - which on a mobile it probably is (which is when this is most useful - but if the blue was showing two the two would overlay) but on a computer where you pan the screen more, it's not.
A cross-hair would be more meaningful in terms of a map centre - would that be confusing with the other cross-hair for 'adding a toilet/editing a location' - probably not as that is also fixed in the map centre, so maybe it's the same thing. The blue dot and cross-hair would then overlay, and you'd see the cross-hair moving from the blue dot when you pan the map, showing how the centre is moving from where you are. That should make sense when you look back at the list view too, as then the distances are from 'where you are looking' not 'where you are'.
I can see why the distance is useful though - less so on a computer where you can see the map and where you are in relation to the loos, but for people looking at the list view on a phone it's an immediate reality check of how far the various loos are...
So I think a cross-hair would be better and more consistent.


[Browser] Expose a slideUpdateHeight hook

@Nopik Another shot at the issue. Let me know what you think.
I have updated the demo as a starting point for the documentation.
Closes #279.
Closes #177.

Yeah, seems essentially the same. I'm OK with this.

I'll try that on my app when I'll have a chance, but I expect it will work better than my crude solution so dar.

Just tested it against my app, it works fine, as expected. Looking forward to see that on npm ;)

@Nopik Thanks for letting me know. Let's release it.

Any examples on how we can best implement this?
I've got a slide which contains a truncated list, with a button saying 'show more'... if they hit that then the slides height needs to update.


Increase default retry period to 10 minutes

The default retry period is quite often not enough, so I suggest to increase it.

Thanks for your PR. I've been talking with the Sonatype guys and looking at the metrics they said that 5 minutes should be enough for the majority of releases. It holds in E2E tests with their Nexus and I plan to use that value (instead of 40 seconds as it's now which is not enough anymore).
I plan to release the new version with the new value "soon".


Update rust-cache version.

This should probably update our macOS pipeline as well.
https://github.com/cross-rs/cross/pull/1127/files#annotation_5829519427


fix(versions): update Activiti/activiti-cloud-full-chart-security versions

UpdateBot pushed helm dependency: activiti-cloud-full-example to: 7.1.278

UpdateBot commands:
updatebot push-version --kind helm activiti-cloud-full-example 7.1.278


Release v0.7.0

I'm concerned Heroku is going to start dropping support, so I want to get this out in the wild first.
@croaky, could you push to Rubygems?
I don't have access to the Homebrew formula, so if @croaky, @gabebw, or @JoelQ could update the Homebrew formula with the v0.7.0 release, I would very much appreciate it.

I'll butt in here too and say that I, too, would love to test this w/the homebrew version. Just a couple of days ago updated everything to latest heroku toolchain, and parity via homebrew.
... reluctant +1. I dislike +1's

Yup I'll do this tonight.

@jayroh We'll accept +1's in the form of bulldog photos.

Pushed to Rubygems. Gave y'all access. @jayroh Looks like you're overdue to update your Rubygems.org email address.

@jayroh @geoffharcourt I also gave you write access to thoughtbot-formulae in case you need to update the Parity formulae in the future.

nice - thanks @croaky ... For the reminder too. You're right that's way way overdue.


K-means Clustering

Ready for review and merge. Well, by looking at the number of comments so far, maybe not "for merge" yet :)

Done with first pass code review.   Modifications needed prior to merge.

Code review concerns have been addressed.

Added changes into the last commit: Updates based on the code review.

Pulled!


[Bug]: Dot-Box game is not at all responsive for mobile  devices

Give a brief about the bug ✍
Description
The Dot-Box game is not at all responsive for mobile devices.

What is the expected behavior? 🤔
Description
The Dot-Box game must have been responsive, and adaptive to all type of mobile screen sizes
Provide step by step information reproduce the bug 📄
Description
Open the site: https://gamesphere-multiplayer.github.io/Dot-Box/ in a mobile device
Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

Urgency (Optional)
High priority

Please assign this issue to me under GSSoC'24

@Durgesh4993 Hello sir, I went through the code, and found that the code currently is highly interlinked. When I try to fix something, its directly or indirectly affecting the other part of the code.
To fix this, I have to refactor several things, like I have to seperate the settings page from the game page (I will use local storage to store the settings values and once the player click 'Start', it will take the user to the game page and in the game page the settings values will be retrieved from the local storage).
Seperation of logic is very important as more contributions will make this very complex overtime. If I have your permission, I will work on to fix the whole setup, as fixing just a part using hacks, will cause problem now or later.

@mondalsurojit delete your old code and reclone repo again

@Durgesh4993 I did it. But nothing is different...
So should I go ahead with my above proposition...?

@mondalsurojit as for the refactoring issue, just make it a rule to "pull before push". Always work on the most updated code.

@ayush-t02 Ok sir...

@ayush-t02 Sir, can you please also update the level tag here (PR)...


[540] Fix Github rate limiting

Context
bobheadxi/deployments@v1 by default updates 100 environments and we suspect it breaches Github rate limiting
Changes proposed in this pull request
Set override: false to stop doing this
Guidance to review

Link to Trello card

Things to check

[ ] If the code removes any existing feature flags, a data migration has also been added to delete the entry from the database
[ ] This code does not rely on migrations in the same Pull Request
[ ] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[ ] API release notes have been updated if necessary
[ ] Required environment variables have been updated added to the Azure KeyVault

 Github rate limiting


a widget that display a line

A widget that display a line in both time or frequency domain would be nice to have as a standard in DPF.
It would need have a parameter as input from the plugin side and a background as minimum. It could both be continues and still(defined range), if its still in time/frequency domain it could be used to take input from parameters like sliders and knobs to create something like oscillators or a distortion curve. Background can also be transparent without the need of image data.
I don't know how it should be done but the traffic from plugin side to the GUI cant be to much if it get a signal parameter.

I am not okay with having this in standard dpf repo, but makes sense to have it somewhere reachable and public.
So I will take this as a request for community-driven DPF-Widgets repository.
I will setup that one after the big dpf pugl rework is complete.


Alpine 3.15?

I see that this alpine image is based on Alpine 3.13, which is two versions behind.
What's the attitude for upgrading? Should it be bundled into the next Deno minor version, or just done now on a patch, or should the two bases be available in parallel for a bit (-alpine3.13, -alpine3.15)?
There are already 3.15 images available from the glibc base: https://hub.docker.com/r/frolvlad/alpine-glibc/tags?page=1&name=3.15

Personally I think updating to the latest is fine/not worth having parallel/a complex matrix.

For reference I pinned the version of Alpine to 3.13 a few months ago because version 3.14 had a known issue with Make that crashed the build.

Ah yeah, there was a docker incompatibility introduced in 3.14, I saw it from a Ruby program back then. So a newer image should probably coincide with a minor release with a 'partially incompatible with docker x.y.z or earlier' footnote.
I only saw this issue myself on CircleCI and they have been running an upgraded docker for months now, long enough for it to escape my memory :)

PR are welcome to upgrade Alpine image.

The one line change seems to build
-FROM frolvlad/alpine-glibc:alpine-3.13
+FROM frolvlad/alpine-glibc:alpine-3.15

but I've no idea if https://github.com/denoland/deno_docker/issues/152 (cc @mitranim) is still relevant.... It seems like the make issue is fixed with updating docker client? (For me the failing make example actually works on 3.14 🤷  .)


x/tools/gopls: improve cgo support

Original issue: https://github.com/golang/go/issues/31561.
Currently, gopls does not crash with cgo, but language features are still missing for any symbols imported from "C".

Just to confirm, any package that imports "C" is affected by this, correct?
package p

/*
#include <stdio.h>
#include <stdlib.h>

void myprint(char* s) {
	printf("%s\n", s);
}
*/
import "C"

import "fmt"

import "unsafe"

func Example() {
	fmt.Println()
	cs := C.CString("Hello from stdio\n")
	C.myprint(cs)
	C.free(unsafe.Pointer(cs))
}

For example, an attempt to go-to-def on fmt.Println results in:
GetAST: unable to check package for file:///home/myitcv/gostuff/src/github.com/myitcv/playground/p/p.go: loadParseTypecheck: no metadata found for /home/myitcv/gostuff/src/github.com/myitcv/playground/p/p.go

At least based on some rough tests, I can't get anything to work when a package imports "C".

Actually, this appears to be limited to files that import "C". I've updated my previous comment to reflect this.

Here is a test that demonstrates the issue within govim:
https://github.com/myitcv/govim/blob/cmd_govim_cgo_example/cmd/govim/testdata/cgo_support.txt
This attempts to go-to-def from SameFileN in each of the two files. In the file that does import "C" all is good; in the one that does we get:
GetAST: unable to check package for file://$WORK/p_importc.go: loadParseTypecheck: no metadata found for $WORK/p_importc.go

I think I've found the cause of this.   go list -json returns cached files in the list of CompileGoFiles, in this form (on Mac):
	"CompiledGoFiles": [
		"a.go",
		"b.go",
		"/Users/me/Library/Caches/go-build/d0/d0806a53076964ea7f690a3852e2ada78bc4bf692c37febfacbb6f22bb0c74e5-d",
		"/Users/me/Library/Caches/go-build/f0/f02a2cefdc3e9521cf5705b4c5d454f0b606b37fc6f3186eb6f05235e53979a3-d",
	]

These cache files appear to be the cgo source.  Because the name doesn't match the file name of the original source, gopls is unable to attribute the metadata.
I'm not sure what the 'right' solution is, but i found a quick hack that enumerates GoFiles and CgoFiles instead of using CompiledGoFiles:  (golang.org/x/tools)
diff --git a/go/packages/packages.go b/go/packages/packages.go
index 4ca2b117..75b91f9d 100644
--- a/go/packages/packages.go
+++ b/go/packages/packages.go
@@ -249,6 +249,8 @@ type Package struct {
        // GoFiles lists the absolute file paths of the package's Go source files.
        GoFiles []string

+       CgoFiles []string
+
        // CompiledGoFiles lists the absolute file paths of the package's source
        // files that were presented to the compiler.
        // This may differ from GoFiles if files are processed before compilation.
@@ -333,6 +335,7 @@ type flatPackage struct {
        PkgPath         string            `json:",omitempty"`
        Errors          []Error           `json:",omitempty"`
        GoFiles         []string          `json:",omitempty"`
+       CgoFiles        []string          `json:",omitempty"`
        CompiledGoFiles []string          `json:",omitempty"`
        OtherFiles      []string          `json:",omitempty"`
        ExportFile      string            `json:",omitempty"`
@@ -381,6 +384,7 @@ func (p *Package) UnmarshalJSON(b []byte) error {
                PkgPath:         flat.PkgPath,
                Errors:          flat.Errors,
                GoFiles:         flat.GoFiles,
+               CgoFiles:        flat.CgoFiles,
                CompiledGoFiles: flat.CompiledGoFiles,
                OtherFiles:      flat.OtherFiles,
                ExportFile:      flat.ExportFile,
diff --git a/internal/lsp/cache/load.go b/internal/lsp/cache/load.go
index 6b1320bc..ba7abd6e 100644
--- a/internal/lsp/cache/load.go
+++ b/internal/lsp/cache/load.go
@@ -241,7 +241,7 @@ func (v *view) link(ctx context.Context, g *importGraph) error {
                typesSizes: g.pkg.TypesSizes,
                errors:     g.pkg.Errors,
        }
-       for _, filename := range g.pkg.CompiledGoFiles {
+       for _, filename := range append(g.pkg.GoFiles, g.pkg.CgoFiles...) {
                m.files = append(m.files, span.FileURI(filename))

                // Call the unlocked version of getFile since we are holding the view's mutex.

The generated files that correspond to real files have a //line ... directive mentioning the real file right? Maybe we can parse those to map them back to the real file, then proxy requests/responses between the real file and generated file, adjusting the file offsets as necessary?

load.go got changed in master, here's an updated diff for the hacky fix...
diff --git a/go/packages/packages.go b/go/packages/packages.go
index b29c9136..f025c2f5 100644
--- a/go/packages/packages.go
+++ b/go/packages/packages.go
@@ -248,6 +248,8 @@ type Package struct {
        // GoFiles lists the absolute file paths of the package's Go source files.
        GoFiles []string

+       CgoFiles []string
+
        // CompiledGoFiles lists the absolute file paths of the package's source
        // files that were presented to the compiler.
        // This may differ from GoFiles if files are processed before compilation.
@@ -332,6 +334,7 @@ type flatPackage struct {
        PkgPath         string            `json:",omitempty"`
        Errors          []Error           `json:",omitempty"`
        GoFiles         []string          `json:",omitempty"`
+       CgoFiles        []string          `json:",omitempty"`
        CompiledGoFiles []string          `json:",omitempty"`
        OtherFiles      []string          `json:",omitempty"`
        ExportFile      string            `json:",omitempty"`
@@ -380,6 +383,7 @@ func (p *Package) UnmarshalJSON(b []byte) error {
                PkgPath:         flat.PkgPath,
                Errors:          flat.Errors,
                GoFiles:         flat.GoFiles,
+               CgoFiles:        flat.CgoFiles,
                CompiledGoFiles: flat.CompiledGoFiles,
                OtherFiles:      flat.OtherFiles,
                ExportFile:      flat.ExportFile,
diff --git a/internal/lsp/cache/load.go b/internal/lsp/cache/load.go
index cdbe9703..fe42c4b6 100644
--- a/internal/lsp/cache/load.go
+++ b/internal/lsp/cache/load.go
@@ -152,7 +152,7 @@ func (s *snapshot) updateMetadata(ctx context.Context, uri span.URI, pkgs []*pac

        var results []*metadata
        for _, pkg := range pkgs {
-               log.Print(ctx, "go/packages.Load", tag.Of("package", pkg.PkgPath), tag.Of("files", pkg.CompiledGoFiles))
+               log.Print(ctx, "go/packages.Load", tag.Of("package", pkg.PkgPath), tag.Of("files", append(pkg.GoFiles, pkg.CgoFiles...)))

                // Set the metadata for this package.
                if err := s.updateImports(ctx, packagePath(pkg.PkgPath), pkg, cfg); err != nil {
@@ -183,7 +183,7 @@ func (s *snapshot) updateImports(ctx context.Context, pkgPath packagePath, pkg *
                errors:     pkg.Errors,
                config:     cfg,
        }
-       for _, filename := range pkg.CompiledGoFiles {
+       for _, filename := range append(pkg.GoFiles, pkg.CgoFiles...) {
                uri := span.FileURI(filename)
                m.files = append(m.files, uri)

@stamblerre I've gone back and done a more detailed analysis for the change in https://golang.org/cl/202238.  I've come to the same conclusion that the 'ids' map in snapshot should be populated from pkg.GoFiles.
It might be that i should raise a separate issue for the change, as it doesn't really add 'cgo support' - what it does do is fix the breakage of gopls on Go symbols in packages where there is a cgo file.
From my own use in VS Code, the change makes completion, find references, lint all spring into life for Go symbols in cgo files.  What it doesn't do is expose C symbols or fix the issue where import "C" is flagged as an error ("could not import package C").
Analysis is here: https://docs.google.com/document/d/1r5iVQdcAhMhGKDi0rc-sgBF4ZAsrZuZvRs9Zz2Y_6vQ/edit?usp=sharing
There are two different types of generation as far as I could model it.  For go generate and protobuf, the generated Go files are present on disk, and so in pkg.GoFiles.   Alternately, where pkg.CompiledGoFiles seems to be populated with generated files, it seems to be limited to files generated by go build that the user wouldn't normally expect to interact with (i.e. source generated by cgo)
I wasn't able to locate anywhere in the gopls code where the clients of the snapshot.ids map are currently expecting it to be populated with the CompiledGoFiles list.
I'm hoping you'll reconsider the change, and guide me if it would be better to raise a separate issue for the improvement the change makes.

It's a shame that gopls gets jammed by cgo being involved, because this hampers the value of the wonderfully clean OpenGL wrapper packages provided by the go-gl organisation.

Closing this in favor of #35720 and #35721. Please direct any followups to the appropriate one of those.


Migrate between data stored with searchable True/False

Since searchable=True behavior is to save the hash value along with the encrypted value in the database field, but searchable=False is not.
Changing between True and False after having some data in the database would result as a data corruption.

Same here


Disable Nickel plates

Remove Nickel plate from Roboport antenna array 4.
Remove Nickel plate from Roboport antenna array 3 and replace with Titanium.
Hide nickel plate and sheet coil. Disable and hide casting / strand casting recipes.

I still can find the recipes in version 0.5.7.
Is that correct?

Yes, this is correct. In FNEI, any recipe with a gray title has been hidden and is cannot be used. I recommend you untick "Show Hidden Recipes" in FNEI's settings.
Keep "Show Disabled Recipes" ticked though. Disabled recipes have a red title. These are ones that you haven't researched the tech for yet.
I've asked the FNEI dev to have "Show Hidden Recipes" unticked by default but haven't heard anything back yet.


Upgrade repmgr >=4.3

Hi, we've managed to update to repmgr 4.4 and 5.0.
Also updated to PG 12 in https://github.com/datumcorp/PostDock/commit/321ce37bf426e5d3dd0cdc6381b74d4beb3c3746
However, may need some help on how to add the upstream-node-id option as it is interfering with daemonize option.
Refer to https://github.com/datumcorp/PostDock/commit/0ab14b635e3becb547065cc65bdf8abd97bf275d


Selected delivery mode fails on language change

Steps to reproduce:

go to delivery mode step
select mode
change language
mode is still selected
click next button
see error from above

QA steps:

Login & proceed to checkout
Go to Delivery mode view
Select one of the values and change the language

You should be able to proceed to the payment step without any error or blocked "next" button.

Tested successfully.


[BUG] Snowpack 3.1.x and 3.2.x stopped working with @atlaskit/button

Bug Report Quick Checklist

I am on the latest version of Snowpack & all plugins.
I use package manager npm
I run Snowpack on OS Mac
I run Snowpack on Node.js v12+ (v12.18.4)

Describe the bug
After upgrade from<EMAIL_ADDRESS>to<EMAIL_ADDRESS>I got the error that is shown below in reproduction stepsVersions 3.1.x and 3.2.x have the same problem. It works with 3.0.13.
To Reproduce

Clone repository https://github.com/mdaleki/snowpack-atlaskit-button

npm install & npm run start (it runs snowpack dev)

See error!

Stop snowpack dev.

Change to<EMAIL_ADDRESS>in package.json (remember to remove package-lock.json)

npm install & npm run start

See the button (no error)

Expected behavior
Snowpack 3.1.x and 3.2.x is still working with @atlaskit/button. It works properly with  Snowpack 3.0.13

Versions 3.1+ just stopped working. I have similar bugs.


Question on integration with PHPUnit

Hello,
I have an idea of integrating Behat with PHPUnit. The intention is to have an abstract TestCase class (or a trait) which will be capable of reading a feature file and executing it against a context, like this:
$this->assertFeatureBehavesAsSpecified($featureFilename);

The context in this case is actually the test class itself.
I was looking into the Behat project code, and I think it should be possible to accomplish this by parsing a feature with GherkinFileLoader->parseFeature() and then passing the result to RuntimeFeatureTester. However, there are tons of dependencies (Environment etc) which I am sometimes not sure how to instantiate correctly. If someone familiar with the source code and classes structure helped me out a little, maybe I could make a nice tool in the end.
Thanks.

Hi @crocodile2u - Both Behat and PHPUnit are Test Frameworks, it does not make sense to integrate one into the other. In fact Behat is much more of a "pure" test framework as it merely orchestrates the extensions - which do all the work.
If you just want a test class that can parse gherkin - you can use the Gherkin extension by itself.

maybe I could make a nice tool in the end

What would be a good use case for such a tool? It seems you're trying to rewrite Behat with PHPUnit as a runner from what you describe.

I just created a library that does this: jonathanjfshaw/phpunitbehat.
Repo: https://github.com/jonathanjfshaw/phpunitbehat
I wrote a blog post explaining it: https://medium.com/@jonathanjfshaw/write-better-tests-by-using-behat-with-phpunit
What I like about integrating Behat and PHPUnit is that you can define your feature in the same file as the step definitions it needs. This makes it easy to write good tests that explain themselves well.

I do think this is a good idea; I sort of don't think it's Behat :)


super() must not be called many times

Calling super() twice makes a runtime error.
TypeScript Version:  2.7.0-dev.201xxxxx

Search Terms:
Code
class C extends Object {
  constructor() {
    super();
    super();
  }
}

Expected behavior:
error
Actual behavior:
pass
Playground Link:
Related Issues:

See discussion in https://github.com/palantir/tslint/issues/1983

It seems not standardized and still invalid now.

Not sure we can do more much here. In the general case the compiler can not gurantee how many times the method will be called. The check we can add is that the super call does not appear in a block more than once; first we do not have the infrastructure to do that, and second I think there will be false positives with conditions that the user know are mutually exclusive. This seems like a linter check to me.

Today, compiler seems to be changed to allow putting code before super call. So counting super calls is certainly difficult.
class C extends Object {
  constructor() {
    0
    super();
  }
}


HTTPS

https://jsbeautifier.org/ shows a certificate error for me. I have Javascript disabled for HTTP, so I cannot use jsbeautifier.org without hacking around the fact that it is insecure.
Now that GitHub supports HTTPS for custom domains, it would be nice to see the project served over HTTPS. :-)

The support in github doesn't work on the jsbeautifier.org site for some reason.  I need to look into why.

Maybe we can use Let's Encrypt directly?
https://github.com/Neilpang/acme.sh

https://beautifier.io works. Working on redirecting.

That's great.


Swap JSHint for ESLint

As a prerequisite for https://github.com/orbitjs/ember-orbit/pull/107, swapping JSHint for ESLint.

LGTM. Lots of worthwhile cleanup. Thanks much @mitchlloyd.
@opsb - r?


when the content muti lines ,submit button will be hidden.

have you try to scroll down?

@wxs77577 of course, but it just stick there and nothing happened.

Sorry, I can't find any problem like you said, can you provide more information about your os and browser, also try to disable all of your plugins in you browsers.


Setting to disable appearance of email link

It would great if the email link/feature could be enabled/disabled via a setting, rather than always present.

This now inspects settings.EXPLORER_TASKS_ENABLED and hides the UI for email execution if False


loss during training

I am curious about the loss during training: what's the typical loss when it converges in your work (I think you use 256X256 size image for training?)?
Many thanks.
Jianyu

x2 loss: 0.16~0.17
training sample size 41x41

Thanks @huangzehao .
What's the gray level of your input image? is it [0,1] or [0,255]?
if my input is between [0,1], since the EuclideanLoss E = 1/2N×sum((y-y')^2), shall I expect the max loss to be 0.5?
Jianyu

Hi, the gray level of input image is [0,1].
The max loss is not 0.5, since the output of the network is not limit to [0,1].

Thanks. I am using similar networks, with EuclideanLoss layer. My input is [0,255], but I stretch that into [0,1], using
transform_param {
scale: 0.00390625
}
In that way, I end up with loss ~1k when convergence, with fixed learning rate, without fine-tuning. The output during testing still seems to make sense. So I wonder is this 1k loss I got the result of 256*Euclidean loss?


chore: Update packages

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 96.542%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1737

Relevant Lines:
1778

💛  - Coveralls


graph_from_place AttributeError

Hey!
I'm using Python 3.5.2 on Ubuntu. When using the graph_from_place I get the following error message. I use Anaconda with all packages installed from the 'conda-forge' channel. The issue remains even when changing to Python 2 or using the newest version from github installed through pip and across machines.
>>> import osmnx as ox
>>> G = ox.graph_from_place('Piedmont, CA, USA', network_type='drive')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/andreasbn/anaconda3/envs/python2/lib/python2.7/site-packages/osmnx/osmnx.py", line 1824, in graph_from_place
    truncate_by_edge=truncate_by_edge, name=name, timeout=timeout, memory=memory, max_query_area_size=max_query_area_size, clean_periphery=clean_periphery)
  File "/home/andreasbn/anaconda3/envs/python2/lib/python2.7/site-packages/osmnx/osmnx.py", line 1751, in graph_from_polygon
    G_buffered = truncate_graph_polygon(G_buffered, polygon_buffered, retain_all=True, truncate_by_edge=truncate_by_edge)
  File "/home/andreasbn/anaconda3/envs/python2/lib/python2.7/site-packages/osmnx/osmnx.py", line 1306, in truncate_graph_polygon
    points_within_geometry = intersect_index_quadrats(gdf_nodes, polygon)
  File "/home/andreasbn/anaconda3/envs/python2/lib/python2.7/site-packages/osmnx/osmnx.py", line 1268, in intersect_index_quadrats
    possible_matches_index = list(sindex.intersection(poly.bounds))
AttributeError: 'NoneType' object has no attribute 'intersection'

Do you have libspatialindex installed, per the rtree install instructions?

Yes, I have installed 1.8.5 also from conda-forge channel

It appears to be an rtree bug that affects the combination of rtree 0.8.2 + libspatialindex 1.8.5 + Linux. This bug was not reproducible for me on Mac or Windows. The bug is documented in an issue in rtree's GitHub repo, and it was recently fixed but hasn't been released yet. But you can fix it in the meantime by installing the GitHub version of rtree:
pip install --upgrade https://github.com/Toblerity/rtree/tarball/master

See #8

Cheers, I'll wait for the update to arrive through conda

rtree 0.8.3 is now released and available via pip: https://github.com/Toblerity/rtree/issues/79#issuecomment-267150896
Closing this issue, accordingly.


chore(example): update example

I'm not sure that using wasm32-unknown-unknown is actually the best solution to get this working but I assume we can't use wasm32-wasi without doing something fancier with preview2-prototyping?
In any case, these are the changes I had to make to get the compose example working.

cc @peterhuene

The examples should work with the wasi target, so let me look into it; probably just something out of date.

It seems like various wasi imports need to be satisfied by the server when linking the component:
❯ wasm-tools compose -c config.yml -o service.wasm ../middleware/target/wasm32-wasi/release/middleware.wasm
[2023-04-18T16:31:10Z WARN ] instance `streams` will be imported because a dependency named `streams` could not be found
[2023-04-18T16:31:10Z WARN ] instance `filesystem` will be imported because a dependency named `filesystem` could not be found
[2023-04-18T16:31:10Z WARN ] instance `environment` will be imported because a dependency named `environment` could not be found
[2023-04-18T16:31:10Z WARN ] instance `exit` will be imported because a dependency named `exit` could not be found
[2023-04-18T16:31:10Z WARN ] instance `stderr` will be imported because a dependency named `stderr` could not be found
[2023-04-18T16:31:10Z WARN ] instance `streams` will be imported because a dependency named `streams` could not be found
[2023-04-18T16:31:10Z WARN ] instance `filesystem` will be imported because a dependency named `filesystem` could not be found
[2023-04-18T16:31:10Z WARN ] instance `environment` will be imported because a dependency named `environment` could not be found
[2023-04-18T16:31:10Z WARN ] instance `exit` will be imported because a dependency named `exit` could not be found
[2023-04-18T16:31:10Z WARN ] instance `stderr` will be imported because a dependency named `stderr` could not be found

When curling the running server, a 500 is returned with error: import "streams" not defined.

Ah, that's a simple matter of updating the server to use the prototype preview2 host implementation.

Ah thanks Peter! I figured as much! Are we ok with me adding that? I'll drop the target changes and include preview2-prototyping host.

@fibonacci1729 that'd be great!

Currently the wasi adapter used by cargo component is 408f0bf, so we'd need to use a corresponding host.
I need a release of wit-bindgen to the latest out of wasm-tools to fully update cargo-component to the latest everything, if we want to wait on that.

cc @peterhuene I made some changes to use the latest cargo-component and preview2-prototyping. Caveat: I'm not entirely confident this is 100% correct so please suggest changes or improvements!


Timeout errors when attempting to access child resources

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Storage Explorer Version
1.30.2
Regression From
No response
Architecture
x64
Storage Explorer Build Number
20230721.7
Platform
Windows
OS Version
Windows Server 2012 R2
Bug Description
Unable to retrieve child resources
ProducerError:{
"name": "Error",
"message": "net::ERR_CONNECTION_TIMED_OUT",
"stack": "Error: net::ERR_CONNECTION_TIMED_OUT\n    at SimpleURLLoaderWrapper. (node:electron/js2c/browser_init:2:49509)\n    at SimpleURLLoaderWrapper.emit (node:events:513:28)"
}
Steps to Reproduce

Launch Storage Explorer
Connect to Azure Subscriptions using Azure account
Choose subscription to connect to
Go to subscription
Click on Storage account
Click on File Shares
Time out occurs when attempting to access the file share

Actual Experience
When attempting to connect to a storage account, I can log onto Azure and connect to my subscriptions with no issues, but when I attempt to access a storage account file share, I get the following error:
Unable to retrieve child resources
ProducerError:{
"name": "Error",
"message": "net::ERR_CONNECTION_TIMED_OUT",
"stack": "Error: net::ERR_CONNECTION_TIMED_OUT\n    at SimpleURLLoaderWrapper. (node:electron/js2c/browser_init:2:49509)\n    at SimpleURLLoaderWrapper.emit (node:events:513:28)"
}
I have made sure the proxy is set to system, and I've got internet access, including access to Azure, I'm a global admin, and this works fine from another VM in our tenancy on a different subscription, just not from the VM I'm having trouble with.
I've checked internet speed, that's fine, I'm continually getting timeout errors and cannot identify why.
Expected Experience
To connect to the storage accounts file shares
Additional Context
No response

First thing I want to note is that I am surprised that you are able to run Storage Explorer 1.30.2. The last version of Storage Explorer to use an Electron that supported Windows Server 2012 was 1.28. If all else fails, you may want to consider going back to 1.28. You can find that version here: https://github.com/microsoft/AzureStorageExplorer/releases/tag/v1.28.1
Ignoring that fact, for ERR_CONNECTION_TIMED_OUT, can you please try, on the same machine, using the Azure Portal to access your storage data?

Closing due to lack of reponse. This issue will no longer be actively monitored. If you still need help, we recommend reaching out to Azure support, via openeng a ticket in the Azure portal. Alternatively you can open a new issue here.


BUG: dask.dataframe fill_value doesn't seem to do anything...

Try the following code... it should result in a dask dataframe with no NaN values, but alas, it still shows up. I guess fill_value isn't working.
import dask.dataframe as ddf
import pandas as pd
import numpy as np

x = np.arange(1, 10, dtype=float)
x[5] = np.nan

x = pd.DataFrame(x, columns=['foo'])
x = ddf.from_pandas(x, chunksize=3)
x.pow(2, fill_value=1).compute()

Hmmm, this seems to be consistent with pandas behavior. fill_value seems to be ignored for constants, but works if the argument is a series/dataframe. I'm not sure if this is intended or a bug.
In [36]: df = pd.DataFrame(range(10), columns=['foo'])

In [37]: df2 = df.copy()

In [38]: df2.iloc[0] = None

In [39]: df2.pow(2, fill_value=1)
Out[39]:
    foo
0   NaN
1   1.0
2   4.0
3   9.0
4  16.0
5  25.0
6  36.0
7  49.0
8  64.0
9  81.0

In [40]: df2.pow(df, fill_value=1)
Out[40]:
           foo
0          1.0
1          1.0
2          4.0
3         27.0
4        256.0
5       3125.0
6      46656.0
7     823543.0
8   16777216.0
9  387420489.0

hmm should work; if it works for add then I think it's a bug (pow prob not fully implemented)

add has the same behavior. Should I file a bug in pandas?

Filed here: https://github.com/pydata/pandas/issues/12723.


Modal does not work in a (private) package

I'm trying to use the modal from a private package but it seems they way Livewire-ui modal is set up, that's not possible. It seems that references to 'packagename::modal' do not work. Is this correct? And if so, is this something easily changed?
In Modal class you probably need to be able to set (not sure) something like:
$componentClass = app('packagename::livewire')->getClass($component);

And this somehow need to work too:
// Does not work
<button wire:click='$emit("openModal", "packagename::child-modal", @json(["name" => "Philo"]))' type="button">Open Child</button>

Hi @gavinhewitt
Please check bootstrap/livewire-components.php and verify the component name or verify the component name in your private package, you should have something like:
class YourPackageServiceProvider extends ServiceProvider {
    public function boot() {
        Livewire::component('some-component', SomeComponent::class);
    }
}

Make sure the component name matches.

Hi @gavinhewitt
Please check bootstrap/livewire-components.php and verify the component name or verify the component name in your private package, you should have something like:
class YourPackageServiceProvider extends ServiceProvider {
    public function boot() {
        Livewire::component('some-component', SomeComponent::class);
    }
}

Make sure the component name matches.

Thank you for making me look stupid! I indeed forgot to add the component to the serviceprovider ;-)


Programmatically select a date

How can I programmatically select a date?

+1
it seems the "selectDate:" method doesn't highlight selected date

Try 1.4.0?

@WenchaoIOS the version 1.4 still not available for cocoapods (current version 1.3.1).
[!] Unable to satisfy the following requirements:
- `FSCalendar (~> 1.4)` required by `Podfile`

It's available now ~

@WenchaoIOS Thanks! Its working!

Hello! I'm trying to do the selection like this: self.calendar.select(self.calendar.today)  Do you think I'm missing something? Thanks!


Setup Logout

Log destroy the cookie and token

@iammenasco you'll want to destroy the local storage now:  delete $localStorage http://plnkr.co/edit/YiG28KTFdkeFXskolZqs?p=preview

Local storage is cleared at logout (which is a redirect to signin) https://github.com/sleeveup/sleeveup-app/pull/16


Build failure (unresolved dependency)

Bug Report template
Expected behavior
Success build with command sbt package
Observed behavior
<< What results have you obtained? Is there an error message? If so, please paste it in here (not all issues produce error messages) >>
While following up the tutorial, build stoped with failure.
Steps to reproduce the issue
Build fail with log with command sbt package
[error] sbt.librarymanagement.ResolveException: unresolved dependency: com.typesafe.sbteclipse#sbteclipse-plugin;4.0.0: not found
[error] unresolved dependency: com.github.mpeltonen#sbt-idea;1.6.0: not found
[error] unresolved dependency: org.netbeans.nbsbt#nbsbt-plugin;1.1.4: not found
[error] unresolved dependency: com.orrsella#sbt-sublime;1.1.1: not found
[error] 	at sbt.internal.librarymanagement.IvyActions$.resolveAndRetrieve(IvyActions.scala:332)
[error] 	at sbt.internal.librarymanagement.IvyActions$.$anonfun$updateEither$1(IvyActions.scala:208)
[error] 	at sbt.internal.librarymanagement.IvySbt$Module.$anonfun$withModule$1(Ivy.scala:239)
[error] 	at sbt.internal.librarymanagement.IvySbt.$anonfun$withIvy$1(Ivy.scala:204)
[error] 	at sbt.internal.librarymanagement.IvySbt.sbt$internal$librarymanagement$IvySbt$$action$1(Ivy.scala:70)
[error] 	at sbt.internal.librarymanagement.IvySbt$$anon$3.call(Ivy.scala:77)
[error] 	at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:95)
[error] 	at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:80)
[error] 	at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:99)
[error] 	at xsbt.boot.Using$.withResource(Using.scala:10)
[error] 	at xsbt.boot.Using$.apply(Using.scala:9)
[error] 	at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:60)
[error] 	at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:50)
[error] 	at xsbt.boot.Locks$.apply0(Locks.scala:31)
[error] 	at xsbt.boot.Locks$.apply(Locks.scala:28)
[error] 	at sbt.internal.librarymanagement.IvySbt.withDefaultLogger(Ivy.scala:77)
[error] 	at sbt.internal.librarymanagement.IvySbt.withIvy(Ivy.scala:199)
[error] 	at sbt.internal.librarymanagement.IvySbt.withIvy(Ivy.scala:196)
[error] 	at sbt.internal.librarymanagement.IvySbt$Module.withModule(Ivy.scala:238)
[error] 	at sbt.internal.librarymanagement.IvyActions$.updateEither(IvyActions.scala:193)
[error] 	at sbt.librarymanagement.ivy.IvyDependencyResolution.update(IvyDependencyResolution.scala:20)
[error] 	at sbt.librarymanagement.DependencyResolution.update(DependencyResolution.scala:56)
[error] 	at sbt.internal.LibraryManagement$.resolve$1(LibraryManagement.scala:45)
[error] 	at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$12(LibraryManagement.scala:93)
[error] 	at sbt.util.Tracked$.$anonfun$lastOutput$1(Tracked.scala:68)
[error] 	at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$19(LibraryManagement.scala:106)
[error] 	at scala.util.control.Exception$Catch.apply(Exception.scala:224)
[error] 	at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$11(LibraryManagement.scala:106)
[error] 	at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$11$adapted(LibraryManagement.scala:89)
[error] 	at sbt.util.Tracked$.$anonfun$inputChanged$1(Tracked.scala:149)
[error] 	at sbt.internal.LibraryManagement$.cachedUpdate(LibraryManagement.scala:120)
[error] 	at sbt.Classpaths$.$anonfun$updateTask$5(Defaults.scala:2519)
[error] 	at scala.Function1.$anonfun$compose$1(Function1.scala:44)
[error] 	at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:40)
[error] 	at sbt.std.Transform$$anon$4.work(System.scala:67)
[error] 	at sbt.Execute.$anonfun$submit$2(Execute.scala:269)
[error] 	at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
[error] 	at sbt.Execute.work(Execute.scala:278)
[error] 	at sbt.Execute.$anonfun$submit$1(Execute.scala:269)
[error] 	at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
[error] 	at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
[error] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[error] 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[error] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[error] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[error] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[error] 	at java.lang.Thread.run(Thread.java:745)
[error] (update) sbt.librarymanagement.ResolveException: unresolved dependency: com.typesafe.sbteclipse#sbteclipse-plugin;4.0.0: not found
[error] unresolved dependency: com.github.mpeltonen#sbt-idea;1.6.0: not found
[error] unresolved dependency: org.netbeans.nbsbt#nbsbt-plugin;1.1.4: not found
[error] unresolved dependency: com.orrsella#sbt-sublime;1.1.1: not found
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? i

Infrastructure details

Java Version: : Java 8
Scala Version: : Scala 2.12.6

Dear @djKooks
What is your Spark version ?
Best Regards,
Heitor

@hmgomes I'm testing on:
MacOS 10.13
Spark 2.3.0

Is it not supporting yet?

@djKooks yes, you will need to use Spark 2.2.
However, it should be an easy fix to upgrade it to Spark 2.3, I will go ahead and create a pull request for that as soon as I am back to the office

@hmgomes okay, thanks. But it seems there are problem loading:
com.typesafe.sbteclipse#sbteclipse-plugin;4.0.0: not found
[error] unresolved dependency: com.github.mpeltonen#sbt-idea;1.6.0: not found
[error] unresolved dependency: org.netbeans.nbsbt#nbsbt-plugin;1.1.4: not found
[error] unresolved dependency: com.orrsella#sbt-sublime;1.1.1: not found

Could you also look on this?

@djKooks I've created a pull request related to this issue.
Regarding the other issue you've just mentioned, it looks like an issue with sbt configuration.
I believe the folk in https://github.com/sbt/sbteclipse/issues/315 had the same issue and there are some workarounds (see latest replies). Please see if that works for you, if not I will try to replicate the error later and see what we can do about it.

@hmgomes okay, thanks. But it seems there are problem loading:
com.typesafe.sbteclipse#sbteclipse-plugin;4.0.0: not found
[error] unresolved dependency: com.github.mpeltonen#sbt-idea;1.6.0: not found
[error] unresolved dependency: org.netbeans.nbsbt#nbsbt-plugin;1.1.4: not found
[error] unresolved dependency: com.orrsella#sbt-sublime;1.1.1: not found

Could you also look on this?

@hmgomes thanks for help. Unfortunately, it seems not working still.
I updated sbteclipse-plugin to 5.2.4 as in link, but other 3 still not works.
If I ignore unresolved dependency:
[error] 	at java.lang.Thread.run(Thread.java:745)
[error] (update) sbt.librarymanagement.ResolveException: unresolved dependency: com.github.mpeltonen#sbt-idea;1.6.0: not found
[error] unresolved dependency: org.netbeans.nbsbt#nbsbt-plugin;1.1.4: not found
[error] unresolved dependency: com.orrsella#sbt-sublime;1.1.1: not found
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? i
[warn] Ignoring load failure: no project loaded.
[error] java.lang.RuntimeException: Session not initialized.
[error] 	at scala.sys.package$.error(package.scala:27)
[error] 	at sbt.Project$.$anonfun$getOrError$1(Project.scala:442)
[error] 	at scala.Option.getOrElse(Option.scala:121)
[error] 	at sbt.Project$.getOrError(Project.scala:442)
[error] 	at sbt.Project$.session(Project.scala:448)
[error] 	at sbt.Project$.extract(Project.scala:453)
[error] 	at sbt.BuiltinCommands$.notifyUsersAboutShell(Main.scala:928)
[error] 	at sbt.BuiltinCommands$.$anonfun$notifyUsersAboutShell$3(Main.scala:937)
[error] 	at sbt.Command$.$anonfun$command$2(Command.scala:91)
[error] 	at sbt.Command$.process(Command.scala:181)
[error] 	at sbt.MainLoop$.processCommand(MainLoop.scala:151)
[error] 	at sbt.MainLoop$.$anonfun$next$2(MainLoop.scala:139)
[error] 	at sbt.State$$anon$1.runCmd$1(State.scala:246)
[error] 	at sbt.State$$anon$1.process(State.scala:250)
[error] 	at sbt.MainLoop$.$anonfun$next$1(MainLoop.scala:139)
[error] 	at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
[error] 	at sbt.MainLoop$.next(MainLoop.scala:139)
[error] 	at sbt.MainLoop$.run(MainLoop.scala:132)
[error] 	at sbt.MainLoop$.$anonfun$runWithNewLog$1(MainLoop.scala:110)
[error] 	at sbt.io.Using.apply(Using.scala:22)
[error] 	at sbt.MainLoop$.runWithNewLog(MainLoop.scala:104)
[error] 	at sbt.MainLoop$.runAndClearLast(MainLoop.scala:59)
[error] 	at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:44)
[error] 	at sbt.MainLoop$.runLogged(MainLoop.scala:35)
[error] 	at sbt.StandardMain$.runManaged(Main.scala:138)
[error] 	at sbt.xMain.run(Main.scala:89)
[error] 	at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
[error] 	at xsbt.boot.Launch$.withContextLoader(Launch.scala:128)
[error] 	at xsbt.boot.Launch$.run(Launch.scala:109)
[error] 	at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:35)
[error] 	at xsbt.boot.Launch$.launch(Launch.scala:117)
[error] 	at xsbt.boot.Launch$.apply(Launch.scala:18)
[error] 	at xsbt.boot.Boot$.runImpl(Boot.scala:56)
[error] 	at xsbt.boot.Boot$.main(Boot.scala:18)
[error] 	at xsbt.boot.Boot.main(Boot.scala)
[error] Session not initialized.

it forced to close.
Could you find something more?

@hmgomes thanks for help. Unfortunately, it seems not working still.
I updated sbteclipse-plugin to 5.2.4 as in link, but other 3 still not works.
If I ignore unresolved dependency:
[error] 	at java.lang.Thread.run(Thread.java:745)
[error] (update) sbt.librarymanagement.ResolveException: unresolved dependency: com.github.mpeltonen#sbt-idea;1.6.0: not found
[error] unresolved dependency: org.netbeans.nbsbt#nbsbt-plugin;1.1.4: not found
[error] unresolved dependency: com.orrsella#sbt-sublime;1.1.1: not found
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? i
[warn] Ignoring load failure: no project loaded.
[error] java.lang.RuntimeException: Session not initialized.
[error] 	at scala.sys.package$.error(package.scala:27)
[error] 	at sbt.Project$.$anonfun$getOrError$1(Project.scala:442)
[error] 	at scala.Option.getOrElse(Option.scala:121)
[error] 	at sbt.Project$.getOrError(Project.scala:442)
[error] 	at sbt.Project$.session(Project.scala:448)
[error] 	at sbt.Project$.extract(Project.scala:453)
[error] 	at sbt.BuiltinCommands$.notifyUsersAboutShell(Main.scala:928)
[error] 	at sbt.BuiltinCommands$.$anonfun$notifyUsersAboutShell$3(Main.scala:937)
[error] 	at sbt.Command$.$anonfun$command$2(Command.scala:91)
[error] 	at sbt.Command$.process(Command.scala:181)
[error] 	at sbt.MainLoop$.processCommand(MainLoop.scala:151)
[error] 	at sbt.MainLoop$.$anonfun$next$2(MainLoop.scala:139)
[error] 	at sbt.State$$anon$1.runCmd$1(State.scala:246)
[error] 	at sbt.State$$anon$1.process(State.scala:250)
[error] 	at sbt.MainLoop$.$anonfun$next$1(MainLoop.scala:139)
[error] 	at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
[error] 	at sbt.MainLoop$.next(MainLoop.scala:139)
[error] 	at sbt.MainLoop$.run(MainLoop.scala:132)
[error] 	at sbt.MainLoop$.$anonfun$runWithNewLog$1(MainLoop.scala:110)
[error] 	at sbt.io.Using.apply(Using.scala:22)
[error] 	at sbt.MainLoop$.runWithNewLog(MainLoop.scala:104)
[error] 	at sbt.MainLoop$.runAndClearLast(MainLoop.scala:59)
[error] 	at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:44)
[error] 	at sbt.MainLoop$.runLogged(MainLoop.scala:35)
[error] 	at sbt.StandardMain$.runManaged(Main.scala:138)
[error] 	at sbt.xMain.run(Main.scala:89)
[error] 	at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
[error] 	at xsbt.boot.Launch$.withContextLoader(Launch.scala:128)
[error] 	at xsbt.boot.Launch$.run(Launch.scala:109)
[error] 	at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:35)
[error] 	at xsbt.boot.Launch$.launch(Launch.scala:117)
[error] 	at xsbt.boot.Launch$.apply(Launch.scala:18)
[error] 	at xsbt.boot.Boot$.runImpl(Boot.scala:56)
[error] 	at xsbt.boot.Boot$.main(Boot.scala:18)
[error] 	at xsbt.boot.Boot.main(Boot.scala)
[error] Session not initialized.

it forced to close.
Could you find something more?

Well, we are converging to a solution, it is now a runtime error :)
Let's see:

were you able to sbt package and generate the jar file for the project?
which command line triggered this error?

Cheers,
Heitor

Another thing, can you try with Scala 2.11.8?

@djKooks
Either of the Scala versions should work fine, but I was thinking of something different.  It works well in sbt 0.13.16.
I'm not sure of the reason, but it will be good to add comment about this.
Thanks for help~


"last" aggregation in Multiprocess_mode (Gauge)

Related to https://github.com/prometheus/client_python/issues/154.
I'm working with Fast API + Gunicorn, and I have several cases where I need to display a gauge metric, but only the "last" value received. Not the sum, or the maximum value (for example, the CPU usage of another device that reports that metric to my API).
Currently, the Multiprocess_mode doesn't have a way to provide the "last" value. I think that would be a valuable feature to add.
What I did locally, was add another metric with the timestamp of the last metric added by each node, and then with a custom collector select the process with the higher timestamp, and return the metric associated with that process id.
This is a workaround, a cleaner way would be to add a new multiprocess mode to Gauges ("last"), and set the timestamp to the Gauge (currently I see it's null) when that mode is used. Want to check what you think of a potential solution like this before doing a PR.
I include here the code of the "accumulate_metrics" method from my custom collector. (There are a couple of technical details, since I can't add the "last" mode, I use the "liveall" mode and I specify the metric name starts with "last"):
@staticmethod
    def _accumulate_metrics(metrics, accumulate):

        ### Custom code to get last value
        last_pid = -1
        last_timestamp = 0.0
        for index, metric in enumerate(metrics.values()):
            for s in metric.samples:
                name, labels, value, timestamp, exemplar = s
                current_pid = -1
                if name == "process_heartbeat_timestamp":
                    for l in labels:
                        if l[0] == 'pid':
                            current_pid = l[1]
                    if float(value) > float(last_timestamp):
                        last_timestamp = value
                        last_pid = int(current_pid)

        ### End custom code
        for index, metric in enumerate(metrics.values()):
            samples = defaultdict(float)
            buckets = defaultdict(lambda: defaultdict(float))
            samples_setdefault = samples.setdefault
            for s in metric.samples:
                name, labels, value, timestamp, exemplar = s

                if metric.type == 'gauge':
                    without_pid_key = (name, tuple(l for l in labels if l[0] != 'pid'))
                    ### Custom code to get last value
                    if metric._multiprocess_mode == 'liveall' and name.startswith("last"):
                        current_pid = -1
                        for l in labels:
                            if l[0] == 'pid':
                                current_pid = int(l[1])
                        current = samples_setdefault(without_pid_key, value)
                        if current_pid == last_pid:
                            samples[without_pid_key] = value
                    ### End custom code
                    elif metric._multiprocess_mode == 'min':
                        current = samples_setdefault(without_pid_key, value)
                        if value < current:
                            samples[without_pid_key] = value
                    elif metric._multiprocess_mode == 'max':
                        current = samples_setdefault(without_pid_key, value)
                        if value > current:
                            samples[without_pid_key] = value
                    elif metric._multiprocess_mode == 'livesum':
                        samples[without_pid_key] += value
                    else:  # all/liveall
                        samples[(name, labels)] = value

                elif metric.type == 'histogram':
                    # A for loop with early exit is faster than a genexpr
                    # or a listcomp that ends up building unnecessary things
                    for l in labels:
                        if l[0] == 'le':
                            bucket_value = float(l[1])
                            # _bucket
                            without_le = tuple(l for l in labels if l[0] != 'le')
                            buckets[without_le][bucket_value] += value
                            break
                    else:  # did not find the `le` key
                        # _sum/_count
                        samples[(name, labels)] += value
                else:
                    # Counter and Summary.
                    samples[(name, labels)] += value

            # Accumulate bucket values.
            if metric.type == 'histogram':
                for labels, values in buckets.items():
                    acc = 0.0
                    for bucket, value in sorted(values.items()):
                        sample_key = (
                            metric.name + '_bucket', labels + (('le', floatToGoString(bucket)),),)
                        if accumulate:
                            acc += value
                            samples[sample_key] = acc
                        else:
                            samples[sample_key] = value
                    if accumulate:
                        samples[(metric.name + '_count', labels)] = acc

            # Convert to correct sample format.
            metric.samples = [Sample(name_, dict(labels), value) for (name_, labels), value in
                              samples.items()]
        return metrics.values()

Hello, thank you for this issue, and the example code that others can use now!
I think I would be happy to accept a last aggregation for Gauges, as it does seem to have some real use cases where a custom collector is not ideal. How are you thinking of implementing this? Today I do not think we set the timestamp anywhere, so the db file may need to be modified to include a timestamp field if a last aggregation is used.

Note for any implementer, you can find how the ruby client implemented this (and some excellent context) in https://github.com/prometheus/client_ruby/pull/172. We would do something similar, and also need to disable inc/dec when using a latest aggregation.


zipl: make IPL sections defined with BLS to inherit a target field

The target field is required for IPL sections, but the ones populated from
BLS snippets did not have this field. This was only working when using BLS
snippets because IPL sections inherit the target field with "defaultauto".
But that's not the case when using a menu, for example the following zipl
configuration will fail if is used along with BLS defined IPL sections:
fail when running the zipl tool:
[defaultboot]
defaultmenu = menu1
:menu1
target = /boot
1 = linux
2 = test
default = 1
prompt = 1
timeout = 0
Because "linux" and "test" will be defined using BLS snippets and these
don't have an option to define target fields. Let's make these to always
inherit a target field, either from the [defaultboot] section or a menu
section if there's a defaultmenu defined.
Fixes: https://github.com/ibm-s390-linux/s390-tools/issues/111
Reported-by: Renaud Métrich<EMAIL_ADDRESS>Signed-off-by: Javier Martinez Canillas<EMAIL_ADDRESS>

@martinezjavier ping, what is the status of this PR? Are you going to address the last few change requests?

fyi, as there was no response since last year we've pulled the patches and adapted the requested style changes ourselves. Thanks for the contribution!


CMP border & icon

Question or Suggestion
I'm not sure why, but I can't figure out why my CMP config is not showing the border and icon on the left like in the screenshot:
https://github-production-user-asset-6210df.s3.amazonaws.com/39483124/346232697-f9dc6523-f458-48df-8837-09d5c131a5c7.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240807%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240807T205937Z&X-Amz-Expires=300&X-Amz-Signature=3c18a259fc00165e62954ec797a619d8b84d67dc36c2d87756b3823960429242&X-Amz-SignedHeaders=host&actor_id=981383&key_id=0&repo_id=734174431
This is how it shows:

I'm sure it's either something I did on my config or an option I need to enable on Cyberdream.
Thanks!

Never mind, I took a look at your dot files and was able to get it like in the screebshot:

Any ideas on how to get rid of these warnings?:

Awesome theme BTW, thanks for sharing!

Thanks @gldtn, glad you like it!
I've been meaning to raise a PR in the cmp repo to fix this because the warnings bother me too. In the meantime, you can silence them by adding the following lines to your config:
        cmp.setup({
            window = {
                completion = {
                    ---@diagnostic disable: assign-type-mismatch
                    border = {
                        { "󱐋", "WarningMsg" },
                        { "─", "Comment" },
                        { "╮", "Comment" },
                        { "│", "Comment" },
                        { "╯", "Comment" },
                        { "─", "Comment" },
                        { "╰", "Comment" },
                        { "│", "Comment" },
                    },
                    scrollbar = false,
                },
                documentation = {
                    border = {
                        { "", "DiagnosticHint" },
                        { "─", "Comment" },
                        { "╮", "Comment" },
                        { "│", "Comment" },
                        { "╯", "Comment" },
                        { "─", "Comment" },
                        { "╰", "Comment" },
                        { "│", "Comment" },
                    },
                    ---@diagnostic enable: assign-type-mismatch
                    scrollbar = false,
                },
            },

Did not know I could disable diagnostic that way. Thank you for replying so quickly.


net/frr: add outbound rules

see https://github.com/opnsense/plugins/issues/346#issuecomment-457590122
also reduces the size of the multicast network to the /24, in which OSPF operates
@cultcom here are your rules
@fichtner this are the rules from @cultcom, looks like it is multiwan related.

After digging arround a bit more this seems to be the missing rule:
                  $fw->registerFilterRule(
                    1,
                    array(
                        'ipprotocol'     => 'inet',
                        'protocol'       => 'ospf',
                        'statetype'      => 'keep',
                        'label'          => 'Pass OSPF Multicast (autogenerated)',
                        'from'           => '(self)',
                        'to'             => '<IP_ADDRESS>/24',
                        'direction'      => 'out',
                        'type'           => 'pass',
                        'disablereplyto' => 1,
                        'quick'          => true
                    ),
                    null
                );

It seems the default outgoing rule:
pass out log route-to (vmx0_vlan504 a.b.c.d) inet from a.b.c.e to ! (vmx0_vlan504:network) flags S/SA keep state allow-opts label "let out anything from firewall host itself"

does not allow the firewall to send to multicast addresses.

This rule on the other hand seems useless as the firewall does not use a multicast address as source.
                $fw->registerFilterRule(
                    1,
                    array(
                        'ipprotocol'     => 'inet',
                        'protocol'       => 'ospf',
                        'statetype'      => 'keep',
                        'label'          => 'Pass OSPF (autogenerated)',
                        'from'           => '<IP_ADDRESS>/24',
                        'to'             => $network->ipaddr . '/' . $network->netmask,
                        'direction'      => 'out',
                        'type'           => 'pass',
                        'disablereplyto' => 1,
                        'quick'          => true
                    ),
                    null
                );

Did you read my comments under the PR: https://github.com/opnsense/plugins/pull/1149


various UI fixes

Add a border-b border-structure-100 to AppLayout titles when they exist.
Fix scrolling of Chat (would have a scrolling bar always)


Symmetric encryption: PresenceMessage.fromEncoded and Message.fromEncoded

PR https://github.com/ably/ably-flutter/pull/192 does not yet include decryption of messages which are passed to PresenceMessage.fromEncoded and Message.fromEncoded, as per TP4 and TM3. This is intended for when messages are persisted to disk, or received outside of the Ably clients.

Internal slack discussion on this issue: https://ably-real-time.slack.com/archives/C0178QGC093/p1645099695085259

A couple of additional notes that we’ve collected together with @ikbalkaya :

Flutter SDK does not encrypt or decrypt messages - they’re encrypted and decrypted on native platform side, so it’s not really possible to save or do anything with encrypted message on Flutter side. The only use for Message.fromEncrypted seems to be a case, where message is provided to Flutter application from source other that our SDK, f.e. REST API. If message comes from our SDK, it’s automatically decrypted before it reaches Flutter SDK
Since the whole encryption is done on native platforms, the implementation shouldn’t probably be done on Flutter side, but rather it should be a proxy to native methods
Encryption implementation in sample app doesn't seem to work - see #334

If we are going to implement this, even if the implementation is delegated away to the platform native layer (most appropriate), then we should test with: https://github.com/ably/ably-common/tree/main/test-resources

I'll admit that I'm struggling a little bit to work out what the original use case for these methods was

Imagine consuming messages via some mechanism that doesn't involve an Ably library - for example taking them from a Kinesis queue, or being passed a message on invocation of a lambda. You need to be able to decode those messages to get the original payload.

I've discussed this with @maratal and ably-cocoa doesn't have a public implementation of Message.fromEncoded so for now there's nothing that I can use to bridge from Dart to iOS SDK

I've discussed this with @maratal and ably-cocoa doesn't have a public implementation of Message.fromEncoded so for now there's nothing that I can use to bridge from Dart to iOS SDK

https://github.com/ably/ably-cocoa/issues/1305 @ikurek

https://github.com/ably/ably-cocoa/pull/1307


Remove package-lock.json

Description
Remove package-lock.json, due to this warning:
package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have used ESLint & Prettier to follow the code style of this project.
[x] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Coverage remained the same at 93.888% when pulling 7287fa4d1e5ba625c9555299932e079035a8b80d on feature/remove-package-lock into 34357e2ab1c7b2e17e007255eb866540854eb24c on master.


fix restore compaction/run_status api can show be's overall compaction status and refactor code

Proposed changes
Issue: http api compaction/run_status without parameter does not work now, like below：
curl -X GET http://localhost:8040/api/compaction/run_status
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0{
    "status": "INTERNAL_ERROR",
    "msg": "tablet id and table id can not be empty at the same time!"

while in https://doris.apache.org/zh-CN/docs/admin-manual/be/compaction-status

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall

run buildall

run buildall

run p0

run p0

run p0

run buildall

Please add a regression tests and the document.

Regression test added. And document is added in this pr's description.Cloud you pls review again?


4.3.1 - Use of collapse breaks scrollSpy

Issue description
When using a simultaneous implementation of multiple collapse functions and scrollSpy for a continous scroll through a nav bar, the use of any collapse will unset/break the scrollSpy, and futhermore cannot seem to be reset or 'refreshed'
Steps to reproduce the issue
http://jsfiddle.net/lopac1029/9ork8Lts/embedded/

Scroll to or click to the "Classes" section
Click toggle any of the "COLLAPSEABLE [class] Archetypes"
Scroll in any direction

What's the expected result?

The scrollSpy should not change from the current active sidebar nav item until it reaches the next "chapter" element as defined in the scrollSpy init configuration

What's the actual result?

the scrollSpy becomes completely disconnected from its view location and does not reset

Additional details / screenshot

binding a var $spy = $('#view').scrollspy('refresh') to the collapse and nav button clicks does nothing to reset the spy
Operating system: macOS
Browser: Chrome, Firefox, Safari, and likely others

Hi @yarhouse,
Thanks for reporting that behavior !
When the collapse is hidden or shown it change the window's height that's why our Scrollspy is totally lost.
That's definetely an improvement we should be able to handle that

I am having a similar issue that I believe could be related to this related issue :
Issue description
When a nav-link is configured to collapse, ScrollSpy will no longer apply the 'active' tag to the element.
Steps to reproduce the issue

Set Screen width to >= 779px (NAV compressed to show menu button)
Navigate to https://5f021d875c65ec0007e66c61--dev-cynik-org.netlify.app/ - NOTE: This is the preview for the build I created to demonstrate the problem on my own site.
Click About link in NAV bar at the top - observe that the 'active' tag is not set
Click DuVee Digital link in NAV bar at top - observe that the 'active' tag is set and the background of the link turns blue
Scroll the screen back to the top - observe that as the 'About' section enters the viewport, the 'active' tag is removed from the 'DuVee Digital' link, but not applied to the 'About' link.
Scroll up and down the screen multiple times using scrollbar, mouse, and links at top and note the behavior persists.
Set Screen width to < 779px (NAV uncompressed, links are shown, menu button hidden)
Open the Menu and scroll the screen up and down while leaving the menu open - observe that the active tag is applied to the About nav-link and the background changes to blue - this is expected behavior when menu is uncompressed.
Scroll the screen until the About nav-link is active then change the screen width back to >= 779px to uncompress the nav - observe the active tag still exists on the About nav-link.
Scroll to the bottom of the screen and back to the top - observe the active link change to DuVee Digital, but as you scroll back to the top, the 'active' flag does not get set on the About nav-link.
Change the screen width back to < 779px to compress the nav.
Click the menu button, select About and observe the menu collapses and scrolls to the About section - this is expected when menu is compressed.
Click the menu button, select DuVee Digital and observe the menu remains uncollapsed while the screen scrolls to the DuVee Digital section.
Change the screen width back to >= 779px to uncompress the nav and notice that the click state of the DuVee Digital persists with a white background.
Navigate up and down the screen scrolling and observe how the active state never returns to the About nav-link after it leaves the viewport.
Click back and forth between About and DuVee Digital links and observe how when you click About, DuVee Digital returns to normal, but when you click back on DuVee Digital, it returns to the Compressed click state noted in #14 above.

What's the expected result?
ScrollSpy sets the 'Active' state on the Nav-Links regardless of of screen width being above or below the threshold to toggle the nav bar between showing links or a menu with links at the same time that the Nav-Links are configured to collapse the menu when clicked.
What's the actual result?
Noted in Steps to Produce above
Operating system: macOS Catalina
Browser: Chrome and likely others

Is this something we want to support @twbs/js-review? Feel like if someone is collapsing content, and scrollspy is in use, they would need to trigger an update to scrollspy to refresh the scroll positions. Is this something we need to support, or something others are responsible for entirely?

Is this something we want to support @twbs/js-review? Feel like if someone is collapsing content, and scrollspy is in use, they would need to trigger an update to scrollspy to refresh the scroll positions. Is this something we need to support, or something others are responsible for entirely?

Ideally, we should handle this case too. It's an edge case but something that we should handle.

Ideally, we should handle this case too. It's an edge case but something that we should handle.