[Perf] Refactor tests.yml into one file per package per language

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow


":ref: access" lacks the actual link

On user_guide/apps/general.rst, ":ref: access" lacks the actual link to access:
https://github.com/cryptpad/documentation/blob/4d3729392c768a7a069b5d9eeca34d1c7b9d6d3f/user_guide/apps/general.rst?plain=1#L31

This is an RST reference links that points to the Access anchor

Shouldn't it not :ref:access <access>, in the same way as :ref:password <passwords> on the same line?

Ah, I understand the issue is that :ref:access should not be something like :ref:access_localized_in_another_language because there is not actually anchor named access_localized_in_another_language.
So when you localize, you always need to write like this: :ref:access_localized_in_another_language <access>
Otherwise, the anchor link would point to #access_localized_in_another_language, which does not exist.

Here is a link to the page for localizing it on Weblate: https://weblate.cryptpad.fr/translate/user-guide/application-general/ja/?checksum=278d2e66caf467aa&sort_by=-priority,position

I believe you should just leave the :ref: link as is. As long as you translate the first heading after the anchor, the link text should be localized

I am not quite sure if this is the case, as the anchor link text does not seem to be localized, for example, here: https://docs.cryptpad.org/ja/user_guide/user_account.html#guest-user

I think in the example you showed it does not work because no guest-user anchor is defined
If you check https://docs.cryptpad.org/ja/FAQ.html#rich-text-document-import-export you can see that although the text isn't translated yet, the ref link :ref:`app_rich_text`  correctly produces a link where the text is "リッチテキスト"  which is the first heading after the anchor definition

That totally makes sense! Thanks for the follow-up :smile:


Consider vPrefix when retrieving the latest semver tag.

Hi @Songmu.
I am currently operating a repository with a mix of "semver with v prefix" and "calver without v prefix".
$ gh release list | cut -f 1
v1.1.2
v1.1.1
2023.05.1
2023.05.0
v1.1.0
v1.0.1
2023.03.1
2023.03.0
v1.0.0
2023.02.0
v0.1.0

At this time, tagpr may misidentify calver as semver.
If tagpr could determine the vPrefix setting more strictly, it would avoid the misidentification, at least in my environment.
I hope you will consider this change.

Thanks for the quick merge!

@Songmu
Thank you. It works.


array-type rule requires array in places that are less readable

Bug Report

TSLint version: HEAD

TypeScript code being linted
Array<{length: number, deferred: Deferred<any[]>}>
Array<Document|string>
Array<(event: Event) => void>
TableRow<Array<string|number|null>>

with tslint.json configuration:
(include if relevant)
{
  "rules": {
    "array-type": [true, "array"]
  }
}

Actual behavior
Replaces with
{length: number, deferred: Deferred<any[]>}[]
(Document|string)[]
((event: Event) => void)[]
TableRow<(string|number|null)[]>

