Inconsistent serialization of BigInt GraphQL scalar

🙂 Expected behavior
The GraphQL schema language supports the scalar types of String, Int, Float, Boolean, and ID.
For other types it supports custom Scalars. BigInt is one of those.
The implementation of custom Scalars are typically left to the GraphQL implementation, which in general provide some sort of coercing implementation method.
In general BigInt types are serialized to strings. One of the reasons is that JSON does not support coercion of number literals to the native BigInt type.
Other blockchain indexers that provide a GraphQL interface coerce BigInt to string.
TheGraph supports BigInt and always serialize as string.
Subsquid also supports BigInt and always serialize as string.
We should follow our schema definition and also always serialize BigInt as string.
We currently use BigInt in two locations:
"Request submitted to the application to advance its state"
type Input {
  ...
  "Timestamp associated with the input submission, as defined by the base layer's block in which it was recorded"
  timestamp: BigInt!
  "Number of the base layer block in which the input was recorded"
  blockNumber: BigInt!
  ...
}

🫠 Actual behavior
It looks like from my understanding that the server is serializing the value depending on the value itself.
If it's less than a i32 it is serializing as int. Otherwise it serializes as string.
https://github.com/cartesi/rollups-node/blob/1da90a45bf43e728b7a48e45d4dc1cf49f12f5ac/offchain/graphql-server/src/schema/scalar.rs#L123
We should not serialize conditionally on the value. Otherwise it can be very confusing for the parser, who will also need to conditionally parse without the proper context.
🧪 Minimal test case
Query the server at
https://0x9f12d4365806fc000d6555acb85c5371b464e506.sepolia.rollups.staging.cartesi.io/graphql
{
  inputs {
    edges {
      node {
        timestamp
        blockNumber
      }
    }
  }
}

🌎 Environment
Rollups 1.0.0
✔ Possible solutions
We should stick to the type definition.
If type definition is BigInt coerce as string.
If type definition is Int coerce as number.

Solved by https://github.com/cartesi/rollups/pull/232


Add Gotham

A new web framework: https://github.com/gotham-rs/gotham

see #83. The pull request is already there


GHA: packages built on Windows don't have proper version

Describe the bug
In the GitHub Actions CI build, the packages built on Mac ("nupkg.mac") have a proper version (determined via git describe --tags), but the packages build on Windows don't ("nupkg.win"). They seem to have the version of the last tag/release.
To Reproduce
As an example:

Go to https://github.com/Mapsui/Mapsui/actions/runs/4150324257
Navigate to Artifacts.
Download both.
Unzip.
Inspect the nupkg file names ...

Mac has: Mapsui.4.0.0-beta.7-89-g640c84e1c.nupkg
Win has: Mapsui.4.0.0-beta.7.nupkg
Expected behavior
Both package variants should have the same version (the one from Mac).
Additional context
It seems the problem is that the Win build uses the buildpack script to create the packages:
    - name: Build nuget packages
      run: Scripts\buildpack $(git describe --tags)

It receives the version as an argument, but apparently that version is not being used anywhere in the script.

This is something that I broke when removing the version updater. Here is a fix https://github.com/Mapsui/Mapsui/pull/1836. I tested it by running scripts\buildpack.bat 4.0.0-beta.9 from the command line and to check if the packages are in Artifacts folder with the 4.0.0-beta.9 version (they were).

Over the years the dotnet.yml has grown more complex. I think it can be simplified now that the tools have improved. The dotnet-release-nugets.yml builds a solution with only UnoUwp using msbuild as an exception. Then again the dotnet.yml also does extra checks. Some of which I may not understand yet. For example, just yesterday I had the chance to look at the SamplesMapsuiNugetReferences.ps1, a nifty solution.

Fixed via #1836. Thanks, @pauldendulk!


Feature request: Diff between history states

The full state of my game is quite large and it can be difficult to see what's changed between messages if I didn't know what I was looking for. This isn't a problem most of the time because I know what to look for, but to aid in finding unexpected bugs, it would be great to show the change between two states as well as the full state dump.

This was actually mentioned in another issue: https://github.com/elm-lang/virtual-dom/issues/49#issuecomment-261569572 but I feel it deserves it's own place for discussion.

Well.. I just learned from process-bot after I created this that:

Issues are for bugs.

So happy for you to close this and I'll take it back to slack/google groups.

This is something we'd like to do. @jinjor has something like it in his time travel project, and we have coordinated a bit on merging that into the official debugger. I'd rather not track progress on it in an issue, but hopefully that helps!


Failure during chimera handling of ...

Hi,
I am getting this error while running juicer pipeline on slurm at the mergesort step:
***! Failure during chimera handling of /gpfs/gibbs/pi/ycga/mane/at2253/wangSung/20221019_HiC/AS-FB_HiC//splits/AS-FB-HiC_AHV5HHDSX3_L001_001.fastq.gz
Based on previous error reports, I have updated gawk/awk but that did not fix the issue. Attached here is the debug folder:
https://drive.google.com/drive/folders/1iwQfT4R7f10UtHK93L7cuYIXIqmj-60e?usp=sharing
Could you please help in fixing the issue?
Thanks
Ant

I also update the gawk, but I still have the same problem!!!

Hi there,
I met the same problem. Could you kindly let me how you resolved the problem?
Best,
Lingyun

reinstall the gawk and make sure your awk is gawk
在 2022年12月28日，23:34，lychen83 @.***> 写道：

Hi there,
I met the same problem. Could you kindly let me how you resolved the problem?
Best,
Lingyun
—
Reply to this email directly, view it on GitHubhttps://github.com/aidenlab/juicer/issues/295#issuecomment-1366738309, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOVZ54MA3MUSCUUOMFHWTQ3WPRMYDANCNFSM6AAAAAARTGQL3Y.
You are receiving this because you commented.Message ID: @.***>

I reinstalled gawk but it still didn't work，so I modified the juicer.sh and run awk separately, and it works. But I still don't know why it happens!!!
source ${juiceDir}/scripts/common/countligations.sh 	if [ -f "$name$ext.sam" ]; then     echo "Skipping alignment as $name$ext.sam already exists"     else     bwa mem -SP5M $threadstring $refSeq $name1$ext $name2$ext > $name$ext.sam     if [ $? -ne 0 ]; then         echo "***! Alignment of $name1$ext $name2$ext failed."         exit 1     else         echo "(-: Align of $name$ext.sam done successfully"     fi     fi
and run
touch male.fastq_abnorm.sam male.fastq_unmapped.sam   awk -v "fname1"=male.fastq_norm.txt -v "fname2"=male.fastq_abnorm.sam -v "fname3"=male.fastq_unmapped.sam -f /ds3200_1/users_root/pengzhen/software/juicer/CPU/common/chimeric_blacklist.awk male.fastq.sam
It works successfully!!!

I reinstalled gawk but it still didn't work，so I modified the juicer.sh and run awk separately, and it works. But I still don't know why it happens!!!
source ${juiceDir}/scripts/common/countligations.sh
if [ -f "$name$ext.sam" ]; then
echo "Skipping alignment as $name$ext.sam already exists"
else
bwa mem -SP5M $threadstring $refSeq $name1$ext $name2$ext > $name$ext.sam
if [ $? -ne 0 ]; then
echo "***! Alignment of $name1$ext $name2$ext failed."
exit 1
else
echo "(-: Align of $name$ext.sam done successfully"
fi
fi
and run
touch male.fastq_abnorm.sam male.fastq_unmapped.sam
awk -v "fname1"=male.fastq_norm.txt -v "fname2"=male.fastq_abnorm.sam -v "fname3"=male.fastq_unmapped.sam -f /ds3200_1/users_root/pengzhen/software/juicer/CPU/common/chimeric_blacklist.awk male.fastq.sam
It works successfully!!!

It can happen if you run out of disk space too. you must make a bit more space :)


Add a page talking about printing to stderr in methods

This is a fairly large change. In addition to the new page, it enables
the example runner to collect stderr and puts a new stderr row into the
output table. It also changes GetExeVersion to return the version in
the directory path for PowerShell Core packages. This speeds up the dev
inner loop a lot.
Closes #24

Added reference to #29.


can’t be opened because Apple cannot check it for malicious software

I installed the Touch Bar Simulator version 4.2.0, when I open the app, it shows in warning:
“Touch Bar Simulator” can’t be opened because Apple cannot check it for malicious software.
This software needs to be updated. Contact the developer for more information.

Closing as this app is now discontinued.


feat(CX-3224): update settings header

The type of this PR is: Feat

This PR solves CX-3224
Description

Web
mWeb

@MounirDhahri I'll addredd your comments in another PR, was too fast to merge it today


Add a command for getting the type of a variable

This would be handy for implementing a Visual Studio style mouse over to show the type of a variable.

Same question here. Is there a function for "getting the type under cursor"?


signal: uclibc SA_* use c_uint type

fixed uclibc SA_* type use c_uint type.
https://github.com/rust-lang/libc/issues/3887#issuecomment-2319939888
https://github.com/rust-lang/libc/pull/3211

change to [cfg(all(target_env = "uclibc", target_arch = "mips"))]

Though if we do this:
...
We need that libc PR and change our libc dependency from the libc-0.2 branch to main

I cannot merge this PR until we switch the branch of the libc dependency to main, which won't happen soon as the main branch won't be released in the near future.

We need that libc PR and change our libc dependency from the libc-0.2 branch to main

I cannot merge this PR until we switch the branch of the libc dependency to main, which won't happen soon as the main branch won't be released in the near future.

Since this is tier 3 I can backport https://github.com/rust-lang/libc/pull/3211 once it is merge-ready. Would appreciate a sanity check of that change if you get the chance @SteveLauC.

Since this is tier 3 I can backport https://github.com/rust-lang/libc/pull/3211 once it is merge-ready.

Get it, thanks, then we can finish this PR once the backport is done.

Would appreciate a sanity check of that change if you get the chance @SteveLauC.

Unfortunately, I don't have a uClibc/mips environment, and Nix does not have a CI for that, so I cannot test it:<. But from your comment, that libc PR looks exactly right.


Update README.md

PR Description
Changed spelling of MainNet to Mainnet in README.md
Fixed Issue(s)

Perhaps the largest nit of all time, but EIP-2228 specifies the word styling of Mainnet as "Mainnet". :)
Documentation

[x] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[x] I thought about adding a changelog entry, and added one if I deemed necessary.

There seems to be some issue with CircleCI refusing to build this PR though... I'm chasing up what's going wrong there.

