Rename Feature -> LocationOfInterest

Renames all instances of Feature to LocationOfInterest except for classes in persistence/remote/ (model classes in these packages are renamed, however, to ensure the code builds).
Also renames PointFeature to PointOfInterest and PolygonFeature to PolgyonOfInterest.
Contributes to #1114

Cool, thanks! How does spelling out LOI feel so far? Acceptable or burdensome?

Also renames PointFeature to PointOfInterest and PolygonFeature to PolgyonOfInterest.

Going forward I don't think we'll need separate classes for different typing of LOIs; they'll just have Geometry which will contain that complexity. We'll still have to model MultiPolygon, Point, etc. but I believe we already have those modeled elsewhere. No changed needed in this PR, just wanted it to be on everyone's radar.

oops, not sure why there's a bunch of errorprone errors for generated code

gentle ping!

/gcbrun

/gcbrun

/gcbrun

Codecov Report

Merging #1162 (141372e) into master (4b42d45) will increase coverage by 0.05%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #1162      +/-   ##
============================================
+ Coverage     27.30%   27.35%   +0.05%
- Complexity      780      782       +2
============================================
  Files           300      300
  Lines          8072     8141      +69
  Branches        341      344       +3
============================================
+ Hits           2204     2227      +23
- Misses         5761     5807      +46
  Partials        107      107

Impacted Files
Coverage Δ

...gle/android/gnd/repository/SubmissionRepository.kt
8.13% <0.00%> (-0.40%)
:arrow_down:

...gnd/persistence/local/room/RoomLocalDataStore.java
72.39% <0.00%> (-0.20%)
:arrow_down:

...om/google/android/gnd/model/TestModelBuilders.java
97.29% <0.00%> (-0.08%)
:arrow_down:

gnd/com/google/android/gnd/model/job/Job.java
100.00% <0.00%> (ø)

gnd/com/google/android/gnd/ui/map/MapPin.java
100.00% <0.00%> (ø)

.../com/google/android/gnd/model/mutation/Mutation.kt
95.45% <0.00%> (ø)

...google/android/gnd/ui/home/HomeScreenFragment.java
0.00% <0.00%> (ø)

...oogle/android/gnd/ui/home/HomeScreenViewModel.java
0.00% <0.00%> (ø)

...gle/android/gnd/ui/map/gms/GoogleMapsFragment.java
0.00% <0.00%> (ø)

.../android/gnd/ui/syncstatus/SyncStatusFragment.java
0.00% <0.00%> (ø)

... and 74 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4b42d45...141372e. Read the comment docs.


feat: Add a Gorm logging adapter

github.com/coopnorge/go-logger/adapter/grom provides a simple logging
adapter for Gorm to ensure that logs from Gorm are properly formatted by
go-logger before ingestion into Datadog.

Initial implementation was tested in https://github.com/coopnorge/store-information-service/pull/1003

Looks good. Exposing our own struct allows for following good go-practices of returning structs and accepting interfaces, but it also allows for embedding. Some comments, mostly in tests.


code-13b ggml-metal issue - macOS M1 Pro

Hello. ./run-mac.sh works well with 7b and 13b, but when trying to start it with --model code-13b it looks like it starts well, loads up the mode, but then on the first query it returns this error:
ggml_metal_graph_compute: command buffer 0 failed with status 5
GGML_ASSERT: /private/var/folders/bm/qs9__78s4c77966vtyyczhc40000gn/T/pip-install-3x1cahig/llama-cpp-python_9a6cdba886054cafbfcf5301b89491f6/vendor/llama.cpp/ggml-metal.m:1
After that error, the API crashes and doesn't recover.

I think it might be a RAM limitation - you can close.

Thanks for the update!


'Number of points too low' error

Hi, thanks for this package.
This is related to this  issue.
I was able to narrow down the symptoms of this error. I tried Gazebo (instead of Ignition) to narrow down the cause.
When using AMCL, the CPU usage is a steady and no error occurs.
But when using neo_localization2, CPU sometimes spikes to 100% and the 'Number of points too low' error is shown. I am building the package with release arguments.
My setup:
Two lasers in gazebo with relay to scan topic.
Running this on latest Ignition+Gazebo docker file from OSRF.
System is i7 9th gen with GTX1650ti.
Also running nav2 parallely on same system.
Due to this, nav2 goal is also sometimes aborted.
Can you guess any reasons why this might be happening?
Thanks

I am using humble branch. It seems like aeed20fcf29d9f8a32520eecadebb6ba164c1768 is not synced. Can it be this?

Thanks for the report!
Could you maybe post a link to your configuration and maybe the entire simulation setup?
After https://github.com/neobotix/neo_localization2/commit/aeed20fcf29d9f8a32520eecadebb6ba164c1768  it was synced to all distros except foxy. Also, we tested extensively on the simulation. We haven’t faced this issue.

Thanks. I will share the files in next few days.

Hi,
Got it working. I updated my map to a smaller maps and decreased "map_size" parameter.
Sorry for disturbing you.

Nice to know, what was the size of the map you intended to use before ?

It was a ~1km map so I was using the map_size about 20000.

Interesting!
I'll leave this issue open, so that I can further investigate on it!


Is it possible to specify 'maxInstances' for the job?

For example I have "@every 1s" job. But sometimes this job can take time longer than 1 sec. But I don't want more then N running instance of this job one time. Is it possible to do with this library?

@serge-nikitin if you only have a few functions creating @every 1s instances then it's fairly manageable. However, if you have too many of them then it's best to batch process them. @every 1s is too frequent and can easily become the bottleneck of your system.
Having said that, JobRunner instances join a pool so it's easy to get a count of current active jobs, outstanding jobs and etc.
The following methods are exported by the package so you can reference them inside your own program.
instances := jobrunner.StatusPage() //returns array of current active jobs

var count int
for k, _ := range instances {
     job := instances[k].JobRunner

     // Get the name of the job and count the instances of it
     if job.Name == "JobX" {
         count++
     }
}
if count >= 100 {
    // .... either sleep for 10sec or wait until "job instances" are reduced to 0
    // you logic goes here
}


Compatibilty with Sphinx 8?

The CI doc builds for SciPy recently started failing: https://github.com/scipy/scipy/issues/21323
The error message suggests a problem with jupyterlite_sphinx.  It looks like an exception is being generated when used with the recently released Sphinx 8.  Is this a known issue?

If no one is taking a look as I type this, I shall do so in a moment.