Expected behavior
These are more readable in the original form with Array<T>.
@mprobst explains:
precisely, if your type in the grammar (https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md#a1-types) is not just a PredefinedType (number, string, etc) or a TypeReference (some.namepsace.MyFunkyType), then you should be allowed to use Array.

Sounds like you'd like to follow the same guidelines that @danvk mentioned here:

Not necessarily something that needs to be implemented in this PR, but our style guide is a little more nuanced than either of these options. For simple (non-generic) types we use T[]. If the type becomes more complex, we switch to Array<> for clarity, e.g. Array<{[key: string]: T}>.

Yes, exactly, I read that comment on the original issue but didn't think deeply enough. @ScottSWu do you want to do the "array-type": [true, "array-for-simple-types"] or shall I?


unset is not initial

unset should be treated as inherit for inherited properties, and if it is not, this is treated as initial.
http://www.w3.org/TR/css-cascade-3/#inherit-initial
Now plugin does all: initial

@maximkoretskiy awesome, at least we can change unset to initial. The question is  only with plugin name. postcss-all-property?

@iamvdo can you explain different between unset and initial. I miss it again :(

@ai @iamvdo  unset sets to initial value only uninherited properties.
I hope postcss-all-property will be  more universal.

all: initial reverts all properties to their initial value as defined in spec
all: unset reverts all properties to their inherited value (if property inherits) or to their initial value (if property does not inherit)

But it's not 100% sure, as listed here: https://github.com/iamvdo/pleeease/issues/10

@iamvdo you mean all: unset reverts to default browsers values. So all: unset will have different values in different browsers?
It this case maybe there is no set to support all: unset. I can’t find good user case for it.

So all: unset will have different values in different browsers?

No, I've written a blog post in French some times ago with some code sample, maybe you can use Google translate to get a little help: http://iamvdo.me/blog/la-cascade-css-avancee-all-initial-et-unset

So all: unset will have different values in different browsers?

I mean, not in different browsers but in different situations, for a bunch of properties, yes.

Renamed project and property value.
Thinking on implementtation all: unset using inherit keyword for some properties.
inherit is supported by all browsers startting from ie8, so fallback will work fine.

@ai @iamvdo
implemented new varian of all: unset here
Does it work correctly? fixture


Directory list_dir file order is alphabetical on Windows but something else in Mac OS

Godot version
3.4.stable
System information
Windows 11, Mac OS
Issue description
I'd written a plugin that created an animation based on a list of files in a directory. On Windows it worked fine, but on Mac it was janky with the frames out of order.
It's fixable by putting the files in an array and sorting before using them, but this behavior - that order may not be maintained depending on platform - is not documented anywhere.
The expectation is that listing a directory's files would match the way it's laid out in the godot filesystem, not however Finder feels like it.
Steps to reproduce
Have a directory with some amount of files where the order should be obvious, I.E. 0001.png, 0002.png, 0003.png, etc.
func _ready() -> void:
	var directory := Directory.new()
	directory.open(the_path_to_textures)
	directory.list_dir_begin(true)
	var next := dir.get_next()
	while not next.empty():
		if not dir.current_is_dir():
			print(next)
        next = dir.get_next()

On windows, it should be in alphabetical order. On Mac, it may be date modified? Or some other.
Minimal reproduction project
No response

It is quite common that the order of such results is not defined. For example, in .NET Microsoft notes that the order is not guaranteed (see https://docs.microsoft.com/en-us/dotnet/api/system.io.directoryinfo.getfiles?view=net-6.0). The fact that the result is undefined in this way should of course be written in the manual 🙂
Another example is the Go language. There an order is guaranteed for the function fs.WalkDir (see https://pkg.go.dev/io/fs#WalkDir) and at the same time the disadvantages are pointed out: a directory must always be completely loaded into memory beforehand. This is obvious, because the result can only be sorted in this way.
In my opinion, the current behavior of Godot is ideal. It should just be documented. Who needs a certain order, should sort the result himself. So the solution is universally applicable. Because not all users need the automatic sorting and these users would be punished then with a worse performance (in case of very large directories).

Yeah, documenting it is fine.

Note that the new methods added in https://github.com/godotengine/godot/pull/40547 might provide sorted listings, I didn't check (of they don't, they should be fixed to sort).


Tensorflow version

What version of tensorflow should I use?
Currently I have installed 2.4.1 and first step freezes, nothing happens.
GPU-Z shows that gpu ram is filled but power consumption is 20%.

As long as it's TF >=2.0 it should be fine.
If the VRAM is filled, then you should reduce the batch size of train on a GPU with more VRAM.


Proposal: Clean up leftover checkpoint tmp directories during startup

Proposal
Hey team! 👋  I'm here to ask whether you think it's a good idea to make Prometheus clean up leftover checkpoint.*.tmp directories during startup.
We're currently defering their cleanup in cases where Checkpoint() may exit early due to an error, but this block won't get called if Prometheus OOMs while reading a segment.
While looking at the way we handle block tmp dirs, it has already been suggested in a comment by @bwplotka.
https://github.com/prometheus/prometheus/blob/0df3489275ed4357b12d98e737290992e19915ce/tsdb/db.go#L54-L58
Use case. Why is this important?
This would be useful in preventing users' disk usage from blowing up and also enable us to be a good citizen in a shared system by cleaning up useless leftover data.

Yes. Cleaning them up on startup makes sense, there wont be any problems.


MudSignaturePad - Sync Value to be empty when the Clear button is fired

When clicking the Clear button on the MudSignaturePad the Value param is never updated/emptied even though the canvas appears blank, meaning that if you draw, then clear the canvas, then save/download, instead of a blank canvas you will get the state before the clear.
This update just empties the Value param and fires the ValueChanged event to ensure anything hooked in will be synched too

Thanks 🥇


Antidrag/bank equipment inventory

Expand anti-drag plugin to work with the bank equipment inventory interface and the regular equipment inventory interface.
Closes #17164
From my testing, this works as expected. Someone left a comment about the TOA resupply bag but that seems a) different ticket and b) would require me to actually do a TOA run to test so I did not include that in this PR.

My clicks are so bad 😭 any update on this?


[LI-HOTFIX] Migrate bintray publish to JFrog

TICKET = N/A
LI_DESCRIPTION = Bintray is sunsetting, and the publishing should be migrated to https://linkedin.jfrog.io/

Manually tested with running client:uploadArchives on my laptop.
See https://linkedin.jfrog.io/artifactory/kafka/

Before checking in, the secret JFROG_KEY should also be created by the admin.
And do we want to use a headless account for this?

@jonlee2 do you know someone who has the access to add the secrets to our repo?


Why react and all dependencies are added inside devDependencies section ?

How npm works , react or redux these kinda stuffs should go to dependencies section inside package.json file . But I see those inside devDependencies section.
Can anyone share the reason ?
https://github.com/aspnet/templating/blob/95f2b8d375256ca7057cbe88dcbfff644697f183/src/Microsoft.DotNet.Web.Spa.ProjectTemplates/content/ReactRedux-CSharp/package.json#L29
Packages like webpack or webpack-hot-middleware should be available inside devDependencies section.
I would also like to contribute wherever possible...
Thanks!

@SteveSandersonMS - can you take a look?

They are all correctly in devDependencies because they are development-time-only dependencies. They are not required when the application is built for production, because the build process produces entirely self-contained bundles. There is no need to have node_modules on your server in production.


allow multiple param values with same key

This adds support for query parameter keys with multiple values.
This also makes the iteration of the query parameters deterministic, so that we don't get spurious test failures in TestMultipleQueryValues.

Rebased against master owing to the other PRs being pulled in.

Fix pushed.


Maximize button problem

When double-clicking on the title bar, the maximize button UI does not change.
When click the maximize button, the UI changes.
However, even if maximize is released by dragging the title bar, the maximized UI state is not restored to its original state.

Ao clicar duas vezes na barra de título, a interface do usuário do botão maximizar não muda. Ao clicar no botão maximizar, a interface do usuário muda. No entanto, mesmo que maximizar seja liberado arrastando a barra de título, o estado maximizado da interface do usuário não será restaurado ao seu estado original.

Hello @jinnyum could you tell me on which platform the error is happening.
|| The actions, maximize by double clicking on the title bar is working correctly in windows 11.

Ao clicar duas vezes na barra de título, a interface do usuário do botão maximizar não muda. Ao clicar no botão maximizar, a interface do usuário muda. No entanto, mesmo que maximizar seja liberado arrastando a barra de título, o estado maximizado da interface do usuário não será restaurado ao seu estado original.

Hello @jinnyum could you tell me on which platform the error is happening. || The actions, maximize by double clicking on the title bar is working correctly in windows 11.

I am using windows 10 ( 21H2 )

@jinnyum Are you still having this issue? It happens for me too.

@jinnyum I got it fixed using polling. I'm continuously checking for changes of the isMaximized variable, and storing the last value. So I continuously check if the old value doesn't match the current one, and if it doesn't, I fire an event and set the old value to the new one. I'm currently using Timer.periodic with a 500ms delay, and it seems to work just fine.

@jinnyum I got it fixed using polling. I'm continuously checking for changes of the isMaximized variable, and storing the last value. So I continuously check if the old value doesn't match the current one, and if it doesn't, I fire an event and set the old value to the new one. I'm currently using Timer.periodic with a 500ms delay, and it seems to work just fine.

This is not a good solution.


⚠ Bofrost.be has degraded performance

In 0601a6b, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1662 ms

Resolved: Bofrost.be performance has improved in 99ecaab after 7 minutes.


Redirect to post page after success login if necessary

Fixes #763

Failure not related: https://travis-ci.org/symfony/demo/jobs/340328971#L616-L617

Nice feature ... and easy to implement. Thanks Yonel!


Refactoring things to move forward

Propably gonna continue with the remaining Endpoints on Tuesday (May 23rd).
Moved some things from Endpoint to ApiRequest bc I think they belong there in terms of scope, but it doesn't make too much different.
Rate-limiter doesn't seem to be used in the rework so far, only a new RateInfo that notifies when the limits threshold is crossed but not actually using the previous rate-limiter to schedule the requests for automatic rate-limit handling.
Compatibility temporarily disabled, we need to decide if we want to add it or if we just screw it since RIOT Api v3 is such a big change in some aspects anyways that providing any form of backwards compatibility would be a waste of time. It would be possible to match some of the old method-calls to the new ones, but  imo the vast majority needs to be adapted by the developers anyways bc of changed responses from the API.
Request-caching wasn't implemented at all yet, so also disabled for now.
@EldoranDev @claudiowilson Would be great if you get the time to review the changes, but if there is no reaction I will just continue as I see fit to get it done this week.
Feel free to ask if things are unclear and Im open to join a voice con if you'd like to discuss things more comfortable

Sorry for the long silence, wrote my finals last week and went on vacation for a week after. When everything on the rework is finished in our eyes I'll try to ping claudio again and wait for his approval to merge.

Following things are still open and I'd like comments on:

add Tournament / Tournament-stub Endpoints
discuss structuring and naming of utility functionality. Currently all public utility is just thrown onto LeagueUtil.js / inherited by LeagueJS, more scope specific distribution might be a good thing.
parameter checking (EndpointUtil) possibly needs a refactoring so endpoint methods return rejected promises instead of just throwing exceptions, which might break code that does not wrap it into Promises before calling them.

I must say, feel pretty abandoned on trying to move this project forward.
Pretty much making it my own currently due to sparse feedback and no discussion.
The complete abscence of communication from @claudiowilson also just buffles me, facing an API change that will break the currently published project for everyone using it.

To clarify that last coment: I just want to know where we stand here and in terms of project-maintenance and what's the plan here in terms of collaboration besides maybe getting it merged into the master.

Hey. sorry for my lack of communication in the last 3 weeks also, I am currently busy recovering from my finals, and get back into my day job.
I totally agree with you, @claudiowilson is realy quiet about his project. I can also not tell about his plans about the project or your and my work. If we tested if enough I could merge it into master (not shure about npm) without feedback of him.
If he stays quiet there is also the possibility of forking the project continiue work under a different name.

I am testing the rework within a small project of mine that is in production beta and added a pretty high number of unit-tests.
Not covering all cases, but covering the most important cases and API returns and the important internal methods worth testing (but still some rather important tests for rate-limiting and automated retries are missing, see https://github.com/claudiowilson/LeagueJS/pull/65#issuecomment-304507039)

Sorry, for the absence.
I'm all for merging this in, provided documentation is fully reworked and this is a major version bump (which it seems to be). I'll review the code in the coming week specifically looking at what you want information on.

Thanks @claudiowilson, when we agreed on the final syntax etc. I will finish the Readme, but help is always welcome.
Regarding the npm package i was wondering why it's "leagueapi" on there but "leaguejs" as the repo and library name. Still keeps confusing me. Any particular reason for this? Otherwise could we talk about unifying the naming on npm and the repo when publishing 1.0.0 ?

@Colorfulstan yeah, I (was) actually the owner of both names. The reason is because there was some bug on npm that was not allowing me to publish to leaguejs so I published as leagueapi :/

Since this is already a breaking change, can't we just return rejected promises in EndpointUtil without worrying about calling code?

@claudiowilson The last comment does not have lines attached, what are you referring to?

summary for the last commits:
Util functionalities are now seperated into thematic Util classes accessible through the /util barrel or
LeagueJS.util
All methods within Util classes are static and should be pure.
config now can be generated internally with custom options by using
new Config(overrides)
See LeagueJS
RateLimiter got a wrapper to instantiate regional rate-limiters for both limits.

@claudiowilson @EldoranDev Can I get some oppinions on the Utility Classes?
I just split them up thematically (completely static/pure) and expose them through LeagueJs.util atm.
There might be better options, but I can't think about that too much anymore by now (need to get started migrating my big project now).
Im also thinking about adding 500 + 404 (at least for the Match endpoint) to the automatic request repetition, since they come up more often atm, but I think Ill wait with that until the old API is gone, which might or might not improve that situation by proxy somehow.

@Colorfulstan that approach works fine I think, it seams reasonable to me.
How do you think we should go about merging this? Can we take the migration of your big project as indication of mergability?

@claudiowilson I added a decent test-coverage for what I reimplemented so I'm confident it's usable.
My Projects use the most common endpoints I think so it got kind of beta tested.
If you could setup the unit-tests to run from travis as done with the previous version that would be very helpful.
Also can you publish it to npm under a different name though to get that consistent naming going on? There is no package called leaguejs anymore and upgrading from 0.* will need big changes anyways since the whole library-API has changed.
Still to do:

Readme needs to be updated (I might get that done end of next week)
Ill be adding retry on 500 from Riot too, seems to be the new 429 ;)

@claudiowilson Please check if the readme + unit-tests are sufficiant as documentation, I'm not sure when I will get back onto it.
Feature-wise it is ready for release imo, rate-limiter rework #68 and per-method caching #69 are too big to cramp them in quickly now.
What's your take on publishing it under the "right" name on npm? (leaguejs 1.0.0)

due to the long response times and imo missing engagement I published my fork to npm myself as "leaguejs".
If you guys still want to maintain we can switch ownerships of the repo/package but I want to get rid of the git repo url in my package.json s.

No, I'm not able to maintain it as I don't even work with node nowadays. I'd much rather just link to it from this repo considering it's not even backwards compatible and say that this is unmaintained

alright.
Ill see how my fork will develop in terms of public interest and my own investment over time.
Might need to get Ownership / Maintainer status on this repo somewhen to be able to use the issues effectively, since there can't be issues opened on a fork apparently.

Or Ill just move it to another repo somewhen, not urgent atm

as you are currently the host of the NPM Package and manage the fork that creates it i think we should move on to your Repo or move the Repo into a Team repo leaguejs/leaguejs but i think using your branch is fine.
I am currently in the last steps of finishing my final exams for university after that I'll be back for contributions code reviews and opinions.


python311Packages.approvaltests: 10.0.0 -> 10.1.0

Description of changes
Diff: https://github.com/approvals/ApprovalTests.Python/compare/refs/tags/v10.0.0...v10.1.0
Changelog: https://github.com/approvals/ApprovalTests.Python/releases/tag/v10.1.0

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 270313 at 162c41e8 run on x86_64-linux 1

8 packages built successfully:

python310Packages.approval-utilities
python310Packages.approvaltests
python310Packages.robotframework-selenium2library
python310Packages.robotframework-seleniumlibrary
python311Packages.approval-utilities
python311Packages.approvaltests
python311Packages.robotframework-selenium2library
python311Packages.robotframework-seleniumlibrary


Invalid QR Code

I am facing strange problem ,if I try to scan qr code on android or iOS ,I get error invalid wireguard configuration.Can you help how to fix they problem?If I scan the code from wireguard_ui webpage it works fine ,if I download it and scan it it is not working.I tried to take screenshot of the code as well but still same problem.Can someone guide what is wrong?

I don't quite get it. Do you mean it didn't work when you scanned the QR code that was displayed on the mobile phone, but it worked for the ones displayed on the PC?
Try to download file config file and compare them (working v.s not working client) to see if there is any difference in the format.

Thanks for the prompt update.problem is fixed ,it was due to a setting
Forward Mark 0xca6c
before the value was empty and it was showing
FwMark =
in the conf file, after setting the value to 0xca6c ,the problem is gone.

Thanks for reporting. I made a PR to address the issue.


CUDAException when running scene file

I build SPlisHSPlasH with Use GPU neighborhood search" ON. I tried to run an example scene file but I get an error with 'CUDAException'

Output directory: /home/jason/splisplash/bin/output/CoilingModel_Weiler2018
Load scene file: /home/jason/splisplash/data/Scenes/CoilingModel_Weiler2018.json
Initialize static boundary simulation
Initialize fluid particles
Number of fluid particles: 956
OpenGL version 4.6
Using GLEW 1.12.0
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 750 Ti/PCIe/SSE2
Version: 4.6.0 NVIDIA 455.23.05
terminate called after throwing an instance of 'CUDAException'
what():  no kernel image is available for execution on the device
Aborted (core dumped)

When I run make I get the following warning but no error

Cloning into 'Ext_GenericParameters'...
Cloning into 'Ext_Discregrid'...
-- cuNSearch::Real = float
-- Configuring done
CMake Warning (dev) in CMakeLists.txt:
Policy CMP0104 is not set: CMAKE_CUDA_ARCHITECTURES now detected for NVCC,
empty CUDA_ARCHITECTURES not allowed.  Run "cmake --help-policy CMP0104"
for policy details.  Use the cmake_policy command to set the policy and
suppress this warning.
CUDA_ARCHITECTURES is empty for target "cuNSearch".
This warning is for project developers.  Use -Wno-dev to suppress it.
-- Generating done
-- Build files have been written to: /home/jason/splisplash/extern/cuNSearch/src/Ext_NeighborhoodSearch-build

Hm, this is hard to tell. Which Cuda version did you install?

The issue is probably cause by CUDA 11.1. No issue after I switch to CUDA 9.0.


Better verbosity with named function expressions

In order to find a bit easier where a possible failure occurs, give a name to each function, hence showing up with it in the stack trace, as oppose to being anonymous

Seems that there is one test failing, which also happens in master.
The argument list for the minified template is expected to have a single item, while it has more than that.

Never mind.


Update OWNERS

I have no business still being in the owners file any more

Fiiiiiiiiine. We can let you escape.
/lgtm
/approve


[react-scripts] Revert changes from 5.0.5

I rolled back the client-preset changes in our repos, in favor of putting back something more similar to our previous behavior.
We therefore no longer need the client-preset babel plugin for our builds, so let's clean up the fork by reverting the change here.

Current dependencies on/for this PR:

main

PR #9   👈

This comment was auto-generated by Graphite.


problem install hyperion

i'm with this problem when i try install hyperion, why?
Thanks!!
This script will install/update Hyperion Ambient Light
Created by brindosch - hyperion-project.org - the official Hyperion source.

---> Stop Hyperion, if necessary
---> Install/Update Hyperion dependencies (This may take a while)
---> Downloading the appropriate Hyperion release
2018-02-14 03:39:18 URL:https://sourceforge.net/ [652/652] -> "-" [1]
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
chmod: cannot access ‘/usr/share/hyperion/bin’: No such file or directory
---> Installing systemd script
cp: cannot stat ‘/usr/share/hyperion/services/hyperion.systemd.sh’: No such file or directory
Failed to execute operation: No such file or directory
rm: cannot remove ‘/usr/share/hyperion/services’: No such file or directory
---> Starting Hyperion
Failed to start hyperion.service: Unit hyperion.service failed to load: No such file or directory.

Hyperion Installation/Update finished!
Please download the latest HyperCon version to benefit from new features!
To create a config, follow the HyperCon Guide at our Wiki (EN/DE)!
Wiki: wiki.hyperion-project.org Webpage: www.hyperion-project.org

Same problem here seems unable to download from sourceforge.net

2018-02-14 03:39:18 URL:https://sourceforge.net/ [652/652] -> "-" [1]
gzip: stdin: not in gzip format

is there an eta on a fix

Ping @brindosch

i have the same problem. Any ideas how to fix it?

Wait until sourcefourge is up again

Op 3 mrt. 2018 om 18:23 heeft Raijeru<EMAIL_ADDRESS>het volgende geschreven:
i have the same problem. Any ideas how to fix it?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

The sourceforge.net website is temporarily in static offline mode.
Only a very limited set of project pages are available until the main website returns to service.


Question: How can I migrate & seed using moloquent?

I was looking into the Tests folder how can I seed properly a DB but cannot make it work. I get some errors
Trying too use this as a base:
https://github.com/jenssegers/laravel-mongodb/blob/289ec4c5bb52bcf595dd74a97941bbf6968d1952/tests/seeds/UserTableSeeder.php
is there any documentation about how to migrate and seed?

Nevermind I found how seeders works and did this:
ActionsCollectionSeeder.php
<?php

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;

class ActionsCollectionSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        $data = [
            'name' => 'lorem',
            'display_name' => 'lorem',
            'description' => 'Clorem ipsum.',
            'find_element' => null,
            'app_message' => null
        ];
         App\Action::create($data);

         $data = [
             'name' => 'psum',
             'display_name' => 'ipsum',
             'description' => 'bla bla',
             'text_input' => 'text to put in the field',
             'find_element' => null,
             'app_message' => null
         ];
          App\Action::create($data);
      }
}