@ThreeMuskets12 Got this back from CircleCI support:

There are a number of reasons why a Pull Request does not trigger a build. In your case, it is likely because the user trying to trigger the build (ThreeMuskets12) is following their own fork of the parent project and not the parent project. As outlined in this support article on our Support site, if the user unfollows their own fork, and follows the original parent project instead, then their Pull Requests should trigger builds normally.

Can you give that a try and then update the branch to see if it will now trigger a build please?


Download

Can you make a realese on an apk version please I known it might sound silly

go to actions, click the latest successful build, and click on the download symbol next to the generated artifact, it's a zip file containing the apk.
the download symbol only appears if you are signed in to github
https://github.com/jiesou/Android-Screener/actions/runs/7837981759/artifacts/1232002428
this is the current one

Pls upload the apk in other site, i dont found this file to dowload, the link not work

the link in the artifact os is already expired

https://github.com/jiesou/Android-Screener/releases/tag/dev
only for test


Minimize registered Thrift processor names

Use shorter name for the registered Thrift processors. The side effect here is that a smaller number of bytes is sent over the wire.
Closes #2642

Kicked off fuill IT build

Full IT build successful


replaced check of symetrically normalized adj sum with eigenvalue check

This PR replaces the check of symetrically normalized adj sum in test_normalize_adj with an eigenvalue check. See #996

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop@e00a5e0). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             develop    #997   +/-   ##
=========================================
  Coverage           ?   84.8%
=========================================
  Files              ?      53
  Lines              ?    5303
  Branches           ?       0
=========================================
  Hits               ?    4497
  Misses             ?     806
  Partials           ?       0

Continue to review full report at Codecov.

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


Add Nutanix-specific platform types

Add types, defaults, and validations to support Nutanix platform on the Openshift installer.
Note: This PR builds on top of #1. #1 serves as a stopgap until https://github.com/openshift/api/pull/1059 gets  merged.

see https://github.com/nutanix-cloud-native/openshift-installer/pull/1


Challenge accepted

Selected Stack

Language: Node.JS
Web Server: Express 4.0
Database: InfluxDB
JavaScript Framework: Angular.JS
WebSockets Library: Primus/Engine.IO

Demo
Demo is live here: http://<IP_ADDRESS>:4000/

Hi Shahar,
I know it has been a while since this challenge statered, but we'll be more
than happy to send you some swag for your work. Can you please write to
<EMAIL_ADDRESS>and we'll see what we can arrange?
Apologies for not responding earlier.
Itay
On Thu, Jun 29, 2017, 21:34 Shahar Kedar<EMAIL_ADDRESS>wrote:

Closed #4 https://github.com/joola/the-joola-challenge/pull/4.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/joola/the-joola-challenge/pull/4#event-1144764465,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEDGCVwLYPuxwS2oqgjOfdYXn09BVqJVks5sI-5QgaJpZM4C_R50
.

--
Itay Weinberger
CEO
joo.la http://joo.la/ | GitHub http://www.github.com/joola | Twitter
http://www.twitter.com/getjoola

I'm actually pretty sure you sent me swag :)
On Thu, Jun 29, 2017 at 3:31 PM Itay Weinberger<EMAIL_ADDRESS>wrote:

Hi Shahar,
I know it has been a while since this challenge statered, but we'll be more
than happy to send you some swag for your work. Can you please write to
<EMAIL_ADDRESS>and we'll see what we can arrange?
Apologies for not responding earlier.
Itay
On Thu, Jun 29, 2017, 21:34 Shahar Kedar<EMAIL_ADDRESS>wrote:

Closed #4 https://github.com/joola/the-joola-challenge/pull/4.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/joola/the-joola-challenge/pull/4#event-1144764465,
or mute the thread
<
https://github.com/notifications/unsubscribe-auth/AEDGCVwLYPuxwS2oqgjOfdYXn09BVqJVks5sI-5QgaJpZM4C_R50
.

--
Itay Weinberger
CEO
joo.la http://joo.la/ | GitHub http://www.github.com/joola | Twitter
http://www.twitter.com/getjoola
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/joola/the-joola-challenge/pull/4#issuecomment-312126310,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAnDvz5ioLnML4sFSn0BjLm6heCK_KKxks5sJCW1gaJpZM4C_R50
.


Suggestion - add Rockhounding Chemistry-Core to Morph-o-Tool Mod Aliases

Would let the Morph-o-Tool autoconvert into the Rockhounding Core wrench when looking at Rockhounding Chemistry blocks.
rockhounding_chemistry=rockhounding_core

Done

Actually added this now lol


Typedef block types across all the things. Look at Java names as reference.

🎊 My diff is ready for review at http://codereview.cc/D2315


⚠ Bofrost.lu has degraded performance

In 63196a9, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1242 ms

Resolved: Bofrost.lu performance has improved in 11a8519 after 8 minutes.


Support Swift package without -project or -workspace

This updates the step to build and test Swift packages that don't contain an .xcworkspace or .xcodeproj file. This is enabled by setting the project_path to the path of the Package.swift file. This should resolve #148.

Hello @jamala,
Thank you for this PR.
We are sorry to let you know that Bitrise is currently focusing on Mobile Application projects. This step is part of our iOS Mobile Application support. In the case of such projects, the Project (or Workspace) path is a required input for the Step, therefore, we cannot merge your PR unfortunately.
In spite of the fact that we cannot support libraries/packages out-of-the-box, we recommend that you try your own version of this Step by referencing the Step from your repository. Please find more detailed documentation here.
You can also create your own step, please find documentation here.
If you'd like to see library/package support in our Add new app flow in the future, we have a feature request on this discuss site where you can vote on this feature.
If you have further questions, please feel free to reach out to us!
Thank you!


Configure host for file datastore URLs

Hi!
I was trying to configure Dragonfly to return full URLs, and noticed that configuring the url_host option only affects the Job#url method, but not the app.remote_url_for (using the file datastore):
require 'dragonfly'

Dragonfly.app.configure do
  url_host 'http://localhost:4567'
  datastore :file, server_root: '', root_path: 'public/dragonfly'
  verify_urls false
end

p Dragonfly.app.fetch('some-file').url # => "http://localhost:4567/W1siZiIsInNvbWUtZmlsZSJdXQ"
p Dragonfly.app.remote_url_for('some-file') # => "public/dragonfly/some-file"

(Passing a host: parameter also works for url, but to for remote_url_for)
I wanted to generate image URLs images directly pointing to the local files and serve them statically. And i wanted those to be absolute URLs instead of relative if possible.
I there a reason the url_host doesn't work on remote URLs for the file datastore? I'm probably missing something. Or, is there a way to configure that?
Thanks!

the reason is that as a rule, the remote_url is quite separate from the other urls as it comes straight from the datastore, e.g. if you configured it to use S3 storage, you definitely wouldn't want it to have the same host, so it makes sense to configure both separately.
But yes, the FileDataStore only returns relative paths at the moment.
Maybe the FileDataStore should take an option allowing the host to be specified.
In the meantime you'll have to add in the host manually I'm afraid.
By the way, if you don't want "public" to appear in the url, set "server_root" as "public"

@markevans Thanks for the thorough response!
So yes, i can see now that it makes total sense that url_host on the Dragonfly.app configuration doesn't affect the URLs of the file datastore.
You can close this issue if you prefer. Though, if you think that adding an option to the file datastore for configuring the URL host would be a worthy addition, i could give it a shot :smiley:

By the way, if you don't want "public" to appear in the url, set "server_root" as "public"

Thanks, yeah, i discovered that shortly after submitting this issue hehe.

sure if you fancy it/have time - personally I reckon the option should be "url_host", given to the file data store, if that makes sense.


Default port or not?

Javalin has used port 7000 since v1 in case no port is specified. I recently changed this to port 0, which means Javalin will start on a random available port in case you don't specify a port explicitly.
Javalin.create().start(); // before, this would start on port 7000

Any thoughts on this change?

Randomness is weird, I'd rather have a default port. Default ports has a tendency to be remembered in browsers as well when debugging as well :)

Default port makes more sense, nobody likes looking at the console to figure out the port their app is on  - but it shouldn't be 7000, it should be the HTTP-Alt port , which is 8080(or 8008). Its basically like that for most java frameworks and servers anyway, so might make sense to follow the trend?

I agree that no one likes looking at the console to find out what port an app is running on, but it's also nice if what port the app is running on is reflected in the source code of the app (or as a config option).
It's also possible to make port required 🤔

It's also possible to make port required

Maybe but in terms of "first users getting started" we have just asked them to make an extra decision. Some Javalin users could well be very new to HTTP as Javalin is very approachable which is great. In that sense I think a default port is slightly better with one less decision for people to make when they are getting started. As TareqK commented above, I'd somewhat expect a default of 8080 rather than 7000.
What was the trigger/thought to going off the default port of 7000 to random?

As someone that creates a lot of microservices, if there's going to be a default port I'd almost prefer it NOT be 8080. And if we're leaving the default port, we may as well not make a breaking change. I don't think defaulting to 8080 instead of 7000 is enough of a gain to justify a breaking change.
Yes, we're upgrading to a new major version, but as much as possible it's still good to avoid them. ESPECIALLY breaking changes that can't be caught by the compiler.
Maybe you could make another start function startOnRandomPort(). The only thing I don't like currently is that in order to start on a random port you have to use a magical integer, it's harder to discover how to do it, though if you look at the documentation for start it does specify it.
Either way, if we want a default port my vote would be no breaking changes (0 still uses a random port, default stays 7000).

What was the trigger/thought to going off the default port of 7000 to random?

I'm bothered by the fact that  Javalin.create().start(); starts the service on the completely unexpected port of 7000. It would at least make more sense to use 8080, but ideally I would like to be able to read which port an app starts on from the code. Javalin claims to be explicit and free of magic, and I see this as breaking that philosophy.
Also, as @MrThreepwood mentions, he would prefer if the port was not 8080, since he has a lot of microservices. I work with a lot of Javalin services, and I often end up with a port collision if someone hasn't changed the default port.

