Python 2.6 is being abandoned

Python 2.6 support is being dropped from openstack. As of Juno, openstack requires python 2.7. We're still trying to support Icehouse, which could optionally run with 2.6.
The first problem we've encountered is a dictionary comprehension is oslo messaging, which causes our py26 tests to fail. Oslo messaging is no longer tested against python 2.6. https://github.com/openstack/oslo.messaging/commit/2734fc8f505ca07ff1a4f4a420807e5c1b4ed812
We need to set upper bounds on the requirements.txt and testrequirements.txt for python 2.6. We can change the requirements for py26 tests in tox.ini. I don't know how we can change the requirements for the library for python 2.6,

The oslo messaging issue is resolved for now; the dictionary comprehension was removed in this revert: https://github.com/openstack/oslo.messaging/commit/468437454f16083dbd43eb6fd6daf6a3c98c15e0

This is a non issue ... for now.

And it's back
  File "/home/travis/build/a10networks/a10-neutron-lbaas/.tox/py26/lib/python2.6/site-packages/oslo_messaging/server.py", line 214
    self._states = {task: _OrderedTask(task) for task in self._tasks}
                                               ^
SyntaxError: invalid syntax

As we no longer support py26 as a testing target, I see no reason to keep this open.  Closing.


aggregated_by/collapsed inconsistency for integer points

🐛 Bug Report

Following on from #4315, #1528.  When handling integer coordinates, collapsed and aggregated_by produce inconsistent points.
How To Reproduce
Minimal example:
import iris
import iris.cube
import iris.coords

import numpy as np