My model: Action.php
<?php

namespace App;

use Moloquent;

class Action extends Moloquent
{
    /**
     * The name of the database connection to use.
     *
     * @var string
     */
    protected $connection = 'mongodb';
    /**
     * Fields that will be able to mass assign.
     *
     * @var array
     */
    protected $fillable = ['_id','name'];

}


Speed-up Contextual Compression by using parallel async for-of loop

Speed-up Contextual Compression by using parallel async for-of loop

Thanks!


Fixed preventing from real actions (closes #591)

\cc @AlexanderMoskovkin, @AndreyBelym

we need a simple regression test for this

I'm confirming, that it fixes problem ins ASP test, thanks.

FPR

lgtm

Okay, we have solved my troubles with the ASP test and Saucelabs by just rebooting my machine. LGTM then.

\cc @VasilyStrelyaev

\r-


[RC] Migrated UI items for iTwinJS 4.x upgrade for Report Config widget

Upgraded CSS variables and replaced deprecated packages/components. Matched UI styling based on G&M widget.

Why was pnpm-lock removed?

Why was pnpm-lock removed?

I think I mistook it for the one from the cospace when I tried to mess around to figure out the rush errors before pushing. Let me try committing it again.

Can you give the class rcw-horizontal-tile-container height into a min-height? To keep the sizing consistent even if there is no description.

Can you make this copy icon not borderless? It doesn't look good here anymore.

@aruniverse


Voxa 2.1.5

More documentation
Random views
Gitter  instead of IRC
Multiple directives support
Better error messages
Fixes for the audio podcast sample by @mathmass

Coverage increased (+0.6%) to 98.352% when pulling e15c004a0c8b33f482a8a37950241ff7125ce291 on dev into 5ece285bfc4009244db2b91d0a69dfa7f2830fe2 on master.

Coverage increased (+0.6%) to 98.355% when pulling a8e006f15ceb320fd0c9d1cefffdc21519f58bcd on dev into 5ece285bfc4009244db2b91d0a69dfa7f2830fe2 on master.


Feature Request: Allow users to specify an on click entity to open

Is your feature request related to a problem? Please describe.
I use the sankey chart for monitoring the current energy consumption of my home.
Often I find that I forgot to turn off a device behind a measuring socket with an built-in relay.
Currently I turn the device off by going to related, finding the relay entity and turning the relay to off.
Describe the solution you'd like
It would really help me/make it simpler if I could specify an on_click entity dialog to open when a specific entity in the chart is clicked.
This would be an optional configuration parameter that you can specifiy for the entity object to inform the sankey chart as to which entity you would like to open when an measuring entity is pressed.
The default behaviour would be to allow users not to specify the parameter and just open the measuring entity detail page.
Describe alternatives you've considered
I currently apply my work-around that involves multiple clicks to get to the relay.
Another solution would require the end-user to be able to customize the entity detail page but this will most likely be out of scope for this integration.
Additional context
None

added tap_action for even more customization


Finish Index Page - Interactive Map: Integrate a Leaflet map to allow users to explore major groups of pictures, including streets, schools, and other significant locations.

We are going to work with MapLibre https://svelte-maplibre.vercel.app/ for an interactive map.


release artifacts for release v0.1.0

Issue #, if available:
release artifacts for release v0.1.0
Release Notes draft:
This release includes the following resources and updates:

Enables the AdoptedResource Feature for both ScalableTarget and ScalingPolicy ( #47 ).
Uses the server side CreationTime to set the LastModifiedTime the very first time ( #49 ).
Some release and helm test related changes ( #48 and #50).

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

/approve
/lgtm

/retest

/retest

/retest

/retest

/retest


Add call drop notebook

I did not include the data since it would mean pulling 1GB. We can discuss how this would be shared.

CI is failing because we currently don't include large csv files in the repo.
@mflaxman10 @patdevinwilson any update on what to do here?

@patdevinwilson this is ready for a review. CI is green, it fetches data from the S3 public bucket.

We now have an integration with ReviewNB so it's easier to see notebooks https://app.reviewnb.com/heavyai/heavyai-notebooks/pull/2/

LGTM. GH CI was hanging on 'start heavydb' for obvious reasons.

Thanks for caching that, there was a bug in the cache path. CI should go back green now otherwise there is an issue.

CI is green, merging. Thanks again for the review!

👍


[18.06] luci-app-advanced-reboot: fix README url in Makefile

Signed-off-by: Stan Grishin<EMAIL_ADDRESS>

Please remove [ 18.06 ] from the commit message.


DAAL 2020.2 Invalid write of size 8 in valgrind when allocating large memory block

I've just found a problem on one platform when allocating larger amounts of data. The error comes from the following line:
cont size_t vNumFeatures = 128*1024*1024;
NumericTablePtr vDataPtr = NumericTablePtr(HomogenNumericTable<int32_t>::create(vNumFeatures, 1, NumericTableIface::AllocationFlag::doAllocate));

GDB shows stack trace:
Program received signal SIGSEGV, Segmentation fault.
0x00005633d339e9d5 in daal::data_management::interface1::Dictionary<daal::data_management::interface1::NumericTableFeature, 6000>::setNumberOfFeatures (numberOfFeatures=134217728,
    this=0x5633d4078680) at /data/Tools/daal/include/data_management/data/data_dictionary.h:274
274	            _dict  = new Feature[1];

(gdb) bt
#0  0x00005633d339e9d5 in daal::data_management::interface1::Dictionary<daal::data_management::interface1::NumericTableFeature, 6000>::setNumberOfFeatures (numberOfFeatures=134217728,
    this=0x5633d4078680) at /data/Tools/daal/include/data_management/data/data_dictionary.h:274
#1  daal::data_management::interface1::Dictionary<daal::data_management::interface1::NumericTableFeature, 6000>::Dictionary (st=...,
    featuresEqual=daal::data_management::interface1::DictionaryIface::notEqual, nfeat=134217728, this=0x5633d4078680)
    at /data/Tools/daal/include/data_management/data/data_dictionary.h:434
#2  daal::data_management::interface1::Dictionary<daal::data_management::interface1::NumericTableFeature, 6000>::create (stat=0x7ffd812bd6b8,
    featuresEqual=daal::data_management::interface1::DictionaryIface::notEqual, nfeat=134217728)
    at /data/Tools/daal/include/data_management/data/data_dictionary.h:190
#3  daal::data_management::interface1::NumericTable::NumericTable (this=this@entry=0x5633d4078380, featnum=featnum@entry=134217728, obsnum=obsnum@entry=1,
    featuresEqual=featuresEqual@entry=daal::data_management::interface1::DictionaryIface::notEqual, st=...)
    at /data/Tools/daal/include/data_management/data/numeric_table.h:873
