[bug] Driver logs are not pushed on main STDOUT/STDERR

We face an issue with the zwave-js Driver logs. When running the command in our Shell, we can see all logs from zwavejs2mqtt and zwave-js driver in console.
Once we run a Docker container OR push stdout/stderr logs to a file, Driver logs missing
Testing this:
Console output:
❯ node bin/www
 ______                       _     ___                  _   _
|___  /                      (_)   |__ \                | | | |
   / /_      ____ ___   _____ _ ___   ) |_ __ ___   __ _| |_| |_
  / /\ \ /\ / / _` \ \ / / _ \ / __| / /| '_ ` _ \ / _` | __| __|
 / /__\ V  V / (_| |\ V /  __/ \__ \/ /_| | | | | | (_| | |_| |_
/_____|\_/\_/ \__,_| \_/ \___| |___/____|_| |_| |_|\__, |\__|\__|
                            _/ |                      | |
                           |__/                       |_|
2020-12-17 19:49:14.791 WARN STORE: scenes.json not found
2020-12-17 19:49:14.793 WARN STORE: nodes.json not found
2020-12-17 19:49:15.172 INFO APP: Version: 1.0.0-alpha.0.023fccf
2020-12-17 19:49:15.173 INFO APP: Application path:/home/billias/ongit/zwavejs2mqtt
2020-12-17 19:49:15.218 INFO MQTT: Connecting to mqtt://mqtt.data:1883
2020-12-17 19:49:15.255 INFO ZWAVE: Connecting to /dev/ttyACM0
19:49:15.257 DRIVER   ███████╗ ██╗    ██╗  █████╗  ██╗   ██╗ ███████╗             ██╗ ███████╗
                      ╚══███╔╝ ██║    ██║ ██╔══██╗ ██║   ██║ ██╔════╝             ██║ ██╔════╝
                        ███╔╝  ██║ █╗ ██║ ███████║ ██║   ██║ █████╗   █████╗      ██║ ███████╗
                       ███╔╝   ██║███╗██║ ██╔══██║ ╚██╗ ██╔╝ ██╔══╝   ╚════╝ ██   ██║ ╚════██║
                      ███████╗ ╚███╔███╔╝ ██║  ██║  ╚████╔╝  ███████╗        ╚█████╔╝ ███████║
                      ╚══════╝  ╚══╝╚══╝  ╚═╝  ╚═╝   ╚═══╝   ╚══════╝         ╚════╝  ╚══════╝
19:49:15.258 DRIVER   version 5.5.0
19:49:15.258 DRIVER
19:49:15.258 DRIVER   starting driver...
19:49:15.267 DRIVER   Send queue: (empty)                                               (0 messages)
19:49:15.267 DRIVER   send thread state: idle
19:49:15.268 DRIVER   opening serial port /dev/ttyACM0
2020-12-17 19:49:15.273 INFO APP: Listening on port 8091
2020-12-17 19:49:15.274 INFO MQTT: getaddrinfo ENOTFOUND mqtt.data mqtt.data:1883
2020-12-17 19:49:15.276 INFO MQTT: MQTT client offline
2020-12-17 19:49:15.277 INFO MQTT: MQTT client closed
19:49:15.277 DRIVER   serial port errored: Error: No such file or directory, cannot open /dev/ttyACM
                      0
19:49:15.278 DRIVER   destroying driver instance...
19:49:15.279 DRIVER   destroying driver instance...
2020-12-17 19:49:15.279 INFO ZWAVE: Driver: Error: No such file or directory, cannot open /dev/ttyACM0
2020-12-17 19:49:15.280 WARN ZWAVE: Retry connection in 3 seconds...
^C2020-12-17 19:49:16.041 INFO APP: Closing clients...
2020-12-17 19:49:16.042 INFO GATEWAY: Closing Gateway...
19:49:16.043 DRIVER   destroying driver instance...

Pushing STDOUT to a file (like docker does)
❯ node bin/www 1>a 2>b
^C%

 ❯ cat a
 ______                       _     ___                  _   _
|___  /                      (_)   |__ \                | | | |
   / /_      ____ ___   _____ _ ___   ) |_ __ ___   __ _| |_| |_
  / /\ \ /\ / / _` \ \ / / _ \ / __| / /| '_ ` _ \ / _` | __| __|
 / /__\ V  V / (_| |\ V /  __/ \__ \/ /_| | | | | | (_| | |_| |_
/_____|\_/\_/ \__,_| \_/ \___| |___/____|_| |_| |_|\__, |\__|\__|
                            _/ |                      | |
                           |__/                       |_|
2020-12-17 19:48:37.324 WARN STORE: scenes.json not found
2020-12-17 19:48:37.325 WARN STORE: nodes.json not found
2020-12-17 19:48:37.694 INFO APP: Version: 1.0.0-alpha.0.023fccf
2020-12-17 19:48:37.695 INFO APP: Application path:/home/billias/ongit/zwavejs2mqtt
2020-12-17 19:48:37.735 INFO MQTT: Connecting to mqtt://mqtt.data:1883
2020-12-17 19:48:37.769 INFO ZWAVE: Connecting to /dev/ttyACM0
2020-12-17 19:48:37.780 INFO APP: Listening on port 8091
2020-12-17 19:48:37.781 INFO MQTT: getaddrinfo ENOTFOUND mqtt.data mqtt.data:1883
2020-12-17 19:48:37.783 INFO MQTT: MQTT client offline
2020-12-17 19:48:37.783 INFO MQTT: MQTT client closed
2020-12-17 19:48:37.784 INFO ZWAVE: Driver: Error: No such file or directory, cannot open /dev/ttyACM0
2020-12-17 19:48:37.784 WARN ZWAVE: Retry connection in 3 seconds...
2020-12-17 19:48:38.392 INFO APP: Closing clients...
2020-12-17 19:48:38.394 INFO GATEWAY: Closing Gateway...

 ❯ cat b

b file is STDERR and is empty

Could you please try one of the following and see if it changes things?

Open packages\zwave-js\src\lib\log\Driver.ts
2a) in lines 33, 34, 39 replace "driver" with a different key
2b) in line 27, change the loglevel from "verbose" to "debug" or "info".
Compile and link the packages, as described here

@AlCalzone
the change is not resolving the problem:
Change:
 import type { Message, ResponseRole } from "../message/Message";

 export const DRIVER_LABEL = "DRIVER";
