Fix the broken binding in devel

Current binding is broken, because of the merge of one of the PRs.
Disclaimer: I won't be fixxing any binding in any PR until this issue is solved (in isolate PR).
Currently, I'm waiting for merging of the Data encapsulation, which had working binding, and contains some changes that could lead to some conflict if I started fixing this and also will be handy in fixing the break from #100. Once #101 is merged, I will try to fix it.

I will mention @martinhruska @kilohsakul so they are aware of this.

Well, I am afraid that #101 has broken binding as well.

No, before the merge of #100 the binding was fine, I fixed it in that PR. Your merge conflicts should not have broken the binding. As I said like 100 times, the binding is broken, because devel is broken. Even if you commited the documentation or code-unrelated changes, the binding will still be broken.

#100 is merged.

#108 #109 #115 should not break binding.

I will probably finish fixing the binding tomorrow.


Failed to import note from Evernote

Hi, Importing a bunch of notes and got one as a failure.  The stack trace is:
    ugin:obsidian-importer:50 Failed to convert note: A New Way to Learn Unity: Game Development from A-to-Z – Unity Blog TypeError: The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received undefined     at __node_internal_captureLargerStackTrace (node:internal/errors:490:5)     at new NodeError (node:internal/errors:399:5)     at Function.from (node:buffer:334:9)     at li (plugin:obsidian-importer:50:2441)     at mi (plugin:obsidian-importer:50:1702)     at ui (plugin:obsidian-importer:50:3709)     at EventEmitter.eval (plugin:obsidian-importer:57:357)     at EventEmitter.emit (node:events:513:28)     at x.eval (plugin:obsidian-importer:14:9507)     at x.emit (node:events:513:28)     at m._parser.<computed>.d.indexOf.m._parser.<computed> [as onclosetag] (plugin:obsidian-importer:6:4034)     at Tt (plugin:obsidian-importer:7:3626)     at O (plugin:obsidian-importer:7:3666)     at Xt (plugin:obsidian-importer:12:1836)     at i._i [as write] (plugin:obsidian-importer:14:4808)     at x.write (plugin:obsidian-importer:6:3697)     at ReadStream.ondata (node:internal/streams/readable:766:22)     at ReadStream.emit (node:events:513:28)     at addChunk (node:internal/streams/readable:324:12)     at readableAddChunk (node:internal/streams/readable:297:9)     at Readable.push (node:internal/streams/readable:234:10)     at node:internal/fs/streams:275:14     at FSReqCallback.wrapper [as oncomplete] (node:fs:681:5)     u
I shared the note at https://www.evernote.com/shard/s21/sh/b7cb6048-ab81-449e-ac57-173024467e56/S4Py8lfiK4nqu1eLrHgj_mXWZJoyughGxCNDCMrAra6xErGQdL-Ml5rYxA
or can E-Mail it.

Actually I just exported just the one note and can attach it.
failed-note.zip
(zip file with just the enex inside it as you can't attach a raw enex to github)

Thank you for the report! Will look into it and see what caused it.

I think this has been fixed? I've tested it again and the note imports just fine.


Can not install flutter in Mac Catalina properly

I just follow all steps from the course and can not install flutter with the log as attached
flutter_07.log

The error is:
Standard error: xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

This likely means that xcode is incorrectly configured.

Hi @Shengli94132
you may want to try this possible solution
thank you

Hi @iapicca it worked like magic, thanks million.

Hi @Shengli94132
Please @iapicca's  solution above
Without additional information, we are unfortunately not sure how to resolve this issue. We are
therefore reluctantly going to close this bug for now. Please don't hesitate to comment on the
bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.


Python: Move all Memory-related logic to separate Plugin

This issue is to track any work necessary to complete this ADR for python: Move all Memory-related logic to separate Plugin
If this is already complete, please close this issue.

@moonbox3 I think this is done?

Work is done as of #5143. Closing work item.


openldap module: fix paths for example includes

The paths in the example for services.openldap.extraConfig seems to no longer be correct. These new paths work for me in a nixos-rebuild build-vm.

Pushed to master (0e2bd7e248974cd48961a24c831a39078c1d44b9) and release-17.03 (2f95a293c3f57db05522d0b1a65cdf6463a003df). Thanks!


feat(kubernetes): introduce kubernetes resource permission

Hey, I just made a Pull Request!
Introduces a simple way to restrict access to the other kubernetes endpoints besides the proxy endpoint using Persmission Framework via new kubernetes.resource permission.

Changes
Users can create permission policy like this:
class KubernetesDenyAllResourcePermissionPolicy implements PermissionPolicy {
  async handle(request: PolicyQuery): Promise<PolicyDecision> {
    if (request.permission.name === 'kubernetes.resource') {
      return {
        result: AuthorizeResult.DENY,
      };
    }
    return { result: AuthorizeResult.ALLOW };
  }
}

The endpoints /resources/workloads/query, /resources/custom/query, /services/:serviceId and /clusters return  403 Forbidden even with correct credentials.
Setup

Enable permission framework as shown here
Deploy a service to cluster and add it to backstage locations
Setup kubernetes-backend as shown here and here
Try out the endpoints with KubernetesDenyAllResourcePermissionPolicy policy (You can add custom permission as shown here)

:heavy_check_mark: Checklist

[X] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[X] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[X] All your commits have a Signed-off-by line in the message. (more info)

WDYT @freben @Rugvip @vinzscam about adding a new permission to kubernetes for remaining endpoints? I can see there was already a fine-grained approach to solve the need for permissions here.

@vinzscam thanks for the review!
Yeah, it makes sense to add separate permissions that can be used if needed.

@vinzscam I divided the endpoint permissions, however, I think it would make more sense to add /services/{service-id} endpoint under kubernetes.resources permission, since that is the only one endpoint under services, which is deprecated and is doing the same as /resources/workloads/query


Add SourceLink for libLLVM.dll

VS 2017 15.8 supports SourceLink for C++ projects.
https://docs.microsoft.com/en-us/cpp/build/reference/sourcelink?view=vs-2017
This will allow libLLVM.dll to be debugged into with sources indexed on a GIT repo for a particular release.

This is probably an issue that should be opened against libLLVM and libClang proper as ideally we would move entirely to pre-built binaries.

Now that you have everything building as such it probably does make sense that way. We may have to move till their GitHub move.


Error writepp function with eccentricity free and omega fixed

Hola Nestor!
I got the following error when doing the fit using a free eccentricity but a fixed omega:
`~/anaconda3/envs/juliet/lib/python3.8/site-packages/juliet/utils.py in writepp(fout, posteriors, priors)
582             elif 'ecc_'+planet in posteriors['posterior_samples']:
583                 ecc = posteriors['posterior_samples']['ecc_'+planet]
--> 584                 omega = posteriors['posterior_samples']['omega_'+planet]*np.pi/180.
585             else:
586                  ecc = 0.
KeyError: 'omega_p1'
It is mandatory to have both parameters free during the fit?
Gracias!
Sergio

Hey @sergiohoyer --- very late coming to this. Finally wrote a workaround for this --- should be fixed in the next version (2.2.8). Not pushing that now as it is not critical. Will close this comment when that version is up.
N.


Fix components registration in subdirectory when using wildcard

When you have a wildcard configuration (for Resources/Pages/Widgets) and your components are in subdirectory, $variableNamespace returns a bad value and the components are not loaded.
The fix is not very elegant, I haven't found a simpler solution than this.
Related issue

Thanks


Create sample HA deployment

Create a sample chart for demonstrating a high-availability deployment of the Crux repository:

2-3 OMAG Server Platform pods
Each configured with the same configuration document for the Crux repo config
Each Crux repo config using a local (e.g. Rocks) index, but pointing to the same "remote" (OMAG-external) document store and transaction log
Probably simplest to start with just Kafka as this external store (for both document store and transaction log)

Configure the polling latency for Kafka to be 10-50ms rather than 1 full second, so that the default sync-index behaviour is not degraded too much by the polling intervals.
Also document the structure of such a configuration for reference purposes (explaining that Kafka is used only as an example, but could be other external mechanisms like S3, JDBC, etc).

Also consider documenting a more dynamic HA deployment:

New connector OMAG pods that can come online (or be dropped) at any time
Some quorum mechanism across the pods so that one of the pods can be elected to periodically create an index checkpoint and store in some out-of-cluster location (e.g. S3)
Initial index store of each new OMAG pod taken from the latest such external checkpoint (see: https://opencrux.com/reference/21.04-1.16.0/checkpointing.html)
A readiness probe that would ideally only succeed once the pod's local index is up-to-date (not sure this would be feasible, as what would indicate it is up-to-date assuming there is always some activity happening via other pods (?))

This will be reliant on having a configuration mechanism for the OMAG platform itself that does not require configuration and / or startup via REST, as otherwise the readiness probe would have to be successful just to configure and startup the platform -- in which case it would already start receiving other traffic via a load-balancing service, all of which would fail prior to the connector being configured and started up (takes at least 20-30 seconds for an empty system, could be several minutes or longer if also bootstrapping its index).  Having several minutes of "random" failures for requests that the load-balancer just happens to send to this bootstrapping pod would be unacceptable -- hence dependency on having a non-REST mechanism to start the pods, so readiness probe can indicate that the pod is truly ready to start receiving and (correctly) responding to requests.

Moved dynamic deployment to a new issue #150, given its dependency on Egeria core changes.  Initial documentation of the original issue is now complete: https://odpi.github.io/egeria-connector-crux/high-availability/


[Tools] Futil Output Comparison

This PR attempts to add a shell script that applies different passes incrementally to an input file and compare the interpreter output of the original file with different lowered versions of it, as well as with the verilator output.
TODO:

[ ] Lowered version testing
[ ] Verilator output testing with input data

Looks neat! Could you expand a little bit on what you mean by "lowered version testing"? Wouldn't this test the most-lowered version of the program already at the end of the pipeline?

Is this supposed to subsume #615?

@yn224 Can provide an update on what would it take to get this PR merged? Any outstanding action items that need to be resolved?

@yn224 Can provide an update on what would it take to get this PR merged? Any outstanding action items that need to be resolved?
No major issue that needs to be addressed yet. The one problem that I have is the approach that I am taking I guess. The current implementation runs passes in sequence and after each pass, it tries to test whether there exist differences between the output of the original file and that of the file after applying a pass. But sometimes, a pass creates dead groups that are resolved later by different passes (allusions to the discussion about making validation passes a bit more permissive?).
Ultimately, enabling this test to be able to run as part of the CI would mean that it is ready to get merged.

Just to confirm: are you saying that the main blocker here is that the errors about dead groups are overzealous, as discussed internally here?
https://cucapra.slack.com/archives/CLLM75W4R/p1628691619004200
If so, the thing to do as a next step might be to whip up a PR that turns off that check (or turns it into a warning instead of an error) so we can move the discussion forward about whether that's exactly what we want to do.

#635 Added a new pass dead-group-removal that can remove unused groups. The validation passes will still complain if you don't use groups so the correct thing to do is running -p dead-group-removal before any other passes run.

@yn224 can you respond to @sampsyo's comment above and see if dead-group-removal helps you make progress on this PR and make it mergeable?

@sampsyo @rachitnigam Thank you for all the comments. I tried out different things using the file interp/tests/control/if.futil to make it work and this is where I am now:
Applying dead-group-removal pass before any passes run does not solve the issue unfortunately. Instead, a round-about solution is used. The introduction of tdcc group causes the simulation to fail until component-interface-inserter gets applied.
Thinking that the dead-group-removal pass attempts to remove unnecessarily annotated groups, I tried applying it after tdcc pass and this is what I got:
`/home/alexna/calyx/target/debug/futil -l /home/alexna/calyx -b futil  -p well-formed -p papercut -p guard-canonical -p remove-comb-groups -p infer-static-timing -p collapse-control -p resource-sharing -p minimize-regs -p compile-invoke -p compile-empty -p tdcc -p dead-group-removal' failed:
=====STDERR=====
thread 'main' panicked at 'Malformed AST: No reference to Group for port `Port {
    name: Id {
        id: "go",
    },
    width: 1,
    direction: Inout,
    parent: Group(
        WRC {
            internal: (Weak),
        },
    ),
    attributes: Attributes {
        attrs: {},
    },
}'', calyx/src/ir/printer.rs:419:40
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