#4  0x00005633d33ad5da in daal::data_management::interface1::HomogenNumericTable<int>::HomogenNumericTable (st=...,
    memoryAllocationFlag=daal::data_management::interface1::NumericTableIface::doAllocate, nRows=1, nColumns=134217728, featuresEqual=daal::data_management::interface1::DictionaryIface::notEqual,
    this=0x5633d4078380) at /data/Tools/daal/include/data_management/data/homogen_numeric_table.h:804
#5  daal::data_management::interface1::HomogenNumericTable<int>::create (stat=0x0, memoryAllocationFlag=daal::data_management::interface1::NumericTableIface::doAllocate, nRows=1,
    nColumns=134217728, featuresEqual=daal::data_management::interface1::DictionaryIface::notEqual)
    at /data/Tools/daal/include/data_management/data/homogen_numeric_table.h:467
#6  daal::data_management::interface1::HomogenNumericTable<int>::create (stat=0x0, memoryAllocationFlag=daal::data_management::interface1::NumericTableIface::doAllocate, nRows=1,
    nColumns=134217728) at /data/Tools/daal/include/data_management/data/homogen_numeric_table.h:431
[...]

The valgrind error is:
/data/Tools/bin/valgrind /data/Debug/TensorDaalBindingTest
==15== Memcheck, a memory error detector
==15== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==15== Using Valgrind-3.16.1 and LibVEX; rerun with -h for copyright info
==15== Command: /data/Debug/TensorDaalBindingTest
==15==
[==========] Running 6 tests from 3 test suites.
[----------] Global test environment set-up.
[----------] 2 tests from TensorDaalBindingTest/0, where TypeParam = int
[ RUN      ] TensorDaalBindingTest/0.NumericTablePtr1DBinding
==15== Warning: set address range perms: large range [0x79e0040, 0x279e0060) (undefined)
==15== Warning: set address range perms: large range [0x5a115040, 0x19a1150c0) (undefined)
==15== Invalid write of size 8
==15==    at 0x15E97E: operator new [] (base.h:44)
==15==    by 0x15E97E: setNumberOfFeatures (data_dictionary.h:278)
==15==    by 0x15E97E: Dictionary (data_dictionary.h:434)
==15==    by 0x15E97E: create (data_dictionary.h:190)
==15==    by 0x15E97E: daal::data_management::interface1::NumericTable::NumericTable(unsigned long, unsigned long, daal::data_management::interface1::DictionaryIface::FeaturesEqual, daal::services::interface1::Status&) (numeric_table.h:873)
==15==    by 0x16D5D9: HomogenNumericTable (homogen_numeric_table.h:806)
==15==    by 0x16D5D9: create (homogen_numeric_table.h:467)
==15==    by 0x16D5D9: create (homogen_numeric_table.h:431)
[...]

Am I doing something wrong?
Environment:

OS: Ubuntu 18.04
Compiler: GCC 7.5.0-3ubuntu1~18.04
Version: DAAL 2020.2

Hello @emmenlau,
We suggest you to try initializing NumericTable without unnecessary casting, for example:
NumericTablePtr vDataPtr = HomogenNumericTable<int32_t>::create(vNumFeatures, 1, NumericTable::doAllocate);
Other possible reason might be lack of memory.  For the table with huge number of columns and quite a few rows we can observe some memory overhead caused by creating dictionary of this table. In your case we observed 5Gb of used memory instead of 0.5Gb. And if your machine has less than 5-6Gb this might be the root cause of these errors.
Could you provide more information about your use case: machine's configuration, code for reproducing and so on. It would help us to investigate your problem more carefully.

Dear @KalyanovD , thanks a lot for your support!
The program that shows this issue in valgrind works fine without memory debugger. I've tested it successfully on MSVC, Linux and MacOS. All machines have 64GB of RAM and are used exclusively for CI build and testing, so the RAM should be free for DAAL at this time.
I can try to remove possible casting, but we use the same casts for all our DAAL integrations (because we map memory from another tensor library to DAAL). Generally this worked well and we do not usually have problems using DAAL or its memory.

Please, let us know if suggested method will not help, we will continue investigation.
Probably, there is some problem with environment on your side? I've tried to reproduce this problem with using your sample code for several machines with similar environments and didn't observe this issue neither in gdb nor in valgrind.
Is it working for allocating transposed matrixes(2^7 rows x 1 column)? Could I recommend you this method of allocating NumericTable instead of original one? Seems it can reduce memory overheads and probably be some kind of workaround for the period of investigating this issue.

Dear @KalyanovD I will review our code to see if we can use rows instead of columns. Thanks a lot for this helpful performance tip!
Can I ask a related quick question, for confirmation: The HomogenNumericTable uses row-major storage, correct? But the order of arguments is size_t nColumns, size_t nRows, correct?
I'm asking because row-major tensors are often addressed in reverse order, so size_t nRows, size_t nColumns for the 2D case. But as long as DAAL consistently uses this order its absolutely fine, we will just map it accordingly!
See
https://github.com/oneapi-src/oneDAL/blob/3310c7a9a41a2f0eb72082115c0db98484e4d58d/cpp/daal/include/data_management/data/homogen_numeric_table.h#L114

Thanks a lot @KalyanovD !
After exchanging the row-vector to a column-vector I'm under the impression that our memory-usage dropped, and now valgrind is no longer showing any errors. I can not say with certainty if the aforementioned error in valgrind was caused by a "real" problem in DAAL, or if the row-vector-layout was requiring so much memory that the machine limits where exceeded.
I will close this issue since its a user error to not use the "more suitable" vector layout. Thanks for pointing this out.

After running extensive checks on the NumericTablePtr, we get green light from valgrind:
[----------] Global test environment tear-down
[==========] 6 tests from 3 test suites ran. (878715 ms total)
[  PASSED  ] 6 tests.
==1219381==
==1219381== HEAP SUMMARY:
==1219381==     in use at exit: 88,532 bytes in 8 blocks
==1219381==   total heap usage: 1,153 allocs, 1,145 frees, 57,982,325,412 bytes allocated
==1219381==
==1219381== LEAK SUMMARY:
==1219381==    definitely lost: 0 bytes in 0 blocks
==1219381==    indirectly lost: 0 bytes in 0 blocks
==1219381==      possibly lost: 69,920 bytes in 2 blocks
==1219381==    still reachable: 18,612 bytes in 6 blocks
==1219381==         suppressed: 0 bytes in 0 blocks
==1219381== Rerun with --leak-check=full to see details of leaked memory
==1219381==
==1219381== For lists of detected and suppressed errors, rerun with: -s
==1219381== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)

The remaining possibly lost: and still reachable: are typical for this kind of test and can be ignored.


Task watchdog timeout due to btController when using Wi-Fi functions.  (IDFGH-2611)

Environment

Development Kit:      none (custom HW)
Module or chip used:  ESP32-WROOM-32
IDF version (run git describe --tags to find it): v4.1-dev-2047-g600d542f5
Build System:         CMake
Compiler version (run xtensa-esp32-elf-gcc --version to find it): gcc8_2_0-esp-2019r2-linux-amd64
Operating System:     Linux
Using an IDE?: No
Power Supply:         external 3.3V

Problem Description
I recently pulled the master branch to test out some Nimble fixes that I've been waiting on.  We're using BLE via the Nimble stack along with Wi-Fi (using software conexistence).  Both BLE and Wifi are pinned to core 0.
Almost immediately after boot, we bring up the radio in STA mode and join a network.  We have one task which configures the SSID and passphrase, then calls esp_wifi_start().  We then wait until the event handler receives WIFI_EVENT_STA_START before calling esp_wifi_connect() in the event handler for that event.
The issue is that the call to esp_wifi_connect() takes around 15 seconds to return, and during that time I see the following message repeatedly:
E (6047) task_wdt:  - IDLE0 (CPU 0)
E (6047) task_wdt: Tasks currently running:
E (6047) task_wdt: CPU 0: btController
E (6047) task_wdt: CPU 1: IDLE1

No other tasks are able to run at this point.  It seems like btController is stuck in some kind of busy wait?  Eventually, whatever is going on finishes because both Wifi and BLE seem to work correctly (and simultaneously) after about 15 seconds.
I have also observed the same problem with a Wifi scanning task.  In that case, the same error message appears during a call to esp_wifi_scan_start().
As a test, I progressively trimmed down our BLE configuration code.  I was able to delete everything except for the esp_nimble_hci_and_controller_init().  If I remove that call, there are no problems using Wifi.  If I add that call, I see the error, even if I don't call any of the other Nimble initialization functions (e.g., nimble_port_init(), nimble_port_freertos_init(), etc.).
I'd appreciate any insight.  Happy to provide logs, etc, although besides the task watchdog warning, there's not much to see.

I have the same issue using coexist with WIFI and BR/EDR SPP protocol:
"task_wdt: CPU 0: btController"
I tried just starting the BT, waiting for an SPP connection, then starting the WIFI. The WIFI starts then the same result with the WDT on the bt controller task.
Did you ever arrive at a solution?

I have the same issue using coexist with WIFI and BR/EDR SPP protocol:
"task_wdt: CPU 0: btController"
I tried just starting the BT, waiting for an SPP connection, then starting the WIFI. The WIFI starts then the same result with the WDT on the bt controller task.
Did you ever arrive at a solution?

Nope, but the change that broke things must have been since September or so.  Everything was fine when I first ported my code to Nimble; it's only with the latest master that I've seen this error.
I haven't yet tried to step back to find the first instance of breakage.

I am closing this issue because the following is a clear duplicate:


Do not rewrite mongo let variables in the let body.

@jsantos17 FYI this PR touches the mongo planner.

@wemrysi if you want to merge this with the failing union.test in marklogic_xml that's fine with me, since this PR doesn't touch anything related to that. We'll have that test disabled in next-major when we merge latest master in.


[feature request] confirmation on category deletion

thankfully haven't done this much yet. but with it just being a right click to delete categories, I can see this being a fairly easy mistake to make.

Hm. People always dislike confirmation windows..but I suppose this shouldn't be something you do very often, so maybe it's fair to add one.

I pushed out v1.0.1 as a bugfix patch. It adds this 🤖 👍


feat: add url-scheme link to task in Things

This adds a link to the task in Things itself via the url-scheme link:
- [x] [Task title](things:///show?id=FCkSLvZ3FSKM7vxkDhjip7)
This lets you click on the link and open the Things to the task itself.
Example of Feature

Awesome, thanks for adding this! It's a great addition 😄


[htlcswitch]: Relax Circuit Deletion

This PR relaxes the very strict behavior of DeleteCircuits originally implemented w/in the circuit map. In light of 1) the split mailbox issue prior to #1551, and 2) upcoming changes to cleanup stray references/circuits w/in the switch #1698,  this will need to be in place to properly clean up stray references as the batches may not correspond 1:1 to a batch of HTLCs settled on the commitment transaction that locked them in. See commit messages for more details