Maybe but in terms of "first users getting started" we have just asked them to make an extra decision. Some Javalin users could well be very new to HTTP as Javalin is very approachable which is great [edit: but there is a chance they don't know about privileged ports and what a good port should be].

The main getting-started-snippet would still be:
val app = Javalin.create().start(7000)
app.get("/") { ctx -> ctx.result("Hello World") }

But I guess some people might write out Javalin.create().start() on their own? There is one complicating factor, which is that he port is only required in case you don't supply your own jetty Server, so it would have to be enforced with a runtime exception.

Maybe you could make another start function startOnRandomPort(). The only thing I don't like currently is that in order to start on a random port you have to use a magical integer, it's harder to discover how to do it, though if you look at the documentation for start it does specify it.

We could also have startOnDefaultPort? I would be happy with how the code reads then, and wouldn't have any issue with keeping 7000.

I'm bothered by the fact that Javalin.create().start(); starts the service on the completely unexpected port of 7000.

This is the first time, and first time only. Right now the port will be a new one for each time you start Javalin. If you want to "educate" the user of making an explicit port choice you can log a INFO-message underneath the startup header where you already log that "Javalin has started on localhost:7000". It could be a simple
 "To set a different port than the default 7000, add `.start(1234)` when starting Javalin.

We could also have startOnDefaultPort? I would be happy with how the code reads then, and wouldn't have any issue with keeping 7000.

That's somewhat too explicit IMO.
I'd love for either keeping it as is or making port required, however as @rbygrave says, that might throw some off as asking for them to make a decision they don't know anything about early on.

That's somewhat too explicit IMO.

I don't agree that something can be too explicit. If the user is working with the website/docs they will copy start(port), which is fine. If the user is working in their IDE they will see
.start
.startOnDefaultPort
.startOnRandomPort

With the signatures:
/** Synchronously starts the application instance on the default port (7000). */
public Javalin startOnDefaultPort() {
    return start(7000);
}

/** Synchronously starts the application instance on a random port. */
public Javalin startOnRandomPort() {
    return start(0);
}

/**
 * Synchronously starts the application instance. Throws if no port or
 * Jetty Server has been set on the instance.
 */
public Javalin start() {

It seems more straightforward to me, but maybe I'm overthinking this.

I'm just not seeing what this solves. If there's multiple applications running on the same port you'd still need to set the port explicitly if they are running in the same environment. When you're that far into development and number of applications, you either
a. Have a convention on which port you want to run the applications on, meaning you already explicitly set them
or
b. Have a docker setup where the ports don't matter and all you use are virtual links between containers
If you have a problem with people using the same ports across applications only using .start(), I'm expecting you to have the same problem just by people doing .start(7000) instead (7000 being an example).
By having a simple .start() (defaults to 7000/8080) and one with a signature .start(portNum) you enable the ones who doesn't care about which port is default, and only want to start a simple javalin server with no more fuss. Avoiding magic integers as @MrThreepwood says would be nice, so having an explicit startOnRandomPort() would be a win.
I'd love to avoid runtime exceptions that can't be caught by the compiler with all the fun that entails.

I've checked most other major JVM servers, and they more or less agree on 8080.
Erlang servers seem to use 4000.
PHP servers use 80.
JavaScript servers (at least Express and Koa) don't have a default port.
While Javalin is inspired by express/koa, based on the reception here it's probably better to align with what people would expect of a JVM server.

My primary concern with doing something like 8080 is that that is a breaking change that is very likely only to be found in production. Upgrade Javalin version, run the tests, everything passes. Run locally, click link in logs. Push to kubernetes and now my pods are no longer exposing anything because the configured port is 7000.
If there was any practical advantage in having the port be 8080 you could argue it's worth the breaking change, but causing a breaking change that seems likely to take down production servers to better match convention seems... questionable.

I searched for javalin start on GitHub and have looked through about a hundred of the projects at random. I didn't find a single one that calls start() without a port specified, unless it was using a custom Server.
(There are some projects that call start() without a port, but they use an older version of Javalin where you had to call port(port).start())
I could of course have gotten lucky with my samples, but I'm starting to think this won't be a very dramatic change. A lot of projects changed it to 8080 too.

What do you think of making the start function fun start(port: Int?). Just don't have a default. Have both null and 0 bind to a random port.

I would really liket that, but we have to support the case where you're starting a Server that has its own custom connectors. It could be possible to change server from being a config option to being an overload on start, so you have
start(port)
start(port, host)
start(server)

But that comes with its own set of challenges (we need to be careful to not introduce a hard dependency on Jetty).


⚠ Jenkins Plugins Artifactory has degraded performance

In cc227b3, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 2532 ms

Resolved: Jenkins Plugins Artifactory performance has improved in 1fa9fca after 1 hour, 36 minutes.


What happens to transactions that contain a blob that will not fit in the maximum data square?

Context
https://github.com/celestiaorg/celestia-app/issues/2108
Problem
Consensus nodes may not reject transactions that contain a blob that is too large to fit in the maximum data square. As a result, the transaction may sit in the mempool until it eventually expires (depends on mepool config). See below for mempool config.
Proposal
Explore if the mempool will reject PFB transactions that contain a blob that will not fit in the maximum data square. If it doesn't, consider:
Option A
Add a check to ValidateBasic on a transaction that verifies that the blob size is < the maximum possible blob size in a data square.
Option B
Decrease max_tx_bytes to the size of a tx that contains the largest blob that can fit in the largest data square.
Mempool config
#######################################################
###          Mempool Configuration Option          ###
#######################################################
[mempool]

# Mempool version to use:
#   1) "v0" - (default) FIFO mempool.
#   2) "v1" - prioritized mempool.
version = "v1"

recheck = true
broadcast = true
wal_dir = ""

# Maximum number of transactions in the mempool
size = 5000

# Limit the total size of all txs in the mempool.
# This only accounts for raw transactions (e.g. given 1MB transactions and
# max_txs_bytes=5MB, mempool will only accept 5 transactions).
max_txs_bytes =<PHONE_NUMBER>

# Size of the cache (used to filter transactions we saw earlier) in transactions
cache_size = 10000

# Do not remove invalid transactions from the cache (default: false)
# Set to true if it's not possible for any invalid transaction to become valid
# again in the future.
keep-invalid-txs-in-cache = true

# Maximum size of a single transaction.
# NOTE: the max size of a tx transmitted over the network is {max_tx_bytes}.
max_tx_bytes = 2097152

# Maximum size of a batch of transactions to send to a peer
# Including space needed by encoding (one varint per transaction).
# XXX: Unused due to https://github.com/tendermint/tendermint/issues/5796
max_batch_bytes = 0

# ttl-duration, if non-zero, defines the maximum amount of time a transaction
# can exist for in the mempool.
#
# Note, if ttl-num-blocks is also defined, a transaction will be removed if it
# has existed in the mempool at least ttl-num-blocks number of blocks or if it's
# insertion time into the mempool is beyond ttl-duration.
ttl-duration = "0s"

# ttl-num-blocks, if non-zero, defines the maximum number of blocks a transaction
# can exist for in the mempool.
#
# Note, if ttl-duration is also defined, a transaction will be removed if it
# has existed in the mempool at least ttl-num-blocks number of blocks or if
# it's insertion time into the mempool is beyond ttl-duration.
ttl-num-blocks = 15

Since there isn't a versioned constant for the maximum supported blob size, it must be computed based on a number of other parameters (see https://github.com/celestiaorg/celestia-app/issues/2108). Since these parameters require access to the state, option A must be a stateful check.

I started working on validating that blobs are < max blob size in https://github.com/rootulp/celestia-app/tree/rp/improve-too-big-blob which is based on top of #2187

Option A makes a lot of sense, since this will get hit before even submitting a blob. Do we also have an option C (no mutually exclusive to A!), where we add an ante handler that checks the the size of the blob using the stateful parameters? This will get hit upon submitting a blobtx and when we are gossiping blobs


Adding drop down menu for Doc to reflect the version of react-native

Would it make sense to add something(Drop down menu as an example) to doc, so developers can change the version of doc which reflects the version that they are using? I found myself reading doc and implementing one feature and realizing, that feature is not available in my current version of react-native.

@brentvatne dupe of #1531

thanks @browniefed. I'm closing this.


Stream config refactor

Refactor the stream config so that any stream can be plugged into pinot realtime.
References to kafka specific properties have been moved into a KafkaLowLevelStreamConfig and KafkaHighLevelStreamConfig.
The StreamConfig will only contain the properties which are applicable to any stream

_type (eg. kafka)
_topicName (topic name)
_consumerTypes (highlevel or lowlevel)
_consumerFactoryClassName
_offsetCriteria
_decoderClass
_decoderProperties
_connectionTimeoutMillis
_fetchTimeoutMillis
_flushThresholdRows
_flushThresholdTimeMillis
_flushSegmentDesiredSizeBytes

Kafka specific properties have been pulled into
KafkaLowLevelStreamConfig

_kafkaTopicName
_bootstrapHosts

KafkaHighLevelStreamConfig

_kafkaTopicName
_groupId
_zkBrokerUrl
_kafkaConsumerProperties

Any stream implementation can create their own LowLevel/HighLevel StreamConfig to wrap stream specific properties. These specific properties can be used in the stream specific consumers, just  like KafkaLowLevelStreamConfig is used in KafkaPartitionLevelConsumer.
The properties should be provided as
"streamType": "myStream",
"stream.myStream.topic.name": "MyTopicName",
"stream.myStream.consumer.type": "lowlevel",
"stream.myStream.consumer.factory.class.name": "com.linkedin.pinot.core.realtime.stream.impl.myStream.MyStreamConsumerFactory",
"stream.myStream.consumer.prop.auto.offset.reset": "largest",
"stream.myStream.decoder.class.name": "com.linkedin.pinot.core.realtime.stream.impl.kafka.MyStreamAvroDecoder",
"stream.myStream.decoder.prop.prop1": "a decoder property for myStream",
"realtime.segment.flush.threshold.time": "12h",
"realtime.segment.flush.threshold.size": "500000",
"stream.myStream.additional.property": "xyz",
"another.additional.property": "pqr"
The stream will have to implement their own

Stream specific StreamConfig wrappers
StreamConsumerFactory which will provide the StreamLevelConsumer, PartitionLevelConsumer and StreamMetadataProvider
StreamMessageDecoder and MessageBatch

The example implementation in the code is for kafka simple stream:

KafkaHighLevelStreamConfig and KafkaLowLevelStreamConfig are the stream specific StreamConfig wrappers
SimpleConsumerFactory is the stream consumer factory which supplies KafkaStreamLevelConsumer, KafkaPartitionLevelConsumer, KafkaStreamMetadataProvider
KafkaAvroMessageDecoder and KafkaJSONMessageDecoder are the decoders and SimpleMessageBatch is the MessageBatch implementation

Linking to https://github.com/linkedin/pinot/issues/2583

Codecov Report

Merging #3364 into master will decrease coverage by 0.03%.
The diff coverage is 86.55%.

@@             Coverage Diff              @@
##             master    #3364      +/-   ##
============================================
- Coverage     70.66%   70.63%   -0.04%
  Complexity        4        4
============================================
  Files           986      987       +1
  Lines         45444    45423      -21
  Branches       6098     6089       -9
============================================
- Hits          32112    32083      -29
- Misses        11204    11220      +16
+ Partials       2128     2120       -8

Impacted Files
Coverage Δ
Complexity Δ

...ot/core/realtime/stream/StreamConsumerFactory.java
100% <ø> (ø)
0 <0> (ø)
:arrow_down:

...core/realtime/impl/kafka/KafkaConsumerManager.java
59.25% <100%> (+1.56%)
0 <0> (ø)
:arrow_down:

...ore/realtime/impl/kafka/SimpleConsumerFactory.java
100% <100%> (ø)
0 <0> (ø)
:arrow_down:

...realtime/stream/StreamConsumerFactoryProvider.java
62.5% <100%> (ø)
0 <0> (ø)
:arrow_down:

...re/realtime/impl/kafka/KafkaConnectionHandler.java
68.75% <100%> (-0.88%)
0 <0> (ø)

.../realtime/segment/FlushThresholdUpdateManager.java
100% <100%> (ø)
0 <0> (ø)
:arrow_down:

...realtime/impl/kafka/KafkaLowLevelStreamConfig.java
50% <50%> (ø)
0 <0> (?)

...ealtime/impl/kafka/KafkaHighLevelStreamConfig.java
74.07% <74.07%> (ø)
0 <0> (?)

...re/realtime/stream/PartitionLevelStreamConfig.java
76% <76%> (ø)
0 <0> (?)

...manager/realtime/HLRealtimeSegmentDataManager.java
74.64% <83.33%> (-2.36%)
0 <0> (ø)

... and 35 more

Continue to review full report at Codecov.

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


compliance: remove compliance CRD from deploy/static and helm

Perhaps we should not apply the CRDs for compliance on the cluster while we are not supporting it. It might be misleading.

@chen-keinan  wdyt?

ok, can be removed for now.


BGP plugin permission configuration support

Is your feature request related to a problem? Please describe.
NetBox BGP plugin lacks permission configuration and is only available to users with superuser permissions. In our case we use group permissions to assign specific permissions to them (e.g. some users have only read only access, some do not have access to secrets etc.). While using BGP plugin it is only possible to assign all (superuser) or nothing.
Describe the solution you'd like
NetBox plugins support permission management so it should be possible to add support for that to BGP plugin.
Describe alternatives you've considered
There aren't really any other alternatives besides giving full access to users that need any access to BGP plugin.
Additional context
https://ttl255.com/developing-netbox-plugin-part-5-permissions-and-api/

Hi @karlism ! The plugin supports NetBox permissions mechanism which allows you to hide actions (view, add, change, delete) to any object. All you need to do is add permissions in the admin interface and append it to users or groups.

Thanks, I've found where I can configure permissions!


chore: configure Prettier and EditorConfig for consistent formatting

Configure Prettier and EditorConfig for Consistent README Formatting
Description
This configuration introduces Prettier and EditorConfig to enforce consistent formatting standards.
Changes Made:

Prettier: Added .prettierrc file
EditorConfig: Added new .editorconfig file
Reformatted the README.md file to comply with these new formatting rules.

Why These Changes are Necessary
Consistent formatting improves readability and reduces friction when working on documentation. By automating the enforcement of style rules, contributors can ensure documentation stays clean and standardized, regardless of the editor or environment they use.
Impact

No functional code changes: This PR strictly focuses on formatting and tooling, ensuring a consistent style across the documentation.
Improved developer experience: Automatic formatting saves time and reduces the likelihood of errors caused by manual formatting.

Checklist

[x] Added Prettier configuration
[x] Added EditorConfig configuration
[x] Reformatted README.md according to the new formatting rules

How to Test

Install Prettier using the provided configuration.
Ensure your editor respects the EditorConfig settings.
Run Prettier to check that the formatting is applied correctly.

Hi @ryanmcdermott,
Just created this PR for formatting the readme file. I will create some additional PRs for adding new features and probably a portuguese of Portugal version, and this will help to mantain consistency IMHO. What do you think?


Format PR comment

Signed-off-by: Gong Su<EMAIL_ADDRESS>

Jenkins Linux s390x Build #290 [push] Merge pull request #27 f... started at 08:45

Jenkins Linux amd64 Build #59 [push] Merge pull request #27 f... started at 07:45

Jenkins Linux s390x Build #290 [push] Merge pull request #27 f... passed after 38 min

Jenkins Linux amd64 Build #59 [push] Merge pull request #27 f... passed after 44 min

publish this please


Bonobo for Ekaterina Draft Dirty

Bonobo for Ekaterina Draft Dirty

@lyriccoder can you please remove unused (commented) code and make the PR "clean"?

I am doing it right now

@KatGarmash done, we can discuss it


Fix sort order of product types and add NH alternate

Fixes #833
Should be coordinated with changes to pds-webtools (rules/NHxxxx_xxxx.py) made on 11/27/2019.
Only affects newly imported databases

The new order has been approved by Mark.


SR-2100 - Add support for multi-lib systems

SR-2100 - Add support for multi-lib systems
Use the LLVM_LIBDIR_SUFFIX provided by LLVM project itself to control the creation of a suffix
for /lib dir under Linux system, so systems that uses lib64 folder insted of lib folder for 64-bit
libraries can use Swift without patches.

@capent hello, can you please rebase this so I can merge it?

@dcci Sure! I will do it now.

@capent I'm afraid the branch is not in a mergeable state because there are conflicts (in tools/repl/swift/CMakeLists.txt)
What I do to fix is:
git rebase -i master
git push -f <branch

Please let me know if you still have trouble. Thanks again for your contribution.

@dcci Well... i managed to rebase it to just two commits, is this good enough?

There's something weird in your commits:
SR-2100 - Adapting llbuild for multilib - general framework

Maybe open a new pull request on a new branch with this change?

@dcci You are right, now that i took notice that back in 2017 i made one commit with the wrong message. The problem that i have is: this change is old, and it has more than 700 intermediate commits between changes. Git is failing to rewind the history to squash it cleanly, and cherry picking the only for commits that i need (828b3f4, 6ef3ee3, 8487f43, 6ca677d) onto the 8b93add is not working neither.
I still have the original repository here, because i don't dare to do a rebase without backups. I can restore, and try again. If this last attempt fail i will do a new pull request. I don't want to pollute you guys with needless pull requests.

@capent asi this is a single line change, I recommend to close this, and apply the change on a new clean branch.

@dcci Ok! Closing it. In a few minutes i will reapply the pull request from a clean branch.


Error using web client

Hello,
Which version of excelastic are you using? Could you provide a file that fails to import?
There have been some issues with the counting of columns. There are multiple ways to determine the column count and each solution fails in different special cases. It would be nice to fix this for good.
Thanks for submitting an issue.

Any updates on this?

No feedback, closing,


tuple index out of range in NstepBilstm

I'm trying to use NStepLSTM like as follows. I Input 6 images and try to extract feature from pre-trained model. Also use BiLSTM I try to calculate similarity of first image and last image. Lastly I got this errror. My code is like this.
Traceback (most recent call last):
  File "train2.py", line 105, in <module>
    main()
  File "train2.py", line 94, in main
    trainer.run()
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/chainer/training/trainer.py", line 348, in run
    six.reraise(*exc_info)
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/six.py", line 693, in reraise
    raise value
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/chainer/training/trainer.py", line 315, in run
    update()
  File "/var/docker/share/madono/summer/siamese_for_amt/standard_updater.py", line 165, in update
    self.update_core()
  File "/var/docker/share/madono/summer/siamese_for_amt/standard_updater.py", line 177, in update_core
    optimizer.update(loss_func, *in_arrays)
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/chainer/optimizer.py", line 680, in update
    loss = lossfun(*args, **kwds)
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/chainer/link.py", line 242, in __call__
    out = forward(*args, **kwargs)
  File "/var/docker/share/madono/summer/siamese_for_amt/Classifier.py", line 58, in forward
    self.loss = self.lossfun(yi, ti)
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/chainer/functions/loss/softmax_cross_entropy.py", line 412, in softmax_cross_entropy
    loss, = func.apply((x, t))
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/chainer/function_node.py", line 245, in apply
    self._check_data_type_forward(in_data)
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/chainer/function_node.py", line 322, in _check_data_type_forward
    self.check_type_forward(in_type)
  File "/root/.pyenv/versions/anaconda3-5.2.0/lib/python3.6/site-packages/chainer/functions/loss/softmax_cross_entropy.py", line 78, in check_type_forward
    x_type.shape[0] == t_type.shape[0],
IndexError: tuple index out of range

import argparse
import numpy
import cupy
import chainer
import chainer.functions as F
import chainer.links as L

class BiLSTMAMT(chainer.Chain):

    def __init__(self):
        super(BiLSTMAMT, self).__init__()
        with self.init_scope():
          self.feature_extract = L.ResNet152Layers()
         # self.temporal = L.NStepBiLSTM(n_layers=5, in_size=10,
          #            out_size=20, dropout=0.5)
          self.temporal = L.NStepLSTM(5,1000,10,dropout=0.5)
          self.fc1 = L.Linear(1000,2)
          self.trans_fc = L.Linear(20,10)
          self.fc2 = L.Linear(10, 2)

    def __call__(self,x):
        layer = None
        hx = None
        cx = None
        xs_f = []
        for i in range(6):
          h1 = self.feature_extract(x[:,i,:,:,:].reshape(4,3,96,96),layers=['fc6'])['fc6']
          h1.unchain_backward()
          xs_f.append(h1)

        hy, cy, ys = self.temporal(hx=hx, cx=cx, xs=xs_f)
        h3 = [F.softmax(self.fc2(item)) for item in ys]
        return h3

And I calculate my loss like
self.y = None
        self.loss = None
        self.accuracy = None

        self.y = self.predictor(*args, **kwargs)
#        self.loss = self.lossfun(self.y, t) + chainer.functions.hinge(self.y,t)
#        print(self.loss)
        for yi, ti in zip(self.y[0], t):
          if self.loss is not None:
            self.loss += self.lossfun(yi, ti)
          else:
            print(yi, ti)

According to the contribution guide, any general question is preferred to be raised at the StackOverflow with a chainer tag.
Warning

If you have a question on usages of Chainer, it is highly recommended to send a post to
StackOverflow or Chainer User Group instead of the issue tracker. The issue tracker is not a place
to share knowledge on practices. We may suggest these places and immediately close how-to
question issues.

@fiarabbit I didn't know that, thanks! I'll ask it on StackOverflow or Chainer User Group instead of the issue tracker!


Importing files in directories above me

When I'm trying to import a file with a path relative to the file which will add the <Import> element I've always felt comfortable using relative paths. For example if I want to import the Directory.Build.props file in the directory above the current file I will do the following:
<Import Project="..\Directory.Build.props" />

This functions and hasn't had any negative consequences. At least none that I'm aware of. Yet when I see MSBuild documentation or digging through older build files I often see the following pattern:
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />

This seems needlessly complex. Yet this is done often enough that it must be for a reason. What scenario is this protecting against that I'm missing with my simple import elements?

Both the GetPathOfFileAbove and GetDirectoryNameOfFileAbove functions are recursive and keep going up the tree until it finds a file. Property Functions
If you know that your Directory.Build.props file is in the parent directory, then your explicit releative import is fine, but it means you have to go through your project and change them all if you insert a sub-directory lever and/or (re)move the props file (perhaps to solution level rather than a group level).


Move deleteObjects function to a NSManagedObjectContext extension

Pull request checklist

[x] All tests pass. Demo project builds and runs.
[x] I have resolved any merge conflicts.
[x] I have followed the coding style, and reviewed the contributing guidelines.

This fixes the deleteObjects part of issue #69.
What's in this pull request?

deleteObjects is now an extension's method on NSManagedObjectContext
extension lives in a dedicated CoreDataExtensions.swift file.

🎉
Looks like conflicts, so github can't merge automatically. mind resolving? 😄

Done 😊

[Current coverage][cc-pull] is 94.36%

Merging [#76][cc-pull] into [develop][cc-base-branch] will not change coverage

@@            develop        #76   diff @@
==========================================
  Files            27         28     +1
  Lines          1931       1931
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits           1822       1822
  Misses          109        109
  Partials          0          0

Powered by Codecov. Last updated by 222eeb4
[cc-base-branch]: https://codecov.io/gh/jessesquires/JSQCoreDataKit/branch/develop?src=pr
[cc-pull]: https://codecov.io/gh/jessesquires/JSQCoreDataKit/pull/76?src=pr

🎉


Service created using java-cdi-archetype throws KubernetesClientException

I used the redhat branch to create a sample service at https://github.com/dhirajsb/java-camel-cdi-example
Building it throws an exception shown at https://gist.github.com/dhirajsb/95e91b83470601771de3

if this is only a redhat issue then please log the ticket in the product issue tracker


[IMPROVEMENT] Longhorn CLI supports SLES micro

Is your improvement request related to a feature? Please describe (👍 if you like this request)
When testing Longhorn issue #9182, I discovered that the Longhorn CLI does not support SLES Micro, and I encountered an error.
ryao@ryao-laptop:~/Desktop> kubectl -n default logs longhorn-preflight-installer-dfclt -c init-longhornctl
time="2024-08-20T03:31:36Z" level=info msg="Updating package list"
time="2024-08-20T03:31:52Z" level=info msg="Successfully updated package list"
time="2024-08-20T03:31:52Z" level=info msg="Starting service iscsid"
time="2024-08-20T03:31:52Z" level=error msg="Failed to run preflight installer: failed to start service iscsid: failed to execute: nsenter [--mount=/host/proc/30560/ns/mnt --net=/host/proc/30560/ns/net systemctl -q enable iscsid], output , stderr Failed to enable unit: Unit file iscsid.service does not exist.\n: exit status 1"

Describe the solution you'd like
Longhorn CLI supports SLES micro

[ ] Support the installation by CLI
[ ] CLI provides the hints such as reboot required after installation.

Describe alternatives you've considered
N/A
Additional context
https://github.com/longhorn/longhorn/issues/9182

Support the installation by CLI

Does this PR https://github.com/longhorn/cli/pull/72 fix the issue?

CLI provides the hints such as reboot required after installation.

Have the document here https://github.com/longhorn/cli/pull/72

Does this PR longhorn/cli#72 fix the issue?
I tested it after longhorn/cli#72 was merged.


Training transition model is too resource intensive, uses too much memory. Possible bug

After training the autoencode, i try to train the transition model as described by the same document.
using
./server.py --time 60 --batch 64

and
./train_generative_model.py transition --batch 64 --name transition

on two different tmux sessions.
Soon (a minute) after running the training command, the process is killed because my memory and swap (16 + 10 GB) are used up, and I'm still on epoch one.
Here is a dump:
/train_generative_model.py transition --batch 64 --name transition                                                                                [0/0]
Using TensorFlow backend.
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcurand.so locally
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:925] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_init.cc:102] Found device 0 with properties:
name: GeForce GTX 1060 6GB
major: 6 minor: 1 memoryClockRate (GHz) 1.7085
pciBusID 0000:01:00.0
Total memory: 5.93GiB
Free memory: 5.58GiB
I tensorflow/core/common_runtime/gpu/gpu_init.cc:126] DMA: 0
I tensorflow/core/common_runtime/gpu/gpu_init.cc:136] 0:   Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:838] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1060 6GB, pci bus id: 0000:01:00.0)
T.shape:  (64, 14, 512)
Transition variables:
transition/dreamyrnn_1_W:0
transition/dreamyrnn_1_U:0
transition/dreamyrnn_1_b:0
transition/dreamyrnn_1_V:0
transition/dreamyrnn_1_ext_b:0
Epoch 1/200
Killed