Thanks @agriyakhetarpal. I’m off this week and have limited availability to look at this. I think it’s just a deprecation warning that gets turned to an error when building the docs with `-error‘. Something about using strings instead of pathlib path objects. It should be straightforward.

I'm unable to reproduce the error locally, however, and it seems like Sphinx is returning a deprecation warning for me instead of any trace of jupyterlite-sphinx:

Tap to view logs
Traceback (most recent call last):
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/cmd/build.py", line 337, in build_main
    app.build(args.force_all, args.filenames)
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/application.py", line 378, in build
    self.builder.build_update()
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 296, in build_update
    self.build(to_build,
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 317, in build
    updated_docnames = set(self.read())
                           ^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 424, in read
    self._read_serial(docnames)
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 476, in _read_serial
    self.read_doc(docname)
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 535, in read_doc
    publisher.publish()
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/docutils/core.py", line 234, in publish
    self.document = self.reader.read(self.source, self.parser,
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/io.py", line 106, in read
    self.parse()
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/docutils/readers/__init__.py", line 76, in parse
    self.parser.parse(self.input, document)
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/myst_nb/sphinx_.py", line 85, in parse
    nb_reader = create_nb_reader(document_path, md_config, nb_config, inputstring)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/myst_nb/core/read.py", line 71, in create_nb_reader
    if path.endswith(suffix):
       ^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/util/_pathlib.py", line 96, in __getattr__
    warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2)
sphinx.deprecation.RemovedInSphinx90Warning: Sphinx 9 will drop support for representing paths as strings. Use "pathlib.Path" or "os.fspath" instead.

Exception occurred:
  File "/opt/homebrew/Caskroom/miniforge/base/envs/scipy-dev/lib/python3.12/site-packages/sphinx/util/_pathlib.py", line 96, in __getattr__
    warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2)
sphinx.deprecation.RemovedInSphinx90Warning: Sphinx 9 will drop support for representing paths as strings. Use "pathlib.Path" or "os.fspath" instead.
The full traceback has been saved in /var/folders/b3/2bq1m1_50bs4c7305j8vxcqr0000gn/T/sphinx-err-pfvg2gf8.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.
A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks!
make: *** [html-build] Error 2

I'm going to fix the bug assuming there's a problem with my system, but with this I'm unsure how to test if the bug fix works, so it would be good if you could try it out, @WarrenWeckesser!

@agriyakhetarpal, that looks like the exact same deprecation warning. I think you did reproduce it. Have you confirmed the warning goes away with the fix you made in jupyterlite-sphinx?

No, the issue is that while the deprecation warning is the same, jupyterlite_sphinx.py doesn't seem to be involved in those logs anywhere – it seems to be coming from somewhere inside myst-nb's code. I don't see any warnings in our own logs with sphinx>=8, so I requested assistance with reproduction (maybe I'm mixing pip-installed packages in a mamba-environment or something). I built the SciPy docs with an editable installation of jupyterlite-sphinx.


Icon Request: at-sign-off

Off version of the at-sign icon
at-sign

Similar to megaphone-off

calendar-edit
Replace the minus with a pencil

Thanks <3

Please submit a proper icon request issue for these providing the required information. I'm closing this as this information was not provided.


Support HTTP upgrades (WebSocket etc.)

This library should provide support for HTTP upgrades (WebSocket etc.) using the Connection: upgrade and Upgrade: websocket headers. Among others, this currently depends on #136 and a dedicated API to expose the resulting HTTP stream as a DuplexStreamInterface instead of just a ReadableStreamInterface.

I have to close this one as per #152 now that future development will focus on https://github.com/reactphp/http instead.
I've migrated this ticket to reactphp/http#376.


How to use division in stylesheet layouts

I want to use a division operator in my layout statement in a .css file,
#sbButtonLR {
  layout:           size( sbRoot.width/3, @buttonHeight ),right( parent.width -10 ), bottom( sbGuide.bottom );
}

Subtraction works fine, but not clear how to multiply or divide
#sbButtonUR {
  layout:           size( sbRoot.width-200, @buttonHeight ),right( parent.width -10 ), top( sbGuide.top );
}

For a working example of this bug see the sample program InterfaCSS-Example on GitHub.

After looking at code in more detail, this is not worth the effort to implement.  There are other existing ways to solve the problem.


Coveralls fix

If you're adding a new rule, please follow these steps.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@de48b3d). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #104   +/-   ##
=========================================
  Coverage          ?   99.25%
=========================================
  Files             ?       71
  Lines             ?     2291
  Branches          ?        0
=========================================
  Hits              ?     2274
  Misses            ?       17
  Partials          ?        0

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update de48b3d...e66364d. Read the comment docs.


Application User Resource

As a TF user, I want to be able to create and manage application users

[ ] Create new users
[ ] Delete users
[ ] Deactivate users
[ ] Assign users to business units
[ ] Add user security roles
[ ] Remove user security roles

New Branch created and remove oldest ones.

This is paused because we think we can implement this as a module once #45 is completed

Closing this issue as not planned because we can implement application users using data_record resource


fix(notification_rules): add misc fixes to UI and backend for alerts and notification

Will likely want to squash this into a single commit since there's a bunch of wip commits in here.

this PR is blocked on https://github.com/influxdata/influxdb/issues/14728

Would be nice to have https://github.com/influxdata/influxdb/issues/14728 solved before merging this.


Add RPi4 to install script

Summary
As the title says.
Uses RPi3 release until RPi4 release is ready.
What kind of change does this PR introduce? (check at least one)

[ ] Bugfix
[ ] Feature
[ ] Code style update
[ ] Refactor
[ ] Docs
[x] Build-related changes
[ ] Other, please describe:

If changing the UI of web configuration, please provide the before/after screenshot:
Does this PR introduce a breaking change? (check one)

[ ] Yes
[x] No

If yes, please describe the impact and migration path for existing setups:
The PR fulfills these requirements:

[ ] When resolving a specific issue, it's referenced in the PR's body (e.g. Fixes: #xxx[,#xxx], where "xxx" is the issue number)

If adding a new feature, the PR's description includes:

[ ] A convincing reason for adding this feature
[ ] Related documents have been updated (docs/docs/en)
[ ] Related tests have been updated

PLEASE DON'T FORGET TO ADD YOUR CHANGES TO CHANGELOG.MD

[ ] Yes, CHANGELOG.md is also updated

To avoid wasting your time, it's best to open a feature request issue first and wait for approval before working on it.
Other information:

install_hyperion.sh and remove_hyperion.sh are obsolete and do not belong to hyperion.ng.

so then we could delete them?

Yes, except create_all_releases.sh

updated


[Schemas] Connector SDK: Create and get a schema from Conduit

Description
Part of https://github.com/ConduitIO/conduit-connector-sdk/issues/132.
This PR adds a function that returns a schema service that can be used in connectors. The schema service is an adapter for a similar interface in the Conduit connector protocol (but makes it a bit easier to use).
Quick checks:

[x] I have followed the Code Guidelines.
[x] There is no other pull request for the same
update/change.
[ ] I have written unit tests.
[x] I have made sure that the PR is of reasonable size and can be easily reviewed.

@raulb That's not a bad idea at all.:)


"Gaps in blk ref_locs" error during join on categorical column

What happened:
Confusing error that does not provide really any useful information for user, and seems more like an internal error.
What you expected to happen:
No error, join computed successfully. Eventually an error which is more meaningful.
Minimal Complete Verifiable Example:
I tried to provide minimal example but it does work properly on a 2-3 rows datasets. Below code generates 0.5 GB dataset.
wget https://raw.githubusercontent.com/h2oai/db-benchmark/f9a6ce54db7d7b6cdab0780306c990f197a5e3e0/_data/join-datagen.R
Rscript join-datagen.R 1e7 0 5 0
python

Reproduce error
import dask as dk
import dask.dataframe as dd
from dask import distributed
client = distributed.Client(processes=True, silence_logs=logging.ERROR)
dk.config.set({"optimization.fuse.ave-width": 20})
dk.__version__
#'2020.12.0'
x = dd.read_csv('J1_1e7_NA_5_0.csv', dtype={'id1':'Int32','id2':'Int32','id3':'Int32','id4':'category','id5':'category','id6':'category','v1':'float64'}).persist()
medium = dd.read_csv('J1_1e7_1e4_5_0.csv', dtype={'id1':'Int32','id2':'Int32','id4':'category','id5':'category','v2':'float64'}).persist()
ans = x.merge(medium, on='id5').compute()

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/base.py", line 279, in compute
    (result,) = compute(self, traverse=False, **kwargs)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/base.py", line 567, in compute
    results = schedule(dsk, keys, **kwargs)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/threaded.py", line 84, in get
    **kwargs
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/local.py", line 486, in get_async
    raise_exception(exc, tb)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/local.py", line 316, in reraise
    raise exc
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/local.py", line 222, in execute_task
    result = _execute_task(task, data)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/core.py", line 121, in _execute_task
    return func(*(_execute_task(a, cache) for a in args))
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/utils.py", line 30, in apply
    return func(*args, **kwargs)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/dask/dataframe/multi.py", line 274, in merge_chunk
    out = lhs.merge(rhs, *args, **kwargs)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/frame.py", line 7963, in merge
    validate=validate,
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/reshape/merge.py", line 87, in merge
    validate=validate,
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/reshape/merge.py", line 652, in __init__
    ) = self._get_merge_keys()
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/reshape/merge.py", line 1063, in _get_merge_
keys
    self.right = self.right._drop_labels_or_levels(right_drop)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/generic.py", line 1646, in _drop_labels_or_l
evels
    dropped.drop(labels_to_drop, axis=1, inplace=True)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/frame.py", line 4174, in drop
    errors=errors,
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/generic.py", line 3889, in drop
    obj = obj._drop_axis(labels, axis, level=level, errors=errors)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/generic.py", line 3924, in _drop_axis
    result = self.reindex(**{axis_name: new_axis})
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/util/_decorators.py", line 309, in wrapper
    return func(*args, **kwargs)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/frame.py", line 4036, in reindex
    return super().reindex(**kwargs)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/generic.py", line 4464, in reindex
    axes, level, limit, tolerance, method, fill_value, copy
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/frame.py", line 3877, in _reindex_axes
    columns, method, copy, level, fill_value, limit, tolerance
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/frame.py", line 3925, in _reindex_columns
    allow_dups=False,
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/generic.py", line 4532, in _reindex_with_ind
exers
    copy=copy,
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/internals/managers.py", line 1291, in reinde
x_indexer
    new_blocks = self._slice_take_blocks_ax0(indexer, fill_value=fill_value)
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/internals/managers.py", line 1371, in _slice
_take_blocks_ax0
    self.blknos, slobj, fill_value=-1, allow_fill=allow_fill
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/internals/managers.py", line 175, in blknos
    self._rebuild_blknos_and_blklocs()
  File "/home/jan/git/db-benchmark/dask/py-dask/lib/python3.6/site-packages/pandas/core/internals/managers.py", line 254, in _rebuil
d_blknos_and_blklocs
    raise AssertionError("Gaps in blk ref_locs")
AssertionError: Gaps in blk ref_locs

Anything else we need to know?:
Environment:

Dask version: 2020.12.0
Python version: 3.6
Operating System: Linux
Install method (conda, pip, source): pip

Ok I created the data with this conda env:
conda create -n R r-core r-data.table
conda activate R

I was able to reproduce the issue and found that there is some additional information in the logs:
Function:  merge_chunk
args:      (         id1    id2      id3   id4      id5        id6         v1
0         11   7820  4952494  id11   id7820  id4952494  81.469227
1         10<PHONE_NUMBER>  id10    id459  id4780625   4.058981
2          4   1291  6397757   id4   id1291  id6397757  44.926386
3          4   9747     <NA>   id4   id9747        NaN  48.502045
4          8  10713  4284249   id8  id10713  id4284249  18.910482
...      ...    ...      ...   ...      ...        ...        ...
1441197    5    908     <NA>   id5    id908        NaN  38.996284
1441198    4   5044  2772601   id4   id5044  id2772601   5.637272
1441199    8   2505  2592521   id8   id2505  id2592521  90.941858
1441200    3   <NA>  5021343   id3      NaN  id5021343  41.811443
1441201    7  10166  2753441   id7  id10166  id2753441  46.440159

[1441202 rows x 7 columns], < could not convert arg to str >)
kwargs:    {'how': 'inner', 'right_on': 'id5', 'left_on': 'id5', 'left_index': False, 'right_index': False, 'suffixes': ('_x', '_y'), 'indicator': False, 'empty_index_dtype': dtype('int64'), 'categorical_columns': Index(['id4_x', 'id5', 'id6', 'id4_y'], dtype='object')}
Exception: AssertionError('Gaps in blk ref_locs')

distributed.worker - WARNING -  Compute Failed

It'll probably take a while to get further than this.

Ok I created the data with this conda env:
conda create -n R r-core r-data.table
conda activate R

I was able to reproduce the issue and found that there is some additional information in the logs:
Function:  merge_chunk
args:      (         id1    id2      id3   id4      id5        id6         v1
0         11   7820  4952494  id11   id7820  id4952494  81.469227
1         10<PHONE_NUMBER>  id10    id459  id4780625   4.058981
2          4   1291  6397757   id4   id1291  id6397757  44.926386
3          4   9747     <NA>   id4   id9747        NaN  48.502045
4          8  10713  4284249   id8  id10713  id4284249  18.910482
...      ...    ...      ...   ...      ...        ...        ...
1441197    5    908     <NA>   id5    id908        NaN  38.996284
1441198    4   5044  2772601   id4   id5044  id2772601   5.637272
1441199    8   2505  2592521   id8   id2505  id2592521  90.941858
1441200    3   <NA>  5021343   id3      NaN  id5021343  41.811443
1441201    7  10166  2753441   id7  id10166  id2753441  46.440159

[1441202 rows x 7 columns], < could not convert arg to str >)
kwargs:    {'how': 'inner', 'right_on': 'id5', 'left_on': 'id5', 'left_index': False, 'right_index': False, 'suffixes': ('_x', '_y'), 'indicator': False, 'empty_index_dtype': dtype('int64'), 'categorical_columns': Index(['id4_x', 'id5', 'id6', 'id4_y'], dtype='object')}
Exception: AssertionError('Gaps in blk ref_locs')

distributed.worker - WARNING -  Compute Failed

It'll probably take a while to get further than this.


KAFKA-3266: List/Alter Acls - protocol and server side implemen…

…tation

I am still working on this patch. However it is close enough that I thought putting it up for some early reviews and feedback would be valuable. The List/Alter Acls changes for KIP-4 don't have the same blocking concerns as the rest of the messages since the Authorizer implementation is responsible for that.

This patch has the test (commented out) and logging lines from KAFKA-3328: SimpleAclAuthorizer can lose ACLs with frequent add/remove calls

@ijuma @junrao @gwenshap Pinging for review.

This work was completed via a different PR, closing.


[typing error] Set Up Initial Configuration for an MDK App

Tutorials: https://developers.sap.com/tutorials/cp-mobile-dev-kit-ms-setup.html
Under Step 5.6 there is a typing error! for the following text:
Client ID Paste the value from step 4.4
Client Secret Paste the value from step 4.4
Instead of "step 4.4" it should be "5.4" !

@kelghali Thank you for opening this issue. I just fixed the typos, please check again.


main @ d96ac17, project doesn't build due to not pointing at new Catch2 fork

Expected Behavior
Project skeleton should build!
Current Behavior
Doesn't build due to not pointing at Embedded Artistry's fork of Catch2 that introduces catch2_native_dep and catch2_with_main_native_dep variables.
Context

Project Version: main @ d96ac17
Operating System: Fedora 27 (6.4.9-100.fc37.x86_64)
Toolchain: gcc (GCC) 12.3.1 20230508 (Red Hat 12.3.1-1)

Failure Information (for bugs)
Project can't build, if you give me push permission though I fixed locally! Simple as updating catch.wrap to this:
[wrap-git]
url = git@github.com:embeddedartistry/Catch2.git
revision = 0c46898
clone-recursive = false

Steps to Reproduce
Just run make on freshly cloned main!
Failure Logs
Log showing variable not found (since it doesn't exist in that version of Catch2):
Executing subproject catch2

catch2| Project name: catch2
catch2| Project version: 2.11.3
catch2| C++ compiler for the host machine: c++ (gcc 12.3.1 "c++ (GCC) 12.3.1 20230508 (Red Hat 12.3.1-1)")
catch2| C++ linker for the host machine: c++ ld.bfd 2.38-27
catch2| Build targets in project: 58
catch2| Subproject catch2 finished.

meson/test/catch2/meson.build:27:31: ERROR: Requested variable "catch2_native_dep" not found.

Checklist

[ X ] I am running the latest version
[ X ] I checked the documentation and found no answer
[ X ] I checked to make sure that this issue has not already been filed
[ X ] I'm reporting the issue to the correct repository (for multi-repository projects)
[ X ] I have provided sufficient information for the team

Sweet! Love the project btw, cleanest/most modern embedded skeleton I think I've ever come across. Will definitely be keeping my eye on yall's stuff :)


Improve README

Codecov Report

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

@@           Coverage Diff           @@
##           master      #17   +/-   ##
=======================================
  Coverage   83.97%   83.97%
=======================================
  Files           9        9
  Lines         730      730
=======================================
  Hits          613      613
  Misses        117      117

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 7b13273...bf38c7d. Read the comment docs.


ACCOPTION causes pymapdl run to fail

🤓 Before submitting the issue

[X] I have visited the Troubleshooting section.
[X] I have searched among the existing issues.
[X] I am using a Python virtual environment.
[X] I am using the latest version of PyMAPDL and its dependencies (fully updated virtual environment). You can update them using pip install --upgrade --upgrade-strategy eager ansys-mapdl-core in your activated virtual environment.

🔍 Description of the bug
The ACCOPTION command should allow the user to accelerate an analysis using their GPU. However, it seems to cause my analysis to fail.

🕵 Steps To Reproduce
from ansys.mapdl.core import launch_mapdl
import os
here = os.getcwd()

# parameters
x = 1 # create a square block
f = 1e6 # force over 1 side of block
ndiv = 4 # element/line division
numElem = (ndiv/x)**3
loadDirection = 'y'

##### modeling
#elemSize = (x**3)/numElem**(1/3)

#### Launch pymapdl
mapdl = launch_mapdl(run_location=here, version = 232)
mapdl.prep7()

#### Materials
mapdl.mp("EX", 1, 200e9)
mapdl.mp("PRXY", 1, 0.3)

#### Geometry
mapdl.csys(0)
mapdl.blc4(0, 0,x, x, x)

#### Elements and meshing
mapdl.et(1, "SOLID186")
mapdl.type(1)
mapdl.keyopt(1, 2, 1)
#mapdl.esize(elemSize)
mapdl.vmesh("ALL")
mapdl.eplot()

#### Boundary Conditions: fixed constraint
mapdl.nsel("s", "loc", loadDirection, 0)
mapdl.d("all", "all")

#### Boundary Conditions: load
mapdl.nsel("s", "loc", loadDirection, x)
nnodes = mapdl.get("NumNodes" , "NODE" ,0 , "COUNT" )
mapdl.f("all", "fy",f/nnodes)
mapdl.allsel()

#### Solve
mapdl.run("/solu")
mapdl.accoption(activate='ON')
sol_output = mapdl.solve()

#### Plot Results
# plot the normalized global displacement
mapdl.post_processing.plot_nodal_displacement(lighting=False, show_edges=True)

mapdl.exit()

💻 Which Operating System are you using?
Windows
🐍 Which Python version are you using?
3.11
📝 PyMAPDL Report
na
📝 Installed packages
na
📝 Logger output file
na

@mcMunich check the file0.err file and see if it shows that the CUDA driver needs to be updated.  Mike

I got the following error:
 *** ERROR ***                           CP =       0.641   TIME= 15:59:19
 The GPU accelerator capability cannot be activated with the ACCOPTION
 command.  Please read the following message for more details.

 *** ERROR ***                           CP =       0.641   TIME= 15:59:19
 The capability GPU was either not ordered with this Ansys installation
 or the appropriate product was not selected for this session.
  Contact your Ansys support person for more information.

@germa89 most laptops don't have a GPU that would be automatically used - have you set the following environment variable?

So it seems that to use ACCOPTION you need to also do something like:
mapdl = launch_mapdl(additional_switches="-acc NVIDIA")

Notes
To inject env vars in MAPDL process:
mapdl = launch_mapdl(additional_switches="-acc NVIDIA", add_env_vars={"ANSGPU_OVERRIDE": "1"})

I acknowledge PyMAPDL should return something more explicit than Connection terminated.

PyMAPDL needs a better error catching... either at launching or during runtime.

I'm closing this issue because there is no PyMAPDL issue per se.


TeamsIn did not receive media renegotiation for holding call

Hello @FilippSe
We have been using this script to monitor our Direct Routing Infrastructure (SBCs) for the past few months. Oddly, since two or three weeks the script stopped working and it's showing the following error message on every test call:
Test: Outbound to Inbound

result.state result.code result.phrase
------------ ----------- -------------
failed              1511 TeamsIn did not receive media renegotiation for holding call

teamsOut.chainId                     teamsOut.sipCallId               teamsOut.trunkFqdn      teamsOut.callEndReasonPhrase teamsOut.callEndReason teamsOut.callEndSubReason teamsOut.state teamsOut.code teamsOut.callSetupTimeMs teamsOut.callStartTime
----------------                     ------------------               ------------------      ---------------------------- ---------------------- ------------------------- -------------- ------------- ------------------------ ----------------------
323cb595-a8dc-4a53-affd-8325afc65932 7ef38bd7476d5c1e8545ab3a624c0501 tc001.connect.domore.ch LocalUserInitiated                                0                         0 signedOut                                        2431 2021-05-25T06:07:53.9614183Z

teamsIn.chainId                      teamsIn.lastAction teamsIn.state teamsIn.code teamsIn.phrase                                               teamsIn.callSetupTimeMs teamsIn.callStartTime        teamsIn.flow
---------------                      ------------------ ------------- ------------ --------------                                               ----------------------- ---------------------        ------------
e4a7ce98-2cc2-4ee7-bbeb-fcf39cb38cea holdingCall        failed                1511 TeamsIn did not receive media renegotiation for holding call                    2285 2021-05-25T06:07:53.9613834Z inbound

We use 2 dedicated tenants which are only used for monitoring our calls / the SIPTester Script. Logging in with the test users from the script manually and placing calls (even with call hold/resume) through the Teams Client works without any issues. A Trace on the SBC didn't show any errors as well.
I also checked the Teams Admin Center Logs and they show no issues as well. Both the incoming and outgoing calls are marked with Final SIP Code 200 (OK). The Correlation IDs match the ones from the example above. We also tested different DCs like Amsterdam and Dublin. (EMEA-AM) and (EMEA-DB)
Since placing calls manually works fine and also TAC and SBC Trace show no issues, we suspect that something might have changed on the SIP Tester API / Endpoint.  From the script: (https://api.pstnmonitoring.skype.com/v1/sip-tester/test-suites or https://calltester.pstnhub.microsoft.com)
Could you please take a look and try to reproduce the issue? Feel free to contact me if you need any more information or want to take a look at our own script, which calls the SIPTester Script with the required parameters.
Thank you and best regards,
Martin

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 99036b5e-f358-fda3-d9b1-1279952b59a5
Version Independent ID: 9ea42c59-7db5-9c66-ef58-98b4909ccd10
Content: PowerShell script to test Direct Routing Session Border Controller connections - Microsoft Teams
Content Source: Teams/sip-tester-powershell-script.md
Service: msteams
GitHub Login: @cichur
Microsoft Alias: v-cichur

Thank you for submitting feedback.
I think the best way forward is if you open a service ticket in your tenant so this can get resolved ASAP. Based on the outcome let me know if it is something that can be called out in the docs.
Please follow this link to contact support for business products:https://docs.microsoft.com/office365/admin/contact-support-for-business-products
Please keep us posted here on the resolution so we can feed whatever information you discover into the content.

I checked the call and it seems like the SBC does not propagate hold (re-INVITE with a=inacitve) to the other leg. That's why the test is failing at the hold/resume step.
You should check your SBC configuration to see if it can be fixed, but if this is not possible then there's a workaround to disable hold/resume validation by modifying SipTesterClient.ps1:
-$teamsOut = @{username = $teamsOutUsername; password = $teamsOutPassword; dataCenter = $TeamsOutDataCenter}
+$teamsOut = @{username = $teamsOutUsername; password = $teamsOutPassword; dataCenter = $TeamsOutDataCenter; holdCount=0}

This allows you to validate the rest of the call flow, but this is not a supported scenario.


Request for OnlyTest attribute

Hi,
It would be very useful if there was an OnlyTest (or something similar) attribute, that I could use to temporarily ignore all tests except those marked with OnlyTest. When I am creating a new test it is more efficient to only run that test and no others.

I'd recommend you to install TestInsight and use its GUI to select the tests that you want to run.

What luebbe said, TestInsight can be found here - https://bitbucket.org/sglienke/testinsight/wiki/Home


Some tests require ed and fail if it is not installed

When running cargo test the following tests fail if ed is not installed:

ed_diff::tests::test_permutations
ed_diff::tests::test_permutations_empty_lines
ed_diff::tests::test_permutations_reverse

They fail because they call Command::new("ed").

The Git for Windows installer installs a number of standard Unix executables in C:\Program Files\Git\usr\bin\. Unfortunately, ed isn't one of them.


bluetooth earphone connection lost

first, thanks for awsome library.
[Problem]
when Voice.start() is called, bluetooth earphone connection is lost.

connect bluetooth earphone to iPhone(pairing)
start the app
voice.start() called => bluetooth earphone is gone(lost) and never come back with no error messages.

wire earphone is OK just bluetooth is the problem

my bluetooth device is recognized to BuiltInMic. I don't know why...
`
NSLog(@"%@", port.portType);
    if ([port.portType isEqualToString:AVAudioSessionPortBluetoothHFP] ||
        [port.portType isEqualToString:AVAudioSessionPortBluetoothA2DP] ||
        [port.portType isEqualToString:AVAudioSessionPortBluetoothLE] ||
        [port.portType isEqualToString:AVAudioSessionPortHeadsetMic] ||
        [port.portType isEqualToString:AVAudioSessionPortHeadphones]

//            [port.portType isEqualToString:AVAudioSessionPortBuiltInMic]
)
{
return YES;
}
`


[DOC] - Website configurator is incorrect

Report incorrect documentation
The configurator documentation at https://rapids.ai/start.html#get-rapids is no longer quite correct
These are tiny points, but might put a newcomer off:
Provide links and line numbers if applicable.
https://rapids.ai/start.html#get-rapids
Describe the problems or issues found in the documentation
A clear and concise description of what you found to be incorrect.
The https://rapids.ai/start.html#get-rapids page says "The copied Docker command above should auto-run a notebook server. If it does not, run the following command within the Docker container to launch the notebook server.
bash /rapids/notebooks/utils/start-jupyter.sh
"
Steps taken to verify documentation is incorrect
List any steps you have taken:
I can confirm that neither cuda10.2-runtime-ubuntu18.04 or cuda10.2-runtime-ubuntu18.04-py3.7 auto-run a notebook server (they drop you to the command line).
And the directory for the start_jupyter.sh script is now at /rapids/utils
Suggested fix for documentation
Detail proposed changes to fix the documentation if you have any.
Correct the the Docker images to auto-run a notebook server and change the documentation so the location of the directory for start_jupyter.sh is /rapids/utils (not the current /rapids/notebooks/utils/start-jupyter.sh)
Report needed documentation
Report needed documentation
A clear and concise description of what documentation you believe it is needed and why.
Current documentation is wrong.
Describe the documentation you'd like
A clear and concise description of what you want to happen.
Options are laid-out above
Steps taken to search for needed documentation
List any steps you have taken:
Not applicable

@SharplyUnclear, thank you for opening this issue. Previously, our Docker containers would start a jupyter-lab server in the background before dropping the user into a bash terminal. We've recently made some changes to make that more clear to our end-users (see screenshot below). Additionally, we've updated the documentation site to point to the correct directory, /rapids/utils/start-jupyter.sh.

I will close this issue since it seems to be complete but feel free to reply here or open a new issue if you notice anything else that's not correct.


Support C++ modules.

Describe the pull request
This PR adds support for C++ modules. This should speed up compilation. Currently only the Core project exports modules. The remainder of the projects are exporting symbols to shared libraries, so this might not be that useful. We might still want to see if there's parts in them that may benefit from using modules.
To-Do

[ ] Use import std
[ ] Check usefulness for projects other than Core.
[ ] Turn off experimental mode in CMake, as soon as it is available.

Opened a tracking issue: #101.


helm dep up error

So I'm running this:
helm dep up
and it's returning an error:
No requirements found in /Users/momo/src/github.com/momo/common-helm-charts/storage/postgresql-postgis/charts.
Here's my chart:
total 24
drwxr-xr-x  6 momo  staff  204 Oct 12 19:32 .
drwxr-xr-x  6 momo  staff  204 Oct 12 19:32 ..
-rw-r--r--  1 momo  staff  412 Oct 12 19:32 Chart.yaml
drwxr-xr-x  2 momo  staff   68 Oct 12 14:05 charts
-rw-r--r--  1 momo  staff  117 Oct 12 19:20 requirements.yaml
-rw-r--r--  1 momo  staff   84 Oct 12 13:58 values.yaml

charts/ is empty.

@magicalbanana What version of helm are you running?

I figured it out. The issue was that I wasn't using the right repository URL. I just wish it returned a meaningful error.

@magicalbanana glad you figured it out.
What would you wanted the error to say for you to debug faster?

Invalid repository URL would be nice.

Alrighty and what version of helm are you running?

$ helm version
Client: &version.Version{SemVer:"v2.6.2", GitCommit:"be3ae4ea91b2960be98c07e8f73754e67e87963c", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.6.2", GitCommit:"be3ae4ea91b2960be98c07e8f73754e67e87963c", GitTreeState:"clean"}

Alrighty. Thanks for submitting your issue. We can look into throwing a more specific error in this case as you suggested. I'll edit the name of this issue and label correctly. Thanks again.

Hi @michelleN , I'm trying to replicate this issue and couldn't see the error. May I know the incorrect repository URL you've used?

Hey @franzbeltran. I was not the one running into this issue.
What error are you seeing?

Oh sorry I didn't notice that @michelleN . Here's the error:
Error: no repository definition...
Tagging @magicalbanana , what's the incorrect repository URL that you used?

@franzbeltran
That error feels vague too and could be more specific. What repo url are you using?


Update HAL and cortex-m dependencies

Hello,
Thanks for providing this board crate, it was very useful to quickly get started with OpenOCD and VS Code on my STM32F3-Disco :+1:
There are newer versions available for some of your dependencies. I updated them and tested this on my STM32F3-Disco. The only thing I tweaked (which was not a breaking change) was replacing a deprecated API, using into_af_open_drain instead of into_af4_....
Bumping the dependencies like this probably requires a minor version update, so I did that as well..
Kind Regards
Robin

Thanks! I always run the examples on hardware before merging, so it may take me a few days to merge, but I’ll absolutely do that sometime over the holidays.
I’m glad you found this crate useful and can’t thank you enough for updating the deps.

Cool, take your time :)

Any chance this can be committed and released soon, I would like to use later version of stm32f3xx_hal


links fix

fixed by @RichardLitt -- based on #14

why do we need all the glyphicons? (styles/bootstrap/fonts/glyphicons-halflings-regular.eot)  we're using font awesome, no?

@RichardLitt mind ipfs-adding the build dir and posting a link? it's all static so it should work. that way we can check all the links before merging.

 I'm not 100% sure on how to remove a single commit from a branch, but I could try to do that if we think it's relevant? Hard to say why he added them here.

Current link: Qmd4JQTNamy84b42zz87yUqA1yt73GNEmcNcsyE2qhzUmC. That's what you meant, right? I ran:  ipfs add -r -q build | tail -n1.

Yep! and the link to check it is: https://ipfs.io/ipfs/Qmd4JQTNamy84b42zz87yUqA1yt73GNEmcNcsyE2qhzUmC/ipfs.io/

@RichardLitt is your node on? having trouble getting it. need to run !pin Qmd4JQTNamy84b42zz87yUqA1yt73GNEmcNcsyE2qhzUmC in irc

Yep! Checked it. I think this works.

LGTM!


[Bug] Cannot remove a WebglOverlay that has not been set to a map

Description
Got the warning "Cannot remove a WebglOverlay that has not been set to a map " when using AdvancedMarker
Steps to Reproduce
Render the markers on the map by AdvancedMarker, got the warning (please see the below) from Chrome when leaving the page of the MAP
"Cannot remove a WebglOverlay that has not been set to a map"
Environment

Library version: 1.0.2
Google maps version: weekly
Browser and Version: Chrome
OS: MAC OS

Logs
Cannot remove a WebglOverlay that has not been set to a map
overrideMethod @ console.js:273
a @ js?key=XXXXXX&solution_channel=GMP_visgl_rgmlibrary_v1_default&loading=async&callback=__googleMapsCallback__:376
_.sn.map_changed @ js?key=XXXXXX&solution_channel=GMP_visgl_rgmlibrary_v1_default&loading=async&callback=__googleMapsCallback__:376
Uk @ js?key=XXXXXX&solution_channel=GMP_visgl_rgmlibrary_v1_default&loading=async&callback=__googleMapsCallback__:161
_.Sk.set @ js?key=XXXXXX&solution_channel=GMP_visgl_rgmlibrary_v1_default&loading=async&callback=__googleMapsCallback__:284
(anonymous) @ js?key=XXXXXX&solution_channel=GMP_visgl_rgmlibrary_v1_default&loading=async&callback=__googleMapsCallback__:169
dispose @ marker.js:103
aPa @ marker.js:60
dispose @ marker.js:129
setMap @ marker.js:122
set map @ marker.js:121
(anonymous) @ index-C8vDtd08.js:417
Xm @ index-C8vDtd08.js:40
Fs @ index-C8vDtd08.js:40
Xo @ index-C8vDtd08.js:40
YR @ index-C8vDtd08.js:40
bi @ index-C8vDtd08.js:40
q1 @ index-C8vDtd08.js:40
ci @ index-C8vDtd08.js:38
(anonymous) @ index-C8vDtd08.js:40

A quick heads up first, your API Key was visible as part of the log-messages.  I edited it out, but edits are still visible for anyone looking for it. Unless the key is properly secured (limited APIs and allowed domains), you should consider deleting it and create a new one.

I have seen those messages pop up as well, and have no Idea how they are caused. I'm suspecting this could happen if markers/advanced-markers are added and removed in very quick succession, which could have been caused by React re-rendering or re-mounting the marker component.
It doesn't seem to impact the application (to me it looks like an error that the maps API should be handling internally) so I'm going to treat this with a lower priority. I'll keep this open and update once I found out what exactly is causing those errors.

@usefulthink Hi, just for your information: there is a feature to delete a specific revision of the edit history in GitHub. Probably, you have the edit permission for this.
ref. Tracking changes in a comment - GitHub Docs - https://docs.github.com/en/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment#deleting-sensitive-information-from-a-comments-history

@usefulthink Hi, just for your information: there is a feature to delete a specific revision of the edit history in GitHub. Probably, you have the edit permission for this.

Awesome, haven't seen that option before. Thanks and done.

Welcome!🙂 I think there was no such feature in the past so it was introduced at some point, a handy one in this case.

Hi,
I am new here and really like this great project!
I also run into this problem with advanced markers, but also in other places. For instance when I try out this example:
https://github.com/visgl/react-google-maps/tree/main/examples/deckgl-overlay
and just add a dummy conditional rendering to app.tsx (no other changes) and click to trigger rerendering:
const [isSelected, setSelected] = useState(false);

return (
  <>

 setSelected(!isSelected)}>Click me to change

    {isSelected &&

is selected

    }
    {!isSelected &&
      <APIProvider apiKey={API_KEY}>
        <Map
          defaultCenter={{lat: 37.74, lng: -122.4}}
          defaultZoom={11}
          mapId={'xxxyyyzzz'}
          gestureHandling={'greedy'}
          disableDefaultUI={true}>
          <DeckGlOverlay layers={getDeckGlLayers(data)} />
        </Map>
        <ControlPanel />
      </APIProvider>
    }
  </>
);

It seems to me to happen in a map_changed (callback) function where a getMap() call returns empty rather than the map, see minified code below:
_.wn.prototype.map_changed = function() {
        const a = async()=>{
            let b = this.getMap();
            if (b)
                if (Fs.Dl(this, b),
                _.Gs.has(this))
                    _.Gs.delete(this);
                else {
                    const c = b.__gm.Eg;
                    await c.Mg;
                    await c.Kg;
                    const d = _.rn(c, "WEBGL_OVERLAY_VIEW");
                    if (!d.isAvailable && this.getMap() === b) {
                        for (const e of d.Eg)
                            c.log(e);
                        Fs.tl(this)
                    }
                }
            else
                console.warn("Cannot remove a WebglOverlay that has not been set to a map"),
                Fs.tl(this)
        }
        ;
        Fs ? a() : _.uk("webgl").then(b=>{
            Fs = b;
            a()
        }
        )
    }

Given the above, my guess is that it is related to using a WebglOverlay with the map in general (new GoogleMapsOverlay({interleaved: true})).
Please up the priority on this if possible and please let me know if I can help with more data :)
Thanks alot!

The thing is, this has no immediate relation to anything we are doing with the maps API. That WebglOverlay mentioned in the error-message isn't something we create or interact with.
It could be something used internally by the AdvancedMarker implementation, maybe related to the collision-handling or something like that. I am in contact with folks at the google maps team about this.
What would help the most in that context, would be a vanilla JS example that triggers this error, but I haven't yet had the time to investigate this further. It might be as simple as running marker.map = null on a marker that hasn't first been added to the map (at least that is something I could see out library doing).

same issue on my project too. it does not affect on any other functions though, I hope the issue to be solved anytime soon.

my team and I are experiencing the same issue. there are destruction techniques not being properly handled by vis.gl, or at least being passed up for us as devs to handle

@arithtic the problem here is that nobody seems to know what those techniques are, and where they are not being handled, can you elaborate?

https://developers.google.com/maps/documentation/javascript/webgl/webgl-overlay-view
@usefulthink That link above talks about how to correctly use and remove a webgl overlay. The warning/error shows that it is specifically related to this and must be because AdvancedMarker from vis.gl is using that google maps import.

Don't think this is something we can fix without directly using google.maps.WebGLOverlayView and the other raw JS library

The thing is, we're only using the google.maps.marker.AdvancedMarkerElement, and there's nothing in this library that has anything to do with the google.maps.WebGLOverlayView. The error ocurs internally in the maps API (notably, it occurs in the marker.js file, not in webgl.js), and there's no explanation I've found so far what this WebglOverlay from the error-message is (I'm pretty sure that it's an error message that wasn't intended to be seen by Maps API users at all).
I'm looking to reproduce this error-message without our library, which should tell us how this could be fixed in the library.

The error is being caught at line 357 of maps-api-v3/api/js/57/9/intl/en_gb/main.js

The thing is, we're only using the google.maps.marker.AdvancedMarkerElement, and there's nothing in this library that has anything to do with the google.maps.WebGLOverlayView. The error ocurs internally in the maps API (notably, it occurs in the marker.js file, not in webgl.js), and there's no explanation I've found so far what this WebglOverlay from the error-message is (I'm pretty sure that it's an error message that wasn't intended to be seen by Maps API users at all).
I'm looking to reproduce this error-message without our library, which should tell us how this could be fixed in the library.

@usefulthink The error is being caught at line 357 of maps-api-v3/api/js/57/9/intl/en_gb/main.js

@paiameya is that something that I can have a look at? There might be a different issue at play there.

@usefulthink
Open demo.reelreport.net in  browser like chrome, brave or any
set the top right date filter to 30 days,
click on cluster till its last zoom,
Steps to follow:
1. click or hover on a tooltip ,
2. click on video inside the tooltip
3. watch the video for 2 to 3 seconds and go back,
4. hover or click on another marker or cluster , view video for 2 to 3 seconds and come back
repeat this above steps ,
at one pointe the map goes black
The issue appears not only in mobile but also it windows and mac
https://github.com/user-attachments/assets/f0b8f144-ccd9-47ca-99f2-d2efd0ddfadd

Turns out, the error-message can be easily reproduced with the vanilla API. I created an Issue in the maps issue tracker about this: https://issuetracker.google.com/issues/356878392 (please +1 the issue there issue to raise awareness)
Also, while you're here, could you please have a quick look at this codesandbox and confirm that the warning-message is logged for you as well:
https://codesandbox.io/p/sandbox/repro-adv-marker-remove-warning-nccv7y?file=%2Fsrc%2Findex.ts%3A29%2C66
(if you don't see the message in the console, please add a comment here with your browser / os / related error-messages)

@paiameya I'm sorry, I can't reproduce the problem you are describing. And even if, it's very unlikely I could tell you anything about it without seeing the code involved. It also doesn't sound like it's related to this issue.

@usefulthink Thank you for trying. We will look into this and if we find more info that the bug is caused because of this issue, we will bring it to your notice. Thank you for your time.

@paiameya watch out for things like unnecessary renders of the map- and marker-components, that can sometimes be really bad. Also, maybe check the two updated clustering examples (here and here) for hints, in the older version were still some problems I had to fix.

I have this same problem too in my aplication.
`const removerAllMarkers = () => {
listMarker.forEach((marker) => {
if (marker.setMap) {
marker.setMap(null);
}
});
listMarker = [];
if (markerClusterer) {
markerClusterer.clearMarkers();
markerClusterer = null;
}
};
`
Every thime that I call the function to clean the map, even that I make the verfication wether the setMap have something, this is not enough to resolve the problem.

See https://github.com/visgl/react-google-maps/issues/419#issuecomment-2263582300 – it's an issue in the Maps API and there's nothing we can do about it on our end.
Please upvote the issue in the google issue tracker if you are affected by this: https://issuetracker.google.com/issues/356878392

I just received a notification from the issue tracking system that this has been solved in the latest maps API version: https://issuetracker.google.com/issues/356878392


[Bug report] main_loops assertion fails, causing the program to stay alive

Describe the bug
pulsemeeter does not terminate correctly and needs to be forcefully closed.
To Reproduce

Open pulsemeeter (from a terminal $ pulsemeeter)
Open the configs (top right corner) and change the layout to tabbed.
Change the layout back to default
Close pulsemeeter (tray icon -> right click -> Close)

Actual behavior
The window becomes unresponsive and pulsemeeter stays open.
(To terminate pulsemeeter from this frozen state, simply pressing ctrl+C in the terminal pulsemeeter is running in, works)
Expected behavior
That pulsemeeter would close as it does normally when skipping step 2 and 3.
Desktop:

Distro: Linux Mint 20.3 Cinnamon
Python Version 3.8.10

Additional context
Installation Procedure and Dependencies
The installation of pulsemeeter went exactly as guided here: (Ubuntu and the Pypi package)
https://github.com/theRealCarneiro/pulsemeeter/wiki/Installation#installing-dependencies
Installed Dependencies:
pip:
python-pip-whl/focal-updates,focal-updates,now 20.0.2-5ubuntu1.6 all [installed,automatic]
python3-pip/focal-updates,focal-updates,now 20.0.2-5ubuntu1.6 all [installed]
libappindicator:
libappindicator1/focal,now 12.10.1+20.04.20200408.1-0ubuntu1 amd64 [installed,automatic]
libappindicator3-1/focal,now 12.10.1+20.04.20200408.1-0ubuntu1 amd64 [installed]
libappindicator3-dev/focal,now 12.10.1+20.04.20200408.1-0ubuntu1 amd64 [installed]
gobject-introspection:
gobject-introspection/focal-updates,now 1.64.1-1~ubuntu20.04.1 amd64 [installed]
libpulse:
libpulse-dev/focal-updates,now 1:13.99.1-1ubuntu3.13 amd64 [installed]
libpulse-mainloop-glib0/focal-updates,now 1:13.99.1-1ubuntu3.13 amd64 [installed]
libpulse0/focal-updates,now 1:13.99.1-1ubuntu3.13 amd64 [installed]
libpulse0/focal-updates,now 1:13.99.1-1ubuntu3.13 i386 [installed,automatic]
libpulsedsp/focal-updates,now 1:13.99.1-1ubuntu3.13 amd64 [installed]
Logs
Since I started pulsemeeter in a terminal I have console outputs.
When discovering the bug I cannot recall what exactly I all did, but i have this console log:

Exception in thread Thread-6:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.8/dist-packages/pulsemeeter/interface/vumeter_widget.py", line 39, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
Exception in thread Thread-9:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.8/dist-packages/pulsemeeter/interface/vumeter_widget.py", line 39, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
/usr/lib/python3/dist-packages/gi/overrides/Gtk.py:1632: Warning: g_object_notify: assertion 'G_IS_OBJECT (object)' failed
return _Gtk_main(*args, **kwargs)
/usr/lib/python3/dist-packages/gi/overrides/Gtk.py:1632: Warning: g_object_set: assertion 'G_IS_OBJECT (object)' failed
return _Gtk_main(*args, **kwargs)
closing client handler threads...
(pulsemeeter:225675): Gtk-CRITICAL **: 20:17:58.240: gtk_main_quit: assertion 'main_loops != NULL' failed
sending exit signal to listener thread, it should exit within 2 seconds...
closing socket

The second time when reproducing the error in the steps described above, a few less errors occurred, but the main_loops assertion at the end still failed:

user@FUJITSU:~$ pulsemeeter
/bin/sh: 1: connect: not found
/usr/lib/python3/dist-packages/gi/overrides/Gtk.py:1632: Warning: g_object_notify: assertion 'G_IS_OBJECT (object)' failed
return _Gtk_main(*args, **kwargs)
/usr/lib/python3/dist-packages/gi/overrides/Gtk.py:1632: Warning: g_object_set: assertion 'G_IS_OBJECT (object)' failed
return _Gtk_main(*args, **kwargs)
closing client handler threads...
(pulsemeeter:228912): Gtk-CRITICAL **: 20:21:50.649: gtk_main_quit: assertion 'main_loops != NULL' failed
closing socket
sending exit signal to listener thread, it should exit within 2 seconds...

Fixed it in https://github.com/theRealCarneiro/pulsemeeter/commit/8271da04da22ac6b0b7aa2ff9ae8a56ed1f0a6f6, can you try it out?

Yes it's fixed! tho the console output doesn't look so good. There apparently are still tons of exceptions occurring.

$ /home/user/.local/bin/pulsemeeter
Exception in thread Thread-5:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
Exception in thread Thread-6:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
Exception in thread Thread-8:
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
Traceback (most recent call last):
Exception in thread Thread-7:
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
raise child_exception_type(errno_num, err_msg, err_filename)
self.process = subprocess.Popen(command,
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.run()
Traceback (most recent call last):
File "/usr/lib/python3.8/subprocess.py", line 858, in init
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
File "/usr/lib/python3.8/threading.py", line 870, in run
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
Exception in thread Thread-9:
self.process = subprocess.Popen(command,
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
raise child_exception_type(errno_num, err_msg, err_filename)
self._execute_child(args, executable, preexec_fn, close_fds,
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self.run()
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
File "/usr/lib/python3.8/threading.py", line 870, in run
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.process = subprocess.Popen(command,
raise child_exception_type(errno_num, err_msg, err_filename)
File "/usr/lib/python3.8/subprocess.py", line 858, in init
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
Exception in thread Thread-10:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.run()
Exception in thread Thread-11:
File "/usr/lib/python3.8/threading.py", line 870, in run
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
Exception in thread Thread-12:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
Exception in thread Thread-14:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
Exception in thread Thread-15:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
Exception in thread Thread-16:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
Exception in thread Thread-17:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
Exception in thread Thread-18:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self.process = subprocess.Popen(command,
Exception in thread Thread-19:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
File "/usr/lib/python3.8/subprocess.py", line 858, in init
Exception in thread Thread-20:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._execute_child(args, executable, preexec_fn, close_fds,
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3.8/subprocess.py", line 858, in init
Exception in thread Thread-21:
raise child_exception_type(errno_num, err_msg, err_filename)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self._execute_child(args, executable, preexec_fn, close_fds,
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
Traceback (most recent call last):
self.process = subprocess.Popen(command,
self._execute_child(args, executable, preexec_fn, close_fds,
raise child_exception_type(errno_num, err_msg, err_filename)
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
File "/usr/lib/python3.8/subprocess.py", line 858, in init
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._execute_child(args, executable, preexec_fn, close_fds,
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
Exception in thread Thread-23:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
Exception in thread Thread-24:
Traceback (most recent call last):
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
Exception in thread Thread-25:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
Exception in thread Thread-26:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
Exception in thread Thread-27:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
Exception in thread Thread-28:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
Exception in thread Thread-29:
Traceback (most recent call last):
Exception in thread Thread-30:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.8/site-packages/pulsemeeter/interface/vumeter_widget.py", line 40, in listen_peak
self.process = subprocess.Popen(command,
File "/usr/lib/python3.8/subprocess.py", line 858, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pulse-vumeter'
/usr/lib/python3/dist-packages/gi/overrides/Gtk.py:1632: Warning: g_object_notify: assertion 'G_IS_OBJECT (object)' failed
return _Gtk_main(*args, **kwargs)
/usr/lib/python3/dist-packages/gi/overrides/Gtk.py:1632: Warning: g_object_set: assertion 'G_IS_OBJECT (object)' failed
return _Gtk_main(*args, **kwargs)
closing client handler threads...
(pulsemeeter:692183): Gtk-CRITICAL **: 18:20:06.442: gtk_main_quit: assertion 'main_loops != NULL' failed
closing socket
sending exit signal to listener thread, it should exit within 2 seconds...


lesson1,2,3

Hello
I can't accept this pull request, It's using an old version (fork) of Ring
And contains modification to a lot of files!
(1) Create new fork (or update your fork) to use a new version of Ring
(2) Add your files
(3) Send the Pull Request


Prevent dumper from splitting new lines.

This prevents yaml.SafeDumper from splitting long lines into multiple lines which in turn causes the pyasdf parser to error in such cases and when the delimiter is a \n. This showed up in the context of JWST data models. Here's a minimal example of the problem:
from jwst_lib import models
from pyasdf import generic_io, yamlutil
m = models.ImageModel() # meta is not populated
sub={'name': 'FULL', 'xstart': 1, 'ystart': 1, 'xsize': 2014, 'ysize':1023, 'slowaxis': -1, 'fastaxis': 2}
m.meta.subarray = sub
fd = generic_io.get_file('mm', mode='w')
yamlutil.dump_tree(m._instance, fd, m._asdf)
fd.close()

Reading the file shows how yaml split the long line.
f=open('mm')
f.read()
subarray: {fastaxis: 2, name: FULL, slowaxis: -1, xsize: 2014, xstart: 1, ysize: 1023,\n    ystart: 1}

This fixes the immediate problem but is there a better fix.
@embray @bernie-simon

Should get #180 done then re-run this build for this PR.

which in turn causes the pyasdf parser to error in such cases and when the delimiter is a \n

Could you demonstrate how this errors?  When I run your example, and follow it up with:
yamlutil.load_tree(open('mm'), m._asdf)

it returns
{u'meta': {u'date': u'2015-12-09T14:16:23.699', u'subarray': {u'slowaxis': -1, u'name': u'FULL', u'xsize': 2014, u'fastaxis': 2, u'xstart': 1, u'ysize': 1023, u'ystart': 1}}, u'data': {u'datatype': u'float32', u'source': 0, u'shape': [0, 0], u'byteorder': u'little'}, u'err': {u'datatype': u'float32', u'source': 2, u'shape': [0, 0], u'byteorder': u'little'}, u'dq': {u'datatype': u'uint32', u'source': 1, u'shape': [0, 0], u'byteorder': u'little'}}

For comparison:
In [14]: pprint(sub)
{'fastaxis': 2,
 'name': 'FULL',
 'slowaxis': -1,
 'xsize': 2014,
 'xstart': 1,
 'ysize': 1023,
 'ystart': 1}

In [15]: pprint(yamlutil.load_tree(open('mm'), m._asdf)['meta']['subarray'])
{u'fastaxis': 2,
 u'name': u'FULL',
 u'slowaxis': -1,
 u'xsize': 2014,
 u'xstart': 1,
 u'ysize': 1023,
 u'ystart': 1}

So I'm curious to see where it's actually crashing, since there's nothing incorrect about the YAML itself.

Also when I do
m.to_asdf('test.asdf')
pyasdf.open('test.asdf').tree

it seems to load fine.

Yes, this is valid yaml and will load correctly. It fails in the context of JWST data models where it reads from a bytes stream (in some case until a '\n'). Since by default yaml will split a long line into multiple lines of 80 characters, it prevents such file from being read. I'll have to send a failing example offline as it is more involved than this. And it's probably best if this can be fixed in the data models.

It fails in the context of JWST data models where it reads from a bytes stream (in some case until a '\n')

Yeah, I'd have to see what you mean.  I don't know what the second "it" in that sentence is--what reads from a bytes stream?

I think maybe I understand this now.  I think there's a bug in pyasdf.generic_io._TruncatedReader.  Still confirming...

@nden The example code you gave me saved the ASDF tree in a FITS file, which references FITS extensions for the data.  Is that right?  Is it in reading that where the crash occurs?  How do we normally read such files?

@embray That's right. It crashes when read in: Try this
from jwst_lib improt models
models.DataModel(filename)

The original issue here should be fixed by #183.


Have support for probot with Zephyr

Probot (https://probot.github.io/apps/) has a number of interesting abilities and it would be nice if we supported it as part of our infrastructure.  Here are some use for:

Auto labeling of PR based on files that are modified in the PR (https://github.com/probot/autolabeler)
Mark a PR as from a first time contributor
Add the ability to rebase from a comment in a PR

We can look into things like:

Auto closing of old issues/PR
having comments auto create issues

Plus any other things we want to help automate review and development flow

with GH actions available, do we really need that?

superseded by GH actions, closing


launch a juicebox project action

add launch a juicebox project action
uses basic JSON templates we can define that correlate to juicebox project settings
used for whiteglove juicebox deployment
nance should never be the owner of a project, always sets owner to the launchoor

Need to get jbm to add nance.app to allow list for iframe support and then this can be closed


Implement a pylint 'parseable' output format

The version of the jenkins plugin I use fails to render the results
of the checkstyle parser for some unknown reason.
Also, 'parseable' is supported by editors such as emacs.
{path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
https://docs.pylint.org/en/1.6.0/output.html
Example output:
src/a.php:4: [E11011] PhanUndeclaredFunction: Call to undeclared function \bar()
src/a.php:5: [E11011] PhanUndeclaredFunction: Call to undeclared function \baz()

This patch looks good (beside the one request to move the IDs to Issue.php). Thanks @TysonAndre!
Would it be possible to make that change before I merge it in?

Thanks, @TysonAndre!


Adds disabled property for tab.

This PR adds "isDisabled" property, as requested in #30

Looks great, thanks!


Rule: declaration-property-value-blacklist no longer exists with Stylelint 14.x

I have upgraded Stylelint to 14.0.0 and now it breaks when using the 'stylelint-config-airbnb' config
Unknown rule declaration-property-value-blacklist  declaration-property-value-blacklist

Looks like there are some breaking changes with stylelist 14x. which is now the only version supported by the VSCode plugin. Personally I am going to try using stylelint-config-standard-scss then manually add the rules I see defined here in the repo.


Educational: step-by-step coding of the frontend

Hi TQEC friends,
I am unfamiliar with JavaScript, React, Pixi, ... but would like to help developing the frontend part.
I opted for a hands-on approach to learn those language & libraries, with the side benefit of familiarizing with the frontend codebase.
I started by setting up a template React project with:
https://create-react-app.dev/
and then continued by adding snippets of code from the tqecjs frontend:
https://github.com/giangiac/tqec/tree/test-frontend/step-by-step-frontend
I noticed that this may be helpful to the community members who, like me, need to learn the basics of a web app.
If there is interest, I can create a PR to track the extension of the "step-by-step frontend coding", with the commit message indicating the functionality added by each of them.
Checking the commit content will help locating the part of code responsible for that functionality.

@giangiac If you'd like, you can go ahead and open this PR.
One thing I noticed was that the commit history shows you the tutorial steps for building up the frontend piece-by-piece.

Comments on the differences with the original frontend

instead of qubits, the initial white circles are "positions" where the qubits may be added
clicking a position adds a qubits there
when a plaquette is created, qubits are added to it
instead of dragging the plaquette around, I opted for a button to move it to predefined areas
the plaquette's qubits are moved accordingly, thus freeing the option to add new qubits in the plaquette-building area for the next plaquette

@giangiac I think your work here is also addressing #46, which is essential to the main app, on top of having this educational tool for newcomers. Would you be able to spin off the circuit builder into a separate branch, and open a pull request for that specific issue?

@giangiac I think your work here is also addressing #46, which is essential to the main app, on top of having this educational tool for newcomers. Would you be able to spin off the circuit builder into a separate branch, and open a pull request for that specific issue?

Sam, I'll create a separate PR with the relevant code.

hi @giangiac  and @smburdick  I looked at your step-by-step branch and it's great! thank you @giangiac. I'm thinking of getting started with the connection between frontend and backend. Do you want me to wait until the new pr is made?

hi @giangiac and @smburdick I looked at your step-by-step branch and it's great! thank you @giangiac. I'm thinking of getting started with the connection between frontend and backend. Do you want me to wait until the new pr is made?

@rryoung98 Are you referring to https://github.com/QCHackers/tqec/issues/38?

hi @giangiac and @smburdick I looked at your step-by-step branch and it's great! thank you @giangiac. I'm thinking of getting started with the connection between frontend and backend. Do you want me to wait until the new pr is made?

Thanks, @rryoung98!
I have no clue how to connect the JS frontend with the Python backend. One "cheap" option is that the backend simply parses the .txt file with the library of plaquettes/circuits and take over from there. Effectively, this means two separate "programs/apps" that just agree on the output/input file format.
Is there a way to have a deeper integration?
How do you envision that?
An idea (not sure how realistic) may be having multiple "tabs" in the webapp. The first tab being the frontend, then the user can switch to other tabs for the template creation, etc etc. The code enabling the frontend functionalities (and thus the other tabs) is in Python, so I am not sure how/if that works.

hi @giangiac and @smburdick I looked at your step-by-step branch and it's great! thank you @giangiac. I'm thinking of getting started with the connection between frontend and backend. Do you want me to wait until the new pr is made?

Thanks, @rryoung98! I have no clue how to connect the JS frontend with the Python backend. One "cheap" option is that the backend simply parses the .txt file with the library of plaquettes/circuits and take over from there. Effectively, this means two separate "programs/apps" that just agree on the output/input file format.
Is there a way to have a deeper integration? How do you envision that?
An idea (not sure how realistic) may be having multiple "tabs" in the webapp. The first tab being the frontend, then the user can switch to other tabs for the template creation, etc etc. The code enabling the frontend functionalities (and thus the other tabs) is in Python, so I am not sure how/if that works.

@giangiac You're spot on, actually -- the frontend and backend communicate via REST APIs, using a predetermined JSON schema.
Your idea was sketched up in one of our design files in the shared Gdrive, but I don't think we've looked into those as a group lateley.

Yes, it's going to be just rest apis with json (we will need to tweak your ascii circuits into something easier to parse like qasm).

Marking this as closed -- @giangiac


Text not complete / Cutted

sometime this is the output of the watermark.
do you have any suggestion on how to avoid this ?
Thanks

Can you please provide the code you're using to generate this? It will help people helping you.

Basically
i'm creating the canvas and then with the insert i'm going to watermark the image (this way i can use the position provided by insert)
        $boxSize = self::getFontBox($text, $font, $size);

        //increse the width and height by 10%
        $boxSize['width'] = $boxSize['width'] * 1.1;
        $boxSize['height'] = $boxSize['height'] * 2;

        $canvas = $this->im->canvas($boxSize['width'], $boxSize['height']);
        $canvasWithText = $canvas->text($text, $boxSize['width']/2, $boxSize['height']/2, function ($fontToApply) use ($font, $size) {
            $fontToApply->file($font);
            $fontToApply->size($size);
            $fontToApply->color('#000');
            $fontToApply->align('center');
            $fontToApply->valign('middle');
        });

where getFontBox is
    private static function getFontBox($text, $font, $size)
    {
        $f = new Font($text);
        $f->file($font);
        $f->size($size);

        return $f->getBoxSize();
    }

Actually i solved this way:
        $boxSize['width'] = $boxSize['width'] * 1.1;
        $boxSize['height'] = $boxSize['height'] * 2;

Since the height of the calculated box was to small ... ( reason why the text was cutted )
Let me know if there is a clean solution, thanks

I never experienced something like this. What font are you using, maybe there is a problem?

i'm using Cambria
On Thu, Sep 1, 2016 at 11:53 AM, Oliver Vogel<EMAIL_ADDRESS>wrote:

I never experienced something like this. What font are you using, maybe
there is a problem?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Intervention/image/issues/605#issuecomment-244031833,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAQMJQQsick8m5nEioaocrSjuzYRt1xTks5qlqCegaJpZM4Ju6UZ
.

--
davidino
http://davidfunaro.com
http://about.me/david.funaro
<EMAIL_ADDRESS>


Configure novatel device through gnss driver online

In gnss driver, a notice tells that the login_commands are only for debug. I want to know why can't us configure them online.
#########################################################################
# notice: only for debug, won't configure device through driver online!!!
#########################################################################
# login_commands: "UNLOGALL THISPORT\r\n"
# login_commands: "LOG COM2 GPRMC ONTIME 1.0 0.25\r\n"
# login_commands: "EVENTOUTCONTROL MARK2 ENABLE POSITIVE 999999990 10\r\n"
# login_commands: "EVENTOUTCONTROL MARK1 ENABLE POSITIVE 500000000 500000000\r\n"
# login_commands: "LOG GPGGA ONTIME 1.0\r\n"

# login_commands: "log bestgnssposb ontime 1\r\n"
# login_commands: "log bestgnssvelb ontime 1\r\n"
# login_commands: "log bestposb ontime 1\r\n"
# login_commands: "log INSPVAXB ontime 0.5\r\n"
# login_commands: "log INSPVASB ontime 0.01\r\n"
# login_commands: "log CORRIMUDATASB ontime 0.01\r\n"
# login_commands: "log RAWIMUSXB onnew 0 0\r\n"
# login_commands: "log INSCOVSB ontime 1\r\n"
# login_commands: "log mark1pvab onnew\r\n"

# login_commands: "log rangeb ontime 0.2\r\n"
# login_commands: "log bdsephemerisb\r\n"
# login_commands: "log gpsephemb\r\n"
# login_commands: "log gloephemerisb\r\n"
# login_commands: "log bdsephemerisb ontime 15\r\n"
# login_commands: "log gpsephemb ontime 15\r\n"
# login_commands: "log gloephemerisb ontime 15\r\n"

# login_commands: "log imutoantoffsetsb once\r\n"
# login_commands: "log vehiclebodyrotationb onchanged\r\n"

We prefer to keep these settings in the gnss receiver.
We tried to configure the receiver every time we launch the driver before. However, that caused problems. After this setting was written into the gnss receiver, it behaved more reliably.
If your device cannot save the settings, you can uncomment the configuration lines.

Closing the ticket. Feel free to reopen if you need.


Sipity Entity loads workflow objects from Fedora

Descriptive summary
Sipity::Entity proxy_for loads the object from Fedora instead of from Solr.  For cases where the workflow is changing the object this is good.  For cases where the workflow is displaying information about the object this is unnecessarily slow.
We may want to include a secondary method and allow users of entity to chose a "read only" object (from solr) and or and "editable" object from fedora.
For Notifications (https://github.com/projecthydra-labs/hyrax/tree/master/app/services/hyrax/workflow) a read only copy would be sufficient.

@vantuyls Do you want to slot this into MD milestone 2 or 3, or leave in its current milestone?

I'm closing this as wontfix. This will be largely moot after a wings.


Live

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

windows-iotcore/TOC.md
:white_check_mark:Succeeded

windows-iotcore/breadcrumb/toc.yml
:white_check_mark:Succeeded

windows-iotcore/commercialize-your-device/Recovery.md
:white_check_mark:Succeeded

windows-iotcore/develop-your-app/Loopback.md
:white_check_mark:Succeeded

windows-iotcore/index.md
:white_check_mark:Succeeded

windows-iotcore/learn-about-hardware/HardwareCompatList.md
:white_check_mark:Succeeded

windows-iotcore/learn-about-hardware/SuggestedBoards.md
:white_check_mark:Succeeded

windows-iotcore/manage-your-device/RemoteDisplay.md
:white_check_mark:Succeeded

windows-iotcore/media/Accessibility/accessibility1.png
:white_check_mark:Succeeded

windows-iotcore/media/Accessibility/accessibility2.gif
:white_check_mark:Succeeded

windows-iotcore/media/Accessibility/accessibility3.gif
:white_check_mark:Succeeded

windows-iotcore/media/Accessibility/accessibility4.png
:white_check_mark:Succeeded

windows-iotcore/release-notes/Insider/17015.md
:white_check_mark:Succeeded

windows-iotcore/release-notes/Insider/17083.md
:white_check_mark:Succeeded

windows-iotcore/secure-your-device/TPM.md
:white_check_mark:Succeeded

windows-iotcore/windows-iot-core.md
:white_check_mark:Succeeded

windows-iotcore/windows-iot-enterprise.md
:white_check_mark:Succeeded

windows-iotcore/windows-iot.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Rapid-fire weapons cause extreme skill increase as well as tiredness

Must tone down both effects, somehow knowing when to...

Fixed skill, but the exhaustion from firing a crossbow changes dynamically depending on the firer's attributes-- From The Previous Tick. Oh dear.

I BEAT THE BUG!!!!!!!!!!!!

Please note that it uses a compromise system where the total exhaustion change per tick is multiplied up (or down), so it doesn't actually account for attributes or anything and would multiply down a unit's exhaustion from running too if running while shooting.