This PR also includes the patch used to resolve #1689, which cleans up stray, locally-initiated payments. The root cause was fixed primarily in #1166 and #1551, as well as other smaller related PRs.


fix: Make PWA icon maskable

Changelog Entry
Description
This PR adds the maskable purpose, in addition to the default any.
Added
Changed

Added the maskable purpose to the icon in manifest.json, in addition to the default any.

Deprecated
Removed
Fixed
Fixes #4461 where the icon would be square when the PWA was installed via Chromium-based browsers under macOS.
Security
Breaking Changes

Additional Information
Fixes #4461 where the icon would be square when the PWA was installed via Chromium-based browsers under macOS.
Screenshots or Videos

Thanks!


Intellisense configuration through custom tasks

Hi all
Is there a way to sync intellisense with custom build tasks? I am working in a TypeScript project, and as I understand it, Code reads the tsconfig.json to do its intellisense (among other things). However my compilation is done through a gulp task. This task reports errors for me and I've setup a problem matcher to catch those. The problem comes in however when there seems to be a mismatch between the service generating intellisense and the build process I am using. I can build my project for example (using the gulp task) and no errors will show up - however I can go to a file and see red squiggles under things that have no errors. Are there ways I can sync the intellisense with my tasks?
This is my tasks json:
{
    "version": "0.1.0",
    "command": "gulp",
    "isShellCommand": true,
    "args": [
         "--no-color"
    ],
    "tasks": [
    {
        "taskName": "build-all",
        "isBuildCommand": true,
        "showOutput": "silent",
        "problemMatcher": {
            "fileLocation": ["relative", "${workspaceRoot}"],
            "pattern": {
                "regexp": "^(.*)\\((.*),(.*)\\):\\s(error|warning)\\s(.*)$",
                "file": 1,
                "line": 2,
                "column": 3,
                "severity": 4,
                "message": 5
            }
        }
    }]
}

My Code version is 0.10.8
Thanks for a great project, and look forward to future updates :)

@MKHenson which version of tsc do you use for your gulp compliation. I suspect that there is a version mismatch wich results in different squiggles. You can control the TS version used by VSCode using the typescript.tsdk setting.

Hi @dbaeumer
I have only got one version of Typescript installed, which is 1.8.2. I installed it globally using npm. My typescript.tsdk setting is set to null (so i presume it uses the default tsc command used in the npm module folder).
In my source files I have a main.ts file which includes all references to definitions.
(main.ts)
/// <reference path="./definitions/required/node.d.ts" />
/// <reference path="./definitions/required/express.d.ts" />
/// <reference path="./definitions/required/bcrypt.d.ts" />
etc...

Main.ts should be part of the compilation as I understand it. So even though these modules are defined and referenced in the definition files, the editor seems to complain about them not existing - and yet compilation is fine. Is this maybe because the editor only reads references in open files? If I put those reference paths in every file then the squiggles go away. The problem still exists even if I specify the .files property in the tsconfig.json (I thought it might be an ordering problem - i.e. that main.ts is not loaded first and so files dont see the definitions in order)
I've attached a picture to show what I mean.

Here is my tsconfig file
{
  "compilerOptions": {
    "module": "commonjs",
    "removeComments": false,
    "noEmitOnError": true,
    "declaration": false,
    "sourceMap": false,
    "preserveConstEnums": true,
    "target": "es5",
    "allowUnreachableCode": false,
    "allowUnusedLabels": false,
    "outDir": "dist"
  }
}