it is super resource intensive yes. I saw elsewhere that Keras does a lot of memory leaks. I used to have a tensorflow only implementation that seemed lighter. But it was less convenient, that was why I opted for Keras in the release.

@kamal94 : Were you able to resolve that issue? I am having the same problem and my train fails sometimes on epoch 1/200 or 2/200 and never goes beyond that. Any suggestions??

how do you train the train_generative_model.py autoencoder successfully ,i meet some difficuty , have to doing somehting in code?

Have you solved this issue? I am having the same problem and my train fails sometimes on epoch 10/200 or 40/200 and never goes beyond that. Any suggestions?


moved badges to the top and added some more

Description
I have move the badges to the top and added some badges with the links related to them in the README.md file, after clicking on them the user will be redirected to the related section/web page.
This fixes #408
Type of change

[x] New feature (non-breaking change which adds functionality)
[x] This change requires a documentation update

Explain the Testing instructions
Tested and verified manually.
Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

Screenshots
Original

Updated

@Umesh-01  thanks, are you LGMSOC participant?!

@Umesh-01 thanks, are you LGMSOC participant?!

Yes @himanshu007-creator , I am a LGMSOC participant...


Frosted screen after latest Update

Does this issue occur when all extensions are disabled?: Yes/No

Version: 1.91.1 (user setup)
Commit: f1e16e1e6214d7c44d078b1f0607b2388f29d729
Date: 2024-07-09T22:06:49.809Z
Electron: 29.4.0
ElectronBuildId: 9728852
Chromium: 122.0.6261.156
Node.js: 20.9.0
V8: 12.2.281.27-electron.0
OS: Windows_NT x64 10.0.22631
VScode screen turns to frosted screen if left idle.

