Row Grouping and Row Detail do not work together

I'm submitting a ...  (check one with "x")
[x] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, post on Stackoverflow or Gitter

Current behavior
Row details won't open when row grouping is also active.
Furthermore, when group is expanded the detail appears as if it is hooked to the group.

Expected behavior
Row detail should open when 'Expand/Collapse Row' link is clicked.
Reproduction of the problem

Copy row grouping example
Implement row details example

Copy 'Row Detail Template' (<ngx-datatable-row-detail>) after 'Group Header Template' (<ngx-datatable-group-header>) and change its content
Insert toggle column as first column
[Optional] Remove frozenLeft columns
Add toggleExpandRow function

What is the motivation / use case for changing the behavior?
Can't use Row Grouping and Row Detail together.
Please tell us about your environment:

Table version:
13.1.0

Angular version:
6.1.6

Browser: [all | Chrome XX | Firefox XX | IE XX | Safari XX | Mobile Chrome XX | Android X.X Web Browser | iOS XX Safari | iOS XX UIWebView | iOS XX WKWebView ]

Language: [all | TypeScript X.X | ES6/7 | ES5]

Example
https://stackblitz.com/edit/angular-ngx-datatable-row-grouping-and-row-detail

Same problem

Same here.

Any update on this?

I am facing the same issue. Anyone able to make workaround of it?

I attempted to fix it in #1569 about a year ago and we're using a version of this in production now. The code is obviously a year out of date, but I imagine the bug itself hasn't changed much if at all so it might help someone who wants to patch the latest version. Or I could probably update that PR some time next week if no one gets to it first.

Thanks @marcushill , It would be a great help. I don't thing this issue will be going to fix in near releases.

@sacgrover Let me know if #1727 works for you. The build is failing in a way I don't understand (can't start headless chrome maybe?) so I'll probably look into that later.

Hi Team,
Any update on this??

Any updates?

This is a very serious library

issue created in 2018 and here it is 2020 and no solution yet ???

@shubhamyugtia001  I also waited for this feature for a long time. I had a case where I needed to implement multiedit where Row Grouping and Row Details were needed together. Finally, I had to create my own custom component for it. Except this feature, ngx-datatable is working fine for my cases.

Any Solution yet?

Hi Team!
Any update on this issue?

Do we have any solution or workaround for this functionality?

Do we have any solution or workaround for this functionality?

As far as I understand, there has been a patch (https://github.com/swimlane/ngx-datatable/pull/1727) that has never been released, because of code conflicts. I wonder, if this control is really maintained after all... Any alternatives?

I submitted that patch years ago (using what little contribution guidelines I could find at the time). I no longer work on a team that consumes this control, but I believe they ended up working off a fork or using a different control due to lack of response on issues at the time.
I've closed my two older PRs since they're so out of date that I'm not going to attempt to pick them back up. Feel free to take any of that code if you want to try to get it merged again.

I was first disappointed that there was no out-of-box solution. But then I started thinking about it and it's actually quite simple to achieve with CSS.
Reference a component function that <ngx-datatable [rowClass]="getRowClass"> that adds a class with set bottom padding to a row as well as position: relative. I use tailwind and my getRowClass() returns pb-12 relative. Append a column to your columns array (or add it in the template), and set the class to be position: absolute; left:0 and position your cell with bottom: x px; height: x px; to fit in the bottom padding.
      {
        name: '',
        prop: '',
        cellTemplate: this.clmRowDetail,
        cellClass: 'absolute w-full left-0 -bottom-8 h-8 rounded-b bg-gray-100',
      },

:)


Shouldn't this type annotation be disallowed for input parameters (contravariant position)?

class Base  {
    foo(item: this) { }
}

class Derived extends Base {

    foo(item: this) {
        item.bar();
    }

    bar() {}
}

function useFoo(base: Base) {
    base.foo(new Base());
}

const d = new Derived();
useFoo(d); // runtime error

Expected behavior:
Compile time error on foo(item: this)
Actual behavior:
Runtime error on useFoo(d);

Things written in method syntax are still checked bivariantly due to people being broadly bad at writing class hierarchies that actually achieve substitutability (e.g. the DOM).
If you use property syntax and turn on strictFunctionTypes, this is an error:
class Base  {
    foo = (item: this) => { }
}

class Derived extends Base {
    foo = (item: this) => {
        item.bar();
    }

    bar() {}
}

function useFoo(base: Base) {
    base.foo(new Base());
}

const d = new Derived();
useFoo(d); // type error


Version all Meshery Adapters and provide version numbers to users

Current Behavior
Today, users are not able to view the version of any given Meshery adapter in either the Meshery UI or mesheryctl.
Desired Behavior

Meshery UI should be enhanced to show to show versions of each of the adapters.
mesheryctl version should be enhanced to show versions of each of the adapters, not just the client and server.

Implementation

"vX.X.X" tag built into CI build and release process of each adapter.
Version built into the meshes.proto for each adapter to provide to meshery server.
Meshery server to retrieve and display the version number of each adapter when hovering over any given adapter chip in the UI.
Meshery server to provide adapter version via ReST endpoint.
mesheryctl version needs a new subcommand --all

Acceptance Tests

[ ] Adapter versions are retrievable via Meshery client and server.

@leecalcote what system are we currently using for testing in Meshery. Im asking so that I know how to test the changes to ensure it works as wanted


create a shared library of utilities

between nats, security and puppetdb discovery there's a bunch of overlap - where certs are, SRV lookups etc, this module should provide a Util class for those and all the coupled plugins should use that

https://github.com/ripienaar/mcollective-choria/


flashplayer: <IP_ADDRESS> -> <IP_ADDRESS>

https://helpx.adobe.com/flash-player/release-note/fp_30_air_30_release_notes.html
Things done

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

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

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

fixes #41642
cc @taku0

No attempt on aarch64-linux (full log)
The following builds were skipped because they don't evaluate on aarch64-linux: flashplayer
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

No attempt on x86_64-linux (full log)
The following builds were skipped because they don't evaluate on x86_64-linux: flashplayer
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.


CUDA 7.1

Please make sure that this is a build/installation issue. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:build_template
System information

OS Platform and Distribution: Linux CentOS 7.8
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: n.a.
TensorFlow installed from (source or binary): source
TensorFlow version: v2.3.1
Python version:3.6
Installed using virtualenv? pip? conda?: n.a.
Bazel version (if compiling from source): 3.1.0 (bazelisk)
GCC/Compiler version (if compiling from source):7.3.1
CUDA/cuDNN version:10.1/7.6
GPU model and memory:n.a.

Describe the problem
Compilation error when compiling tensorflow 2.3.1. with CUDA 10.1:
ERROR: /build/tensorflow/tensorflow/stream_executor/cuda/BUILD:457:1: C++ compilation of rule '//tensorflow/stream_executor/cuda:cusparse_stub' failed (Exit 1)
In file included from tensorflow/stream_executor/cuda/cusparse_stub.cc:59:0:
Provide the exact sequence of commands / steps that you executed before running into the problem
Tried to follow the build instructions from source with the recommend/tested configuration:
https://www.tensorflow.org/install/source#tested_build_configurations
Here is my configure log:
configure.txt
Here is a minimal build command to reproduce the issue:
BAZEL_LINKLIBS=-l%:libstdc++.a bazel build --config=nohdfs --config=noaws --config=nogcp --config=nonccl  --config=monolithic --config=cuda --config=v2 --config=opt  //tensorflow/stream_executor/cuda:cusparse_stub
Note: I had to add BAZEL_LINKLIBS=-l%:libstdc++.a for CentOS, see
https://github.com/tensorflow/tensorflow/issues/35867
Any other info / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.
As you can see in the build log, the error occurs in tensorflow/stream_executor/cuda/cusparse_stub.cc:59:0. I assume this is because of wrong version of tensorflow/stream_executor/cuda/cusparse_10_1.inc.
The file is identical to cusparse_10_2.inc and it works with CUDA 10.2
build.txt

@geeheim
Please refer to this comment and let us know if it helps.


Install issues on Kali Linux

Empire Version
2.4
OS Information
Fresh Kali 2017.3 + full updates
Expected behavior and description of the error
./setup/install.sh does not complete as expected
A. Install of Powershell fails when using current method

libicu55 has no install candidate
wget for libssl1.0.0 fails at http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u6_amd64.deb

Installing via debian 9 .deb + dpkg seems to work for powershell install issue (and has less dependencies)

... but
B. Error during ./configure linked to libcrypto (openssl)
see screenshot
Screenshot

Any additional info
Strangely enough after that I still could start Empire, execute http listener, generate stager...
but then on agent 1st call back to http listener I get following