And here is my task file:
{
    "version": "0.1.0",
    "command": "gulp",
    "isShellCommand": true,
    "args": [
         "--no-color"
    ],
    "tasks": [
		{
			"taskName": "build-all",
			"isBuildCommand": true,
			"showOutput": "always",
            "problemMatcher": {
                "fileLocation": ["relative", "${workspaceRoot}"],
                "pattern": {
                    "regexp": "^(.*)\\((.*),(.*)\\):\\s(error|warning)\\s(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
		}
	]
}

Gulp file:
var gulp = require('gulp');
var ts = require('gulp-typescript');
var outDir = "dist";

// Builds each of the ts files into JS files in the output folder
gulp.task('ts-code', function() {
    return gulp.src(['src/**/*.ts', 'src/**/*.json'], { base: "src" })
        .pipe(ts({
            "module": "commonjs",
            "removeComments": false,
            "noEmitOnError": true,
            "declaration": false,
            "sourceMap": false,
            "preserveConstEnums": true,
            "target": "es5",
            "noImplicitAny": false
            }))
        .pipe(gulp.dest(outDir));
});

gulp.task('build-all', ['ts-code']);

@MKHenson no, VSCode doesn't use the globally install tsc. It ships with its own version. If you want to use the globally installed version of tsc then you need to set the typescript.tsdk setting.
However I think the problem is a configuration one. The gulp-typescript compiler is configured on the src folder. Where does your tsconfig.json file sit. And were do the typings sit (e.g. the node.d.ts file for the typings for 'http').
Could you share your project. That would ease tracking down the problem.

Hi @dbaeumer, I can't seem to isolate the problem... Sometimes it works after a while and other times not. I can't figure out what the deciding factors are :/
If I can get a repeatable set of steps then I'll reopen the issue and explain in more detail. But thanks for your response.

@MKHenson if you can share your project I can have a quick look at the setup. May be I see something.

Sure thing, you can view it from here

OK. The problem is your tsconfig.json files section. This only list three files which makes the ts project only consist of these three files and the files they reference using /// references. All other files are treated as separate virtual projects. So if you for example open users.ts it will be its own TS project. It will not be together with the project defined by your tsconfig.json file.
I would recommend to remove the files section and to exclude the dist folder instead.
The reason why your gulp is working is that you in that setup pipe all src/*.ts files into the compiler.

Ah I see, thanks @dbaeumer


Challenge list now showing up on community home page

The challenge list is not showing up. Didn't expect this.

Db migrations didn't run xd


Remove vendor from .gitignore

The vendor directory does not come when downloaded as a ZIP, so the vendor directory should be removed from the .gitignore file.
According to the information I learned from @lukasbestle; when a plugin installed with global composer, composer-installer package already deletes vendor directory in the plugin.

A bit of background: Keeping the necessary Composer dependencies in the repo allows users to install the plugin via ZIP download and as a Git submodule, both of which are preferred by many users who are not comfortable with CLI tools or prefer a simple setup. Because our Composer installer handles deleting the vendor directory on installation via Composer, the committed vendor directory does not break installation via Composer.
You can read more about this in our docs.

It was an active decision to exclude the vendor folder and don't commit this folder. We know about the other installation option, but we need a composer setup to have the option to use the composer autoloader to load the blade component classes.
In the project compose.json we define the path for the blade components. Blade will only load components inside the namespace App\View\Components. (Yes, we know this feature is undocumented)
  "autoload": {
    "psr-4": {
      "App\\View\\Components\\": "site/components/"
    }
  },

The Laravel Blade package gets regular updates. Without the committed composer.lock and the vendor folder you'll always get an up-to-data blade version without updates of this package.
I'm sorry to tell you that we only provide the installation via composer.


Training an empty agent succeeds

We should throw a warning or error when the user tries to train an empty agent (no sayings). Rather than saying the training succeeded:

Closed by https://github.com/samtecspg/articulate/commit/459cff5e25c2be29da2542d82a49b7de32653367


Update angularFire-seed e2e tests to test login status

The new e2e tests in protractor need to test authentication and redirects. Also, the login screen needs its tests converted to protractor. They have been tested manually for the 0.8.0 release and are all functional.
For illustration purposes, we should get a couple e2e tests that deal with authentication in to show best practices in protractor. We should not, since this is a seed and every line of code added means more code devs have to grok and/or remove later as they build, try to cover every case--expect that devs will change this code significantly when they build on top of it.

This isn't a priority and hasn't had demand so closing for now.


Don't silents user's TypeError exceptions

This helps development because user TypeError exceptions are no silented.

This PR got deprecated, close it?

ping @davidfischer


Expense form: Validate addresses

https://opencollective.com/osc/expenses/15393
This expense came though without required info. This should not be allowed.

No line item description
No Payee address
No payout method

Hmmm I'm wondering if this was created before the new expense flow? If so, then it's missing the attachment that would have been included.

Here's another one I just created. It's showing most of the info, but it's missing the full payee address details (my own address in this case) - it's not showing the city or post code. Without the proper address it can't function as a valid invoice for the host's accounting.

From what I see this was submitted before the release of the new expense flow.
Other expenses like that still exist, they were created with the old flow and there's not much we can do except asking to update the info when they're missing

What would be the expected behavior for the one you created? Validating addresses when they can be from any country is not straightforward, to do it properly you need to have clearly separated fields for the different parts of the address.

Thanks @Betree - maybe we have some migration challenges with expenses submitted under the old flow? The expense I linked initially has no info and no attachment, but I assume those were there when they submitted it in the old form?
With address validation, we may have to have seperate fields, as we can't pay expenses (mainly invoices) without an address we could actually use to contact the person. I agree it's annoying because every country is different, but how about just address city country postal code as the most generic option? Like in NZ we don't have states/provinces and it's very annoying when they are required! I'm guessing millions of other web companies face this same challenge so maybe we could just pick up a standard design?

maybe we have some migration challenges with expenses submitted under the old flow?

Not really because people were supposed to attach invoices in the old flow, if they didn't then the expense was already invalid and the new expense flow didn't change much about it.
I however just spotted a bug that created some confusion here: because the expense type is INVOICE, we don't show the attachments for expense items on this page (host dashboard is not affected) - tho this expense does have an attachment. I'll push a fix for that today.

With address validation, we may have to have seperate fields

We can do that indeed, needs to be checked with design to find something that does not overload the form. In my opinion this is a v2, not a priority because there's no regression - people could already submit expenses with invalid addresses on their invoices before the new expense flow.

Plano de projeto e comprometimento
Endereço
Conta bancária
Me ajudando

Closing - please see https://github.com/opencollective/opencollective/issues/3630 for further discussion and solving.

Closing - please see https://github.com/opencollective/opencollective/issues/3630 for further discussion and solving.


Update CesiumRuntime.Build.cs for Cesium Native changes

Updates for KTX library changes: ktx_read -> ktx
Adds new CesiumQuantizedMeshTerrain namespace

Look like good changes to update cesium-native.
Seeing this weird CI error across all iOS versions...
CMake Error at cesium-native/CMakeLists.txt:210 (install):   install TARGETS given no FRAMEWORK DESTINATION for static library FRAMEWORK   target "ktx".
Not obvious why this is occurring. Looking into it... (unless you beat me to it)

Earlier in the CI logs I see this error as well:

CMake Warning at cesium-native/extern/KTX-Software/cmake/version.cmake:151 (message):
Error retrieving version from GIT tag.  Falling back to 0.0.0-noversion
Call Stack (most recent call first):
cesium-native/extern/KTX-Software/CMakeLists.txt:13 (include)

I think I have a fix for the iOS cmake errors.
Needed a cesium-native change, so I committed that update.
This PR now depends on cesium-native PR 869

@csciguy8 I was making some changes to sync with the new cesium-native changes. I'm going to cancel your CI build and push them to main directly.

Whoops! Go for it.


PD: Pre-wet is skipped when multi-dispense is selected

Overview

When the Single Transfers motion strategy is selected, pre-wet works as expected.
When the Multi-Dispense motion strategy is selected, pre-wet is skipped. It is not executed on the robot and it does not show up in the run log.

Steps to reproduce
The attached protocol has two transfer steps. Step 1 uses Single Transfers. Step 2 uses Multi Dispense.
Pre-Wet Test.json.zip
Run log
Picking up tip from A1 of Opentrons 96 Tip Rack 300 µL on 1
Aspirating 100.0 uL from A1 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Dispensing 100.0 uL into A1 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Aspirating 100.0 uL from A1 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Dispensing 100.0 uL into B1 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Aspirating 100.0 uL from A1 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Dispensing 100.0 uL into A1 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Aspirating 100.0 uL from A1 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Dispensing 100.0 uL into C1 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Dropping tip into A1 of Trash on 12
Picking up tip from B1 of Opentrons 96 Tip Rack 300 µL on 1
Aspirating 200.0 uL from A2 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Dispensing 100.0 uL into B2 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Dispensing 100.0 uL into C2 of NEST 96 Well Plate 200 µL Flat on 4 at 1.0 speed
Dropping tip into A1 of Trash on 12

Expected behavior
If pre-wet is enabled for a multi-dispense step, the pipette should aspirate and dispense in the source well just the same as if it were a single transfer.

Duplicate of #5122


Add pagination on nested queries

Allow API to generate pagination for nested queries
query QueryZoo {
  zoo {
    data {
      name
      year
      animals(pagination: {limit: 4, page: 2}) {
        name
      }
    }
    pages
    current
  }
}

This have been implemented, also its included in the new API #114


Try Alpha 4

Checklist

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

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender

   11 |    use MPI
      |       1
Fatal Error: Mismatch in components of derived type 'mpi_status' from 'mpi_constants' at (1): expecting 'mpi_source', but got 'count_lo'
compilation terminated.


:bug: do not create lease if deploy using addontemplate

Summary
if the addon is deployed using addontemplate, do not need to create lease to do health check.
if the addon is deployed using hub manager, need to create lease to do health check.
Related issue(s)
Fixes #

/assign @qiujian16

/approve
/lgtm


runtime-sdk: Refactor the RNG, mix in local entropy in queries

Multiple related changes:

runtime-sdk/modules/evm: Bump evm to 0.39.1
Includes support for Shanghai features, targeted by recent solc.
runtime-sdk: Add explicit epoch to X25519-Deoxys-II call envelope
This should fix remaining occurrences of failed tx decryptions when the guessed epoch is wrong.
runtime-sdk: Refactor the RNG, mix in local entropy in queries
Refactor the RNG scheme to make it easier to audit, add unit and E2E tests.

so there's this separation into pre-init transcript and post-init transcript. what's this separation for? the fact that the first fork advances the root rng is already enough to make the resulting leaf rngs different
a leaf rng depends on the post-init transcript and on the root rng state. but there's also this thing where the 'fork' message goes on a clone of the post-init transcript, so we don't keep it. which leads to the following property:
R1 = RootRng::new()
L1 = R1::fork("a")
L2 = R1::fork("a")
L2 != L1
R2 = RootRng::new()
junk = R2::fork("b")
L3 = R2::fork("a")
L3 = L2
what do we use this for?

so there's this separation into pre-init transcript and post-init transcript. what's this separation for? the fact that the first fork advances the root rng is already enough to make the resulting leaf rngs different

Yes, that's true, it is not technically needed, but it seemed like good hygiene. But you're right that removing this makes the scheme simpler which is better for audits, so I'll remove it.

Re: specifying own epoch in encryption envelope, rather than trying the previous 2.
There was a reason it was limited to the previous 2 epochs, which was probably related to replay protection or at least ensuring the ephemeral nature of requests.
For example, what if I try to DoS the key manager by randomly selecting epochs, knowing that if my attack rate is fast enough I can prevent it from replying to legitimate requests which are necessary to process normal consensus blocks etc.

For example, what if I try to DoS the key manager by randomly selecting epochs, knowing that if my attack rate is fast enough I can prevent it from replying to legitimate requests which are necessary to process normal consensus blocks etc. (I'm not sure if epoch keys are being cached, or require a round-trip every time)

You cannot select arbitrary epochs as the window of acceptable/available epochs is still limited by the key manager. But you're right that negative results are not being cached so we should enforce a window at the runtime as well.

@CedarMist fixed.


Dark / Light mode toggle

I would like to add that Dark /LIght mode toggle button with nice Design @matteocargnelutti ..


[question] How to evaluate PPO2 with MlpLnLstmPolicy trained on SubprocVecEnv having nminibatch > 1?

The code below gives an error message
ValueError: Cannot feed value of shape (1, 4) for Tensor 'input/Ob:0', which has shape '(4, 4)'

It looks like if you are training with 4 environments, the model.predict(obs) method accepts only input of batch size 4.
On the other hand, I have tried that the evaluate function does not accept multiple environments.
AssertionError: You must pass only one environment for evaluation

import gym

from stable_baselines.common.policies import MlpLnLstmPolicy
from stable_baselines.common.vec_env import DummyVecEnv, VecNormalize
from stable_baselines.common.vec_env import SubprocVecEnv
from stable_baselines import PPO2
from stable_baselines.common.callbacks import EvalCallback

if __name__ == '__main__':
    N_ENV = 4
    NMINIBATCHES = 4

    def _make_env():
        return gym.make('CartPole-v1')

    train_env = SubprocVecEnv([_make_env for _ in range(N_ENV)])
    train_env = VecNormalize(train_env, norm_obs=True, norm_reward=False)

    eval_env = DummyVecEnv([_make_env])
    eval_env = VecNormalize(eval_env, norm_obs=True, norm_reward=False)

    eval_callback = EvalCallback(eval_env, best_model_save_path='./model',
        log_path='./logs'
        , eval_freq=100
        , deterministic=True
        , render=False
        , n_eval_episodes=1
    )

    model = PPO2(MlpLnLstmPolicy, train_env
        , verbose=1
        , policy_kwargs={'n_lstm': 16}
        , nminibatches=NMINIBATCHES
    )

    model.learn(total_timesteps=int(4000), callback = eval_callback)

This is a limitation of LSTM policies (mentioned here, although it is bit hidden), where they indeed require same amount of environments to be evaluated on.
One another thing: I think you need to use same VecNormalize for both training and evaluation to have the right normalization statistics (@araffin ?)

Got it. So I guess currently when working with LSTM policies, the only choice is to run it with nminibatches=1  and a single environment if we want to deploy our model to interact with an environment?
Since otherwise, model.predict() has to be called with obs of size (nminibatches, obs_size).
Good catch on VecNormalize, I would like to know too.

I would advise against training with single environment (known to be unstable).

if we want to deploy our model to interact with an environment?

An alternative is to pad your observations with zeros until it matches the desired shape. arrafin has a nice example here.

I think you need to use same VecNormalize for both training and evaluation to have the right normalization statistics

Yes, the EvalCallback takes care of that, but you should use training=False for the evaluation (cf rl zoo)
It seems we may need to update evaluate_policy function for the LSTM case, but I'm afraid to complexify the code too much :/

Thanks for the help, it works after I hacked the evaluate_policy and EvalCallback according to your code samples.

To be more specific, I made a new evaluate_lstm_policy() that adds the following to evaluate_policy()
zero_completed_obs = np.zeros((NMINIBATCHES,) + env.observation_space.shape)
zero_completed_obs[0, :] = obs
obs = zero_completed_obs

and make a new EvalCallback that call this evaluate_lstm_policy()

To be more specific, I made a new evaluate_lstm_policy() that adds the following to evaluate_policy()
zero_completed_obs = np.zeros((NMINIBATCHES,) + env.observation_space.shape)
zero_completed_obs[0, :] = obs
obs = zero_completed_obs

and make a new EvalCallback that call this evaluate_lstm_policy()

good and simple enough to merge it into the project to solve the eval problem


Error on rbinit

-bash: eval: linha 33: syntext error near unexpected `token' `('
-bash: eval: linha 33: `export PATH="/root/.rbenv/shims:${PATH}" export RBENV_SHELL=bash source '/usr/local/rbenv/libexec/../completions/rbenv.bash' rbenv rehash 2>/dev/null rbenv() { local command command="$1" if [ "$#" -gt 0 ]; then shift fi case "$command" in rehash|shell) eval "`rbenv "sh-$command" "$@"`";; *) command rbenv "$command" "$@";; esac }'

(translated bash error)

my mistake, did eval $(rbenv init -) instead of eval "$(rbenv init -)"


question about NNCONV

hi there,It seems like the NNCONV(QM9_NN_CONV) doesn't use the attribure "edge_index" but only use "edge_attr" and "x" in message function,but why do it need the information of "edge_index", how can  I use edge_index as a attribute in it?

NNConv does use edge_index on the forward pass: https://github.com/rusty1s/pytorch_geometric/blob/master/examples/qm9_nn_conv.py#L87

You can access edge_index in message by just adding it to the argument list:
def message(self, edge_index, edge_attr, x_j):
    pass

In general, there is no need to access edge_index to generate messages though, that's why you do not see it accessed much (we generate messages independently for every edge).


GQLAlchemy can't be installed with Python 3.10 on Windows

Currently, GQLAlchemy can't be installed with Python 3.10 on Windows, since its dependencies still do not support Python 3.10. For example, GQLAlchemy has NetworkX as a dependency and it has numpy as its dependency. There is no version of numpy that works with Python 10 on Windows. Once all dependencies are supported for Python 3.10, we can update the appropriate packages and add Python 3.10 support for Windows.

What is the path forward here? I wouldn't mind using an older version of python to use this library, but curious if there is an ETA on making it compatible with 3.11. Python.org no longer provides installers for 3.9. NetworkX and numpy both have versions that support python 3.11. I was unable to install pymgclient on both my Windows and Mac dev computers. I'm assuming because of the lack of 3.11 support?

Hi @jngarber-st, we will work on the release at the end of the next week and try to include this in the release. Hopefully, dependencies that were not working properly for Python 3.10 work now. I will keep you updated here.


Figure out ChatCraft use cases for new OpenAI API features

OpenAI just had a DevDay, and announced a bunch of cool new features, see https://openai.com/blog/new-models-and-developer-products-announced-at-devday.

larger context window for GPT-4 (128K).  This would let you stuff a bunch of files into the prompt
Improvements to Function Calling (multiple functions at once, JSON mode)
Visual Input support for GPT-4.  Could use this to allow talking about screenshots or visual output and turning that into code (Make React components that look like this...)
Image generation

Not sure if there are people who want to try hacking on some of these, but I thought I'd call attention to it.  I probably won't have time to do it any time soon, but could review.
Here's the email I got yesterday:

We're excited to share major new features and updates that were announced at our first conference, OpenAI  DevDay. You can read the full details on our blog, watch the keynote recording, or check out the new @OpenAIDevs Twitter, but here a brief summary:
New GPT-4 Turbo:
We announced GPT-4 Turbo, our most advanced model. It offers a 128K context window and knowledge of world events up to April 2023.
We’ve reduced pricing for GPT-4 Turbo considerably: input tokens are now priced at $0.01/1K and output tokens at $0.03/1K, making it 3x and 2x cheaper respectively compared to the previous GPT-4 pricing.
We’ve improved function calling, including the ability to call multiple functions in a single message, to always return valid functions with JSON mode, and improved accuracy on returning the right function parameters.
Model outputs are more deterministic with our new reproducible outputs beta feature.
You can access GPT-4 Turbo by passing gpt-4-1106-preview in the API, with a stable production-ready model release planned later this year.
Updated GPT-3.5 Turbo:
The new gpt-3.5-turbo-1106 supports 16K context by default and that 4x longer context is available at lower prices: $0.001/1K input, $0.002/1K output. Fine-tuning of this 16K model is available.
Fine-tuned GPT-3.5 is much cheaper to use: with input token prices decreasing by 75% to $0.003/1K and output token prices by 62% to $0.006/1K.
gpt-3.5-turbo-1106 joins GPT-4 Turbo with improved function calling and reproducible outputs.
Assistants API:
We're excited to introduce the beta of our new Assistants API, designed to help you build agent-like experiences in your applications effortlessly. Use cases range from a natural language-based data analysis app, a coding assistant, an AI-powered vacation planner, a voice-controlled DJ, a smart visual canvas—the list goes on
This API enables the creation of purpose-built AI assistants that can follow specific instructions, leverage additional knowledge, and interact with models and tools to perform various tasks.
Assistants have persistent Threads for developers to hand off thread state management to OpenAI and work around context window constraints. They can also use new tools like Code Interpreter, Retrieval, and Function Calling.
Our platform Playground allows you to play with this new API without writing code.
Multimodal capabilities:
GPT-4 Turbo now supports visual inputs in the Chat Completions API, enabling use cases like caption generation and visual analysis. You can access the vision features by using the gpt-4-vision-preview model. This vision capability will be integrated into the production-ready version of GPT-4 Turbo when it comes out of preview later this year.
You can also integrate DALL·E 3 for image generation into your applications via the Image generation API.
We released text-to-speech capabilities through the newly introduced TTS model, which will read text for you using one of six natural sounding voices.
Customizable GPTs in ChatGPT:
We launched a new feature called GPTs. GPTs combine instructions, data, and capabilities into a customized version of ChatGPT.
In addition to the capabilities built by OpenAI such as DALL·E or Advanced Data Analysis, GPTs can call developer-defined actions as well. GPTs let developers control a larger portion of experience. We purposefully architected plugins and actions very similarly, and it takes only a few minutes to turn an existing plugin into an action. Read the docs for details.
We're excited to see how these updates help open up new avenues for leveraging AI in your projects.

This is done.


Broken pipe or closed connection

Broken pipe or closed connection
on vendor/bunny/bunny/src/Bunny/AbstractClient.php 300
How Can I Do?

Same problem here - using dockerhub RabbitMQ 3.6.5 on Erlang 19.0.7

O-ou, my bad, I forgot to call $client->connect(), maybe there should be some more descriptive Exception thrown?

Same error here. I'm suspecting the thread is lagging behind doing some other non fully asynchronous things resulting in a timeout on the connection.
I'd love a way to just catch this and reconnect it...

Hey, is there any fork with this issue fixed?
I can send a PR if I have more info about this problem. Really breaks our project right now.

@jakubkulhan ping

@jakubkulhan Is there any plan to fix this issue please? Bunny is really excellent library, but this bug does not allow us to use it in production. Thank you in advance.

I think the problem is on your application's side because we're using RabbitMQ in production with millions of messages daily and this problem does not occur, meaning the problem is in your code which uses Bunny. Perhaps you can post some code example which causes this error for you?

You can be right, of course. I think that this stack trace could help:
Fatal error: Uncaught Bunny\Exception\ClientException: Broken pipe or closed connection. in /var/www/html/vendor/bunny/bunny/src/Bunny/AbstractClient.php:300 Stack trace: #0 /var/www/html/vendor/bunny/bunny/src/Bunny/Client.php(86): Bunny\AbstractClient->write() #1 /var/www/html/vendor/bunny/bunny/src/Bunny/ClientMethods.php(765): Bunny\Client->flushWriteBuffer() #2 /var/www/html/vendor/bunny/bunny/src/Bunny/Channel.php(220): Bunny\AbstractClient->channelClose(1, 0, '', 0, 0) #3 /var/www/html/vendor/bunny/bunny/src/Bunny/Client.php(147): Bunny\Channel->close() #4 /var/www/html/vendor/bunny/bunny/src/Bunny/Client.php(56): Bunny\Client->disconnect() #5 [internal function]: Bunny\Client->__destruct() #6 {main}   thrown in /var/www/html/vendor/bunny/bunny/src/Bunny/AbstractClient.php on line 300

Nope, I need your code. I suspect that you're closing the connection first and trying to send a message later. Are you using the async client?

<?php declare(strict_types = 1);

namespace Lib\RabbitMq;

use Bunny\Client;

class Publisher
{

    /** @var Client */
    private $client;

    /** @var string */
    private $queueName;

    public function __construct(Client $client, string $queueName)
    {
        $this->client = $client;
        $this->queueName = $queueName;
    }

    public function publish(string $message): void
    {
        $this->connect();
        $this->client->channel()->publish($message, [], $this->queueName);
    }

    private function connect(): void
    {
        if (!$this->client->isConnected()) {
            $this->client->connect();
        }
    }
}

I think I see at least one problem. You're opening a new channel for each message.
// Creates and opens new channel.
$this->client->channel()

Also, about the publish method - the third parameter is supposed to be the exchange name, fourth parameter is the queue name, so I think the correct call should look like this:
$this->client->channel()->publish($message, [], '', $this->queueName); // use direct exchange

@ondrejmirtes This issue occurs when you send a message into the queue, then wait for about 5 minutes (with script running - e.g. ratchet server) and then try to send another message. I can make an example which will reproduce this issue. Hm?

@paveljanda Again, not a problem of Bunny in my opinion. Try to set a longer connection timeout (when connecting to RabbitMQ) and also try to fine-tune settings mentioned in RabbitMQ documentation here https://www.rabbitmq.com/networking.html.

@paveljanda Also, there's a RabbitMQ feature called Heartbeats which is also supported by Bunny, so try to look into that too. https://www.rabbitmq.com/heartbeats.html

@ondrejmirtes Ha, didn't know about bunny support. Thanks, will look into that

As suggested by @ondrejmirtes, the problem most probably is because broker (RabbitMQ) closed the connection as it didn't receive heartbeat AMQP frame. Default heartbeat is set to 60 seconds (https://github.com/jakubkulhan/bunny/blob/master/src/Bunny/AbstractClient.php#L132) - if client does not send any frame (e.g. by publishing a message, acking a message) within 60 seconds, server assumes the client is dead and closes TCP connection. Therefore the next call by client throws Broken pipe or closed connection exception.
If you want to write consumer process using synchronous blocking client (class Bunny\Client), you must use client's ->run() method. The code should be structured such as:
$client = new Client([
    "heartbeat" => 60.0,
]);
$client->connect();
$channel = $client->channel();

// initialize exchanges, queues, etc.
// initialize consumers, e.g.:
$channel->consume(function (Message $message, Channel $channel) {
    // BEWARE, time spent here must not exceed heartbeat specified in client's constructor config
}, "...");

// start consuming messages
$client->run();
// ->run() blocks indefinitely and also periodically sends heartbeat frames to keep connection alive

If all you want is to publish some messages, e.g. during processing of HTTP request and don't need confirmation from broker that the message has been accepted, ->run() doesn't need to be called. (cc @martinvenus)
Asynchronous client (class Bunny\Async\Client) doesn't have ->run() method. Periodic timers to send heartbeats are provided by ReactPHP's event loop. If you use other libraries (e.g.  Ratchet, cc @paveljanda) that rely on event loop, all of them must use the same instance of event loop:
use React\EventLoop\Factory;
use Ratchet\App;
use Bunny\Async\Client;
use Bunny\Channel;

$loop = Factory::create();

$ratchet = new App(..., ..., ..., $loop);
// add handlers to ratchet

$client = new Client($loop);
$client->connect()->then(function (Client $client) {
    return $client->channel();
})->then(function (Channel $channel) {
    // work with async channel
});

// start ratchet server & bunny client
$loop->run();

The last thing to be aware of is if you're connecting to RabbitMQ through some kind of proxy/loadbalancer. Most proxies you some kind of idle timeout and then if no packets are being sent/received, they drop the connection. I've experienced this when the app on EC2 instance kept connecting to RabbitMQ through AWS ELB that had idle timeout lower than client's hearbeat timeout.
Hope this helps!

@jakubkulhan Thank you for your answer! You async example is working well without any timeouts.


#142 -- Paper and Elevation

could use the mdc-elevation-overlay class for calculating and applying the overlay as material.io examples do. We just then have to override the opacity level for the custom --mdc-elevation-overlay-opacity theme that gets created.
*Note: this also doesn't work well with any background-color passed to the paper component since that color is forwarded on to the overlay div, through $$restProps, which conflicts with the overlay since (unlike MUI) it sets up the overlay using background-color and opacity instead of background-image. Not applying the $$restProps fixes the color conflict but removes height and width from overlay div ...
<Box
  element="div"
  ref={paperRef}
  eventComponent={current_component}
  {...$$restProps}
  class="mdc-elevation--z{elevation} mdc-elevation-transition {additionalClasses}"
>
  <div class="mdc-elevation-overlay {$$restProps.class || ''}" style="--elevation: {getOpacityPercentage(elevation)};" />
  <slot />
</Box>

.mdc-elevation-overlay {
    opacity: var(--mdc-elevation-overlay-opacity, var(--elevation)) !important;
  }

Something to note is that MUI looks to be applying a linear-gradient, based on the desired elevation, to background-image of the Paper component. Material.io, and the way Overlay is currently setup uses the mdc-elevation-overlay class which targets background-color.


bio.h syntax error line 993 - openssl-3.2.0-alpha2 - mingw on Windows - g++.exe (Rev7, Built by MSYS2 project) 13.1.0

Was able to compile static library fine for openssl-3.2.0-alpha2 on mingw/Windows.  Compiling the static lib itself isn't the problem.
Then tried making a basic app after including <openssl/ssl.h> but got this syntax error
**c:\openssl-3.2.0-alpha2\include/openssl/bio.h:993:29: error: expected ')' before ';' token
993 |                       int (*gets) (BIO , char , int));
I had to comment out the two lines below in bio.h to get my EXE to compile, but no idea why this issue happening in first place