-const DRIVER_LOGLEVEL = "verbose";
+const DRIVER_LOGLEVEL = "debug";
 const SENDQUEUE_LOGLEVEL = "debug";

 let _logger: ZWaveLogger | undefined;
 function getLogger(): ZWaveLogger {
 	if (!_logger) {
-		if (!winston.loggers.has("driver")) {
-			winston.loggers.add("driver", {
+		if (!winston.loggers.has("river")) {
+			winston.loggers.add("river", {
 				transports: createLogTransports(),
 				format: createLoggerFormat(DRIVER_LABEL),
 			});
 		}
-		_logger = (winston.loggers.get("driver") as unknown) as ZWaveLogger;
+		_logger = (winston.loggers.get("river") as unknown) as ZWaveLogger;
 	}
 	return _logger;
 }

Logs still the same as before

@robertsLando I can't reproduce this without zjs2mqtt. Running zwave-js alone locally produces the expected behavior:

env variable LOGTOFILE set -> all logging completely goes to file
env variable not set, no redirects -> all logging completely goes to console
env variable not set, redirect stdout to file -> no logging, transports silenced because of no TTY

This seems to have to do with the way the dashboard intercepts the zwave-js logs.

What if we add the ability to pass a custom winston transport to zwave-js, which just gets the raw, uncolored logs from zwave-js?

What if we add the ability to pass a custom winston transport to zwave-js, which just gets the raw, uncolored logs from zwave-js? That way you could make sure to put the logs where they belong.

This is already possible with the changes on 6.0.0 branch

This seems to have to do with the way the dashboard intercepts the zwave-js logs.

You mean this? https://github.com/zwave-js/zwavejs2mqtt/blob/master/app.js#L73-L84

@billiaz @robertsLando I'm not even sure anymore that this is a bug. Not logging to console if the stdout is not a TTY was a concious decision because the huge amount of logging requires quite a bit of performance.
When 6.0.0 hits, you will be able to define the log file name yourself and just tail that file.

If you agree, I'm going to close this.

Would it give us also possibility to push logs without tty?
If thsi is easy to add as option, might worth! more people move to containers, and the load on cpu (for more power systems like rPi4) can be helpful during debugging
File can be worst than stdout, due to more load on system. Ofcourse you could assume we can redirect file to stdout. but still hacky way.

I agree with @billiaz about the option


docs: documentation page for FileInput Component

[X] I have followed the Your First Code Contribution section of the Contributing guide

Summarize the changes made and the motivation behind them.
documentation page for the FileInput Component to match Flowbite website
Reference related issues using # followed by the issue number.
If there are breaking API changes - like adding or removing props, or changing the structure of the theme - describe them, and provide steps to update existing code.

@MateoWartelle isn't the FileInput documented here already? https://flowbite-react-git-fork-mateowartelle-docs-fileinput-themesberg.vercel.app/docs/components/forms#file-upload
Anyway, I think that we could separate all the docs for the forms components like the standard flowbite library does:

WDYT? @zoltanszogyenyi what would be the SEO impact here? Do we need to keep some redirects?

@rluders the SEO impact is good because people also search for "file input", "search input" and so on. It shouldn't affect the content on the forms page, it's okay to have some duplicates especially if the content is different (the paragraphs). Whatever is on flowbite.com is already SEO proof:
General forms page:
https://flowbite.com/docs/components/forms/
Standalone input pages:
https://flowbite.com/docs/forms/input-field/
https://flowbite.com/docs/forms/file-input/
https://flowbite.com/docs/forms/search-input/
Cheers,
Zoltan

@MateoWartelle I know that it is probably a little bit "out of scope" for this PR, but since we moved the FileInput component to forms/... Do you mind making the same change for all other form-components?

@MateoWartelle I know that it is probably a little bit "out of scope" for this PR, but since we moved the FileInput component to forms/... Do you mind making the same change for all other form-components?

Yes I think that is best.

maybe we should bring this back to life, but with the new docs engine changes. The code here can be just for parts-and-pieces to import into the main branch, one form component at a time 🤔


Add sys.argv

sys.argv should be added to main.py

Initially, I implemented sys.argv in order to feed main.py. Then, I substituted it with argparse for practicality. Here https://github.com/scalabrindario/Covid-19/commit/266216033114f40f95250c9d1146ee93096f4a09


Log

A log of my process of learning and making though this exercise

Day 5
Because I implemented the embedded database system yesterday I kinda ate the time that I set aside for the CLI #6 so I'll do that now 😫

Conclusion

test driven development was a good idea, even though I underestimates how much work and learning there is between 'yes I used tests before, at least twice!' to 'I have tests for every moving part of this kitty even before it was born'. All in all I'm really happy I choose to do so as I learned a lot about the power of tests and even had a bit of fun.
barebones worked, only used one library that wasn't from jetbrains (I think, am I  mobile so check later) even though all toturials were using 99 libs with dependency injection and hoops.


consul not deregistering services automatically when service goes down

Here is my yaml configuration
spring:
    cloud:
       consul:
          config:
             enabled: false
             uri: http://<IP_ADDRESS>/security-web
          discovery:
             ipAddress: http://<IP_ADDRESS>/security-web
             healthCheckPath: ${management.contextPath}
             healthCheckInterval: 15s
             address: ${management.contextPath}
    endpoints:
          shutdown:
             enabled: true
    application:
       name: security-web
       address: http://<IP_ADDRESS>/security-web
spring.cloud.consul.config.enabled: false
spring.cloud.consul.discovery.heartbeat.enabled: true
management:
    contextPath: /security-web/poll

Can you explain a bit more? I can verify that if I kill -9 a service registered to consul, that registration doesn't go away. It's status moves to failing. I'm afraid there's nothing I can do about that. If you also mean, that the failing registration is still included in ribbon, then that is a duplicate of #116. If you issue is something else please feel free to clarify and I'll take it into advisement.

Yes, I meant my services shows failing in consul once i down the service. I am doing service registration using annotatio @EnableDiscoveryclient.
Once is define this annotation in my boot main class, it will take all needed things from yml file.
Now my question how I can make my service to deregister by keeping some value in yml property file??

How are you stopping the service?

I will start n stop through command prompt in windows

As long as the spring application context shuts down properly, it should be deregistered. Not sure if Ctrl-C on the windows cmd prompt does that. It does on a mac/linux.

ok thank you very much. I will check on that.

It worked for me in Unix and service got de-register from consul when I used "Ctrl+C" to bring down the service.
However service doesn't get de-register if  I click "Terminate button in Eclipse console", so i achieved the same by following below then service got de-registered from consul.

Added spring cloud actuator dependency , which adds all endpoints health, shutdown etc
Used API - localhost:XYZO/shutdown    // here XYZO is placeholder for port on which service is running.

output
o.s.c.consul.discovery.ConsulLifecycle   : Deregistering service with consul: greeting
don't see service anymore in consul
localhost:8500/v1/catalog/services


evaluate complexity of moving immutable device data to substructure

As requested to support of assessing options related to constification of struct device (#26072) this PR demonstrates the conversions for and impact of placing immutable device data in a substructure, with only the mutable material (and a pointer to the substructure) in the RAM section which remains referenced as struct device * in all API (i.e. is not const qualified).
Those who are interested can use this branch to evaluate the savings on specific applications.  I picked two bluetooth samples on two boards; it appears the cost is on the order of 2 to 3 bytes of flash for each byte of RAM saved, but I wouldn't infer too much from that.
I was mistaken in the 2020-06-10 dev-review when I surmised that the conversion would be difficult.  Coccinelle handles about 90% of the required modifications to inject the fixed pointer dereference; another remaining 9% are handled with a sed script; and a few need to be done by hand.  The conversion is significantly simpler than converting to const struct device * in #25208, though the sed script could make inappropriate changes, and this draft PR probably still hasn't identified all the places where a change needs to be made.
The conversion does affect over 540 files, but the impact on non-driver code is minimal.  The steps in the PR are fragile in the face of upstream changes: mechanical rebases will generally fail so the last two or three commits must be implemented by re-running the transformations.
For samples/bluetooth/central_hr on pca10056: -56 ram +110 flash
   text	   data	    bss	    dec	    hex	filename
 145070	   2466	  20355	 167891	  28fd3	build/zephyr/zephyr.elf   # RAM
 145280	   2410	  20355	 168045	  2906d	build/zephyr/zephyr.elf   # Flash

For samples/bluetooth/st_ble_sensor on wb55: -88 ram +260 flash
   text	   data	    bss	    dec	    hex	filename
  62096	   1956	  16823	  80875	  13beb	build/zephyr/zephyr.elf   # RAM
  62356	   1868	  16823	  81047	  13c97	build/zephyr/zephyr.elf   # Flash

When rebasing on master the easiest approach is to cherry the non-automated commits, then run each of these commands before committing the result with the corresponding application commit.
Use this as the change for "DNM device: update tests of init result"
spatch --sp-file initres.cocci \
  --very-quiet --macro-file scripts/coccinelle/macros.h \
  --include-headers --dir . \
  | sed -r \
    -e 's@res([!=]=)(\S)@res \1 @g' \
    -e 's@res([!=]=\s)@res \1@g' \
  > initres.patch

Use this as the change for "DNM device: fixups for fixed data into separate structure"
spatch --sp-file devfix.cocci \
  --very-quiet --macro-file scripts/coccinelle/macros.h \
  --include-headers --dir . \
  > devfix.patch

Use this as the change for "DNM device: convert helper macros that access immutable device fields"
FTAG="(name|config_info|driver_api|driver_data|device_pm_control|pm)"
git grep -lP '.->'"${FTAG}"'\b' \
  | sed \
    -e '/workqueue.rst/d' \
  | xargs sed -i -r \
    -e 's@(\(\w+\))(->'"${FTAG}"'\b)@\1->fixed\2@g' \
    -e 's@\b(_?dev)(->'"${FTAG}"'\b)@\1->fixed\2@g' \
    -e 's@\b(\w+_dev)(->'"${FTAG}"'\b)@\1->fixed\2@g' \
    -e 's@\b(\w*_?device)(->'"${FTAG}"'\b)@\1->fixed\2@g'
sed -i -r \
  -e 's@(ppp_dev|at_dev|control_dev)(->'"${FTAG}"'\b)@\1->fixed\2@g' \
  drivers/modem/gsm_ppp.c

Outdated; this approach was rejected in favor of making struct device const.


Allow the filtering of returned module output

Allow the filtering of returned module output using grep and/or` regex

When running a module, allow the user to add pipes | to the end of them and run arbitrary filters and module chaining against the output of the original module. For example:
dnsresolve deadbits.org | nmap 'MX' would resolve deadbits.org and then automatically Nmap scan any returned MX records.
or github deadbits.org | filter 'location' would get the Github results for username deadbits and then return the "location" field from those GitHub results

[ ] Create list of compatible module commands that can be executed against the output of the first module
[ ] Create filter command to fetch JSON results keys for display
[ ] Create regex command to allow users to display results of module that matches a provided regex


SP5 scaling isn't working as expected

https://github.com/ScottPlot/ScottPlot/pull/2766#issuecomment-1641203326
and also the cookbook example doesn't do what I'd expect
I think the issue is that scaling somewhere needs to tell the plot that its size is different. I'll take a closer look shortly.

I have found Surface.Canvas.Scale(scaleFactor) with scaleFactor > 1 leads to decrease dimensions of the Canvas. I suppose it's needed to right work of underlying layers (SkiaSharp etc.). In current instruction flow defenition the size of Canvas occurs before scaling, and it leads to actually render canvas with wrong (not scaled) dimentions.
I wrote commit to fork. As I change public void Render(SKCanvas canvas, int width, int height), I don't confident, that it's correct for merging, but it determines problem, and may be helpfull: 9dac043c96d92a58a297721d928c74fe763b5a1a

WinForms out of window too.


footnote anchors

Hi,
Firstly, I want you to know that I really like this theme. Thank you for maintaining it.
I have run into one issue, but it may not be an issue with your theme. I am using org-mode footnotes and the anchors are linking to the home page rather than the post that they are linked from / to. I read the section on links and cross references and it suggests that the anchor should be exported with the pages unique identifier, but when I inspect the element I can see that the anchor has no unique identifier. Since it is missing the unique identifier I started to wonder if it is perhaps an issue with the theme, but I have no idea. Have you tried using footnotes? Do you know how to make org-mode footnotes work as expected?
I am currently using hugo v0.46
You time is appreciated.

Whatever the issue is it is definitely not an issue with your theme. I started a discussion on the gohugo discourse forum and am closing this issue.

@BloggerBust I've just fixed the problem a few days ago see issue #21 and the corresponding change #22 if you use the master branch with the latest changes it should work.
Let me know if you still experience some problems with it.

Hi gyorb,
Thank you very much for fixing this issue. Your time on this is appreciated. I have pulled from your master branch and everything is working as expected now.
Cheers!


Declare @type for multiple variables

How can I achieve the following:
/**
 * @type {HTMLInputElement}
 */
var minifiedNavCb, fixedHeaderCb, fixedNavCb, mobileNavCb;

Currently I only get the correct  intellisense for minifiedNavCb

You can use inline notations.
var /** HTMLInputElement */ minifiedNavCb,
/** HTMLInputElement */ fixedHeaderCb,
/** HTMLInputElement */fixedNavCb,
/** HTMLInputElement */ mobileNavCb;

I don't like the repetition, would like to declare all of them in a single shot.
Anyways, inline notations don't work in my case and I use VsCode latest....
But using this notation style, I get full intellisense support:
/**
 * @type {HTMLInputElement}
 */
var minifiedNavCb, fixedHeaderCb, fixedNavCb, mobileNavCb;

Inline notations work fine for me using the latest JsDoc (3.6.3), they are correctly parsed and documented.
If your issue is with VsCode Intellisense, you should probably move this issue to the Typescript repo as it is not related to jsdoc, it's related to how Typescript parses jsdoc. Here is a list of supported features i VSCode, you'll probably have to file a feature request for your requested functionality.

@visj
var /** HTMLInputElement */ fixedNavCb;
Someone told me that this syntax is supported by Closure Compiler for type annotations, but not by TS UPD. TS supports other annotation.
I don't use google's closure compiler...

Though this was closed nearly a year ago, if @Legends or anyone else hasn't found a solution to this already, this may be a useful hack:
/**
 * @type {Array.<HTMLInputElement>}
 */
var [minifiedNavCb, fixedHeaderCb, fixedNavCb, mobileNavCb] = [];

This works with IntelliSense in Visual Studio Code v1.54.3 (the latest as of writing), and I'd imagine it probably works for older versions too. However, I have not tested this with standalone JSDoc, though I'd imagine it works with that too. Someone else will have to confirm.


[9.x] Add env processors (for use in config files)

One feature that I've really missed so far in the framework are env processors.
Consider this fairly basic example:
// app.php
return [
    'amount_of_foo' => env('AMOUNT_OF_FOO', 5),
];

// somewhere in the codebase
private function getFooAmount(): int
{
    return config('app.amount_of_foo');
}

The issue here is that if the AMOUNT_OF_FOO env variable does not exist in your .env file everything works, but if it exists everything breaks because the value returned is a string so you get a TypeError (and I've been bitten by this plenty of times, especially when binding primitives using the container).
Of course this is fixable by doing this:
// app.php
return [
-  'amount_of_foo' => env('AMOUNT_OF_FOO', 5),
+  'amount_of_foo' => (int) env('AMOUNT_OF_FOO', 5),
];

But this is not very pretty and it's very cumbersome to remember having to do this every time when the expected return type is not a string.
This PR introduces env processors which allow you to do this:
// app.php
return [
-  'amount_of_foo' => env('AMOUNT_OF_FOO', 5), // same as Env::get('AMOUNT_OF_FOO', 5);
+  'amount_of_foo' => Env::integer('AMOUNT_OF_FOO', 5),
];

The code becomes more readable and we ensure type safety here which greatly improves DX.
Env processors are far more powerful than this though - currently you cannot natively get anything but a string (or null) back from a env() call.
Let's take the (real world) example from https://timacdonald.me/introducing-lazy-loading-prevention-into-an-existing-laravel-application/ and show a before and after with the usage of env processors:
return [
-    'lazy_loading_reporting_lottery' => array_map(
-         'intval',
-         explode(',', env('LOG_LAZY_LOADING_DETECTION_LOTTERY', '1,500'))
-     ),
+    'lazy_loading_reporting_lottery' => Env::getWithProcessor(
+            EnvProcessorFactory::arrayProcessor()->integerElements(),
+            'LOG_LAZY_LOADING_DETECTION_LOTTERY',
+            [1, 500],
        );
];

If we didn't need to have integer elements the above call could've been just
Env::array('LOG_LAZY_LOADING_DETECTION_LOTTERY', ['1', '500']),

The delimiter is customizable too (and defaults to ,).
Added env processors
Env::array() -> ensures that an array of values is always returned, can be configured to cast all elements to integers or floats if necessary, the delimiter is customizable too
Env::string() -> ensures that a string is always returned
Env::integer() -> ensures that an integer is always returned
Env::float() -> ensures that a float is always returned
Env::boolean() -> ensures that a boolean is always returned
Env::trim() -> trims the value (useful in combination with the file processor)
Env::file() -> returns the string content of the file at the given path
Env::json() -> returns the JSON decoded content of the given string
Env::base64() -> returns the base64 URL decoded content of the given string
Env::chain() -> runs the env value through two or more of the above processors before returning it
Some usage examples
// some_config_file.php

return [
    'foo' => Env::array('FOO'), // returns an array
    'bar' => Env::boolean('BAR'), // returns a boolean
    'qux' => Env::json('QUX'), // returns the decoded content (array or null)
    'quux' => Env::chain('QUUX', null, EnvProcessorFactory::fileProcessor(), EnvProcessorFactory::jsonProcessor()), // gets the file content from the file path, JSON decodes that string and returns it
    'quuz' => Env::getWithProcessor(EnvProcessorFactory::arrayProcessor()->delimiter(';')->floatElements(), 'QUUZ'), // returns an array
];

In order to prevent bugs all processors are immutable objects (this means that if a processor is created in a config file it can safely be reused in that same file), for example:
// some_config_file.php

// FOO=1 (or FOO=true)

$booleanProcessor = EnvProcessorFactory::booleanProcessor();

return [
    'x' => Env::getWithProcessor($booleanProcessor->not(), 'FOO'), // calling not() here tells the processor to negate the value before returning it
    'y' => Env::getWithProcessor($booleanProcessor, 'FOO'),
];

In the above example x is false while y is true. If the processors weren't immutable both x and y would've been false.
Just to clarify, Env::boolean('FOO') is syntax sugar for Env::getWithProcessor(EnvProcessorFactory::booleanProcessor(), 'FOO', true). The only reason why you couldn't use this syntax sugar is when you need to use the more advanced features that a processor exposes (like negating the value in case of the boolean processor, or like adjusting the delimiter for the array processor etc.)
Conclusion
Env var processors is a powerful feature (which brings type safety and reduces a lot of code which is usually copy pasted all the time in config files) which IMO greatly improves DX and as such should be a part of the framework. The inspiration for this PR are the equivalent env var processors from Symfony -> https://symfony.com/doc/current/configuration/env_var_processors.html
There are no breaking changes here and the code is fully typed to ensure the aforementioned type safety.
User apps and Laravel packages can create their own processors by implementing the \Illuminate\Support\EnvProcessors\EnvProcessorInterface contract.

While I definitely appreciate the thought behind this PR (and of course all the other work you've done so far for Laravel) I think this PR unnecessarily overcomplicates things. You mention at some point that things are fixable with a typecast but then say:

But this is not very pretty and it's very cumbersome to remember having to do this every time when the expected return type is not a string.

I don't agree with this and think we should just rely on the PHP type system instead of creating an abstract layer on top of it. This is a whole lot of extra code for us to maintain while we could just expect/require people to use the proper types/values.
I can of course be that I'm not seeing the main advantages of this. Your link to Symfony's implementation is a good indication but I still believe this is a bit too much, sorry.

Not having to think about the type is just one of the benefits of this. Currently env() returns only strings and I think that's quite a limitation so what this brings to the table is stuff like conversion to arrays (and stuff like chaining the processors). Yes, this doesn't bring nothing new to the table that can't be already done, but since Laravel is all about DX (and other frameworks have this functionality too) I thought it was worth to try to PR this.
I know that I've used this feature in Symfony apps a bunch of times and that I've missed this a lot of times in my Laravel projects too (otherwise I wouldn't have bothered to PR this).
Regarding the maintenance burden, I think it's close to zero. Yes, there's a "lot" of classes, but it's a couple of lines of logic per class at most. The Symfony env var processors haven't changed much, if at all since they were introduced (there were maybe just a couple of new processors added). The entire code for env hasn't been touched in any significant way for a long period of time and I don't expect this to change any more than that really (as there's only so much ways you can convert a string into a boolean or an array etc.).

I honestly find adding a simple, built-in PHP cast to your statement much easier than adding an entirely new feature to support env processors.
$foo = (int) $bar;

@X-Coder264 Would it be possible to release this as a package sense it has been rejected?

@morloderex Sure, I can do that. I can't promise anything until Sunday or probably some time next week though.


delete metrics from match section

https://github.com/open-cluster-management/backlog/issues/12106
Signed-off-by: Song Song Li<EMAIL_ADDRESS>

/lgtm


support operator level parallel execution

Signed-off-by: jie.hou<EMAIL_ADDRESS>Initial implementation for operator level parallel execution.
dc.map(lambda x: x+1) # no parallel execution
  .pmap(lambda x: x*2, 5) # execution operator with 5 execution in the parallel

Codecov Report

Merging #705 (3776f6b) into main (532080c) will decrease coverage by 0.38%.
The diff coverage is 5.26%.

@@            Coverage Diff             @@
##             main     #705      +/-   ##
==========================================
- Coverage   71.12%   70.74%   -0.39%
==========================================
  Files         165      165
  Lines        6528     6566      +38
  Branches      978      982       +4
==========================================
+ Hits         4643     4645       +2
- Misses       1617     1653      +36
  Partials      268      268

Impacted Files
Coverage Δ

towhee/functional/mixins/parallel.py
10.00% <5.26%> (-8.19%)
:arrow_down:

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 532080c...3776f6b. Read the comment docs.

/approve
/lgtm


master fails testDilithiumRandomSig

Java-17, current BC master. One test reports Failure (not an Error):
testDilithiumRandomSig  Failure (Type: N/A)

junit.framework.AssertionFailedError
at org.bouncycastle.pqc.jcajce.provider.test.DilithiumTest.testDilithiumRandomSig(Unknown Source)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at junit.extensions.TestDecorator.basicRun(TestDecorator.java:23)
at junit.extensions.TestSetup$1.protect(TestSetup.java:23)
at junit.extensions.TestSetup.run(TestSetup.java:27)

Thanks. I've been able to reproduce this in 1.8 as well. I'm pretty sure this is a bug. It looks like there's an occasional bit flip in the signature generation - I suspect it'll be an uncaught sign extension, it's definitely not some weirdness due to Java 17.

Yes, it was a bug. Thanks. A couple of swapped ifs... in the signature unpacking validation code. I've published a new beta on https://www.bouncycastle.org/betas  and github has just synced up. You should find the test passes now.


fix: use hash~..hash format for DiffViewOpen command in open_diff_view

Can you describe the difference or show an example of what's changing functionally?

Sure, this is the reproduction steps of the bug I tried to fix:

Configure advanced-git-search to use diffview instead of fugitive
Type :AdvancedGitSearch search_log_content<cr> when working directory is in a git repository with some commits
Hit enter on an item

On my machine I get this error message:
   Error  20:36:01 msg_show.lua_error Error executing vim.schedule lua callback: ...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:187: The coroutine failed with this message:
	context: cur_thread=main co_thread=<thread 0x0106d93230> co_func=...iffview.nvim/lua/diffview/scene/views/diff/diff_view.lua:327
.../share/nvim/lazy/diffview.nvim/lua/diffview/renderer.lua:166: attempt to get length of local 'text' (a function value)
stack traceback:
	.../share/nvim/lazy/diffview.nvim/lua/diffview/renderer.lua: in function 'add_text'
	...y/diffview.nvim/lua/diffview/scene/views/diff/render.lua:107: in function 'render_file_tree_recurse'
	...y/diffview.nvim/lua/diffview/scene/views/diff/render.lua:112: in function 'render_file_tree_recurse'
	...y/diffview.nvim/lua/diffview/scene/views/diff/render.lua:112: in function 'render_file_tree_recurse'
	...y/diffview.nvim/lua/diffview/scene/views/diff/render.lua:112: in function 'render_file_tree_recurse'
	...y/diffview.nvim/lua/diffview/scene/views/diff/render.lua:120: in function 'render_file_tree'
	...y/diffview.nvim/lua/diffview/scene/views/diff/render.lua:130: in function 'render_files'
	...y/diffview.nvim/lua/diffview/scene/views/diff/render.lua:176: in function <...y/diffview.nvim/lua/diffview/scene/views/diff/render.lua:134>
	...ffview.nvim/lua/diffview/scene/views/diff/file_panel.lua:400: in function 'render'
	...iffview.nvim/lua/diffview/scene/views/diff/diff_view.lua:465: in function 'func'
	...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:373: in function <...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:358>
stack traceback:
	[C]: in function 'error'
	...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:187: in function 'raise'
	...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:215: in function 'step'
	...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:247: in function 'notify_all'
	...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:222: in function 'step'
	...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:399: in function <...cal/share/nvim/lazy/diffview.nvim/lua/diffview/async.lua:391>

and diffview opens in a bad state.
I noticed advanced-git-search is trying to open diffview using DiffView -uno <commit_hash> -- <file_name> in open_diff_view and this is causing the error, I think what we are looking for is viewing the diff of that particular commit which, as you are already doing in open_commit, can be achieved by running diffview with <commit_hash>^..<commit_hash>.
So I tried to reuse that logic by putting it in a function and calling that function in open_diff_view and open_commit.

I appreciate your work trying to fix this issue!
However, I think there is a difference between the two implementations
Hitting Enter on an entry should show the difference between the commit and the current buffer.
Ctrl-e will open the commit itself.
If I understand correctly:

DiffviewOpen -uno commit: diff the current state and a commit => Enter
DiffviewOpen -uno commit~..commit: diff the selected commit and the one before (so just a diff of a specific commit) => Ctrl-e

If you think I'm wrong about this, can you share a minimal git repo (or some steps to reproduce this repo state) that triggers this error?
Also, some version numbers can be handy to track the issue:

nvim
diffview
telescope/fzf

Thanks for the explanation! ❤
Diffview, when called with a single commit hash, raises an error on two of my repositories on more than 20 commits I tried it with. But I tried it in a fresh repository and it worked.
So, now that I understand diffview is actually supposed to be able to be called with a single commit and it doesn't necessarily need a commit range, I understand it is a feature in advanced-git-search and not a bug and I should track the issue in diffview.


RxJS could not find any global context (window, self, global)

Description
The SDK throws a ScriptError that says:
[ERROR] : message = "RxJS could not find any global context (window, self, global)";

Kinvey SDK Version
3.2.3
Titanium SDK Version
6.0.0

Release v3.2.5 resolves the issue by downgrading RxJS to 5.0.0-beta.12.


chore(main): release 1.0.2

:robot: I have created a release beep boop
1.0.2 (2023-04-21)
Bug Fixes

change curl output to include action_path (1618108)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/Brend-Smits/github-sbom-generator-action/releases/tag/v1.0.2 :sunflower:


Replace gaze with chokidar (+ deps update)

Main change
Our project use metalsmith, with metalsmith-watch in development mode. Problem is, we're starting to have a large number of files to watch, and gaze ends up with a Maximum call stack size exceeded error. There is an old issue from 2014 about that problem, but that module does not seem to be updated anymore.
To make metalsmith-watch work again on large number of files, this PR replaces gaze with chokidar.
Other changes

Fix lint errors in test files
Make travis run tests on node.js 8 & 10, and remove the obsolete node.js versions 0.12 and 4
Add a package-lock.json file to speed up installation on latest NPM versions
Fix a bug where callbacks are left dangling if metalsmith fails to load files

Dependencies update
All dependencies have been updated. This is a trivial change, except for the following issues:

Update babel to v7, solving breaking changes (especially, I made sure it still works with both ES6 and CommonJS import/require syntaxes)
Update eslint to v5: the .eslintrc file has been renamed and slightly adapted to this new major version
Update chalk to v2: that module does not export a stripColor function anymore. Instead, that feature has been moved to the new strip-ansi that the test files now use

+1

It's 2023. Time to remove that PR from my watch list.


Recurring Donations: High CPU usage with fixed-length and customizable rollups and custom naming

Summary
When creating fixed-length Recurring Donations (open-ended status not Open) with a lot of installments (60 in this case), and customizable rollups are enabled CPU usage increases dramatically. Adding Opportunity Naming Rules also increases the CPU usage, making it difficult for any additional code or process to also run.
Workaround
Create Recurring Donation records with smaller installments, increasing the value slowly to avoid many opportunities needing to be created at once.
Steps to Repeat

In a fresh scratch org with legacy rollups and no naming rules, edit Recurring Donation custom setting to increase Maximum Donations to 60.
Create a Recurring Donation record for a Contact, Any Amount, Any Installment Period. Set Open-Ended Status to None and Installments to 60.
Review debug log: CPU is 1300 out of 10000
Enable CRLPs (with no other edits) and create an identical Recurring Donation record.
Review debug log: CPU is 3961 out of 10000
Create two basic Opportunity Naming Rules and create an identical Recurring Donation record.
Review debug log: CPU is 4771 out of 10000

**lurch: add

Tracking W-037275

The workaround for slowly increasing the installments amount is no longer working. Is there anyone working on this or can you provide an ETA for the fix? We are in the middle of a $35 million dollar capital campaign and we aren't able to accommodate donors with over 40 installment amount recurring donations.

Hi @Fred-Triest - as you can see, this fix is being pushed to sandboxes starting tonight (1/8) and production next week. I would love to know if it helps you with this issue. Thanks for your patience.

Hi @judisohn ! Thank you so much for acting on this issue so quickly. This is perfect timing since we are working on a custom object for moves management this month and tying that new object in with Recurring Donations for our capital campaign pledges. Since our Recurring Donations are tied to 3rd party platforms (FormAssembly and iATS Payment Processing) I don't believe I can fully test this in the sandbox this week. I will definitely respond here if it works and based on the new NPSP setting to delay rollups related to Recurring Donations until nightly rollup jobs, I am confident it will.

Thanks for the response @Fred-Triest. If you do see any issues, can you post in the Power of Us Hub and tag us? Thanks!


initial commit after repo fork

Coverage remained the same at 60.303% when pulling 984fe59b30726c69fc2ecc6e685b27ec32616ca1 on sayarco:development into 80097eee48f38a217a396097b055005994277fe1 on kemalcany:master.


Fab2

Codecov Report

Merging #785 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master     #785   +/-   ##
=======================================
  Coverage   57.64%   57.64%
=======================================
  Files          71       71
  Lines       11587    11587
  Branches     1812     1812
=======================================
  Hits         6679     6679
  Misses       4306     4306
  Partials      602      602

Impacted Files
Coverage Δ

autobahn/asyncio/wamp.py
75.36% <100%> (ø)
:white_check_mark:

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 3dc5335...5dea1e1. Read the comment docs.


DrawingPlayer-DownloadDrawing-SaveDrawing

Story: As a drawing player, I would like to have a download option for my favorite drawing.
Acceptance Criteria:

[x] In the drawing phase, near the whiteboard area, there is a “Save” button enabled for the drawing player.
[x] Drawing players can save their current drawing result by clicking the "save" button. After the drawing player clicks the “save” button, the image is downloaded locally.
[ ] The save button is still enabled for the drawing player after entering the guessing phase. While waiting for guessing players to submit answers, the drawing player can still click the “Save” button to download his painting.
[x] The “save” button would not influence the process of the game.

Development Tasks:

[x] sopra-fs23-group-19/sopra-fs23-group-19-client#27
[x] sopra-fs23-group-19/sopra-fs23-group-19-client#28

add the save button in guessing stage

c11ad8fa8e58e63c7d1d2863abdf289b8b009eac


Add more detail to document

I have found some hidden feature that not documented. Then I add it.

Thanks for the pull request!


Global slug overrides prerendered route when accessed from another route with event.fetch, but ok from client?

Describe the bug
I have a web app that has a mix of prerendered pages and dynamic pages. The app also contains a REST endpoint that has export const prerender = true.  This fetch is done at build time, as the metadata itself doesn't change very often (but often enough that it can't be a static file), so we slapped the prerender flag on it.
Basic layout:
src/routes/[...slug]          Pages from the CMS
src/routes/api/route1         Component endpoint to get some data. Depends on route2.json
src/routes/api/route2.json    Prerendered metadata from the CMS

route1 requests data from route2.json and does stuff with it. All of this works great in dev mode, but it stops working in preview mode and also when deployed to the host. route2.json actually works fine when accessing thru the browser; however, it does not work when using event.fetch() from within route1. Instead it returns the HTML from our 404 page. route2.json also works without the prerender, but that means it needs to fetch the data from the CMS at runtime, which is what we're trying to avoid.
I have made a repo to demonstrate the problem: https://github.com/x0rsw1tch/sk-route-prerender-test. Reproduction steps included.
Reproduction
Using minimal reproduction repo

Clone my repo
Run npm i && npm run dev
Access http://localhost:5173/
Browser output: Result: {"something":true,"somethingElse":true} (working as intended here)
Shutdown dev
Run npm run build && npm run preview
Access http://localhost:4173/
Browser output: Result: {"something":true} (not working as intended here)

Manually

Create a new SvelteKit app
Create a route for /api/route2.json that is prerender = true  that outputs some JSON
Create a route for /api/route1 that outputs some JSON,
Have /api/route use event.fetch to retrieve data from /api/route2.json, and merge the JSON objects
Create a new route at root named [...slug] with param file containing:

export const match = (param) => {
  return /^[a-z0-9-]+$/.test(param);
};

Under [...slug]/+page.svelte Do a fetch at onMount fetching /api/route1 . Output the response to body to see what comes back from the fetch.

Expected result:
Output from /api/route1 has output from itself and from /api/route2.json in dev mode and preview mode.
Actual results:

Output from /api/route1 has output from itself and from /api/route2.json in dev mode, but preview mode throws an error.
If /api/route2.json is accessed from the client, the output is correct, it's only incorrect when accessing the endpoint using event.fetch. Error is thrown (see logs). When doing event.fetch('/api/route2.json'), it's not routing correctly, instead it's fetching from the "slug" endpoint returning HTML, not JSON.

Logs
Node logs:

SyntaxError: Unexpected token '<', "<!doctype "... is not valid JSON
    at JSON.parse (<anonymous>)
    at parseJSONFromBytes (node:internal/deps/undici/undici:5329:19)
    at successSteps (node:internal/deps/undici/undici:5300:27)
    at fullyReadBody (node:internal/deps/undici/undici:1447:9)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async specConsumeBody (node:internal/deps/undici/undici:5309:7)
    at async GET (file:///D:/Projects-Ethode/sk-predender-test/.svelte-kit/output/server/entries/endpoints/api/route1/_server.js:8:3)
    at async render_endpoint (file:///D:/Projects-Ethode/sk-predender-test/.svelte-kit/output/server/index.js:260:20)
    at async resolve2 (file:///D:/Projects-Ethode/sk-predender-test/.svelte-kit/output/server/index.js:2802:22)
    at async respond (file:///D:/Projects-Ethode/sk-predender-test/.svelte-kit/output/server/index.js:2697:22)

### System Info

```Shell
System:
    OS: Windows 11 10.0.22631
    CPU: (24) x64 AMD Ryzen 9 7900X 12-Core Processor
    Memory: 25.10 GB / 63.18 GB
  Binaries:
    Node: 20.11.0 - C:\Program Files\nodejs\node.EXE
    npm: 10.2.4 - C:\Program Files\nodejs\npm.CMD
    pnpm: 8.15.5 - ~\AppData\Local\pnpm\pnpm.EXE
  Browsers:
    Edge: Chromium (127.0.2651.74)
    Internet Explorer: 11.0.22621.3527
  npmPackages:
    @sveltejs/adapter-auto: ^3.0.0 => 3.2.5
    @sveltejs/adapter-vercel: ^5.1.0 => 5.4.4
    @sveltejs/kit: ^2.0.0 => 2.5.28
    @sveltejs/vite-plugin-svelte: ^3.0.0 => 3.1.2
    svelte: ^4.2.12 => 4.2.19
    vite: ^5.0.3 => 5.4.6

Severity
serious, but I can work around it
Additional Information
No response

All of this works great in dev mode, but it stops working in preview mode and also when deployed to the host.

Note that prerendering doesn't occur until build time so during development the behaviour is inaccurate.
I suspect the catch-all route is incorrectly taking precedence over the static files.


Automatically create a table of contents from headers in generated PDF

Hello
I am wondering if it is possible to automatically generate a table of contents (TOC) when a PDF is created based off of the headers in the markdown file that is being converted to PDF?
If not, would this be something considered as an enhancement to the plugin?
Thank you!

Hello @SteveBehm,
Currently, this feature is not implemented but could definitely be an enhancement to the plugin.

We'd very much appreciate a table of contents as well, especially for PDF's containing many (hundreds of) pages.
As a side note: This implementation of a PDF expert is creative and significantly better than all previously implementations I've seen, great work!

Hi,
Using these, the table of contents can be generated by the existing Markdown extensions.

`pagename.md:

---

[TOC]

mkdocs.yml, using the toc extension:

# Pages extensions
markdown_extensions:
  - toc:
      permalink: true
      title: Table of contents
      title_class: toc-title
      toc_depth: 2-3

custom.css, hiding the TOC on my web generation (but that's my use case):

.toc {
  display: none;
}

.toc-title {
  font-size: 1.5625em;
  font-weight: 300;
}

pdf.scss, showing the configured TOC in PDF generated documentation:

.page-break {
  display: none;
  page-break-after: always;
}

.toc {
  display: initial;
}

Example: https://radiandevcore.gitlab.io/tools/pre-commit-crocodile/index.pdf


Replication not working between eureka servers with spring security

Describe the bug
We have two eureka server instances trying to register with each other by using serviceUrl.  We have enabled spring security and included user name and password in the serviceUrl. The replication of services used to work without any issue when using Spring Boot - 2.7.13 and Spring Cloud - 2021.0.7 versions.
After switching to Spring Boot - 3.1.4 and Spring Cloud - 2022.0.2, the replication of services is not working any more and spring security is redirecting the POST requests "/eureka/peerreplication/batch/" to the login page as authorization header is missing.
Sample
Attached headers that are sent with "/eureka/peerreplication/batch/" request. The left side headers are for spring boot 3 which is missing authorization header while right hand side headers are from spring boot 2 which is having authorization header.

Can you try with the latest versions of spring cloud 2022.0.4?
If not, can you please take the time to provide a complete, minimal, verifiable sample (something that we can unzip attached to this issue or git clone, build, and deploy) that reproduces the problem.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.


Blank screen on some websites

Starting from yesterday some sites display black page when Dark Reader is enabled.  There was no such issue previously. I've tried to reset settings and reinstall but it doesn't help.
Examples of sites with this problem: stackoverflow.com, slack.com, vk.com
Update: If I set all controls to off (brightness, contrast, grayscale, sepia) it works correctly. Changing even one of those settings causes black screen.
Chrome version: 65.0.3325.146 (Official Build) (64-bit)
additionally posted this issue to stackoverflow

Update: If I set all controls to off (brightness, contrast, grayscale, sepia) it works correctly. Changing even one of those settings causes black screen.
Chrome version: 65.0.3325.146 (Official Build) (64-bit)

Hi. This happens for some users. Please, share your OS, CPU and GPU. Have a look at this issue https://bugs.chromium.org/p/chromium/issues/detail?id=804164 if possible give the details there too.

Added details to this issue. Interestingly, if I switch to discrete GPU this issue disappears.

Thanks.

got it in Version 65.0.3325.162 (Official Build) (64-bit)
Mac OS X
Looks like that chromium bug made it into the stable release.

BUMP.
For anyone looking to a possible work around: I found restarting Chrome resolved the issue curiously enough, it appears to be an issue with the Intel GPU. As so linked above.

Fixed by implementing Dynamic Theme mode, which doesn't use CSS filters.


feat(tools): add generate fragment types builder

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/graycoreio/daffodil/blob/master/CONTRIBUTING.md#commit
[ ] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

What is the current behavior?

Daffodil does not provide a packaged way to generate GraphQL fragment data.
What is the new behavior?
Daffodil provides a new package @daffodil/builders which contains a builder for generating GraphQL fragment type data.
Does this PR introduce a breaking change?
[ ] Yes
[ ] No

Other information
Tests are causing issues at the moment so they have been omitted.

What do you mean by this? Tests are causing issues at the moment so they have been omitted.

@lderrickable Importing the @graphql-codegen/cli package in the testing environment is what the root of the issues are, I think. It balloons the compilation to 2500+ modules and throws a million lines of errors to STDOUT, mostly about browser not being a valid alias configuration or something like that.

Could you make it so that someone can follow the docs and it works? I followed the docs and it doesn't seem to work, but maybe I'm doing something wrong. I don't see how it could work though because the build script references @daffodil/builders but I don't think that's a thing

I don't think I have perms to publish @daffodil packages but this would be a published package. For testing I used npm link to test. I can open a PR with an implementation in demo if it makes it easier.

We wouldn't publish it until after it got pushed to develop anyway. If it is publishable, we should be able to still run it from the dist folder, right? There is currently no way to build it into the dist folder I don't think.

Its dependent on file structure so I left it building to its own personal dist folder for initial testing. I'm not sure how the publish/release process works with daffodil packages but I can make it build to the main dist folder if that is a necessary part of it. I think it needs to read package.json in order to run the builder though, so just running based off what is in the dist folder is not possible.


mlops-129 env variables in wanna.yaml

Can you please add a test? :)

Can you please add a test? :)

Done :)

Codecov Report

Merging #33 (5ea6c3c) into master (1ec6f65) will increase coverage by 0.11%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #33      +/-   ##
==========================================
+ Coverage   72.80%   72.91%   +0.11%
==========================================
  Files          55       55
  Lines        2434     2444      +10
==========================================
+ Hits         1772     1782      +10
  Misses        662      662

Impacted Files
Coverage Δ

src/wanna/core/utils/loaders.py
100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Change delete story request

While deleting stories should add a field that checks if the story is the same user with the loged in user. Otherwise stories can be deleted by all users 😢

We do not need fix. Because we will not add this feature in real case.


Improve information for all columns of the table in RecruitmentPositionOverviewPage

Display priority deadline, rename "priority" column to "interviewers prioritet"
This page
Code for: RecruitmentPositionOverviewPage

This has been done in  #1571


Warn people who are hosting a server that their mod names will be shown

Relates to https://github.com/R2Northstar/NorthstarLauncher/pull/536

With Wiki being deprecated in favour of NorthstarDocs we should probably recreate the PR there ^^

@ASpoonPlaysGames

Superseded by https://github.com/R2Northstar/NorthstarDocs/pull/128


figure shortcode respects height, but ignores width

figure shortcode respects height value, but ignores width. Able to duplicate in Chrome, Firefox, incognito for both, as well as both the local server and published site- including editing the img tag via dev tools.
Example

{{< figure src="/images/avatars/bio-photo.jpg" alt="Troy Lindsay headshot" height="50" width="50" >}}

What version of Hugo are you using (hugo version)?

$ hugo version
hugo v0.89.4-AB01BA6E+extended windows/amd64 BuildDate=2021-11-17T08:24:09Z VendorInfo=gohugoio

Does this issue reproduce with the latest release?
Yes

@tlindsay42 I am unable to reproduce the behavior.
git clone --single-branch -b hugo-github-issue-9226 https://github.com/jmooring/hugo-testing hugo-github-issue-9226
cd hugo-github-issue-9226
hugo server


gcc*: fix libgomp (OpenMP) to work w/musl, don't build DSO using initial-exec

See commits for details and links.
When testing this[1] it fixed enabling OpenMP support in openblas and
in particular fixed Cython which was failing tests due to dlopen'ing borked libgomp.so
[1] on top of (minor) updates to cython/openblas/numpy not yet merged in our tree,
but I believe in PR's already

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

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

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

Update: yep cython "still" works with these fixes--as it should :).
If you use allvm.cachix.org, path is: /nix/store/48m09z9lqhhiamx1l33gg2fmxl7cq3lm-python2.7-Cython-0.28.3 --which is what you should get building 'pkgsMusl.pythonPackages.cython' with this PR :).
Anyway hopefully will be on a proper nixpkgs branch soon!

Success on x86_64-darwin (full log)
Attempted: gcc, gcc7, openblas
Partial log (click to expand)
  /nix/store/6jalg1y82lmircxvg159q616fl2qsqdm-gcc-7.3.0
  /nix/store/lg3s38557262fsifkzbxyf1vp883nj15-openblas-0.3.1
  /nix/store/qidjv1minlnixkgxp61919id2hb71s4b-gcc-wrapper-7.3.0
copying path '/nix/store/lg3s38557262fsifkzbxyf1vp883nj15-openblas-0.3.1' from 'https://cache.nixos.org'...
copying path '/nix/store/50hnnx8f3zn7v7r6c5p37872j2bijhzw-gcc-7.3.0-lib' from 'https://cache.nixos.org'...
copying path '/nix/store/6jalg1y82lmircxvg159q616fl2qsqdm-gcc-7.3.0' from 'https://cache.nixos.org'...
copying path '/nix/store/qidjv1minlnixkgxp61919id2hb71s4b-gcc-wrapper-7.3.0' from 'https://cache.nixos.org'...
/nix/store/qidjv1minlnixkgxp61919id2hb71s4b-gcc-wrapper-7.3.0
/nix/store/qidjv1minlnixkgxp61919id2hb71s4b-gcc-wrapper-7.3.0
/nix/store/lg3s38557262fsifkzbxyf1vp883nj15-openblas-0.3.1

Success on aarch64-linux (full log)
Attempted: gcc, gcc7, openblas
Partial log (click to expand)
copying path '/nix/store/649jspwx2vbv7zl2gf7w654hr0lfmn2z-expand-response-params' from 'https://cache.nixos.org'...
copying path '/nix/store/g3czn3wlv3xgs8icrm1mb0g9j7c1iarc-gcc-7.3.0-lib' from 'https://cache.nixos.org'...
copying path '/nix/store/r9m5bbm22j1hccw8yz5hfh7m5s9nnmfi-gfortran-7.3.0-lib' from 'https://cache.nixos.org'...
copying path '/nix/store/wcqyrcgk7ws3q2a6pj7zn4m6x1l5fyvp-isl-0.17.1' from 'https://cache.nixos.org'...
copying path '/nix/store/8s60cvic2p87szj16bmz7mz1b5wdagi7-gcc-7.3.0' from 'https://cache.nixos.org'...
copying path '/nix/store/667hvf0gvh6lidqvmml1ixz1svlq0i8f-openblas-0.3.1' from 'https://cache.nixos.org'...
copying path '/nix/store/9ha4n70sl6112j4wfpbimdi9xwncglwh-gcc-wrapper-7.3.0' from 'https://cache.nixos.org'...
/nix/store/083ahg0c6xfksdwz9ga292gjczb0sj77-gcc-wrapper-7.3.0
/nix/store/9ha4n70sl6112j4wfpbimdi9xwncglwh-gcc-wrapper-7.3.0
/nix/store/667hvf0gvh6lidqvmml1ixz1svlq0i8f-openblas-0.3.1

Success on x86_64-linux (full log)
Attempted: gcc, gcc7, openblas
Partial log (click to expand)
  /nix/store/qgilx8bpva0d3jg99g53kr9swhjady8y-gcc-7.3.0
  /nix/store/z1f5fla70bjgmfp9pnzqp72lbzhsn3vl-gcc-7.3.0-lib
copying path '/nix/store/z1f5fla70bjgmfp9pnzqp72lbzhsn3vl-gcc-7.3.0-lib' from 'https://cache.nixos.org'...
copying path '/nix/store/h8ws6vmvyga884x0m5vfdqrzmqa7wrb1-isl-0.17.1' from 'https://cache.nixos.org'...
copying path '/nix/store/8vmhlylgzm7074k0m0rpash0xy5c27wa-openblas-0.3.1' from 'https://cache.nixos.org'...
copying path '/nix/store/qgilx8bpva0d3jg99g53kr9swhjady8y-gcc-7.3.0' from 'https://cache.nixos.org'...
copying path '/nix/store/1py0m9bhz4jkszlffqbnksqdw1rf64d5-gcc-wrapper-7.3.0' from 'https://cache.nixos.org'...
/nix/store/lzh9rcw3rjvbaj7n3z4nzsvcz85k2p2m-gcc-wrapper-7.3.0
/nix/store/1py0m9bhz4jkszlffqbnksqdw1rf64d5-gcc-wrapper-7.3.0
/nix/store/8vmhlylgzm7074k0m0rpash0xy5c27wa-openblas-0.3.1

Post-merge review/comments welcome as always! :)


more memory-efficient index serialization

Before:
$ go tool pprof -text -nodecount 10 --alloc_space mem.out
File: dgin.test
Build ID: dcd14042072cd0a86fa35d2175d18eef0c1c8e5d
Type: alloc_space
Time: Sep 30, 2022 at 1:20pm (JST)
Showing nodes accounting for 4869.74MB, 98.83% of 4927.31MB total
Dropped 27 nodes (cum <= 24.64MB)
Showing top 10 nodes out of 39
      flat  flat%   sum%        cum   cum%
 2524.89MB 51.24% 51.24%  2720.89MB 55.22%  gopkg.in/yaml%2ev3.(*parser).node
  916.18MB 18.59% 69.84%   917.18MB 18.61%  io.ReadAll
  397.51MB  8.07% 77.90%   397.51MB  8.07%  gopkg.in/yaml%2ev3.read
  313.32MB  6.36% 84.26%  3614.72MB 73.36%  gopkg.in/yaml%2ev3.(*parser).parseChild
     188MB  3.82% 88.08%      196MB  3.98%  gopkg.in/yaml%2ev3.resolve
  152.50MB  3.10% 91.17%   152.50MB  3.10%  gopkg.in/yaml%2ev3.(*decoder).scalar
     131MB  2.66% 93.83%  2344.81MB 47.59%  gopkg.in/yaml%2ev3.(*parser).scalar
  119.50MB  2.43% 96.26%   119.50MB  2.43%  reflect.New
   74.84MB  1.52% 97.78%    74.84MB  1.52%  reflect.unsafe_NewArray
      52MB  1.06% 98.83%       52MB  1.06%  gopkg.in/yaml%2ev3.read_line

After:
$ go tool pprof -text -nodecount 10 --alloc_space mem.out
File: dgin.test
Type: alloc_space
Time: Oct 1, 2022 at 12:01am (JST)
Showing nodes accounting for 617.23MB, 99.60% of 619.73MB total
Dropped 16 nodes (cum <= 3.10MB)
      flat  flat%   sum%        cum   cum%
  402.72MB 64.98% 64.98%   617.23MB 99.60%  github.com/ProfoundNetworks/bsearch.LoadIndex
  112.50MB 18.15% 83.14%   112.50MB 18.15%  strings.(*Builder).grow (inline)
     102MB 16.46% 99.60%      102MB 16.46%  strings.genSplit
         0     0% 99.60%   112.50MB 18.15%  bufio.(*Reader).ReadString
         0     0% 99.60%   617.23MB 99.60%  github.com/ProfoundNetworks/bsearch.NewSearcher (inline)
         0     0% 99.60%   617.23MB 99.60%  github.com/ProfoundNetworks/bsearch.NewSearcherOptions
         0     0% 99.60%   617.23MB 99.60%  github.io/ProfoundNetworks/databrewery/dgin.TestBinarySearch
         0     0% 99.60%   112.50MB 18.15%  strings.(*Builder).Grow (inline)
         0     0% 99.60%      102MB 16.46%  strings.SplitN (inline)
         0     0% 99.60%   617.23MB 99.60%  testing.tRunner

I also removed zstdlib compression from the index, as indices are relatively small and compressing them brings little benefit.

@mpenkov Have you benchmarked the json version vs. the yaml one too, for performance? Ideally it's not slower than the yaml one, of course.
Did you try any other serialisation formats than json? I'm wondering if we should try a binary format or two as well (e.g. GOB, msgpack, protobuf) - if they're substantially faster than either yaml or json, perhaps we should sacrifice the human-readability - any thoughts?

I didn't do any benchmarking, but it's definitely a lot faster than YAML. Also, it's not really the JSON part that affects the speed. The JSON is only the first line and it's a tiny part of the index. The rest of index is effectively TSV, which is fast to parse.
I'll do some speed benchmarks and push them to the PR.


redshift: Fix missing "vidmode" support

Fixes "-m vidmode".
Fixes issue #123687.
Description of changes
Add withVidmode option, like the other options, defaulting to on. Pulls in an X library.
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

@eclairevoyant @primeos This is ready for review, if you'd like to have a look.


Backoff time

Fixes #409 by introducing request_delay, an optional field in meta of any response to ask the client to wait specified number of seconds (float) before issuing subsequent request.

Given that HTTP is assumed as the API access protocol, we can also leverage the standard Retry-After response header: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After.

@dwinston fair point. I will adjust the proposal to add Retry-After.

@ml-evs

Do we prefer request_delay instead of just using the same nomenclature as retry_after? One minor formatting comment below.

I would indeed prefer sticking to the same nomenclature, but "retry" part does not sound right here. I would expect "retry" to mean "issue the exact same request". Maybe next_request_after or just request_after sounds better?

@ml-evs, @merkys

Do we prefer request_delay instead of just using the same nomenclature as retry_after? One minor formatting comment below.

I would indeed prefer sticking to the same nomenclature, but "retry" part does not sound right here. I would expect "retry" to mean "issue the exact same request". Maybe next_request_after or just request_after sounds better?

As a remark: I first though the http header retry_after was not appropriate at all outside delivering an http errors. However, digging a bit in the RFCs made me realize that while the latest RFC allows it to be used also the way we say. The reason for the name is thus "historical debt".
Nevertheless, I agree with @merkys to rather just use a more helpful term.


Extended paddle Z limit slightly.

Fixes the ball being able to slip past the paddle in some tables.
Closes #99

This is tiny. Going to merge it without a review ^_^


Introduction to Computer Science Course has been added (Cs101)

I just add Introduction to Computer Science Course by Stanford University , it’s free Course called cs101

any specific reason to replace this with cs50?

I personally think that CS50 is much better. David J. Malan is a very great professor. Taking CS50 will make you inspired and keep you motivated to learn programming


Combination of MultiSpike spike function and SingleExponential surrogate gradient function doesn't make sense

If this refers to the default arguments of the LIF and IAF layers, I agree.


Feature: Optimized mode

🚀 Feature Proposal
Those 2 instructions are slowing down the processing of queries: https://github.com/fastify/aws-lambda-fastify/blob/master/index.js#L31-L32
What about using  https://github.com/fastify/fast-json-stringify based on this definition: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html
I'd add a flag optimized or something similar with default value to false to avoid side effects.
Motivation
Speeding up the API
Example
const awsLambdaFastify = require('aws-lambda-fastify')
const app = require('./app')

const proxy = awsLambdaFastify(app, {optimized:true})

exports.handler = proxy

Maybe there is a possibility to not introduce the optimized flag at all?
Would you like to send a Pull Request to try this? Remember to add tests.
btw: make sure v2 and v1 of the event format is supported

Maybe there is a possibility to not introduce the optimized flag at all?
Would you like to send a Pull Request to try this? Remember to add tests.
btw: make sure v2 and v1 of the event format is supported

The optimizeFlag is more about offering the possibility of not using the definined schema in the case of a AWS api change. Like not serializing an extra field for example.
Are those json good references?

v1 https://github.com/awsdocs/aws-lambda-developer-guide/blob/main/sample-apps/nodejs-apig/event.json
v2 https://github.com/awsdocs/aws-lambda-developer-guide/blob/main/sample-apps/nodejs-apig/event-v2.json

Sure i can work on it

Are those json good references?

Probably yes, but I always check the official page: https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html

To go a little bit further, do you think we can use the optimizeFlag to prevent those headers to be added?
I'm working with lambda+fastify with multiple clients, we rarely use them (apart when authorizers are used).
What do you think about it?

If you want to omit them, then we should introduce an additional option.

if fast-json-stringify can also handle new properties (and format versions) not defined in the schema (just slower), then we could replace JSON.stringify completely.
And only introduce a flag to omit the stringification completely.

To go a little bit further, do you think we can use the optimizeFlag to prevent those headers to be added?
I'm working with lambda+fastify with multiple clients, we rarely use them (except when authorizers are used).
What do you think about it?

You can just do:
import awsLambdaFastify from 'aws-lambda-fastify';
import app from './app';

const proxy = awsLambdaFastify(app);
const f = function (event, context, callback) {
  delete event.headers;
  return proxy(event, context, callback);
};
module.exports.handler = f;

Sorry, I don't get what you want to say....

v1.6.0 introduced the serializeLambdaArguments option


how to change generator for another or share source for ice_secp256k1.so

could you explain how to change base generator for bsgs_dll? now you have set up for G , I would change for other pubkey or can you share ice_secp256k1.so as source for changing? and source for file: bsgs.so?

P2 is another Point, Not G.
https://github.com/iceland2k14/bsgs/blob/acefb326144e7619ac7a7c6d3e10723b91cb5796/v6_dll_bsgs/bsgs_dll_search.py#L218
https://github.com/iceland2k14/bsgs/blob/acefb326144e7619ac7a7c6d3e10723b91cb5796/v6_dll_bsgs/bsgs_dll_search.py#L302


Show RAM warning in GUI / log in CLI

The RAM implementation in #157 does not offer a visual hint in the GUI. The use of print() in the CLI also limited the way we can format the message. Here is a modified version with a more portable API.

Codecov Report

Merging #174 (f163076) into main (67caa9b) will decrease coverage by 0.04%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #174      +/-   ##
==========================================
- Coverage   11.27%   11.22%   -0.05%
==========================================
  Files          45       45
  Lines        5952     5976      +24
==========================================
  Hits          671      671
- Misses       5281     5305      +24

Impacted Files
Coverage Δ

recOrder/io/utils.py
0.00% <0.00%> (ø)

recOrder/pipelines/pipeline_manager.py
0.00% <0.00%> (ø)

recOrder/plugin/workers/acquisition_workers.py
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Look good...I'm on board.
Would you mind testing this before merging? I think it will be easiest to test locally or on the HPC where you can control how much RAM is available.

Would you mind testing this before merging? I think it will be easiest to test locally or on the HPC where you can control how much RAM is available.
I tested locally (16 GB RAM) and on the Automaton computer (128 GB RAM) and it works as expected.
Not sure about the CLI part yet.

@talonchandler can you help test on the CLI to see if the message is displayed properly?

@ziw-liu When you tested the napari showwarning function, did your warning messages persist in napari?
I'm finding that as I step through showwarning I get the correct warning message, but when I run it normally the message doesn't persist.

did your warning messages persist in napari?

I think napari manages the persistence of the message. In my testing it'll only stay on for a few seconds but will persist if you click the expand icon.

I just tested the CLI and the message appears as expected.
I also changed the behavior so that the message appears in napari when you run the pipeline in offline mode.

I also changed the behavior so that the message appears in napari when you run the pipeline in offline mode.
Will the method ever be called when there is not a napari instance (e.g. in CLI mode)? That will cause an error.

Have you tested? I thought it would error, too, but I tried it and I didn't get an error.

If you haven't run the CLI or offline mode yet, I can give you a quick intro/tutorial. It can be a bit finicky, but it works pretty well.

Have you tested?
No I haven't, just speculating 🤔


Incompatible with ddev v1.23.5

Is there an existing issue for this?

[X] I have searched the existing issues

Are you sure that this bug is related to this DDEV Integration Plugin?

[X] I am sure

Enter your error report ID (If available)
0377667ef3e74dfcb1ec3a2672470099
Describe the bug
The DDEV Integration plugin is currently incompatible with DDEV 1.23.5
Steps to reproduce

Update DDEV to 1.23.5
Try to use DDEV Integration 1.2.4

Additional context
PHPStorm stacktrace
de.php_perfect.intellij.ddev.cmd.CommandFailedException: Command '/usr/bin/ddev describe --json-output' returned non zero exit code {exitCode=1, timeout=false, cancelled=false, stdout=, stderr={"level":"fatal","msg":"\u001b[31mFailed to describe project(s): the vacation-tracker project has an unsupported database type/version: 'postgres:17', DDEV amd64 only supports the following database types and versions: mariadb: [5.5 10.0 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 10.11 11.4], mysql: [5.5 5.6 5.7 8.0], postgres: [9 10 11 12 13 14 15 16]\u001b[0m","time":"2024-10-21T22:18:41+02:00"}
}
	at de.php_perfect.intellij.ddev.cmd.DdevImpl.execute(DdevImpl.java:74)
	at de.php_perfect.intellij.ddev.cmd.DdevImpl.describe(DdevImpl.java:39)
	at de.php_perfect.intellij.ddev.state.DdevStateManagerImpl.checkDescription(DdevStateManagerImpl.java:155)
	at de.php_perfect.intellij.ddev.state.DdevStateManagerImpl.lambda$initialize$0(DdevStateManagerImpl.java:54)
	at de.php_perfect.intellij.ddev.state.DdevStateManagerImpl.checkChanged(DdevStateManagerImpl.java:90)
	at de.php_perfect.intellij.ddev.state.DdevStateManagerImpl.initialize(DdevStateManagerImpl.java:49)
	at de.php_perfect.intellij.ddev.state.DdevStateManagerImpl.initialize(DdevStateManagerImpl.java:33)
	at de.php_perfect.intellij.ddev.InitPluginActivity.lambda$execute$0(InitPluginActivity.java:19)
	at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport$executeOnPooledThread$1.run(AnyThreadWriteThreadingSupport.kt:134)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
	at com.intellij.util.concurrency.ContextCallable.call(ContextCallable.java:32)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
	at com.intellij.util.concurrency.ContextRunnable.run(ContextRunnable.java:27)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:735)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:732)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:732)
	at java.base/java.lang.Thread.run(Thread.java:1583)

Other errors and warnings:
DDEV integration entered unknown state
The DDEV Integration Plugin has lost track of the DDEV status. This most likely occurs together with another related error message. Please report this issue if it occurs repeatedly.

DDEV update available
Your DDEV version v1.23.4 is outdated. Update to v1.23.5 now.

This seems to me like /usr/bin/ddev, which the IntelliJ plugin is configured to use, is still version 1.23.4. The error message in your report is from DDEV itself: "unsupported database type/version: 'postgres:17'"
postgres 17 support was added in 1.23.5.
Please verify the version by running /usr/bin/ddev version.

This seems to me like /usr/bin/ddev, which the IntelliJ plugin is configured to use, is still version 1.23.4. The error message in your report is from DDEV itself: "unsupported database type/version: 'postgres:17'" postgres 17 support was added in 1.23.5.
Please verify the version by running /usr/bin/ddev version.

Oh dang, it was indeed on my side. Thanks for the clarification, issue solved.


strange sizes calculation

Hello, thank you your time and for this amazing library! It's very cool!
During the debugging process, I discovered that the image size attribute was calculated incorrectly. I read and tried several solutions from the already solved issues, but nothing comes of it. I just found out that problems start with the rias & parent-fit plugins. Could you please help me? I am attaching a demo (https://codepen.io/anon/pen/ROdmRW)

I haven't looked to long on your implementation but there is at least one markup error that probably causes your issue.
You are using the following markup:
data-aspectratio="200/100"

You should instead use the ratio itself:
data-aspectratio="2"

@KhramtsovMaksim
Did this solve your problem?

@aFarkas , sorry for delay - Yes it works with data-aspectratio="2".
Thank you!


Document installing using npm directly

For folks that already have Node.js installed, which increasingly will become most SFCC developers as its a requirement of PWA Kit, I believe the most straight forward way to start using sfcc-ci will be install it directly from npm as it appears the tool is already available there: https://www.npmjs.com/package/sfcc-ci
This change adds that instruction to the top of the list of possible ways to install the tool.

@johnboxall Thanks for contributing! Changes have been merged into master. Building a new release is still pending.


Tier 2 zip file doesn't get downloaded

Tried to download https://fantia.jp/fanclubs/1803 which I'm tier 2 (500 yen) member.
I found out that while I can download tier 2 images, all the zips are not downloaded.
Not sure if them being tier 2 is relevant.
Example: https://fantia.jp/posts/172351
It has tier 2 zip:

But when download, only free tier's image has been downloaded.
Log:
G:\_temp\dumpia>C:\xampp\php\php.exe dumpia.php --fanclub 1803 --key bbf069878d318012393afaca4f49015f --output dl --verbose
...
[Tue, 18 Jun 2019 19:22:33 +0200][13304] Trying 145 posts ...
[Tue, 18 Jun 2019 19:22:33 +0200][13304] Fetching metadata (JSON) for post 172351 ...
[Tue, 18 Jun 2019 19:22:33 +0200][13304] cURL: https://fantia.jp/api/v1/posts/172351
[Tue, 18 Jun 2019 19:22:34 +0200][13304] cURL: Got HTTP/200, received 17373 bytes.
[Tue, 18 Jun 2019 19:22:34 +0200][13304] JSON: Decode OK
[Tue, 18 Jun 2019 19:22:34 +0200][13304] Downloading 1 URLs for post 172351...
dl/172351 (1 URLs): [Tue, 18 Jun 2019 19:22:34 +0200][13304] https://c.fantia.jp/uploads/post/file/172351/0627bfa6-f1cc-45c6-9473-584e364da522.jpg
.

Edit: I can reproduce the same bug with Ubuntu.
fireattack@fireattack-VirtualBox:~/Desktop/dumpia$ php dumpia.php --fanclub 1803 --key bbf069878d318012393afaca4f49015f --output dl
[Tue, 18 Jun 2019 12:32:53 -0500][17009] dumpia - v1.0 - https://github.com/itskenny0/dumpia
[Tue, 18 Jun 2019 12:32:53 -0500][17009] Attempting to fetch page 1...
[Tue, 18 Jun 2019 12:32:54 -0500][17009] Attempting to fetch page 2...
[Tue, 18 Jun 2019 12:32:54 -0500][17009] Attempting to fetch page 3...
[Tue, 18 Jun 2019 12:32:55 -0500][17009] Attempting to fetch page 4...
[Tue, 18 Jun 2019 12:32:56 -0500][17009] Attempting to fetch page 5...
[Tue, 18 Jun 2019 12:32:56 -0500][17009] Attempting to fetch page 6...
[Tue, 18 Jun 2019 12:32:57 -0500][17009] Attempting to fetch page 7...
[Tue, 18 Jun 2019 12:32:58 -0500][17009] Attempting to fetch page 8...
[Tue, 18 Jun 2019 12:32:58 -0500][17009] Attempting to fetch page 9...
[Tue, 18 Jun 2019 12:32:59 -0500][17009] Trying 145 posts ...
dl/172351 (1 URLs): .
dl/169930 (2 URLs): ..
^C

(Forgot to use --verbose, but notice how it only find 1 URL for 172351.)

From what I can see by reading the code briefly, there is no handling of file download currently.
It should be doable with API's filename and download_uri of this type of post_contents AFAIK.

This should've been fixed by https://github.com/itskenny0/dumpia/commit/183c90cb266ff0c937c520ab9fe867c8c0f46b28 - could you please test if this solves your issue?
Best,
kenny

It is fixed, thanks!


Ruby Samples for Google Cloud BigQuery (updated to use google-cloud-bigquery)

Follow-up from #38 -- this reformats #38 into for template that we've been using for recent samples
Note: project listing is not included in this pull request.  See google-cloud-ruby #911

LGTM

@bshaffer Whitespace is near and dear to the hearts of Rubyists ... so it's a super duper relevant comment 😄   I'll work on making the samples more consistent -- this was actually a really good catch


Minor documentation tweaks

Let me know whether I should squash manually or you'll Github do the job.


Add type definition for command args

This pull request uses Typescript Template Literal Types to parse the command string and provide type-checking for the args of the execute function based on the format defined in the README. It supports optional and required parameter, as well as explicit type definition (for Float, Int and GuildMember) and rest parameters.
I think this Pull Request has the potential to make it easier to use this library in a Typescript environment, as casting the arguments is no longer necessary for the developer.

Thanks for the contribution! I'm not very familiar with Template Literal Types, so I'm gonna do some reading and I'll come back to review this soon.

I just pushed a revert for this PR. I was running into issues when trying to get it working for the default values syntax I was working on, and also would prefer to not have this very complex type in place w/o any tests. It's likely just a lack of familiarity on my part that's causing me to have issues with it, but regardless I don't want it slowing me down as I try to add features. I'll look to get this type added back once I'm closer to a 1.0 feature set.

I didn’t mean to cause you trouble! Sorry

Le 19 juin 2021 à 03:06, Weston @.***> a écrit :

I just pushed a revert for this PR. I was running into issues when trying to get it working for the default values syntax I was working on, and also would prefer to not have this very complex type in place w/o any tests. It's likely just a lack of familiarity on my part that's causing me to have issues with it, but regardless I don't want it slowing me down as I try to add features. I'll look to get this type added back once I'm closer to a 1.0 feature set.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

No trouble at all! I'm just not familiar enough with template literal types to keep them updated accurately. I hope to your PR back at some point with whatever changes necessary.


Update setup.py to enable cuda PyTorch

The current PyTorch version being installed is cpu-only.
Locally, running conda remove pytorch followed by conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia (from https://pytorch.org/get-started/locally/) seemed to work for my needs, but we might want to update setup.py accordingly.
Motivation: be able to train ML models using GPU.

Also had to set an environment variable to still enable torch.use_deterministic_algorithms(mode=True).
From https://docs.nvidia.com/cuda/cublas/index.html#results-reproducibility:
export CUBLAS_WORKSPACE_CONFIG=:4096:8

after further thought and discussion, we decided to leave setup.py alone, but to raise a helpful error if someone is attempting to use a GPU but doesn't have the right version of pytorch installed. the main reason is that the pytorch dependency varies per system


jslint release support

Would you please add the option to configure the jslint release to use? Gulp-jslint for example allows to configure it so it would be ideal that the developer using brackets uses the same version that later on a release process will use.
I tried deploying the newest jslint.js file but it did not work because it tries to use JSLINT which is not longer defined.
For now I am forced to delete the internal jslint.js that comes with brackets to avoid confusion and rely uniquely on gulp tasks.

Just to report what I am doing now as a workaround:

Delete the very old jslint included with brackets (2012-01-13)

mv ~/jslint.js /Applications/Brackets.app/Contents//www/extensions/default/JSLint/thirdparty/jslint/jslint.js

Install https://github.com/markmcintyre/brackets-jslint plugin which is available from the registry in the brackets user interface.
Since it installs version 2014-07-08 and gulp-jslint supports that version everything works fine for me at the moment.


Result Miou

could anyone show the training and testing result ?
my result goes too bad to see.

I tried some epochs but I didn't get good results.
My metrics are:
Loss:<PHONE_NUMBER>70, miou: 0.3599

I think you can train model with more epoch because
modified xception do not have a pretrained model and
also you can use tensorboardX to visualize outputs of
training data.

well, I am training the model using the original configuration (including the pre-trained model you used) and it is in the epoch 50. I attach the current results.
[Epoch: 49, numImages: 10582]
Loss:<PHONE_NUMBER>80
Execution time: 1499.6592651726678
Save model at .../deeplabv3plus-xception-voc_epoch-49.pth
Validation:
[Epoch: 49, numImages:  1449]
Loss:<PHONE_NUMBER>31
MIoU: 0.387194

Did you use the latest code to train the model?
Network architecture defined in previous version has some problems.

Thank you for your patience and interest in this code.
Further discussion about performance of this code can be moved to #12 .


test the training results

Hello, I downloaded the Melodic branch of your project, but I couldn't find the code file for testing the training results in it. If I use the Noetic version of the testing code, I will report an error. How can I test the training results

I use the Noetic version of the testing code，The terminal will output the following error
/home/autolabor/.local/lib/python3.6/site-packages/torch/cuda/init.py:80: UserWarning: CUDA initialization: The NVIDIA driver on your system is too old (found version 9010). Please update your GPU driver by downloading and installing a new version from the URL: http://www.nvidia.com/Download/index.aspx Alternatively, go to: https://pytorch.org to install a PyTorch version that has been compiled with your version of the CUDA driver. (Triggered internally at  ../c10/cuda/CUDAFunctions.cpp:112.)
return torch._C._cuda_getDeviceCount() > 0
Traceback (most recent call last):
File "test_velodyne_td3.py", line 55, in
env = GazeboEnv("multi_robot_scenario.launch", environment_dim)
TypeError: init() missing 2 required positional arguments: 'width' and 'nchannels'

There is a discrepancy between how the GazeboEnv is initialized in noetic and melodic. This is purely a simple python issue, you are missing input values for the class instantiation. AFAIK you could put anything there as they are not used in the code anyway, which is why it was removed in the noetic version.

Thank you very much. With your suggestion, I have solved the problem very well


Event not working.

Describe your problem here.
Can anyone explain why this isn't working?
function onEvent(name) if name == 'die' and botplay == true then setTextString('botplayTxt', 'die') setProperty('health', 0) end end
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
No.

botPlay

thanks lol


onSnapToItem not working (android)

Hi! I'm using version 3.3.2 in a brand new project and the snapToItem isn't working. The code is exactly the one below:
          <Carousel
              ref={(c) => { this._carousel = c; }}
              data={pickerList}
              renderItem={({item, index}) => <Text
                style={{
                  height: 30,
                  textAlignVertical: 'center',
                  flex: 1,
                  textAlign: 'center',
                  fontSize: 16
                }} key={"money"+item}>{item}</Text>}
              sliderHeight={80}
              sliderWidth={90}
              itemHeight={30}
              itemWidth={90}
              vertical
              loop
              onSnapToItem={pickerValue => console.log(pickerValue)}
            />

Any idea what's wrong?

Hi @sidferreira,
First, have you read this note as well as this one from the doc?

TL;DR
Android's debug mode is a mess: timeouts regularly desynchronize and scroll events are fired with some lag, which completely alters the logic of the carousel. On Android, you will experience issues with carousel's behavior when JS Dev Mode is enabled, and you might have trouble with unreliable callbacks when it isn't. This is unfortunate, but it is rooted in various flaws of the ScrollView/FlatList's implementation and the miscellaneous workarounds we had to implement to compensate for it.
Therefore you should always check if the issue also happens in a production build. This is also the only way to test the real performance and behavior of the carousel.

Then, can you tell me if the issue is that onSnapToItem isn't fired or if it's that pickerValue returns a wrong value?
Finally, is the  provided example working properly for you?

Closing as no further feedback was provided.

I noticed that Android's onSnapToItem was never reliable when I swiped too fast or when I reached the edges.
enableMomentum mitigated the issue - it calls onSnapToItem albeit with a little delay.

Hey @akiwarheit,
Have you read the following sections of the documentation?

Important note regarding Android
Android performance
Unreliable callbacks


[UI] Kubernetes config error on service management page

Description

When I try to access any one of the service mesh management page, I come across this error: "Unable to fetch prometheus and grafana scan data: No valid kubernetes config found." It redirects me to http://localhost:3000/settings#service-mesh page
Expected Behavior

Instead, upon selecting a service mesh management page, I should be seeing something like this:

Screenshots

This is what I get when I try selecting a service management page:

Environment:

Host OS: Windows
Meshery Version: not sure?
Kubernetes Version: N/A
Browser: Chrome

To Reproduce
Steps to reproduce the behavior:

Go to any one of the service management page
Click on 'Configure Settings'
See error

@anirudhjain75, we need to improve the user experience here. Will you take a crack at this? No toaster notification should be shown, however, we might consider another helpful indicator.

How about just having this toaster when grafana and Prometheus configuration tab is opened ?

Good suggestion. We're abusing the toaster notifications overall and need to pull away from them in general. To close out this issue, the toaster notification can be muted (not sent). The user will see that no prometheus and Grafana instances have been discovered when they come upon an empty text field on the Metrics tab.
Meshery's integration with either Prom or Graf doesn't strictly need Kubernetes.


[FEATURE]: Adding Docker Images details in readme

Adding docker images pull information in readme

This will be moved to a common spot in documentation.


Document when blankCanvas calls its argument

It took me a bit of experimenting and help in #77 to figure out that:

blankCanvas executes its argument (say run) the moment the user opens the browser windows,
opening a second browser window will execute a new, independent instance of run
closing a window browser does not stop the instance
reloading hence starts a new instance (useful after the window changed size), but the previous keeps running.

So if one is creating animations and reloads the page a few times, many instances are running in parallel.
Is the above correct? Could it be added to the docs of blankCanvas?
Also, why is it not possible to kill an instance after the browser window has been closed/reloaded?

This is a good summary. We'll add something to the docs.
There is no way for the blank canvas process to know that the client has disconnected. But we can look into adding something to comet that will give this ability. Also, there is a websockets version, that should be looked at  - the close will be easier to detect.

Ok, moved the killing to #80, to keep the issues on single topics.


Possibility for Acknowledgements

RabbitMQ allows to have different responses to Acknowledgements if a message is handled correctly. I think we should try to support this also for commands and event. But i'm not sure how we should allow this using commands and events. This is related to #2 to retry messages if it fails for some reason.
Consumers can return any of these

https://github.com/videlalvaro/RabbitMqBundle/blob/master/RabbitMq/ConsumerInterface.php

My thoughts so far: if you don't acknowledge an AMQP message, it will be dispatched again and again until it is finally acknowledged. This means that we shouldn't return false or something from the consumer. Instead, implementing your own error handler is the way to go in case you want to publish a message again some other time.

By the way, I have left the RabbitMQConsumer class particularly clean, so users can always implement their own logic, without duplicating any code.

The only thing we are doing is when we get an exception is to send the reject response which tells RabbitMQ to remove / discard the message but not define it as handled.

Ah, that's a good suggestion. I will add it.

Done: https://github.com/SimpleBus/RabbitMQBundle/blob/master/src/RabbitMQMessageConsumer.php

Closing this (feel free to add more comments though, I'm just cleaning up a bit to keep track of the issues).


[Question] What is the Powered effect in the results?

If you could tell me. I can't fully understand it from the code

If you have set the power to, say 80%, then if the true difference between control and treatment was equal to the powered effect, then you would detect that difference (I.e. get a statistically significant result) 80% of the time.
This has a couple of implications:

If the power is set to 50% and the measured effect equals the powered effect, then the lower confidence bound will be exactly zero, i.e. the powered effect is the smallest difference that will be statistically significant (but only when the power is set to 50%).
The higher you set the power, the larger the powered effect will be since higher power basically means that you want to be more certain that the null is rejected when the true difference equals a specific alternative hypothesis.

Hope this help!

Thanks for the explanation. To be sure I understand the practical user, so if difference>=powered_effect then I can say my test has achieved or surpassed the power set as objective right?

Just curious, is there a documentation website for this package?

Thanks for the explanation. To be sure I understand the practical use, so if abs(difference)>=powered_effect then I can say my test has achieved or surpassed the power set as objective right?

Well, yes, but the usual way to use power is to use it when you, before launching the experiment, calculate the sample size. The power is one of the parameters that determine the required sample size, along with the significance level alpha, the minimum detectable effect size (MDE) and the variance of the metric in question.
The powered effect in the dataframe you get from the difference methods is the currently powered effect, based on the current sample size, which might be larger or smaller then the sample size required to power the MDE you set before launching the experiment.
Hope that clarifies it further!

Just curious, is there a documentation website for this package?

Not at the moment no. The only documentation we currently have is the doc strings and the example notebooks in the repo.

It would be good to have a more comprehensive documentation website.

Yes, totally agree! I will see if we can find time to improve the documentation.

Another question, is the "non_inferiority_margin" equivalent to "minimum detectable effect size (MDE)"? Is it in absolute or relative sense? I didn't see clear documentation on that.

MDE are used to say what size improvement you want to be able to detect. NIMs are used to say what the largest deterioration of a metric you can accept, e.g. "I want to be sure (e.g. with 99% confidence) that latency doesn't increase more than 5%". Bot are given in relative terms, relative to the average. So, for example, if you have average latency of 200ms and then providing a NIM of 0.05 means that you want to make sure it doesn't go above 210ms.