have asked google for help the whole day but no success... :(

I've updated the kali install dependencies with the suggestion from @DanMcInerney. The install for kali will now include libssl1.0.0-dev and libssl-dev.


Filter search results by length

Checklist

[X] I'm asking a question and not reporting a bug/feature request
[X] I've looked through the README
[X] I've read the guidelines for opening an issue
[X] I've searched the bugtracker for similar questions including closed ones

Question
How do I filter the search results by length, for example in a ytsearch1:query type search, is there a way that I could for example when searching for a video not download something over 20 minutes and/or filter those out?
Verbose log
No response

e.g.  yt-dlp ytsearch5:query --match-filter "duration<1200" --print "%(duration_string)5s - %(title)s"

Thanks!


Loading a client SSL profile that belongs to an app

I'm trying to load a client SSL profile, but I get an exception because the profile belongs to an app (the reason is that the path contains slashes):
icontrol.exceptions.InvalidInstanceNameOrFolder: instance names and partitions cannot contain '/', but it's: /Common/xxx.yyy.app/
I've tested this with a profile that doesn't belong to an app (partition 'Common') and it works.
csslp = mgmt.tm.ltm.profile.client_ssls.client_ssl.load(name=profilename, partition=partitionname)
Can someone confirm that this is an issue?

Solved in #468 even if it's still open.


Add support for .env file

Why make this change?

Closes #1374

To allow users maintain a local .env to manage environment variables during local development.

What is this change?

Using the package DotNetEnv
Now, users can maintain a local file .env to manage environment variables instead of setting environment variables in the system.
If .env file is used, it will take precedence over system environment variables.

How was this tested?

[x] Unit Tests

NOTE:

This feature is to enhance local development experience, and it works when used via DAB CLI.

QnA

Where should the .env file be created?
-> For .env file to be considered, it should be present in the same directory where the dab commands are executed.

Does it overwrite the existing environment variables?
-> No, it doesn't update any existing variables. It just gives precedence to the variable defined in the file over the system defined variable in case it is present in both places.

PR description:

If .env file is not used, it will take precedence over system environment variables.

should the line read: "If .env file is used" ?

As per @severussundar and discussion, I think we should add support for .env file name provided from user as well. Could be a follow up PR to support that option.

I think we should consider getting the exact file name of the .env file from the user

As per @severussundar and discussion, I think we should add support for .env file name provided from user as well. Could be a follow up PR to support that option.

I think we should consider getting the exact file name of the .env file from the user

Agree, we can incorporate that based on the request as a follow up Pr.

Not sure why we are testing DotNetEnv.Env.Load externally.

We have tests that verifies DotNetEnv.Env.Load internally. Line:125(Environment)
we have some external tests as well to just verify the method ParseConfigJsonAndReplaceEnvVariables as calling this directly won't load the variables from .env file.
Loading from .env file happens at the initialization step of DAB CLI, so that every cli command is synced with the environment variables.
Hope this addresses your concerns?

Not sure why we are testing DotNetEnv.Env.Load externally.

We have tests that verifies DotNetEnv.Env.Load internally. Line:125(Environment)
we have some external tests as well to just verify the method ParseConfigJsonAndReplaceEnvVariables as calling this directly won't load the variables from .env file.
Loading from .env file happens at the initialization step of DAB CLI, so that every cli command is synced with the environment variables.
Hope this addresses your concerns?

Thanks for the clarifications, could you comment the additional scenarios which this test is handling.


[X-Section] Translate and move req'd WALLY FastAPI to GWELLS Django

Describe the task
Take the API functionality that exists within WALLY that the X-Section Tool relies on and integrate into GWELLS API.
WALLY API code to move =

backend/api/v1/elevations (used for getting elevation at geolocations)
backend/api/v1/wells (used for getting well data, such as location, depth, and lithology)
backend/api/v1/streams (used for getting waterbodies at geolocations)
NOTE: not all functionality present in these files is needed for the x-section tool.
backend/api/v1/aggregator/controller.py:databc_feature_search is also used.

The endpoint that the X-Section tool queries is /section[/export] in the 'wells' routes.
Purpose
These will be the critical backend functions for the X-Section tool.
Acceptance Criteria

[ ] a /section endpoint added to the GWELLS API that allows for the functionality of the front-end X-Section tool within GWELLS

Additional context

These two projects both utilize Python-based backends, but WALLY uses FastAPI and GWELLS uses Django. This means that while there will need to be some translating for the REST endpoints, the supporting functions should be relatively copy-and-paste.
Some effort might be needed to address differing python versions in the backend. While WALLY is on 3.7.17, GWELLS is only at 3.6.9. NOTE: Upgrading GWELLS python to 3.7 is planned work.
No data needs to be migrated into GWELLS database to support this. All data queries as part of this tools function (elevation, streams/lakes, wells) query either external APIs or GWELLS itself.
Should approach this with writing unit tests.

Description of existing API Functionality:

A line between two geographic points is drawn on a map.
A buffer radius (how wide the line is) is defined. The default is 200m. Currently supports values from 1-1000m
A query containing the two points and the radius is sent to /section
The query returns:

The elevation of the land along the direct line between the points
all wells within the search area including depth of well and any lithology and associated depth data
all streams and lakes within the search area

Move to high priority to help with organizing when we can begin GWELLS work


handle non-UTF-8 HTML pages

we're assuming UTF-8 somewhere in publish, and choking when we get a page in a different charset, e.g. http://wirres.net/article/articleview/7573/1/6/ which is Content-Type: text/html  and has <meta charset="iso-8859-1"/>. log:
I Params: [(u'source', u'http://wirres.net/article/articleview/7573/1/6/'), (u'target', u'http://brid.gy/publish/twitter'), (u'bridgy_omit_link', u'false'), (u'source_key', u'aglzfmJy...')]
I Source: https://www.brid.gy/twitter/diplix , features [u'publish', u'listen'], status enabled
D Publish entity: aglzfmJyaWQtZ3lyVgsSDVB1Ymxpc2hlZFBhZ2UiL2h0dHA6Ly93aXJyZXMubmV0L2FydGljbGUvYXJ0aWNsZXZpZXcvNzU3My8xLzYvDAsSB1B1Ymxpc2gYgICAgIDyiAoM
I Starting new HTTP connection (1): wirres.net
D "GET /article/articleview/7573/1/6/ HTTP/1.1" 200 None
E Expected valid UTF-8, got '<!doctype html>\n \n<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="de-1996"> <![endif]-->\n<!--[if IE 7]>    <html class="no-js ie7 oldie" lang="de-1996"> <![endif]-->\n<!--[if IE 8]>    <html class="no-js ie8 oldie" lang="de-1996"> <![endif]-->\n \n<!--[if gt IE 8]><!--> <html class="no-js" lang="de-1996"> <!--<![endif]-->\n<head>\n<meta charset="iso-8859-1"/>\n ...(length 71509)

aha, the exception happens when we try to store it in the datastore, which requires Unicode for TextProperty. i could switch to BlobProperty, but i'd really rather not.
Traceback (most recent call last):
...
  File "/base/data/home/apps/s~brid-gy/3.383498254578038417/publish.py", line 448, in post
    result = self._run()
  File "/base/data/home/apps/s~brid-gy/3.383498254578038417/publish.py", line 177, in _run
    resp = self.fetch_mf2(url)
  File "/base/data/home/apps/s~brid-gy/3.383498254578038417/webmention.py", line 75, in fetch_mf2
    self.entity.html = text
  File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/ext/ndb/model.py", line 1364, in __set__
    self._set_value(entity, value)
...
BadValueError: Expected valid UTF-8, got ...


Can't start any live gekko strat/watcher

I just installed Gekko in my Raspberry Pi 3 B+ and can't start any live gekko (strat or watcher)
2018-11-15 02:53 Gekko 2018-11-15-02-53-watcher-540294952449209 started.                                                                                │  --> POST /api/startGekko 200 26ms 1.28kb                                                                                │uncaughtException TypeError: _.contains is not a function                                                                                │    at load (/home/pi/gekko/core/pluginUtil.js:72:11)                                                                                │    at /home/pi/gekko/node_modules/async/dist/async.js:1156:9                                                                                │    at replenish (/home/pi/gekko/node_modules/async/dist/async.js:1030:17)                                                                                │    at /home/pi/gekko/node_modules/async/dist/async.js:1034:9                                                                                │    at _asyncMap (/home/pi/gekko/node_modules/async/dist/async.js:1154:5)                                                                                │    at /home/pi/gekko/node_modules/async/dist/async.js:1240:16                                                                                │    at Object.mapSeries (/home/pi/gekko/node_modules/async/dist/async.js:1066:16)                                                                            │    at loadPlugins (/home/pi/gekko/core/pipeline.js:52:11)                                                                                │    at /home/pi/gekko/node_modules/async/dist/async.js:3845:9                                                                                │    at replenish (/home/pi/gekko/node_modules/async/dist/async.js:1030:17)                                                                                │RECEIVED ERROR IN GEKKO INSTANCE 2018-11-15-02-53-watcher-540294952449209                                                                                │{}                                                                                │2018-11-15 02:53 A gekko watcher crashed.                                                                                │2018-11-15 02:53 was unable to start.

You have wrong the wrong version of lodash installed.
Please delete your local node_modules & your local modified package-lock, pull the one from Github and install dependencies again.
Note: if NPM complains about running an audit command ignore it. Running that causes your issue.


whl for torch 2.5.0

Hi,
I have trouble in compiling from source.
I'd appreciate it  if you could release a whl file for torch 2.5.0.

same issue

In general publishing wheels would be extremely helpful.

Will do that late this week

Could be torch 2.5.1 as it's official stable release now.


Cannot create accounts

Under "Account Management > Create Account" it is impossible to select a new username that is accepted as valid. Looking at the code in Admin.checkUsername() I suspect the responses are the wrong way round: it currently says
 if (!exists)
    badRequest();

but I suspect it should be if(exists). For example, any random string fhghf is reported as already taken.

I don't think I have commit rights, and have not seen any updates on this issue. I have the same problem, and it is becoming quite urgent/critical for me. Is there a chance, Mark, that you can make the change and commit please? Or is there a specific workflow.
Thanks!
Johan

I've been able to fix this locally, and it seems to work. With permission I can commit the (really minor) change - I just don't know if there might be, given the overall design, unintended consequences.

Sorry, I don't have commit rights either - I've been using a local change! Cheers.


fix: Panic when Ident has no Obj

For some reason when the Ident is in another file in the
same package, the ast package does not provide an obj.
Avoid a panic that happens when trying to access the nil Obj.
This means the value cannot be tested for an exec, but at least
execinquery no longer crashes.

Thanks for fixing!!


Vault needs to be reindexed after decryption and encryption

Amazing plugin by the way. Very small issue though. Steps to replicate :

Open Vault and run encryption command. Works successfully.
Run decrypt command without closing the vault. Only a few files get decrypted, because Obsidian hasn't indexed changes yet - hence now, half files are encrypted, half are decrypted in the same vault.
Restarting the vault after messing up the vault in step 2 and running the decrypt command again doesn't do anything on my end, it still remains the same.

For me, as of now it's second nature to always restart the vault before running an encrypt/decrypt function. When I forget to do the same, I just restore from a Git backup. If it's non-trivial and possible for you, could the plugin make Obsidian do a force re-index of the entire vault before encryption/decryption commences? It would be a nice quality of life improvement and eliminate the need for restarting vaults entirely.
Or yet another (inferior) way to resolve would be making the plugin somehow be able to differentiate between encrypted and normal files, so that if someone partially messes up their vault like in step 2, they can just run decryption on the remaining left out files after re-indexing. Thanks in advance for your patience!

hi @Raagaception , thanks for submitting this issue - i was able to repro something similar.
my repro - actions taken:
1/ cmd+P -> encrypt files
2/ cmd+P -> decrypt files
end-state: some files missing data or corrupted
expected end-state: all files back to their original forms
worse, when i tried closing/reopening the vault as suggested, this did not fix things.
right now it looks like the issue is likely with let stats = fs.statSync(file_path); //must be done before opening the fd or it errors (link) returning 0 for some reason - i will need to investigate further when i have time
for now my suggestion is to not use the plugin given file corruption risks.
if you have time to investigate a fix and submit a PR that would be appreciated! i do not have a timeline for when i will be available to work on this next, thanks

For now my suggestion is to not use the plugin given file corruption risks.

Yep, I stopped using the plugin altogether because despite restarting vault every time before using it, some files still do never get decrypted randomly. It is a fine concept, but too risky to use for me as of now. I suggest you put a huge warning on the releases page about this until it gets fixed, otherwise we might have users losing their data if they aren't careful enough.

If you have time to investigate a fix and submit a PR that would be appreciated!

Unfortunately, I have only surface level coding knowledge, so I might not be able to help. I wish you luck on fixing the issue whenever you can spare the time!

@Raagaception - Oddly enough everything is working fine now for me - i can't get the bug to reproduce.
Can you tell me the exact series of steps you go through to get the bug to trigger?

Only one vault open, and the same steps as in the opening comment of this thread.


Assets during test

We use an asset file to configure some feature inside our app.
So during test, we tried to access to it but we keep getting this error.
The getter 'buffer' was called on null.
  Receiver: null
  Tried calling: buffer
  dart:core                                                   Object.noSuchMethod
  package:flutter/src/services/asset_bundle.dart 148:29       CachingAssetBundle._fetchString
  ===== asynchronous gap ===========================
  package:flutter/src/services/asset_bundle.dart 142:50       CachingAssetBundle.loadString.<fn>
  dart:collection                                             _HashVMBase&MapMixin&&_LinkedHashMapMixin.putIfAbsent
  package:flutter/src/services/asset_bundle.dart 142:27       CachingAssetBundle.loadString

I know that assets are not available during test, but can you at least return null if no assets ?
An other possibility would be to provide assets before test like tester.provideAsset(name, asset);

See also https://github.com/flutter/flutter/issues/7715 and https://github.com/flutter/flutter/issues/7115 about the poor error messages in this case.

Any chance you can attach a reduced self-contained test case that demonstrates the issue?

I believe @amirh ran into this today (or similar).

Can we just get assets available during tests? https://github.com/flutter/flutter/issues/12999

This would be nice to have. I just spend several hours trying to read an asset in a test and getting generic timeout errors.


Fixes $isLabel error

Fixes issue #489

Thanks!
Added the implementation manually (please avoid commiting dist/lib files).


spyder 2.0.12 can't start ipython 0.11

From<EMAIL_ADDRESS>on 2011-08-01T10:39:47Z
When I run spyder 2.0.12 on Linux with ipython 0.11 installed, I observe the following error in the ipython console window:
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/spyderlib/widgets/externalshell/startup.py", line 181, in <module>
import IPython.Shell
ImportError: No module named Shell
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=723

From<EMAIL_ADDRESS>on 2011-08-03T00:02:28Z
Looking at the roadmap it means that this will not be fixed until October-November with the release of 2.2? There is no workaround besides rolling back to ipython 0.10? Thanks.

From pierre.raybaut on 2011-08-01T12:58:52Z
As mentioned here: https://code.google.com/p/spyderlib/wiki/Installation Spyder v2.0-2.1 is not compatible with IPython >=v0.11.
Status: Invalid

From pierre.raybaut on 2011-08-06T04:00:20Z
Actually we may take action on this issue.
Please see the duplicate ( issue #727 ).
Status: Duplicate
Mergedinto: 727

From pierre.raybaut on 2011-08-03T02:10:27Z
Exactly, even if the current roadmap is probably a little bit optimistic.
There is no workaround except installing v0.11 elsewhere (not in system PYTHONPATH) because there have been huge changes between v0.10 and v0.11 and the mechanism on which Spyder's IPython interface was built on is no longer implemented.

From<EMAIL_ADDRESS>on 2011-08-08T19:38:22Z
I need to run Python on a Windows 7 PC.  I have installed the Enthought 7.1 distro, which includes iPython 0.11 and Python 2.7.  I then installed PyQt and Spyder (32 bit)
I see the same error message.  It looks like I cannot run Spyder with Enthought 7.1 on Windows until the version 0.11 problem is fixed.  Is there an ETA for this?
Conversely, can anyone advise how to back-grade to iPython 0.11 in Enthought?
DN

From<EMAIL_ADDRESS>on 2011-08-08T22:48:49Z
Yes, I am already installing Pythonxy.  Thanks.  I will also try out the iPython 0.11 support.  DN

From ccordoba12 on 2011-08-08T20:38:03Z
I don't know how to downgrade Ipython in Enthought (never used it). You can get a similar environment installing Pythonxy (go to pythonxy.com). The good news is that it comes with the latest stable Spyder version and it's free.
Please see our Roadmap https://code.google.com/p/spyderlib/wiki/Roadmap for time-lines.
There is also some preliminary support for Ipython 0.11 in our Mercurial repository, here: https://code.google.com/p/spyderlib/source/checkout You can try it on your setup and tell us how it goes.
Cheers,
Carlos.

From pierre.raybaut on 2011-08-09T05:49:45Z
Be careful to pick files in the correct repository.
If you want to upgrade v2.0.12, pick them here (not in the default repository which is the v2.1 repository): https://code.google.com/p/spyderlib/source/browse/?repo=v20

From<EMAIL_ADDRESS>on 2011-08-09T04:19:23Z
OK, if I replace startup.py with the revised version, it runs partly - with the message:
Warning:
Spyder does not support GUI interactions with IPython >=v0.11
on Windows platforms (only IPython v0.10 is fully supported).
If I then replace monitor.py with the new one,, it throws an error and doesn't run at all:
Import error: No module named bsdsocket
DN


CMake create_symlink error happens on MacOS

I followed the instructions in last section of BUILD.md and encountered the following compile error. My Vulkan SDK is: vulkansdk-macos-<IP_ADDRESS>.
/Applications/CMake.app/Contents/bin/cmake -E create_symlink /Users/joshualiu/dev/source/git/Vulkan-Tools/icd/macos/VkICD_mock_icd.json Debug /Users/joshualiu/dev/source/git/Vulkan-Tools/build-xcode/icd/Debug/VkICD_mock_icd.json
CMake Error: cmake version 3.10.2
Usage: /Applications/CMake.app/Contents/bin/cmake -E  [arguments...]
Available commands:
capabilities              - Report capabilities built into cmake in JSON format
chdir dir cmd [args...]   - run command in a given directory
......[more commands]
time command [args...]    - run command and return elapsed time
touch file                - touch a file.
touch_nocreate file       - touch a file but do not create it.
Available on UNIX only:
create_symlink old new    - create a symbolic link new -> old
make: *** [/Users/joshualiu/dev/source/git/Vulkan-Tools/build-xcode/icd/CMakeFiles/VkICD_mock_icd-json] Error 1
Command /bin/sh failed with exit code 2
Does the parameter "Debug" for create_symlink make sense here?
/Applications/CMake.app/Contents/bin/cmake -E create_symlink /Users/joshualiu/dev/source/git/Vulkan-Tools/icd/macos/VkICD_mock_icd.json Debug /Users/joshualiu/dev/source/git/Vulkan-Tools/build-xcode/icd/Debug/VkICD_mock_icd.json
I found that the source compile script is at icd/CMakeLists.txt. There is an extra $< CONFIG > when made for Xcode.
        if(CMAKE_GENERATOR MATCHES "^Xcode.*")
            add_custom_target(mk_icd_config_dir ALL
                              COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
            foreach(config_file ${ICD_JSON_FILES})
                add_custom_target(${config_file}-json ALL
                                  DEPENDS mk_icd_config_dir
                                  COMMAND ${CMAKE_COMMAND} -E create_symlink ${CMAKE_CURRENT_SOURCE_DIR}/macos/${config_file}.json
                                          $<CONFIG> ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/${config_file}.json
                                  VERBATIM)
            endforeach(config_file)
        else()
            foreach(config_file ${ICD_JSON_FILES})
                add_custom_target(${config_file}-json ALL
                                  COMMAND ${CMAKE_COMMAND} -E create_symlink ${CMAKE_CURRENT_SOURCE_DIR}/macos/${config_file}.json
                                          ${config_file}.json
                                  VERBATIM)
            endforeach(config_file)
        endif()

While I'm looking into this, could you try building with update_deps.py and known_good.json?
Building the repo this way is described here:
https://github.com/KhronosGroup/Vulkan-Tools/blob/master/BUILD.md#building-dependent-repositories-with-known-good-revisions.

I can't seem to reproduce the problem.
Has building the dependent repos with known-good helped you?

@bojie-liu Is this problem still occurring for you?
If there is no update by midday tomorrow, I will assume the problem has been resolved and close the issue.


Implement the new crown assets in Frontend (v5)

What
Implement the new crown assets in GOV.UK Frontend v5.
In v5, the new Tudor crown assets will be the only version of the crown available and used by default. The header may also be changed to a lockup that includes the GOV.UK logotype in this change, and the tasklist below is written assuming it will. See #1739 for specifics on that change.
Why
To ensure that teams are using the new GOV.UK branding on any new services.
Who needs to work on this

Developers

Who needs to review this

Developers
Designers
Accessibility specialist

Done when
- [ ] Inline SVG graphic has been implemented in Header component
- [ ] Accessibility considerations for logo's change in have been made (e.g. removal of `role="presentation"`)
- [ ] Sass has been updated to account for the new lockup (link hover styles, product name integration, etc.)
- [ ] Favicon and web sharing graphics have been replaced

Merging and releasing this is dependent on https://github.com/alphagov/govuk-frontend/issues/4059.

Shifting this into blocked for the time being as this might become work for a 5.x release instead, with a transitional piece being merged into 5.0 instead.


triggering state transition from player input locks the game

Bevy version
c78b76bba8def0d72b579b4a06673843f32e8532
What you did
In my game, I have several screens which I can go through by clicking the mouse (with just_pressed on Input<MouseButton>). Each screen has its own state.
Very dumb example that reproduce my issue:
use bevy::prelude::*;

fn main() {
    App::build()
        .add_plugins(DefaultPlugins)
        .add_state(AppState::State1)
        .add_system_set(SystemSet::on_enter(AppState::State1).with_system(enter_state.system()))
        .add_system_set(SystemSet::on_update(AppState::State1).with_system(next_state.system()))
        .add_system_set(SystemSet::on_enter(AppState::State2).with_system(enter_state.system()))
        .add_system_set(SystemSet::on_update(AppState::State2).with_system(next_state.system()))
        .run();
}

#[derive(Clone, Eq, PartialEq, Debug)]
enum AppState {
    State1,
    State2,
}

fn enter_state(state: Res<State<AppState>>) {
    eprintln!("entering {:?}", state.current());
}

fn next_state(mut state: ResMut<State<AppState>>, mouse_button_input: Res<Input<MouseButton>>) {
    if mouse_button_input.just_pressed(MouseButton::Left) {
        match state.current() {
            AppState::State1 => state.set_next(AppState::State2),
            AppState::State2 => state.set_next(AppState::State1),
        }
        .unwrap();
    }
}

What you expected to happen
One click to go from State1 to State2, then one click to go from State2 to State1.
What actually happened
On first click, it changes state in a loop and lock the game.
Additional information
Now that system set can rerun in same frame, input isn't reset between two passes so just_pressed is always true

Looks like it's working as intended: state chanes are the inner loop, compared to input processing. You'll have to break that loop yourself.

Yup I know, but I think that's very user-unfriendly, I would hope we have a better solution for that

From my actual game (but not compiled like this):
use bevy::{app::AppExit, prelude::*};

fn main() {
    App::build()
    .add_state(AppState::Menu)
    .add_system_set(SystemSet::on_update(AppState::Menu).with_system(menu_input.system())
    .add_system_set(SystemSet::on_update(AppState::Menu).with_system(game_input.system())
    .run();

pub enum AppState {
    Menu,
    InGame,
}

pub fn menu_input(
    keyboard_input: Res<Input<KeyCode>>,
    mut app_state: ResMut<State<AppState>>,
    mut app_exit_events: EventWriter<AppExit>,
) {
    if keyboard_input.just_pressed(KeyCode::Space) {
        app_state.set_next(AppState::InGame).unwrap();
    } else if keyboard_input.just_pressed(KeyCode::Escape) {
        app_exit_events.send(AppExit);
    }
}

pub fn input(
    mut app_state: ResMut<State<AppState>>,
    keyboard_input: Res<Input<KeyCode>>,
    mut pause_events: EventWriter<PauseEvent>,
) {
    if keyboard_input.just_pressed(KeyCode::Escape) {
        app_state.set_next(AppState::Menu).unwrap();
    }
    if keyboard_input.just_pressed(KeyCode::Space) {
        //pause logic omited
        pause_events.send(PauseEvent);
    }
}

On 0.4 you could start the game by pressing space and the game would start unpaused, on current main it starts paused.
On 0.4 you could exit the game to the menu by pressing Esc, now it exits the whole game.
Unless I'm misunderstanding something, there is no loop to break here and just_pressed() is just broken on state transition.

a workaround is to add a on_enter system for your states that just does:
fn reset_input(mut keyboard_input: ResMut<Input<KeyCode>>,) {
      keyboard_input.update();
}

I hope we can find a better fix 😄

There is no loop, but the gist of the problem is the same: state changes are processed faster than input, so if you're consecutively switching several states based on an input edge you're gonna experience this issue. I still don't think this is something that needs fixing on Bevy side.
My solution would be a layer of indirection that converts inputs into app-specific events (the same layer would also handle keybindings). So, when a key or a button is down (or just pressed), instead of changing state an event is emitted, and the state change system consumes that event.

a workaround is to add a on_enter system for your states

No need for a whole new system. I ended up taking your suggestion, but simply updating right after reading just_pressed:
if keyboard_input.just_pressed(KeyCode::Space) {
        app_state.set_next(AppState::InGame).unwrap();
        keyboard_input.update();
}

Still feels against the spirit of just_ to me, but simple enough.

My solution would be a layer of indirection that converts inputs into app-specific events (the same layer would also handle keybindings). So, when a key or a button is down (or just pressed), instead of changing state an event is emitted, and the state change system consumes that event.

In this case I think it probably makes sense to just use a shared ManualEventReader<KeyboardInput> resource to ensure a given set of systems only consume the event once.
This is a bit of a foot-gun though. Worth playing around with ways to make it fool-proof.

I've removed this from the 0.5 milestone because I don't think theres much we can do in the short term about this and we do have workarounds.

If we find a better solution before release (and its not a major change) I'll consider including it.

not a fix, but I added documentation and helpers around this issue in #1781

I just ran into this when porting to 0.5 and I have to say this is surprising behavior. My mental intuition was that states own the entire frame. So if a state transition happens, it doesn't apply until the next frame.

Emiting event doesn't help to solve this issue / workaround. See #2205
Adding key_input.update(); right after done with processing input solved the issues. But for that I have to use ResMut<Input<KeyCode>> instead of just Res<Input<KeyCode>>

The Bevy Cheatbook lists the following workaround.
If you want to use Input<T> to trigger state transitions using a button/key press, you need to clear the input manually by calling .reset:

fn esc_to_menu(
    mut keys: ResMut<Input<KeyCode>>,
    mut app_state: ResMut<State<AppState>>,
) {
    if keys.just_pressed(KeyCode::Escape) {
        app_state.set(AppState::MainMenu).unwrap();
        keys.reset(KeyCode::Escape);
    }
}

I think a better potential workaround might be to check whether the resource 'is_changed'. I.e. whether the input has been updated since the last time this system ran.
This would be a slightly unwieldy pattern, so it might make sense to add a special SystemParam wrapper around Res<Input> for this
Alternatively we could add an extension trait for Res<Input> and rename just_pressed to something more unwieldy, using that name for this extension.

you can now use https://docs.rs/bevy/latest/bevy/input/struct.Input.html#method.clear

Fixed by #7267.


Add Spec and Methods for Math

Worked with JC to add two spec texts, and and their accompanying methods.

nicely done. Code looks great!


Fix preserving custom ports

Additional changes related to PR #2245. No need to update the changelog.

/azp run


UVI Request

--- UVI JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v5.1 to before v5.13.4",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=8d2451f4994fa60a57617282bab91b98266a00b1",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a41573667b39152176f6b08d10b4deb171e541c4"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "8d2451f4994fa60a57617282bab91b98266a00b1",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "a41573667b39152176f6b08d10b4deb171e541c4",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "cgroup: verify that source is a string\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.13.4 by commit a41573667b39152176f6b08d10b4deb171e541c4, it was introduced in version v5.1 by commit 8d2451f4994fa60a57617282bab91b98266a00b1. For more details please see the references link."
}
--- UVI JSON ---

This issue has been assigned UVI-2021-1001213


finish and save after "move points" edit sometimes resets to old map

Hi,
i was extensively using the move points function today. And pretty often (2 out of 10 times) finish and save resets to the old map and i've to redone the work.

If you leaving "move points" mode? Or if you save changed map?

If I try to save changed map - it sometimes resets to original map just before pressing save button

But you left move points mode before save?

Yes I did

I don't know why but I will check that

It looks like a race condition like it reloads the original map just before clicking save

I activate interval update after leaving moving mode, maybe it comes faster then reshaping made changes

I tried to locate the problem, but I didn't find any issues in logic behavior. Do you have a log file from your session?

I have another idea why this could happen. If an invalid polygon is created during the point movement (e.g., lines crossing over each other), then the change is discarded and reverted to the original polygon. But this is not a bug.

OK - i'm going to try to reproduce it and i'm going to close this issue right now. Thanks a lot!

Same here, the moment save and finish is clicked the perimeter goes back to the way it was.
It only works if there is no perimeter selected on the select map popup.

Go to mapping page
Select a perimeter to be edited
Add a shape/remove a shape/change a point, all of them show the same behaviour
Click save and finish

While the popup to set a name is active you can see the perimeter reverting iteslf to how it was before the changes, if you dont do step 2 it works as expected.

try now

Yup, seems fixed now.

Some callbacks I'll never understand


[Design]: Removing scrollbar from testimonials and adding a border for a card-like look

Is your feature request related to a problem? Please describe.
Some of the testimonials have an overflow which makes the scrollbar appear , although the scrollbar is styled nicely it does not appear in beside every testimonial , which makes it look like a bug or a design inconsistency.

Describe the solution you'd like
The best solution would be to remove the scrollbar completely so that the design looks consistent and to add a extra point of view where each card stands out we can add a border to it .
It would look somewhat like this:

Describe alternatives you've considered
Alternatives solutions I tried was

To add a box-shadow inside the text area so that it looks like there's more text below
Problem : It appears on every box , so even if the testimonial is short it looks like there is something below and also a was unable to make shadow that is only coming from one side with enough blur on it.

To add a right border to text only which creates a sort of separation between divs
Problem : Cards look much better visually as compared to right border only

Additional context
If you can assign me this issue I would be delighted to send a pull request .
Also this would be my first pull request ever so I wanted to work on something small.
I would like to implement the above design I suggested in the above image.

go ahead @Rahul-1611


Add snapper opts

Description of changes

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 321237 run on x86_64-linux 1

1 package blacklisted:

nixos-install-tools

Can you confirm which formatter you have used? It doesn't match mine here (nixfmt-rfc-style, from unstable).
If you drop the formatting I can merge this.
Or you need to fix the formatting. And do it last.

I'm using: https://marketplace.visualstudio.com/items?itemName=jnoortheen.nix-ide
But will revert for nixfmt-rfc-style

I'm using: https://marketplace.visualstudio.com/items?itemName=jnoortheen.nix-ide

IMO this extension should have nixfmt replaced with nixfmt-rfc-style.

But will revert for nixfmt-rfc-style

nixfmt-rfc-style is currently the official one.
Code-wise your PR is good.

From: https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#commit-conventions

For consistency, there should not be a period at the end of the commit message's summary line (the first line of the commit message).

@superherointj Re-format with nixfmt-rfc-style and amend commit.

Thanks @superherointj for all the hints !

Why was types.str chosen for configuration values which are clearly meant to be integers?
Moreover, adding new options into a freeform type is a breaking change. This should not have been backported.

Why was types.str chosen for configuration values which are clearly meant to be integers?

Agree on that, but the config file require quotes on numbers: http://snapper.io/manpages/snapper-configs.html

Moreover, adding new options into a freeform type is a breaking change. This should not have been backported.

How is it a breaking change ?

Agree on that, but the config file require quotes on numbers

It doesn't, they just quote the example values in the documentation. (Even if they did, we should still allow numeric values and convert them in mkValue for convenience.)

How is it a breaking change ?

By introducing a type check, you are restricting the set of possible allowed values. So if somebody has for example TIMELINE_LIMIT_HOURLY = 5; in their config this used to work but won't anymore.

@Djabx Would you make the asked changes?

How is it a breaking change ?

By introducing a type check, you are restricting the set of possible allowed values. So if somebody has for example TIMELINE_LIMIT_HOURLY = 5; in their config this used to work but won't anymore.

So your scenario is, somebody may have right some values in their configuration nix file, that was completly useless, never written in their /etc/snapper/configs/ and it could create a breaking change ?

@Djabx Would you make the asked changes?

I could...

Thanks for understanding. And I'm sorry for this unfortunate regression event.

but I'm not sure what changes ?

Sure, we should clarify what should be done.

Should we revert from the release-24.05 ?

Since piegamesde requested the revert. It is reverted now.
Let's fix whatever is needed and move forward again.

Allow int values ? Require int values ?

My guess is, piegamesde wants it to be int value, as required, not optionally.

Should I change generate a config file with quotes ?

Seems so.

Should we move to your suggestion @superherointj (cf: https://github.com/NixOS/nixpkgs/pull/321237/files#r1647653048 ) ? I think it would be a greatter breaking change, but maybe for a better good.

Please disregard my initial suggestion.

@Djabx Would you mind adding yourself as a maintainer of this nixos module?

So your scenario is, somebody may have right some values in their configuration nix file, that was completly useless, never written in their /etc/snapper/configs/ and for you it's a breaking change ? That mean that adding any parameter is a breaking change ?

The realm of pragmatism (what is likely to happen) and the possibilities (what can happen) can't reconcile.
Let's agree to disagree on this. And let's just move forward, please.
It's just unfortunate, for everyone here, I know.
Thanks for the understanding of everyone.

@Djabx Would you be interested in being a maintainer of this NixOS module?

Euh... I'm just a snapper user, interested in time backup and struggling with lot of backup not cleanup.
I'm not a nix expert as you may have guess :)

I'm not a nix expert as you may have guess :)

That's a species in extinction, don't let that hold you back.
In practice, you would just be notified of changes to the module.
You can decide to do nothing. Or input something that you know to be right/true.
In case you get something wrong, you learn something new and correct your understandings.
We are all learning.


Image is broken in asset site

Describe the bug
The screenshot of the editor is broken.
To Reproduce
Steps to reproduce the behavior:

Go to https://godotengine.org/asset-library/asset/1048
The image does not work https://raw.githubusercontent.com/rakugoteam/Emojis-For-Godot/main/screenshot.png

Additional context
It would show where to find the EmojiFinder in the toolbar. Without this, it is hard to use the addon effectively.

@noah-art3mis
Sorry, but I had 2 big problems with Godot Asset Lib:

awful long waiting time for acceptance for any change in add-on
I couldn't change my nickname

So I stopped to upload there new versions, here you can download newest version:
https://github.com/rakugoteam/Emojis-For-Godot/releases/tag/1.4
To update go to addons folder in your remove current emojis-for-godot dir.
Then from downloaded zip upack addons/emojis-for-godot dir in to project addons dir.
And also read this repo README to see base info about addon.
After this addon should be in Top Editor Menu as Project -> Tools -> Emoji Finder.
PS.
This bug description doesn't make sense, he guessed you meant that the editor looks broken and you post this screenshot. What you wrote sounds like the editor had a built-in screenshot tool and it would be broken by my addon.
Your link to screenshot dosen't work.


Adding to disable more macros from UE4

Description
We disable more UE4 macros when including files from libcarla, to avoid conflicts of those macros.
Where has this been tested?

Platform(s): Windows 10, Ubuntu 20
Python version(s): -
Unreal Engine version(s): UE 4.26

Possible Drawbacks

This change is

These changes were added in a bigger PR about multi-gpu.


not found tini in docker

i added this snippet of code in my dockerfile
# Add Tini
ENV TINI_VERSION v0.18.0
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /usr/bin/tini
RUN chmod +x /usr/bin/tini
ENTRYPOINT ["/usr/bin/tini", "--"]

but the tini not found in docker
/bin/sh: 1: [/usr/bin/tini,: not found

It looks like your ENTRYPOINT isn't getting properly interpreted. Indeed, you can see that sh is looking for a program called [/usr/bin/tini, (note the leading [ and trailing ,) which is basically ["/usr/bin/tini", interpreted by a shell.
The Dockerfile snippet you provided here does however look correct.
Can you post your full Dockerfile and instructions to reproduce the issue?
Thanks.

hi @krallin, the issue was in my dockerfile
before use ENV which not work (give the error), and now just pass the path string without env
ENTRYPOINT ["/usr/bin/tini", "--", "/path/to/some/bin"]
# Add Tini
ENV TINI_VERSION v0.18.0
BIN_PATH /path/to/some/bin

ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /usr/bin/tini
RUN chmod +x /usr/bin/tini
ENTRYPOINT ["/usr/bin/tini", "--", ${BIN_PATH}]


Feature/pods 1913 remove description embedding from yql

Description
Removes the nearestNeighbor(family_description_embedding,query_embedding) from the YQL query.
Also replaces weakAnd with userInput, as the logic of the former seems to sometimes act like an AND. This meant that in tests the document with no text blocks was not getting returned for any queries, as it always was false for the text_block clause.
UserInput docs for reference. (This should also open us up to "i want to search this exact phrase" queries, which is supported by UserInput, so we'd just need to disable the nearestneighbour YQL clause in this case)
How Has This Been Tested?
Tests still pass as-is. Also tested on staging that results seem sensible using the CLI in the search-tests repo.

I'm a little surprised that there were no tests changes needed. Maybe a new test could be added that would fail, if the intent behind this changeset is broken

@jesse-c let me think about this! The issue seemed to be that description embeddings would basically always return so this seemed to be obscuring the weird property of weakAnd found here. The failure occurs when you remove just the description embedding, but keep the weakAnd clause in.

I'm a little surprised that there were no tests changes needed. Maybe a new test could be added that would fail, if the intent behind this changeset is broken

@jesse-c let me think about this! The issue seemed to be that description embeddings would basically always return so this seemed to be obscuring the weird property of weakAnd found here. The failure occurs when you remove just the description embedding, but keep the weakAnd clause in.

Sounds good—and tbh, this is still hazy in my mind!

@jesse-c it's hazy in everyone's minds: this change to remove description embeddings should make search query behaviour a bit more predictable!

Haha good to hear x 2.


Fixed minor typo in doc

Thank you! Feel free to make corrections anytime you see something wrong!  Hey guys look I fixed a typo. Thanks man I was working real hard pushing these little button on this keyboard. Yep at one point I even got a hang nail but I just pushed through it and never stopped. DOUCHEBAGS!!!!


RaisedButton highlightColor draws above background color

It seems that the current implementation of the RaisedButton makes it impossible for me to use a transparent highlight color for the pressed state. For example:
RaisedButton(child: Text('Raised button'), color: Color(0xFFFF0000), highlightColor: Color(0x33000000), onPressed: () {})
The button is red and the highlight color here is 20% black, but if you press this button, you still see the red color behind. That means I can't have a transparent highlight color because the underlying one will mess it up. This doesn't seem to work as expected for me. Are there any workarounds to this?

This is almost certainly caused byt he same problem in https://github.com/flutter/flutter/issues/48534

Or not.
I'm not really sure what the bug is here. What do you expect to happen when the highlight color is (semi-)transparent?
Why wouldn't the color of the button show through in such a case?

I expect to see the button background through. Imagine this button was on top of an image. If I press the button, I want to see the background image behind the button. The red color should be gone completely when I press.
Red is the color of the button in the default state. If I press it, why do I still see the default color behind? The button is mixing both colors for some reason.
My expectation is that when I press it should be color of the pressed/highlighted state only. The default one should go away completely.
With the current implementation of the RaisedButton it seems impossible to achieve the effect I want. My spec says the color of the button in the pressed state should be 20% gray which is not feasible because it will be mixed with the red color when I press.
Please let me know if this is still not clear.

Perhaps I'm just missing something, but you're setting the button color to red - and then you're setting the highlight color to semi-transparent black.
And it sounds like you're surprised that you're still seeing red through the semi-transparent highlight color.  So we're drawing the highlight when you press, but it's transparent, so you can still see the color behind it.  This all sounds like it's WAI to me.
Can you share the example of an image where this isn't working out?

@saprvade why don't you just set a boolean which checks if the button is actively beeing pressed. If true, the default button color will be transparent.  By the way, you can also use FlatButton

@dnfield try the button from my example and put it on top of an image. When you press it you will see dimmed solid red, instead of an image. I want to see image when I press. Sorry I can't provide an example now because this bug has been filed a year ago and I'm no longer working on this :)
@Ahmadre does that actually work, setting the default color to transparent while pressed? I think I had some issues that it didn't redraw or something like that. Can't tell for sure it was a long time ago.. If you can try this workaround and it works for you then I guess we can close this.
Thanks!

Code Sample
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.spaceAround,
          children: [
            RaisedButton(
              child: Text('Raised button'),
              color: Colors.yellow,
              highlightColor: Colors.purple,
              onPressed: () {},
            ),
            RaisedButton(
                child: Text('Raised button'),
                color: Color(0xFFFF0000),
                highlightColor: Color(0x33000000),
                onPressed: () {})
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        child: Icon(Icons.add),
        onPressed: () {},
      ),
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel dev, 1.20.0-7.1.pre, on Mac OS X 10.15.6 19G73, locale
    en-GB)
    • Flutter version 1.20.0-7.1.pre at /Users/taha/Code/flutter_dev
    • Framework revision 7736f3bc90 (6 days ago), 2020-07-10 16:33:05 -0700
    • Engine revision d48085141c
    • Dart version 2.9.0 (build 2.9.0-21.2.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version
    30.0.0)
    • Android SDK at /Users/taha/Code/sdk
    • Platform android-30, build-tools 30.0.0
    • ANDROID_HOME = /Users/taha/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google
      Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.47.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.2

[✓] Connected device (5 available)
    • SM M305F (mobile)      • 32003c30dc19668f          • android-arm64  •
      Android 10 (API 29)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            •
      iOS 13.6
    • macOS (desktop)        • macos                     • darwin-x64     •
      Mac OS X 10.15.6 19G73
    • Web Server (web)       • web-server                • web-javascript •
      Flutter Tools
    • Chrome (web)           • chrome                    • web-javascript •
      Google Chrome 83.0.4103.116

• No issues found!

RaisedButton has been removed from the framework now, and has been been replaced by ElevatedButton. Does this issue still persist in the new API? highlightColor is no longer part of the Material Design spec, and so it dow not exist as part of the ElevatedButton ButtonStyle.


Indicator support for renko bars

Addresses #331
Added a common base class called VolumeBar for both TradeBar and RenkoBar so that all indicators previously designed for TradeBar are now available for RenkoBar.
All tests apart from the IchimokuKinkoHyoTests are passing for me and those also fail on a clean checkout of the QuantConnect master source. I think these failures are related to my development environment not the changes.

Looking at the size of this change and it's potential to break user code scares me :/  I think a safer implementation would be to add a long Volume { get; set; } to the IBar interface and have RenkoBar implement IBar.  We may need to make considerations for QuoteBar and the Bar implementation and what volume means in those cases.  Maybe a more generic term than volume can be used.
Also, it looks like the travis-ci build is failing for this PR.

I looked into the build breakage at the time and it's very strange. It's failing to compile with some of the overloaded RegsiterIndicator methods on QCAlgorithim. My local environment is running VS2013 on .NET 4.5 and it compiles with all tests passing. From the build logs it looks like the CI is using mono to compile and my best guess is that it has some issues with that overload case. I don't have access to a mono environment to test it out I'm afraid.
Not sure if you saw my last comment on #331, but the TL;DR version is that an interface won't work here because IndicatorBase<T> expects a concrete BaseData instance as it's type parameter and changing that to IBaseData so IBar : IBaseData (required as an interface can't inherit from a class) is an ever bigger change.
The other approach of:
public class BarIndicator<T> : IndicatorBase<T>
   where T : BaseData, IBar, new()

Would need two definitions of every indicator one ExampleIndicatorRenko : BarIndicator<RenkoBar> and one ExampleIndicatorTradeBar : BarIndicator<TradeBar>. I guess it would be possible to to put the indicator logic into an abstract base class and have the two above inherit from it while keeping the derived TradeBar version with the same signature to maintain compatibility but having to define everything twice and reference the Renko indicator by another class seems less than ideal. If that is acceptable though I can look into doing it.
Otherwise I'm out of ideas for this one, can't see another way with the current architecture for doing this. Might have to revert back to my original hack of putting an implicit conversion on RenkoBar -> TradeBar in my local codebase and accept the slight performance and memory hit.


syn2mas: 0.10.0 -> 0.11.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/matrix-org/matrix-authentication-service/releases.
meta.description for syn2mas is: Tool to help with the migration of a Matrix Synapse installation to the Matrix Authentication Service
meta.homepage for syn2mas is: https://github.com/matrix-org/matrix-authentication-service/tree/main/tools/syn2mas
Updates performed

NPM version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.11.0 with grep in /nix/store/8sg3qkzphywy6xb0x6064sk2wk33pm3r-syn2mas-0.11.0
found 0.11.0 in filename of file in /nix/store/8sg3qkzphywy6xb0x6064sk2wk33pm3r-syn2mas-0.11.0

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

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

syn2mas

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/8sg3qkzphywy6xb0x6064sk2wk33pm3r-syn2mas-0.11.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The 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 syn2mas https://github.com/r-ryantm/nixpkgs/archive/b30cbee528956f25fedd7e3714ef9e41ac0d860b.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/b30cbee528956f25fedd7e3714ef9e41ac0d860b#syn2mas

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/8sg3qkzphywy6xb0x6064sk2wk33pm3r-syn2mas-0.11.0
ls -la /nix/store/8sg3qkzphywy6xb0x6064sk2wk33pm3r-syn2mas-0.11.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 run on x86_64-linux 1

1 package built:

syn2mas

Maintainer pings
cc @teutat3s for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

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

Upstream should be changed to https://github.com/element-hq/matrix-authentication-service


Backup Checks not ignoring Non-Accessible DB's

When running the latests Backups checks, we get a lot of errors and warning for DB's that are in a AG or non-accessible. If a DB is not the primary and is not accessible (Non-readable) can it be skipped. In this case, we use the secondary DB's as a warm standby for DR only.

I am seeing this same issue.  If the Availability Group is configured with ALLOW_CONNECTIONS = NO a bunch of the checks fail since it doesn't look like they first check to see if the database is in an Availability Group and/or check if the Availability Group is set to ALLOW_CONNECTIONS = YES.
Once that is out of the way the backup checks also don't take the backup preference into account when checking if there is a recent backup.  For example, if you backup preference is set to primary only then you would expect the databases on the secondary replicas to not have a recent backup.

I dont have any currently testable AGs - Anyone got an update on the current status of this?


Update dependencies

Fixes #1838

Coverage remained the same at 100.0% when pulling b933237f2af159bb429a81e2e6de0ec55dcf8c44 on stephenplusplus:spp--1838 into 61b04a1ea22e961a8822337708e2880c0402c2fe on GoogleCloudPlatform:master.

Coverage remained the same at 100.0% when pulling b933237f2af159bb429a81e2e6de0ec55dcf8c44 on stephenplusplus:spp--1838 into 61b04a1ea22e961a8822337708e2880c0402c2fe on GoogleCloudPlatform:master.


figure out user flow (i.e what they see before/after login etc)

am just going to use the basic login modal for now or login page like raw shadcn this is so unimportant just need it functional like you had it
@JeredSpears


seashells: init at 0.1.2

Description of changes
Add seashells python application, the official client for seashells.io ( https://seashells.io/ / https://github.com/anishathalye/seashells). "Seashells lets you pipe output from command-line programs to the web in real-time".
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

@ofborg eval

@cole-h I'm assuming this is my fault, since nixpkgs-review fails for me (but nix-build is okay). I have some ideas for what to try, but haven't had chance yet.

Actually, no! At least, the label is not your fault. ofborg-internal-error is only when the ofborg<->GitHub API communication fails for any reason.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/1559


Correct CONTRIBUTING.md on how to import the iaf in Eclipse

I have found a way to use Eclipse for importing the IAF repository. I will make a new pull request for that.


Updated providers to HTTPS and removed some dead providers.

@fyhring thank you.

No problem. Thanks for the quick merge.


Add demo for scrollable slides

The scrollable slides demo seems to be broken on my Nexus 6P 6.0.1


Either action

Created an action that allows screenplay pattern to utilize the try/except behavior of python

Ugg.. I ran into a case that is causing me to change my mind about how the perform_as works in Either
The action double checks if the side menu is expanded or collapsed.
class EnsureSideNavExpanded(Performable):
    def perform_as(self, actor: Actor):
        actor.will(
            TryTo(Eventually(See(SideNavExpanded(), IsEqualTo(True)))).otherwise(
                Click(TOP_NAV_COLLAPSE_SIDE_NAV)
            )
        )

The problem I ran into: the condition being looked for in SideNavExpanded didn't match any expected value, as a tester I needed insight into what was being returned.   Since the cable is being kinked and all of the results of the first action didn't get logged I had no idea why it failed, only that it did.


tough-cookie deprecated

Expected behaviour
Update legacy package
Actual behaviour

Environment Details

Karma version 2.0.2:
https://github.com/isopen/soc/tree/master/frontend

npm install
npm start
npm audit

Steps to reproduce the behaviour
https://github.com/isopen/soc/tree/master/frontend
npm install
npm start
npm audit

Sorry, but I deleted karma. Too many obsolete dependencies.
https://github.com/isopen/soc/commit/29add2a4f3af83a3c6740a57385524798f47cf27
I hope that in the future I will be able to easily recover karma with updated packages.
Thanks


reward for code review only if the pull is already merged

@rultor release, tag is 0.0.15

@rultor release, tag is 0.0.15

@yegor256 OK, I will release it now. Please check the progress here

@rultor release, tag is 0.0.15

@yegor256 Done! FYI, the full log is here (took me 7min)


Refresh frequency for DirectLineClient

Hi Team,
I notice that in the web chat bot client the refresh frequency by which we are polling the bot is around 500mS. Using the DirectLineClient the same referesh occurs at around 5 seconds. Is there somewhere we can control the frequency at which the DirectLineClient polls the bot for responses? DirectLineClient is a part of the using Microsoft.Bot.Connector.DirectLine Namespace.
Thanks

Hi @Sams4u, there's no polling loop built in to the DirectLineClient. You control the interval in your code.

May i know where can i set that. Below is the lines of code i am using. Please suggest
Message message = new Message(conversationId: conversationID, text: messageLocal);
            message.FromProperty = "xyz";
            convs.PostMessage(conversationID, message);
            response = convs.GetMessages(conversationID, waterMark);

You must put your GetMessages call in a loop. Take a look at the "ReadBotMessagesAsync" method here: https://github.com/Microsoft/BotBuilder-Samples/blob/master/CSharp/core-DirectLine/DirectLineClient/Program.cs

Inside the chat window if  we got to Developer tools and do a network trace we can see a HTTP call been made almost every 6 sec which i believe a signal R cal [screenshot attached]. Can you tell the purpose of it.

I understand the Asynchronous calls with loop you referring to. But here my problem is since its a webform based client application however frequently i make the calls, response cant be updated to the chat UI unless  initiated by user event. So once user clicks the send button, call comes to the server and it process the result and send the response back. But if any response comes few seconds after it wont be send to the page asynchronously. So real time communication is not happening. Any suggestion?

Hi @Sams4u, you would need to change your application so the browser can receive updates from the server. A simple webform application is typically not capable of asynchronous chat, no matter what protocol it is using.


epic: esl-sortable

In the scope of this PR I added sortable component also known as drag and drop list.
Sortable list can be vertical or horizontal, can have have different drag transitions and it has attribute to change transition duration. Elements can be dragged from one sortable with same "group" atrribute to another.

@fshovchko, draft looks really cool!
Let's discuss details, questions, updates and final API this week 👍🏻


Cow: Watch hurricanewindow.com

Cow requests the watch of the watch_keyword hurricanewindow\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

hurricanewindow\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


feat: add docker compose

Add docker-compose.yml file for users to one-click run Reth + Lighthouse
Comes with Grafana/Prometheus dashboard for both Reth and Lighthouse; accessible at <IP_ADDRESS>:3000
Code adapted from: https://github.com/paradigmxyz/local_reth

Updates:

Added docker-compose.yml to root directory
Added prometheus directory (which contains prometheus job configs) to root directory
Added grafana directory (which contains dashboard and grafana configs) to root directory
Added brief description on how to run the docker compose file to the README.md

Hi, I appreciate your contribution here, but I am going to close it in favor of #3946 because it is closer to what I was envisioning already; it re-uses existing files to the maximal extent, reducing maintenance overhead.
If you have ideas for improvements on top of that PR, I encourage you to submit some. I would like to keep the maintenance overhead on Docker/Grafana/Prometheus-related stuff to a minimum, though. More advanced setups should probably live elsewhere since the optimal setup is highly subjective, and what we want in this repo is just a minimal working example that is 1) easy to maintain and 2) a good springboard for your own setup

Hi, I appreciate your contribution here, but I am going to close it in favor of #3946 because it is closer to what I was envisioning already; it re-uses existing files to the maximal extent, reducing maintenance overhead.
If you have ideas for improvements on top of that PR, I encourage you to submit some. I would like to keep the maintenance overhead on Docker/Grafana/Prometheus-related stuff to a minimum, though. More advanced setups should probably live elsewhere since the optimal setup is highly subjective, and what we want in this repo is just a minimal working example that is 1) easy to maintain and 2) a good springboard for your own setup

All good! Totally agree with everything you said 😊.  The code will still be available for anyone here https://github.com/gibz104/local_reth.  If you'd like to take anything from it, feel free.


Proposal: Testing consistency group based replication and DR protection

We will create a StatefulSet, where the pod with index 0 would log, to disk, counter values issued to other replicas. These counter values are persisted on disk by the non-0 index replicas and acknowledged back to the log pod. On acknowledgement from the replica the log pod will update the replicas persisted counter value on disk.
All PVCs of this STS would be DR protected using a consistency group.
How does this test CGs:

Log pod if snapshotted and replicated at a different time than each replica, may contain a stale issued or persisted counter than the replica itself

Say a snapshot of log PVC was replicated earlier and was able to issue a future counter value to replicas, one or more replicas may persist this and be snapshotted and replicated later, the log data hence will not tally with the replica data
Or, a snapshot of the log pod was replicated later, then again log pod values may be ahead of replica values as these are snapshotted earlier and replicated

Log pod (replica 0)

Algo:

For each replica do forever:

Generate a new "issued" counter and commit it to log
Issue a write to the replica with the counter logged
Receive an ack from the replica that it wrote the counter, and update it's "persisted" value

disk format/file:
<log.yaml>

persisted:
  - replica: <m>
    counter: <n>
  - ...
issued:
  - replica: <m>
    counter: <n>
  - ...

Replica pod (replica 1..M)

Algo:

Receive "counter" value from log pod
Write value to disk and persist it
Respond to log pod with written counter

disk format/file
<counter.yaml>

counter: <n>

Log pod Init container:

Read log.yaml
Check with each replica if stored counter is either of issued or persisted; consistency error if neither
Update persisted if issued != persisted; as an issued counter value may have been persisted

Replica pod Init container:

Read counter.yaml
Respond to log request on currently persisted counter; error if persisted != [issued|persisted] from request

k8s workload type:

Run the above as a StatefulSet
STS with index 0 acts as the log
Other STS pods act as replicas
Replica count passed is same as STS # of replicas

NOTE: Allow for expand/contract of STS and hence replica counts

Tests:

For DR, failover the STS in a loop and ensure STS health post failover
For Backup, create STS with PVC clones from the VolumeGroupSnapshot and ensure STS reports no errors on using these cloned PVCs

@batrick and @idryomov would like your opinion on the above proposal to test a consistent group snapshot. Also, if there are existing tests in Ceph that can serve as an example, would help developing around the same.
(also tagging @BenamarMk @youhangwang @ELENAGER @keslerzhu for inputs)

@ShyamsundarR A simple application could be a pod in deployment attach multiple PVCs. All these PVCs will be DR protected using a consistency group.
this application keeps to append the latest date into these volumes, for example
echo "$(date) $1" | tee -a /var/pvc1/ramencg.log /var/pvc2/ramencg.log /var/pvc3/ramen.log /var/pvcn/ramencg.log

there are some scenarios for the file in remote(secondary cluster) in the test:

All Files have the same content: If the snapshot is taken after being attached to all PVCs on the latest date, all files should have the same content.
Some Files have n lines, Others have n-1 lines: if the snapshot take just during the append, then some files could have the latest date(file has n lines), others could not have(file has n-1 lines).
Otherwise, the cg test will be failed. which means the snapshot of different pvcs were taken in different time.

does this meet our test requirement?

@batrick and @idryomov would like your opinion on the above proposal to test a consistent group snapshot.

This looks good to me!  For testing the test itself, I could provide a rigged RBD build with the consistency logic inside of rbd group snap create command/API disabled.

Also, if there are existing tests in Ceph that can serve as an example, would help developing around the same.

I'm not aware of anything like this on the RBD side.

All PVCs are mounted to a single node, so the Ceph kernel drivers that would ensure the CG on the client side are not distributed.

@ShyamsundarR I'm not sure I understand this comment.  Can you elaborate or perhaps just rephrase?
The distributed lock that is part of the consistency logic is per-image, so even if everything is on single node, it still plays a role.

All PVCs are mounted to a single node, so the Ceph kernel drivers that would ensure the CG on the client side are not distributed.

@ShyamsundarR I'm not sure I understand this comment. Can you elaborate or perhaps just rephrase?
The distributed lock that is part of the consistency logic is per-image, so even if everything is on single node, it still plays a role.

Ack understood. I would still like to develop a cross node RBD images (or CephFS subdir) use and test for systems where we can have more than one worker node.


[docs] Improve naming and structure of the Customization and Guide pages

Applies the following recommendations around the docs:

Rename "Guide" to "How to guide"
Move the content of Global CSS override to "How to customize".
move "Default theme" under the Theme section.

Proposed in https://github.com/mui-org/material-ui/pull/24016#issuecomment-748062813

Should we add this diff?
diff --git a/docs/public/_redirects b/docs/public/_redirects
index 0a02fb2e2b..0a912132a4 100644
--- a/docs/public/_redirects
+++ b/docs/public/_redirects
@@ -136,6 +136,7 @@ https://v3-9-0.material-ui.com/* https://v3.material-ui.com/:splat 301!
 /api/grid-list-tile-bar/ /api/image-list-item-bar/ 301
 /customization/components/ /customization/how-to-customize/ 301
 /customization/globals/ /customization/theme-components/ 301
+/customization/theme-components/#global-css-override /customization/how-to-customize/#global-css-override 301

 # Proxies

Or maybe even
diff --git a/docs/public/_redirects b/docs/public/_redirects
index 0a02fb2e2b..0a912132a4 100644
--- a/docs/public/_redirects
+++ b/docs/public/_redirects
@@ -136,6 +136,7 @@ https://v3-9-0.material-ui.com/* https://v3.material-ui.com/:splat 301!
 /api/grid-list-tile-bar/ /api/image-list-item-bar/ 301
 /customization/components/ /customization/how-to-customize/ 301
 /customization/globals/ /customization/theme-components/ 301
+/customization/globals/#global-css-override /customization/how-to-customize/#global-css-override 301
+/customization/theme-components/#global-css-override /customization/how-to-customize/#global-css-override 301

 # Proxies

@mnajdova fragment identifiers are never sent to the server.

@mnajdova fragment identifiers are never sent to the server so I don't think that it will have any impact.

Yeah, was thinking the same thing, but wanted to double-check 👍


Euchre: Avoid bidding alone near end-of-game

This is good feedback but should probably only apply to games without call-for-best enabled (as calling for a card can increase chances of success over keeping your partner in). The bot should also continue to bid aggressively in situations where the final score is used for comparisons (e.g. Club Events and Daily Challenges).

In Euchre, when a team is sitting on 8 or 9 the bots will often unnecessarily go alone. I consider it a violation of etiquette when all you need is 1 or 2 points to win the game. If you need 2 to win you should always take your partner with you. I recently had a bot partner go alone with 8 points and failed to make it when I had the needed card to take all the tricks. Please stop the bots from going alone with 8 or 9 points. Should only go alone with 7 or less points. Always.

Train the bots to not go alone on 10! Bad etiquette in Euchre.


Raised exception after dragging the slider backwards

Describe the bug
Kooha-2023-11-06-19-40-20.webm
I found that exception only occurs when I drag the slider backwards.
When the slider starts at 8 (the right end), the same error will occur when I drag it back, towards right.
Version
0.1.43
Code to reproduce
the same plot.py
import marimo

__generated_with = "0.1.43"
app = marimo.App()

@app.cell
def __(exp):
    exp
    return

@app.cell
def __(altp, exp, mo, mplplot, plotlyplot, snsplot):
    mo.vstack(
        [
            mo.md(f"$$y=x^{exp.value}$$"),
            mo.tabs(
                {
                    "altair": mo.vstack([altp, altp.value]),
                    "plotly": plotlyplot(exp.value),
                    "seaborn": snsplot(exp.value),
                    "matplotlib": mplplot(exp.value),
                }
            ),
        ]
    )
    return

@app.cell
def __():
    import marimo as mo
    from plotly import express as px
    import altair as alt
    import numpy as np
    import pandas as pd
    import seaborn as sns
    from matplotlib import pyplot as plt
    from functools import cache
    return alt, cache, mo, np, pd, plt, px, sns

@app.cell
def __(mo):
    exp = mo.ui.slider(1, 8, 1, label="exp: ",value=8)
    return exp,

@app.cell
def __(cache, np):
    @cache
    def prep_xy(exp):
        x = np.linspace(0, 5, 100)
        return x, x**exp
    return prep_xy,

@app.cell
def __(alt, cache, mo, pd, prep_xy):
    @cache
    def altplot(exp):
        x, y = prep_xy(exp)
        data = pd.DataFrame({"x": x, "y": y})
        return mo.ui.altair_chart(
            alt.Chart(data).mark_line().encode(x="x", y="y"),
            chart_selection="interval",
        )
    return altplot,

@app.cell
def __(cache, prep_xy, px):
    @cache
    def plotlyplot(exp):
        x, y = prep_xy(exp)
        return px.line(x=x, y=y)
    return plotlyplot,

@app.cell
def __(cache, prep_xy, sns):
    @cache
    def snsplot(exp):
        x, y = prep_xy(exp)
        return sns.lineplot(x=x, y=y)
    return snsplot,

@app.cell
def __(cache, mo, plt, prep_xy):
    @cache
    def mplplot(exp):
        x, y = prep_xy(exp)
        plt.plot(x, y)
        return mo.mpl.interactive(plt.gcf())
    return mplplot,

@app.cell
def __(altplot, exp):
    altp = altplot(exp.value)
    return altp,

if __name__ == "__main__":
    app.run()

Oops — looks like some kind of race in the backend. We fixed one related bug but maybe introduced another. Will take a look. Thank you!

@proItheus, thanks so much for raising this issue. Version 0.1.45 was just released with a fix.


Show s3 logs

Logs on dev and prod are now all available on S3 and should display just as before with these changes.
Now live on staging:
https://staging.swiftpackageindex.com/builds/765B4D30-471A-4B41-AC9D-EAD5AC4521F9

Excellent - I'll merge and deploy and follow up with the clean up steps.