int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *);
int BIO_meth_set_puts(BIO_METHOD *biom,
                      int (*puts) (BIO *, const char *));
int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int);
//int BIO_meth_set_gets(BIO_METHOD *biom,
 //                     int (*gets) (BIO *, char *, int));
long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *);
int BIO_meth_set_ctrl(BIO_METHOD *biom,
                      long (*ctrl) (BIO *, int, long, void *));
int (*BIO_meth_get_create(const BIO_METHOD *bion)) (BIO *);
int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *));

My compiler is mingw on Windows
g++ --version
g++.exe (Rev7, Built by MSYS2 project) 13.1.0
Is this compiler bug? I am compiling with g++  -Wall -Wextra -pedantic  -Os -s
Maybe is b/c the name "gets" shouldn't be used here and conflicts with something else?

Hmmm. I don't see anything obviously wrong with that line. Perhaps there is some kind of symbol clash with some symbol defined elsewhere in a system/other header file. I'm looking at gets particularly. What happens if you rename gets to some other symbol (it actually could be anything - the name is unimportant in that context), e.g.
int BIO_meth_set_gets(BIO_METHOD *biom,
                      int (*ossl_gets) (BIO *, char *, int));

The other thought is a missing extern "C" somewhere - adding that just before int BIO_meth_set_gets would see if that is the problem

