Scripts folder generated one level up from Project root

Hi there, when I run the default gulp task from my project directory, a scripts folder with main.min.js within it is generated a folder level above the root of my project directory. Is this expected? Cheers.

I'm getting this as well... trying to find a fix now...

@dspice & @garyterry,
I've confirmed that this is happening and I have submitted a pull request with
a fix (PR #849). Hopefully, by chance, nothing was overridden in your parent
folders.

Same problem here @addyosmani

Same here.
Would using a custom block be an acceptable solution?

Hey folks (@neolwc, @MinnSoe, @garyterry). Sorry you ran into this issue. Before I merge in the suggested fix for this, could you confirm what OS you're running into this issue on? On OSX 10.11.4, the current behaviour does not appear to generate this file a few levels up but I'll wait on a confirm then work on reproducing.

Occurs on Linux Mint 17.3 for me.

Does the fix in https://github.com/MinnSoe/web-starter-kit/commit/bd3db1a52d0d4dd91390af3d4a0692cd45db463e address this for those that are running into this problem?

It does here @addyosmani.

@addyosmani, I'm on OSX 10.11.5 and it looks like PR #853 on master works for me. @Tempurturtul, does master work for you on LM 17.3? I'm pretty sure it's good to close.

@MinnSoe, master is working for me on LM 17.3 and on Ubuntu 14.04. I think it's good to close too.

Awesome. Thanks everyone!


Add foreign members to each GeoJSON type

https://github.com/dartclub/turf_dart/blob/bb33084f010b1676f3e88eb5342d86f925f66b61/lib/src/geojson.dart#L466

[ ] fields
[ ] id

[ ] Point
[ ] MultiPoint
[ ] LineString
[ ] MultiLineString
[ ] Polygon
[ ] MultiPolygon
[ ] GeometryCollection
[x] Feature
[ ] FeatureCollection

I'm closing this here, as this will be followed up in https://github.com/dartclub/geotypes/issues/4


Support 32-bit targets

To properly support them we need to setup CI for these targets

I'm working on this. There's an issue with how sNaN is interpreted and I haven't found the cause yet

Right, so I found the cause of the failures: when compiled for i686 (which is the 32-bit system I was using) the tests fail because the bit-level representation of floats is wrong. The IEEE754 spec allows NaNs to be quieted at basically any time but the WASM spec specifies that they may not be quietened when converting to and from i32, only when doing operations like multiplication. Unfortunely, on x87 LLVM will sometimes use the x87 float register stack to pass floats in and out of functions, using fld to push it on the callee and fstp to pop it on the caller. Unfortunately, these operations can and do mask the signalling bit. It works on x86_64 because the floating-point register stack was not inherited from x87 and it appears that it just uses %eap to return floats like it would return any other value.
The only solution I can see for this is to internally use integers to store floats, converting them to/from floats when doing * and /, but not when doing unary negation. In the long-term it might be better to use soft floats, since that would mean that we wouldn't have to disallow floating-point operations in the Polkadot WASM VM.

Another possible approach is to build i686 builds with -C target-feature=+sse2 .
Beyond sNaNs, x87 also rounds some arithmetic results differently, due to double rounding, and WebAssembly's testsuite is designed to detect such differences. There are techniques for adjusting the rounding, though it's simpler if you can avoid having to.

target-feature works for i686 but is not a generic solution. We should really only rely on behaviour specified in IEEE754 (so Neg::neg/abs should be implemented using integer masks etc.)

If you're planning to support x87 floating-point, also be aware that x87's mul and div sometimes round differently on x87 than WebAssembly requires, even if you store the values between every operation, and even if you configure the x86 control register to 64-bit precision mode.

If that is the case, then there are no tests for it so far.

The spec testsuite's float_misc.wast has eg. this and this which should show it.

float_misc succeeds on i686

Other implementations fail on those tests when using with x87 arithmetic. I don't know what wasmi is doing differently that allows it to pass.

With cargo test --target i686-unknown-linux-gnu --features opt-in-32bit --no-fail-fast, float_misc.wast passes for me. It appears Rust enables SSE2 by default.
With SSE2 disabled, via RUSTFLAGS="-C target-feature=-sse2" cargo test --target i686-unknown-linux-gnu --features opt-in-32bit --no-fail-fast, float_misc.wast fails for me, with a rounding difference:
Line 58:
thread 'spec::wasm_float_misc' panicked at 'assertion failed: `(left == right)`
  left: `F64(1.0)`,
 right: `F64(1.0000000000000002)`', tests/spec/run.rs:375:54

(this is just the first difference; other tests in float_misc.wast will also round differently too).

Guess we need to reopen then.

I think enforcing SSE2 arithmetic is reasonable for now, but we'd probably want to emulate it down the line. Fixing floats on x87+SSE2 is a fix for the vast majority of 32-bit x86-family CPUs out there. There hasn't been an x86 CPU without SSE2 since 2001 as far as I can tell (apart from a 2013 microcontroller but I can't imagine that x86 microcontrollers are flying off the shelves)

So, is there a way to sort this for a 32bit x86 CPU? Trying to set up on an old Acer Aspire one as only spare I can run 24/7 with Linux (Debian) on.

32 bit targets are not supported at the moment. You can use '32bit_opt_in' feature. See https://github.com/paritytech/wasmi/issues/43

It should now work on post-2003 x86 CPUs (i.e. those with SSE2, if your CPU can build and run Rust programs with no custom configuration then this includes you). Maybe you need to run cargo update -p wasmi and if that doesn't work then we need to push a new version.

Can you tell me where I need to run that update command from please. I have to CD to a directory with a Cargo.toml file or it won't run - I've tried a few places (lots of Cargo.toml files) but when compiling it still says wasmi V 0.1.3 and not the latest (0.2.0). It's an intel Atom N270 cpu - supports SSE2.

cargo update will only update to compatible versions. Your Cargo.toml should specify a version for wasmi that is compatible with 0.2.0. Probably your Cargo.toml says wasmi = "0.1" or wasmi = "0.1.3", change that to wasmi = "0.2".

You've got the Cargo.lock file in /Polkadot Master that refers to wasmi v0.1.3 several times then the Cargo.toml in /Polkadot Master/Polkadot/Parachain that mentions wasmi v0.1 under dependancies... So edit what and run the update from where?

OK, so I've edited all .toml and .lock files - and it looks like only wasmi v0.2.0 is going to compile - but now get this:
error[E0308]: mismatched types
  --> substrate/primitives/src/sandbox.rs:97:49
   |
97 |             TypedValue::F32(v_bits) => RuntimeValue::F32(f32::from_bits(v_bits as u32)),
   |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `nan_preserving_float::F32`, found f32
   |
   = note: expected type `nan_preserving_float::F32`
              found type `f32`

error[E0308]: mismatched types
  --> substrate/primitives/src/sandbox.rs:98:49
   |
98 |             TypedValue::F64(v_bits) => RuntimeValue::F64(f64::from_bits(v_bits as u64)),
   |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `nan_preserving_float::F64`, found f64
   |
   = note: expected type `nan_preserving_float::F64`
              found type `f64`

If you're playing with Polkadot, then you can easily replace this code with unimplemented! macro. I think this is the easiest way.
Eventually, we need to migrate Polkadot to wasmi 0.2.0 though.

Meh - looks like I'll have to install a VM on my Windows desktop...


Check reports Missing Pack files backing up to B2

Output of restic version
restic 0.7.2
compiled with go1.9 on linux/amd64
How did you run restic exactly?
usr/bin/restic -r b2:personal-restic-backup:/restic-repo check
What backend/server/service did you use?
B2
Expected behavior
No Errors
Actual behavior
pack ad6651849f222e209464bed14edfdb6a69b8f13abcd55a7b6697ee21560031d0: does not exist
pack c83030497cdf9db321cee7244555226dd82d04ba6fa4b147a694511bd9e4b580: does not exist
pack 8601d322c5af3e58f88b9f2b95a32385a86be35d1182b4f5b0b4a5cdcacac50a: does not exist
Steps to reproduce the behavior
Do you have any idea what may have caused this?
I stopped a backup half way through, because I changed some options, then restarted it.
Do you have an idea how to solve the issue?
How can I get those pack files back? how can I tell what files they affect?

Hu, hm. That's unexpected. Can you please use restic 0.7.3, run restic rebuild-index and then run restic check again? Please report back with the complete output of restic check.

I got this doing rebuild-index, I guess my internet dropped out or B2 had a problem. I am running it again and will post the output if check tomorrow
counting files in repo
pack file cannot be listed 20f9dade: Stat: unexpected end of JSON input
pack file cannot be listed 21c3758f: Stat: unexpected end of JSON input
pack file cannot be listed 985bfb02: Stat: net/http: TLS handshake timeout
pack file cannot be listed 985d6331: Stat: net/http: TLS handshake timeout
pack file cannot be listed 99ba126c: ReadAt: net/http: TLS handshake timeout
pack file cannot be listed 99c3ced2: Stat: net/http: TLS handshake timeout
pack file cannot be listed 99bb981a: ReadAt: net/http: TLS handshake timeout
pack file cannot be listed 99e89266: ReadAt: net/http: TLS handshake timeout
pack file cannot be listed 99e9641d: ReadAt: net/http: TLS handshake timeout
pack file cannot be listed 9a988b11: Stat: net/http: TLS handshake timeout
[9:44:17] 100.00%  60341 / 60341 packs

Ok now running rebuild index got this output
counting files in repo
pack file cannot be listed 230c9a59: Stat: unexpected end of JSON input
pack file cannot be listed 36d68821: Stat: unexpected end of JSON input
[12:50:54] 100.00%  60341 / 60341 packs
finding old index files
saved new index as a14128ae
remove 1 old index files
about to start restic check

We've just now discovered a bug within the library we're using to access B2, that's tracked in #1291

The fix has been merged into the master branch, I'm therefore closing this issue. Can you please try again and report back? Thanks!

Will do, for the record I got his output from check
Create exclusive lock for repository
Load indexes
Check all packs
pack 1e67b38eb0fedebfaaf5b1a19417ba8c71e05298ce46c4e0fcbc44503bf4e905: does not exist
pack 797db6e56c03966810a6d03af5fa6abcab6d0cd67e97329c6b6da951fc26faa0: does not exist
pack 849683f5ee462c0bbb7df2e8adc76edb6b84aa01828281f21263d6c0753a2a03: does not exist
pack 230c9a5980da4b52cfc1045b9f0c6dbba89d1f788b5120cecd447ff4c186eea9: not referenced in any index
pack 36d6882159e23baa4576c8c6beee1d3a77694c89eb43be29104f39bc90115fe0: not referenced in any index
Check snapshots, trees and blobs
error for tree 22006a21:
tree 22006a21, blob 96ca534d: not found in index
tree 22006a21, blob 6e6fc51d: not found in index
tree 22006a21, blob 378a4837: not found in index
error for tree 83230643:
tree 83230643, blob afd1e996: not found in index
tree 83230643, blob 06cf5f80: not found in index
tree 83230643, blob 6176ed7f: not found in index
tree 83230643, blob 2d99315c: not found in index
Fatal: repository contains errors


fps: Can now process multiple 'view' attributes

Previously fps only captured a single 'view' attribute given to it by the workload.
This change allows you to pass a list of 'views' and the latency command will be run for every view in the list - if that view is currently visible.

Done


Move changelog higher in the readme.

Codecov Report

Merging #240 (921f09b) into master (e4d2892) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #240   +/-   ##
=======================================
  Coverage   89.46%   89.46%
=======================================
  Files          16       16
  Lines         579      579
  Branches      144      144
=======================================
  Hits          518      518
  Misses         55       55
  Partials        6        6

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Unknown tag name "endautoescape"

I had a complex email template which I refactored a bit... then I made a mistake and removed an {% endif %} statement... the reported error was Unknown tag name "endautoescape" in {} at line *.
Here is an example template which will report the same error:
{% autoescape false %}
{% if 1 %}
{% endautoescape %}

I don't know if it would be possible to create a better error message in such a case?

Which version of Twig are you using (the version is available as a constant in the Twig_Environment class). This error message has been improved in the latest releases so I suspect you are using an older one (otherwise we have a bug in the error message)

I used the one shipped in Symfony2 v2.0.4...
[twig]
    git=http://github.com/fabpot/Twig.git
    version=v1.1.2

twig 396435ecd05556adb0a8bd05b14641cb4f8a8aa5

After updating to the latest version this error is reported:
Unexpected tag name "endautoescape" (expecting closing tag for the "if" tag defined near line *) in {} at line *

So this is a non-issue, closing... thx @stof!


In order to fix #30

It is probably better to not have these settings in there by default as they are insecure and cause problems.

Hi Maurits!
We had some issues in other bundles due to the same setting, and this definitely fixed it. I will merge it when I arrive to the office and I will check if there are other bundles that still have the same issue.
Thanks!

Great! Please ensure that you release as well (under "releases" in Github) otherwise people with composer will not benefit. Thank you.

Hi @mevdschee I have created a new release including your bugfix. Thanks a lot to you and @sam0737 for the contribution! 😄

Thank you @GabrielAnca


can not delete ssh connection

can not delete ssh connection or modify ssh port if you have already saved it.

To delete an SSH connection, go to "edit connection settings" and then click on "archive connection".  you can't modify an existing connection's user, host, or port.  so once you archive it, you can recreate it with the right port.

thanks very much.

Moved the delete button to be more visible in v0.5.1


improve readme_cn

PR Checklist

[ ] Fix linting errors
[ ] Label has been added

Change information

https://github.com/berubou/simpler-paper/blob/docs/README_CN.md

Great!
👍


q1 == q1 but hash(q1) != hash(q2)

I'm having trouble reproducing this, but I'm in a situation where the thing in the title is happening with GridQubit. I've narrowed it down to the fact that the cached cirq.GridQubit._hash values are different and recomputing them with cirq.Qid.__hash__(q1) gives correct, identical hash functions.
My leading theory is that I'm loading a previously-pickled gridqubit, a copy is being made somewhere and the hash is recomputed. The hash value of Qid (the class) is part of the hash input, which could differ over python instantiations

xref https://github.com/quantumlib/Cirq/pull/3375
relevant: https://docs.python.org/3/library/pickle.html#handling-stateful-objects

We should probably make the hash deterministic, e.g.
self._hash = hash(self.row) ^ hash(self.col)


Make st2-run-pack-tests install dependencies only on virtualenv creation

A pack developer needs a faster way to run tests.
When running without -x (the first time), setup everything.
On subsequent runs, provide -x, activate the virtualenv, skip dependencies, and just run tests.
Sample output:
$ /opt/stackstorm/st2/bin/st2-run-pack-tests  -p /opt/stackstorm/packs/csv/
Running tests for pack: csv
Creating virtualenv in /tmp/st2-pack-tests-virtualenvs/csv...
New python executable in /tmp/st2-pack-tests-virtualenvs/csv/bin/python
Installing setuptools, pip, wheel...done.
Requirement already up-to-date: pip in ./st2-pack-tests-virtualenvs/csv/lib/python2.7/site-packages
Installing dependencies from st2 repository...
Installing global pack test dependencies...
Running tests...
test_run_comma_delimiter (test_action_parse.ParseCSVActionTestCase) ... ok
test_run_pipe_delimiter (test_action_parse.ParseCSVActionTestCase) ... ok

----------------------------------------------------------------------
Ran 2 tests in 0.352s

OK

$ /opt/stackstorm/st2/bin/st2-run-pack-tests  -x -p /opt/stackstorm/packs/csv/
Running tests for pack: csv
Activating virtualenv in /tmp/st2-pack-tests-virtualenvs/csv...
Running tests...
test_run_comma_delimiter (test_action_parse.ParseCSVActionTestCase) ... ok
test_run_pipe_delimiter (test_action_parse.ParseCSVActionTestCase) ... ok

----------------------------------------------------------------------
Ran 2 tests in 0.323s

OK

Current coverage is 77.33% (diff: 100%)

Merging #3144 into master will decrease coverage by 0.01%

@@             master      #3144   diff @@
==========================================
  Files           430        430
  Lines         22166      22166
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits          17143      17140     -3
- Misses         5023       5026     +3
  Partials          0          0

Powered by Codecov. Last update c851a6b...f019a48

To give some background - we are intentionally installing dependency each time because they can change and we always want to use the latest and correct version (that's also important for CI of course).
The problem of "installing dependencies is slow" is "solved" on the CI by caching the dependencies on each build. Same thing should also happen by default locally - it will still take a while because cache needs to be read, etc. but it will be much faster than without using a cache.
I'm fine with this change as long as we add a flag or similar which causes all the dependencies to be (re)installed and update affected docs and CI.

Also, congrats on your first PR in 2017 :champagne:

Before I redo it with an extra flag:
is there a better direction for a pack developer writing unit tests?
The current one (or at least what I figured, as we don't have it documented yet) will require a user to 1) git clone http://.../st2.git /tmp/st2 2) export ST2_REPO_PATH=/tmp/st2
If not too hard, I'd rather spare them from this setup step, assuming they do the tests on machine with st2 already installing. Give me a hint I'll explore.

If st2 is already installed, they just need to ensure st2 components are in PYTHONPATH.
This basically means they can just use /opt/stackstorm/bin/st2-run-pack-tests binary and it should already work (it's using binary from stackstorm virtualenv so all the components should already be in PYTHONPATH).

And if the written above is not totally clear from the documentation we should improve it and add it there :)

This basically means they can just use /opt/stackstorm/bin/st2-run-pack-tests binary and it should already work

Either I miss something, or the script is not built this way:

it relies on ST2_REPO_PATH to install st2 requirements into the virtualenv;
$PYTHONPATH is not set on my system after installing st2 and I afraid it's not supposed to, so this assumption may only hold true for st2 dev env, not for pack dev env (think st2vagrant).

And if the written above is not totally clear from the documentation we should improve it and add it there :)

Bummer: This page is not visible in TOC https://docs.stackstorm.com/development/pack_testing.html and I can't figure why. I was not able to find the page until today.
I suggest we take this as an opportunity and drive to fully documented pack unit-testing. CC @Mierdin

Yeah, sorry, I need to clarify it better. I was talking about PYTHONPATH used by st2 components (st2-run-pack-tests) and the one used by the pack.
So you have multiple options:
1.Let the script create virtualenv for you - the best approach for dev environment and testing, imo, since it doesn't mess up with StackStorm pack virtualenv (you don't really want to install test dependencies into StackStorm pack virtualenv). That's also the default option used by the st2-run-pack-tests script.
2. Create virtualenv manually yourself - this way you can control caching, etc. That's what we do on CI to speed things up.
3. Re-use StackStorm pack virtualenv (/opt/stackstorm/virtualenvs/<pack name>). As mentioned above, I'm personally not a fan of this approach since it's messing with pack's virtualenv and also installing test dependencies there.
Re TOC - yeah I noticed recently, it probably got away while we were re-organizing it for BWC...

Just jumping in to provide some friendly feedback and not trying to be nosy. I think the test script should create a separate venv for testing per pack. If test venv doesn't exists, just create and install deps. If test venv exists, use the existing venv but update the deps.  Always let user know where the test venv is located and how they can recreate it manually in case it gets messed up.  As for deps to st2common and st2tests, add it to the PYTHONPATH somehow (disclaimer, haven't tested this last part so just feedback based on code).

I think the test script should create a separate venv for testing per pack. If test venv doesn't exists, just create and install deps. If test venv exists, use the existing venv but update the deps. Always let user know where the test venv is located and how they can recreate it manually in case it gets messed up.

That's exactly the default behavior right now :)

Also, may be helpful to add a CLI args to let user disable updating venv if exists to run tests faster if they know req hasn't changed.

That's basically what @dzimine wanted to achieve with his PR, but I described my reasoning above why this might be problematic, at least for the default behavior.

As for deps to st2common and st2tests, add it to the PYTHONPATH somehow (disclaimer, haven't tested this last part so just feedback based on code).

Yes, as described above, either use st2 components which are installed using packages (use that PYTHONPATH) or clone git repo and add components from there to PYTHONPATH - that's what we do in CI right now to make sure we always use latest version of StackStorm.

Here are my thoughts after spending .5 day on this or so.
It seems there's not a consistent developer experience between pack development and st2 development in general. St2 devs are encouraged to use make requirements && launchdev.sh, but for pack development, it seems that the st2 libraries must be installed on the system itself. Following [the instructions for testing a pack](https://docs.stackstorm.com/development/pack_testing.html did not result in success for me. There are a few things missing there:

I think it should be stated clearly what needs to be installed, and where. Even after running make requirements, and then following the documentation, it was still asking for stackstorm libs (i.e. st2tests, st2common, etc). If the "canonical" approach is to test within st2vagrant (and as a result, stackstorm should actually be installed at a system level, we should at least state it (though I still disagree with this constraint because again it seems to be contrary to the mobility offered via the launchdev.sh approach)
There's no mention of ST2_REPO_PATH anywhere in that doc - @dzimine had to tell me about it

There are a number of virtualenvs in use here, and I would think that it would be easier to simply ensure that all of the stackstorm libs (st2common, etc) are installed there alongside all of the other pack dependencies when /tmp/st2-pack-tests-virtualenvs/<pack> is set up.

We miss st2tests module on the "normal user's" machine, along with it's dependencies.
Everything else can be made working by a script.
What are our options here?

getting st2tests from github by a script, seting PYTHONPATH, and installing test-requirements? Dirty hack IMO. On the other hand, users will have to do exactly this as of today, anyways.
installing st2tests with st2 and adding what's missed (like psutils) to PACK_TEST_PYTHON_DEPENDENCIES?
moving all pack dev dependencies to st2sdk as @m4dcoder brought up earlier - what ARE "all" dependencies? But what ARE they exactly? And again, installing st2sdk with st2 along with test-requirements?
What else? What do you guys think?

This needs a fix: unittesting flow for st2 user (not st2 developer) is not working ATM, and to get unit tests we shall have no friction.

I think we are trying to fix a lot of things in one go. The only we should have right now is to enable easy pack testing in st2vagrant environment (as @dzimine has pointed out). st2vagrant comes with st2 installed but it doesn't contain st2tests from st2 repo as it's not part of packaging. I think we have two options 1. Push a st2sdk with artifacts from st2tests and st2common to pypi (Likely 2 weeks of work easily looking at st2common. We've always wanted to do this for various reasons.) 2. Just git clone st2repo and setup virtualenv and PYTHONPATH. I lean towards (2). This is probably 2 days of work and will not change much. There are several ways to optimize this path like @Kami has pointed out. I'd go with two virtualenvs created by the script A. st2 parent virtualenv where st2 artifacts are available and B. Pack's test virtualenv (pack dependencies + pack test dependencies). PYTHONPATH now has to include both (A) and (B). git clone could be git pull if we already know there is a cloned dir. Those are optimizations. Let's revisit to see if the slowness is indeed a real issue.

We miss st2tests module on the "normal user's" machine, along with it's dependencies.

Now that StackStorm components are installed inside a virtual environment, I see no more issues with including st2tests package as part of the official StackStorm packages / distribution.
This could only become problematic in case user, for some reason, wants to use latest version from git (we would just need to document how to handle that scenario by putting package from git as a first entry of the PYTHONPATH).

Ok file updated now, bringing it back to life.
I am so irritated by waiting for python dependencies to update.
With a new parameter the existing CI won't be affected.
This will help folks (and keep me sane) right now.
Usage: ./st2-run-pack-tests [-x -s] -p <path to pack>
  -x : Do not create virtualenv, e.g. when running in existing one.
  -j : Just run tests (use previously installed dependencies
       and virtualenv if any. For subsequent test runs.

@dzimine On a related note - when I just want to run a single test or tests from a single file and pack dependencies are already installed in the currently used virtualenv, I just use this command:
PYTHONPATH=packs/time/actions:$PYTHONPATH nosetests -v --nocapture packs/time/tests/test_action_get_week_boundaries.py

In short, as mentioned above, you just need to add pack actions directory to PYTHONPATH (or sensors for sensors).

But as far as -j flag goes and your change - I'm fine with that change and will have a look at the code change later.

The tests are failing, it looks like you need to sync your branch with the latest master to pick up the Mistral changes.

Made a minor change so we only activate virtualenv if it doesn't exist - dd577c13dd60ae0511a01e1f7c1216ee18829e12.
Before your change, specifying -x flag would mean it doesn't create and not activate the virtualenv, but it would just try to install dependencies inside the current PYTHONPATH (or virtual environment if one is activated).
With this change, we also support running pack tests outside a pack-specific environment. I do this often - I tend to have one virtual environment which contains dependencies for all st2 components + various packs and I just want to re-use that (aka don't want to activate and update pack specific virtual environment).
I think this should be sufficient for v2.2.0 and we can make additional improvements and fixes in v2.2.1 if needed / necessary.
Will also open separate PR with docs, but we can also do this post v2.2.0 release since merging docs in v2.2 branch will cause build to happen and to docs to be automatically updated so it's not a blocker for v2.2.0.


Links manually added in HTML tables don't work properly

Example:
http://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/endpoints/#marketorders
The superscript links in the "Result Data" section are supposed to link to other pages, but they fail because the live site adds "latest" to the link but the dev site doesn't have this.  So the link:
http://eveonline-third-party-documentation.readthedocs.org/en/xmlapi/enumerations/#order-state
fails because it should be:
http://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/enumerations/
Probably works fine if these are markdown tables instead.

This was fixed in #24


Carthage update fails

Issue type
Incorrect behavior
Description of the problem
Build fails
             SRGLetterboxViewManager.h       SRGLetterboxViewManager.m       Srgletterbox.xcodeproj          Srgletterbox.xcworkspace        build
Sebastiens-MacBook-Pro-6:ios seb$ cat >> Cartfile
github "SRGSSR/srgmediaplayer-apple"
Sebastiens-MacBook-Pro-6:ios seb$ carthage update --configuration Release-static
*** Cloning srgmediaplayer-apple
*** Cloning srglogger-apple
*** Cloning MAKVONotificationCenter
*** Cloning libextobjc
*** Checking out MAKVONotificationCenter at "1.0_srg4"
*** Checking out libextobjc at "0.6_srg2"
*** Checking out srgmediaplayer-apple at "5.0.0"
*** Checking out srglogger-apple at "2.0.1"
*** xcodebuild output can be found in /var/folders/33/6ggld9410xj4dz254q1zwpjr0000gn/T/carthage-xcodebuild.e29684.log
*** Building scheme "libextobjc framework (tvOS)" in extobjc.xcodeproj
Failed to write to /Users/seb/Documents/rts/rn/react-native-srgletterbox/ios/Carthage/Build/tvOS/Static/libextobjc.framework: Error Domain=NSCocoaErrorDomain Code=260 "The file “libextobjc.framework” couldn’t be opened because there is no such file." UserInfo={NSURL=file:///Users/seb/Documents/rts/rn/react-native-srgletterbox/ios/Carthage/Checkouts/libextobjc/build/ArchiveIntermediates/libextobjc%20framework%20(tvOS)/BuildProductsPath/Release-static-appletvos/libextobjc.framework, NSFilePath=/Users/seb/Documents/rts/rn/react-native-srgletterbox/ios/Carthage/Checkouts/libextobjc/build/ArchiveIntermediates/libextobjc framework (tvOS)/BuildProductsPath/Release-static-appletvos/libextobjc.framework, NSUnderlyingError=0x7ff213f36f20 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

Environment information
xcode 11.6
carthage 0.35.0
Reproducibility
Always reproducible

Same result with Dynamic framework carthage update

I must have missed something:
I also have this issue when simply doing:
git clone git@github.com:SRGSSR/srgmediaplayer-apple.git
carthage update

-->
*** Checking out MAKVONotificationCenter at "1.0_srg4"
*** Checking out libextobjc at "0.6_srg2"
*** Checking out srglogger-apple at "2.0.1"
*** xcodebuild output can be found in /var/folders/33/6ggld9410xj4dz254q1zwpjr0000gn/T/carthage-xcodebuild.lZGNbU.log
*** Building scheme "libextobjc framework (tvOS)" in extobjc.xcodeproj
Failed to write to /Users/seb/Documents/rts/rn/ios/srgmediaplayer-apple/Carthage/Build/tvOS/libextobjc.framework: Error Domain=NSCocoaErrorDomain Code=260 "The file “libextobjc.framework” couldn’t be opened because there is no such file." UserInfo={NSURL=file:///Users/seb/Documents/rts/rn/ios/srgmediaplayer-apple/Carthage/Checkouts/libextobjc/build/ArchiveIntermediates/libextobjc%20framework%20(tvOS)/BuildProductsPath/Release-appletvos/libextobjc.framework, NSFilePath=/Users/seb/Documents/rts/rn/ios/srgmediaplayer-apple/Carthage/Checkouts/libextobjc/build/ArchiveIntermediates/libextobjc framework (tvOS)/BuildProductsPath/Release-appletvos/libextobjc.framework, NSUnderlyingError=0x7fab5cd64b00 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

Hi!
Just tested with Xcode 12 beta 2 (don't have 11.6 yet, but I'll download it and test again). The first example you provide:
carthage update --configuration Release-static

works fine on my machine 😈
Maybe this is related to Xcode 11.6. We had to fix a build issue for 11.4, so I wouldn't be surprised if this was the case.
In the meantime, I propose you just try a Carthage cache cleanup with the command rm -rf Carthage; rm -rf ~/Library/Caches/org.carthage.CarthageKit executed from the repository main directory. Then try again.
If you also don't need the tvOS build, you can only build for iOS with the --platform iOS parameter. I also recommend enabling the new Carthage resolver and build caching, so in general:
carthage update --cache-builds --new-resolver

Let me know if this works for you, otherwise I'll try with 11.6 tomorrow.

Thanks for the feedback Sam !
Sadly I had already tried some combination of what you proposed here.
My latest attempt:
Sebastiens-MacBook-Pro-6:srgmediaplayer-apple seb$ rm -rf Carthage/
Sebastiens-MacBook-Pro-6:srgmediaplayer-apple seb$ rm -rf ~/Library/Caches/org.carthage.CarthageKit/
Sebastiens-MacBook-Pro-6:srgmediaplayer-apple seb$ carthage update --cache-builds --new-resolver --platform iOS
*** Cloning libextobjc
*** Cloning srglogger-apple
*** Cloning MAKVONotificationCenter
*** Checking out libextobjc at "0.6_srg2"
*** Checking out srglogger-apple at "2.0.1"
*** Checking out MAKVONotificationCenter at "1.0_srg4"
*** No cache found for libextobjc, building with all downstream dependencies
*** No cache found for MAKVONotificationCenter, building with all downstream dependencies
*** No cache found for srglogger-apple, building with all downstream dependencies
*** xcodebuild output can be found in /var/folders/33/6ggld9410xj4dz254q1zwpjr0000gn/T/carthage-xcodebuild.NA4dUA.log
*** Building scheme "libextobjc framework (iOS)" in extobjc.xcodeproj
Failed to write to /Users/seb/Documents/rts/rn/ios/srgmediaplayer-apple/Carthage/Build/iOS/libextobjc.framework: Error Domain=NSCocoaErrorDomain Code=260 "The file “libextobjc.framework” couldn’t be opened because there is no such file." UserInfo={NSURL=file:///Users/seb/Documents/rts/rn/ios/srgmediaplayer-apple/Carthage/Checkouts/libextobjc/build/ArchiveIntermediates/libextobjc%20framework%20(iOS)/BuildProductsPath/Release-iphoneos/libextobjc.framework, NSFilePath=/Users/seb/Documents/rts/rn/ios/srgmediaplayer-apple/Carthage/Checkouts/libextobjc/build/ArchiveIntermediates/libextobjc framework (iOS)/BuildProductsPath/Release-iphoneos/libextobjc.framework, NSUnderlyingError=0x7ff6ebd637d0 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

Just tried with Xcode 11.6, works fine on my machine. I propose we have a look at it tomorrow, just get in touch with me. In the meantime I can also provide you with the binaries so that you can progress on what matters (the code), but still I am interested in knowing why this fails and to solve it.
Having a look at the log it seems everything was successful (the archive was built and I see only compilation warnings). What does not work is the copy operation itself. Wonder if this is possibly related to an access rights issue. Could you maybe try again with the Cartfile somewhere in /tmp just to see what you get?

I am under the impression that my problem is similar to those:
https://github.com/BradLarson/GPUImage/issues/2573 or https://github.com/Carthage/Carthage/issues/2220 but I have tried to look at the project settings on xcode and did not see anything obvious.
Well, anyway I would appreciate  tvOS / iOS static binary frameworks for SRGMediaPlayer (and its dependencies), SRGAnalytics and the bridge between the two or maybe I can just build them on the MacMini ... 🤔
I will also see with @GautierAnd if he can build on his computer
Thanks !

I saw two interesting comments about derived data settings:

File > Project (or Workspace if you are using a workspace) Settings
Xcode > Preferences, Locations tab

Anyway, hopefully we should be able to move away from Carthage soon, hopefully such issues will not occur anymore.

Tested without error in /tmp and git clone with:
➜  xcodebuild -version
Xcode 11.6
Build version 11E708
➜  carthage version
0.35.0

You may clean all Xcode DerivedData, and set to Default location (at least, update if it's the legacy one in the Xcode > Preferences, Locations tab).
You can use:
rm -frd ~/Library/Developer/Xcode/DerivedData/* && rm -frd ~/Library/Caches/com.apple.dt.Xcode/*
Or
https://itunes.apple.com/app/devcleaner/id1388020431
The archive step uses the var sub folder, IDEArchivePathOverride = /var/folders/[…]/T/[lib_name]. Is write right correct to /var/folders/[…]/T/ on your machine?
An other check to do: If the .pkg was installed, and then, brew is used to install a Carthage update, some cleanings is required. See https://github.com/Carthage/Carthage#installing-carthage.

Binary installation: /usr/local/bin/carthage
Brew installation: /usr/local/Cellar/carthage/0.35.0/bin/carthage

Such issues will disappear with version 6.0.0 and SPM. Carthage support will be dropped.

We have worked around this with Sam, I have binaries now


Pre-publish Checklist: Add toggle to enable auto media optimization

Context
A toggle is wanted in the pre-publish checklist that allows users to allow for auto video optimization. Only the toggle and text was done in this pr.
Designs

Summary

Add toggle to checklist
Wire it up to api so that users can clicky clicky
Add unit + karma tests

Relevant Technical Choices

made some small styling updates to the toggle for better usability.
using the same flag as in #7130

To-do

[ ] Add tests

User-facing changes

Before
After

Accessibility
RTL

Testing Instructions

Make sure the Video optimization pre-publish checklist flag is turned on (under experiments)
Make sure that Video Optimization is not checked in the dashboard settings
Go to editor
Open PPC
Should see toggle. Clicking the Settings link should take you to the dashboard settings.
Click toggle
Reload page
Toggle should be gone
Go to dashboard settings - should see the Video Optimization boxed checked 🥳

QA

[ ] This is a non-user-facing change and requires no QA

This PR can be tested by following these steps:

Make sure the Video optimization pre-publish checklist flag is turned on (under experiments)
Make sure that Video Optimization is not checked in the dashboard settings
Go to editor
Open PPC
Should see toggle. Clicking the Settings link should take you to the dashboard settings.
Click toggle
Reload page
Toggle should be gone
Go to dashboard settings - should see the Video Optimization boxed checked 🥳

UAT

[x] UAT should use the same steps as above.

Reviews
Does this PR have a security-related impact?
no
Does this PR change what data or activity we track or use?
Yes - this adds a tracker when clicking the Settings link in the toggle label.
Does this PR have a legal-related impact?
No
Checklist

[ ] This PR addresses an existing issue and I have linked this PR to it in ZenHub
[ ] I have tested this code to the best of my abilities
[ ] I have verified accessibility to the best of my abilities (docs)
[ ] I have verified i18n and l10n (translation, right-to-left layout) to the best of my abilities
[ ] This PR contains automated tests (unit, integration, and/or e2e) to verify the code works as intended (docs)
[ ] I have added documentation where necessary
[ ] I have added a matching Type: XYZ label to the PR

Fixes #

The ticket says

Toggle should show up if there is an unoptimized video present.
If the user toggled the switch to optimize future uploads then the toggle should disappear on future returns to the PPC panel but it should stay intact while the panel remains open in that action so that it's not jarring.

Seems like there's currently no way to figure out if a video is optimized. The only thing we know is if the user's flag for 'auto video optimization' is true or false
This may need to be done in a different ticket

Seems like there's currently no way to figure out if a video is optimized. The only thing we know is if the user's flag for 'auto video optimization' is true or false

This is a great call out, @samwhale and i think it's a fine iteration. Let's just have the toggle show up if it's not already enabled and we'll follow up with checking to see if video elements exist later. I know Will had mentioned adding more logic into when media optimization is recommended so this would fall into that nicely.

Seems like there's currently no way to figure out if a video is optimized. The only thing we know is if the user's flag for 'auto video optimization' is true or false

This is a great call out, @samwhale and i think it's a fine iteration. Let's just have the toggle show up if it's not already enabled and we'll follow up with checking to see if video elements exist later. I know Will had mentioned adding more logic into when media optimization is recommended so this would fall into that nicely.

Sweet! The toggle hides itself if the user's setting is true when the page loads


Scaler not being properly closed

Report
We found some instances of scalers not being closed after being refreshed leading to possible resources leak.
Some scalers, like Kafka also have background goroutines (in this case to refresh topics metadata) that are never stopped.
Expected Behavior
Any scaler should be closed when it is removed from the scaler cache or no longer in use.
Actual Behavior
Scalers are not always closed properly.
Steps to Reproduce the Problem

Create a scaled object with multiple scalers.
Change the scaled object multiple time to trigger a change in the generation number
There is then a chance previous scalers from the cache were not properly closed

Logs from KEDA operator
None
KEDA Version
2.14.0
Kubernetes Version
1.29
Platform
Amazon Web Services
Scaler Details
Kafka
Anything else?
I believe there are multiple issues causing this behaviour.
If scaler is outdated (different generation) it should be refreshed will would call Close(): https://github.com/kedacore/keda/blob/v2.14.0/pkg/scaling/scale_handler.go#L307 / https://github.com/kedacore/keda/blob/v2.14.0/pkg/scaling/scale_handler.go#L386-L389
There is also a possible race condition when multiple goroutines enter performGetScalerCache at the same time after ClearScalerCache. The code that checks if the entry needs to be closed is not thread safe: https://github.com/kedacore/keda/blob/v2.14.0/pkg/scaling/scale_handler.go#L386-L389. Multiple goroutines can reach this point creating each one new scaler since the cache was empty when entering the function and not closing the scaler created by the other goroutines.

@gjacquet thanks a lot for reporting and provided details!


Fix request body encoding

It fixes #193
This forces body arguments to be maps. The guard is_map will blow up if a keyword/list is passed. This will hopefully be useful for people upgrading to Tentacat 2.0.*

Coverage decreased (-0.3%) to 92.0% when pulling 13b139b6816f961a9250b9e21432dde4155525f2 on fix-body-json into dad5e7a7d9e993c2f199e42acbdee6bb6698689c on master.


WIP: Conservative formulation of the acoustic perturbation equations

Replace p_prime with p_tilde = p_prime / c_mean^2 to get rid of the conservation source term.

Just a note for @sloede Since we change the (documented) equation, this is a breaking change. We can nevertheless ship it with Trixi.jlv0.4, but we need to mention it in the NEWS.md.

Just a note for @sloede Since we change the (documented) equation, this is a breaking change. We can nevertheless ship it with Trixi.jlv0.4, but we need to mention it in the NEWS.md.

Yes, thanks. We are not yet sure if this should be shipped or not, at the moment it is still in an investigative phase.


Please export createGenerateClassName and jssPreset

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Sometimes it's necessary to customize the JssProvider as described here, when that happens it's necessary to import the createGenerateClassName and jssPreset from material-ui.
However currently index.js and index.es.js do not export these. In order to import these you have to directly import them from material-ui/styles instead of material-ui.
I think it's reasonable to expect that you can import {createGenerateClassName, jssPreset} from 'material-ui'; when it's valid to import {withStyles} from 'material-ui';.
The distaste with this is also the fact that material-ui/styles is an explicit module import. What is imported when you import material-ui is environment dependent because of the existence of both main and module. Importing material-ui/styles directly requires me to assume that I'm always in an environment where material-ui/styles is what material-ui imports for withTheme, etc... under the hood and it will never ever be material-ui/es/styles or material-ui/modules/styles.
Your Environment

Tech
Version

Material-UI
1.0.0-beta.38

Material-UI-Icons
1.0.0-beta.36

React
16.2.0

WebPack
3.11.0

Babel
6.26.0

@dantman I agree. Everything exported in the /styles/index.js file should be exported in the /index.js file.
https://github.com/mui-org/material-ui/blob/961edfa683355190e34f297855f7f0c0bdf5507a/src/styles/index.js#L1-L6
Do you want to work on it? :)

I'm finishing up today with things that just require explanations rather than coding and pull request creation. And tomorrow I'll probably have to upgrade material-ui and react for the new releases. But I'll consider making a PR once I'm done.

Hi Team,
Seems to be that you resolved the error. But I am still getting the same error.
Please help


vec3 initialization from 'some' numpy arrays takes wrong memory

Hello dear @Zuzu-Typ ! That's me again, with a new buffer protocol case
This seems to be a quite subtle bug, I cannot point exactly what is wrong between 3 modules: pyglm, numpy, plyfile
This is what I'm trying to do:
I'm loading a .ply mesh file, using plyfile. This is giving me an array of triangular faces, returned as a numpy array of objects, whose objects are numpy arrays. (Yeah: weird).
Despite the good looking of those array faces, it seems there is something in it that does not please uvec3 constructor in these loaded arrays.
Issue: When I'm trying to convert that array into a uvec3:  The third component of the created vector is always replaced by the third component of the last created vector.
This is the code I use
import numpy as np
from glm import dvec3, uvec3
from plyfile import PlyData, PlyElement

def ply_read(file, **opts):
	mesh_faces = []

	data = PlyData.read(file)
	index = {}
	for i,e in enumerate(data.elements):
		index[e.name] = i

	# not working with the imported array of arrays
	faces = data.elements[index['face']].data['vertex_indices']

	# working with a manually created array of arrays
	# (it should be the same as the loaded arrays, I cannot spot a difference on shape/strides of them)
	#faces = np.empty(8, object)
	#faces[:] = [
		#np.array([0, 1, 5], dtype=np.uint32), np.array([0, 5, 4], dtype=np.uint32),
		#np.array([1, 2, 6], dtype=np.uint32), np.array([1, 6, 5], dtype=np.uint32),
		#np.array([2, 3, 7], dtype=np.uint32), np.array([2, 7, 6], dtype=np.uint32),
		#np.array([3, 0, 4], dtype=np.uint32), np.array([3, 4, 7], dtype=np.uint32)]

	# this shows the bug
	# BUG: the last elements of uvec3 faces created this way will be put to a constant despite its value in the loaded face
	a = uvec3(np.array([3,0,4], dtype=np.uint32))
	b = uvec3(np.array([3,0,10], dtype=np.uint32))
	print('this is working with fresh array:', a, b)
	print('but the magic happens using the last created element from fresh array (value 10)\n')

	print('will convert from', repr(faces))
	print(repr(faces[0]))
	print('characteristics', faces[0].shape, faces[0].strides, faces[0].data.format, faces[0].data.itemsize)

	print('an element apart from the array does not work:', uvec3(faces[0]))
	print('not any element from the array work:')
	for face in faces:
		assert len(face) == 3   # just for this test
		print('    ', repr(face), repr(uvec3(face)), repr(uvec3(*face)))
		mesh_faces.append(face)
	print('however after all this, creating from fresh array works:', uvec3(np.array([3,0,11], dtype=np.uint32)))

	return mesh_faces

ply_read('test_io.ply')

Together with test_io.ply

numpy 1.21.4
plyfile 0.7.4
pyglm 2.5.4

I get the following output
this is working with fresh array: uvec3(            3,            0,            4 ) uvec3(            3,            0,           10 )
but the magic happens using the last created element from fresh array (value 10)

will convert from array([array([0, 1, 5], dtype=uint32), array([0, 5, 4], dtype=uint32),
       array([1, 2, 6], dtype=uint32), array([1, 6, 5], dtype=uint32),
       array([2, 3, 7], dtype=uint32), array([2, 7, 6], dtype=uint32),
       array([3, 0, 4], dtype=uint32), array([3, 4, 7], dtype=uint32)],
      dtype=object)
array([0, 1, 5], dtype=uint32)
characteristics (3,) (4,) I 4
an element apart from the array does not work: uvec3(            0,            1,           10 )
not any element from the array work:
     array([0, 1, 5], dtype=uint32) uvec3( 0, 1, 10 ) uvec3( 0, 1, 5 )
     array([0, 5, 4], dtype=uint32) uvec3( 0, 5, 10 ) uvec3( 0, 5, 4 )
     array([1, 2, 6], dtype=uint32) uvec3( 1, 2, 10 ) uvec3( 1, 2, 6 )
     array([1, 6, 5], dtype=uint32) uvec3( 1, 6, 10 ) uvec3( 1, 6, 5 )
     array([2, 3, 7], dtype=uint32) uvec3( 2, 3, 10 ) uvec3( 2, 3, 7 )
     array([2, 7, 6], dtype=uint32) uvec3( 2, 7, 10 ) uvec3( 2, 7, 6 )
     array([3, 0, 4], dtype=uint32) uvec3( 3, 0, 10 ) uvec3( 3, 0, 4 )
     array([3, 4, 7], dtype=uint32) uvec3( 3, 4, 10 ) uvec3( 3, 4, 7 )
however after all this, creating from fresh array works: uvec3(            3,            0,           11 )

I cannot see for my part what is failing exactly in the following:

plyfile creating an errored array ?
(its written in pure python so I doubt of it)
numpy exposing its buffer wrongly in this specific configuration ?
pyglm not understanding so specificity of the buffer ? or corrupting memory ?
(I tried to read type_checkers.h, but I failed to understand some of its mechanics)

What's you mind on this ?
Thanks in advance

Hey there (:
Thanks a lot for the detailed information!
I'm sorry you had to go through all that.
It only occurs, when a vector / matrix / quaternion is initialized with a buffer object that is in Fortran memory layout and readonly.
It will always try to store the data of the buffer inside 8 bytes of allocated memory (which happens to be enough to store 2 of the 3 values of the uvec3). You can see why over here.
It should be fixed now.
Cheers
--Zuzu_Typ--

It works ! thank you very much !
looking at the small mistake it comes from and the specific circumstances, I must say congrats for finding it so fast :)


History SCU17 Woes

@mathomp4 reported that on the new SCU17 system, the model was hanging in certain configuration, in particular if the dedicated o-server is on and you are using intel compiler/intel mph.
@mathomp4 has run with gnu and says it does not hang with gnu, although then we have other problems...
I have reproduced this, here is where things get weird.
Indeed my c180 run with the o-server hangs in History. If I turn off the dedicated o-server it runs through there. If I turn it on hangs. If I just turn off History it runs to ExtData and hangs in ExtData.
And to make it weirder. I noticed if I don't regrid the collection, it gets past the History started. Using that clue I confirmed that hang seems to be when creating the regridding handle, only when the dedicated o-server is on. This makes no sense as these have nothing to do with each other.
That is the situation as of the time I post this. I will investigate more but my first instinct is this is an MPI issue, but a weird one...

@mathomp4 reported that Intel compiler + openmpi does not hang, so strongly suggests we have an Intel MPI issue here.

Yep, just hangs on the ESMF_FieldRegridStore, when the dedicated o-server is running, even though they should have nothing to do with each other...
Any flags you can think of @mathomp4 that we might twiddle? Unfortunately just commenting out any or all of the flags we have set in gcm_run.j right now, seem to help. Indeed a few of them seem to be necessary for the model to even start...

@bena-nasa Not really. @theurich, do you have any ideas on what types of MPI calls might be involved underneath in ESMF_FieldRegridStore calls? We'd like to try adjusting Intel MPI to see if we can figure it out, but we'd need to know what types of calls/algorithms to target (aka, MPI_AllgatherV, etc.)

@mathomp4 The ESMF_FieldRegridStore() call does weight generation (by @oehmke) and smmstore (by myself). For the smmstore part, there are a few (~3 or so) Allgather() calls, and then many Isend() and Irecv() calls. Bob can comment on the weight generation part.
As for the hanging of the ESMF_FieldRegridStore() call, have you verified that all of the PETs (i.e. MPI ranks) are actually making it into to where the ESMF_FieldRegridStore() call is made? Maybe place a Barrier() right ahead of the call and see if you can get past it. If not, then there might be PETs stuck some place before.

@mathomp4 https://github.com/mathomp4 For the weight generation, the exact calls would depend on the grid, regrid method, and options. However, in general, there are probably some MPI_Allreduce(), MPI_Reduce_scatter(), MPI_Allgather*(),  and/or MPI_Scan(), to set things up and then MPI_Send(), and MPI_Irecv() to move data around.

On Sep 13, 2023, at 10:50 AM, Gerhard Theurich @.***> wrote:
@mathomp4 https://github.com/mathomp4 The ESMF_FieldRegridStore() call does weight generation (by @oehmke https://github.com/oehmke) and smmstore (by myself). For the smmstore part, there are a few (~3 or so) Allgather() calls, and then many Isend() and Irecv() calls. Bob can comment on the weight generation part.
As for the hanging of the ESMF_FieldRegridStore() call, have you verified that all of the PETs (i.e. MPI ranks) are actually making it into to where the ESMF_FieldRegridStore() call is made? Maybe place a Barrier() right ahead of the call and see if you can get past it. If not, then there might be PETs stuck some place before.
—
Reply to this email directly, view it on GitHub https://github.com/GEOS-ESM/MAPL/issues/2347#issuecomment-1717983597, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE6A7UYAZ7HVGPOQ4WJZN2TX2HP6FANCNFSM6AAAAAA4VJXRFQ.
You are receiving this because you were mentioned.

That prompted me to put a barrier to synchronize all my prints (I was printing the line so see how far I got), turns out it is the ESMF_FieldSMMStore where we are hanging, it gets past the RegridStore, I assuming FieldSMMStore more of the same MPI calls that RegridStore uses? I did confirm that every process gets to the SMMStore call, but does not get past it.
The “good” news is the only reason we are even calling this is to get the transpose route handle, which for normal runs of GEOS is not needed. I can skip that see how far I can get…
From: oehmke @.>
Reply-To: GEOS-ESM/MAPL @.>
Date: Wednesday, September 13, 2023 at 1:14 PM
To: GEOS-ESM/MAPL @.>
Cc: "Auer, Benjamin M. (GSFC-610.1)[SCIENCE SYSTEMS AND APPLICATIONS INC]" @.>, Mention @.***>
Subject: [EXTERNAL] [BULK] Re: [GEOS-ESM/MAPL] History SCU17 Woes (Issue #2347)
CAUTION: This email originated from outside of NASA.  Please take care when clicking links or opening attachments.  Use the "Report Message" button to report suspicious messages to the NASA SOC.
@mathomp4 https://github.com/mathomp4 For the weight generation, the exact calls would depend on the grid, regrid method, and options. However, in general, there are probably some MPI_Allreduce(), MPI_Reduce_scatter(), MPI_Allgather*(), and/or MPI_Scan(), to set things up and then MPI_Send(), and MPI_Irecv() to move data around.

On Sep 13, 2023, at 10:50 AM, Gerhard Theurich @.***> wrote:
@mathomp4 https://github.com/mathomp4 The ESMF_FieldRegridStore() call does weight generation (by @oehmke https://github.com/oehmke) and smmstore (by myself). For the smmstore part, there are a few (~3 or so) Allgather() calls, and then many Isend() and Irecv() calls. Bob can comment on the weight generation part.
As for the hanging of the ESMF_FieldRegridStore() call, have you verified that all of the PETs (i.e. MPI ranks) are actually making it into to where the ESMF_FieldRegridStore() call is made? Maybe place a Barrier() right ahead of the call and see if you can get past it. If not, then there might be PETs stuck some place before.
—
Reply to this email directly, view it on GitHub https://github.com/GEOS-ESM/MAPL/issues/2347#issuecomment-1717983597, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE6A7UYAZ7HVGPOQ4WJZN2TX2HP6FANCNFSM6AAAAAA4VJXRFQ.
You are receiving this because you were mentioned.

—
Reply to this email directly, view it on GitHubhttps://github.com/GEOS-ESM/MAPL/issues/2347#issuecomment-1718015249, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIZPJL67HZ54SPWHY7YGLWDX2HSVJANCNFSM6AAAAAA4VJXRFQ.
You are receiving this because you were mentioned.Message ID: @.***>

Turns out I was wrong, even with the o-server off, the model is still hanging on a RegridStore call, just seems to be happening now in ExtData. I'm going to try to see if I can reproduce this outside the model...

Bingo, I can reproduce this with Regrid_Util.x, hanging in the route handle generation

A reproducer would be great. Do you know what regrid method the RegridStore call is using?  Thanks.

On Sep 13, 2023, at 1:41 PM, Ben Auer @.***> wrote:
Turns out I was wrong, even with the o-server off, the model is still hanging on a RegridStore call, just seems to be happening now in ExtData. I'm going to try to see if I can reproduce this outside the model...
—
Reply to this email directly, view it on GitHub https://github.com/GEOS-ESM/MAPL/issues/2347#issuecomment-1718213849, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE6A7U4CXQASSPLJJHHJ3GLX2ID5JANCNFSM6AAAAAA4VJXRFQ.
You are receiving this because you were mentioned.

Now I don't where the heck it's hanging... just so confused, it might be in our own code :( might take a while to get to the bottom of this where I can design a reproducer, not sure what to reproduce...

Can we reproduce on a coarse configuration and run in the debugger?    This is one of those situations where even I find value in debuggers.

This is driving me crazy. Adding prints seems to have fixed the hang. I'm going to need to have someone else (realistically Matt) try the same thing and confirm what I'm seeing. It seems as adding prints in the code to find out where I was hanging seemed to fix the hang.

Not sure this is solved. Maybe @bena-nasa can comment


expanding.py - reduce_memory_usage

Added reduce_memory_usage to keep pandas dataframes as efficient as possible this will ensure as method chaining happens that the dtypes are in their smallest most efficient form.

Do you think this should be an option to change the dtypes? We can set it to True as default.

I think we should do it automatically, but it is your call. The issue is that when you start method chaining these different functions together as users will do it will blow up the memory. Pandas is notoriously bad in this regard and there are massive efficiency gains from this. It should, in theory, make things run in these cases. Again though, your call if you prefer this to be an additional parameter we can do it.


No `Podfile' found in the project directory.

Probably because your Podfile doesn't exist in the directory you try to enter pod install. Anyway, this is related to CocoaPods, not to this project.

But your project doesen't exist Podfile

Indeed, there is no Podfile in this repo. Why is this an issue to you?

Is this just the library ,can not run like app?

Yep it's just a library, there is no app!
What got you confused thinking it was an app? Maybe I can change some things in the README.


[chef-16] INFC-303 - Backport changes from v18 to v16 for documentation

Description
Backport changes from v18 to v16 for documentation and missing privilege in verify list
Related Issue

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] Chore (non-breaking change that does not add functionality or fix an issue)

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] I have run the pre-merge tests locally and they pass.
[x] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.
[x] All commits have been signed-off for the Developer Certificate of Origin.

Should be merged before the next 16 release, but the pipelines need fixing first. Adding the "waiting on release" label just to ensure this gets looked at on Thursday again.

@Stromweld Could you rebase to latest chef-16? That will pull in the pipeline fixes

done


Development configuration with Docker

This change adds scaffolding to do development with a Docker and Compose environment. (It's been tested with Docker and Colima, but ought to work with Podman as well.) It's meant for development purposes only and does not affect any application code or production deployment.
Test plan

follow the setup process laid out in docker/README.md
get your system to the point where make test is able to run
all tests pass!

this is now quite old; closing because these changes are included in the staging branch.


Mutable state rebuild should include activity progress

Mutable state rebuild should include activity progress if appliable for workflow reset in active/passive case and conflict resolution case.

few things need to be changed

when doing workflow reset on active side, also re-apply the activity progress, if applicable
for workflow reset & cross DC, bundle the above activity progress (sync activity) along with the workflow reset batch
for cross DC conflict resolution mutable state rebuild, this needs more discussion.


[Bug]: Alarm icons and colors are different from HA

Current Behavior
Currently the colors and icons are different from the original HA alarm panel. E.g. the icon is green when it is armed, which should be red.
Expected Behavior
Disarmed: green with a tick in a shield (mdi:shield-check)
Pending: flashing orange with an empty shield (mdi:shield-outline)
Armed home: red with a house in a shield (mdi:shield-home)
Armed away: red with a padlock (mdi:shield-lock)
Triggered: red with a bell (mdi:bell-ring)
See the animated GIF at HA's official site: https://www.home-assistant.io/dashboards/alarm-panel/
Steps To Reproduce
No response
Environment
No response
Anything else?
No response

It's not a bug. The idea is to keep red color for alert. Green means you can house is protected with the alarm.
You can override all these colors using mushroom theme to revert to the official ones 🙂

Maybe an option would be useful to choose between Mushroom coloring (as you described, with the theme) and HA style

You can add these mushroom variables in your themes to redefine them :
mush-rgb-state-alarm-disarmed: var(--mush-rgb-info)
    mush-rgb-state-alarm-armed: var(--mush-rgb-success)
    mush-rgb-state-alarm-triggered: var(--mush-rgb-danger)

Replace the values by the color you want 😊


Clang format

add a clang-format file
apply clang-format file
add CI check to keep style inplace

The Lugaru one was based on regularizing the code style that the codebase already used, and I imagine that this one probably is more similar in style to Lugaru's code.

Well, i don't really mind which one we use. However i noticed that the .clang-format you linked does sort the includes.
I've applied the style and end up with a compilation failure. Of course this shouldn't be the case, but the code as it currently is can't handle that.

There was a style change some time back at wolfire, where we stopped doing newlines before opening curly on if-statements, functions classes, etc.
So
}```

instead of

```void f()
{
}```

Yes, that's what i thought aswell - this matches more the google style i had at first


Strip the ELF

The ELF from 0.1.2 release for x86_64 Linux is not stripped. The binary before strip is 8.2M and after strip becomes 3.4M.

Interesting, how do you manage to do that in the pipeline? I'll look for that anyway.

Actually strip true is missing too, will do.


Option to add custom prefix/postfix to PROMPT

I'd like to define my own indicators that will be included in PROMPT. I can easily create a function or variable to return indicator string, but I miss is a proper way to inject it into geometry PROMPT.

You can change the prompt symbols, if I understood correctly.
Simply export one of these variables in your .zshrc.
You can find an example in my dotfiles. I'm changing the exit value symbol plus a couple of colors.

Not really what I need. I want to expand prompt with my own data. Technically this looks doable with adding my strings to symbols there. But I'd like to see something like https://github.com/nojhan/liquidprompt#adding-a-prefixpostfix

Maybe some kind of callback, ie geometry_(r)prompt_[pre|post]_callback but I think it's too complex to implement to be fully customizable.

It seems a bit complex, yeah. I think I'll let this hang on the bottom of the list since there are more pressing issues and features.

@z0rc Now geometry has support for plugins (#43, #45 ), which means you can add your custom prompts into geometry. Here is a working example.

I'm closing this as it should be solved.


feat(radio-group): Vertial align

closes #569

Could you open an issue for carbon-components on the carbon monorepo about this:

Issue reference: https://github.com/carbon-design-system/carbon/issues/2286

If you're feeling adventerious you could contribute the fix back to carbon-components ... I don't see any specific PRs open around this issue


Some MQTT setting fields are empty after page reload

I've succesfully connected the SmartEVSE to my mqtt server (great!), but when I now reopen the mqtt settings tab some fields are empty:

I expected to see the current config here (maybe without the password or so).

Is there any way to connect to the SmartEVSE and edit the index.html directly, or is there always a new build needed?
I have no experience with the latter (I always update with your provided binaries), so I haven't tested this locally. However, given that the key names were just not matching, I'm 99% sure this is fixed with the PR submitted.

You can test your local index.html easy by editing the line that has <IP_ADDRESS> in it; comment the line above it, change it to your own smartevse's ip address, and if you approach file:///path to your local index.html you can see immmediate results

The "local override" (see edit above) worked - it's confirmed tested

Yup we were typing in parallel; hope to test this afternoon.

@hmmbob Thanks for your work!

@hmmbob , how did you reach the mqtt config page ?

My Smart EVSE main page looks like this;

Did you flash spiffs too? Or only firmware.bin?

I have flashed only firmware.bin
Now I flashed spiffs too and config functionality appears on main screen.
Thanks for helping on this.


Business recommended Icon no longer visible

Business recommended Icon changed with the "new look" introduction. We have no way of knowing which fields are recommended and which are optional without the blue cross. is there a way to have it back with the new look?

you can vote here: https://ideas.powerapps.com/d365community/idea/e2a1036f-f4d5-ee11-92bd-6045bd7ac068


Update ru.js

@AveVlad Hey, thanks for the translations. Has there been any movement on the above comments? If so I would like to get this merged ASAP. Thanks.

@AveVlad Just checking in, what's your plan on this?

@MadLittleMods no, sorry


should not break on a global return

Added the 'allowReturnOutsideFunction: true' flag.
transform(.., options) should pass acorn options, if a developer wants something specific.
Even though this goes against your 'zero config' policy, it will let users change conf without a pool request.
Please push to NPM asap, I want to use it in my code. 😄

#147

Thanks!


Is there anyway to detect and download unlisted videos

Checklist

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

Question
For example for the series drama show: https://www.youtube.com/watch?v=9TjfkXmwbTs, by the end of a video it will give user option to choose what video is gonna to play next but the all the videos will be unlisted.
We can know all the unlisted videos links but need to manual click on each video jump to get the link, is there any efficent way to grab all the unlisted videos from a channel
Verbose log
No response

How is this a yt-dlp question?


Shift-click Withdraw-All-but-1

Either a shift click option, or an option in the menu entry swapper inside the bank for this could be of use

In the Menu Entry Swapper plugin, choose the "Withdraw-All-But-1" option for the "Bank Withdraw Shift-Click" option listed in the Item Swaps section.


[Broker]make grantPermissionsOnTopic method async

Master Issue: #14013
Motivation
Avoid call sync method in async rest API for PersistentTopicsBase#internalGrantPermissionsOnTopic.
Modifications

Use async instead of sync method.

Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (no)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)

Documentation
Need to update docs?

[x] no-need-doc

/pulsarbot run-failure-checks


FormCombobox is empty on the first load of the view (CustomersView/OrdersView)

Repro steps
As soon as the program opens, switch to Customers view (or Orders view). The detail panel on the bottom right shows the Country combo box empty. As soon as a different record is selected, the issue disappears.

System
Visual Studio 2017
Windows 10 Build 1803

As a workaround, I found that changing the SelectedValue binding, from {x:Bind} to {Binding} fixes the issue.  I've no idea why...

The issue seems to be appearing while running App only in Debug mode.

It's appear when you didn't load dictinaries before set Item.
At the current momen we binding to LookupTableProxy, but better to make IList in CustomerViewModel and load before set Item.
I confirm that bug.


Simple method to detect the type of a file, possibly optimized for a language

I'm trying to detect ruby files for rubocop and noticed there is no easy and/or fast way to tell if a file is a ruby from a filename.
What about a Linguist::Language['ruby'].detect_by_filename?('script.rb') for instance?
And a more generic Linguist::Language.detect_by_filename('script.rb') => :ruby for instance?
Also, loading linguist takes ~2s on my computer, so having something like require 'linguist/languages/ruby' could potentially be much faster.

You can't always determine the language of a file from its name, but you could use the Extension strategy to retrieve the list of candidate languages from the file extension.


[core-amqp][event-hubs] standardize on AbortError message

We've standardized on using the message "The operation was aborted." for AbortErrors we throw in our packages.
This issue is to track updating core-amqp and event-hubs AbortError message standardization efforts.

I believe @ramya-rao-a  merged a fix into rhea-promise that should make this easier (or maybe zero work).

There are 2 places where the error message needs to be updated in event hubs other than releasing rhea-promise and using the latest version. I can pick that up


ugly solution for unexpected request fail on verify no outstanding request

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Bug fix
What is the current behavior? (You can also link to an open issue here)
https://github.com/angular/angular.js/issues/15855
What is the new behavior (if this is a feature change)?
same as before the regression
Does this PR introduce a breaking change?
no
Please check if the PR fulfills these requirements

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

Other information:

Looks like this break the promises-aplus-tests.

Thanks for the feedback! looks that it fixed the issues on tests too:)

We talked about this yesterday in the meeting and @petebacondarwin had another idea how to implement this, maybe he can outline it here

The general concern was with potential collisions with user code by checking a "custom" property on the error objects. I accept that this is mitigated by the use of $$ on the property. But still, I think it would be safer to use the other approach (suggested here: https://github.com/angular/angular.js/issues/15855#issuecomment-320526163) where we throw a "private" error class instead.
Since ngMock is in a separate closure to the $q service this error class would need to be exposed somewhere. We thought the safest place would be on $q itself (e.g. $q.$$PassToExceptionHandlerError).  For now we would keep this double dollared ($$) to indicate it is private but it could be made public if there was interest in it outside of ngMock.
@mgol suggested that an even cleaner approach would be to override the $q service in ngMock with the functionality described above, which would mean that production $q is not changed but that we have the desired effect when testing. We thought this was interesting but we concerned that the cost of changing $q to expose the necessary parts to support the override would be more complicating than just supporting it natively.
@mgol also pointed out that this "special" behaviour would not strictly be in keeping with the Promises A+ spec, even though it would pass the tests...

@mgol also pointed out that this "special" behaviour would not strictly be in keeping with the Promises A+ spec, even though it would pass the tests...

If it's passing the test... 😛 Why would it not be compiant with Promises/A+?
Our previous discussions about this "special" behavior of $q (i.e. passing stuff to the $exceptionHandler, which sometimes throws) were non-conclusive :grin:

If it's passing the test... 😛 Why would it not be compiant with Promises/A+?

Tests can almost never cover 100% of the spec. In this case, the spec doesn't allow to treat some rejections/errors differently.

In this case, the spec doesn't allow to treat some rejections/errors differently.

OOC, where does it say so?

The spec describes what needs to happen when an exception is thrown in a
handler. It doesn't specify any requirements for those exceptions, hence
all the rules have to apply for every exception type.

 But for some exceptions, additional stuff may happen.
But I do see your point. (I feel like we've had this conversation before 😛)

@gkalpak Additional stuff may happen (we can then only discuss if it lies in the spirit of the spec) but that's not the point here. The spec mandates all exceptions need to be passed to the catch handlers and here the idea is to create a special exception class that avoids it. From the discussion at the last team meeting just re-throwing in the exceptionHandler wouldn't work as then it would be caught again by the catch handlers anyway. Or is there a way to make it work & not break the spec compliance?

The promise will be rejected as usual, but the error will also be passed to the $exceptionHandler. This is essentially the same that happened for all Error instances until not long ago. It will now happen for specific errors only (that will only be thrown during tests).

Has anyone implemented our agreed solution here?

I don't think so. I think we wanted to wait for @gkalpak to return, as he reviewed this initially

As per https://github.com/angular/angular.js/pull/16150#issuecomment-323097130, I am happy to go with the special Error class. @marcin-wosinek, would you be up to updating the PR with the new implementation (as described in https://github.com/angular/angular.js/pull/16150#issuecomment-322808943)?

yes, I'm about to update the implementation.

Looks it failed before due to some e2e glitch. It's ready to final review.

master was updated with first suggestion from:
https://github.com/angular/angular.js/pull/16150#discussion_r137201542
the second suggestion is applied in:
https://github.com/marcin-wosinek/angular.js/tree/16150-b
the original proposition is in:
https://github.com/marcin-wosinek/angular.js/tree/16150-c

@marcin-wosinek - thank you so much for you work and patience on this PR.
We had a long chat again today and have finally decided, after all to go with your original proposal (https://github.com/marcin-wosinek/angular.js/tree/16150-c). I will squash and merge the two commits from that branch, so there is no need to update this PR any further.
I am sorry it has taken so long to deal with this.

Cool; great to have it finally land:)


"No tag in this file." display when JS code wrapped in iife

Moving the code out of an iife, shows all symbols in the pane.

any solutions?


Adding BEP20 Contract Meta-Data

Dear all,
Any plans to make adding BEP20 Token metadata possible through github?
Currently this isn't possible as non ERC20 contracts fail address checks.
EIP 747 method works fine, Except for two issues:

users must click a link in order to add it, as opposed to adding the custom token and getting the logo to appear automatically.
EIP747 does not allow Symbols > 6 chars which does not allow for our coin to be added that way either..

Finally, and on the verge of topic, does Binance Chain Wallet pull the metadata from here?
Should there be a listing fee similar to TrustWallet, please get in touch.
Thank you for the time and help!

Good question, cant find any info about it.
Its about time more that half an years has passed since this comment.
@randymetamask


Add back password strength meter

In #526, the password strength meter is removed because the package we use doesn't support Vue 3 (apertureless/vue-password-strength-meter#54). ~v1.4 won't ship with a password strength meter, but I think we will add one back in v1.5.~
When we add it back, we'll have to decide what kind of password strength meter to use. I think we have two main options:

Use a dictionary approach.

The main issue here is that zxcvbn is no longer maintained. However, there is a fork of it rewritten in TypeScript that we could look into (https://github.com/zxcvbn-ts/zxcvbn).
I'm not sure that there's a Vue component out there that uses this fork, but we could probably write our own without too much difficulty.
How does this interact with internationalization? Would we want to use dictionaries for languages other than English?

Use a pattern-based approach.

Given that our only requirement for passwords/passphrases is that they are at least 10 characters long, this approach might work fine for our needs.
This approach is ligher-weight insomuch as it doesn't require the user to download a large dictionary.
One component to look into: https://github.com/miladd3/vue-simple-password-meter

Also, just had the idea: instead of rendering the password strength meter based on the strengthmeter prop of the FormGroup component, maybe it makes sense to do so based on whether the autocomplete attribute is new-password. Removing the strengthmeter prop and the before and after slots of FormGroup would be a nice simplification of that component.

I did some reading on password strength meters. Seems that the general consensus is that they're all nonsense. However, because Psychology™ people come up with stronger passwords when they see a meter, no matter what it says.

Ah that's very interesting. Knowing that, I think I'd lean more strongly toward the simpler pattern-based approach.

Citation needed: this paper shows that there's no consistency in how meters for different sites provide feedback (they make some recommendations but I don't know how practical they are); this CHI paper from 2013 found that people improved password strength when presented by meters if they thought the site was important.

As an update related to this issue, #526 won't ship with v1.4, so there will still be a password strength meter in v1.4. We'll still need to find a new password strength meter for v1.5 though.

Also, just had the idea: instead of rendering the password strength meter based on the strengthmeter prop of the FormGroup component, maybe it makes sense to do so based on whether the autocomplete attribute is new-password.

Just made this change in #539.

We ended up removing the password strength meter in a separate PR, #586. v1.5 won't ship with a password strength meter, but we want to add one back in v1.6.

Notes for the QA team:

A password strength meter can be found on three pages:

The "Edit Profile" page
The "Set Password" page (after clicking "Reset password")
The project settings page, after clicking "Enable encryption…"

The strength meter evaluates a password based only on its length. A password must be a minimum of 10 characters. For 10 characters, the password strength fills 3/5 bars and is an orange color. As the length increases, more bars are filled, and the color becomes more green.

Tested with success!

Tested with success!


nixos/etebase-server: set users.users.etebase.isSystemUser

Motivation for this change
Setting users.users.name.{isSystemUser,isNormalUser} is required since #115332
Things done

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

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

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

@ofborg test etebase-server


Document the test-purpose feature

The test-purpose feature is not documented.
Acceptance criteria:

A new entry on our wiki page on test-purpose describing:

the test purpose feature,
replay using the trace command,
and general (non-probabilistic) flow.

Examples of the features above are provided on the wiki.

Damian added some documentation about saving trace of a test and replaying it using Test Purposes:
http://torxakis.readthedocs.io/en/feat-test-selection-replay/tutorial/trace-replay.html
We don't have docs for rest of the Acceptance Criteria though (e.g. PurpDef page, links to related examples)

Not delivered in Q3, moving to Q4.

@keremispirli shouldn't we rephrase the acceptance criteria in terms of read-the docs? We do have examples of this functionality, so I'm now sure what is missing. Could you provide more details so that what needs to be done becomes more concrete and we can close this?

@capitanbatata

We don't have a page that explains PURPDEF keyword e.g. ModelDefs.
I don't understand what "general (non-probabilistic) flow" means, so I don't know if we have that.
I think we have the rest. I updated the initial post.

Ok, adding the page is clear. And for the "general (non-probabilistic) flow" I guess we need more details from @pjljvandelaar and @tretmans. Otherwise I'd like to remove this item and move on.

Added Test Purpose definition page: https://github.com/TorXakis/TorXakis/wiki/PurpDefs


Provide CloudEvents when scaling workload(s) from/to 0

Proposal
Event Types

[ ] keda.workload.scaletozero.v1
[ ] keda.workload.scalefromzero.v1

Payload:
{
    "specversion" : "1.0",
    "type" : "keda.workload.scaletozero.v1",
    "subject" : "/{kubernetes-cluster-name}/{namespace}/workload/{resource-name}/",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "data" : {
      "scaleTarget": {
         "name": "sample-workload",
         "apiVersion": "Deployment",
         "kind": "apps/v1",
      }
   }
}

Use-Case
Allow end-users to get notified when workloads are scaling to/from 0.
Anything else?
Relates to https://github.com/kedacore/keda/issues/479

@neelanjan00 will look in to this

A question, do we want to emit an event for a ScaledJob scaling from/to 0? If yes, can you suggest at which point during the reconciliation we can check if the runningJobCount has become zero?
Sorry if it's a dumb question. As far as I understood KEDA doesn't actively scale the ScaledJob workloads to zero since Kubernetes Jobs are not meant to keep executing, and after they complete executing the number of pods becomes zero.

Hi @tomkerkhove can you PTAL at the above comment? Thanks!

There are no stupid questions so no worries =) Let's leave out ScaledJobs indeed given we do not scale to 0 but only activate new instances when need be

Re-assigned to @SpiritZhou after @neelanjan00's comment on PR - Thanks for effort anyway!


Customizing the HTML - Side panel

Thank you for assisting me yesterday in adding a custom logo to the header section.  Could you provide a similar snippet to add another graphic, as well as some descriptive (instructive) text to the side panel?  I find that users that are not experienced with web-maps, need to be walked through how to add, or edit features.  I wold thus like to add the following text right above the template picker DIV "To enter a new point on the map, click on a category below and place it on the map".
It would be great if this template could be modified to allow easier customization.  I realize that the template is designed to be responsive to mobile and desktop platforms, but by programmatically creating the content, this however makes it difficult for additional customization.  i.e., I would like to add a GeoCoder and Checkbox's to toggle visible layers.  With the content being created in the "CreateContent.js" file, I would not know how to add these elements to the page.

@BretWhiteley  I just pushed an update to this template that contains search (geocoder) capability. The app has also been slightly re-engineered and might be easier to customize.  For example if you wanted to add some instructions that explain how to use the template you'd want to add code like the following to drawer.js right above the code that creates the editor content pane (approx line 170).
            var desc = new ContentPane({
                region: "top",
                style: "border:none;",
                content: "
Instructions for how to use template go here
"
            });
            this._contentPaneSide.addChild(desc);


🚧WIP: Small fix on Lpanel: Adjusted bottom spacing to 32 px

Based on the figma prototype

This is basically what the new features added on the bottom of the left panel


Github actions generated calendar is off by 1 hour

This is probably a BST vs GMT issue -- running locally (BST) I had no issues, but since switching to Github actions (probably UTC/GMT) it's now showing.

Solved in https://github.com/alistairjcbrown/strand-calendar/commit/9d57db15598d74c27a51fbb977da8a81fb4e0c9f
Confirmed in automated release -- https://github.com/alistairjcbrown/strand-calendar/releases/tag/2023-06-21.0


#66 search params

This references #66 (adds all the query param stuff) but does not close it as the individual events are not yet listed or shown.
Please merge https://github.com/townhallproject/townHallProject/pull/97 first, as this is built on top of it.

@meganrm well that's embarrassing.  Should be fixed now!


fix: path normalization

By pushing a relative path, Next.js client-side navigation was broken. We now ensure paths start with a "/".

@fikrikarim, I think this is why there was a 404 when using client-side navigation in the default host.


test: Add an LLM-powered bot to detect dupes

Just like in https://github.com/microsoft/WSL/pull/10745
We're working with the WSL team to figure out if we can use a LLM to help us triage. This should just comment on issues, if it finds something similar on the backlog.
@craigloewen-msft as an FYI. If this explodes or doesn't work, well, we'll figure it out soon enough 😝

This won't work right away. Please message me on Teams and I can help onboard it <3

(Craig onboarded us)

Needs 1 more approval for merge: @DHowett  ? :)


Switch eslint for standard

@Aladdin-ADD that is what I was talking about regarding switching eslint for standard

Codecov Report

Merging #57 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #57   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           1      1
  Lines          32     32
  Branches        8      8
=====================================
  Hits           32     32

so .eslintrc is no longer needed?

standard is basically a pre-configured eslint.
So no conf file needed :tada:


feat: use changed-files instead of jitterbit for deployment workflow [DE-231]

Our current list new/modified/deleted files comes from a repo, jitterbit, that is apparently abandoned. This means its functionality will degrade as GHA makes new releases.
This PR implements a different tool, changed-files, to do the same thing. Notably, this resolves a limitation of jitterbit - namely that there was no way to delete old filenames for renamed files, which would cause duplicate files to appear in GCS, resulting in chaos, heartbreak, etc. (which was the impetus for this journey of discovery).
Assigning to @jitoquinto and @kanelouise , and cc @michaelefisher since we'll likely want to do the same for our automatic airflow deployment as well.
Here is an example of a workflow run showing this doing the stuff it's supposed to do: https://github.com/community-tech-alliance/dbt-cta/actions/runs/4962581795/jobs/8880816533
One more note: I made this deliberately WET to make it super clear what's happening at every step. (Surely you could rewrite this with about 1/3 as many lines of code, but I personally think the readability is more important, at the expense of maybe failing a technical interview)

@jitoquinto @kanelouise, bumping this PR, if either/both of you have a sec to check this out then I would love to merge today or tomorrow 🙏

@emily-flambe taking a look at the linked run for this it looks like something weird is going on or the logs for List all changed files step arent correct?? It looks like theres files being renamed/removed that arent in there

@emily-flambe taking a look at the linked run for this it looks like something weird is going on or the logs for List all changed files step arent correct?? It looks like theres files being renamed/removed that arent in there

so one annoying thing about this strat in general, which I'm not quite sure how to avoid, is that it can cause weird behavior if you run the workflow multiple times on a branch and make multiple rounds of changes to the files on that branch. The workflow is always comparing your local files with the main branch, so if you add a file, then rename it, I think the workflow would deploy both versions of that file, because it's comparing against main rather than the most recent commit on your branch...
Actually, would that logic make more sense? I think that's what happens if you configure fetch_depth = 1. Maybe we should contemplate that before merging this 🤔 🤔 🤔 🤔 🤔
anyway it's hard to say for sure but it seems likely the weirdness you're seeing has something to do with that!

@emily-flambe taking a look at the linked run for this it looks like something weird is going on or the logs for List all changed files step arent correct?? It looks like theres files being renamed/removed that arent in there

so one annoying thing about this strat in general, which I'm not quite sure how to avoid, is that it can cause weird behavior if you run the workflow multiple times on a branch and make multiple rounds of changes to the files on that branch. The workflow is always comparing your local files with the main branch, so if you add a file, then rename it, I think the workflow would deploy both versions of that file, because it's comparing against main rather than the most recent commit on your branch...
Actually, would that logic make more sense? I think that's what happens if you configure fetch_depth = 1. Maybe we should contemplate that before merging this 🤔 🤔 🤔 🤔 🤔
anyway it's hard to say for sure but it seems likely the weirdness you're seeing has something to do with that!

I did a little science and I think this is just a quirk of the workflow the way it's set up. Maybe there's a way to fix this behavior, but I think it would require some additional logic.
For awareness @jitoquinto @kanelouise @jackwelty, this means: After you deploy a branch to dev, the workflow will always be comparing your branch to main - so if you do something like, say, create a file and then delete it, the workflow will deploy it but then it won't subsequently delete it. The run triggered by the commit deleting the file will compare main to your branch, neither of which contain the file you added and deleted, so that file will continue to linger in dev. (This shouldn't be a problem in prod deploys since the workflow only runs when you merge the PR.)
I'll add a comment in the workflow explaining the above and then merge this in!

@emily-flambe gotcha, thanks for doing the science! That sounds good to me, especially since this really only applies to dev environment right? Prod will always just run when merged to main so we shouldnt run into that weirdness

@emily-flambe gotcha, thanks for doing the science! That sounds good to me, especially since this really only applies to dev environment right? Prod will always just run when merged to main so we shouldnt run into that weirdness

yep that's correct! a bit of weirdness is par for the course in dev anyway lol


Hl 1475 submitted at

Description :sparkles:
HL-1475
Use the submitted_at custom Application model attribute in the Ahjo payload and report csv:s,and  created_at if it's not present.
HL-1362
Add an alternate, more compact csv, similar to the powerbi report, to the handler's report screen for downloading.
HL-1483
Show the alteration.recovery_amount correctly in the csv report.
Issues :bug:
Testing :alembic:
Screenshots :camera_flash:
Additional notes :spiral_notepad:

API branch is deployed to platta: https://helsinkilisa-pr3443.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

API branch is deployed to platta: https://helsinkilisa-pr3443.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

HANDLER branch is deployed to platta: https://helsinkilisa-ui-handler-pr3443.dev.hel.ninja :rocket::rocket::rocket:

APPLICANT branch is deployed to platta: https://helsinkilisa-ui-pr3443.dev.hel.ninja :rocket::rocket::rocket:

TestCafe handler result is failed for https://helsinkilisa-ui-handler-pr3443.dev.hel.ninja :crying_cat_face::anger::boom::boom:

API branch is deployed to platta: https://helsinkilisa-pr3443.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

APPLICANT branch is deployed to platta: https://helsinkilisa-ui-pr3443.dev.hel.ninja :rocket::rocket::rocket:

HANDLER branch is deployed to platta: https://helsinkilisa-ui-handler-pr3443.dev.hel.ninja :rocket::rocket::rocket:

TestCafe result is success for https://helsinkilisa-ui-pr3443.dev.hel.ninja :laughing::tada::tada::tada:

TestCafe result is success for https://helsinkilisa-ui-handler-pr3443.dev.hel.ninja :laughing::tada::tada::tada:


Updates in few section relate to social handles and contact information

Please refere to the image or the readme file of this project in the base directory @SandeshNilasKhatiwada

Solved Issue 6

created the profile section like this where he can show his cv and all the link to his social media account