Run backup as restic user

Hello!
Following the example in the restic docs, I've set up restic to run as a separate user (rather than root). I believe I'll want to make use of the systemd timer implementation in this repo, but I'm not familiar enough with systemd timers to know for sure if my planned solution sounds like it'd work.
I think what I want to do is instead of installing the timer and service into /usr/lib/systemd/system like the Makefile does by default, I'll want to put it into ~restic/.config/systemd/user/ and enable lingering sessions for my restic user.
Does that sound about right? If I get this figured out, would it be valuable for me to contribute an option to make install that way back to this repo?
Thank you for putting this together! This is bound to really help me out with setting up my new backup system.

Hey, fun that you explore different ways of running it. The best solution is (well can be) the tailored one
The aim of this project is not to cover all ways of doing it, as it makes it too complicated. But a summary of your findings would be nice to have documented here if someone is interested in a similar setup that you're doing :)

Finally got around to doing this...
Not sure how I missed it but it turns out you can still put the service unit in the system directory and specify User=restic and Group=restic under the [Service] header and it just works:
[Unit]
Description=Run Restic backup

[Service]
Type=simple
ExecStart=/home/restic/restic-backup.sh 2>&1 | systemd-cat
WorkingDirectory=/home/restic
User=restic
Group=restic


TensorFlow 1.4.0 issue: "At least two variables have the same name: ppo/.../Adam"

Spun up a new EC2 instance and installed TensorFlow from source, running my code gives:
Traceback (most recent call last):
  File "rl_hsearch.py", line 631, in <module>
    main_gp()
  File "rl_hsearch.py", line 627, in main_gp
    y_list=Y
  File "/home/lefnire/btcbot/gp.py", line 196, in bayesian_optimisation2
    y_list.append(loss_fn(params))
  File "rl_hsearch.py", line 587, in loss_fn
    reward = hsearch.execute(vec2hypers(params))
  File "rl_hsearch.py", line 440, in execute
    **hydrated
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/agents/ppo_agent.py", line 155, in __init__
    keep_last_timestep=keep_last_timestep
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/agents/batch_agent.py", line 61, in __init__
    batched_observe=batched_observe
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/agents/agent.py", line 121, in __init__
    self.model = self.initialize_model()
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/agents/ppo_agent.py", line 181, in initialize_model
    likelihood_ratio_clipping=self.likelihood_ratio_clipping
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/models/pg_prob_ratio_model.py", line 81, in __init__
    gae_lambda=gae_lambda,
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/models/pg_model.py", line 86, in __init__
    entropy_regularization=entropy_regularization,
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/models/distribution_model.py", line 74, in __init__
    reward_preprocessing_spec=reward_preprocessing_spec
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/models/model.py", line 119, in __init__
    self.setup()
  File "/home/lefnire/btcbot/tmp/tensorforce/tensorforce/models/model.py", line 344, in setup
    save_relative_paths=True
  File "/home/lefnire/anaconda3/lib/python3.6/site-packages/tensorflow/python/training/saver.py", line 1239, in __init__
    self.build()
  File "/home/lefnire/anaconda3/lib/python3.6/site-packages/tensorflow/python/training/saver.py", line 1248, in build
    self._build(self._filename, build_save=True, build_restore=True)
  File "/home/lefnire/anaconda3/lib/python3.6/site-packages/tensorflow/python/training/saver.py", line 1284, in _build
    build_save=build_save, build_restore=build_restore)
  File "/home/lefnire/anaconda3/lib/python3.6/site-packages/tensorflow/python/training/saver.py", line 743, in _build_internal
    saveables = self._ValidateAndSliceInputs(names_to_saveables)
  File "/home/lefnire/anaconda3/lib/python3.6/site-packages/tensorflow/python/training/saver.py", line 596, in _ValidateAndSliceInputs
    names_to_saveables = BaseSaverBuilder.OpListToDict(names_to_saveables)
  File "/home/lefnire/anaconda3/lib/python3.6/site-packages/tensorflow/python/training/saver.py", line 561, in OpListToDict
    name)
ValueError: At least two variables have the same name: ppo/optimization/step/step/ppo/actions-and-internals/beta/parameterize/alpha/apply/W/Adam

Last working TensorFlow version (prior EC2 instance) is 1.4.0-rc1. Same user code on new & old instances. Looks like there was a recent change in TF Saver API? The offending code:
# TensorFlow saver object
saver = tf.train.Saver(
    var_list=global_variables,  # should be given?
    reshape=False,
    sharded=False,  # should be true?
    max_to_keep=5,
    keep_checkpoint_every_n_hours=10000.0,
    name=None,
    restore_sequentially=False,
    saver_def=None,
    builder=None,
    defer_build=False,
    allow_empty=True,
    write_version=tf.train.SaverDef.V2,
    pad_step_number=False,
    save_relative_paths=True
    # filename=None
)

[Edit] Confirmed: switched to TensorFlow 1.4.0rc1 on the new instance and all's well. Therefor this is small-prio, since we can just use that version

I am still seeing this error when trying to use https://github.com/cvlab-epfl/tf-lift/ with the latest tensorflow built from source (1.9.0). They have an issue on their github page (https://github.com/cvlab-epfl/tf-lift/issues/16) and it seems that 1.4 resolves the issue (haven't had time to test that myself). The offending lines in question: https://github.com/cvlab-epfl/tf-lift/blob/5530e47dcbb13f1d5642477834c8105c26957f25/tester.py#L82-L91
I am only a beginner with tensorflow, so @michaelschaarschmidt do you have any tips to debug on why this happens? Or if it's maybe still an issue with tensorflow itself? Happy to provide more information as needed.


API calls

Hi,
just wanted to ask if there are any API calls to toggle the drawer if you dont have a keyboard?
e.g. Bind the Drawer to a button.

Hi,
As I can see in the reveal.js API there is a public method triggerKey  which receives the keyboard's keyCode as an argument. It is defined here and if you set that value to be the same keycode as defined in the plugin it should triger keyboard event for you. You can write it inside custom function that executes on onclick button event.

Hi,
thank you very much! This is exactly what i needed.


UpdateNotification' is not a parameter in the odo config

[kind/bug]

What versions of software are you using?

Operating System: MacOS
Output of odo version: 0.0.20

How did you run odo exactly?
OpenShift Connector
Actual behavior
In my terminal I see:
If you wish to disable the update notifications, you can disable it by running
'odo utils config set UpdateNotification false'

bash-3.2$ odo utils config set UpdateNotification false
 ✗  'UpdateNotification' is not a parameter in the odo config

Expected behavior
I would expect the UpdateNotification command to work
Any logs, error output, etc?

Can you try the latest odo version @sbose78 ?

Try odo preference set UpdateNotification false on latest odo release.

I think that we should consider turning this feature comply off for the GA release

we should remove global preferences or just the UpdateNotification flag?


Geolocator

Performing hot reload...
Syncing files to device AOSP on IA Emulator...
Reloaded 8 of 591 libraries in 718ms.
E/flutter (13257): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: MissingPluginException(No implementation found for method getCurrentPosition on channel flutter.baseflow.com/geolocator)
E/flutter (13257): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:154:7)
E/flutter (13257):
E/flutter (13257): #1      MethodChannelGeolocator.getCurrentPosition (package:geolocator_platform_interface/src/implementations/method_channel_geolocator.dart:128:27)
E/flutter (13257):
E/flutter (13257): #2      QiblaCompass.getLocation (package:qib_redo/QiblaCompass.dart:12:26)
E/flutter (13257):
E/flutter (13257):
E/flutter (13257): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: MissingPluginException(No implementation found for method getCurrentPosition on channel flutter.baseflow.com/geolocator)
E/flutter (13257): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:154:7)
E/flutter (13257):
E/flutter (13257): #1      MethodChannelGeolocator.getCurrentPosition (package:geolocator_platform_interface/src/implementations/method_channel_geolocator.dart:128:27)
E/flutter (13257):
E/flutter (13257): #2      QiblaCompass.getLocation (package:qib_redo/QiblaCompass.dart:12:26)
E/flutter (13257):
E/flutter (13257):
E/flutter (13257): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: MissingPluginException(No implementation found for method getCurrentPosition on channel flutter.baseflow.com/geolocator)
E/flutter (13257): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:154:7)
E/flutter (13257):
E/flutter (13257): #1      MethodChannelGeolocator.getCurrentPosition (package:geolocator_platform_interface/src/implementations/method_channel_geolocator.dart:128:27)
E/flutter (13257):
E/flutter (13257): #2      QiblaCompass.getLocation (package:qib_redo/QiblaCompass.dart:12:26)
E/flutter (13257):
E/flutter (13257):
E/flutter (13257): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: MissingPluginException(No implementation found for method getCurrentPosition on channel flutter.baseflow.com/geolocator)
E/flutter (13257): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:154:7)
E/flutter (13257):
E/flutter (13257): #1      MethodChannelGeolocator.getCurrentPosition (package:geolocator_platform_interface/src/implementations/method_channel_geolocator.dart:128:27)
E/flutter (13257):
E/flutter (13257): #2      QiblaCompass.getLocation (package:qib_redo/QiblaCompass.dart:12:26)
E/flutter (13257):
E/flutter (13257):
E/flutter (13257): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: MissingPluginException(No implementation found for method getCurrentPosition on channel flutter.baseflow.com/geolocator)
E/flutter (13257): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:154:7)
E/flutter (13257):
E/flutter (13257): #1      MethodChannelGeolocator.getCurrentPosition (package:geolocator_platform_interface/src/implementations/method_channel_geolocator.dart:128:27)
E/flutter (13257):
E/flutter (13257): #2      QiblaCompass.getLocation (package:qib_redo/QiblaCompass.dart:12:26)
E/flutter (13257):
E/flutter (13257):

I followed the guidelines on the use of geolocator and when I hit the button I have my getLocation function attached to, I get this back (see above)

That's not an official plugin, so issues shouldn't be posted here. Try stopping your app and running flutter pub get before running the app again


Add support for laravel 9

Please add support for laravel 9

@pionl any update on this?

@pionl will this package be updated for Laravel 9 support?
Thanks!

@pionl If not updated.. is there any substitution for the package ?

@pionl when would this great package be expected to work with laravel 9?

Please use v1.5.0 and check #129


idea, changelog for vutuv changes

Hi,
it might be an idea, how to add a link to a changelog what's happening here? :) It's interesting how the platform is growing and changing.
Update:
With every deployment you could attach a simple changelog.txt by git log --oneline --decorate --ignore-space-change
Regards
Gino

Good idea. Let me sleep a night over it. I'll figure something out. But not in the next couple of days.