Merging to https://github.com/microsoft/vscode/issues/124226
Please disable hw acceleration in the application as workaround,
* Command Palette search for "Configure Runtime Arguments"
* Set disable-hardware-acceleration: true
* Restart


iOS not receiving push notifications (iPhone 15 Pro, iOS 17.0.2)

:lady_beetle: Describe the bug
I've setup ntfy using docker compose and I am unable to receive push notifications.
:computer: Components impacted
iOS App
:crystal_ball: Additional context
For both the base url in the server.yml config as well as the default server in the iOS app I have tried using my local ip address both with and without the port (80) prefixed with http://. When I go into the app and subscribe to a topic manually refreshing the topic correctly shows me notifications for that topic. In my server.yml file I uncommented the upstream line for iOS users. I've noticed that when I try to send a test notification in the app and refresh the test notification does appear but a push notification is never sent (I'm not sure if this is intentional). I have enabled push notifications in the app (I do have scheduled summary for other apps but I enabled immediate delivery for the ntfy app).
Please let me know if there's any other information I can provide. Thank you for all of your hard work developing ntfy, it looks incredible and I'm excited to start using it!

Same thing. But I use a different port for the app, if it matters (hopefully not).
The ntfy is running in docker with ports "9876:80", so inside a container it is still listening on 80. For base-url and server address I set http://my.dns.com:9876. Message flow is working correctly, but pushes do not work.

I try to send a test notification in the app
yes it is intentional, the push notification will not be sent to the device that send the notification
try running this in a terminal on other device you have, or send the test notification via the web interface
it should trigger the push notification on your phone

curl -d "Hi" <your ntfy url>/<topic>

the push notification will not be sent to the device that send the notification