=====STDOUT=====
import "primitives/core.futil";
component main<"static"=3>(@go go: 1, @clk clk: 1, @reset reset: 1) -> (@done done: 1) {
  cells {
    @external mem = std_mem_d1(32, 1, 1);
    lt = std_lt(32);
    @generated comb_reg = std_reg(1);
    @generated fsm = std_reg(2);
  }
  wires {
    group tdcc {

The "unnecessarily annotated group" would refer to groups like true, false, and cond0 in the file attached below.
10-tdcc.txt

dead-groups will remove any group not present in the control program. Tdcc eliminates all groups from the control program and instead moves them to the structural language using group[go] and group[done].
so technically, those groups are still being used and shouldn’t be removed from the component. Can you write a small calyx program that uses a group[go] signal for one of the groups and validate this bug? If it is a bug, open an issue.

@yn224 Changes in https://github.com/cucapra/calyx/commit/8ccff7c9fa2527e5147d315b1ec3cebce5081053 make it so that after running tdcc shouldn't cause dead-group-removal to generate invalid code.


Bug for custom input image size fix

When the input image size is changed for the model, it is constant in trt_inference.py

https://github.com/JDAI-CV/fast-reid/blob/9208930c11ca26a8a92255a5323e979d9eb68282/tools/deploy/trt_inference.py#L164-L168
Here is the image resize processing.


[TYPE 1] [Set workbook parameter value in REST API call]

Summary
Set the value of view parameters (like vf filtering, but for parameters).
Description
Be able to set the value of a parameter in a view using a method, like the method vf('filter_name', 'filter_Value') but for parameters. In the REST API, the request would look like this: GET /api/api-version/sites/site-id/views/view-id/data?vf_Parameters.=parameter-value
This would allow having only one workbook, but download multiple different view images with different data each one.

This is already possible by using ImageRequestOptions.
opts = TSC.ImageRequestOptions()
opts.vf("Parameters.param_name", "parameter_value")
...


MB-4489 Show ZIP code if shipment address missing

Description
If the service member doesn't know their full destination address for
the shipment, the form defaults to their new duty station ZIP code.
On the Move task order tab in the Office app, we were wrongly assuming
every shipment would have a destination address, resulting in the
string undefined for the city, state, and ZIP.
To fix this, we check to see if a destination address exists, and if
not, we fall back to the postal code of the order's new duty station.
I also fixed a formatting issue where a comma was missing between the
city and state of the pickup address.
Reviewer Notes

Sign in as a service member and submit a move with an HHG shipment that doesn't have a full destination address.
Sign in as a TOO and view the move you created in step 1.
Approve the shipment
Click on the Move task order tab

Expected Result: Under the "Household Goods" heading, verify that the you see the postal code of the destination, and not 3 undefined strings. See the screenshots below for reference.
Setup
make db_dev_e2e_populate
make server_run
make office_client_run (in a separate terminal tab)

Code Review Verification Steps

[ ] Code follows the guidelines for Logging
[ ] The requirements listed in
Querying the Database Safely
have been satisfied.
Any new migrations/schema changes:

[ ] Follow our guidelines for zero-downtime deploys (see Zero-Downtime Deploys)
[ ] Have been communicated to #g-database
[ ] Secure migrations have been tested following the instructions in our docs

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, IE, Edge).
[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] User facing changes have been reviewed by design.
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change

Screenshots
Before:

After:

Messages

:book:
:link: MB-4489

  Generated by :no_entry_sign: dangerJS against ecfc1fa3512cbd759fb8ce02f6c7105b1006459a


Better typings for Array.concat()

Fixes #26378
Fixes #26976

@Jessidhia Thank you for this feedback! I've now updated the PR accordingly.


updated patch for dpi and added some hosts which no longer welcome RU users

updated patch for dpi (from https://github.com/GubernievS/AntiZapret-VPN/blob/main/setup/root/patch-openvpn.sh) and added some hosts which no longer welcome RU users

Only tabs/spaces changed in opvpn patch?

@xtrime-ru  https://github.com/xtrime-ru/antizapret-vpn-docker/pull/80/commits/b803a2add67ef214848621d85327378977d4b000#diff-dd2c0eb6ea5cfc6c4bd4eac30934e2d5746747af48fef6da689e85b752f39557R86


feat(perf): support iperf-style intermittent results

Introduces an intermediate result printed to stdout every 1s.
Required for https://github.com/libp2p/test-plans/issues/261.

@marten-seemann can you give this pull request a review?

@marten-seemann can you give this another review?

Wow, that was fast. Thank you.


DOC: stats: Fix boxcox docstring: lambda can be negative.

Documentation renders correctly, but I'm not sure if we should be using '≠' or '!='
In scipy.stats.yeojohnson we see 'for x >= 0, lmbda != 0'
in scipy.stats.levy_stable we see 'where alpha = 1 and beta != 0'
The only other use of '≠' is in a test file (signal/tests/test_signaltools.py)

I changed it from ≠ to !=.  Let's defer the discussion of how much Unicode we want in docstrings for now.

Thanks @WarrenWeckesser
Do you have strong feelings on unicode?
I did some searching and found:
It looks like we have a tools/unicode-check.py which only allows ~12 unicode characters (including ≠)
There are only ~30 uses of unicode characters currently used (outside of doc release, thanks, and mailmap)
(numpy-dev) eights:~/test/scipy$ /bin/grep -rI --color=always -P -n "[\x80-\xFF]" . | grep -v "\(/doc/release\|THANKS\|./build/\|mailmap\)"
./scipy/ndimage/src/ni_splines.c:250: * obtained from a private communication with Dr. Philippe Thévenaz.
./scipy/special/specfun/specfun.f:4353:C                  n = 0,±1,±2,… )
./scipy/special/specfun/specfun.f:6750:C       Purpose: Compute modified Fresnel integrals F±(x)
./scipy/special/specfun/specfun.f:6751:C                and K±(x)
./scipy/special/specfun/specfun.f:6752:C       Input :  x   --- Argument of F±(x) and K±(x)
./scipy/special/specfun/specfun.f:6756:C       Output:  FR  --- Re[F±(x)]
./scipy/special/specfun/specfun.f:6757:C                FI  --- Im[F±(x)]
./scipy/special/specfun/specfun.f:6758:C                FM  --- |F±(x)|
./scipy/special/specfun/specfun.f:6759:C                FA  --- Arg[F±(x)]  (Degs.)
./scipy/special/specfun/specfun.f:6760:C                GR  --- Re[K±(x)]
./scipy/special/specfun/specfun.f:6761:C                GI  --- Im[K±(x)]
./scipy/special/specfun/specfun.f:6762:C                GM  --- |K±(x)|
./scipy/special/specfun/specfun.f:6763:C                GA  --- Arg[K±(x)]  (Degs.)
./scipy/special/specfun/specfun.f:7218:C                n   --- Order of Dn(z) (n = 0,±1,±2,…)
./scipy/special/specfun/specfun.f:7948:C                n --- Order of Dn(z)  ( n=0,±1,±2,… )
./scipy/special/specfun/specfun.f:8459:C       Purpose: Compute parabolic cylinder functions W(a,±x)
./scipy/special/specfun/specfun.f:8462:C                x --- Argument of W(a,±x)  ( 0 ≤ |x| ≤ 5 )
./scipy/special/specfun/specfun.f:8999:C       Output:  RY(n) --- x·yn(x)
./scipy/special/specfun/specfun.f:9000:C                DY(n) --- [x·yn(x)]'
./scipy/special/specfun/specfun.f:9244:C                U(a,b,x) with integer b ( b = ±1,±2,... )
./scipy/special/specfun/specfun.f:11017:C       Output:  RJ(n) --- x·jn(x)
./scipy/special/specfun/specfun.f:11018:C                DJ(n) --- [x·jn(x)]'
./scipy/special/specfun/specfun.f:11375:C                  n = 0,±1,±2,… )
./scipy/stats/_continuous_distns.py:3765:    This distribution is also known as the Fréchet distribution or the
./scipy/optimize/_trlib/trlib/trlib_tri_factor.h:53: *  The algorithm is the Moré-Sorensen-Method as described as Algorithm 5.2 in [Gould1999]_.
./scipy/optimize/_trlib/trlib/trlib_krylov.h:110: *  that is solved using Moré-Sorensens method by explicitly
./scipy/io/matlab/tests/test_mio.py:1134:    var = {'second_cat': 'Schrödinger'}
./scipy/io/__init__.py:14:MATLAB® files
./scipy/io/__init__.py:24:IDL® files
./scipy/sparse/linalg/dsolve/SuperLU/SRC/sp_coletree.c:274: * This routine was contributed by Cédric Doucet, CEDRAT Group, Meylan, France.
./scipy/sparse/linalg/eigen/arpack/ARPACK/COPYING:15:Copyright (c) 2010 - Jordi Gutiérrez Hermoso (Octave patch)
./scipy/sparse/linalg/eigen/arpack/ARPACK/COPYING:17:Copyright (c) 2007 - Sébastien Fabbro (gentoo patch)
./scipy/sparse/linalg/eigen/arpack/ARPACK/CHANGES:73:  [ Jordi Gutiérrez Hermoso ]
./scipy/sparse/linalg/eigen/arpack/ARPACK/CHANGES:87:     Thanks to Kyrre Sjøbæk for finding the bug and the fix.
./doc/source/building/linux.rst:122:to use Intel® MKL for Intel® 64 (or earlier known as em64t)
./doc/source/building/linux.rst:123:architecture, considering the default installation path of Intel® MKL,
./doc/source/building/linux.rst:124:which is bundled with Intel® Composer XE SP1 version on Linux:
./doc/source/building/linux.rst:142:Instead of the layered linking approach for the Intel® MKL as shown
./doc/source/building/linux.rst:158:and Intel® AVX optimizations for Intel® Xeon E5 or E3 Series, which are
./doc/source/building/linux.rst:159:based on Intel® SandyBridge Architecture (-avx). Run icc --help for
./doc/source/building/linux.rst:175:You'll have to set LD_LIBRARY_PATH to Intel® MKL libraries (exact
./doc/source/building/linux.rst:178:for Intel® 64 platforms:
./doc/source/tutorial/stats/continuous_levy_l.rst:4:Left-skewed Lévy Distribution
./doc/source/tutorial/stats/continuous_levy_l.rst:7:Special case of Lévy-stable distribution with :math:`\alpha=\frac{1}{2}` and
./doc/source/tutorial/stats/continuous_levy.rst:4:Lévy Distribution
./doc/source/tutorial/stats/continuous_levy.rst:7:A special case of Lévy-stable distributions with :math:`\alpha=\frac{1}{2}`
./doc/source/tutorial/linalg.rst:819:scaling and a Padé approximation for :math:`e^{x}`. This algorithm is
./doc/source/tutorial/spatial.rst:311:   ...     code in turn was based on Antonio Sánchez Chinchón's R code [3]_.
./doc/source/dev/governance/people.rst:27:* Jaime Fernández del Río
./doc/source/dev/contributor/cython.rst:100:      715 ms ± 10.7 ms per loop
./doc/source/dev/contributor/cython.rst:130:      359 ms ± 6.98 ms per loop
./doc/source/dev/contributor/cython.rst:173:I get something like: ``68.6 ns ± 1.95 ns per loop``. The Cython code ran
./tools/unicode-check.py:13:allowed = (set(['®', 'é', 'ö', 'λ', 'π', 'ω', '∫', '≠']) |

Removing names and ® uses leaves
./scipy/special/specfun/specfun.f:4353:C                  n = 0,±1,±2,… )
./scipy/special/specfun/specfun.f:6750:C       Purpose: Compute modified Fresnel integrals F±(x)
./scipy/special/specfun/specfun.f:6751:C                and K±(x)
./scipy/special/specfun/specfun.f:6752:C       Input :  x   --- Argument of F±(x) and K±(x)
./scipy/special/specfun/specfun.f:6756:C       Output:  FR  --- Re[F±(x)]
./scipy/special/specfun/specfun.f:6757:C                FI  --- Im[F±(x)]
./scipy/special/specfun/specfun.f:6758:C                FM  --- |F±(x)|
./scipy/special/specfun/specfun.f:6759:C                FA  --- Arg[F±(x)]  (Degs.)
./scipy/special/specfun/specfun.f:6760:C                GR  --- Re[K±(x)]
./scipy/special/specfun/specfun.f:6761:C                GI  --- Im[K±(x)]
./scipy/special/specfun/specfun.f:6762:C                GM  --- |K±(x)|
./scipy/special/specfun/specfun.f:6763:C                GA  --- Arg[K±(x)]  (Degs.)
./scipy/special/specfun/specfun.f:7218:C                n   --- Order of Dn(z) (n = 0,±1,±2,…)
./scipy/special/specfun/specfun.f:7948:C                n --- Order of Dn(z)  ( n=0,±1,±2,… )
./scipy/special/specfun/specfun.f:8459:C       Purpose: Compute parabolic cylinder functions W(a,±x)
./scipy/special/specfun/specfun.f:8462:C                x --- Argument of W(a,±x)  ( 0 ≤ |x| ≤ 5 )
./scipy/special/specfun/specfun.f:8999:C       Output:  RY(n) --- x·yn(x)
./scipy/special/specfun/specfun.f:9000:C                DY(n) --- [x·yn(x)]'
./scipy/special/specfun/specfun.f:9244:C                U(a,b,x) with integer b ( b = ±1,±2,... )
./scipy/special/specfun/specfun.f:11017:C       Output:  RJ(n) --- x·jn(x)
./scipy/special/specfun/specfun.f:11018:C                DJ(n) --- [x·jn(x)]'
./scipy/special/specfun/specfun.f:11375:C                  n = 0,±1,±2,… )
./doc/source/dev/contributor/cython.rst:100:      715 ms ± 10.7 ms per loop
./doc/source/dev/contributor/cython.rst:130:      359 ms ± 6.98 ms per loop
./doc/source/dev/contributor/cython.rst:173:I get something like: ``68.6 ns ± 1.95 ns per loop``. The Cython code ran
./tools/unicode-check.py:13:allowed = (set(['®', 'é', 'ö', 'λ', 'π', 'ω', '∫', '≠']) |

Which is ~20 ± and ~5 ·


AttributeError: 'NoneType' object has no attribute 'GetMapper'

Hi, thank you for your wonderful work, I have learned a lot from your code. But could you have me with this question?
I want to prepare rendered data using my raw data (.wrl, .bmp, and the landmark .txt files). But when run the preparedata.py file, I got the following problems. Unfortunately, I can not solve it. Do you know anything about it? I guess there is some format difference between your data and mine. If it is possible, could you share a set of example data for training? Maybe the data from DTU dataset because the BU_3DFE dataset is not available to download freely.
Preparing BU-3DFE data
Read  10  file ids
Processing  7  file ids for training
Processing  F0001\F0001_AN02WH
F0001\F0001_AN02WH  is locked - skipping
Processing  F0001\F0001_AN03WH
F0001\F0001_AN03WH  is locked - skipping
Processing  F0001\F0001_AN04WH
F0001\F0001_AN04WH  is locked - skipping
Processing  F0001\F0001_DI01WH
Rendering  F0001\F0001_DI01WH
Error near line 2: parse error
Traceback (most recent call last):
File "D:/07_AutomaticLandmarking/Paulsen_DeepMVLM/preparedata.py", line 349, in
main(cfg_global)
File "D:/07_AutomaticLandmarking/Paulsen_DeepMVLM/preparedata.py", line 334, in main
prepare_bu_3dfe_data(config)
File "D:/07_AutomaticLandmarking/Paulsen_DeepMVLM/preparedata.py", line 327, in prepare_bu_3dfe_data
process_file_bu_3dfe(config, base_name, output_dir)
File "D:/07_AutomaticLandmarking/Paulsen_DeepMVLM/preparedata.py", line 97, in process_file_bu_3dfe
pd = vrmlin.GetRenderer().GetActors().GetLastActor().GetMapper().GetInput()
AttributeError: 'NoneType' object has no attribute 'GetMapper'

@RasmusRPaulsen

@RasmusRPaulsen

hi @cuixin1992, it seems your error comes from VTK module in preparedata.py file :
` vrmlin = vtk.vtkVRMLImporter()
vrmlin.SetFileName(name_pd)
vrmlin.Update()
pd = vrmlin.GetRenderer().GetActors().GetLastActor().GetMapper().GetInput()`

try to see if you installed the right version of vtk

hi @cuixin1992, it seems your error comes from VTK module in preparedata.py file :
` vrmlin = vtk.vtkVRMLImporter()
vrmlin.SetFileName(name_pd)
vrmlin.Update()
pd = vrmlin.GetRenderer().GetActors().GetLastActor().GetMapper().GetInput()`

try to see if you installed the right version of vtk

Hi, @bilelmnasser, thank you for your answer.
I install the same version of packages with the author, except the libnetcdf 4.7.1. Mine is libnetcdf 4.6.1 I really cannot find the same version.
After several tries, I got the 'GetMapper' problem using some data. For several data, I can run the preparedata.py without error. But I got the blank images. I prepared .bmp and .wrl scanned by Artec hand scanner. I am not sure what's wrong with my data.

Hi, @bilelmnasser, thank you for your answer.
I install the same version of packages with the author, except the libnetcdf 4.7.1. Mine is libnetcdf 4.6.1 I really cannot find the same version.
After several tries, I got the 'GetMapper' problem using some data. For several data, I can run the preparedata.py without error. But I got the blank images. I prepared .bmp and .wrl scanned by Artec hand scanner. I am not sure what's wrong with my data.

Hi,
The problem is that the code is using vtk.vtkVRMLImporter() that only supports VRML 2.0.
The file from @cuixin1992 is in VRML 1.0 and therefore the file parser fails.
There are no easy ways to fix this from my side.
If you in any way can convert your files from VRML 1.0 to VRML 2.0 it should work.
Also do remember, that you should apply a pre-transformation if your scans are not roughly aligned to the default coordinate system. Let me know if this is an issue.
Best,
Rasmus

Hi,
The problem is that the code is using vtk.vtkVRMLImporter() that only supports VRML 2.0.
The file from @cuixin1992 is in VRML 1.0 and therefore the file parser fails.
There are no easy ways to fix this from my side.
If you in any way can convert your files from VRML 1.0 to VRML 2.0 it should work.
Also do remember, that you should apply a pre-transformation if your scans are not roughly aligned to the default coordinate system. Let me know if this is an issue.
Best,
Rasmus

@cuixin1992 I now managed to make the code running with your data. What I did was:

used http://www.interocitors.com/polyhedra/vr1tovr2/index.html to convert the scan to VRML 2.0
used the geometry only pre-trained network for BU-3DFE (configs/BU_3DFE-geometry.json)
Used a pre-rotation (-90 degrees around y axis) in the JSON file:
"pre-align": {
"align_center_of_mass" : false,
"rot_x": 0,
"rot_y": -90,
"rot_z": 0,
"scale": 1,
"write_pre_aligned": false
}

This way the landmarks are successfully found on one of the test scans.
Please let me know if this approach does not work.

@cuixin1992 I now managed to make the code running with your data. What I did was:

used http://www.interocitors.com/polyhedra/vr1tovr2/index.html to convert the scan to VRML 2.0
used the geometry only pre-trained network for BU-3DFE (configs/BU_3DFE-geometry.json)
Used a pre-rotation (-90 degrees around y axis) in the JSON file:
"pre-align": {
"align_center_of_mass" : false,
"rot_x": 0,
"rot_y": -90,
"rot_z": 0,
"scale": 1,
"write_pre_aligned": false
}

This way the landmarks are successfully found on one of the test scans.
Please let me know if this approach does not work.

Thank you very much for your instructions.
After changing the data to VRML 2.0, I can use the preparedata.py without error. But I still got one problem that the output rendering files were empty. I wonder if you can get the rendered images using my data.
I think it is not the rotation problem because I tried your method by your code and I also tried to roughly align them manually. There is no change to the result.

Thank you very much for your instructions.
After changing the data to VRML 2.0, I can use the preparedata.py without error. But I still got one problem that the output rendering files were empty. I wonder if you can get the rendered images using my data.
I think it is not the rotation problem because I tried your method by your code and I also tried to roughly align them manually. There is no change to the result.

I agree that preparedata.py is not very user friendly. Unless your data is exactly in the format of BU_3DFE it needs quite some code tweaking.  Some things can be done by modifying the JSON file that you use. I managed to make renderings of your data by setting:
    "type": "MVLMModel",
    "args": {
        "n_landmarks": 15,
        "n_features": 256,
        "dropout_rate": 0.2,
        "image_channels": "RGB"
    }

"process_3d": {
"filter_view_lines": "quantile",
"heatmap_max_quantile": 0.5,
"heatmap_abs_threshold": 0.5,
"write_renderings": false,
"off_screen_rendering": true,
"min_x_angle": -20,
"max_x_angle": 20,
"min_y_angle": -130,
"max_y_angle": -50,
"min_z_angle": -20,
"max_z_angle": 20
},
"pre-align": {
	"align_center_of_mass" : false,
	"rot_x": 0,
	"rot_y": 0,
	"rot_z": 0,
	"scale": 1,
	"write_pre_aligned": false
}

If you have further issues, please show me the console output.

I agree that preparedata.py is not very user friendly. Unless your data is exactly in the format of BU_3DFE it needs quite some code tweaking.  Some things can be done by modifying the JSON file that you use. I managed to make renderings of your data by setting:
    "type": "MVLMModel",
    "args": {
        "n_landmarks": 15,
        "n_features": 256,
        "dropout_rate": 0.2,
        "image_channels": "RGB"
    }

"process_3d": {
"filter_view_lines": "quantile",
"heatmap_max_quantile": 0.5,
"heatmap_abs_threshold": 0.5,
"write_renderings": false,
"off_screen_rendering": true,
"min_x_angle": -20,
"max_x_angle": 20,
"min_y_angle": -130,
"max_y_angle": -50,
"min_z_angle": -20,
"max_z_angle": 20
},
"pre-align": {
	"align_center_of_mass" : false,
	"rot_x": 0,
	"rot_y": 0,
	"rot_z": 0,
	"scale": 1,
	"write_pre_aligned": false
}

If you have further issues, please show me the console output.

No, I think you did a great job! It is not the problem of your code, it is my problem. I am still a beginner at coding, so I can't solve problems very smoothly. But thanks to your help, I  further understood your code and learned a lot. And I am sorry I took up a lot of your time.
I tried your rotation and tried many combinations that may work in my opinion. And I also manually aligned data. But I still got the blank rendered images, which let me guess, I have other problems. I think I still didn't read the .wrl properly.
Here are the console output and variable output.

No, I think you did a great job! It is not the problem of your code, it is my problem. I am still a beginner at coding, so I can't solve problems very smoothly. But thanks to your help, I  further understood your code and learned a lot. And I am sorry I took up a lot of your time.
I tried your rotation and tried many combinations that may work in my opinion. And I also manually aligned data. But I still got the blank rendered images, which let me guess, I have other problems. I think I still didn't read the .wrl properly.
Here are the console output and variable output.

@RasmusRPaulsen Hi, Prof. Rasmus R. Paulsen, how are you doing? Are you still very busy? Actually, I had not found where the problem is. I did not solve the rendering problem yet. I check the scale and the direction of the face, but it seems that the problem not happened here. I wonder did you successfully rendered the data I sent you? If so, I will further check the alignment problem. Thank you very much.


Update eslint, deps & update src files

Coverage remained the same at 100.0% when pulling 0c1b5e48c208ac4542357534defa7681e467fbc9 on eslint-and-deps into 137ae4702e56fa137591b97eff8085b9fb0c2ab0 on master.


maximum number of running instances reached (1)

Hey,
I'm not sure if this is a bug but I'm constantly getting the following error after doing lot's of API calls:
maximum number of running instances reached (1)
I have checked multitple times that I don't have IBKR app open, IBKR is not logged in TradingView, TWS is not running and I'm not logged into IBKR in my browser. I don't understand why I get the error.
Is it possible to make it force log out the other session? TWS has that option when it says you are already logged in.

It seems that the "another" running instance is iBeam itself. If I shut it down for one minute and restart, it will log in successfully.

Hi @jussirantala thanks for reporting your issue and for bearing with me - busy period over the holidays.
Sorry to hear you're running into these issues. Could I ask you to provide more info? You can use the bug report template: https://github.com/Voyz/ibeam/issues/new?assignees=&labels=bug&template=bug_report.md&title=
From your recent reply, do I understand you've had multiple instances of IBeam running?

No, only one instance. But for some reason restarting the single instance helps with this issue.

Gotcha. That sounds like an issue with APS trying to schedule a new maintenance while the previous didn't finish. If you shared your logs we could see what could possibly be the issue 👍

Closing this issue due to lack of activity. Feel free to reopen if you'd like to continue the discussion 👍

2024-11-17 09:49:06,874|I| Cleaning up the resources. Display: <pyvirtualdisplay.display.Display object at 0x7c839ed64090> | Driver: <selenium.webdriver.chrome.webdriver.WebDriver (session="2e8589de6bc28f88a6abb5906aa40783")>
Execution of job "GatewayClient._maintenance (trigger: interval[0:01:00], next run at: 2024-11-17 09:49:36 PST)" skipped: maximum number of running instances reached (1)
Execution of job "GatewayClient._maintenance (trigger: interval[0:01:00], next run at: 2024-11-17 09:50:36 PST)" skipped: maximum number of running instances reached (1)
2024-11-17 09:51:23,435|I| Logging in failed
2024-11-17 09:51:36,325|I| Maintenance
2024-11-17 09:51:36,656|I| Attempt number 2
2024-11-17 09:51:37,093|I| Max request retries reached after 2 attempts. Consider increasing the retries by setting IBEAM_REQUEST_RETRIES environment variable
2024-11-17 09:51:37,094|I| NO SESSION Status(running=True, session=False, connected=False, authenticated=False, competing=False, collision=False, session_id=None, server_name=None, server_version=None, expires=None)
2024-11-17 09:51:37,094|I| Authentication strategy: "B"
2024-11-17 09:51:37,094|I| No active sessions, logging in...
2024-11-17 09:51:37,094|I| Loading auth webpage at https://localhost:5000/sso/Login?forwardTo=22&RL=1&ip2loc=on
2024-11-17 09:51:51,310|I| Gateway auth webpage loaded
2024-11-17 09:51:51,310|I| Login attempt number 1
2024-11-17 09:51:56,721|I| Submitting the form
2024-11-17 09:52:04,194|I| Webpage displayed "Client login succeeds"
2024-11-17 09:52:05,194|I| Cleaning up the resources. Display: <pyvirtualdisplay.display.Display object at 0x7c839ed77910> | Driver: <selenium.webdriver.chrome.webdriver.WebDriver (session="129172839864435a44cf09038cf79587")>
Execution of job "GatewayClient._maintenance (trigger: interval[0:01:00], next run at: 2024-11-17 09:52:36 PST)" skipped: maximum number of running instances reached (1)
Execution of job "GatewayClient._maintenance (trigger: interval[0:01:00], next run at: 2024-11-17 09:53:36 PST)" skipped: maximum number of running instances reached (1)


[Question] How to invoke lambda without using API Gateway and access the params?

What is the current behavior?
I got 403 error when calling API.get(). Did I miss some steps?
err message is
Unable to determine service/operation name to be authorized
I configured Amplify based on the following example. Does yourFuncName have to be an arn?
https://aws.github.io/aws-amplify/media/api_guide
 API: {
        endpoints: [
            {
                name: "MyCustomLambdaApi",
                endpoint: "https://lambda.us-east-1.amazonaws.com/2015-03-31/functions/yourFuncName/invocations",
                service: "lambda",
                region: "us-east-1"
            }
        ]
    }

Which versions of Amplify, and which browser / OS are affected by this issue? Did this work in previous versions?
0.2.14

403 is a permissions (forbidden) error. Are you sure you credentials/role has invoke permissions? If you are using cognito you will need to make sure either your auth or unauth role has lambda invoke permissions. https://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html

right, I figured out that it is the credential error. The unauth role didn't have lambda invoke permission.
Thanks.

@mlabieniec I realized post worked after I added lambda invoke permission but API.get still gets 403 error.

Hello ! I have the same issue as @Jun711. I also have granted my cognito role to all lambda invoking.
Here is my Amplify configuration :
  API: {
    endpoints: [
      {
        name: 'MyLambda',
        endpoint: "https://lambda.eu-west-1.amazonaws.com/2015-03-31/functions/MyLambda/invocations",
        service: "lambda",
        region: "eu-west-1"
      }
    ]
  }

And the api call in JS :
    const apiName = 'MyLambda';
    const path = '';
    const myInit = {};
    API.get(apiName, path, myInit).then(response => {
      console.log(response);
    }).catch(error => {
      console.log(error);
    });

Did someone found any solution ?
Thanks in advance.

Same problem here. My code is exactly like @rqton mentioned in his post.
I'm making a post request, and in my cast the lambda function needs to be called by unauthenticated users, so I created a IAM role with the following conditions:
"Condition": {         "StringEquals": {           "cognito-identity.amazonaws.com:aud": "eu-west-1_xxxxxxxxx"         },         "StringLike": {           "cognito-identity.amazonaws.com:amr": "unauthenticated"         }       }, an then a policy that allows to invoke the lambda function.
When I'm calling it from amplify I just get a 403 error code. What am I doing wrong? Is there something I need to do beside this?


Updated the variance modelling functions to the new code standards.

Codecov Report

Merging #48 (5101966) into master (a6b6627) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##           master      #48   +/-   ##
=======================================
  Coverage   98.07%   98.08%
=======================================
  Files          89       89
  Lines        7551     7558    +7
  Branches      142      142
=======================================
+ Hits         7406     7413    +7
  Misses         78       78
  Partials       67       67

Impacted Files
Coverage Δ

include/scran/feature_selection/FitTrendVar.hpp
95.65% <100.00%> (+0.30%)
:arrow_up:

include/scran/feature_selection/ModelGeneVar.hpp
96.00% <100.00%> (+0.25%)
:arrow_up:

tests/src/feature_selection/ModelGeneVar.cpp
100.00% <100.00%> (ø)

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


Upgrade to Erlang 24x (Final)

This goes with the 'final' Erlang upgrade PR.
Summary:

Update rebar3
Use Erlang24 for verify pipeline

Currently failing verify, because Erlang 24 needs to be added to hab.

The new commit looks fine, but that package doesn't seem to exist yet.

The new commit looks fine, but that package doesn't seem to exist yet.

Yup, trying to get that added.

hab packages added:
https://buildkite.com/chef-oss/chef-mini-s3-main-verify/builds/65


Is Content-Encoding handled gracefully?

Prerequisites

[X] I have written a descriptive issue title
[X] I have searched existing issues to ensure the issue has not already been raised

Issue
https://github.com/mscdex/busboy/issues/150
https://github.com/expressjs/multer/pull/976
It was reported, that busboy breaks "silently" if payload is sent as gzip encoded. I dont think that we should handle gzip or any other content-encoding in busboy.
But we should check what "silently" means. Does it crash the server? Does it not throw any error?
For this we would need some payload to test with. @wenjunche can you please provide a complete payload to see what is happening?
Also we should consider to document that busboy does not handle content-encoding and use the "workaround" as solution .

@Uzlopak What's the takeaway?

In multer they suggest @wenjunche he should provide a PR to our repo. We should wait if he does so. No need to keep it track twice.


On rotate background image error ios7

The same error with wrong background size on device rotation.
On ios8 everything is ok, error is on ios7.

I've tested on 7.0.3 simulator and it works fine, can you give me the specific version where you got the error

This is wierd.
So, I compiled for 4S, ios7.1.2. Worked fine.
Then I imidiately run on ipad2 7.1.2, then artefacts (in attachment).
Then I clean project. All errors gone.
I rebuilt on 4S, run on ipad2, no errors. It is gone. So... I wonder :)
On Wed, Mar 25, 2015 at 9:55 AM, Leo<EMAIL_ADDRESS>wrote:

I've tested on 7.0.3 simulator and it works fine, can you give me the
specific version where you got the error
—
Reply to this email directly or view it on GitHub
https://github.com/ltebean/LTNavigationBar/issues/5#issuecomment-85906157
.


Removing nachocano from approvers/reviewers

Proposed Changes

Removing myself from approvers and reviewers as I'll be mainly working on other project(s).

Release Note

NONE

Docs

/assign @n3wscott

:cry:
/lgtm
No, does NOT look good to me!


Completed function refactoring for all modules.

I have built functions for all modules which has reduced all of the boilerplate code.
@hugobowne Please review the changes.

thanks, @paras009, this is great. Pedagogically, my plan is to not write the functions until we get to "recovered" -- i'll get everybody to write all the code the first time, then we'll copy&paste the second, then we'll write the functions
Are you able to edit this PR to reflect this?
Essentially, keep "Confirmed" & "Deaths" as they were previously, then include functions, then use them on "recovered".
LMK if you need clarification here.

Sure, I'll do that and update in next PR.

@hugobowne please verify the changes and let me know if they are good or still require some modifications.
Thanks!

this looks great! I'll make some other edits over the weekend, & let you know what else I'm thinking.


Allow to load RecordSets with inline data only.

Fixes https://github.com/mlcommons/croissant/issues/501.
Full operation graph:

Operation graph for the RecordSet:

Addresses #501


Moved from CRA to Vite and Added Auth

Pull Request Description
This PR implements significant changes to the codebase, migrating from Create React App (CRA) to Vite. The following updates have been made:

Landing Page: A new landing page has been created to enhance user experience.
404 Page: A creative 404 page has been implemented, utilizing Framer Motion and emojis for a dynamic user experience.
Authentication: The authentication process has been integrated using Clerk. Users can now click the "Sign In" button, which redirects them to the authentication page.

Issues to Address

Protected Routes: The Time Capsule page is currently protected. If a user attempts to access it without authentication, they should receive an appropriate error message. This needs to be fixed.
Sign-Up Navigation: When users click the "Get Started" button, they should be redirected to the sign-up page. A new sign-up component needs to be created to facilitate this functionality.

Screenshots

Great work


tea.Listen() to automatically listen on a chan tea.Msg

Is your feature request related to a problem? Please describe.
Currently, tea.Cmds can only send a single tea.Msg before terminating, making things awkward when there is a need for a continuously running function that sends multiple tea.Msgs.
This can be seen in the realtime example, where a wrapper function waitForActivity() must be used to relay messages from listenForActivity().
Describe the solution you'd like
A tea.Listen(func(chan<- tea.Msg)) tea.Cmd function to accompany functions like tea.Batch() or tea.Every(). It should create a chan tea.Msg, pass it to the given function and run it in a separate goroutine, and relay messages that it receives on said channel to the Update() function.
Below is how the realtime example would be changed. Note how there is no longer a need to manually resend waitForActivity() commands or pass around a channel.
diff --git a/examples/realtime/main.go b/examples/realtime/main.go
index 4abddd3..1e1a71c 100644
--- a/examples/realtime/main.go
+++ b/examples/realtime/main.go
@@ -21,25 +21,15 @@ type responseMsg struct{}
-func listenForActivity(sub chan struct{}) tea.Cmd {
-	return func() tea.Msg {
-		for {
-			time.Sleep(time.Millisecond * time.Duration(rand.Int63n(900)+100)) // nolint:gosec
-			sub <- struct{}{}
-		}
-	}
-}
-
-// A command that waits for the activity on a channel.
-func waitForActivity(sub chan struct{}) tea.Cmd {
-	return func() tea.Msg {
-		return responseMsg(<-sub)
+func listenForActivity(sub chan<- tea.Msg) {
+	for {
+		time.Sleep(time.Millisecond * time.Duration(rand.Int63n(900)+100)) // nolint:gosec
+		sub <- responseMsg{}
 	}
 }

 type model struct {
-	sub       chan struct{} // where we'll receive activity notifications
-	responses int           // how many responses we've received
+	responses int // how many responses we've received
 	spinner   spinner.Model
 	quitting  bool
 }
@@ -47,8 +37,7 @@ type model struct {
 func (m model) Init() tea.Cmd {
 	return tea.Batch(
 		m.spinner.Tick,
-		listenForActivity(m.sub), // generate activity
-		waitForActivity(m.sub),   // wait for activity
+		tea.Listen(listenForActivity), // generate activity
 	)
 }
@@ -58,8 +47,8 @@ func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
 	case responseMsg:
-		m.responses++                    // record external activity
-		return m, waitForActivity(m.sub) // wait for next event
+		m.responses++ // record external activity
+		return m, nil
@@ -79,7 +68,6 @@ func (m model) View() string {
 	p := tea.NewProgram(model{
-		sub:     make(chan struct{}),
 		spinner: spinner.New(),
 	})

This is an interesting idea (I'd probably call it tea.Subscribe). How would you cancel it when it's no longer needed?

Returning from the function would be sufficient, with the exact mechanism up to the user to decide. Here's the above example adapted to use a done channel, which is the standard way of stopping long-running goroutines:
func listenForActivity(done chan struct{}) func(chan<- tea.Msg) {
	return func(sub chan<- tea.Msg) {
		for {
			time.Sleep(time.Millisecond * time.Duration(rand.Int63n(900)+100)) // nolint:gosec

			select {
			case sub <- responseMsg{}:
			case <-done:
				return
			}
		}
	}
}
func (m model) Init() tea.Cmd {
	return tea.Batch(
		m.spinner.Tick,
		tea.Subscribe(listenForActivity(m.done)),
	)
}
func (m model) somewhere() {
	// ...
	close(m.done)
}

In practice, I suspect most real-world usage would involve progress indicators and be vastly easier to follow (which would be the whole point of this feature request):
func downloadFiles(sub chan<- tea.Msg) {
	fileList := []string{ /* ... */ }
	for i, file := range fileList {
		download(file)
		sub <- progressMsg{i * 100 / len(fileList)}
		sub <- statusMsg{"downloading " + file}
	}
	sub <- progressMsg{100}
	sub <- statusMsg{"finished downloading"}
}
func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
	// switch case { ...
		return m, tea.Subscribe(downloadFiles)
	// ... }
}

I think this generally makes sense, however we'd also need a way to cancel subscriptions from the outside as well. For example, in this case, the user might press a key to cancel the download and we'd need to stop the subscription before the download completed. I suppose Context?
For some reference, Elm programs have a dedicated function for subscriptions which is called after update. It works something like this.
subscriptions : model -> Sub msg
subscriptions m =
    if m.someState then
        Sub.batch [ someSub, someOtherSub ]
    else
        Sub.none

There's a lot of magic in cancelling subscriptions, though, and I know it was a tricky thing to get right.

I think this generally makes sense, however we'd also need a way to cancel subscriptions from the outside as well. For example, in this case, the user might press a key to cancel the download and we'd need to stop the subscription before the download completed. I suppose Context?

Let me take a stab at what this might look like:
func downloadFiles(ctx context.Context, fileList []string) func(chan<- tea.Msg) {
	return func(sub chan<- tea.Msg) {
		for i, file := range fileList {
			select {
			case <-ctx.Done():
				sub <- statusMsg{"download cancelled"}
				return
			default:
			}
			download(file)
			sub <- progressMsg{i * 100 / len(fileList)}
			sub <- statusMsg{"downloading " + file}
		}
		sub <- progressMsg{100}
		sub <- statusMsg{"finished downloading"}
	}
}

type model struct {
	// ...
	cancels []context.CancelFunc
}
func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
	switch {
	// case ...
	case "d":
		fileList := []string{ /* ... */ }
		ctx, cancel := context.WithCancel(context.Background())
		m.cancels = append(m.cancels, cancel)
		return m, tea.Subscribe(downloadFiles(ctx, fileList))

	case "esc":
		for _, cancel := range m.cancels {
			cancel()
		}
		m.cancels = nil
		return m, nil
	}
}

Does that look right?
If so, then it seems like there's no need for Bubble Tea itself to be aware of context.Context since cancelling is a fully orthogonal feature. Leaving it out would allow the API to remain simple, and enable users to use any cancellation mechanism they see fit[^1] - including omitting it entirely.
[^1]: I'm personally not particularly fond of context.Context. I feel that it's over-engineered and that there's plenty of ways to design a simpler cancellation pattern - for example, passing around a canceled func() error parameter, or writing Go 1.23 iterators that are designed to be cancellable.
On a side note, it dawned on me while I was typing this that Bubble Tea doesn't expose any concurrency primitives anywhere, so perhaps tea.Subscribe should also follow this convention:
-func downloadFiles(ctx context.Context, fileList []string) func(chan<- tea.Msg) {
-	return func(sub chan<- tea.Msg) {
+func downloadFiles(ctx context.Context, fileList []string) func(func(tea.Msg)) {
+	return func(send func(tea.Msg)) {
 		for i, file := range fileList {
 			select {
 			case <-ctx.Done():
-				sub <- statusMsg{"download cancelled"}
+				send(statusMsg{"download cancelled"})
 				return
 			default:
 			}
 			download(file)
-			sub <- progressMsg{i * 100 / len(fileList)}
-			sub <- statusMsg{"downloading " + file}
+			send(progressMsg{i * 100 / len(fileList)})
+			send(statusMsg{"downloading " + file})
 		}
-		sub <- progressMsg{100}
-		sub <- statusMsg{"finished downloading"}
+		send(progressMsg{100})
+		send(statusMsg{"finished downloading"})
 	}
 }


Installation error: error: subprocess-exited-with-error

🐛 Describe the bug
pip install super-gradients
Collecting super-gradients
  Downloading super_gradients-3.7.0-py3-none-any.whl.metadata (41 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.7/41.7 kB 984.1 kB/s eta 0:00:00
Requirement already satisfied: torch>=1.9.0 in /Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages (from super-gradients) (2.2.2)
Collecting tqdm>=4.57.0 (from super-gradients)
  Using cached tqdm-4.66.2-py3-none-any.whl.metadata (57 kB)
Collecting boto3>=1.17.15 (from super-gradients)
  Downloading boto3-1.34.75-py3-none-any.whl.metadata (6.6 kB)
Collecting jsonschema>=3.2.0 (from super-gradients)
  Using cached jsonschema-4.21.1-py3-none-any.whl.metadata (7.8 kB)
Collecting Deprecated>=1.2.11 (from super-gradients)
  Using cached Deprecated-1.2.14-py2.py3-none-any.whl.metadata (5.4 kB)
Collecting scipy>=1.6.1 (from super-gradients)
  Downloading scipy-1.12.0-cp311-cp311-macosx_10_9_x86_64.whl.metadata (60 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 60.4/60.4 kB 3.2 MB/s eta 0:00:00
Collecting matplotlib>=3.3.4 (from super-gradients)
  Downloading matplotlib-3.8.3-cp311-cp311-macosx_10_12_x86_64.whl.metadata (5.8 kB)
Collecting psutil>=5.8.0 (from super-gradients)
  Downloading psutil-5.9.8-cp36-abi3-macosx_10_9_x86_64.whl.metadata (21 kB)
Collecting tensorboard>=2.4.1 (from super-gradients)
  Downloading tensorboard-2.16.2-py3-none-any.whl.metadata (1.6 kB)
Collecting setuptools>=65.5.1 (from super-gradients)
  Downloading setuptools-69.2.0-py3-none-any.whl.metadata (6.3 kB)
Collecting coverage~=5.3.1 (from super-gradients)
  Using cached coverage-5.3.1.tar.gz (684 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: torchvision>=0.10.0 in /Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages (from super-gradients) (0.17.2)
Collecting sphinx~=4.0.2 (from super-gradients)
  Downloading Sphinx-4.0.3-py3-none-any.whl.metadata (8.0 kB)
Collecting sphinx-rtd-theme (from super-gradients)
  Using cached sphinx_rtd_theme-2.0.0-py2.py3-none-any.whl.metadata (4.4 kB)
Collecting torchmetrics==0.8 (from super-gradients)
  Downloading torchmetrics-0.8.0-py3-none-any.whl.metadata (20 kB)
Collecting hydra-core>=1.2.0 (from super-gradients)
  Downloading hydra_core-1.3.2-py3-none-any.whl.metadata (5.5 kB)
Collecting omegaconf (from super-gradients)
  Downloading omegaconf-2.3.0-py3-none-any.whl.metadata (3.9 kB)
Collecting onnxruntime==1.15.0 (from super-gradients)
  Downloading onnxruntime-1.15.0-cp311-cp311-macosx_10_15_x86_64.whl.metadata (3.9 kB)
Collecting onnx==1.15.0 (from super-gradients)
  Downloading onnx-1.15.0-cp311-cp311-macosx_10_12_x86_64.whl.metadata (15 kB)
Requirement already satisfied: pillow>=10.2.0 in /Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages (from super-gradients) (10.3.0)
Collecting pip-tools>=6.12.1 (from super-gradients)
  Downloading pip_tools-7.4.1-py3-none-any.whl.metadata (26 kB)
Collecting einops==0.3.2 (from super-gradients)
  Downloading einops-0.3.2-py3-none-any.whl.metadata (10 kB)
Collecting protobuf==3.20.3 (from super-gradients)
  Downloading protobuf-3.20.3-py2.py3-none-any.whl.metadata (720 bytes)
Collecting treelib==1.6.1 (from super-gradients)
  Using cached treelib-1.6.1.tar.gz (24 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Collecting termcolor==1.1.0 (from super-gradients)
  Using cached termcolor-1.1.0.tar.gz (3.9 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Collecting packaging>=20.4 (from super-gradients)
  Downloading packaging-24.0-py3-none-any.whl.metadata (3.2 kB)
Collecting wheel>=0.38.0 (from super-gradients)
  Using cached wheel-0.43.0-py3-none-any.whl.metadata (2.2 kB)
Collecting pygments>=2.7.4 (from super-gradients)
  Using cached pygments-2.17.2-py3-none-any.whl.metadata (2.6 kB)
Collecting stringcase>=1.2.0 (from super-gradients)
  Using cached stringcase-1.2.0.tar.gz (3.0 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Collecting numpy<=1.23 (from super-gradients)
  Downloading numpy-1.23.0.tar.gz (10.7 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.7/10.7 MB 5.8 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting rapidfuzz (from super-gradients)
  Downloading rapidfuzz-3.7.0-cp311-cp311-macosx_10_9_x86_64.whl.metadata (11 kB)
Collecting json-tricks==3.16.1 (from super-gradients)
  Downloading json_tricks-3.16.1-py2.py3-none-any.whl.metadata (17 kB)
Collecting onnxsim<1.0,>=0.4.3 (from super-gradients)
  Downloading onnxsim-0.4.36-cp311-cp311-macosx_10_15_universal2.whl.metadata (4.3 kB)
Collecting data-gradients~=0.3.1 (from super-gradients)
  Downloading data_gradients-0.3.2-py3-none-any.whl.metadata (21 kB)
Collecting albumentations~=1.3 (from super-gradients)
  Downloading albumentations-1.4.2-py3-none-any.whl.metadata (36 kB)
Collecting fonttools>=4.43.0 (from super-gradients)
  Downloading fonttools-4.50.0-cp311-cp311-macosx_10_9_x86_64.whl.metadata (159 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 159.4/159.4 kB 4.9 MB/s eta 0:00:00
Collecting werkzeug>=2.3.8 (from super-gradients)
  Downloading werkzeug-3.0.2-py3-none-any.whl.metadata (4.1 kB)
Collecting coloredlogs (from onnxruntime==1.15.0->super-gradients)
  Downloading coloredlogs-15.0.1-py2.py3-none-any.whl.metadata (12 kB)
Collecting flatbuffers (from onnxruntime==1.15.0->super-gradients)
  Downloading flatbuffers-24.3.25-py2.py3-none-any.whl.metadata (850 bytes)
INFO: pip is looking at multiple versions of onnxruntime to determine which version is compatible with other requirements. This could take a while.
Collecting super-gradients
  Downloading super_gradients-3.6.1-py3-none-any.whl.metadata (41 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.4/41.4 kB 3.5 MB/s eta 0:00:00
Collecting pyparsing==2.4.5 (from super-gradients)
  Using cached pyparsing-2.4.5-py2.py3-none-any.whl.metadata (3.6 kB)
Collecting super-gradients
  Downloading super_gradients-3.6.0-py3-none-any.whl.metadata (40 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 40.1/40.1 kB 69.6 kB/s eta 0:00:00
Requirement already satisfied: setuptools>=21.0.0 in /Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages (from super-gradients) (65.5.0)
INFO: pip is looking at multiple versions of super-gradients to determine which version is compatible with other requirements. This could take a while.
  Using cached super_gradients-3.5.0-py3-none-any.whl.metadata (39 kB)
Requirement already satisfied: opencv-python>=4.5.1 in /Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages (from super-gradients) (<IP_ADDRESS>)
  Downloading super_gradients-3.4.1-py3-none-any.whl.metadata (37 kB)
  Downloading super_gradients-3.4.0-py3-none-any.whl.metadata (37 kB)
  Downloading super_gradients-3.3.1-py3-none-any.whl.metadata (37 kB)
  Downloading super_gradients-3.3.0-py3-none-any.whl.metadata (37 kB)
  Using cached super_gradients-3.2.1-py3-none-any.whl.metadata (35 kB)
  Downloading super_gradients-3.2.0-py3-none-any.whl.metadata (35 kB)
INFO: pip is still looking at multiple versions of super-gradients to determine which version is compatible with other requirements. This could take a while.
  Downloading super_gradients-3.1.3-py3-none-any.whl.metadata (35 kB)
  Downloading super_gradients-3.1.2-py3-none-any.whl.metadata (35 kB)
  Downloading super_gradients-3.1.1-py3-none-any.whl.metadata (36 kB)
  Using cached super_gradients-3.1.0-py3-none-any.whl.metadata (36 kB)
  Downloading super_gradients-3.0.9-py3-none-any.whl.metadata (34 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Downloading super_gradients-3.0.8-py3-none-any.whl.metadata (32 kB)
  Downloading super_gradients-3.0.7-py3-none-any.whl.metadata (32 kB)
  Downloading super_gradients-3.0.6-py3-none-any.whl.metadata (30 kB)
  Downloading super_gradients-3.0.5-py3-none-any.whl.metadata (30 kB)
  Downloading super_gradients-3.0.4-py3-none-any.whl.metadata (30 kB)
  Downloading super_gradients-3.0.3-py3-none-any.whl.metadata (26 kB)
Collecting onnxruntime (from super-gradients)
  Downloading onnxruntime-1.16.3-cp311-cp311-macosx_10_15_x86_64.whl.metadata (4.3 kB)
Collecting onnx>=1.10.1 (from super-gradients)
  Downloading onnx-1.16.0-cp311-cp311-macosx_10_15_x86_64.whl.metadata (16 kB)
Collecting pycocotools==2.0.4 (from super-gradients)
  Using cached pycocotools-2.0.4.tar.gz (106 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting protobuf~=3.19.0 (from super-gradients)
  Downloading protobuf-3.19.6-py2.py3-none-any.whl.metadata (828 bytes)
Requirement already satisfied: numpy in /Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages (from pycocotools==2.0.4->super-gradients) (1.26.4)
Collecting pyDeprecate==0.3.* (from torchmetrics==0.8->super-gradients)
  Downloading pyDeprecate-0.3.2-py3-none-any.whl.metadata (10 kB)
Collecting future (from treelib==1.6.1->super-gradients)
  Downloading future-1.0.0-py3-none-any.whl.metadata (4.0 kB)
INFO: pip is looking at multiple versions of onnx to determine which version is compatible with other requirements. This could take a while.
Collecting onnx>=1.10.1 (from super-gradients)
  Downloading onnx-1.14.1-cp311-cp311-macosx_10_12_x86_64.whl.metadata (15 kB)
  Downloading onnx-1.14.0-cp311-cp311-macosx_10_12_x86_64.whl.metadata (15 kB)
  Downloading onnx-1.13.1-cp311-cp311-macosx_10_12_x86_64.whl.metadata (14 kB)
  Downloading onnx-1.13.0-cp311-cp311-macosx_10_12_x86_64.whl.metadata (14 kB)
  Downloading onnx-1.12.0.tar.gz (10.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.1/10.1 MB 6.9 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [21 lines of output]
      fatal: not a git repository (or any of the parent directories): .git
      Traceback (most recent call last):
        File "/Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/Users/ankushsingal/Desktop/YOLO-prac/YOLO-web-development/venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/n0/v90bqwgn72g49ddsyhfnvc4c0000gn/T/pip-build-env-csgm994h/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 325, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=['wheel'])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/n0/v90bqwgn72g49ddsyhfnvc4c0000gn/T/pip-build-env-csgm994h/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 295, in _get_build_requires
          self.run_setup()
        File "/private/var/folders/n0/v90bqwgn72g49ddsyhfnvc4c0000gn/T/pip-build-env-csgm994h/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 487, in run_setup
          super().run_setup(setup_script=setup_script)
        File "/private/var/folders/n0/v90bqwgn72g49ddsyhfnvc4c0000gn/T/pip-build-env-csgm994h/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 311, in run_setup
          exec(code, locals())
        File "<string>", line 81, in <module>
      AssertionError: Could not find cmake executable!
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

Versions
python collect_env.py
Collecting environment information...
PyTorch version: 2.2.2
Is debug build: False
CUDA used to build PyTorch: None
ROCM used to build PyTorch: N/A

OS: macOS 14.2.1 (x86_64)
GCC version: Could not collect
Clang version: 15.0.0 (clang-15<IP_ADDRESS>.5)
CMake version: Could not collect
Libc version: N/A

Python version: 3.11.4 (main, Jul  5 2023, 08:41:25) [Clang 14.0.6 ] (64-bit runtime)
Python platform: macOS-10.16-x86_64-i386-64bit
Is CUDA available: False
CUDA runtime version: No CUDA
CUDA_MODULE_LOADING set to: N/A
GPU models and configuration: No CUDA
Nvidia driver version: No CUDA
cuDNN version: No CUDA
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Intel(R) Core(TM) i5-8500 CPU @ 3.00GHz

Versions of relevant libraries:
[pip3] numpy==1.26.4
[pip3] torch==2.2.2
[pip3] torchaudio==2.2.2
[pip3] torchvision==0.17.2
[conda] numpy                     1.26.0                   pypi_0    pypi
[conda] open-clip-torch           2.22.0                   pypi_0    pypi
[conda] torch                     2.1.0                    pypi_0    pypi
[conda] torchvision               0.16.0                   pypi_0    pypi

SG uses pretty old pinned onnx version which is addressed here https://github.com/Deci-AI/super-gradients/pull/1946
And this version of onnx does not have prebuilt wheels on PyPi for your python version.
Since prebuilt wheels are not available a pip attempts to compile it locally. But this step fails since you dont have C++ compiler present.
A few options to solve that:

Downgrade to python 3.9 or something
Get C++ compiler & cmake
Wait until we release 3.7.1 with a fix


fix: jest test generation and small example generation bugfixes

You can run the tests across all ts-sdk with:
cd seed/ts-sdk
pnpm i
pnpm test

Summary: 18 fails, 37 passes

Some fail due to code generation of zurg (conflicting names
Some fail when examples produce a Set and Sdk produces a List
Some fail when examples produce a Date and Sdk produces a string

[ ] fern/seed/ts-sdk/api-wide-base-path:
[ ] fern/seed/ts-sdk/audiences:
[ ] fern/seed/ts-sdk/enum-query-params:
[ ] fern/seed/ts-sdk/examples:
[ ] fern/seed/ts-sdk/exhaustive/no-custom-config:
[ ] fern/seed/ts-sdk/exhaustive/retain-original-casing:
[ ] fern/seed/ts-sdk/literal:
[ ] fern/seed/ts-sdk/mixed-case/no-custom-config:
[ ] fern/seed/ts-sdk/mixed-case/retain-original-casing:
[ ] fern/seed/ts-sdk/package-yml:
[ ] fern/seed/ts-sdk/pagination:
[ ] fern/seed/ts-sdk/query-parameters/no-serde-layer-query:
[ ] fern/seed/ts-sdk/response-property:
[ ] fern/seed/ts-sdk/trace/exhaustive:
[ ] fern/seed/ts-sdk/trace/no-custom-config:
[ ] fern/seed/ts-sdk/trace/no-zurg-no-throwing:
[ ] fern/seed/ts-sdk/trace/no-zurg-trace:
[ ] fern/seed/ts-sdk/variables:

@mscolnick unreal, thank you for the clear summary


[suggestion] Add other chars to the char selection dropdown

Since <IP_ADDRESS>171 we have an acknowledged Blizzard Bug (apparently only on macOS) that prevents the game from remembering the addon enabled/disabled states of every char when you launch or exit the game (all addons become enabled and are written as such to AddOns.txt).
SAM is already a huge help here (and of course I recommended it in the linked bug thread 😇), as I can quickly load a set for all chars when I’m logged into my first toon after game relaunch.
However, it would be even greater if I could select individual other toons from the dropdown menu instead of just “All” and “<current char>“ (like with the Blizz addon manager). [^1]
For obvious reasons, this feature would be super useful in the context of the current Blizz bug, but I think it would still be useful in general too.[^2] (Somehow I think to remember that SAM did have this feature in the beginning, but probably I’m confusing it with some other addon manager.)
[^1]: The menu would be empty at the beginning and become populated with the other toons’ names as I login to the other toons.
[^2]: In case you implement it, just make sure please that “All” and “<current char>“ remain positioned at the top of the list and that it defaults to <current char>.

As far as I know this can only be done in the glue screen. At least the last time I tested, sending any character other than the current one to the API did nothing.

I just tried both, while logged in, and both work fine. E.g.:
C_AddOns.DisableAddOn('SavedInstances', 'Llynis')
C_AddOns.EnableAddOn('VolumeTooltip', 'Llynis')

Llynis is the name of an arbitrary alt (not the one logged in, of course). Note the absence of the realm name.
Logging in to “Llynis” revealed that “SavedInstances” was disabled (it was enabled before), and “ VolumeTooltip” was enabled (it was disabled on all toons before).

That's cool! I think when I tested it we still had that bug where the "all" option didn't work, maybe that's why it also didn't work.

OK, Blizz fixed their all-addons-enabled bug with <IP_ADDRESS>292, so this is no longer needed.
Just joking. Judging by your reaction…

That's cool!

…it seems you also find this feature useful. Happy to hear that 😊

Thank you!


Icons

This is a very useful package, thank you!!!
Would it be possible to also have files icons? (the same icons that are displayed on tree view)

The package already shows the same icons as in the tree view. The problem is that they don't appear when you first create a file. But if you reload Atom after the file has been created (command + J + K + L in a Mac), or if you close the file and then open it again, the icon should be there. Is that not the case for you?
In any case, I'll leave the bug open so that I can work on making sure that the icon is loaded on file creation. Thanks for the feedback!

Nope, this is what i see even after restarting atom:

Thank you for your reply!

Hmm... then I need more info so that I can reproduce the problem and see what the issue is, because it works in my machine. Can you tell me what your system is and what packages you have loaded (particularly any packages that affect the icons)? Thanks!

Arom 1.17.2 x64 on Linux
Packages:

atom-typescript
busy-signal
file-icons
github-atom-light-syntax
intentions
linter
linter-ui-default
minimap
open-files
pigments
project-plus
symbols-tree-view
tab-control
todo-show

Following your hint, i tried disabling the file-icons package and then restarting atom, nothing changed.

Thanks for the quick response. I see what the problem is. I use the seti-icons package, not file-icons. When I switch to file-icons I have the same problem as you. I'll have to investigate what the issue is with the package and look for a solution. I'm pretty busy at the moment since I just moved to a new state and I'm looking for a job, but I'll try to get to this as soon as I can.

Thank you, good luck for you job!

I can confirm that file-icons are not shown for me as well. All i see is the generic file icon for every file (no matter the extension).
Oh, and btw, I also found that in some fork of this project, there is the file-icons support implemented:
https://github.com/davidashman/working-files/commit/68fd7a9452a64e9b54e2d00589e0b8abec55aaba

Thanks for your feedback and comments. 0.6.1 should have this fixed, so now the icons both from the file-icons and the seti-icons packages should appear properly in the 'open files' panel. I'm closing the bug, but please let me know if there are any problems and we can re-open it. Thanks again!

I confirm it works for me. Thank you.

Excellent, it works for me as well! Many thanks!


Unexport default package global variables and Blocklist function

I took a quick look at this library and was surprised to see exported package level variables used for default values, this is just a quick PR to remove that surface area from the library.
If this was intentional for some reason then feel free to close this PR 😃

[!NOTE]
If you agree, then I'd like to (in another PR) reconsider the use of pointers for the options fields,
as they somewhat makes them inconvenient to use.

Hi @peterhellberg, thanks for the PR. They were exported for a reason: For example, if there's a word that they would like to add to the blocklist, they could append their custom word to the default blocklist, as opposed to having to pass the whole thing manually. The URL-safe alphabet is exported in case the user would like to programmatically shuffle it. Exporting min length is mainly just so it's inline with the others.
Maybe I'm not seeing something, is there a better way to allow that?

Yes, as currently implemented, they would not be able to change what is returned from the package level function Blocklist (since it is an inline slice being returned), but as you mentioned a user could call that exported function and then append to what is returned.
I would probably instead expose a constructor function for a blocklist based on the default slice + what is passed in by the end user. (If this is a common enough use case that is)

Re: looped over, yes sounds like an oversight that should be removed.
Re: constructor/blocklist. Basically the spec says 3 scenarios should be supported:

By default, the default blocklist should be used
A user should be able to provide an empty blocklist to not use the blocklist feature at all
Finally, a user should be able to provide a custom blocklist (this is where it might be helpful to expose the default blocklist in case they'd like to improve it).

If I understood you correctly, you're suggesting creating functions that allow all of the above user-cases, while keeping the default blocklist private? If so, I can see the benefit if that's the idiomatic Golang way, but I do wonder if we'd be unnecessarily restricting end-user's access to the default vars (for whatever reasons they might have; eg: remove only leetspeak words and keep the rest)?

One primary concern I have is that it is (fairly) commonly agreed that exported package level variables should be avoided in Go, if at all possible (since they pollute the API and restrict you from making some changes in the future.)
I'll do some minor updates to this PR to illustrate a bit what I'm suggesting.


optimize the code by PEP 8

Change Tab to 4 spaces.
Add a space after comma.
Delete the space beside = .

:+1:


test: move vt_appdebug from init_db.sql to main_test.go

It turns out that our internal test setup does not use init_db.sql.
So, the endtoend test failed on import. So, I've moved the
vt_appdebug grant from there to main_test.go.

@rafael

Can we leave it in both? I believe init_db.sql is used in local example and I added vt_appdebug there.

Ok. Let me make sure that doesn't break anything.
Strangely, all the tests are passing with vt_appdebug removed from init_db.sql.

oh sorry for the confusion. If you add it to go/vt/vttablet/endtoend/main_test.go and remove from init, tests should pass but local examples should fail: https://github.com/youtube/vitess/blob/master/examples/local/vttablet-up.sh#L46


Enable asserts in dev mode

Now that we made all the --optimize stuff run by default, we're also removing all assert() calls from the bundle. During development (e.g. bankai start) these are super useful.
So umm, I propose we add them to bankai start and remove them from bankai build. For people running bankai build --watch we could perhaps also enable them, because that's for django devs and the like. Maybs slightly unexpected, but I feel this is the best I can come up with without introducing yet another flag to toggle. Thoughts welcome, hope this makes sense tho. Thanks!
Should guarantee that stuff like https://github.com/yoshuawuyts/choo/pull/485 keeps working during development.

done!


PR: Don't expose SpyderPlugin and SpyderPluginWidget as part of the public API

Description of Changes

Since the migration to the new API is now complete, there are no internal plugins that rely on those classes anymore. So it's better not to support them for Spyder 6 (otherwise we wouldn't notice when we break them).
Also, bump API version to 1.0.0 to try to keep it stable.

Issue(s) Resolved
Fixes #
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct:

Hello @ccordoba12! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file spyder/app/mainwindow.py:

Line 97:1: E402 module level import not at top of file
Line 98:1: E402 module level import not at top of file


FATA[0000] An error occurred trying to connect: Get https://<IP_ADDRESS>:2376/ v1.18/version: dial tcp <IP_ADDRESS>:2376: ConnectEx tcp: An attempt was made to access a socket in a way forbidden by its access permissions.

Hallo,
I have installed docker on windows 7 laptop.
After Install I had the following error.
initializing...
Virtual machine boot2docker-vm already exists

starting...
Waiting for VM and Docker daemon to start...
.o
Started.
Writing D:\Users\off\.boot2docker\certs\boot2docker-vm\ca.pem
Writing D:\Users\off\.boot2docker\certs\boot2docker-vm\cert.pem
Writing D:\Users\off\.boot2docker\certs\boot2docker-vm\key.pem

To connect the Docker client to the Docker daemon, please set:
    export DOCKER_HOST=tcp://<IP_ADDRESS>:2376
    export DOCKER_CERT_PATH='D:\Users\off\.boot2docker\certs\boot2docker-vm'
    export DOCKER_TLS_VERIFY=1

IP address of docker VM:
<IP_ADDRESS>

setting environment variables ...
Writing D:\Users\off\.boot2docker\certs\boot2docker-vm\ca.pem
Writing D:\Users\off\.boot2docker\certs\boot2docker-vm\cert.pem
Writing D:\Users\off\.boot2docker\certs\boot2docker-vm\key.pem
    export DOCKER_HOST=tcp://<IP_ADDRESS>:2376
    export DOCKER_CERT_PATH='D:\\Users\\off\\.boot2docker\\certs\\boot2docker-vm
'
    export DOCKER_TLS_VERIFY=1

You can now use `docker` directly, or `boot2docker ssh` to log into the VM.
Welcome to Git (version 1.9.5-preview20141217)

Run 'git help git' to display the help index.
Run 'git help <command>' to display help for specific commands.

off@DEACR003108 ~
$ docker version
Client version: 1.6.1
Client API version: 1.18
Go version (client): go1.4.2
Git commit (client): 97cd073
OS/Arch (client): windows/amd64
FATA[0000] An error occurred trying to connect: Get https://<IP_ADDRESS>:2376/
v1.18/version: dial tcp <IP_ADDRESS>:2376: ConnectEx tcp: An attempt was made
to access a socket in a way forbidden by its access permissions.

off@DEACR003108 ~
$

Thanks for help
Alexander

I had the same issue on Windows 7 after a Boot2Docker update using boot2docker stop && boot2docker download && boot2docker up. The solution I found was to close the MING32 terminal and re-launch Boot2Docker using the desktop icon

i'm not an expert on b2d -- perhaps @SvenDowideit could shed some light?

Same issue on Windows 7 boot2docker

@aoffermann I'm going to close this issue since it seems nobody faces similar issues with recent versions of docker-machine. Thanks again for your feedback and of course feel free to reopen if you are still facing the issue with docker-machine 0.6.0

I'm facing this issue with the new docker for windows private beta

The solution I found was to do: boot2docker ssh

How exactly can I apply this solution?


Grand exchange history

Is your feature request related to a problem? Please describe.
i like flipping and it would be nice to keep track of what items i bought/sold when & what price, the history does an okay job but is very limited especially when you are price checking you lose a lot of valuable information
Describe the solution you'd like
I would like runelite to track my trade as a personal log similar to how runelite tracks xp gains, for ease of use it should be also possible to export this information
Describe alternatives you've considered
The ingame trade history tab could be longer so it keeps track of all my trades

Duplicate of #4377


Dependabot for new workflow

As per @assignUser request we will add dependabot

tested on the fork repo and it's working as expected:


Remove stray debug.cpp reference in build system

Android build with gradle complains about a missing collectors/debug.cpp.
This is due to a lingering reference that slipped through
d40e02e08460cab77690706013c9d54892ade602 when the debug plugin was removed.
Reported-by: Amigo Zhen<EMAIL_ADDRESS>

Thanks for the merge request!


Object.basename is deprecated.

Arguments to path.basename must be strings
Object.basename (C:\Users\Timmis\AppData\Local\atom\app-1.21.2\resources\app.asar\src\electron-shims.js:31:10)
CppGeneratorView.metaProjectName (C:\Users\Timmis\.atom\packages\cpp-generator\lib\cpp-generator-view.coffee:122:19)
CppGeneratorView.confirm (C:\Users\Timmis\.atom\packages\cpp-generator\lib\cpp-generator-view.coffee:149:26)
HTMLDivElement.atom.commands.add.core:confirm (C:\Users\Timmis\.atom\packages\cpp-generator\lib\cpp-generator-view.coffee:69:26)
CommandRegistry.handleCommandEvent (<embedded>:23518:36)
KeymapManager.dispatchCommandEvent (<embedded>:69864:22)

Can you provide more context than that?

It looks like you may have run the command when there were no projects open, is that right?


queries: do less

The way that 'keyFromQueryDeps' generated a key was to create a Set out of the dependency array from the query's table dependencies. However, doing so seemed to create a bad value for the key at least when logged, maybe the actual value was fine, but just using the array by itself seems to increase performance pretty significantly and I see way less DB reads.
Also added a stale time of 5 minutes because we always invalidate queries based on table changes so we shouldn't see stale data.
PR Checklist

[ ] Includes changes to desk files
[ ] Describes how you tested the PR locally (test ship vs livenet)
[ ] If a new feature, includes automated tests
[ ] Comments added anywhere logic may be confusing without context

The tests failed locally but didn't show what test failed or any exceptions it threw so I may need help Monday figuring that out.

closing for now


feature request: extend functionality to work with issues

I encounter it way more often that issue depend and/or block each other instead of pull requests. Moreover, several projects I'm involved in have started to manually maintain such "depend", "blocked" issue labels, so I would totally love it if the functionality of this bot is getting extended to support issues as well.

I've personally found that I like zenhub's dependency management for issues. Have you looked at that? How would you like this project to improve on what that provides?

Correct me when I'm wrong but zenhub requires to use a third-party platform and/or install something locally, right?
This bot just hooks in and doesn't disrupt anyone's work flow and this is perfect.

Hey @Croydon and @ryanhiebert I hope you are doing well.
I was able to build a new GitHub action to replaces this bot.
The new action is more robust and has a few more features like customizing the keywords, label, and supporting dependencies from any repository. And yes, it can work with issues too :tada:
Please check it out at https://github.com/z0al/dependent-issues
This bot is now deprecated and I will be archiving this repository in the upcoming days. Thanks.

Hi @z0al!
Thank you for your work and your hint for the new Action. It looks very promising. I will try it some when in the next weeks 🙂


Fix: Handle storage spec when checking MLServer defaults (#2195)

Fixes the env var MLSERVER_LOAD_MODELS_AT_STARTUP is set to false when storage spec is used with mlserver runtime.

Signed-off-by: Andrews Arokiam<EMAIL_ADDRESS>
What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #2195
Type of changes
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

Feature/Issue validation/testing:
Please describe the tests that you ran to verify your changes and relevent result summary. Provide instructions so it can be reproduced.
Please also list any relevant details for your test configuration.

[ ] Test A

[ ] Test B

Logs

Special notes for your reviewer:
Release note:

NONE

Part of changes of another pr #2262


feat: export a publication

The app should have an affordance (a way for the user to act, e.g. a button) to export a publication to a system folder, to be chosen by the user and stored as a preference for the next time the action is activated.
Suggestion: add it to the contextual menu on the user's library view.

done


Request: when watching an element, show the editor which made the changeset

When inspecting an element, I often find myself clicking the element to see with what piece of software a change was made, as it often gives valuable context. A questionable edit with Maps.me is quite often wrong, while a questionable edit made with OsmAnd is often better because of the higher barrier to make changes with the latter one.
A quick-and-dirty idea of how this might look (the selected text was added by me, but ofc, it shouldn't by highlighted by the user script)

ok, I'll try to add it

@pietervdvn PoC, it's ok?

Thanks for making this! Look great! It does the job IMHO
Can't wait to test it ;)

Here is the release: v0.4.0


Capture view UI improvements.

- Show thread names above thread track.
- Get rid of thread "handle" on the left of thread tracks.
- Expose TimeGraphLayout values in ImGui window (press 'i').
- Tweaked TimeGraphLayout values.


Runtime of some tests could be reduced by reducing num simulations

See #413

So I ran pytest --durations=0 to determine which tests to prioritise and this was the output:
pytest_output.txt
The main two takeaways:

linearGaussian_snle_test.py takes by far the longest (see top 10)

319.54s call     tests/linearGaussian_snle_test.py::test_c2st_multi_round_snl_on_linearGaussian[3]
164.86s call     tests/linearGaussian_snle_test.py::test_c2st_multi_round_snl_on_linearGaussian[1]
156.51s call     tests/linearGaussian_snpe_test.py::test_sample_conditional
136.53s call     tests/inference_with_NaN_simulator_test.py::test_inference_with_nan_simulator[SNLE_A-True-0.05]
120.97s call     tests/abc_test.py::test_smcabc_sass_lra[2-True]
116.58s call     tests/abc_test.py::test_smcabc_kde[cv]
112.93s call     tests/inference_on_device_test.py::test_training_and_mcmc_on_device[cuda:0-cuda:00-cpu-SNLE_A-nsf-slice_np]
112.54s call     tests/abc_test.py::test_smcabc_inference_on_linear_gaussian[gaussian-2]
111.00s call     tests/inference_on_device_test.py::test_training_and_mcmc_on_device[cuda:0-cuda:00-cuda:0-SNLE_A-nsf-slice_np]
110.83s call     tests/abc_test.py::test_smcabc_inference_on_linear_gaussian[uniform-2]
106.27s call     tests/abc_test.py::test_smcabc_inference_on_linear_gaussian[gaussian-1]

test_c2st_sre_variants_on_linearGaussian in linearGaussian_snre_test.py failed on my machine.

fixed through #923 and #924


There may be some problem with _.keys function

code as below:
function Fn() {
  this.name = 'hanzichi';
  this.age = 30;
  this.toString = Fn.prototype.toString;
}

var obj = new Fn();

var ans = _.keys(obj);

alert(ans);
// Chrome name,age,toString
// IE 8 name,age

And in the function collectNonEnumProps :
var collectNonEnumProps = function(obj, keys) {
  var nonEnumIdx = nonEnumerableProps.length;
  var constructor = obj.constructor;
  var proto = _.isFunction(constructor) && constructor.prototype || ObjProto;

  // Constructor is a special case.
  var prop = 'constructor';
  if (_.has(obj, prop) && !_.contains(keys, prop)) keys.push(prop);

  while (nonEnumIdx--) {
    prop = nonEnumerableProps[nonEnumIdx];
    if (prop in obj && obj[prop] !== proto[prop] && !_.contains(keys, prop)) {
      keys.push(prop);
    }
  }
};

I think prop in obj may always return true, it may be needless,  is that right?

@akre54 @jridgewell @megawac could you help me?  That's really trouble me .. thanks in advance !

This also works in 1.8

This is only an issue in IE 8 and below. We can try walking the constructor chain to grab (what may be) the prototype chain, but that's fraught with issues too. I think this one's just too old to bother with.

Even es5-shim won't help with that case.

Thanks! You really help me a lot, I think IE < 9's too old to bother with,hah..
BTW, Constructor is a special case.  What will cause if considering it the same as toString ? I have tried, and find both _.has(obj, prop) and obj[prop] !== proto[prop] are ok for them. Could you help me please? with full thanks!
And I think prop in obj and  !_.contains(keys, prop) may be needless, it that right?

Excuse me, may disturb you again @akre54 @jridgewell @megawac @jdalton But that's the question I really wonder.. see above thanks a lot ! I really want to understand function collectNonEnumProps  a lot

@hanzichi are you still wondering about this?

@mattdiamond maybe I am

I think this is just one of those things we can't fix.

I think I found a another Bug:
if  obj.constructor was overwirtten，and constructor.ptototype.toString = null
eg:
var Func = function() { }; Func.prototype.toString = null;  var obj = { constructor: Func };
var keys = [];
collectNonEnumProps(obj, keys)
console.log(keys) // return value is =>["constructor", "toString"]

I think the problem is  var proto = (_.isFunction(constructor) && constructor.prototype) || ObjProto; ... if(...obj[prop] !== proto[prop]...)
Am I understanding this right?


Add more trees to the list

Add more fruit trees to the file src/data/data.js, this file contains an array of objects.
Example of what it looks like and what you should add:
{
  id: "<number>",
  scientific_name: "<scientific name>",
  tree_name: "<tree name>",
  fruit_name: "<fruit name>",
  family: "<family>",
  origin: "<origen>",
  description: "<a short description>",
  bloom: "<flowering time>",
  maturation_fruit: "<ripening time>",
  life_cycle: "<approximate years of life>",
  climatic_zone: "<climatic zone>",
  producing_countries: [
   {
    country: "<country name>",
   },
   //...
  ]
},

i want to contribute on this issue can you assign me I am new in open source

Hello, @rjrishika welcome, happy contribution!

Hey, I want to work in this, can you please assign me the same …

i want to contribute

Hello, welcome, check well that there are no repeated trees.


conmon: return the correct exit status

WEXITSTATUS(x) can be used only if WIFEXITED(x).  We were using it
also in the case the process exited because it was signaled.
Since we check for the exit_status both for the container and the
runtime, move the common code to a new function get_exit_status that
is used in both cases.
Signed-off-by: Giuseppe Scrivano<EMAIL_ADDRESS>
- What I did
Fix the exit status reported by conmon
- How I did it
I added a check if the process was exited because of a signal
- How to verify it
conmon returns exit status 137 on "kill -9 $CONTAINER_PID"
- Description for the changelog
conmon returns the corrrect exit status when the process is signaled

LGTM
/test all

@wking @mrunalp @runcom @umohnani8 PTAL

LGTM

Merging


Add span and break operators

Span = takeWhile but captures dropped operators
Break  inverse of Span
Add to IterableX (and override return type on implementations).

https://www.haskell.org/hoogle/?hoogle=break
https://www.haskell.org/hoogle/?hoogle=span

Added, break added as partitionBy


Fixed pipeline

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

Project coverage is 93.31%. Comparing base (3778334) to head (ec17078).
Report is 20 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #29      +/-   ##
==========================================
- Coverage   93.60%   93.31%   -0.29%
==========================================
  Files          25       25
  Lines        1173     1182       +9
==========================================
+ Hits         1098     1103       +5
- Misses         75       79       +4

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