Remapped keys get their default action back resulting in two actions when pressed

Microsoft PowerToys version
0.64.1
Installation method
Microsoft Store
Running as admin
No
Area(s) with issue?
Keyboard Manager
Steps to reproduce
I have remapped some keys in the keyboard manager to execute "Volume Up" and "Volume Down" actions. It works fine for a couple of hours, but eventually (no pattern noticed so far) the keys remapped get their actions back, in addition to the remapped command set.  So instead of just working as Volume Up and Down action, the key also executes its default function, which means that whenever I press the key it executes two actions: the default action and the remapped key action.
My configuration:
PgUp -> Volume Up
PgDn -> Volumen Down

As a workaround, I close and reopen PowerToys and this makes it work again. But it is quite inconvenient as I have to restart it at least 4 or 5 times a day.
✔ Expected Behavior
The expected behavior is to execute only the action remapped in the key.
❌ Actual Behavior
When this bug happens, whenever I press PgUp or PgDn, in addition to executing the volume up and down action, my page goes up and down as well, as these are the default actions from PgUp and PgDn keys.
Other Software
No response

I've just noticed that Issue #21920 seems to be a similar problem.

Haven't noticed this error anymore, therefore I am closing it.


Excluding hypervariable sites?

I just saw https://virological.org/t/issues-with-sars-cov-2-sequencing-data/473 (from Nicola De Maio & colleges, FWIW). They say:

we propose masking sites that appear to be highly homoplasic and have no phylogenetic signal and/or low prevalence – these can be recurrent artefacts, or otherwise hypermutable low-fitness sites that might similarly cause phylogenetic noise. A current list of these is:
187, 1059, 2094, 3037, 3130, 6990, 8022, 10323, 10741, 11074, 13408, 14786, 19684, 20148, 21137, 24034, 24378, 25563, 26144, 26461, 26681, 28077, 28826, 28854, 29700.
We provide technical details of how these sites were identified below, however please note that all lists of sites outlined here are a work in progress, and might be affected by many choices made in the preliminary phylogenetic steps.

It might be worth seeing if (a) we identify these (or others) as hypervariable (b) if we exclude them, so we get better results (e.g. fewer false positives)

Oh, doh, we do this already.