Absolutely untrue.
Try sending a test notification from the application clicking ... in top right corner -> Send test notification. My device (iOS) gets the notification afterwards.
(No, I have not solved the issue with self-hosted servce, I used https://ntfy.sh server for this test case)

the push notification will not be sent to the device that send the notification

Absolutely untrue. Try sending a test notification from the application clicking ... in top right corner -> Send test notification. My device (iOS) gets the notification afterwards. (No, I have not solved the issue with self-hosted servce, I used https://ntfy.sh server for this test case)

I am able to get the notification now, not sure why I was able to reproduce what OP is saying earlier today
I'm on a self hosted server and it works, I use a reverse proxy to expose the service

Same issue here, no push notifications

Same happened to me, after I upgraded to and iPhone15….
Once I removed the ntfy app, deleted all data and then downloaded it again from the AppStore, confirmed that I want to receive messages, everything was working again as it should.
I assume that the restore/transfer messed up the internal push identifies…

I am still facing the same issue. I do not receive push notifications on iOS 17.0.1 nor on iOS 17.0.2. If I refresh manually in the app, they do show up. I tried reinstalling as @ctschach suggested but still nothing unfortunately.
I am also self hosting and modified config to use upsteam-base-url: https://ntfy.sh/
Similar to @Aspect13, I also use a different port on host as port 80 is being used by another service. The notifications work as expected on my domain on the desktop web browser with Cloudflare Tunnel.
Has anyone found a fix yet?

@Trystan34 I noticed that you have ssl setup.
My server listens on 80 (http) not 443 (https) could this be the case?
I'm still having the issue, my config seems to be fine in terms of base-url and upsteam-base-url

@Aspect13 My server listens on port 8080 (http) not SSL but due to the one of the useful features of CloudFlare, it provides a toggle for auto SSL encryption to the domain even though the actual NTFY server is listening on HTTP.
Originally I had my base-url set to the static ip of my Rasberry Pi but I did not receive the notifications, since changing it to my domain with https (even though I do not have HTTPS enabled in the ntfy server.yml) it works now.

Same happened to me, after I upgraded to and iPhone15….
Once I removed the ntfy app, deleted all data and then downloaded it again from the AppStore, confirmed that I want to receive messages, everything was working again as it should.
I assume that the restore/transfer messed up the internal push identifies…

Ditto: after migrating to a new iPhone using Quick Start transfer push notifications didn't work on the new phone, but after deleting and re-installing the app they worked again.

Using Docker Env variables should work too, right ?
 ntfy:
    image: binwiederhier/ntfy:${NTFY_VERSION}
    container_name: ntfy
    command:
      - serve
    environment:
        TZ: "Europe/London"
        NTFY_BASE_URL: "https://${NTFY_FQDN}"
        NTFY_UPSTREAM_BASE_URL: "https://ntfy.sh" # Needed for iOS to work
        NTFY_CACHE_FILE: "/var/cache/ntfy/cache.db"
        NTFY_BEHIND_PROXY: "true"
        NTFY_AUTH_FILE: "/var/cache/ntfy/user.db"
        NTFY_AUTH_DEFAULT_ACCESS: "deny-all"
        NTFY_USER: ${NTFY_USER}
        NTFY_ATTACHMENT_CACHE_DIR: "/var/cache/ntfy/attachments"
        NTFY_WEB_ROOT: "disable"
    user: 1000:1000 # optional: replace with your own user/group or uid/gid
    ```

I have been trying to find out for days what my notification problem caused , but I think it is rather straight forward. I am using an add blocker (for me a PiHole) which blocks the firebase URL “firebaselogging-pa.googleapis.com”.
Once whitelisting this one, it solved all my problems… 😬.
So pay attention to any dns filtering, hopefully this helps someone!

So just that I understand this correctly, on the Nfty server:
        NTFY_BASE_URL: "https://myntfy.com"
        NTFY_UPSTREAM_BASE_URL: "https://ntfy.sh"

What are the settings on the ios app ?
Default server: https://ntfy.sh but when you add topic you specify your server https://myntfy.com topic lets say: 'test' ?

That is mostly correct, only difference is default server is myntfy.com on iOS.
Environment: ntfy in docker, traefik for exposing through ssl, iOS en iPadOS devices, working server.yml file
Tested:

self hosted, via IP address, no ssl, no traefik
self hosted, via dns name and traefik, with ssl
ntfy.sh !
switches in the server.yml file

All of the above (plus switching default servers) do get the test messages through on the iOS devices after pulling down, forcing refresh, in the apps. However, the notifications simply didn’t get through at all.
Switching off PiHole filtering made the notifications for new messages appear instantly (depending on the priority of the test messages, low priority I didn’t wait for, but 3 default prio or higher, direct results). Blocking off the firebase url was occurring when PiHole was switched on again.
Self hosting problem? No, I also used a fresh app install and only defined ntfy.sh/mytopic, same problem.
And now also solved.

well my confusion here is statement from the author:
The upstream-base-url must be configured to match exactly what you have configured as a default base URL in your iOS app. Otherwise messages will not arrive at all. See https://docs.ntfy.sh/config/#ios-instant-notifications
So my understanding is that if you point
NTFY_UPSTREAM_BASE_URL: "https://ntfy.sh"
(as suggested)
in the iOS you also have to set the base URL to
"https://ntfy.sh"
unless I get this totally wrong.

I read it the same as you do, but for me it isn’t a requirement…
Some more test results:

Removed the app, reinstall and to make it work in 1 go = disable PiHole and start the app.
Once the app is working it keeps on working even with PiHole enabled without any extra whitelisting, also with the app restarted. Will see if it stays working after some days, but most likely it will.
Remove the app again, reinstall, PiHole active and no whitelisting, nothing comes through. Disable PiHole, and it comes alive again and continues to work, also after enabling PiHole again.

There is some activation/enabling/registration happening, as once it is working, it continues to work: 1 iOS device I didn’t change/touch during the testing and that one continues to receive all notifications during testing. I will also check over a longer period whether it is related to some dns caching…
So, at this moment, I am sure it is related to the following 4 URL’s (all of them or any combination of them):

firebaselogging-pa.googleapis.com
firebaseinstallations.googleapis.com
region1.app-measurement.com
fcmtoken.googleapis.com

well my confusion here is statement from the author:
The upstream-base-url must be configured to match exactly what you have configured as a default base URL in your iOS app. Otherwise messages will not arrive at all. See https://docs.ntfy.sh/config/#ios-instant-notifications
So my understanding is that if you point NTFY_UPSTREAM_BASE_URL: "https://ntfy.sh" (as suggested)
in the iOS you also have to set the base URL to "https://ntfy.sh"
unless I get this totally wrong.

Where did you see that? The default server in iOS needs to exactly match base-url on the server, not upstream-base-url. Make sure they both have https:// and that neither has a trailing /

@wunter8
https://github.com/binwiederhier/ntfy/issues/880#issuecomment-1828949447

Got it. I'm pretty sure that was a typo. The link I included to the docs says what I said:

Ensure that the URL you set in base-url matches exactly what you set the Default Server in iOS to

I had the same issue as OP, but thanks to this thread, I was able to solve it: My base-url was http://ntfy.example.com (note the missing "s" at "http"). Other set options are listen-http: "localhost:8080", behind-proxy: true. As you can see, my server is configured to run on localhost:8080 without https. Now my apache2 is configured as virtual host for my ntfy.example.com, listening on port 80 and 443, forwarding requests from 80 to 443 (I got this configuration from the documentation) and talking to the service over localhost:8080.
Leaving the "s" in my base-url made the server work basically, but no iOS push was working. So I tried adding the "s" to the base-url and voila ... iOS push is working!

Hello there ! can you share your conf files : docker-compose.yml, server.yml and nginx conf file ?

Hello there ! can you share your conf files : docker-compose.yml, server.yml and nginx conf file ?

I'm running it on a Linux VPS, no docker or anything, here are the confs used:
$ cat /etc/apache2/sites-available/ntfy.conf

<VirtualHost *:80>
    ServerName ntfy.example.com

    # Proxy connections to ntfy (requires "a2enmod proxy proxy_http")
    ProxyPass / http://<IP_ADDRESS>:8080/ upgrade=websocket
    ProxyPassReverse / http://<IP_ADDRESS>:8080/

    SetEnv proxy-nokeepalive 1
    SetEnv proxy-sendchunked 1

    # Higher than the max message size of 4096 bytes
    LimitRequestBody 102400

    # Redirect HTTP to HTTPS, but only for GET topic addresses, since we want
    # it to work with curl without the annoying https:// prefix (requires "a2enmod alias")
    <If "%{REQUEST_METHOD} == 'GET'">
        RedirectMatch permanent "^/([-_A-Za-z0-9]{0,64})$" "https://%{SERVER_NAME}/$1"
    </If>

</VirtualHost>

<VirtualHost *:443>
    ServerName ntfy.example.com

    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/example.com_ssl_certificate.cer
    SSLCertificateKeyFile /etc/apache2/ssl/_.example.com_private_key.key

    # Proxy connections to ntfy (requires "a2enmod proxy proxy_http")
    ProxyPass / http://<IP_ADDRESS>:8080/ upgrade=websocket
    ProxyPassReverse / http://<IP_ADDRESS>:8080/

    SetEnv proxy-nokeepalive 1
    SetEnv proxy-sendchunked 1

    # Higher than the max message size of 4096 bytes
    LimitRequestBody 102400

</VirtualHost>

$ egrep -v '(^#|^$)' /etc/ntfy/server.yml

base-url: https://ntfy.example.com
listen-http: "localhost:8080"
auth-file: /var/lib/ntfy/user.db
auth-default-access: "deny-all"
behind-proxy: true
upstream-base-url: "https://ntfy.sh"

Thank’s @roemer2201  I whish this will helps, I found my way just on turning my firewall rules down from the web hosting service, I have to dig it more for the moment. Hope this can helps. If requested I can share my conf I’m using docker compose, nginx.
I supposed the Poll request getting blocked ..

How i get Life Notifications
version: "3"

services:
  ntfy:
    image: binwiederhier/ntfy
    container_name: ntfy
    command:
      - serve
    environment:
      TZ: "America/New_York"
      NTFY_BASE_URL: "http://{ip}:8080"
      NTFY_UPSTREAM_BASE_URL: "https://ntfy.sh"
    volumes:
      - /var/cache/ntfy:/var/cache/ntfy
      - /etc/ntfy:/etc/ntfy
    ports:
      - "8080:80"
    restart: always

on IOS ntfy app

go to settings
change default server to match NTFY_BASE_URL
subscribe to a topic
you now get live notifications


vcpkgmetricsuploader is detected as SONAR.PSDownloader!g1 by Symantec Endpoint Protection

The exe gets quarantined.
Using Windows 7 x64. Symantec Endpoint Protection 14.2 build 1031

This is good to know, although I am not sure what to do about it.
More information on the risk: https://www.symantec.com/security-center/writeup/2017-032721-5748-99

Same issue with https://github.com/Microsoft/vcpkg/issues/3345.

I just installed the current vcpkg and encountered this as well.  I've following this thread and #3345.   I see these closed but don't see any resolution.
What I do see is that Norton is very, very unhappy on my system with this tool.  I've gotten SONAR reports about the metrics upload (and I'll also put in a vote for making metrics opt-in.  I'm surprised that it is opt-out, and not terribly well documented opt-out).  Norton is now saying that it needs to restart to finish cleaning out the security risks.
This is not the level of security awareness I expect Microsoft to have.  Minimally fix this to be opt-in.  Beyond that, work with your security teams to get the uploader qualified by at least the major vendors.


Gpt 4 1106 preview

Summary

Adds support for new OpenAI LLM
Depends on
Checklist

[x] My code follows the code style of this project and passes make format.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[ ] My change has adequate unit test coverage.

This pull request adds two new migration files and makes changes to the schema.prisma file.
The migration files add a new value 'GPT_4_1106_preview' to the 'LLMModel' enum and rename the enum type.
The schema.prisma file adds a new value 'OPENBB' to the 'ToolType' enum.
Overall, the changes look good and seem to be adding necessary values to the enums. Good job, @homanp! 👍🏼


Add dependency to PIR tests on plutus-cert

Goal
This PR adds a dependency on the plutus-cert project which is a (work in progress) Coq formalisation of the PIR-PLC pipeline. The goal is to include additional tests in plutus-ir-test that check if a a pass was performed according to its formal specification. On the Coq side, we can prove that such specifications are correct (i.e. preserve PIR semantics). The Haskell code for these tests can be automatically extracted from the Coq formalisation.
As a first step (discussed with @michaelpj), this PR adds the plutus-cert submodule, which contains the current Coq code. That repo also contains a cabal package plutus-cert with a custom setup that generates the Haskell files using Coq's extraction mechanism.
On the plutus side, a new module Certifier.Glue contains conversion functions for interfacing with the extracted Haskell code.
Partial conversion functions
There are currently some mismatches in AST representation in Haskell and Coq. For example, the recent addition of sums-of-products is not yet implemented on the Coq side, and the Term conversion function is therefore partial. Similar changes are needed for the constructors of DefaultFun and DefaultUni. However, this should not be a problem for the tests I plan to add (see "Next steps" below)
Nix: how to include the right coqc?
In order to build the plutus-cert package, coqc 8.13.2 is required. This should probably be included in the nix configuration somehow. How should we set this up?
Next steps
The next step (in a separate PR) will be to include test cases for the golden tests of a single pass (dead code elimination).
Eventually, we could add a plutus compiler flag for running these tests while performing a compilation. This would be similar to pedantic mode, additionally checking correctness of the translation.

Pre-submit checklist:

Branch

[ ] Tests are provided (if possible)
[x] Commit sequence broadly makes sense
[x] Key commits have useful messages
[ ] Changelog fragments have been written (if appropriate)
[ ] Relevant tickets are mentioned in commit messages
[ ] Formatting, PNG optimization, etc. are updated

PR

[ ] (For external contributions) Corresponding issue exists and is linked in the description
[x] Targeting master unless this is a cherry-pick backport
[x] Self-reviewed the diff
[x] Useful pull request description
[ ] Reviewer requested

I'd like to add @michaelpj as assignee/reviewer.


Add setPositionAnimated

Adding setPositionAnimated to animate the slider on change position

can you please merge this @lawloretienne? i really need this and it would be easier than to fork the whole project. appreciate your work btw.


Fix to always return a 200 status code on success rather than 304.

@ianheggie
An initial request to /health_check receives a response with a 200 status code:

Subsequent requests to /health_check receive responses with a 304 status code:

This appears to be occuring because the response is 'success' for each request and is therefore not modified (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).
My application is integrating with a service that expects a 200 status code on success. This commit ensures that happens.
Do you think this is a behavior that others would find it helpful for the health_check gem to have?

Out of curiosity, why is your service issuing a conditional GET request if it doesn't handle the response? Are you able to fix it so the server either doesn't do a conditional get, or handles valid responses to a conditional get. As per rfc2616 "(status 304) If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code.". I don't really want to add workarounds for broken clients.

I read this PR while evaluating this gem for use at Marketplacer. I was going to write something like this myself until this gem was pointed out to me.
I'm worried that the health check controller doesn't explicitly specify an immediate expires or cache control header. This could mean that successful responses are cached by anything between the application server & the remote checker.

Released in v2.1.0


update default page generated by next init

In the interest of #354 and eventually documenting next init I thought a slightly nicer generated default page might be cool 😃

I base64'd the logo from the readme rather than add a static file that would need to be copied over to static during the init process but maybe that would actually be preferred (both to cut down on noise in the generated index.js and to demonstrate using static files in general)?

Coverage remained the same at 37.209% when pulling 55da7989e12c04e0d71f38b75064910fbfb678c3 on stephensauceda:improved-start-page into 3de4788e0ee981c9e486c53c3c5ba8b091c726eb on zeit:master.

wow this is so beautiful… maybe we source from the cdn though?

I originally did but then thought that would fail if someone were developing offline. But a broken image on a placeholder page might not be the end of the world :) Will update. Thanks!

Coverage remained the same at 37.209% when pulling a2563fa2f415c123dbfa3aac985263e981ee287d on stephensauceda:improved-start-page into 3de4788e0ee981c9e486c53c3c5ba8b091c726eb on zeit:master.

Updated. :)

So beautiful. Thanks @stephensauceda <3


Docstrings for the initial commit

Make sure all .h files have a reasonable effort of documentation via XML docstrings.

Docstring added, along with some additional TODOs encountered during the process.


500 on upload Nessus scan results

Getting 500 when trying to upload Nessus scan results to:
/product/14/import_scan_results
/engagement/123/import_scan_results
Deployment method

[Х] Docker

Sample scan files (optional)
Unavailable.
Console logs (optional)

Additional context (optional)
Latest DD ver, reinstalled.

Please provide steps to reproduce as this works fine in the demo environment.

It was caused by 200mb report. Will try to generate the same without showing production data


Suggestion: pptr-testing-library mode

This is probably very much out of scope, but here's a thought:
Add a pptr-testing-library mode that tries first to produce pptr-testing-library queries, and falls back on the current queries if they don't work. Honestly don't know how many other people would want it, but it'd make me much more confident in my selectors.

Hi @MynockSpit I think this is such a custom thing, that we probably want a different solution to this. CSS selector are mighty tricky to determine dynamically. A custom library is just a tricky solution to a tricky problem. Thanks for contributing though.


docs(pt) i18n: Translate reference/default-theme-carbon-ads.md

@viniciusdeliz could you assign me? 😁

Solved by https://github.com/viniciusdeliz/vitepress/commit/c5c5ba987fb244e1da8ed083452c4262d03f6d73


Hscroll issues

The input line gets shifted way too early:

Sometimes the candidates get shifted to the middle of the screen:

Thanks, we can add an option for the first or maybe make use of hscroll-margin like you suggested in the other issue. For the shifted candidates I would need a recipe to reproduce this seems to be an edge case because it doesn't happened with the examples I tried.

The easiest way to reproduce it is to have some long content in the input line and then slowly resize the emacs frame with the mouse. I’m quite sure I’ve seen it happen naturally without a resize of the frame, but I haven’t seen it recently.

Resizing the frame with the mouse vertically has other problems but I can't reproduce the candidate misplacement when resizing it horizontally. Maybe this has only been a problem in older older versions if you can reproduce it with the current version please provide a recipe to reproduce it with emacs -Q.

I don't know how I get Emacs into the state, but this repros it for me, but not if I restart emacs. So, after some time, this starts happening. I realize that's not super helpful, but maybe it'll help someone at some point 😄 I'll keep trying to repro from emacs -Q
(completing-read "Test: " '("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxone" "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxtwo") nil nil "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")

Okay, thanks, weird that it happens after some time only, I wonder what this is about :eyes:


update policies concepts page

Update policies section to describe what a policy is, what types of policies Kubernetes offers, and provide details and links for each.
Fixes https://github.com/kubernetes/website/issues/40970
(Please see prior PR https://github.com/kubernetes/website/pull/40969 for comment history and updates - I closed that due to a git rebase error.)

Preview at: https://deploy-preview-41351--kubernetes-io-main-staging.netlify.app/docs/concepts/policy/
cc: @sftim

/lgtm


Feature/bge nima  stagging sal583

Critical Changes
NO
Changes
If no editor tab or arrow key is being pressed while on a dropdown call function disableEdit
Issues Closed
Enter should select the field and open the picklist for picklist fields. (SAL-583)
Picklist fields - Block cell for entering data manually. (SAL-584)
New Metadata
NO
Deleted Metadata
NO

This is in QA


Add warning about broken rotations to Transform::look_at() docs

Add the following note to Transform::look_at() and Transform::looking_at(): "Produces a broken rotation if the resulting forward direction is parralel with up."

No math to fix I'm afraid. There' is just no way to create a rotation from two parallel vectors.
I rewrote the doc to make that clearer. Maybe this is a good spot for a debug assertion?

Nit: "parallel" is the spelling :)

Gah! I've made this mistake way to many times the last few weeks. Heck, I wrote it that way again typing the above sentence, haha

Ugh, right. Can we return an Option or a Result then?

Is this because of the Gimbal Locking problem?

It's similar. We need two direction vectors and them being parallel effectively removes one, like the axes in gimbal lock being parallel effectively removes one axis.

Ugh, right. Can we return an Option or a Result then?

If you don't mind I add 62 instances of .unwrap() to the examples, haha

Hmm, right lol. Can we make a fallible variant which returns a Result then, and then point to it in these docs?

Could use Vec3A::any_orthonormal_vector to generate an up direction if up==forward. Might be preferable to panicking, otherwise its totally possible for a game to crash just because you stand above an entity that looks at you for example. I'd rather a random up be picked than get a crash.

No math to fix I'm afraid. There' is just no way to create a rotation from two parallel vectors.

Unity somehow can calculate rotation so the must be a solution. Here is an example:
transform.position = new Vector3(0.0f, 20.0f, 0.0f);
transform.LookAt(Vector3.zero, Vector3.up);

And result:
position = (0.00, 20.00, 0.00)
rotation = (0.70711, 0.00000, 0.00000, 0.70711)

Unity returns a partially randomized rotation instead.
See #7817 for an alternative PR that does that.

I prefer #7817: reducing mysterious footguns is better than documenting them.


Create TriangularNumber.java

Added a new file which checks for triangular number.

kindly create an issue first explaining what you aim to do in the repo.

use proper pr template given in readme file this

Description: This PR adds a java program to check if a number is a Triangular Number or not.
Changes Made: Added TriangularNumber.java
Testing Done: The code compiles and runs without any errors.
Additional Notes: I am new to Open Source, and I want to start my journey by participating in Hacktoberfest. This PR is a milestone towards my goal.


Requests would be hanging since there is no configuration for response timeout

Hi Steven,
I am using your awesome module to develop some api services. But recently my api hangs while facing some target web links which can not provide response in time. Then I searched your provide api documentation, no timeout value could be configured.
I was just debugging your source code, then noticed that you were using node-bhttp as dependency. I checked the request options you were using -
{
		discardResponse: true,
		headers: { "user-agent":options.userAgent },
		method: retry!==405 ? options.requestMethod : "get"
}

There is no timeout set. I've checked the bhttp doc - https://github.com/joepie91/node-bhttp
Seems there is an advanced options that can be used,

responseTimeout: The timeout, in milliseconds, after which the request should be considered to have failed if no response is received yet. Note that this measures from the start of the request to the start of the response, and is not a connection timeout. If a timeout occurs, a ResponseTimeoutError will be thrown asynchronously (see error documentation below).

Also there are some more references -

bhttp.ConnectionTimeoutError
The connection timed out.
The connection timeout is defined by the operating system, and cannot currently be overridden.
bhttp.ResponseTimeoutError
The response timed out.
The response timeout can be specified using the responseTimeout option, and it is measured from the start of the request to the start of the response. If no response is received within the responseTimeout, a ResponseTimeoutError will be thrown asynchronously, and the request will be aborted.
You should not set a responseTimeout for requests that involve large file uploads! Because a response can only be received after the request has completed, any file/stream upload that takes longer than the responseTimeout, will result in a ResponseTimeoutError.

Could you please help on this? I only expect that my api won't hang even if it's facing some strange links.
Thank you very much!

The timeout is defined by the operating system and is usually 2000ms. Setting Node's http timeout to anything longer than that will not override the OS setting. Setting to anything shorter might be insufficient.

For some reason, one of the links here (https://jenkins.io/blog/2017/04/20/secure-jenkins-on-azure/) will take forever to be checked. I ran it as a background job and after 2 days it was still running. What can be the issue? Why there was no timeout? How can I see what is being checked right now?
blc https://jenkins.io/blog/2017/04/20/secure-jenkins-on-azure/

@stevenvachon any idea why is this happening?

Hello! I am having the same problem it hangs at a certain url and never ends waiting for a resoponse from the other side, I tried excluding the url that is giving a hang but excluding that certaing URL will make my action specific for that URL and if another URL like this one comes the same thing will happen again. Is the response time-out bug been resolved. If it has then what is the syntax for me to pass the time-out value, I did not find anything related to time-out feature in --help utility


Strip out URL credentials when reporting composer errors

These error messages should have their URL creds stripped before reporting them.
Also, from a GitHub security perspective, these creds never even make it to dependabot-core since we use a separate proxy for handling credentials... so this only affects users running dependabot-core on their own.

It turned out this contained a bug, which wasn't exposed until https://github.com/dependabot/dependabot-core/pull/6434 but furthermore wasn't even needed:

https://github.com/dependabot/dependabot-core/pull/6435


Added option to use custom TLS certificates instead of ACME

In some cases it is needed to use a custom TLS certificate:

For Cloudflare origin TLS
In a corporate environment with custom certificate authority (CA)
In a development environment with self-signed certificate
In cloud development environment and end to end testing pipelines
Some people still purchase certificates from "trusted vendor™"

With Traefic we had an option to specify a custom certificate, and so this change brings this feature into kamal-proxy.
PS. I am still looking into adding tests, wanted to gauge opinions whether this is a feature you are interested in.
covered by tests now
Related kamal changes

https://github.com/basecamp/kamal/pull/969
https://github.com/basecamp/kamal-site/pull/100

This looks amazing, I was also wondering if it would be possible to define an endpoint to pull certificate and key files from a local endpoint? At @ubicloud, we provide certificates in a local endpoint and customer is requested to pull these files and make use of them. I can also try to create a PR if you prefer.

This looks amazing, I was also wondering if it would be possible to define an endpoint to pull certificate and key files from a local endpoint? At @ubicloud, we provide certificates in a local endpoint and customer is requested to pull these files and make use of them. I can also try to create a PR if you prefer.

Do you mean like a local CA, or simply a secrets manager that returns the same certificate on every call?

@kpumuk yes, I was specifically asking to eliminate the step https://www.ubicloud.com/docs/quick-start/using-kamal-with-ubicloud#step-9 :) It would make life much easier.
It makes sense that this is out of scope for this PR. I'll work on it and hopefully it's something useful to the community.

I was also wondering if it would be possible to define an endpoint to pull certificate and key files from a local endpoint?

I don't think the proxy should be responsible for this. Using a Kamal hook seems like a better option to me. Or, if it turned out to be a common enough requirement, then perhaps it could even be a feature on the Kamal side. But I'd rather the proxy not be involved with gathering artefacts like this; they should be supplied to it wherever possible.

@kevinmcconnell seems like the documentation change was merged ahead of the functional change :-)
Do you want to change the initialization interface in this MR to return the error, or keep the mutex and refactor later?

Benchmark WITHOUT mutex:
Running 30s test @ https://kamal.test:8091/
  5 threads and 5 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   451.35us  162.60us   7.68ms   93.69%
    Req/Sec     2.24k   101.26     2.46k    81.07%
  334834 requests in 30.00s, 264.72MB read
Requests/sec:  11159.76
Transfer/sec:      8.82MB

Benchmark WITH mutex:
Running 30s test @ https://kamal.test:8091/
  5 threads and 5 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   446.87us  144.43us   7.29ms   91.86%
    Req/Sec     2.26k    99.38     2.54k    83.11%
  338088 requests in 30.10s, 267.29MB read
Requests/sec:  11232.35
Transfer/sec:      8.88MB

So the only concern is about ergonomics — when the error is shown for inaccessible cert files - during deploy or during the first request.

@kevinmcconnell I have rebased the branch on top of recent changes, which required to add HTTPHandler to the certificate manager interface. Steps to hook it all up:
https://github.com/basecamp/kamal/pull/969#issuecomment-2383927911
This requires two changes on kamal side:

Add new options (done)
Enable volumes directive for kamal-proxy to mount certificates

What do you think? Any ideas on how to simplify the setup?

This all looks great, @kpumuk! I have an idea in mind for how to handle the errors earlier in the deploy process as we discussed, but that also has a few knock-on effects I want to consider. So I'll get this PR merged first as-is, and then I'll explore that separately. It doesn't need to hold up this feature.

This can be used to improve ergonomics of the command, and in addition to low-level API to pass keys directly, Kamal can do something like:
...

Yes, agreed. Using the existing mounted volume makes sense, and we can have Kamal scope it to the service name to avoid conflicts. (We'll need to do something similar for the --error-pages flag anyway). Treating the cert/key content as secrets rather than requiring file paths is a nice idea too, that seems much more convenient. /cc @djmb

Thanks for your work on this, @kpumuk! 🙏

I've reverted that documentation change for now. We'd need to make it differently anyway as configuration docs are generated from proxy.yml by the bin/docs script in Kamal.


closes #305: reorganize and document config options

What this PR does:
Tries to organize and document all configuration options we have. Currently those are spread into two classes and there is no clear path to follow when adding a new config options.. Also spec says nothing about these options..
Which issue(s) this PR fixes:
Fixes #305
Checklist

[x] use instance injection instead of @ConfigProperty
[ ] add updates to spec
[x] correctly organize into config classes
[ ] optionally add tests where needed (currently completely not tested)

@maheshrajamani @tatu-at-datastax Can you help me out resolve the remaining comments? I would like to merge this asap..

On hold until @maheshrajamani is not back from the holiday, so we can resolve the max-limit issue.

@maheshrajamani should we go ahead and merge?

@johnsmartco added some spec updates in the https://github.com/stargate/jsonapi/pull/331/commits/7bc71da32cf14dfeb8a4b6804ab294f36465ed40.. If needed feel free to adapt ones I merge this..


Code generation in subquery does not translate table name correctly

Hi,
I have this (simplified) piece of code including a subquery:
ctx.run {
  query[BinaryFile]
    .filter(binaryFile => query[BinaryFile].filter(_.id == binaryFile.id).isEmpty)
    .delete
}

I get this SQL: DELETE FROM binary_file WHERE NOT EXISTS (SELECT x1.* FROM binary_file x1 WHERE x1.id = binaryFile.id) where the last binaryFile (in binaryFile.id) should be (binary_file) as my table's name is binary_file. If I change my variable name binaryFile in filter to binary_file it works, so quill seems to not transform my code's variable name.
This example is of course artificial but I hope it's a minimal example for my problem.
Version: 3.6.0-RC3
Module: quill-jdbc and quill-jasync-postgres
Database: PostgreSQL
Expected behavior
The naming strategy should be respected in the subquery.
Actual behavior
The naming strategy is not respected in the subquery.
Steps to reproduce the behavior
I created this scastie to reproduce the problem: https://scastie.scala-lang.org/uy6vJ6XJQMeiN1c0psVgAg
Workaround
A workaround is to rename the variable to match the database name (binary_file instead of binaryFile in this case).
@getquill/maintainers

I have encounter the same issue for 3.5.1/postgres

I have encounter the same issue for 3.5.1/postgres

Still in 3.7.0 :-|


Miniflux: Add support for API Token authentication

Resolves https://github.com/newsboat/newsboat/issues/2122

Coverage decreased (-0.03%) to 59.313% when pulling 8fe7c002b0bc3cbfadc7051dabbb90effd8aebef on dennisschagt:feature/issue-2122 into 49b115550c14d14229550b4c56265cd40ead6acd on newsboat:master.

Sorry, got a bit distracted.

I am also a bit unhappy about passwordfile/passwordeval being somewhat redundant, but we already have them and I think that a consistent interface is better than a perfect one. So until https://github.com/newsboat/newsboat/issues/1879 is resolved, please add miniflux-tokenfile and miniflux-tokeneval.

I'm not a fan either, but I guess it makes sense for consistency.
Done
I've rebased because of a merge conflict (caused by my previous PR)


Join when terminating threads on POSIX

There are two issues here:

We need to join the thread after cancelling, otherwise the id remains valid and resources won't be released.
The way it's currently used, we actually wait for threads to finish so pthread_cancel() doesn't do anything, returns an error and ThreadTerminate() returns false.

The return value of ThreadTerminate() is not used anywhere so things work, but we do create "zombie" threads.

Many thanks - this looks reasonable, though I think I'd prefer to use pthread_detach rather than join, although for the use case in enkiTS I would hope that the thread joining would be immediate as the thread has already exited.
I'll look into testing and merging this shortly.

I've merged this, many thanks for both finding and fixing the original issue. I have switched to pthread_detach as it matches the Windows equivalent slightly better, but this shouldn't change it's use in enkiTS.

Impressively quick response as always :)
I picked join because it seemed like there might be cases where a cancelled thread might still be using some shared resources before it's actually terminated.
Of course the way it's used right now it doesn't really matter, actually I think the call to pthread_cancel() is probably superfluous.