N = 6
cube = iris.cube.Cube(range(N), long_name="foo")
dim_coord = iris.coords.DimCoord(range(N), long_name="bar")
aux_coord = iris.coords.AuxCoord(np.arange(N) // 2, long_name="baz")

cube.add_dim_coord(dim_coord, 0)
cube.add_aux_coord(aux_coord, 0)

print(cube.aggregated_by("baz", iris.analysis.MEAN).coord("bar"))

# Emulate aggregated_by procedure with extract and collapsed.
for baz_val in np.unique(aux_coord.points):
    constraint = iris.Constraint(baz=baz_val)
    sub_cube = cube.extract(constraint)
    mean = sub_cube.collapsed("bar", iris.analysis.MEAN)
    print(mean.coord("bar"))

"bar" coord after aggregated_by:
DimCoord(array([0.5, 2.5, 4.5]), bounds=array([[0, 1],
       [2, 3],
       [4, 5]]), standard_name=None, units=Unit('unknown'), long_name='bar')

"bar" coords after extract and collapse:
DimCoord(array([0]), bounds=array([[0, 1]]), standard_name=None, units=Unit('unknown'), long_name='bar')
DimCoord(array([2]), bounds=array([[2, 3]]), standard_name=None, units=Unit('unknown'), long_name='bar')
DimCoord(array([4]), bounds=array([[4, 5]]), standard_name=None, units=Unit('unknown'), long_name='bar')

Expected behaviour

The output points should either be 0, 2, 4 in both cases, or 0.5, 2.5, 4.5 in both cases.  Note that @pp-mo at #1528 expected integer output points.
Environment

Iris Version: 3.2.dev0

We cannot do anything about this until next major release.  Perhaps we should have the stalebot ignore issues with that label?

We cannot do anything about this until next major release. Perhaps we should have the stalebot ignore issues with that label?

#5559


Multi-order coverage MOC HEALPIX

It would be nice to have Multi-order coverage (MOC) in this astropy.regions package (which is supposed to go in the Astropy core package in a few month).
http://ivoa.net/documents/MOC/ describes it like this:

This document describes the Multi-Order Coverage map method (MOC) to specify arbitrary sky regions. The goal is to be able to provide a very fast comparison mechanism between coverage maps. The mechanism is based on the HEALPix sky tessellation algorithm. It is essentially a simple way to map regions of the sky into hierarchically grouped predefined cells.

There's two Python package for MOC:

pymoc by @grahambell - Github, Readthedocs, PyPI
mocpy by @tboch - Github, example notebooks, PyPI

@grahambell @tboch - Are there big differences in design or philosophy between the two Python packages? Or does collaboration / merging of efforts seem possible? Are you interested to collaborate in that direction?
If there is interest in making this happen, one issue to watch out for is license. Both pymoc and mocpy are currently implemented using healpy, which uses HEALPIX and is GPL licensed, not compatible with the BSD license Astropy core and most other packages use.
There is talk of having a subset of HEALPIX re-implemented in BSD and use that, starting with the BSD-licensed HEALPIX code e.g. here or here and here.
I think having such basic HEALPIX functionality in Astropy core and using it for MOC and other applications would be nice.

@astropy/regions-developers - Agreed that MOC would be in scope and nice to have for astropy.regions
@grahambell @tboch - Do you support this? Or would you prefer your Python MOC packages stay as-is (not integrated in Astropy, GPL licensed)?
Anyone besides me have time / interest to work in this in the coming weeks or months?

Hi @cdeil
I just discovered this thread.
CDS and I are very much in favour of integrating MOC support into Astropy regions.  (with a BSD license)
So, yes, I would be interested to collaborate on this, and perhaps also on the reimplementation of HEALPix functions.

I've talked with @tboch a bit about this on email today, and we both think (and are willing to put some work into) a BSD-licensed healpix Python package and then use it here in regions for MOC and in other packages (e.g. Gammapy, see here).
As discussed before, the best starting point seems to write a wrapper on the C healpix package by @dstndstn in astrometry.net (see e.g. https://github.com/dstndstn/astrometry.net/blob/master/include/astrometry/healpix.h) that's BSD license, so appropriate for use in Astropy.
@dstndstn @astrofrog and all -- do you have thoughts preferences on how to best do this?

@dstndstn - Is it obvious which files to extract from astrometry.net or is it a ton of files and complicated because there's many includes?
Cython wrapper with healpy-compatible API OK? I don't have much Cython experience, but I'd like to try this. Of course, other proposals to wrap differently or move some code to Python / Numpy are welcome.
Do it in this repo and expose it for now as regions.healpix or start a new one?
Does anyone have a need (and is willing to put some effort into) a standalone C package, i.e. a C build system (Makefile, autotools, whatever you like) that are separate from the setup.py based build?

I would say keep it in a separate repo. If anyone does have the time to maintain a C package/library, that would be ideal, but if not then having a Python package is fine (and maybe later the C can be split out if it seems it would be popular enough)

I have pythonic swig wrappers on some of my healpix routines.
It should be fairly clean to pull out the healpix routines -- the functions
are in -- util/healpix.c, util/healpix-utils.c, and they include a few
others modules.  Only unusual thing is "os-features", which handles a
couple of functions that are handled differently in different OSes.  I bet
it could be removed, and I'd be willing to do that work.
cheers,
--dustin
On Thu, Sep 1, 2016 at 2:05 PM, Thomas Robitaille<EMAIL_ADDRESS>wrote:

I would say keep it in a separate repo. If anyone does have the time to
maintain a C package/library, that would be ideal, but if not then having a
Python package is fine (and maybe later the C can be split out if it seems
it would be popular enough)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/astropy/regions/issues/62#issuecomment-244212353, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABBD_cv9bdRu4d7bTEQSPZJwOY7jYJKvks5qlz4ugaJpZM4JV7Fi
.

I took a quick stab at extracting it into a C lib:
https://github.com/cdeil/healpix-temp
After I added os-features.h it's asking for os-features-config.h, which I can't find in the astrometry.net repo (maybe auto-generated?).
@dstndstn - Yes, if you could remove the dependency on os-features, that would be very helpful.
Also - do your SWIG Python wrappers provide a Python API that can take Numpy arrays as input / output like healpy does? Even if yes, do you think they should be kept or would replacing them with Cython be OK?
I'm asking because Astropy and the affiliated packages use Cython a lot, but no-where SWIG (as far as I know). So for maintenance / distribution for us Cython would be easier.

Hi,
Yes, os-features-config.h is auto-generated (by the Makefile).  I can take
a shot at removing that dependency when I'm back from my long weekend away.
The swig wrappers I have are pretty simple and do not support numpy arrays;
cython would be fine.
Would you like me to send a PR to that healpix-temp repo, if you've already
started extracting code?
cheers,
--dustin
On Thu, Sep 1, 2016 at 11:50 PM, Christoph Deil<EMAIL_ADDRESS>wrote:

I took a quick stab at extracting it into a C lib:
https://github.com/cdeil/healpix-temp
After I added os-features.h it's asking for os-features-config.h, which I
can't find in the astrometry.net repo (maybe auto-generated?).
@dstndstn https://github.com/dstndstn - Yes, if you could remove the
dependency on os-features, that would be very helpful.
Also - do your SWIG Python wrappers provide a Python API that can take
Numpy arrays as input / output like healpy does? Even if yes, do you think
they should be kept or would replacing them with Cython be OK?
I'm asking because Astropy and the affiliated packages use Cython a lot,
but no-where SWIG (as far as I know). So for maintenance / distribution for
us Cython would be easier.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/astropy/regions/issues/62#issuecomment-244297115, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABBD_famPk6iSl8g_WsWcefuK6YzzgAKks5ql8c0gaJpZM4JV7Fi
.

@dstndstn - Sounds great, thanks!
Actually, if you could put the files in a sub-folder in this repo that would be best:
https://github.com/cdeil/healpix
I've already set up travis-ci there and that's the one we'll use for the near future and then the commit history will reflect that this is your code.
I'll give you and @tboch write access to that repo now, and tomorrow update the README there to reflect the new plan (Cython wrapper around your code).

I've now put together the initial version of the package:
https://github.com/cdeil/healpix
There's a few setup issues with Cython and Sphinx that need to be sorted out:
https://github.com/cdeil/healpix/issues
Help with those is very welcome!
@dstndstn @tboch - Let's continue the discussions on HEALPix there for a while until the basic functionality is in place, and then continue in this issue to discuss MOC.

Status update: @dstndstn added the astrometry.net HEALPIX C library code in
https://github.com/cdeil/healpix/pull/6
At the moment it's here, can be compiled with make and C tests run:
https://github.com/cdeil/healpix/tree/master/astrometry.net
Next steps are to build from setup.py, then wrap with Cython, add tests.

This is now pretty far along: http://astropy-healpix.readthedocs.io/
@tboch - If you're up for it, we could make the switch soon?
I had a look, the only functionality that's missing is that you're calling healpy.mollview and healpy.graticule in MOC.plot. @astrofrog - Are there any plans to add HEALPix visualisation helper functions or classes to astropy-healpix? Or maybe consider adding those two to the astropy_healpix.healpy compat interface?
Before we do though: it would be really helpful to add a few tests for the main functionality in mocpy. I started in https://github.com/cds-astro/mocpy/pull/6 but I'm not very familiar with MOC. @tboch - maybe you could add some tests to mocpy?
Also: @tboch - Are there any performance concerns? This is what we have at the moment: http://astropy-healpix.readthedocs.io/en/latest/performance.html
Is this good enough for mocpy? If not - can you share a test case or two that are currently too slow?

I haven't used healpy.mollview or healpy.graticule, so I don't have a good sense for how much work they would be to implement. Can you show an example of output of these functions?

@cdeil : healpy.mollview and healpy.graticule would be nice to have, but it's not at the core of MOCPy features.
I'll make some performance tests with astropy-healpix and will let you know the results.
And yes, I'll add tests.

Related to #554
It's the other way for now, you can create a MOC from an an object from this package.


feature request: support for pasting deleted file that still exist in a register.

Did you check existing requests?

[x] I have searched the existing issues

Describe the feature
Often the following occurs when I work with oil, as can be seen in the video:
https://github.com/stevearc/oil.nvim/assets/62509788/ceecbebf-4eae-4635-a77e-1c875bcba221
The follow happend:

Run nvim with a minimal config.
I delete a file called foo.txt to a register.
I create a directory foo.
I try to paste the foo.txt into the new directory.
This fails, as foo.txt does not exist anymore.

This happens often to me. So I can either try to avoid this pattern, or support for pasting files that are deleted to a register could be added.
Provide background
No response
What is the significance of this feature?
strongly desired
Additional details
No response

I've thought about this feature, and it would be really cool (allowing for seamless undo/redo in oil), but is incredibly difficult to do correctly. I haven't had the time to invest in this, and realistically probably won't.
For your particular use case, what may help is knowing that you can enter a directory before it is created. For example, you are doing:

delete file
create directory
save
enter directory
paste
save (error)

Instead you can do

delete file
create directory
enter directory
paste
save

Thanks for your reply. I can imagine it is not easy to implement.
I thought maybe files that still exist in one of the registries will not be removed, instead they are written to some kind of trash folder. From here,  oil can retrieve them once the user tries to paste+save a delete file from the registry.
Most likely there are some caveats that I am missing here.


FlightRadar API Key

It looks like FlightRadar doesn't support an API key
Flightradar24 does not currently offer an API data service, however we aim to release this product towards the end of 2023. For more information about customised live flight data feeds and historic data sets, please contact our Commercial Services team.
https://www.flightradar24.com/premium/

Am I missing something here?

The message is correct. They doesn't support API key because they don't have an official API for users yet. What is the problem?

ah sorry. I was under the impression the FlightRadar24API object took a API key.


New emoji option breaks rendering of colorcolumn

With set emoji:

With set noemoji:

This is in latest iTerm 2 (2.9.20160206) on El Capitan.

I don't see the behavior.
http://go-gyazo.appspot.com/8ff36abf2e08281f.png
did you set following?

Turning that on breaks airline regardless of whether emoji is set but does almost fix things.
With "ambiguous as double width" and emoji:

With "ambiguous as double width" and noemoji:

Could you please show me the file?

yes; here's the raw file :)

Thanks. ✅ should be double width. but it've changed to narrow.
https://groups.google.com/forum/#!searchin/vim_dev/emoji|sort:date/vim_dev/0y1ThP9Gj1Y/zsh6_LQfGwAJ

Note the unicode arrow character at the bottom that has an incorrect width as well

what value of unicode code point?  → (\u2192)?

and do you set ambiwidth=double? or single?

Yes, it's \u2192; my ambiwidth is set to single (it can't be double with that characters in listchars apparently)

2016-03-30 5:12 GMT+03:00 mattn<EMAIL_ADDRESS>
I don't see the behavior.
http://go-gyazo.appspot.com/8ff36abf2e08281f.png
did you set following?
https://camo.githubusercontent.com/74220b96c2175701bd4d6b2485fa7b18dc963796/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f31373732322f36366237396433662d306431342d366363302d326635612d3562383236306431306139332e706e67

Making ambiguous characters have double width is one of the worst ideas:
there are way too much characters which have “A” East Asian Width
property, but are single width in nearly all fonts I have, including
powerline arrows (i.e. the whole Private Use Area, specifically for
powerline arrows you may read all fonts), some national alphabets like
Russian and Greek and many other symbols like the one OP used in &listchars.
@Beau Gunderson &ambiwidth setting must be synchronized with the terminal
setting or you will get lots of rendering problems like wrapped statusline.
It is especially needed for statusline as it is output “in one piece” (so
rendering problem cannot be mitigated by telling terminal the explicit
position of some character) and contains “filler” elements whose width
depends on how many space is left in the line (so Vim will add more spaces
then actually needed).

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/vim/vim/issues/721#issuecomment-203193674
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to<EMAIL_ADDRESS>For more options, visit https://groups.google.com/d/optout.

I suppose, this can be closed then?

my ambiwidth and my terminal are both set to single for ambiguous characters and I still see the issue with emoji and some Unicode characters. (mattn had asked me to try the ambiguous setting in iTerm, that's what the second set of screenshots are)
under all permutations of settings there are still rendering issues.

Sent from my phone.

On Mar 30, 2016, at 01:10, vim-dev ML<EMAIL_ADDRESS>wrote:
2016-03-30 5:12 GMT+03:00 mattn<EMAIL_ADDRESS>
I don't see the behavior.
http://go-gyazo.appspot.com/8ff36abf2e08281f.png
did you set following?
https://camo.githubusercontent.com/74220b96c2175701bd4d6b2485fa7b18dc963796/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f31373732322f36366237396433662d306431342d366363302d326635612d3562383236306431306139332e706e67

Making ambiguous characters have double width is one of the worst ideas:
there are way too much characters which have “A” East Asian Width
property, but are single width in nearly all fonts I have, including
powerline arrows (i.e. the whole Private Use Area, specifically for
powerline arrows you may read all fonts), some national alphabets like
Russian and Greek and many other symbols like the one OP used in &listchars.
@Beau Gunderson &ambiwidth setting must be synchronized with the terminal
setting or you will get lots of rendering problems like wrapped statusline.
It is especially needed for statusline as it is output “in one piece” (so
rendering problem cannot be mitigated by telling terminal the explicit
position of some character) and contains “filler” elements whose width
depends on how many space is left in the line (so Vim will add more spaces
then actually needed).

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/vim/vim/issues/721#issuecomment-203193674
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to<EMAIL_ADDRESS>For more options, visit https://groups.google.com/d/optout.

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub

okay, then please set noemoji.

Beau Gunderson wrote:

my ambiwidth and my terminal are both set to single for ambiguous
characters and I still see the issue with emoji and some Unicode
characters. (mattn had asked me to try the ambiguous setting in iTerm,
that's what the second set of screenshots are)
under all permutations of settings there are still rendering issues.

Yeah, this is very hard to get right.  Blaming the user for not setting
the right options isn't a good solution.
I think what we need to do is to assume that some characters may have a
different width from what we expect.  To minimize drawing issues, the
cursor needs to be positioned after drawing such a character.
I'm thinking of setting screen_cur_col to a large value after drawing
such an ambiguous width character.  That is in screen_char().
And avoid using PLAN_WRITE in windgoto() if there are ambiguous width
characters to be writen.
There might still be some remaining problems, such as Visual block
selection.
--
hundred-and-one symptoms of being an internet addict:
199. You read this entire list of symptoms, looking for something
that doesn't describe you.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

can you check, if 1697 fixes your problem?

ping @beaugunderson

Maybe, already fixed. Closing.


Bump K3s dependecies to 1.31

Changes

Bring K3s dependencies from 1.29.3 to 1.31.1
Bump go dependencies for minor CVEs

Linked Issues:
https://github.com/rancher/rke2/issues/6913
https://github.com/rancherlabs/image-scanning/issues/3943

How are we building for v1.28 releases if the existing release is on 1.29.3?

https://github.com/rancher/image-build-rke2-cloud-provider/tree/release-v1.28 lol

Ah okay... so I will bump only to 1.29.9

Yeah it doesn't matter a TON since all the modules get upgraded to the Kubernetes version specified in the tag anyway.


kvstore: Propagate ClusterID with Service

This is a part of Cluster Mesh with overlapping PodCIDR support. Please see the commit message for more details. This includes the kvstore data format change (added a new field), but shouldn't make any compatibility issue since no one using that yet.
kvstore: Propagate ClusterID with Service

/test

Fixed the conflict with latest master.

/test

I think failure in the ConformanceGKE is a variant of https://github.com/cilium/cilium/issues/19552.

/ci-gke

There's no datapath change, so it doesn't make sense to run complexity tests. Let me make this ready to merge.


Update python-ingest-data.md

Suggest with_interactive_login for an easier example to implement.

Learn Build status updates of commit ce8df4c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

data-explorer/python-ingest-data.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

#sign-off


expandAll feature again...

Hello,
I am trying to implement a expandAll function thanks to the expanded-nodes attribute.
I'll allways have 3 levels like so :
folder (children is defined)
    |-->leafs... (children is not defined)
    |-->leafs... (children is not defined)
    |-->folder (children is defined)
    |        |-->leafs... (children is not defined)
    |        |-->leafs... (children is not defined)

in my controller the code is the following:
$scope.expandedNodes = []

	$scope.openNodes = function(input_obj){
		//open the master nodes
		$scope.expandedNodes = input_obj;

		for (var i = 0; i< input_obj.length; i++){
			if (input_obj[i].children){
				for (var j = 0; j< input_obj[i].children.length; j++){
					if(input_obj[i].children[j].children){
						// open children nodes 1st level
						$scope.expandedNodes.push(input_obj[i].children[j]);
					}
				}
			}
		}

	}

the problem is that when I call the open all function everything becomes opened as expected but the children nodes are copied under the parent node as if everything was a parent node ...
I don't know if I am realy clear but I'm not that good in english ... :-s
so here is a picture :

maybe there is something more generique  ??
Please help me, it took me a long time trying many solutions but this is the only one that was nearly to work well!
Thank's in advance ! :)

Ok,
I ended up with something functional and I think more generic.
I have 3 trees on my page generated in an ngRepeat :
ng-repeat="(tsname, tsInput) in ts_data"
for each tree I have those attributes :

tree-model="tsInput"
expanded-nodes="expandedNodes[$index]"

I have 2 buttons that open and close all nodes in each ngrepeat:
<button ng-click="openNodes(tsInput, $index)">open all nodes</button>
<button ng-click="closeNodes(tsInput, $index)">close all nodes</button>

and in my controller I made that :
$scope.expandedNodes = {}

$scope.openNodes = function(input_obj, index){
	var output = []

	var has_children = function (obj){
		for (var i = 0; i < obj.length; i++) {
			if(obj[i].hasOwnProperty('children')){
				output.push(obj[i]);
				has_children(obj[i].children);
			}
		};
	}

	has_children(input_obj);
	$scope.expandedNodes[index] = output;
}

$scope.closeNodes = function(input_obj, index){
	$scope.expandedNodes[index] = [];
}

I accept improvments, and hope that will help those that are in need such a feature.
Peace ! :+1:

In your first code snippet, you have a problem -
in
$scope.expandedNodes = []

    $scope.openNodes = function(input_obj){
        //open the master nodes
        $scope.expandedNodes = input_obj;

        for (var i = 0; i< input_obj.length; i++){
            if (input_obj[i].children){
                for (var j = 0; j< input_obj[i].children.length; j++){
                    if(input_obj[i].children[j].children){
                        // open children nodes 1st level
                        $scope.expandedNodes.push(input_obj[i].children[j]);
                    }
                }
            }
        }

    }

the line
        $scope.expandedNodes = input_obj;

should have been
        $scope.expandedNodes.push(input_obj);

You second code snippet does exactly that in a more readable way (with I prefer)

Yes this is what I saw this morning (9:00 in france ...) but I did want to have something more readable and that was more robust for reusability if there were deeper trees one day on my application.
I think you should write something on the README about that feature that, I think, will be asked by a ton of users.
Thank you for your answer anyway!

The great thing about github issues is that if someone searches, he/she will find the information...

Yes but if that feature is something that a lot of people look for (I saw that feature request a lot of times for your application but never explained how to achieve that) its pretty good to know without going in the issues section to know if it's possible...
However thank you for your help and feedback : -)


Placeholder for SignIn Username & Password don't seem to work

You can see Ive set the placeholders for Username and Password for the signin page but they don't seem to come through on the actual sign-in page below.  I have checked and am running the latest version.

@baramustafa provide a demo video to reproduce the error


CI: test it on RISC-V 64 / Linux

These changes are made under both the "Apache 2.0" and the "GNU Lesser General
Public License 2.1 or later" license terms (dual license).
SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later

armel build is currently broken.
See https://github.com/atomvm/AtomVM/pull/644 for a renewed approach to this using docker images instead of debian bootstrap.

Please rebase over current master to ensure this will build cleanly.


Update Arrow image

The hot linked images was not showing up.
I reuploaded the image to make use of github's CDN.

Thanks


Implement interleave_shortest()

Add interleave_shortest() to IndexedParallelIterator that acts like
interleave, except it terminates as soon as one of the iterators is
exhausted.
The other part of/Fixes #384

Just wondering, why does the size_hint() implementation for InterleaveShortest in itertools look so complicated? Makes me wonder if I'm missing something here...

Looks good!  Just one thing, can you add this to tests/compile-fail/must_use.rs?  I forgot this for interleave too.

Just wondering, why does the size_hint() implementation for InterleaveShortest in itertools look so complicated?

Probably because itertools doesn't require them to be ExactSizeIterator, so it's going through hoops to combine the min/max limits from the two iterators.  We're also lax about overflow when two iterators combine to overflow usize.  Actually, let's improve that.  Interleave can copy what Chain does, and while we're here, it should also pass through min_len and max_len.

Thanks!


fix(popover): scope title class to popover component

fixes https://github.com/patternfly/patternfly-next/issues/1856

Deploy preview for pf-next ready!
Built with commit d00b75de19d2a0fa18fc422b34af6a75d0d0fc48
https://deploy-preview-1857--pf-next.netlify.com

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


updated the contact form

added footer form

email
name
messages
get in touch

please help me to fix that one linter error I am unable to fix it


Ensure all tests pass with new implemented add contact feature

Will be implemented as part of other issues, doesn't require a specific issue for this.


¬issue but ... $accessibility woe.

Describe the issue
Requesting a web-wallet or paper-wallet repo creation for quick /on-the-fly "pitch-up-quic" adoption 🚀boosting.
Can you reliably reproduce the issue?
Hoping we do not have to anymore in near future.
🖤

Going to close this issue.

Might consider importing this issue as a new feature-request in the new Title-Network implementation.

Thanks for you.


Login/ Registeration UI

We will be creating the UI for the login/registration page. This flow will include 2 pages.

The first one will be a login page with the register option below.
The second one will be the register new user page.
If the login/registration fails, the user will get a failure pop-up
If the login/registration succeeds, the user will get a success pop-up
When a new user is created, we will be adding data to the database.
When a registered user tries to login, we look at the User database
The above two can be achieved by sending a call to the backend, with the data(serialization)

Once you successfully login, you should be able to see your home page. This screen will count as part of this assignment


Can we get Hessian matrix?

Is it possible to get the Hessian matrix from fitted pyddm objects?
# how to get Hessian matrix from a model like this one (adapted from docs)?
fit_model_rs = fit_adjust_model(sample=roitman_sample, model=model_rs, fitting_method="basin")

Appreciate any help anyone can provide. Thanks!

I've been using mostly differential evolution, and it definitely works very well. But the downside of using a non-gradient-based algorithm like differential evolution is it doesn't provide any measure of error (e.g., SD or SE) for the estimated parameters. But if we can somehow get the Hessian, we can then estimate the error.
According to this StackOverflow question, one hack would be to use the estimates from differential evolution as initial values for a gradient-based algorithm that returns the Hessian. And that led me to my question.
This is definitely not a feature request, but just curious about what's possible and what you think. Thanks again!

Aah, got it.
By default, differential evolution actually carries out gradient descent at the end ("polish").  But it looks like it doesn't only saves the jacobian, see: https://github.com/scipy/scipy/blob/b5d8bab88af61d61de09641243848df63380a67f/scipy/optimize/_differentialevolution.py#L915
Unfortunately, though, the hessian can't capture parameter variability for global optimisation, since there could be multiple peaks in the landscape.  The hessian is more of a measure of sensitivity at the given location in parameter space.  So yes, you will get a number, but it won't necessarily be meaningful.
If you still want the hessian, you can certainly use finite differences as linked in the SO question.  If you would rather use the hessian estimated by gradient descent (which I don't recommend) you can make the following change to PyDDM:
Go to this line: https://github.com/mwshinn/PyDDM/blob/890ab4d78bc1ade3698f8d1e3bed568e4a109555/pyddm/functions.py#L373 and add the middle two lines in the following:
res = FitResult(method=(method if method is not None else "auto"),
        hess=(x_fit.hess if "hess" in x_fit.__dict__ else None),
        hess_inv=(x_fit.hess_inv if "hess_inv" in x_fit.__dict__ else None),
        fitting_method=fitting_method, loss=lf.name, value=x_fit.fun,

This will give you the hessian and/or inverse hessian if the optimisation routine supports it.  (This should be the case for "simple" only.)  You can access this FitResult object as m.fitresult for the fit model m.  Haven't tested this but it should work.  If you want the jacobian, you can do something similar.
I'm not going to implement this in PyDDM itself because it is not a good way to go about estimating parameter variability.  One way to estimate parameter variability is to just fit the model multiple times - it isn't a very good way, but it does capture the propensity to hit different peaks in the global optimisation.

Thanks for explaining, Max! These details are all super relevant and helpful. Thanks again!


Jaco/icml camera ready

Codecov Report
Patch coverage: 100.00% and no project coverage change.

Comparison is base (add9a32) 77.15% compared to head (3c4a22f) 77.15%.

:exclamation: Current head 3c4a22f differs from pull request most recent head 950ba7d. Consider uploading reports for the commit 950ba7d to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##             main       #8   +/-   ##
=======================================
  Coverage   77.15%   77.15%
=======================================
  Files          13       13
  Lines         556      556
=======================================
  Hits          429      429
  Misses        127      127

Impacted Files
Coverage Δ

krcps/__init__.py
100.00% <100.00%> (ø)

krcps/bounds.py
56.00% <100.00%> (ø)

krcps/calibration.py
15.21% <100.00%> (ø)

krcps/losses.py
100.00% <100.00%> (ø)

krcps/membership.py
17.39% <100.00%> (ø)

krcps/test_utils.py
100.00% <100.00%> (ø)

krcps/uq.py
100.00% <100.00%> (ø)

krcps/utils.py
100.00% <100.00%> (ø)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


az cli docker images uses outdated python image

This is autogenerated. Please review and update as needed.
Describe the bug
The azure cli docker image uses the image version 3.6.10, see
https://github.com/Azure/azure-cli/blob/dev/Dockerfile#L6
but the offical python docker image no longer supports 3.6.10 only 3.6.12 has a supported image, see https://hub.docker.com/_/python
With this old base image, the image may contain insecure libs.
To Reproduce:
n/a
Expected Behavior
The azure cli docker image always uses a supported base image.
Environment Summary
Linux-4.19.128-microsoft-standard-x86_64-with
Python 3.6.10
Installer: DOCKER

azure-cli 2.18.0

Additional Context

hi @fengzhou-msft let's plan it accordingly.

@fengzhou-msft @yungezz Do you have now a process to keep the python version up to date with a supported version or will this happen in few months again?

We don't have a process to automatically update the python version yet.

Okay, thanks for the info. Then I will create a issue of I spot this again


Rule : padding-line-between-statements

http://eslint.org/docs/rules/padding-line-between-statements
This is opinionated, but i would like to use this rule as warning with the fallowing configuration :
{
  padding-line-between-statements: [
    'warning',
    { blankLine: 'always', prev: '*', next: 'return' },
  ]
}

To force a new line before any return.

@gplancke @xavhan @ArnaudSpanneut @UaQuetzalcoatl what's your opinion about this ?

Do not care if there is a way to fix potential warnings due to this change automatically.

@xavhan :

The --fix option on the command line can automatically fix some of the problems reported by this rule.

It's just a question of readability


Small update

@sqrrrrl

We actually can just remove the parts playing with the effects since hidePlayer() already hides the effects particles.


Bump version from "0.32.0" to "0.32.1-DEV", and also:

Change codename from "Cephalosporin" to "Unstable Angina"

bors r+


walk back Aliases Domain field update

Issues

Changelog
TBD if we want to walk this back...
Undo changes added in this PR

[ ] List your changes here
[ ] Make a changie entry

Tophatting

We should not walk this back, managedAliases was added so that aliases can be managed in terraform. Without it, there's no way to differentiate the difference between an assigned alias and a slug alias.
For confirmation, try this:

Reverse the change
Create a domain with aliases = ["domaintest00001", "domaintest0002"] and name = "domain_name_123456"
The update will not work because domain_name_123456 is added as an alias despite not being in the aliases array


Mathematical functions to calculate addition of rows and column

The class contains two functions Subtraction and Addition both accept an array of integers and return an integer,

Thank you


pfe-tab wind variant should use both background variables

Description of the issue
There are two background variables for pfe tabs:  --pfe-tabs--BackgroundColor and  --pfe-tabs--BackgroundColor--inactive.  The earth variant leverages both, but wind does not.
Impacted component(s)

pfe-tabs

Steps to reproduce

Go to the pfe-tabs demo page
add these style overrides

:root {
    --pfe-tabs--BackgroundColor: pink !important;
    --pfe-tabs--BackgroundColor--inactive: beige !important;
}

Notice that all the wind tabs inherit the (active) background color variable.

Expected behavior
Only the active wind tab should be pink, the other tabs should be beige.
Screenshots

Shouldn't the tabs in wind always be transparent?


Lovelace Thermostat card not working with Netatmo component

Home Assistant release with the issue:
0.81.2
Operating environment (Hass.io/Docker/Windows/etc.):
Hass.io
Component/platform:
https://home-assistant.io/components/climate.netatmo/
https://www.home-assistant.io/lovelace/thermostat/
Description of problem:
New lovelace thermostat card not showing up
Traceback (if applicable):
Javascript error:
8a696fdac4ce3eb749b3.chunk.js:formatted:4912 Uncaught (in promise) TypeError: Cannot read property 'map' of undefined

This is the line that raise the error:

${this.localize(`state.climate.${stateObj.state}`)}

             ${stateObj.attributes.operation_list.map(modeItem=>this._renderIcon(modeItem, mode))}

Additional information:
Netatmo component does not have operation_list attribute

/move to home-assistant/home-assistant-polymer


Support tailwind 2 class names?

I was trying with tailwind 2.0.1 and gen-available-classes is generating rows like:
32xl;32xl

bottom3.5;bottom-3.5

This is then generating invalid PureScript. The first because it starts with a digit and the second because of the .

Nice catch, and thanks for reporting.
I need to update my projects to Tailwind v2. Hopefully I'll manage to do it this week and push a fix for this as well.

I started to work on this. Here are the transformations I'm applying.
https://github.com/gillchristian/tailwind-purs/blob/bbf0b780dbfc0a49f511c4d9cbc7ff72225a7e8c/test/Spec.hs#L24-L49
If you have suggestions let me know.
Specially the new cases:

prefixing with _ when starting with a number (32xl => _32xl)
replacing dot with 'p' (foo-3.5 => foo3p5)


Fix bug preventing --delete from removing directories with subdirectories

Adds the topdown=False argument to os.walk() to traverse directories marked for deletion bottom-up. Previously, given a directory "a" containing subdirectory "a/b", boto-rsync would attempt to delete "a" first, which would fail due to being non-empty.

Whoops, didn't realise I accidentally added unrelated commits to this PR. Closing as the project doesn't seem to be active anyhow.


mixpanel-react-native is not working properly.

It's not working properly, it is so slow to update the event on the server, davodesign's mix-panel lib is much faster than this lib. I tried a lot but no luck.

hi @chetan-sharma-newput , to preserve battery life and customer bandwidth, the Mixpanel library doesn't send the events you record immediately. Instead, it sends batches to the Mixpanel servers every 60 seconds while your application is running, as well as when the application transitions to the background.
You can call flush manually if you want to update the event on the server immediately mixpanel.flush(); Please let me know if that helps.

hi @chetan-sharma-newput , to preserve battery life and customer bandwidth, the Mixpanel library doesn't send the events you record immediately. Instead, it sends batches to the Mixpanel servers every 60 seconds while your application is running, as well as when the application transitions to the background.
You can call flush manually if you want to update the event on the server immediately mixpanel.flush(); Please let me know if that helps.

hi @chetan-sharma-newput , to preserve battery life and customer bandwidth, the Mixpanel library doesn't send the events you record immediately. Instead, it sends batches to the Mixpanel servers every 60 seconds while your application is running, as well as when the application transitions to the background.
You can call flush manually if you want to update the event on the server immediately mixpanel.flush(); Please let me know if that helps.

Hello zihejia,
I want to track my user's anonymous activity before his login, after login, and after logout. This is what I am doing. and yes "mixpanel.flush()" worked thank you.
    registerSuperPropertyMixPanel(option) {
        this.mixpanel.registerSuperProperties(option.properties)
    }

    async registerUserOnMixPanel(peopleData) {
        this.mixpanel.alias(peopleData.uuid, distinctId)
        this.mixpanel.identify(peopleData.uuid)
        // MixPanel.createAlias(peopleData.uuid)
        // MixPanel.identify(distinctId);
        this.mixpanel.getPeople().set(peopleData)
        // MixPanel.setOnce(peopleData)
        this.registerSuperPropertyMixPanel({
            "properties": {
                "app": getConstant().PILOT_NAME,
                "pilotId": getConstant().PILOT_ID,
                "uuid": peopleData.uuid
            }
        })
        this.trackView("app.home")
        this.mixpanel.flush()
    }

Now this code creating always a new user profile on mixpanel database. I want to track all the anonymous activity of the user.
Like - First he comes on the login screen when he launches the app, then he logged in to the app, he does some tasks, and then logs out from the app, now he again logs in.  So this activity I want to track with a single mixpanel user profile. Sorry for the bad English and thanks in advance.

hi @chetan-sharma-newput , to preserve battery life and customer bandwidth, the Mixpanel library doesn't send the events you record immediately. Instead, it sends batches to the Mixpanel servers every 60 seconds while your application is running, as well as when the application transitions to the background.
You can call flush manually if you want to update the event on the server immediately mixpanel.flush(); Please let me know if that helps.

Hello zihejia,
I want to track my user's anonymous activity before his login, after login, and after logout. This is what I am doing. and yes "mixpanel.flush()" worked thank you.
    registerSuperPropertyMixPanel(option) {
        this.mixpanel.registerSuperProperties(option.properties)
    }

    async registerUserOnMixPanel(peopleData) {
        this.mixpanel.alias(peopleData.uuid, distinctId)
        this.mixpanel.identify(peopleData.uuid)
        // MixPanel.createAlias(peopleData.uuid)
        // MixPanel.identify(distinctId);
        this.mixpanel.getPeople().set(peopleData)
        // MixPanel.setOnce(peopleData)
        this.registerSuperPropertyMixPanel({
            "properties": {
                "app": getConstant().PILOT_NAME,
                "pilotId": getConstant().PILOT_ID,
                "uuid": peopleData.uuid
            }
        })
        this.trackView("app.home")
        this.mixpanel.flush()
    }

Now this code creating always a new user profile on mixpanel database. I want to track all the anonymous activity of the user.
Like - First he comes on the login screen when he launches the app, then he logged in to the app, he does some tasks, and then logs out from the app, now he again logs in.  So this activity I want to track with a single mixpanel user profile. Sorry for the bad English and thanks in advance.

hi @chetan-sharma-newput ,  I could not replicate the same issue. Is your Mixpanel project using Identity Merge? If yes or you are not sure, you can check this doc: https://help.mixpanel.com/hc/en-us/articles/360041039771-Getting-Started-with-Identity-Management. If Id merge is enabled, you don’t need to call alias.
If you do not enable Identity Merge. You can check this doc: https://help.mixpanel.com/hc/en-us/articles/115004497803-Identity-Management-Best-Practices. The key here is you only need to call alias once when users first sign up. When a user logs in, you can just call mixpanel.identify("YOUR_USER_ID"). As long as you keep your user id the same(peopleData.uuid), there shouldn’t be a new user profile being created each time.
Please let me know if that helps.

hi @chetan-sharma-newput ,  I could not replicate the same issue. Is your Mixpanel project using Identity Merge? If yes or you are not sure, you can check this doc: https://help.mixpanel.com/hc/en-us/articles/360041039771-Getting-Started-with-Identity-Management. If Id merge is enabled, you don’t need to call alias.
If you do not enable Identity Merge. You can check this doc: https://help.mixpanel.com/hc/en-us/articles/115004497803-Identity-Management-Best-Practices. The key here is you only need to call alias once when users first sign up. When a user logs in, you can just call mixpanel.identify("YOUR_USER_ID"). As long as you keep your user id the same(peopleData.uuid), there shouldn’t be a new user profile being created each time.
Please let me know if that helps.

hi @chetan-sharma-newput , I'm closing this issue for now as it's not a real issue. Please feel free to open another one for any specific issue or contact Mixpanel support .

hi @chetan-sharma-newput , I'm closing this issue for now as it's not a real issue. Please feel free to open another one for any specific issue or contact Mixpanel support .


if browser window is too small the most eastern part of any map won't be displayed (no scrolling possible)

Closing; cannot replicate. @Bibiko re-open if still an issue.


[WIP, Diagnostics] Port CSDiag visitAssignExpr to the new diagnostic framework

This pull request aims to port all of CSDiag visitAssignExpr to the new diagnostic framework. This is very much a work in progress.
As of now, the PR includes:

A naive implementation of a port to diagnoseSelfAssignment
A change to allow MissingConformanceFailures to produce diagnostics in the case of assignment expressions rather than falling back to CSDiag
The introduction of a new fix, AllowAssignmentMismatch and associated Failure which attempts to catch the majority of non contextual type assignment mismatches.

I have picked this work in https://github.com/apple/swift/pull/28057


fix: set bounds of usa for dataset-api demo

Issue

Describe your changes

How to test

Checklist:

[ ] My code follows the style guidelines for this repo
[ ] I have performed a self-review of my code
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings/errors
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I don't require ops changes for this PR to go to prod
[ ] This change does not include a migration

Comments

:tada: This PR is included in version 1.38.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add stanford hash/swisstable as hashmap

stanford is optimal for integers (i.e. literals divisible by 256),
greg7mdp/parallel-hashmap for strings and structs.
Converting swiss table or greg7mdp/parallel-hashmap from C++/SIMD might be too much work.
stanford_hash is similar and good enough for now.
EDIT: see LIMachi/swiss-table on github.
Try the o1hash from wyhash as default, but add security measures (collision counting or tree conversion, no sorted_vector yet)

See the hmap branch

Most of the work is needed for a proper/better map/umap API.
Either

go with pairs (a custom struct as strint.hh),
or seperate the key from the value: TK for key type, T for the value. And have seperate free,copy methods for both.


Genesis proof download for nonconsensus

This is one of the nonconsensus node tasks mentioned in #4674.

Plan to resume when Izzy's PR is in.

When #4922 merges, genesis proofs will be uploaded separately to the snark-keys.o1test.net S3 bucket. For example, the current compile-time genesis proof is here.

Nonconsensus node plans have changed, obsolete.


Delete message in supergroups by robot !

Hi sir,
Excuse me, I want to be in the supergroup if a message contains a link has been touted by robots do I clear it.
Is is possible? How do I do this? help me
Thank you

Hello,
As far as I know, it is not possible for a bot to remove a message.
Kind regards,
Martijn Verbakel

Thank you, sir
But I have seen that if a person was in supergroup message contains the link, the robot removes the message out!
After the robot how to do it do it?!
What is the reason that the robot can't delete messages?
Thanks

Hello,
I doubt that this is done by the bot api. I can't find the method to delete messages on the telegram website.
It is probably a robot that directly interacts with the telegram cloud like other client such as the android application, instead of communicating through the bot api. This library is not suitable for that purpose.
Kind regards,
Martijn Verbakel

Yes, sir, I understand,
I've seen on the Web Telegram
One method is to delete the message, address it is below:
https://core.telegram.org/method/messages.deleteMessages
Do not be too implement this method for API robots?!
Certainly, many people are now in need. Please think about it.
Thanks perfection.

Hello,
The method you are referring to is for regular clients, not for bot clients. We can't choose to implement this, because Telegram simply doesn't provide it for bots.
If you want this feature, talk to Telegram support.
Kind regards,
Martijn Verbakel

@NimaZare  salam mohande baraye pak kardane payam tavasote robot be chizi residi ??

hey !
with bot you cant delete the messages but if you use special clients like @JiksDev Client you can do anything in your group ...

check this :
https://core.telegram.org/bots/api#deletemessage

hi !
how can i use deletemessage added to api lib v3.0.0 in java ???
DeleteMessage delmsg = new DeleteMessage(chat_id, message_id);
can any one help me write a sample example to delete it ???? tnx
my tlg id : @etresib314

@mohammadyacn314 It's available in the latest beta

hi guys.
I have a problem...
I used DeleteMessageAsync(e.Message.Chat.Id, e.Message.MessageId) to delete messages from special ID, but it work only the messages contain TEXT, not media (photo,audio,video,...)
please help me... tnx

hi guys.
I have a problem...
I used DeleteMessageAsync(e.Message.Chat.Id, e.Message.MessageId) to delete messages from special ID, but it work only the messages contain TEXT, not media (photo,audio,video,...)
please help me... tnx

How do you detect messague wee deleted pls


Support pagination and attempt data in question finder

Augment search results for the new question finder with question attempt information;
Support pagination, looping up to 5 times to try to pull SEARCH_RESULTS_PER_PAGE = 30 questions in an attempt to match filters which cannot otherwise be checked for exclusively in ES.

Changes above should all be made; I have moved the user attempt business logic into a new class, UserAttemptManager; name / file path change suggestions appreciated!


load_and_authorize_resource :through always filter for the parent despite having shallow:true

Using Rails 4.2.5 and cancancan 1.13.1 and having the following controller:
    class JobsController < AccountController
      load_and_authorize_resource :user
      load_and_authorize_resource :job, :through :user, shallow: true

      def index
        render json: @jobs
      end

      def show
        render json: @job
      end

      # Removed the rest of the actions

    end

And my routes.rb looks like:
    resources :jobs, only: [:show, :index] do
      resources :workers, except: [:new, :edit]
    end

    resources :users, except: [:new, :edit] do
      resources :jobs, except: [:new, :edit]
    end

Being logged with user: 1 when I GET /users/1/jobs I get the list of jobs that the user has.
Since jobs can be seen by other users, if I try to see a job from user 1 with id 2, logged in with user 2 like GET /jobs/2
I'm getting:
<ActiveRecord::RecordNotFound: Couldn't find Job with 'id'=2 [WHERE "jobs"."deleted_at" = ? AND "jobs"."user_id" = ?]>
Because its using the logged in user to retrieve the job which is wrong, because the job has been created for another user.
Even using load_and_authorize_resource :user, except: :show it still trying to filter by the logged user.
Shouldn't the line above prevent filtering by the user if it is not  present as a parameter?
Thanks

@mustela should not you have shallow: true on your routes?


Is there anything that can concretely show this pattern Benchmarks better than standard react?

I feel like this is close to solid.js when it comes to what you're promising - the render function with all the logic only runs once, yet the UI is still reactive. The code isn't the most ergonomic, but if it proves to be more performant with such little effort, it'd easily be worth it.

It should be possible to write a demo for implementation, but no similar work has been done.


Feature: some more flexibility while defining template

It is likely that a component by itself will not be enough for a meaningful demo (users might need a bit more context sometimes)
For instance, instead of providing this template that will only output a value (124.0)
<template data-element="d3-format" data-target="host">
    <d3-format specifier=".1f" value='123.999'></d3-format>
 </template>

it could be more helpful to have smth like:
<template data-element="d3-format" data-target="host">

value 123.999 will be formatted as <d3-format specifier=".1f" value='123.999'></d3-format>

</template>

Potential constraints for the template:

one single root element
only one element with same name as the demo data-element.

Thanks for reporting. I would prefer to handle this by using the following API:

<template data-element="my-element" data-target="prefix"> - anything before element
<template data-element="my-element" data-target="suffix"> - anything after element

Would that be enough you to cover the use cases that you have on your mind?

Note, due to the nature of HTML parser that does unclosed elements fixup,  and  pasted from the different templates as I'm suggesting might not work.
A potential solution for this specific use case could be to add third template option:

<template data-element="my-element" data-target="wrapper"> - wrapper element.

Done by #27 and will be included to the upcoming 0.4.0 release.


Make reflex rendering thread safe

The monkey patch used to render the original view's context was not
thread safe. This commit fixes the issue by patching all the
get_context_data methods before accepting requests, instead of while
rendering the reflex' response.

@jonathan-s this is the solution that I suggested you over email.
While working on this I noticed that the view and its context are rendered twice during the page_render call. This is quite inefficient, because it could potentially result in many duplicate database queries in the view. The page rendering logic should be streamlined further probably.

Hi @blubber,
Thanks for taking a look at this. However, with the current code it seems like you end up in a recursive call. You can see it happen in the integration tests. I've reproduced it locally as well. I sent you another email, if you are replying to that, we can keep the discussion in this PR.

While working on this I noticed that the view and its context are rendered twice during the page_render call.

There are some cases where this is necessary. If you're using a ListView you need to execute the get request as some instance variables are set in the get part.
However if you keep all your queries in get_context_data the queries should only be triggered once as they are cached in the reflex class.

Hi,
Threading issues are always hard to reproduce or even prove. So I did some
digging into Channel's code, and found this:
https://github.com/django/channels/blob/ece488b31b4e20a55e52948f21622da3e38223cb/channels/consumer.py#L104
It seems that your consumer ultimately inherits from a consumer that has
_sync set to True, and it's dispatch method is not awaitable. This results
in the code that's doing the dispatch running the handler in async_to_sync
in a thread pool (as the comment also says). So regardless of being able to
produce an actual problem, the method swapping is not thread safe and the
code is running in a thread. If you deploy the current version in any kind
of production load it will probably break and possible leak information.
On Sat, Feb 27, 2021 at 3:53 PM Jonathan Sundqvist<EMAIL_ADDRESS>wrote:

While working on this I noticed that the view and its context are rendered
twice during the page_render call.
There are some cases where this is necessary. If you're using a ListView
you need to execute the get request as some instance variables are set in
the get part.
However if you keep all your queries in get_context_data the queries
should only be triggered once as they are cached in the reflex class.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jonathan-s/django-sockpuppet/pull/99#issuecomment-787084120,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABJ3ZUQC2GVH3EHDOPS72DTBEBPLANCNFSM4YJ6X77Q
.

--

Tiemo

Unfortunately I haven't had time to look into this PR. However, I did take some time today to get to the bottom of the blocking behavior. I was a little weird to me that views or consumers where actually blocking, because the websocket consumer's dispatch method is wrapper in asgiref's sync_to_async which should execute it in a thread pool. This was bothering me, since I really couldn't explain the blocking behavior, but I now found out where my brain errored.
The sync_to_async class has an argument thread_sensitive which defaults to True, which does exactly the opposite of what I expect. If True it in facct forces execution in the main thread. Setting it to False results in the expected, non-blocking, behavior.
I believe that if you wrap a view class used with sockpuppet in sync_to_async(thread_sensitive=True) that it in fact will break on the get_context_data swapping. But I haven't had time to try this out yet.

Ok, so I finally managed to pin this down. It seems that asgiref 3.3 has changed sync_to_async's behavior to run code in a singel thread (the main thread) by default, ie the thread_sensitive argument defaults to True now. This completely changes Channel's behavior as it's now running sync views and other sync code serially by default. This includes the JsonWebSocketCustomer's dispatch method, which is decorated with a derivative of sync_to_async.
If you remove asgiref>=3.3 and install asgiref<3.3 instead, the behavior reverts to its previous default of concurrency using a thread pool (for sync parts like the consumer). Again, I'm pretty sure you can break the get_context_data replacement if you're running asgiref < 3.3.

Thank you @blubber for this in-depth investigation! Much appreciated. So in other words this would be an issue if you were running channels 2.4, and not be an issue if you were running channels >=3.0 (as channels installs asgiref >3.3 by default there).

Well, if you force asgiref <3.3, which I did locally, than you get the old behavior, which also implies a threading issue. Also, it's unclear at this point how Channels are going to manage this change. They might decide to force thread_sensitive=False, to explicitly re-enable the old behavior.

Relates to https://github.com/django/channels/pull/1582 and https://github.com/django/channels/issues/1587
So it's worth keeping these in mind if anything will / should change here.

Yeah, I was actually kind of waiting to see where they are going with this. That PR you've linked doesn't really solve the entire problem and seems to be stranded. Probably a good idea to wait and see how they handle this.


ProgressIndicator - #593772 making active state applicable to any item in the list

Previously the "doing" status item was the only thing capable of having the active styling. Now any of the items can have the active styling.
View preview
Checklist
Preflight

[x] Prefix the PR title with the slug of the package or component - e.g. accordion: Updated padding or docs: Updated header links
[x] Describe the changes clearly in the PR description
[x] Read and check your code before tagging someone for review
[x] Create a changeset file by running yarn changeset. Learn more about change management.

Testing

[x] ~Manually test component in various modern browsers at various sizes (use Browserstack)~
[x] ~Manually test component in various devices (phone, tablet, desktop)~
[x] Manually test component using a keyboard
[x] Manually test component using a screen reader (I've enhanced it with aria-current)
[x] ~Manually tested in dark mode~
[x] Component meets Web Content Accessibility Guidelines (WCAG) 2.1 standards
[x] Add any necessary unit tests (HTML validation, snapshots etc)
[x] Run yarn test to ensure tests are passing. If required, run yarn test -u to update any generated snapshots.

Documentation

[x] Create or update documentation on the website
[x] Create or update stories for Storybook
[x] Create or update stories for Playroom snippets

I think we should deprecate the "saved" status and rename it to "submitted" for clarity.

Also in GitHub commenthttps://github.com/agriculturegovau/agds-next/pull/1569#discussion_r1506926739
blocked: This step is not available yet for the user to start. - agreed
started: The user has reached this step and begun working on it, but it still needs to be completed. - we have removed '...is not active or selected' is this not important?
todo: The step is available for the user to start. - agreed
saved: The user has submitted valid data; however, the data still needs to be approved or verified. If no approval is required, use the done status instead. - 'The user has submitted valid data; however, the data can be changed by the user or effected by conditional logic prior to this point.?
done: The user has submitted valid data and it has been verified (where necessary). This step is complete. - agreed
error: There is an error on this step that requires attention. - Im not sure we need this state?
From: Matt Stow @.>
Sent: Thursday, February 29, 2024 1:16 PM
To: agriculturegovau/agds-next @.>
Cc: Yee, Adrian @.>; Mention @.>
Subject: Re: [agriculturegovau/agds-next] ProgressIndicator - #593772 making active state applicable to any item in the list (PR #1569)
@stowball commented on this pull request.

In packages/react/src/progress-indicator/ProgressIndicatorItem.tsxhttps://github.com/agriculturegovau/agds-next/pull/1569#discussion_r1506911546:

@@ -43,19 +43,19 @@ export interface ProgressIndicatorItemLinkProps extends LinkProps {

    background?: ProgressIndicatorBackground;

    /** Determines what style the item displays as.

     *

   * `blocked` = The user cannot start this step yet.

   * `blocked` = This step is not available yet for the user to do.

I just did some wordsmithing with Grammarly and I think these step descriptions read better:
blocked: This step is not available yet for the user to start.
started: The user has reached this step and begun working on it, but it still needs to be completed.
todo: The step is available for the user to start.
saved: The user has submitted valid data; however, the data still needs to be approved or verified. If no approval is required, use the done status instead.
done: The user has submitted valid data and it has been verified (where necessary). This step is complete.
error: There is an error on this step that requires attention.
I think it's worthwhile getting @adrian-yeehttps://github.com/adrian-yee's opinion before making any changes though

Reply to this email directly, view it on GitHubhttps://github.com/agriculturegovau/agds-next/pull/1569#pullrequestreview-1907809220, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFPCPU22LHG46K5XBCAF5X3YV2HOVAVCNFSM6AAAAABDZJMIWGVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMYTSMBXHAYDSMRSGA.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>------ IMPORTANT - This email and any attachments have been issued by the Commonwealth of Australia (Commonwealth). The material transmitted is for the use of the intended recipient only and may contain confidential, legally privileged, copyright or personal information. You should not copy, use or disclose it without authorisation from the Commonwealth. It is your responsibility to check any attachments for viruses and defects before opening or forwarding them. If you are not an intended recipient, please contact the sender of this email at once by return email and then delete both messages. Unintended recipients must not copy, use, disclose, rely on or publish this email or attachments. The Commonwealth is not liable for any loss or damage resulting from unauthorised use or dissemination of, or any reliance on, this email or attachments. If you have received this e-mail as part of a valid mailing list and no longer want to receive a message such as this one, advise the sender by return e-mail accordingly. This notice should not be deleted or altered ------

Update the status descriptions to these:
todo - "This step is available for the user to start."
started - "This step has been started and still needs to be completed"
done - "This step is complete. The user has submitted valid data and it has been verified (where necessary)."
saved - "This step has valid saved data that can still be changed"
error - "This step has an error that requires attention"


Vertical Nav: Error when collapsing vertical nav groups

Select one ...  (check one with "x")
[x] bug
[ ] feature request
[ ] enhancement

Expected behavior

Should be able to collapse expand vertical nav and should also be able to collapse/expand nav groups without errors.
Actual behavior

I'm getting this error when click on the collapse button of the vertical nav or when clicking the collapse button of one of the collapsible nav group .

Here's my code (but it also doesn't work even using the samples in the docs or even removing the router links):
<clr-vertical-nav [clrVerticalNavCollapsible]="collapsible" [(clrVerticalNavCollapsed)]="collapsed">
    <ng-container *ngFor="let page of pages | async" >
        <clr-vertical-nav-group *ngIf="page.subPages.length > 0" routerLinkActive="active">
            <a clrVerticalNavLink routerLinkActive="active" routerLink="{{page.route}}" [routerLinkActiveOptions]="{exact:true}">
                <clr-icon clrVerticalNavIcon [attr.shape]="page.icon && page.icon !== '' ? page.icon : 'user'"></clr-icon>
                {{page.name}}
            </a>

            <clr-vertical-nav-group-children *clrIfExpanded="true">
                <a clrVerticalNavLink *ngFor="let subPage of page.subPages"
                    routerLink="{{subPage.route}}"
                    routerLinkActive="active">
                    {{subPage.name}}
                </a>
            </clr-vertical-nav-group-children>
        </clr-vertical-nav-group>

        <a *ngIf="page.subPages.length === 0" clrVerticalNavLink routerLink="{{page.route}}" routerLinkActive="active">
            <clr-icon clrVerticalNavIcon [attr.shape]="page.icon && page.icon !== '' ? page.icon : 'user'"></clr-icon>
            {{page.name}}
        </a>
    </ng-container>
</clr-vertical-nav>

After the errors show up, collapse button stops working and you cant uncollapse/expand the nav groups.
Reproduction of behavior

Include a link to the reproduction scenario you created by forking one of the Clarity Plunker Templates:

I can't reproduce it in plunkr but I attached my project in this link: https://1drv.ms/u/s!AtSLmRewLjqRk_trUBaHr-7TbCZrEA I don't know if I'm missing something. Do you guys have any idea on this?
Environment details

Angular version: 4.2.6

Clarity version: 0.10.1

OS and version:

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 ]

@whizkidwwe1217: Which version of Angular are you using?

@adityarb88  I'm using Angular 4.2.6
dependencies": {
"@angular/animations": "4.2.6",
"@angular/cli": "^1.3.0",
"@angular/common": "4.2.6",
"@angular/compiler": "4.2.6",
"@angular/core": "4.2.6",
"@angular/forms": "4.2.6",
"@angular/http": "4.2.6",
"@angular/platform-browser": "4.2.6",
"@angular/platform-browser-dynamic": "4.2.6",
"@angular/router": "4.2.6",
"@ngrx/core": "^1.2.0",
"@ngrx/effects": "^2.0.4",
"@ngrx/store": "^2.2.3",
"@webcomponents/custom-elements": "^1.0.0-alpha.3",
"clarity-angular": "^0.10.1",
"clarity-icons": "^0.10.1",
"clarity-ui": "^0.10.1",
"core-js": "^2.4.1",
"intl": "^1.2.5",
"lodash": "4.17.4",
"modernizr": "^3.5.0",
"moment": "^2.18.1",
"mutationobserver-shim": "^0.3.2",
"prismjs": "^1.6.0",
"rxjs": "^5.4.2",
"wijmo": "third_party/wijmo/npm_images/wijmo-amd-min",
"zone.js": "0.8.6"
},

@whizkidwwe1217: Could you please upgrade to the latest angular (4.3 or above) and let us know if the issue still exists?

@adityarb88 Thanks. I upgraded to Angular 4.3.5 and the error is now gone.

Thats awesome. Closing the issue based on this.


Readme Update

Checklist

[x] I have searched for existing issues
[x] I have looked through the wiki
[x] I have updated MonitorControl to the latest version

Describe the bug
Brew has deprecated the install command style you have in the readme

To Reproduce
Steps to reproduce the behavior:

'Run the brew command to install noted in the readme'
See error

Expected behavior
No warning about deprecated commands
Screenshots

Additional context
Add any other context about the problem here.


Indexeddb limit

Why indexeddb is limited in size?
It is supposed to support 50mb in size minimum.

That's actually something that we should probably ask on browser vendors.
Could you also share the browser & version where the limitation affected you?

The IndexedDB size limits are largely set because it prevents browsers from asking for space (if you go over 50MB they used to) until you use more.
That said I think these days it doesn't even really matter, and browsers will ask for more space once you start using a lot of it.
We should probably check with vendors to see if we even need to do this anymore though, yeah.

Sorry for bad details and thx guys for quick report.
I know 50Mb firefox limitation.
But i'm on latest chrome and i have a weirdo behavior.
I'm using localforage to save arraybuffer.
And i don't know why, i'm limited to 50 entries inside my db.
If my arraybuffers are lower in term of bytes length it does not change anything.
Always 50 entries max.
Any advice?

Could you attach the code you’re using or a CodePen type example we could use to reproduce? I’m not sure what the issue would be from the description so it would help to try it out ourselves :-)


core: add #RmFile core action

Since we support creating files and directory with core.#WriteFile and core.#Mkdir, it's logic to also supports his reverse : remove files or dir.
Resolves https://github.com/dagger/dagger/issues/2408
Signed-off-by: Vasek - Tom C<EMAIL_ADDRESS>Question: How should we update core type reference or dagger-cue since this definition is not release for now?

@helderco when you have a moment, can you review and then merge if it is ok? Thanks!


[ISSUE #2148] Optimize hash ‘SelectMessageQueueByHash'  for Producer in order to select queue more balanced

What is the purpose of the change
feature #2148
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Coverage increased (+0.07%) to 51.295% when pulling 66420afe9f72455212f1e4869242bc5a09fdf713 on xiaobing395845388:master into fac30c3596d5577cd80a52af9ad89a0839016137 on apache:develop.

Can this pr be merged?


custom template doesn't compiled if it contains any directives

When I just want to give options.template to return a template html that contains directives, it doesn't take  effect or not compiled

Sorry - I don’t understand what you mean. Please can you provide an example (Plunkr or similar).

For your understanding, I have given the options.template value as like below
'''options.template = $interpolate(templateString, false),
Here the templateString contains directives, angular expressions. Angular expressions are transferred correctly but directives are not compiled to attach the behavior of the directive to the templateString

Do you have any solutions for this?

I've not had time to look at this, but as mentioned earlier, it would help if you can provide a plunkr. It would seem to me that if the problem is with $interpolate, then it's an angular issue?


Use Jest junit to report JS unit tests in Jenkins

Also set the root package for playwright tests to better distinguish the 2

Also set the root package for playwright tests to better distinguish the 2


Streamlit Interface 🚀📈

What is Needed
Contributors are needed to create a very user-friendly interface using streamlit that allows users to predict crime fatalities in Nigeria based on specific input features. The following independent features should be incorporated into the interface:

year
source
source_scale
location
interaction
actor1
month
admin2
admin1
event_type
time_precision
sub_event_type
actor2
inter2
inter1
geo_precision
civilian_targeting
disorder_type
notes

How to Contribute

Access the current script for the streamlit interface and implement your code changes.
Test your code: It is pertinent that you check your code runs smoothly before making a pull request.
Create a Pull Request: Submit a pull request to the repository with your code in the appropriate script and include any necessary
documentation.

Getting Started
Before you begin, ensure you have read the Contribution Guidelines in the repository.
We are excited to see your contributions! Happy Hacking! 🎉

Hey I am interested! Can I be assigned this issue?

Hey I am interested! Can I be assigned this issue?

You can go ahead and work on it @hriteshMaikap. We keep the issues open for whoever might be interested.

#26
Hello, I created a streamlit interface, please check.


Dark Mode for Activity page

This issue depends on #368 being completed.
When Dark Mode is on - the Activity page should look like this: https://mongodb.invisionapp.com/share/PCYZ6ZW7FR8#/screens/433591790_Boarding_-_Activity
Color key for light mode: https://mongodb.invisionapp.com/share/PCYZ6ZW7FR8#/screens/433591768_Color_Key_-Light_Mode
Color key for dark mode: https://mongodb.invisionapp.com/share/PCYZ6ZW7FR8#/screens/433591769_Color_Key-Dark_Mode
Component Color specs for light mode: https://mongodb.invisionapp.com/share/PCYZ6ZW7FR8#/screens/433591770_Component_Colors-Light_Mode
Component Color specs for dark mode: https://mongodb.invisionapp.com/share/PCYZ6ZW7FR8#/screens/433591771_Component_Colors-_Dark_Mode
Both dark and light modes should follow the color key and specs above (it is possible that the current light mode is not), and colors should be stored in:
app/src/main/res/values-night/colors.xml
app/src/main/res/values/colors.xml
Please make sure to TEST your build on a device or emulator to verify everything has changed - you can get a login and realm-app-id with easy instructions at https://wildaid.github.io/contribute/sandbox.html

Can I work on this?

Hello @ashwinpilgaonkar, thanks for offering to work on this! I have assigned it to you.

Hey @Sheeri looks like this page is already dark mode ready. Perhaps I could work on a different issue instead - such as https://github.com/WildAid/o-fish-android/issues/373

Will do. Closing this issue.....


Terraform on GCP

Hands-on with Terraform on google cloud

Start provision on GCP

Provision Kubernetes Cluster and a Google Cloud SQL - complete


uninitialized constant UsersController

When I navigate to the new invitation page, I'm seeing the following which is correct no issues here:
Started GET "/users/invitation/accept?invitation_token=zcpcZw5dGeWziL4rSta3" for <IP_ADDRESS> at 2012-02-27 19:43:33 -0800
Processing by Devise::InvitationsController#edit as HTML
  Parameters: {"invitation_token"=>"zcpcZw5dGeWziL4rSta3"}

However, after entering the password and clicking the submit button, it's navigating to the users controller when there's no users controller within the application.  Also, the documentation says that I should be redirected to the same page as if I was signing in.  Is this correct?
Started PUT "/users/invitation" for <IP_ADDRESS> at 2012-02-27 19:43:44 -0800

ActionController::RoutingError (uninitialized constant UsersController):

Here are the relevant routes and the last route in the last is failing:
accept_user_invitation GET        /users/invitation/accept(.:format)     devise/invitations#edit
           user_invitation POST       /users/invitation(.:format)               devise/invitations#create
       new_user_invitation GET        /users/invitation/new(.:format)      devise/invitations#new
                                    PUT        /users/invitation(.:format)             devise/invitations#update

OK, I was able to resolve this issue be doing the following:
users_controller.rb:
class UsersController < Devise::InvitationsController
end

routes.rb:
devise_scope :user do
  put "/user/invitation", :to => "devise/invitations#update"
 end

If there's a better way, I would be interested in hearing  your answers.

Have you overrided after_sign_in_path_for method?

Also, do you have a user controller? If you have resources :users in your routes above devise_for :users you will have routes like:
GET /users/:id  users#show
PUT /users/:id  users#update
....
PUT /users/invitation  devise/invitations#update
And /users/invitation will be routed to users#update
In that case move resources :users below devise_for :users

After moving the resources :users below the devise_for :users, this has resolved both issues that I was having.


Copy email with text when IOU settled message is copied

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/25567
PROPOSAL: https://github.com/Expensify/App/issues/25567#issuecomment-1686015974
Tests

From User A, request money from User B.
From User B settle the money request report
On the settled money request message, right-click (on the web) or long press (on mobile) and copy to the clipboard.
Now paste this text and verify it contains User A's name or email.
(Web Only) On the same settled money request message, hover over the message, click the copy icon from the mini context menu, and validate step 4.
In the LHN, validate that the report's last message does not contain User A's name/email.

[ ] Verify that no errors appear in the JS console

Offline tests

We need to have settled a Money request report online.

On the settled money request message, right-click (on the web) or long press (on mobile) and copy to the clipboard.
Now paste this text and verify it contains User A's name or email.
(Web Only) On the same settled money request message, hover over the message, click the copy icon from the mini context menu, and validate step 4.
In the LHN, validate that the report's last message does not contain User A's name/email.

QA Steps

Same as "Tests" section above

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
Chrome
https://github.com/Expensify/App/assets/68777211/b0b81b1e-843c-499d-b84b-32c773cc806a
Safari
https://github.com/Expensify/App/assets/68777211/48e3764a-c80e-45de-9711-fdf97c1f4a03

Mobile Web - Chrome
https://github.com/Expensify/App/assets/68777211/a6559a6b-a594-42ec-9475-980d57d2bb1c

Mobile Web - Safari
https://github.com/Expensify/App/assets/68777211/641bf7e4-becf-49c0-9f4a-77a96530ef2d

Desktop
https://github.com/Expensify/App/assets/68777211/5725d007-e8fb-4311-8597-c5399506c3a8

iOS
https://github.com/Expensify/App/assets/68777211/5876895a-2b4c-4ab8-ad2e-e677751725ae

Android
https://github.com/Expensify/App/assets/68777211/1936fe73-53ac-4da3-b52a-34773db1cda2

Thanks so much for your efforts @Ollyws and @huzaifa-99 ! 🙏
So sorry for the delay, but I should be back and ready to help push this forward :D
@huzaifa-99 again sorry for my delay, it looks like there's conflicts now 🙃

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/Beamanator in version: 1.3.72-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/thienlnam in version: 1.3.72-11 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Update to arrow 0.7.2

The project in a compile-able state.
Changes:

@json annotated data classes now require a companion object
Special cases had to be built into the meta-compiler here
Removed retrofit module because it relied on the implicit resolution. Retrofit relies on runtime reflection in order to work and there is no way to make it compile safe AFAIK.

TODO:

[ ] Improve special cases in meta-compiler

What still needs to be done before alpha release?

Remove arrow-optics dependency from core?
Update arrow-optics API to be closer to Optics DSL and work together with the Optics DSL.

Something we could do for the time being where we don't have true typeclasses is adding most common special cases to Encoder<A> as follows:
interface Encoder<in A> {
    fun A.encode(): Json
    fun Iterable<A>.toJson(): JsArray = JsArray(map { it.encode() })
    fun Option<A>.toJson(): Json = fold({ JsNull }, { it.encode() })
    fun Try<A>.toJson(): Json = fold({ JsNull }, { it.encode() })
}

This way we could check if F of Kind<F, A> is in the list of known special cases and simply use Encoder<A> for it. And if it is not known add it as a parameter.
Example of the case where Iterable, Try and Option are known special cases:
@json data class Friend(val _id: String, val tags: List<String>)
@json data class SpecialFriend(val _id: String, val errorOrTags: Either<Error, List<String>>)

fun Friend.toJson(): Json = ...
fun SpecialFriend.toJson(ENA: Encoder<Either<Error, List<String>>>): Json = ...

Side-note: While I think this is a nice solution for Encoder, offering the functions in Encoder instead of keeping them in the meta-compiler, we cannot do this for Decoder and will have to build in the special cases there.

@nomisRev Is this finished? How can we help?

@nomisRev

I made an attempt to discover supertypes of params but failed..
This should be now possible with arrow-meta in a pretty straightforward way.
Let me know if I can help but it'd be something along the lines of:

param.type.asType().superTypes()

If you are in the context of a sub type of MetaProcessor

@AdrianRaFo @raulraja the problem lied with the meta compiler. More specifically when generating encoders/decoders for product types that depend on other encoders/decoders such as List<String> or Option< List<String>>.
@json data class Friend(val _id: String, val tags: List<String>)
@json data class SpecialFriend(val _id: String, val errorOrTags: Option< List<String>>)

I am unsure how to safely generate encoders for these product types.
Beside that this PR is ready IIRC.

I created an issue for that https://github.com/47deg/helios/issues/24 so we can merge this


page.copy to use exclude_fields_in_copy for child & parental m2m relations

Fixes #5099
Ensure that exclude_fields_in_copy can be used to also 'exclude' copying child relations and parental many to many relations.

Do the tests still pass? 👍
Does the code comply with the style guide? 👍
For Python changes: Have you added tests to cover the new/fixed behaviour? 👍
For new features: Has the documentation been updated accordingly? N/A

keen to get someone to take a look at this one, would you be able to @ababic ?

@ababic update made

LGTM. Just a wee formatting thing in flake8 to squash :)

Merged in via https://github.com/wagtail/wagtail/commit/ce815a5f0007fe9be77c20f569e0e28273046342


[WIP] Add the timeframe to the page

Shows the time period that the data relates to on the page.
TODO

[ ] Styling.

Was implemented in https://github.com/alphagov/gsd-view-data/pull/53


Revert "Making sidebar of /developers sticky on Desktop"

Reverts joemasilotti/railsdevs.com#670 from @5andu.
Unfortunately when the sidebar is taller than the screen you can't get to the submit button without scrolling the entire developer list.

Yes my bad, I just realized it too! :)


High CPU usage when idling

python3 -m swagger_server seems to be spinning CPU at 100% usage even when it is doing seemingly nothing.

CPU core count and memory increased on aw-sdx-controller.renci.ben
Current settings shown on the attached screenshot below.
I started the docker containers. They're showing the following stats
CONTAINER ID   NAME                              CPU %     MEM USAGE / LIMIT     MEM %     NET I/O         BLOCK I/O     PIDS
51324ee621bf   sdx-controller_sdx-controller_1   0.01%     56.32MiB / 15.43GiB   0.36%     2.64kB / 474B   142MB / 0B    2
a22b0847de51   sdx-controller_bapm-server_1      99.89%    17.68MiB / 15.43GiB   0.11%     0B / 0B         9.21MB / 0B   1


Add support for custom fields

A couple of changes coming in.
Opening PR so that reviews can start

Coverage decreased (-0.08%) to 93.35% when pulling ce2c1b5a40d58714d30bcc3a6f6b290e289f7810 on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

Coverage decreased (-0.1%) to 93.333% when pulling ce2c1b5a40d58714d30bcc3a6f6b290e289f7810 on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

Coverage decreased (-0.1%) to 93.333% when pulling f84374684822f7786b828008034a809bca75fb94 on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

Coverage decreased (-0.3%) to 93.154% when pulling a1c15728d7da49ee5502a20a0c882b0ed19365c1 on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

PR ready to be reviewed @emmenko @PhilippSpo

Coverage decreased (-0.2%) to 93.187% when pulling 3aef3014d08dc0ab8b9d5407b77b5be17983faa6 on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

Coverage decreased (-0.2%) to 93.187% when pulling c36ccaa735e7d418058ab7d5844e62f23bd1bf19 on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

Coverage decreased (-0.01%) to 93.418% when pulling 64b1f7fa733b2e345b31331270984c42b9523aca on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

Coverage increased (+0.05%) to 93.484% when pulling 9ea62ba199498216db8b4befdfd02f395beaff7a on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

Everything related to elastic.io can be removed within the code.

Coverage decreased (-0.01%) to 93.418% when pulling 55be72762f312d47e1ed93a6528b86880ee6085c on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

Coverage increased (+0.004%) to 93.434% when pulling bafa4604cf4021b1782af093a14af3b3ffecd644 on add-custom-fields into 1771e2e722d42c48d5a880c4d120a597ef7f39f5 on master.

@emmenko @PhilippSpo please take a final look. 🔬


Uploading Feature on new App not working, even after 30 "Fixes" to try and resolve it.

Describe the bug
Created a page with an upload pictures to the page feature, but when I click upload picture, I can find the picture, but "Uploading" stays on the screen, but nothing happens.  I've tried fixing the issue asking it roughly 30 times to fix it somehow, but not able to resolve.
Link to the Bolt URL that caused the error
Unknown
Steps to reproduce
Go to Mood Board page, click "upload images", and then "uploading" just spins and spins and nothing is every uploaded or displayed.
Expected behavior
To upload, and display the picture on the page.
Screen Recording / Screenshot

Platform

OS: [e.g. macOS, Windows, Linux]
Browser: [e.g. Chrome, Safari, Firefox]
Version: [e.g. 91.1]

Additional context
No response

Appreciate the feedback! While we would love to individually help our users resolve programming challenges, unfortunately, the resources required don't make that a possibility. You can read more here: #2310 on steps to take to continue developing your project. The Bolt Help Center also contains a number of resources on using Bolt most effectively, including database integration. Hope this helps!

I know this is closed, but wanted to pass on the fix that was done to resolve this...
Attached

is the screenshot of what it did...basically bypass Firebase, and it worked fast and smooth.

Appreciate you sharing the additional feedback!