In addition, we exclude 481 problematic sites flagged as prone to sequencing errors or as highly homoplasic entirely (https://github.com/W-L/ ProblematicSites_SARS-CoV2/, accessed 2022-09-22)

Sorry.


*Id props not specified on ts type for Downshift component

downshift version: 2.0.19

Problem description:
The Downshift component has these props -- labelId, inputId, menuId, and getItemId -- that aren't declared on the ts type for the component.
https://github.com/paypal/downshift/blob/v2.0.19/src/downshift.js#L61
https://github.com/paypal/downshift/blob/v2.0.19/typings/index.d.ts#L71
Suggested solution:
Update typings/index.d.ts.  I can submit a PR for this if that would be helpful.

Cool, could you make a pull request?


Update the readme

I guess the readme would be better with a description of your website and purpose.

yea and probably directions to contribute, fork, pull request.
Think screenshots would be nice too.
Maybe a brief description of the pages.
Any resources or links that could be helpful for new contributors or links to the libraries used

@Sukhamjot-Singh Could probably get ideas from the about pages or resources page


Improve WebAssembly import/export types

Sets more specific types to allowed imports/exports for WebAssembly.

@saschanaz Ping, can you please take a look? Among improvements, this fixes a small bug I introduced in #752.

@saschanaz Can this be merged then?

I unfortunately don't have a write access. Pinging @orta

Cool, the output looks 👍  to me. Thanks @RReverser - @saschanaz ping me anytime you want

@orta Thanks! Do you know if I need to do anything further to get definitions updated on the TypeScript side or are they pulled from here automatically on new release?

Argh, I just noticed that I missed instantiateStreaming in overrides 🤦♂

Sent a follow-up PR.


Question: Does Envoy support older TLS ciphers like TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (DHE-RSA-AES128-GCM-SHA256)?

If you are reporting any crash or any potential security issue, do not
open an issue in this repo. Please report the issue via emailing
<EMAIL_ADDRESS>where the issue will be triaged appropriately.
Title:
Question: Does Envoy support older TLS ciphers like TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (DHE-RSA-AES128-GCM-SHA256)?
Description:
The documentation here specifies how to configure which ciphers to use for TLS connections via the cipher_suites parameter, but what is the entire supported set?
https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto.html
[optional Relevant Links:]

Any extra documentation required to understand the issue.

cc @ggreenway @davidben

No, BoringSSL does not support DHE ciphers. Use ECDHE ciphers instead. DHE ciphers in TLS 1.2 were defined completely wrong. On the client, there is no way to reliably get a reasonable group size. See this thread for details.
https://groups.google.com/a/chromium.org/g/blink-dev/c/AAdv838-koo/m/bJv17voIBAAJ
On the server, reasonable group sizes are slow enough that, at typical server loads, they're a DoS risk.
On top of all that, the way the shared secret is used is insecure and vulnerable to side channel attacks. See https://raccoon-attack.com/
There is just no point in trying to salvage these code points.

@davidben Thanks! Yes, I realize the DHE ciphers are not secure but have a requirement to support this specific cipher (to work with a client using a legacy windows server version that doesn't support the better ECDHE ones) and need a proxy that can convert from that to a modern/secure cipher


Deployment config read as YAML instead of a string

Description:
Currently, the custom object of siddhi operator reads the configurations that need to change at the siddhi runner level using a string as below.
siddhi.runner.configs: |-
    state.persistence:
      enabled: true
      intervalInMin: 1
      revisionsToKeep: 2
      persistenceStore: io.siddhi.distribution.core.persistence.FileSystemPersistenceStore
      config:
        location: siddhi-app-persistence

It is much better to have direct YAML reading instead of this string. In order to enable that YAML reading, we have to read arbitrary YAML in operator level.
In golang, we normally read arbitrary JSON objects using structures like below.
map[string]interface{}

But because of this issue in operator sdk, we are having a problem of reading an arbitrary YAML.
Suggested Labels:
type/improvement
Related Issues:
https://github.com/operator-framework/operator-sdk/issues/1624

Check: Read the yaml file as a map and convert it to a YAML string.


Use regular expression that works on older bash to detect platform

Resolves: https://github.com/AdoptOpenJDK/openjdk-tests/issues/1280
Signed-off-by<EMAIL_ADDRESS><EMAIL_ADDRESS>

Tested :
Linux: https://ci.adoptopenjdk.net/view/Test_grinder/job/Grinder/1914/
Mac: https://ci.adoptopenjdk.net/view/Test_grinder/job/Grinder/1916/console
Internal AIX link will be shared with reviewer on Slack.

Did the grinder ( specifically AIX one) running on machine with older bash version?

@Mesbah-Alam tried and seemed it's not easy to find a machine with old bash to verify the change. However the change did work on newer old bash. That is saying it has no effect for machines with newer bash. We can probably let it in and keep an eye on #1280 to see how it works. @llxia your opinion?


icewm: 1.6.6 -> 1.7.0

Semi-automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/icewm/versions.
meta.description for icewm is: "A simple, lightweight X window manager"
meta.homepage for icewm is: "https://www.ice-wm.org/"
meta.changelog for icewm is: ""
Updates performed

Version update

To inspect upstream changes

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 1.7.0 with grep in /nix/store/m2b9pkc840vpiy379jzqli5nk68v60i0-icewm-1.7.0

directory tree listing: https://gist.github.com/46993997ea1981008a5ba789f1d4ac4f

du listing: https://gist.github.com/a398b9b83b1c7c925636b51fe2f3ca88

Rebuild report (if merged into master) (click to expand)

3 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
icewm

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/m2b9pkc840vpiy379jzqli5nk68v60i0-icewm-1.7.0 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A icewm https://github.com/r-ryantm/nixpkgs/archive/3b8cffb119b95326dd546e92aa475364c0cba669.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/m2b9pkc840vpiy379jzqli5nk68v60i0-icewm-1.7.0
ls -la /nix/store/m2b9pkc840vpiy379jzqli5nk68v60i0-icewm-1.7.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review 1

1 package built:
- icewm

Maintainer pings
cc @AndersonTorres for testing.

Bins appeared to function, but didn't use as a window manager.


Run local demo for ShareGPT4V

Does this mean I need to install LLaVA repository?
Traceback (most recent call last):
  File "/InternLM-XComposer/projects/ShareGPT4V/tools/app.py", line 10, in <module>
    from llava.constants import (DEFAULT_IM_END_TOKEN, DEFAULT_IM_START_TOKEN,
ModuleNotFoundError: No module named 'llava'
(share4v) ***@ubuntu:~/InternLM-XComposer/projects/ShareGPT4V$ # run script
(share4v) ***@ubuntu:~/InternLM-XComposer/projects/ShareGPT4V$ python tools/app.py
Traceback (most recent call last):
  File "/InternLM-XComposer/projects/ShareGPT4V/tools/app.py", line 10, in <module>
    from llava.constants import (DEFAULT_IM_END_TOKEN, DEFAULT_IM_START_TOKEN,
ModuleNotFoundError: No module named 'llava'

Does this mean I need to install LLaVA repository?
Traceback (most recent call last):
  File "/InternLM-XComposer/projects/ShareGPT4V/tools/app.py", line 10, in <module>
    from llava.constants import (DEFAULT_IM_END_TOKEN, DEFAULT_IM_START_TOKEN,
ModuleNotFoundError: No module named 'llava'
(share4v) ***@ubuntu:~/InternLM-XComposer/projects/ShareGPT4V$ # run script
(share4v) ***@ubuntu:~/InternLM-XComposer/projects/ShareGPT4V$ python tools/app.py
Traceback (most recent call last):
  File "/InternLM-XComposer/projects/ShareGPT4V/tools/app.py", line 10, in <module>
    from llava.constants import (DEFAULT_IM_END_TOKEN, DEFAULT_IM_START_TOKEN,
ModuleNotFoundError: No module named 'llava'

Thanks for your feedback. We have already fixed that.


Bump third-party dependencies in Puppet

puppet/deps.yaml itself is up to date.
Testing plan: Deployed golang, grafana, prometheus, and wal-g.  smokescreen is tested in CI.
GIFs or screenshots:

Merged, thanks @alexmv!


Feature request: Set gradient direction

Hey there,
It would be great if the two existing gradient classes (Uniform and Percentage Gradient) would support setting the direction. With "direction" I mean either vertical or horizontal gradients (so a gradient going from x: 0 to x: 1 or y:0 to y:1).
Technically this could also be used to further extend the functionality to add diagonal gradient support, as part of this enum, but I don't care about diagonal right now. :P
What do you think of providing this functionality out-of-the-box?
Here's my request visualised:

Hey @jyounus! I just realized I had never replied with plans on how to address this, but thanks to the help of @adamstener, #2 adds support for this feature. Let me know if it works for you, and if not, if there's something else that can be done.
Thanks a lot!

GradientAngle, perfect. Thanks for this! :D


Feature to turn off jobs in environment?

Is there a way to turn off a feature in a specific environment?
I'm guessing I can do something like this:
if ENV['RAILS_ENV'] == 'production'
  every 5.minutes {}
end

But would it make sense to add a more firsthand feature for this? For example:
every 5.minutes do
  runner 'soemthing', enable_in_env: ['production']
end

You would use @environment. I would accept a PR which mirrors the roles: guard.

hmm ok. my job type is a rake task, i'm going to implement a config there based on an environment variable. Realized that that's what I want anyway (since my staging and prod servers are both configured as "production" environments anyway. Thanks for the speedy response!


docs(clientLibs): fix examples for PHP and JavaScript/Node.js

fixed examples for PHP
fixed examples for JavaScript/Node.js
fixed examples for Python
fixed examples for Ruby

[x] Well-formatted commit messages
[x] Rebased/mergeable
[x] Tests pass
[x] Signed CLA (if not already signed)

Cc @stzoran1


update pom of maven-repair

fix #1224
remove old repositories, add info for releasing on central

last one needed is exceptionparser

exceptionparser comes from https://github.com/Spirals-Team/exception-parser, which is small and inactive, we proceed with moving the code see https://github.com/eclipse/repairnator/pull/1216

@andre15silva repairnator-root is missing, see https://ci.eclipse.org/repairnator/job/repairnator-ci/job/PR-1201/7/console
Could you also release repairnator-root 3.4? Thanks

Could you also release repairnator-root 3.4? Thanks

Done @monperrus, available when central syncs.

Thanks, restarted the build.

superseded by #1233


Benzene should be a liquid instead of a gas

Benzene is wrongly treated as a gas in the game. On planet surfaces it is lootable from gas vents and to store it a gas storage module is required. In reality, Benzene (at least at "normal" temperatures and pressures) is a liquid!
https://en.wikipedia.org/wiki/Benzene

Details
Item ID: 5585
Game Version
<IP_ADDRESS>
Language
English (EN)
New Game
Yes
Reproduction Steps
Find a planet with benzene on it.

And zero sulfur even though there's ballistic weapons and Ka'zaal Sulfur Mine.... hahahahaha


*: bit field operator kind.

The motivation is that an operator can have more than 1 properties, for instance, both moves a peer and transfers a leader, or both initiated by admin and moves a peer.

/run-all-tests

/rebuild

/run-integration-common-test


docs: Add Couler, SQLFlow, and Kubeflow to USERS.md

Signed-off-by: terrytangyuan<EMAIL_ADDRESS>Checklist:

[x] My organization is added to USERS.md.

do we need a separate section for tools to users? @edlee2121 @Ark-kun @jessesuen ?

do we need a separate section for tools to users? @edlee2121 @Ark-kun @jessesuen ?

My two cents: these are all vendor-neutral open source organizations (although Couler is still young and we haven't open sourced everything eyt) so it might make sense to include in USERS.

My two cents: these are all vendor-neutral open source organizations (although Couler is still young and we haven't open sourced everything eyt) so it might make sense to include in USERS.

@alexc May be we should call it "Projects Using Argo".
I like the idea of having a separate section for projects so they don't get lost with the much larger section of companies using Argo.

@alexc May be we should call it "Projects Using Argo".
I like the idea of having a separate section for projects so they don't get lost with the much larger section of companies using Argo.

"Projects Using Argo" sounds good to me. Would you like me to add that new section in this PR and then include the three projects in that section?

ok - please do that!

Added. Please take another look. @alexec


Code Fix completions should appear next to the text where you invoke the command.

Like this

from atom-typescript. We should totally copy it :)

noice :+1:

noice :+1:

:+1:


create ficus app stoped working

It used to work. Is there an eta?

(also I would not be upset if you create an example w/ 11ty and pug like https://gitlab.com/cekvenich2/11pug but w/ ficus)

This is fixed in v1.4.1


fix(GlobalFooter): open external links in new tab

Overview

Change external links (such as the help center + forums) in the footer to open in a tab

PR Checklist

[ ] Related to designs:
[X] Related to JIRA ticket: EGG-1185
[X] I have run this code to verify it works
[ ] This PR includes unit tests for the code change
[ ] This PR includes testing instructions tests for the code change
[ ] The alpha package of this PR is passing end-to-end tests in all relevant Codecademy repositories

Testing Instructions

Don't make me tap the sign.
PR Links and Envs

Repository
PR Link
PR Env

Monolith
Monolith PR
Monolith Env

Portal
Portal Link
Portal Env

Another Repo
Another Link
Another Env

📬Published Alpha Packages:@codecademy/gamut-kit@0.6.180-alpha.e6144b.0@codecademy/gamut-labs@33.1.1-alpha.e6144b.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://62fd5b0ba7cca90f14fc4f95--gamut-preview.netlify.appDeploy Logs


feat: Include agency_id in routes.txt (warning) when 1 agency

Summary:
#878
Expected behavior:
Explain and/or show screenshots for how you expect the pull request to work in your testing (in case other devices exhibit different behavior).
Please make sure these boxes are checked before submitting your pull request - thanks!

[x] Run the unit tests with gradle test to make sure you didn't break anything
[x] Format the title like "feat: [new feature short description]". Title must follow the Conventional Commit Specification(https://www.conventionalcommits.org/en/v1.0.0/).
[x] Linked all relevant issues
[ ] Include screenshot(s) showing how this pull request works and fixes the issue(s)

Hello @KClough, thank you for this contribution! ☀
Is this ready for review?

Hello @KClough, thank you for this contribution! ☀ Is this ready for review?

Yes. @bdferris-v2 FYI.

It looks like this Best Practice was removed in https://github.com/MobilityData/GTFS_Schedule_Best-Practices/pull/44, which was intended to remove parts of the Best Practices that were already being covered by the spec.
That being said, I can't find any mention of this in the spec...

I missed @isabelle-dr comment here, but added a comment in issue #878 asking about the same thing.

This means that for this validator notice, we are missing the reference documentation to point the validator users to (just like the reference to feed_info.txt Best Practices in missing_recommended_field).
I posted a message on the Best Practice PR to propose adding it back because it looks like it was removed by mistake.
If people agree, I propose we first add it back to the Best Practices before merging this PR.

closing #1318 is replacing this PR


Converting internals from Kotlin to Java

So having asked @tipsy there is some desire to move Javalin internals from Kotlin to Java [David, feel free to update this description as needed].  David mentioned this desire might start when Jetty 10 comes out.
For myself I see this work progressing with at least 2 streams of work

Migrate class by class Kotlin to Java a few classes at a time. These would try to be no effective behaviour or API change. I suspect we need to keep the PR's reasonably small bite sized chunks.
Investigate some design options (for me around route matching, more ServiceLoader style modularity etc)

Class by class migration
I suspect the key thing here will be to do smallish PR's (a few classes at a time) and to not swap David and co with lots of PR's.
Investigate design options
I have started a Java only "baby javalin" project (https://github.com/avaje/avaje-jex). The intention is to look at some design options that could be looked at / reviewed and potentially promoted to Javalin if desired. This includes:

Route matching that additionally uses the number of path segments (implies routes can't be added/removed after start)
An internal "ServiceManager" to provide JSON conversion and template rendering to Context (as opposed to JavalinJson static methods)
In future (not in the code yet) using ServiceLoader to enable have websockets, sse and template rendering to all be optional modules (with the idea of keeping "core" smaller code wise and transitive dependencies wise. jetty websockets dependency is brought in with the optional "javalin websockets" module).

Route matching with segment count
avaje-jex has route matching that additionally uses path segment count (effectively the number of '/' characters in the uri path).  So to match a path there is first the EnumMap of HandlerType (GET, POST ...) as per normal and then a lookup by "number of segments" to get the sub list of routes to match and then linear search find first.
Why?
Provide route matching that better supports lots of web routes (by reducing the linear search to those paths that have the same segment count).
Take an example where we have 100 GET web routes. Currently we linear search those for the first match which is fine but at some point we desire to do better than linear search all GET web routes.  With this change those 100 GET web routes are put into sub lists based on segment count. The match logic will linear search on the sub list of web routes that have the same number of path segments.
Implication - no add/remove after start
The implication of this route matching approach is that we should not add/remove web routes after start.
Before/after Filters
Note that in the jex code the filter handling is missing at the moment but the thinking is that before/after filters must still run using linear match which I think is fine. People looking at the code will note that before/after filter handlers are separated from the other handlers.
Routes (top level, EnumMap<HandlerType, RouteIndex>)
https://github.com/avaje/avaje-jex/blob/master/src/main/java/io/avaje/jex/routes/Routes.java
RouteIndex (holds sub lists based on segment count)
https://github.com/avaje/avaje-jex/blob/master/src/main/java/io/avaje/jex/routes/RouteIndex.java

@rbygrave I don't think merging these PRs before we actually decide to move back to Java is a good idea, as we'll end further fracturing the code base (currently the rule is "Public APIs are Java, internals are Kotlin", which is bad enough).
Another thing to mention is that Jetty 10 will require JDK 11. It seems like people who get off 8 have less trouble updating to the latest version of Java. If we go back to Java, I think we should always stick to the latest version 🤔

before we actually decide to move back to Java

Apologies - I misinterpreted a prior comment and got into it (picking some soft targets for Kotlin to Java conversion).

I don't think merging these PRs ...

I'm fine if you want to decline those PR's to "clear the decks".  If you are still pondering then obviously you can just leave them.
Those PR's are binary compatible Java versions of the Kotlin code so no effective change even for Kotlin users but you know that I'm sure. The point being that the difference as I see it is that going forward we need to maintain Java source as opposed to Kotlin source.

we'll end further fracturing the code base (currently the rule is "Public APIs are Java, internals are Kotlin"

Ultimately if you want to maintain the code in Kotlin that is maybe they key point.  For myself, I'm fine maintaining code in either Kotlin or Java but the key benefit as I see it of having the internals in Java is that it drops about 3MB of transitive dependencies for teams using java. For Kotlin teams it means they can use whatever version of Kotlin they like.
Note that in terms of transitive dependencies Javalin could also make the jetty websockets dependencies optional (I'd personally be keen on a smaller core longer term).

If we go back to Java, I think we should always stick to the latest version

I suspect that if you survey Javalin users there will be a lot on java 11 being somewhat the long term release version.  I suspect the preferred targets are Java 8, Java 11 or the next long term release after 11 which isn't out yet (I have "jex" targeting java 11).

decide to move back to Java is a good idea

I suspect this is really your call in that you'd have to be happy enough with internals written in Java - with the main benefit of dropping the transitive dependencies (mostly for Java teams).  The dev teams I come across recently have been more happy sticking to Java - maybe the latest survey results also show a reasonable proportion of "Java teams" using Javalin. All the Java dev teams are paying the transitive dependency tax of ~3MB.
At the end of the day though you have to choose what suits you.  If you are also going to use Kotlin from now on then you don't care and probably prefer the internals in Kotlin.
As a crazy idea ... you could create an experimental branch (called say "java-convert") and get people like me to merge PR's to that branch instead.  If the converted internals code does not translate well from Kotlin to Java in your eyes then maybe you have your answer.
Cheers, Rob.

I suspect that if you survey Javalin users there will be a lot on java 11 being somewhat the long term release version. I suspect the preferred targets are Java 8, Java 11 or the next long term release after 11 which isn't out yet (I have "jex" targeting java 11).

Seems I was a bit optimistic here, I'm looking at https://snyk.io/wp-content/uploads/jvm_2020.pdf and https://www.jrebel.com/blog/2020-java-technology-report, and it's sad reading for Java versions (~60% still on J8).

Note that in terms of transitive dependencies Javalin could also make the jetty websockets dependencies optional (I'd personally be keen on a smaller core longer term). ... As a crazy idea, you could create an experimental branch (called say "java-convert") and get people like me to merge PR's to that branch instead. If the converted internals code does not translate well from Kotlin to Java in your eyes then maybe you have your answer.

We could already now add javalin-core as a pure Java module, and you can merge changes to that? Or you could go for javalin-java if that's easier than starting work on the core concept, then create javalin-core later?
Then if we're happy with how it turns out, we simply witch the artifact ids when it's time (seems it's going to be a while though, seeing as more than half of developers are still on J8).

We could already now add javalin-core as a pure Java module, and you can merge changes to that?

Yes although I might be misunderstanding so to clarify, I am thinking there are 2 options (is there another option?)

Use a branch that isn't master
Create a separate module "javalin-core" which is initially a copy of the existing javalin module, we can then submit PR's to that to translate the internals into java and sort of see how that goes.  We could for example chop out the websockets part and trim up the dependencies (to jetty servlet). That could be added back later or added back as a separate javalin-websockets module depending on how you see it.

I don't mind either option.  I think you are suggesting option 2 and my gut says that sounds like a good approach. Have a separate "javalin-core" module as initially an experimental module that we hopefully can knock it into shape.

~60% still on J8

We could initially target Java 8 - it probably doesn't matter at this stage.  I suspect Javalin users will tend be on later versions (more microservices, kubernetes/docker deployment - once you deploy to k8/docker you want at least java 11 imo).

I think you are suggesting option 2

That is correct!

We could initially target Java 8 - it probably doesn't matter at this stage. I suspect Javalin users will tend to be on later versions (more microservices, kubernetes/docker deployment - once you deploy to k8/docker you want at least java 11 imo).

Sure, I guess we'll be using Jetty 9 to start with, so 8 is okay. I can run a survey on the website later to find out what version most people are running.

FYI: A closer comparison of the transitive dependencies using a minimal hello world app (with Jackson)
Summary:

~0.8 MB for the Jetty websockets dependencies (if they become optional)
Kotlin stdlib only adds 1.6 MB (not too bad really)
Kotlin devs using jackson-module-kotlin get an extra 2.9 MB kotlin-reflect-1.3.72.jar

4.7 MB Total for Jex / ~javalin-core  (The cut down java only thing I'm working on)
Breakdown of the 4.7 MB

2.0 MB Jetty
1.8 MB Jackson
0.8 MB Logging
0.05   Jex / ~javalin-core (wip - will get bigger)

7.7 MB Total for Javalin
Breakdown of the 4.7 MB

2.8 MB Jetty
1.6 MB Kotlin stdlib
0.4 MB Javalin

plus an extra 2.9 MB kotlin-reflect-1.3.72.jar if we depend on jackson-module-kotlin  (Kotlin devs only)
As a comparison to Helidon SE for those interested.
8.0 MB Helidon SE

3.3 MB Netty
1.6 MB Helidon
2.0 MB Jackson
0.8 MB Logging

WIP - Notes to review later
Context.formParamMap()
This decodes the form data into the map each time it is called.  It could decode it once and hold the map on the context.
https://github.com/tipsy/javalin/blob/master/javalin/src/main/java/io/javalin/http/Context.kt#L184
Context.removeCookie()
Potential bug. removeCookie() takes a optional (null) path. Jex tests fail when the null path isn't converted to "/".
https://github.com/tipsy/javalin/blob/master/javalin/src/main/java/io/javalin/http/Context.kt#L440
https://github.com/tipsy/javalin/blob/master/javalin/src/main/java/io/javalin/http/Context.kt#L433      (defaults to "/" on set)
Contex.contentLength()  returns Int rather than Long
Longer term this probably could look to return long via  req.getContentLengthLong()

FYI - Just as an update on this effort, I feel I'm about 50% through - still to do is websockets and see.
Maybe interesting things to ponder thus far:

Context is an interface
Context calls through to an internal ServiceManager for json, renderer, multipartUtil, exception handling (these are not static calls - kotlin object types)
Routing is an interface (ok, I've tried to make almost all "public api" an interface)
Things like Routing are not mutable after start
Renderers (FreeMarker, Mustache ...) can be registered explicitly or automatically via ServiceLoader (I expect to do something similar for websockets)

Context is an interface, Routing is an interface (ok, I've tried to make almost all "public api" an interface)

I've been against this, because I dislike single implementation interfaces (even if they make Mockito users happy). I'm guessing these are also single use. Why did you create them?

Context calls through to an internal ServiceManager for json, renderer, multipartUtil, exception handling (these are not static calls - kotlin object types)

This sounds interesting. I'm surprised to see expection handling on this list, what is wrong with how it's handled currently?

Things like Routing are not mutable after start

This is probably a good idea!

(I expect to do something similar for websockets)

Will this also decouple Jetty?

Context is an interface ... I dislike single implementation interfaces

I dislike single implementation interfaces with application code also.  With Javalin/Jex being a library the main thoughts I have around it being an interface are:

Hides the constructor - constructing Context is then not part of the "public api" ... so how it's constructed and the internal dependencies it has can change more easily
In theory allows for potentially supporting things in the future that are not Jetty / javax.servlet.http orientated
Provides a clearer separation of API from implementation which makes it more obvious when the API changes vs implementation changes and what the public API dependencies are (the imports of Context interface) vs implementation dependencies (imports of JexHttpContext)
Context is deemed so important and long lived that we split into interface (public) and implementation (internals) even if we only end up with 1 implementation - sales pitch :)

I did fully extract out Jetty completely into a separate module but then decided to move it back in to the io.avaje.jex.jetty package to keeps it simpler and easier to ensure test coverage.
There is only 1 public class in the jetty package with only the 1 public method.  I'm trying to keep the internals / implementation hidden (not public visible) as much as possible.

exception handling on this list

I think I have this wrong in that error handling is only used by the servlet (just like Javalin) so not really needed by Context and so doesn't need to be in ServiceManager.  I really should pull it out from ServiceManager and just give it to the servlet only.

websockets ... Will this also decouple Jetty?

I'm not sure yet.

You do make a lot of valid points for a Context interface. It might also help solve the issue in https://github.com/tipsy/javalin/issues/1020 about extending Context (haven't looked too much into it though).
here are a lot of interesting improvements in Jex, thanks for keeping us up to date

I'm happy for us to close this ticket @tipsy
For myself, I can keep moving forward with Jex for "java only" use cases and it's easy for me to swap between Jex and Javalin as I'm using https://avaje.io/http/ (so I largely just need to change the annotation processor and rebuild to get the controller adapter code regenerated).

Fair enough, it didn't generate much interest in the time it was open. Let's look into introducing some of the improvements from Jex without converting any internals :)


Unable to reload geyser

I use geyser-spigot
Unable to reload geyser with /geyser reload

yeah I believe that is a problem with https://github.com/GeyserMC/Geyser/pull/1266

I have made a fix in https://github.com/Hellohi3654/Geyser/releases/tag/Bleeding_v67

okay, thanks


[Proposal] Module should support profiles

Actually a Timon module can have only one default value file.
User experience will be simplified (comparing to helm including) if a module can declare a list of supported profile as

high-availability
ingress | istio |  gateway.k8s
network-policy
statefull  <- enforce that data is not store on empty dir as exemple

Bundle file should allow to actives one or more profiles.
bundle: {
    apiVersion: "v1alpha1"
    name:       "podinfo"
    instances: {
        redis: {
            module: {
                url:     "oci://ghcr.io/stefanprodan/modules/redis"
                version: "7.2.3"
            }
            namespace: "podinfo"
            profiles: ['high-availability', 'ingress' ]
            values: maxmemory: 256
        }
    }
}

Activation of a profile will load transparently additional values file that is included on the module similar to
 --values ../values.cue --values ./values-high-availability.cue --values ./values-ingress.cue

Supported profiles can be declared on the module file timoni.cue or simply by listing all root file named values-*.cue
An value-high-availability.cue can look as =>
values: {
	replicas: *2 | int & >2
	pdbCreate: true
}

The use case sounds great, but the proposed implementation seems extremely opinionated. In other words, it seems like the root problem is conditionally adding additional input files when a bundle is built. If this functionality was supported, you could build out a "profile" system without necessarily implementing on top of Timoni.

This can be achieved by making your modules expose the opinionated profiles in their values. Example here: https://github.com/stefanprodan/flux-aio/blob/b8282e46dc7456dce5d4d0ea12a6527ed0f68ef2/modules/flux-aio/templates/config.cue#L65


Website blocked by the school's WIFI

We need to email/talk to the new computer science teacher to see if we can get this unblocked by the school.
URL in question: https://bensmerch.org

Fyi both ck express and go guardian are blocking it

What? How does it work for you, and why does it not even connect (not even to block) for me now?

SOMEHOW IT'S NOT BLOCKED!!!!!

Is that the steam center?


Remove the pending buffer after the data channel call close() by either side.

Summary
Remove the pending buffer after the channel is closed by either side.
Motivation
Please refer to #238
Describe alternatives you've considered
In the official WebRTC code, all pending data will be clear after the data channel call close() by either side.
But the SCTP RFC does not suggest so.  The chrome will ACK the closing channel data too.
Based on @enobufs 's work, here is my thought:

If we call close or receive reconfig, we should transform to closing state.
When the close reconfig is finished, we transform to closed state.
During the closing/closed state, the read and write should be rejected with error.
During the closing/closed state, stop sending buffered data in pendingQueue.

Or we could emit the closing state to the caller ( data channel) to decide what to do.
dc.OnClosing(func(){
   dc.Close()
})

Additional context
During reading the official webrtc code, I found it has more assumptions like:

Default buffer size for one data channel is 16MB, more data will be rejected.
The max data channel count is 1024, rather not 65535.

References

#238
Issue 559394: Closing WebRTC data channels is broken and only works chrome to chrome

In the official WebRTC code, all pending data will be clear after the data channel call close() by either side.

Not true.
W3C spec says in 6.2.4 Closing procedure:
1. Finish sending all currently pending messages of the channel.
2. Follow the closing procedure defined for the channel's underlying data transport :
    1. In the case of an SCTP-based transport, follow [RFC8831], section 6.7.

But Chrome does not seem to bother sending the pending data when the remote data channel has already called "close()".

@enobufs You are right, I made a mistake in my test code.
So the only change should be:

If received reconfigs with outgoingReset, clear sending pending buffer.

I found myself still debating whether the pending buffer should be discarded OutgoingResetRequest was already received. Remote sent OutgoingResetRequest ("I am not going to send any more") but not IncomingResetRequest ("please stop sending any more"). I can see RFC8831/6252 had a graceful shutdown (e.g. shutdown(SHUT_WR)) in mind.

shutdown(SHUT_WR) == OutgoingResetRequest

Interoperability with browsers is important but Pion does not need to follow everything what W3C spec says. There may be something Pion could take advantage of being a native library...

Yes, I agree with you that OutgoingReset should only mean shutdown() rather than close.
But in the official lib, the usrsctp does not buffer anything, the SctpTransport only buffer one message, and the real buffer is in data channel.
It's datachannel.close(), not sctpTransport.close(), but in pion, this part of function is built in sctp.
As for me, there is a way I can cancel sending buffer data is OK.

Here are my thoughts,

The outgoingReset happened in sctp.Stream level, so they could and should keep sending the data until it has no data to send.
The data channel, on the other hand, defines a closing procedure about what it should do when it receives an outgoingReset.
I think the best way is "clear data channel's buffer when data channel closed remotely since no one will receive the data".

Let us consider implementing stream.CloseWrite() in the future if a graceful shutdown is desired.
For now, stream.Close() should close both outgoing (send OutgoingResetRequest) and incoming (set readErr non-nil). If onInboundReset() has already been called, discard the stream's user data in the pending buffer.
Does this diagram make sense to you?
stateDiagram-v2
    Open --> Closing: onInboundStreamReset()\nSet readErr to io.EOF
    Open --> Closed: Close()\nSet readErr to io.EOF\nSend OutgoingStreamResetRequest
    Closing --> Closed: Close()\nSend OutgoingStreamResetRequest\nDiscard pending user data

NOTE

onOutgoingStreamResetAcknowledged(): a callback made by association when a response to OutgoingStreamResetRequest has been received
resetErr is always non-nil in Closing state
onInboundStreamReset() is called by Association when it received OutgoingStreamResetRequest (reconfig).
Data channel (DCEP in the datachannel package) will call Close() when ReadSCTP() returns an error to fulfill RFC 8831 Sec 6.7.

How about moving cache and close logic to datachannel?
In fact, when we talk about close we are talking about data channel close, the sctp rfc didn't define stream close either.

@enobufs I have tried to implement the discard logic as you say,  A, B.

A: Discard the pending buffer when it popped.

B: Move the buffer from association to stream.

Only for demonstration, please tell me which one is your preferred, and I will keep working on it.

Hi Jerry,
Sorry for my late response. I was too busy over the last week...
Good call. I was thinking about the option "B" too. This buffering is for WebRTC API and I believe it does not even belong to SCTP stream. (Relates to #77)  We'd need to carefully think about potential risk / drawbacks also.
What is your preference?
One little favor to ask you.. Could you please create two PRs (the options A and B), mark it as [WIP] in the title so that we can review these with comments?
One way to think about this is, if we agree that this buffering is WebRTC specific, we should move this buffer to datachannel (DCEP) package. We could do the B later in pion/sctp v2, focus on "A" for now.

I have created PR #245 and #246 .
I prefer Plan A too, small change, easy to implement.
After finishing this we could add buffer to datachannel first. I will try to finish #245 recently.

@enobufs Just wondering: could it be that this PR (commit c0159aa2d49c240362038edf88baa8a9e6cfcede) introduced a regression which makes the unit-test TestAssociation_Shutdown fail?
See https://github.com/pion/sctp/actions/runs/3495811764/jobs/5852996166


WinUI 3 doesn't show in VS2022 XAML designer?

Describe the bug
I am using VS 2022 Pro on Windows 11.
I've installed WinUI 3 with extension from the link https://aka.ms/windowsappsdk/stable-vsix-2022-cs .
After I create a blank WinUI project with a MainWindow.xaml, the XAML designer cannot display the window, neither Blend, only xaml source code is showing.
Am I missed something?
Steps to reproduce the bug
1, Create a blank WinUI3 project.
2, Double click on MainWindow.
Expected behavior
MainWindow is showed in designer.
Screenshots
MainWindow show is showed in source code window.
NuGet package version
WinUI 3 - Windows App SDK 1.0 (If you're seeing your issue in older previews of WinUI 3, please try this release)
Windows app type

[ ] UWP
[ ] Win32

Device form factor
Desktop
Windows version
Insider Build (xxxxx)
Additional context
No response

You are missing that WinUI 3.0 doesn't support the designer, they expect us to use hot code reloading instead.
https://github.com/microsoft/microsoft-ui-xaml/issues/5917

Thanks for your feedback, as @pjmlp noted, the current discussion around the XAML designer is centralized in this issue: #5917 Closing this issue as the lack of designer is currently expected in VS2022.

Please read and act accordingly!

The link again:
https://developercommunity.visualstudio.com/t/Feature-request-Visual-designer-for-Wi/1608476?q=WinUI+Designer
Oh! And SPREAD THE WORD!
PLEASE!


core -> common testsing

resolves #18
Description
Adds workflow to test specific dbt-core branches against specific dbt-common branches.

can be triggered:

manually
via a workflow
on a schedule
on merge

Also adds scheduled testing with alerts in slack on failures
Checklist

[ ] I have read the contributing guide and understand what's expected of me
[ ] I have signed the CLA
[ ] I have run this code in development and it appears to resolve the stated issue
[ ] I have opened an issue to add/update docs, or docs changes are not required/relevant for this PR
[ ] I have run changie new to create a changelog entry

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (main@9e081a5). Click here to learn what that means.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #54   +/-   ##
=======================================
  Coverage        ?   51.07%
=======================================
  Files           ?       47
  Lines           ?     2798
  Branches        ?        0
=======================================
  Hits            ?     1429
  Misses          ?     1369
  Partials        ?        0

Flag
Coverage Δ

unit
51.07% <0.00%> (?)

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Add fix for CanvasRenderingContext2D

In PixiJS 6.2.0, there is a check as following:
var supportLetterSpacing = 'letterSpacing' in CanvasRenderingContext2D.prototype || 'textLetterSpacing' in CanvasRenderingContext2D.prototype;
See: pixijs/pixijs#7958

@mszu , please merge this request, because this patch will fix the issue I am currently having

Sorry for the delay here, this has been released as v1.0.2 on NPM.
Thanks, @mkpoli !


Feature: Programatically set the two drawables

It would be really amazing if we could set the two images programmatically, as in many cases, images are network populated.

Good idea, I have fixed that here https://github.com/csdodd/ToggleImageButton/commit/2ee7d332b9c2184cbdf828bb443f307ddc46e989
Update to v1.2 to see the changes.


kbs: token: add verifier with JSON Web Keys

Add a new token verifier that uses JSON Web Keys (JWK) from
the configured JWK Set sources.
JWK Sets can be provided locally using file:// URL schema
or they can be downloaded automatically via OpenID Connect configuration
URLs providing a pointer via "jwks_uri".

Can you add a meaningfull description? Thanks.

@Xynnn007 a bit offtopic but is there a reason why CoCo tokenverifier could not use jsonwebtoken also? AFAUI, we could have a single verifier that just understands local pem/jwks and OpenID Connect provided jwks:
trusted_cert_paths = ["/path/to/foo.pem", "https://provider.openid.conf", "/path/to/bar.jwks"]

Can you add a meaningfull description? Thanks.

done

@Xynnn007 a bit offtopic but is there a reason why CoCo tokenverifier could not use jsonwebtoken also? AFAUI, we could have a single verifier that just understands local pem/jwks and OpenID Connect provided jwks:

I did not remember the concrete reason for it is a long time ago -- but I think it makes sense to use a common crate for the same functions.

@Xynnn007 a bit offtopic but is there a reason why CoCo tokenverifier could not use jsonwebtoken also? AFAUI, we could have a single verifier that just understands local pem/jwks and OpenID Connect provided jwks:

I did not remember the concrete reason for it is a long time ago -- but I think it makes sense to use a common crate for the same functions.

I was also wondering if it let us to drop dep:openssl.

I was also wondering if it let us to drop dep:openssl.
For some verifier like IBMSE, openssl is the only certified cryptography library.

I was also wondering if it let us to drop dep:openssl.

For some verifier like IBMSE, openssl is the only certified cryptography library.

OK. I was mainly referring to the CoCo tokenverifier code.

@jialez0 PTAL

rebased + force pushed. however, this change is relatively independent and does not add any new dependencies. are there any concerns or reasons to wait with this?

Only two left comments.

what's the other one?

@mythi it is https://github.com/confidential-containers/trustee/pull/458#discussion_r1730697409

Let's merge this if you are happy with it @Xynnn007


Add support to Reminder plugin

It would be great if the Reminder plugin could be supported by the Minimal Live Preview mode. Thanks a lot for your great work!

Added in 5.2.7


Optional/conditional detail panel

Hi, since redesigning the detail panel (so far I have been using version 3.0.6) I have not found a solution to conditional/optional display  detail panel by rowData content.
Previously this is work fine:
detailPanel={[
            (rowData) => ({
              icon: () => (rowData.hasParam? <ArrowRightIcon /> : <></>),
              openIcon: () => (rowData.hasParam? <ArrowDropDownIcon /> : <></>),
              disabled: !rowData.hasParam,
              render: (rowData) => {
                let data= rowData.param2?.split(/[\r\n]+/g)[0];
                return (

rowData.data[0]

                );
              },
            }),
          ]}

I've tried the newest version (4.3.1), but this is not work, i get the following exception:

node_modules/@material-table/core/dist/components/m-table-detailpanel.js:46
43 |   renderFunction = props.detailPanel;
44 | } else {
45 |   renderFunction = props.detailPanel ? props.detailPanel.find(function (panel) {
46 |     return panel.render.toString() === (props.data.tableData.showDetailPanel || '').toString();
47 |   }) : undefined;
48 |   renderFunction = renderFunction ? renderFunction.render : null;
49 | }

any suggestion on how to make work it this?

This will be fixed with the next release. Seems like we got a regression while working on the panel.


[Issue][Patch]Patching script issue (patchDBBinaries.sh)

Hi all,
While applying p36195566_190000_Linux-x86-64 on oracle/database:<IP_ADDRESS> I had an issue due to below lines on the patchDBBinaries.sh script. I tried to change on the script instead of 6880880 I put 36195566 and that worked but is that okay or I should have the p6880880_190000_Linux-x86-64 under the one_offs directory ?
if [[ $patch_zip =~ "6880880" ]]; then
echo "Removing directory ${ORACLE_HOME}/OPatch";
rm -rf "${ORACLE_HOME}"/OPatch;
echo "Unzipping OPatch archive ${patch_zip} to ${ORACLE_HOME}";
unzip -qo "$patch_zip" -d "$ORACLE_HOME";

@yunus-qureshi @aditya059 any updates please

@eyaneylii 6880880 goes under the oneoffs directory

11

@yunus-qureshi Thank you for you're response but what I'm trying to say is :
when I changed on the script the 6880880 with the new 36195566 it worked okay and the image was built so my questions are

is the changes I made okay or not ?
is it necessary to bring the 6880880 patch and not to change on the script ?


Hashtable key lookups are unexpectedly culture-sensitive, don't recognize in-session culture changes

Related: #6989, #8129, #3831
Note:

This issue probably has little real-world impact, and probably comes down to just documenting the current behavior, but before I create a docs issue, I'd like to understand the backstory.

Thanks to sleuthing by @PetSerAl, two aspects of hashtable behavior came to light:

Key lookups are culture-sensitive, i.e., use the current culture, as opposed to the invariant culture that is used in most other contexts.

The culture used for lookups (as specified during hashtable construction) is locked in at session startup-time, because cached culture information is used.

See: https://github.com/PowerShell/PowerShell/blob/877b9a9fbf0bed3876de3c00ff34525aba96c749/src/System.Management.Automation/engine/parser/Compiler.cs#L5694-L5696
Steps to reproduce
From a session in which culture tr-TR (Turkey) was in effect at session startup time  - e.g., on Unix, start the session with bash -c 'LANG=tr-TR pwsh', run the following:
@{ i = 'yes' }.I; 'i' -eq 'I'

Expected behavior
yes
True

Actual behavior
True

That is, the hashtable lookup didn't succeed, because in the Turkish culture I is not the uppercase equivalent of i.
By contrast, -eq, due to being culture-invariant, reported $True.
Environment data
PowerShell Core 6.2.0-preview.1

This is related to https://github.com/PowerShell/PowerShell/issues/7761.
I think there is desire for culture invariant or even just ordinal case-insensitive comparison, but it needs to not break cultures like tr-TR.
Another discussion thread: https://github.com/dotnet/roslyn/issues/29938.

Thanks, @rjmholt - interesting stuff.
The larger question here is why hashtables were chosen to exhibit any culture-sensitivity, given that in many contexts it is the invariant culture that is applied (I've tried to provide an overview in this SO answer).

it needs to not break cultures like tr-TR.

Note that -eq already "breaks" tr-TR (as shown above), and always has, due to its culture-invariant behavior.
Given that -eq is conceptually closely related to determining key equality in hashtable lookups, you'd expect the latter to work the same.

@mklement0 It seems the issue was fixed.

Thanks, @iSazonov; it was fixed by switching to ordinal  string comparisons for lookup:
https://github.com/PowerShell/PowerShell/blob/1e5655b48cdad707ee3678435c4b587c0856a35c/src/System.Management.Automation/engine/parser/Compiler.cs#L6442-L6444


hi i added a small game in python

Hi Matan,
How are you? Tnx for your game. I'll test it now.
What I want from you, is to create a README about your game.
Feel free to talk about your game. I suggest to create a folder and move file there. So, it is better to add README there.
Regards.
Amir.

Hello Amir,
I really appreciate it that you added my game, this is actually my first
time making a pull request on github and it means a lot to me. I currently
cannot do the Readme file because I am not home, but I will do it as soon
as I can.
Thank you very much, Matan
On Wed, Jul 13, 2022, 10:10 PM AmirHossein Mohammadi <
@.***> wrote:

Hi Matan,
How are you? Tnx for your game. I'll test it now.
What I want from you, is to create a README about your game.
Feel free to talk about your game. I suggest to create a folder and move
file there. So, it is better to add README there.
Regards.
Amir.
—
Reply to this email directly, view it on GitHub
https://github.com/BlackIQ/Minis/pull/4#issuecomment-1183581589, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AM7ZCD72ZV7DSRUR4QIGEO3VT4IDNANCNFSM53PPZMIQ
.
You are receiving this because you authored the thread.Message ID:
@.***>


Incorrent and confusing names of methods, properties

Is your feature request related to a problem? Please describe.
Check whole solution and identify confusing and incorrect names of methods that causes worse readibility of code.
For instance ListExtensions.AsSingletonList, it does not create singleton, it is just list with one item.
Nullable vs. Optional., property containing count of items does not contain "count" in its name,

not necessary now


Custom query parameters and URL via query

Hey!
Thanks for the plugin, its great 👍
is it possible to add an option to pass URL or Custom query parameters from the dashboard query?
because now i have to create a new data source for each request i make (even if in the same api scope)
Thanks!

I have the same issue I would like to send a Variable to the JSON call but it seems we are not capable of interacting with the call withing the dashboard.

Thanks both of you for the feature request! I think makes perfect sense to add something like this to the query editor. Would be pretty easy to implement as well.

This feature may be very useful !

I've published v0.6.0 with this feature. Let me know if it works for you!

Hey !
Thank you for the plugin. Can we use dashboard global variable in "Custom query parameters" ?
Thanks

Thanks Marcus! will check it up!
do you  also plan to add passing the URL from the query to the data source?

Hi I just updated the panel and it's close to what I expected but it seems
it's not capable of grabbing the Variables from the dashboard.
If I override the query and put the variable value as plain text it works
but If I try the same with a variable the Dashboard won't update.
Thanks for the update.
El lun., 16 nov. 2020 a las 12:57, Tom Glazer<EMAIL_ADDRESS>escribió:

Thanks Marcus! will check it up!
do you also plan to add passing the URL from the query to the data source?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/marcusolsson/grafana-jsonapi-datasource/issues/8#issuecomment-728258574,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQAMPC2JTEHI2FCDIEZP5QTSQFYYNANCNFSM4SZOVRHA
.

No issue with last versions to use variable in custom query !

Thanks Marcus! will check it up!
do you also plan to add passing the URL from the query to the data source?

I'm afraid I don't understand what you mean by this. Could you give an example?

Hey Marcus,
sorry ill try to explain better.
I'm not sure if its something possible to implement on grafana. :)
this is my scenario, I have 4 servers with JSON api, exposed on the following addresses:
http://server1/api
http://server2/api
http://server3/api
http://server4/api
then i have a Grafana variable with these4 servers as drop down list.
when you select one of these servers, each one is bounded to its own data source. i had to put their data source as a variable, and create 4 different data sources.
its not so much a big issue, but if you have 10 servers, then you need to add 10 data sources...
my question is, is it possible to create 1 generic JSON data source, and then (as same as you passed the custom URL parameters from the query) pass the URL as a variable to the generic data source?
so this way I have only 1 data source, with  a dynamic URL.
for now, my workaround was to create a php file as router, and redirect to the selected server.
something like:
http://mainserver?server=server1
then inside the php i redirect the request to:
http://server1/api
this way I only have 1 data source.
Thanks!!

I don't think I've seen this pattern before, but there's nothing stopping us from adding a variable to the URL in the data source configuration and interpolating it for each query. Could you open a new issue for this maybe?


Add geolocation support

This seems like an issue with a lot of scope, that can probably be broken up into separate issues. Unsure of the details right now.

This has been added already and simply requires an API key


The content under the page project is loaded slowly and times out irregularly

phenomenon:
with more and more namespace and resources under the project, the phenomenon of loading page timeout will appear randomly every day. Sometimes refresh can solve the problem,But more often it needs to be restarted rancher server pod
system architecture:
user-->LB(4 layer)-->rancher(HA)

rancher version:
2.4.x

Please say your cluster scale

Please say your cluster scale

You can split resources into multiple clusters

You can split resources into multiple clusters

Currently, it manages seven kubernetes clusters, with the largest cluster of 90 machines.
The rancher cluster has three machines

Currently, it manages seven kubernetes clusters, with the largest cluster of 90 machines.
The rancher cluster has three machines

You can try the next kubesphere

You can try the next kubesphere

As the rancher version 2.4.2 has a known bug, try upgrading the version or disabling dashboards as regards memory leakage

As the rancher version 2.4.2 has a known bug, try upgrading the version or disabling dashboards as regards memory leakage

I'll try this solution
https://github.com/rancher/rancher/issues/26624

I'll try this solution
https://github.com/rancher/rancher/issues/26624


Redux saga async props

Hi there,
got a question for async props redux-saga way? simple example
@resolve(someSagaFunction(action))
class ViewComponent extends React.Component {
      render() {
         return (
Hello async world!
)
      }
}

Thanks for you help!

@lukaszszymanski Please use SO for usage questions


what's the copy from process?

Hi,I have a question about the copy from process. Now i have a three node cluster,the json file i want to load is on one node's local disk,so the only crate node will analyzer the sql,make plan,execute and finally send the shards and replicas to other nodes, or it will send data(file) to other nodes and many nodes execute?I'm very confused,Thank you very much.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/38914570-what-s-the-copy-from-process?utm_campaign=plugin&utm_content=tracker%2F505659&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F505659&utm_medium=issues&utm_source=github).

Hi, it depends where you are copying from: https://crate.io/docs/reference/sql/reference/copy_from.html ... but in your case only those nodes where the file is available will import the file and insert the data regularly, there's no sending files around over the network ;)
Cheers, Claus

hi, @celaus ,thanks for replying,is it means,the only one crate node will do the index process to create indexes and make it to shards and send shards and replicas to other nodes,right?if the file is very big,do i need to copy the data to very crate node?

No, it inserts the data just like any other insert: The node where the file is located creates a row and figures out where this row needs to go. With copy from a couple of these rows will be gathered (if they belong to the same shard) and then shipped off to the node holding that shard. The responsible node (for the shard) will then insert the row into its index.
It is certainly recommended to split large files and distribute them in the cluster since it improves concurrency. Ideally you also import directly into certain partitions! Don't copy the source file unless you want to import it multiple times.

@celaus thanks,i understood,the node will send rows to other nodes  which hold the particular shards and then many nodes will index the rows.


Invalid package version for rails-assets.org

Hi @jmaister
I use https://rails-assets.org/ for package managing of JS libraries for my Ruby on Rails project and forced a problem with excellentexport gem generating. You can see it here. It writes "excellentexport has no versions defined. Please create an issue in component's repository.".
The problem is that you use 2-digit version number and this is not Semantic Versioning.
Could you please publish new github release with 3 digit (like 1.5.0)?

On release 2.0.0 I'll add the version with the SEMVER system.

Fixed on version 2.0.0.


I fixed a bunch of typos and formatting errors in the API doc. I now realise i didn't check for the consistency between app and App. I suppose you mean App when you write about a HA app, and app when it's any kind of app. I might check that in a future revision.
~robinL

Thanks!

Whew - didn't realize it was that bad - thanks for a very thorough job!

No probs! I just might take a look at the other docs later ;)


AsciiDoctor Support

http://asciidoctor.org/

I have materials in AsciiDoc format.  I'd love to be able to feed SoftCover my AsciiDoc sources.  Otherwise I plan to convert them to DocBook, and then from DocBook to Markdown, to get them into SoftCover.  (Or else rewrite them in Markdown if the conversion gets ugly.)  I realize adding AsciiDoc support may not be a light request. =)

Ascii Doc is becoming more popular hence it is good to support Gitbook supports it.

I'm dabbling with writing and am currently researching a tool chain (who said procrastination?). As soon as I heard about Softcover I wanted to use it and looking at the docs only reinforced that snap judgement - it looks really great! In a similar fashion, I came to the conclusion that I should use Asciidoctor.
This lead me here... :wink:

I guess this means no Asciidoc support in Softcover?

Right, there are no plans to support AsciiDoc at this time.


JSON form reskinning

https://www.notion.so/appsmith/JSON-form-57ec14b1826c49498dc9203a8b5fdf46

Tested this and LGTM

Tested the distance of Submit/reset button from bottom and right is same
Tested the position of Button end and inputs end is same
Tested the migration with older apps and observe no breakage
Tested with CRUD apps
Regression on JSON Form


docs: Make the k8s job log selector example more generic

See https://stackoverflow.com/questions/70306051/argo-workflow-spark-operator-app-logs-not-generated
Signed-off-by: Yuan Tang<EMAIL_ADDRESS>

cc @crenshaw-dev

I notice that some docs about success/failure conditions and about output parameters are left out of the new file. Is that intentional?

Yes intentional as they are not necessary to illustrate log selector. Those are already part of other existing examples.

Do you want to add a note about the earliest version in which this is (will be?) available?

Do you want to add a note about the earliest version in which this is (will be?) available?

Good idea. Added.

@sarabala1979 Could you take a look at this when you get a chance so that I can start pointing users to this example going forward?


[Question] Problem with the reset method of gymnasium ... again

Question
Hi all,
the reset method of Gynasium is again making problems. So my actual code, which worked for gym (but not for gymansium) looks like this (taken from this tutorial for gym: https://www.youtube.com/watch?v=bD6V3rcr_54):
import gymnasium as gym
from gymnasium import Env
from gymnasium.spaces import Discrete, Box, Tuple, MultiDiscrete

import numpy as np
import pandas as pd
import random

from stable_baselines3 import A2C
import stable_baselines3 as sb3

class ShowerEnv (Env):
    def __init__(self):
        #Define action space
        self.action_space = Discrete(3)

        #Define state space: Temperature range of the water temperature
        self.observation_space = Box (low=np.array([0]), high=np.array([100]))

        #Set starting water temperature
        self.state = 38 + random.randint(-1, 1)

        #Set the shower length in number of time slots
        self.shower_length = 60

    def step(self, action):

        #Apply action
        #Action can have the 3 discrete values (0, 1, 2)
        # When action is 0 --> temperature reduced by 1, When action is 1 --> temperature is kept, When action is 2 --> temperature is increased
        self.state = self.state + action - 1

        #Calculate reward
        if self.state >=37 and self.state <=39:
            reward = 1
        else:
            reward = -1

        #Apply random noise to temperature
        self.state = self.state + random.randint(-1,1)

        #Set placeholder for the info
        info = {}

        #Count down time of shower
        self.shower_length = self.shower_length - 1

        #Chec if shower is finished
        terminated = False
        truncuated = False

        if self.shower_length <=0:
            terminated = True
            truncuated =  True

        #Define observation
        observation = self.state

        return observation, reward, terminated, truncuated, info

    def reset(self):

        #Call the super method
        #super().reset(**kwargs)

        self.state = 38
        self.shower_length = 60
        observation = self.state

        return observation

    def render(self):
        pass

#Create the environment
env = ShowerEnv()

'''
#Test the environment and interact with it
terminated = False
state = env.reset()
cumulative_reward = 0
while not terminated:
    action= random.choice([0,1, 2])
    state, reward, terminated, truncuated, info  = env.step(action)
    cumulative_reward = cumulative_reward + reward
    print(f"action: {action}")
    print(f"state: {state}")
    print(f"reward: {reward}")
    print(f"terminated: {terminated}")
    print("")

print(f"cumulative_reward: {cumulative_reward}")
'''

#Define the model
model = A2C('MlpPolicy', env, verbose=1, learning_rate=0.0003,ent_coef=0.01)

# train and save the model
number_of_time_steps = 1000
model.learn(total_timesteps=number_of_time_steps)
model.save('Trained_RL_Models/Shower_Agent')

When I run it, the reset method once again causes problems "TypeError: reset() got an unexpected keyword argument 'seed'"
So what I did is to modify the reset method, because I was told to do this here: https://github.com/Farama-Foundation/Gymnasium/issues/899
def reset(self, **kwargs):
    #Call the super method
    super().reset(**kwargs)

    self.state = 38
    self.shower_length = 60
    observation = self.state

    return observation

So I added the , **kwargs in the defintion of the method and I call the super method super().reset(**kwargs). However, now I get another error: "    obs, self.reset_infos[env_idx] = self.envs[env_idx].reset(seed=self._seeds[env_idx], **maybe_options)
TypeError: cannot unpack non-iterable int object"
There seems to be a basic difference in designing the reset method when you compare gymnasium to gym. In gym I never got any of those error messages regarding the reset method and I honestly don't understand why the design of the reset method seems to introduce additional complexity in gymnasium. Can anyone tell me some general advice about how to design the reset method, especially considering topics like: **kwargs, super method, random number inclusion (altough here there is no random number generator in the reset method).

reset() takes in a seed argument with the new API
https://gymnasium.farama.org/main/introduction/migration_guide/
https://gymnasium.farama.org/main/api/env/

import numpy as np

from gymnasium import Env
from gymnasium.spaces import Discrete, Box
from gymnasium.utils.env_checker import check_env

class ShowerEnv(Env):
    def __init__(self):
        # Define action space
        self.action_space = Discrete(3)

        # Define state space: Temperature range of the water temperature
        self.observation_space = Box(low=np.array([0]), high=np.array([100]), dtype=np.int32)

        # Set starting water temperature
        self.state = np.zeros((1,))

        # Set the shower length in number of time slots
        self.shower_length = 60

    def step(self, action):
        # Apply action
        # Action can have the 3 discrete values (0, 1, 2)
        # When action is 0 --> temperature reduced by 1, When action is 1 --> temperature is kept, When action is 2 --> temperature is increased
        self.state = self.state + action - 1

        # Calculate reward
        if 37 <= self.state <= 39:
            reward = 1
        else:
            reward = -1

        # Apply random noise to temperature
        self.state = self.state + self.np_random.integers(-1, 2)

        # Count downtime of shower
        self.shower_length = self.shower_length - 1

        # Check if shower is finished
        truncated = self.shower_length <= 0

        return self.state, reward, False, truncated, {}

    def reset(self, *, seed=None, options=None):
        super().reset(seed=seed, options=options)

        self.state = np.array([38], dtype=np.int32) + self.np_random.integers(-1, 2)
        self.shower_length = 60

        return self.state, {}

check_env(ShowerEnv())

@pseudo-rnd-thoughts  and @Kallinteris-Andreas : Thanks a lot for your answers. Actually when using def reset(self, *, seed=None, options=None): it works, but I don't understand, why in this case you can't use
    def reset(self, **kwargs):
        # Call the super method
        super().reset(**kwargs)

as recommended here: https://github.com/Farama-Foundation/Gymnasium/issues/899
When can I use the first or the second approach for defining the reset() method? Is there even another approach?

Because the problem is actually with the return data, it should be a tuple of the observation and info not just observation

@pseudo-rnd-thoughts : Thanks pseudo for your comment. So when shall I uses def reset(self, **kwargs):         # Call the super method         super().reset(**kwargs) and when def reset(self, *, seed=None, options=None)? Is there also a third option? Or is it always the first or second code that I can use for every custom environment?

Just use the second version

you must follow the API
reset(*, seed: int | None = None, options: dict[str, Any] | None = None) → tuple[ObsType, dict[str, Any]]

@pseudo-rnd-thoughts and @Kallinteris-Andreas : Thanks for your answers and effort, I really appreciate it. But why was the recommendation here https://github.com/Farama-Foundation/Gymnasium/issues/899 to use the first option def reset(self, **kwargs): # Call the super method super().reset(**kwargs) and not the second one def reset(self, *, seed=None, options=None)? This is what I basically don't understand. When defining the reset method, how shall I approach this?

**kwargs and specifying the arguments function very similarly to each other therefore, as your question did not related to the reset function but the random number generator, I did not correct you at the time.
There are several more bugs / problems in your code, please use my code above that fixes them to my knowledge.

You should always use the second, as the second is a sub-set of the first function so in practice the first will work but sometimes not correctly

Okay, thanks a lot @pseudo-rnd-thoughts for your great help and effort. I really appreciate it.


IntelliSense should suggest all possible object attributes for overloaded function

Bug Report

🔎 Search Terms

union of types on function overload
function overloading not showing arguments in object with intellisense
🕗 Version & Regression Information

This is the behavior in every version I tried, including 4.5.4 and the nightly, and I reviewed the FAQ for entries about function overloading.

⏯ Playground Link

Playground link with relevant code
💻 Code

type X = {
    a: number;
};

type Y = {
    a: number;
    b: string;
};

function f(args: X): void;
function f(args: Y): void;

function f(args: X | Y){}

f({
    a: 7,
    |
})

Trigger completions at |
🙁 Actual behavior

No further completion suggestions are returned.
🙂 Expected behavior

A suggestion for both b should be returned as that is a valid option if args is of type Y.

Related, or perhaps even a duplicate: #47227
You don't get any further completions because you already have a valid object.

Related, or perhaps even a duplicate: #47227
You don't get any further completions because you already have a valid object.

I did think that would be the case, but it does feel like a bit of an odd behaviour to have as you could have another valid object with the b as a property.

This is the intended behavior (as in, it used to work this way and now it doesn't) - people didn't like when "extra" properties showed up in the list, especially in cases where there was an obvious discriminant argument earlier in the argument list.


Use Inetnet::IP4 instead of Inet4

Can one of the admins verify this patch with one of the following commands:

"jenkins test please" for a one time test run
"ok to test" to accept latest and future commits on this pull request for testing
"add to whitelist" to add the author to the whitelist

Thanks @themodder666. Can you please change the include path as well?: #include <net/inet4> => #include <net/inet>

done

i see its been done elsewhere. thanks


Streamline use of amend feature

Related to #426, which is to find ways to improve the UX of the amend feature.
I use amend a zillion times a day, and to hunt for it in the menu takes time.
Look at some screenshots here to see how gitkraken does it. As you see on the bottom right, there is the "Amend" checkbox. When you click it, it (1) automatically populates the commit message with the message from the previous commit, and (2) changes the button from "Commit" to "Amend Previous Commit".

Something similar could be done in the gittyup "commit panel" (unsure what it's called?), as seen here in the top right; if a "Amend" checkbox is added there, then the text could show the previous message and the "Commit" button could be changed to "Amend":

Hello,
Any news on this ?
This feature would allow me just tick a checkbox while I currently need to manually git commit --amend --no-edit after staging files.
Thanks


Update swarmion/template with functional contracts

Following @Sc0ra 's PR making swarmion contracts functional, this PR updates the template.
Rework will be needed once  @Sc0ra 's PR is merged but this PR illustrates how functional contracts will be used in a project.
@Sc0ra 's PR: https://github.com/swarmion/swarmion/pull/111

Great! It will be a very impactful change 😉


Revise tech docs in README to favour GOV.UK Docker

https://trello.com/c/Psf7EzPB/204-move-away-from-startupsh
This follows the pattern established in 1.
Ideally this repo would also have docs to explain the
data model for support forms, but that's out-of-scope for
this PR. Please see the commit messages for more details.

Thanks for taking a look @ChrisBAshton! I reckon this is ready to go now...

I think we're on the minor end of minor comments now, but I agree we may as well since we're here.
Should be good to go, feel free to merge and deploy 🚀


Added ItemParsedListOutputParser

feature: #4258
Note: still need to write tests

Added tests and ready to merge

Hey @JacobFV ! Same question as #4272 - would you be interested in updating this to the current repo state, or would it be better to close this as a reference implementation for future work?

Close, now a better solution is to somehow get the json parser to work with
arbitrary items
On Mon, Nov 6, 2023 at 10:40 PM Erick Friis @.***>
wrote:

Hey @JacobFV
https://github.com/JacobFV
! Same question as #4272
https://github.com/langchain-ai/langchain/pull/4272

would you be interested in updating this to the current repo state, or
would it be better to close this as a reference implementation for future
work?

—
Reply to this email directly, view it on GitHub
https://github.com/langchain-ai/langchain/pull/4268#issuecomment-1797813306,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJTZS2LRN3EICLQFSYQQ3N3YDG3UFAVCNFSM6AAAAAAXYUL352VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJXHAYTGMZQGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Sounds great. Thanks!


Count(*) query return always 1

Hello,
I've an wrong result on my count(*) query (my query return always count=1),  after searching, i found that you set limit =1 on SelectCountWhere class.
i couldn't set limit to another value, i'm having  an IllegalStateException("A LIMIT value has already been provided")

DATASTAX Documentation:
Counting returned rows¶
A SELECT expression using COUNT(*) returns the number of rows that matched the query. Alternatively, you can use COUNT(1) to get the same result.
Count the number of rows in the users table:
SELECT COUNT(*) FROM users;
Specifying rows returned using LIMIT¶
Using the LIMIT option, you can specify that the query limit the number of rows returned.
SELECT COUNT() FROM big_table LIMIT 50000;
SELECT COUNT() FROM big_table LIMIT 200000;
The output of these statements if you had 105,291 rows in the database would be: 50000 and 105291

@mmoulou Many thanks for reporting this, it is indeed a DSL error. We enforce a LIMIT 1 on one and get calls for performance reasons and clarity reasons, but that works differently in a count because Cassandra will limit the results before counting them.
That means whenever you count and limit at the same time, you get at most the limit. Anyway, we will deploy a fix very shortly.

@mmoulou Can you please let us know how you write count() query in Phantom DSL? I am using version 1.5.0 and could not find any way to make count() a part of select query.

@rahulsinghai MyTable.count.one is the current version. In Phantom 1.6.0 and above, it will change to MyTable.select.count.

@alexflav23 Thanks for your reply. Is there any way to count the number of rows for a select query with where clause in 1.5.0? MyTable.count.one will return all the rows in the table.

@rahulsinghai I suggest taking the time to familiarise yourself with phantom by reading the docs.
MyTable.count.where(_.name eqs "Peter").and(_.age eqs 15).one()

@mmoulou  I'm now going to close this ticket as it's been resolved in the latest development cut. We are working very hard to ensure that will go live as soon as possible.


fix Fix forbid unknown stats

Proposed changes
The statistics derivation for queries on databases A and B, as well as expressions involving hidden columns, should not throw an exception when the statistics are unknown, even if the forbid_unknown_col_stats parameter is set to true.
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

dup with #20362


Add Bloc-Serialization tests running

Test not passed but this is another issue in Bloc-Serialization project.


chore: compatable with pnpm@v7

We'll update to pnpm v7 after it's officially released. Now use v6 instead.

I think it's fine to convert this to draft as we will need this.
pnpm will release v7 very soon after node 12 moves out of LTS


Long term metric and session usage storage

This issue is needed to define two things:

Long term storage of metrics that @SwissDataScienceCenter/ordes is interested in to measure user activity and engagement
Provide means for tracking user activity and usage so that (if required) it can be used to determine costs

The idea is that this issue just outlines the approach and if possible provides a minimal implementation.

The main reason that we need this is because the retention of metrics in Prometheus is not permanent or long term.
Currently our prometheus instances (by default) retain the latest several weeks of data. Therefore long term trends in user activity (or any metric for that matter) cannot be tracked.

@gavin-k-lee can you comment ideally what information about each session you would like to see in a database or a log?

@olevski could we start with these? https://sdsc.atlassian.net/wiki/spaces/RENKU/pages/2215837710/Quantitative+Community+and+Usage+Metrics#Desirable-metrics-for-user-sessions


Weird compiler complaint down in your source for 6.0

PromiseKit 6.0
This is weird:   We have a private Framework that depends (CocoaPods) on PMK 6.0
We include that Framework in the pods list for our host project
We also include PMK 6.0 in the podfile for the host project
We see this Error in the PMK source .... and it can't be your problem because the Framework builds with the exact same version.  But we're baffled.
That is the only build error we currently see!

nevermind ... user error;  it seems the version in our Framework had been inadvertently upgraded to 6.2.8


Ability not to define a query

After upgrading from 2.0.3 (not sure, maybe earlier version) to 2.0.7 one of my services stopped compiling:
error: An GraphQL Object type must define one or more fields.
  --> auth-service\src\graphql.rs:13:6
   |
13 | impl Query {}
   |      ^^^^^

It doesn't have any query, it contains just a couple of mutations. Is it possible to return this ability or maybe create EmptyQuery by analogy with mutation and subscription?

That is a pet project, so I definitely can add some query :) And it is hard to imagine real service without a single query.
So just FYI.

We could allow this, but it is explicitly disallowed by the GraphQL spec:

Object types have the potential to be invalid if incorrectly defined. This set of rules must be adhered to by every Object type in a GraphQL schema.

An Object type must define one or more fields.

And I don't think that allowing invalid schemas is a good idea.
You might want to fix this issue if you would like this feature in GraphQL itself.

I understand that an empty type is invalid. Earlier, that code could be compiled and final schema didn't include Query GraphQL type at all. Thank you for link, I found an answer:

The query root operation type must be provided and must be an Object type.

(https://spec.graphql.org/June2018/#sec-Root-Operation-Types)


How does this relate to wp-background-processing?

I'm just curious how these two things relate to one another (if at all)? Does wp-queue replace wp-background-processing (even if just for some uses)? When do/do not their functionalities overlap?

wp-queue introduces a fully fledged queuing system into WordPress with the following features (some still WIP):

[x] Delayed jobs
[x] Handling of job failures, with automatic retries
[x] Job failures are saved and can be attempted again manually
Multiple queue connections, allowing jobs to be saved to memory instead of the database
Fire up additional workers via the CLI for faster job processing

Both libraries have their place, hence the separate repos. wp-background-processing is more suited to pushing the occasional task to a background process. If you're dealing with thousands of jobs then wp-queue is the library to use because it won't flood the wp_options table.


fix force clean containers

Fix force removing containers on eden clean
Signed-off-by: Petr Fedchenkov<EMAIL_ADDRESS>

Merging myself since this is a  very minor fix


How to fix "torch.cuda.OutOfMemoryError"

I push "One click training" then window said "training index" then I see command prompt then command prompt said↓
"torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 20.00 MiB (GPU 1; 4.00 GiB total capacity; 3.45 GiB already allocated; 0 bytes free; 3.47 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF"
What is wrong? And how to fix 0 bytes? Where has "max_split_size_mb"?

Is only failing at index training or is it also failing while doing the model training? You could try reducing the batch size or changing the dataset.