bio.h does already have the extern "C" present so this shouldn't be a problem:
https://github.com/openssl/openssl/blob/8f67c6bb7cab70bbcc231ee3e18d140a2857ebdb/include/openssl/bio.h.in#L35-L37

FWIW, I'd identify the full compilation command in the makefile triggering the error, and run it with just the preprocessor (the -E option on gcc, not sure if its the same on mingw), and examine the preprocessor converted output.  could be that windows defines gets as a macro somewhere and its getting token replaced.

the issue goes away if changing "gets" to be "gets2".  So yeah it is something with "gets" conflicting... I suggest just change that to be something else.

We've seen commentary before (years ago is last I recall) that we really shouldn't use function argument names that are easily conflicting, or at all.  In other words, the advice that I recall is that we should adopt one of these standards for declaring public functions:

Variant with no argument names at all (I personally dislike it):int BIO_meth_set_gets(BIO_METHOD *,
                      int (*) (BIO *, char *, int));

Variant with names as comments:int BIO_meth_set_gets(BIO_METHOD * /* biom */,
                      int (* /* gets */) (BIO *, char *, int));

Variant with names having a project prefix:int BIO_meth_set_gets(BIO_METHOD *ossl_biom,
                      int (*ossl_gets) (BIO *, char *, int));

As this could be done quite broadly, maybe we should discuss this a bit more broadly too...

I agree that broader discussion should be done, but it should not prevent us doing a fix right now. (Fix in https://github.com/openssl/openssl/pull/22316)

I start a broader discussion

Change puts() also if you are going to do this change

puts() is considered safe.
gets() is not considered safe.
I suspect some magic is being done to prevent use of gets().

@chr0meice2 as stated elsewhere (see https://github.com/openssl/openssl/pull/22316#pullrequestreview-1666526875 and https://github.com/openssl/openssl/pull/22316#issuecomment-1754771618), I would like to see some evidence that the problem is indeed caused by system headers and not by your application.  Could you please

locate and show us the problematic #define in the system headers, and
show us the preprocessor output, as suggested by @nhorman ?


Unable to build from source tarball

What happened:
Hi! I would like to package cri-tools for Arch Linux. Unfortunately I am not able to build from a source tarball and therefore do a form of upstream source verification (via checksum comparison). From a packaging perspective this is not good.
What you expected to happen:
Download a release tarball (e.g. a CI manufactured tarball) and build from it after extracting it.
How to reproduce it (as minimally and precisely as possible):
make
fatal: not a git repository (or any of the parent directories): .git

However, critest is still being built:
CGO_ENABLED=0 GO111MODULE=on go test -mod=vendor -c -o /build/cri-tools/src/cri-tools-1.19.0/_output/critest \
        -ldflags '-X github.com/kubernetes-sigs/cri-tools/pkg/version.Version=' \
        -tags 'selinux' \
     github.com/kubernetes-sigs/cri-tools/cmd/critest
CGO_ENABLED=0 GO111MODULE=on go build -mod=vendor -o /build/cri-tools/src/cri-tools-1.19.0/_output/crictl \
        -ldflags '-X github.com/kubernetes-sigs/cri-tools/pkg/version.Version=' \
        -tags 'selinux' \
        github.com/kubernetes-sigs/cri-tools/cmd/crictl

Anything else we need to know?:
Without source (tarball) verification it is easier to fall for supply chain attacks.
On Arch Linux we are also able to use PGP signed tags for source verification. Note: The github provided PGP signatures are useless though, as they do not provide a chain of trust and do not identify a real person.
If you intend to provide detached PGP signatures for custom tarballs or signatures for your tags, please ensure to announce this (e.g. who is allowed to tag releases with which key) and make plans to ensure a chain of trust in the future.
Environment:

Container runtime or hardware configuration: n/a
OS: Arch Linux
Kernel (e.g. uname -a): Linux hmbx 5.8.16.a-1-hardened #1 SMP PREEMPT Sat, 17 Oct 2020 13:04:20 +0000 x86_64 GNU/Linux
Others:

go: 1.15.3

Hey @dvzrv, thank you for submitting the issue!
I think we could solve this problem with adding a dedicated VERSION file to the repository and reading the version from it instead of invoking a git command.

@saschagrunert is there any movement on this?
FWIW, I think auto-closing bots are really problematic, as they just hide these issues and they continue existing for a very long time....

@dvzrv unfortunately not, we could either use a static version file or the build environment requires git. Both has pros and cons for sure.


fix: send unprocessed messages to DLQ

fix #16

:tada: This PR is included in version 1.2.3 :tada:
The release is available on:

v1.2.3
v1.2.3
GitHub release

Your semantic-release bot :package::rocket:


lib: Add CRUD support for HelmRelease,GitRepository

@knrt10 @iaguis can we merge this one so as to close https://github.com/kinvolk/lokomotive/issues/1550 ?

Let me do a quick review.


enum docstrings do not make it to the prisma client

Bug description
If i define an enum in my prisma schema as:
enum MyEnum {
    /// First value
    First
    /// Second value
    Second
}

The enum type that is produced doesn't have the docstrings "First value" and "Second value".
How to reproduce
See bug description.
Expected behavior
Docstrings appear for the enum values
Prisma information

enum MyEnum {
    /// First value
    First
    /// Second value
    Second
}

import { MyEnum } from '@prisma/client';

let x: MyEnum;

Environment & setup

OS: macOS
Database: PostgreSQL
Node.js version: 18.9.1

Prisma Version
prisma                  : 4.10.0
@prisma/client          : 4.10.0
Current platform        : darwin-arm64
Query Engine (Node-API) : libquery-engine ca7fcef713137fa11029d519a9780db130cca91d (at<EMAIL_ADDRESS>Migration Engine        : migration-engine-cli ca7fcef713137fa11029d519a9780db130cca91d (at ../../node_modules/@prisma/engines/migration-engine-darwin-arm64)
Format Wasm             : @prisma/prisma-fmt-wasm 4.10.0-84.ca7fcef713137fa11029d519a9780db130cca91d
Default Engines Hash    : ca7fcef713137fa11029d519a9780db130cca91d
Studio                  : 0.481.0

Hey @jakeleventhal, Just checking, did this previously work in older versions and broke in 4.10? Or have you only tried on 4.10?

I just downloaded prisma for the first time yesterday

Quick investigation and we've reproduced your issue. Our types currently do not include comments for enums.
(Internal note) We need to look into the DMMF and check if the comments are in there

Fix is in the works here https://github.com/prisma/prisma-engines/pull/4037/files


Multiline import statements

Describe the bug
When an import statement being splitted in multiple lines (eg. because exceeding the default 80 characters with show or hide on any long import) the tool moves these lines to the end of the import list. It seems these import statements are not recognized, so they are put in afterImportLines here.
To Reproduce

For example add flutter_local_notifications as a dependency, as this package will result quite long import lines.

Import the package and let's say you want to hide a type (eg. because you have one with the same name in your current file already).
import 'package:flutter_local_notifications/flutter_local_notifications.dart' hide PendingNotificationRequest;

After saving (if you have autoformat on) or formatting (eg. with dart format . or flutter format .) this line is splitted to two, since its length is 110 characters (default and recommended max line length is 80 chars).
import 'package:flutter_local_notifications/flutter_local_notifications.dart'
    hide PendingNotificationRequest;

When running the import_sorter command, this import line "pair" is moved after all other imports.

Expected behavior
Move multiline imports to the section they belong to.
Meta Information:

Dart Version: 2.10.4 (stable) (Wed Nov 11 13:35:58 2020 +0100) on "windows_x64"
import_sorter Version: 4.4.1
Is it a Flutter project? Yes
What version of Flutter are you using (if flutter project): 1.22.5 (channel stable)

See #63


TypesSpacesFixer - add option for CS of catching multiple types of exceptions

closes https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues/6102

false SCA fail on server load

Coverage increased (+0.07%) to 93.199% when pulling 3df410fc51322a61c5597048176f6c120832f161 on SpacePossum:master_TypesSpacesFixer_catch into f45c5a08595b5d09b1aec3b284a5fc854fc9eeb2 on FriendsOfPHP:master.

Thank you @SpacePossum.