Add markdown dark mode

I took the liberty of taking a crack at it myself because it was only like 3 lines of code. Given that the code styles were already grouped in light and dark themes, I decided to just use that so any dark style will return dark markdown and any light style will return light markdown. It would probably be better to swap out the options in the select depending on the whether raw code, markdown or a notebook is chosen but I feel like it works as is for now. What do you think? Feel free to test it out at you own pace, there's no pressure.

I like your idea and I have tweaked the code to also support dark mode for the jupyter files. You can check my commits and the comments in GitHub web interface for the details. It that is OK to you, we can merge it!
Thank you and sorry for my late reply :)
Markdown Dark

Jupyter  Dark

I'm glad you found the time to come back to this, it looks good to me so go ahead and merge!


Write a Rust program to convert hours to weeks

Description
Write a Rust program to convert hours to weeks
1 week = 7 days = 168 hours
Input  : 840
Output : 5

How to contribute

Save the solution in convert_hours_to_weeks.rs file
Add convert_hours_to_weeks.rs file in convert-hours-to-weeks folder

!assign


Will you provide a pretrained model?

This project was done during my internship at Huawei.
Unfortunately, I do not have permission to copy and publish the checkpoints of the pretrained model in Huawei's server.
Now, my personal GPUs are limited and I have other projects to work on.
So, I am currently unable to train the model again either.
Once we have collected the complete BSD dataset, I will experiment again and upload the checkpoints of the pretrained model.
Thank you.

Thanks.


I can not save my profile

Subject: I can not save my profile
Description:
When I try to save my profile it says 'unknown error occurred'
Results:
When I try to save my profile it says 'unknown error occurred'
Backend version: develop-1408ca42
Frontend version: develop-1408ca42
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36
Page: https://couchers.org/profile/edit
User: alikaro (9665)

Traceback:
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 1802, in _execute_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.8/site-packages/sqlalchemy/engine/default.py", line 732, in do_execute
    cursor.execute(statement, parameters)
psycopg2.errors.NotNullViolation: null value in column "meetup_status" of relation "users" violates not-null constraint

@Couchers-org/web: my theory now is that the frontend had a cached copy of the user's profile which included an unknown meetup status. They then went to update the profile which posts the full thing to the server including unchanged fields which didn't work since you're not allowed to have an unknown meetup status anymore.
Would it be possible to store the version in the cache and purge the local cache whenever the backend/frontend version changes?

Yes, the React Query persistor accepts a buster string in its config that does that


Add per visit metric

This is a first attempt at adding a per-visit metric. This version will run for me on w_2020_21 with a command like
pipetask run -j 1 -b "$CI_HSC_GEN3_DIR"/DATA/butler.yaml --register-dataset-types -p pipelines/visit_analysis.yaml -d "abstract_filter = 'r'" -o visitTest --replace-run
Right now there is just a task that computes the number of sources in each individual visit. I have not yet confirmed that it is doing the right thing.

Added an aggregation step. This now runs for me with commands like the following.
Run first time:
run -j 1 -b "$CI_HSC_GEN3_DIR"/DATA/butler.yaml --register-dataset-types -p pipelines/visit_pipeline.yaml -d "abstract_filter = 'r'" -o visitTest -i shared/ci_hsc_output
Re-runs:
pipetask run -j 1 -b "$CI_HSC_GEN3_DIR"/DATA/butler.yaml --register-dataset-types -p pipelines/visit_pipeline.yaml -d "abstract_filter = 'r'" -o visitTest --replace-run
The aggregation is currently a simple sum of source counts.
Added a notebook, notebooks/visit_verify.ipynb, to verify that the per-visit metrics are being computed as expected in terms of the number of unique visits and number of source counts.


Action confirm needed but without ajax request

Hi,
all work well with class ajax, but I need confirm without ajax request,
how can I do it?
thank you.

$grid->addAction('delete', '', 'delete!')
	->setClass('btn btn-xs btn-danger ajax')
	->setConfirm('Do you really want to delete %s?', 'name');

Thank you,
but I need to send request not over ajax,
but confirm dont work without ajax class.
And ajax class is in nette for ajax request, or not?

Sorry, i forgot to remove the ajax class:
$grid->addAction('delete', '', 'delete!')
    ->setClass('btn btn-xs btn-danger')
    ->setConfirm('Do you really want to delete %s?', 'name');

The confirmation dialog should work also with non-ajax rq: https://github.com/ublaboo/datagrid/blob/master/assets/dist/datagrid.js#L3-8
What version do you use?

in composer I have ^2.2

:) Can you please try 4.2.x?

There are release notes:
2.3: https://forum.nette.org/cs/25444-ublaboo-datagrid-mocny-rychly-rozsiritelny-hezky-anglicky-dokumentovany-datagrid?p=3#p171227
3.0: https://forum.nette.org/cs/25444-ublaboo-datagrid-mocny-rychly-rozsiritelny-hezky-anglicky-dokumentovany-datagrid?p=4#p171796
3.2: https://forum.nette.org/cs/25444-ublaboo-datagrid-mocny-rychly-rozsiritelny-hezky-anglicky-dokumentovany-datagrid?p=5#p173234
3.3: https://forum.nette.org/cs/25444-ublaboo-datagrid-mocny-rychly-rozsiritelny-hezky-anglicky-dokumentovany-datagrid?p=5#p173250
4.0: https://forum.nette.org/cs/25444-ublaboo-datagrid-mocny-rychly-rozsiritelny-hezky-anglicky-dokumentovany-datagrid?p=6#p173917
4.1: https://forum.nette.org/cs/25444-ublaboo-datagrid-mocny-rychly-rozsiritelny-hezky-anglicky-dokumentovany-datagrid?p=6#p174556
4.2: https://forum.nette.org/cs/25444-ublaboo-datagrid-mocny-rychly-rozsiritelny-hezky-anglicky-dokumentovany-datagrid?p=7#p174951

Thank you, all work well,
sorry , I am new in nette...

👍


100 minimal working website

Codecov Report

Merging #101 (c4b1aad) into main (0721bf2) will not change coverage.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##             main     #101   +/-   ##
=======================================
  Coverage   78.85%   78.85%
=======================================
  Files          25       25
  Lines        2086     2086
=======================================
  Hits         1645     1645
  Misses        441      441

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


Explorer Context menu not working, Cannot find registry key: Software\classes\dictionary\background\shell

yes i dont have but i have only Software\classes\dictionary\shell

if i create manually directory Software\classes\dictionary\background\shell
then Install works, so i guess you have to create it if its not there

ok thanks!
ill add some check there later (and create the folder if it doesnt exists)

just noticed the install button doesn't work on one different pc either.. so need to look into that

on my work pc with windows 10 not working but on home pc with win 10 it works...


Set PIP_PREFIX on noarch?

We currently don't handle build & host the exact same way as conda-build does.
If conda-build encounters a situation where no host is present, it handles build as host. This probably happens most often for noarch packages where nothing is linked against and cross-compilation is no concern.
I am wondering if we should follow that behavior, or if we should just make sure that pip install installs into the $PREFIX (we could export the PIP_PREFIX variable for that ... possibly!).
In that case, pip would always install into the correct prefix.

If conda-build encounters a situation where no host is present, it handles build as host.

I think this was the original behavior in conda-build 2.x where host didn't exist yet.
There are a few recipes (2k+!) that do not use host in conda-forge.

I think treating build as host is very unintuitive. I wouldnt copy that behavior. The conversion tool should be able to correct this.


[tool_crash] _Exception

Command
flutter analyze

Steps to Reproduce

...
...
...

Logs
_Exception

[✓] Flutter (Channel stable, 3.24.4, on macOS 15.1 24B83 darwin-arm64, locale en-BD)
    • Flutter version 3.24.4 on channel stable at /Users/md.shahinbashar/development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 603104015d (2 weeks ago), 2024-10-24 08:01:25 -0700
    • Engine revision db49896cf2
    • Dart version 3.5.4
    • DevTools version 2.37.3

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/md.shahinbashar/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Users/md.shahinbashar/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.11+0-17.0.11b1207.24-11852314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 16.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 16B40
    • CocoaPods version 1.15.2

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

[✓] Android Studio (version 2024.1)
    • Android Studio at /Users/md.shahinbashar/Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.11+0-17.0.11b1207.24-11852314)

[✓] IntelliJ IDEA Ultimate Edition (version 2024.2.2)
    • IntelliJ at /Users/md.shahinbashar/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.86.1)
    • VS Code at /Users/md.shahinbashar/Downloads/Visual Studio Code.app/Contents
    • Flutter extension version 3.100.0

[✓] VS Code (version 1.93.1)
    • VS Code at /Users/md.shahinbashar/Downloads/Visual Studio Code 2.app/Contents
    • Flutter extension version 3.100.0

[✓] Connected device (4 available)
    • Pixel 6 (mobile)                • 26211FDF6007JX        • android-arm64  • Android 15 (API 35)
    • macOS (desktop)                 • macos                 • darwin-arm64   • macOS 15.1 24B83 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad • darwin         • macOS 15.1 24B83 darwin-arm64
    • Chrome (web)                    • chrome                • web-javascript • Google Chrome 130.0.6723.92

[✓] Network resources
    • All expected network resources are available.

• No issues found!

 Is there a crash stack trace that you can provide for us to investigate further?
(Maybe similar to https://github.com/flutter/flutter/issues/123495)


Plugin no longer working in offline mode

System Health details
dockerized homeassistant
in a offline lan
Checklist

[X] I have read the FAQ to see if there is a known solution to my problem.
[X] I have enabled debug logging for my installation.
[X] I have filled out the issue template to the best of my ability.
[X] This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
[X] This issue is not a duplicate issue of currently previous issues..

Describe the issue
Altough there is someone else with a similar issue, I think my issue is still different.
I am using my homassistant and smarthome of in a isolated network (only temporarly internet connetctivity when I do updates) and I like it that way. Recent updates of this plugin however rendered the plugin useless when the plugin is loaded / homassistant boots without internet connectivity.
For now I need to disable the plugin, I would love to see this fixed for offline installations like mine. Will this be adressed?
kind regards
Reproduction steps

disable internet connection for homeassistant instance
restart homeassistant
get notification with the link to the error logs like below

Debug logs
Logger: homeassistant.setup
Quelle: setup.py:402
Erstmals aufgetreten: 02:31:31 (1 Vorkommnisse)
Zuletzt protokolliert: 02:31:31

Error during setup of component powercalc
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aiohttp/connector.py", line 1203, in _create_direct_connection
    hosts = await self._resolve_host(host, port, traces=traces)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/connector.py", line 880, in _resolve_host
    return await asyncio.shield(resolved_host_task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/connector.py", line 917, in _resolve_host_with_throttle
    addrs = await self._resolver.resolve(host, port, family=self._family)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/resolver.py", line 33, in resolve
    infos = await self._loop.getaddrinfo(
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/asyncio/base_events.py", line 899, in getaddrinfo
    return await self.run_in_executor(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/socket.py", line 963, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
socket.gaierror: [Errno -3] Try again

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 402, in _async_setup_component
    result = await task
             ^^^^^^^^^^
  File "/config/custom_components/powercalc/__init__.py", line 240, in async_setup
    await discovery_manager.start_discovery()
  File "/config/custom_components/powercalc/discovery.py", line 123, in start_discovery
    power_profile = await self.get_power_profile(
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/powercalc/discovery.py", line 144, in get_power_profile
    self.power_profiles[entity_id] = await get_power_profile(
                                     ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/powercalc/power_profile/factory.py", line 39, in get_power_profile
    library = await ProfileLibrary.factory(hass)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/powercalc/power_profile/library.py", line 49, in factory
    await library.initialize()
  File "/config/custom_components/powercalc/power_profile/library.py", line 35, in initialize
    await self._loader.initialize()
  File "/config/custom_components/powercalc/power_profile/loader/composite.py", line 14, in initialize
    [await loader.initialize() for loader in self.loaders]  # type: ignore[func-returns-value]
     ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/powercalc/power_profile/loader/remote.py", line 36, in initialize
    self.library_contents = await self.load_library_json()
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/powercalc/power_profile/loader/remote.py", line 60, in load_library_json
    async with aiohttp.ClientSession() as session, session.get(ENDPOINT_LIBRARY) as resp:
  File "/usr/local/lib/python3.12/site-packages/aiohttp/client.py", line 1197, in __aenter__
    self._resp = await self._coro
                 ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/client.py", line 581, in _request
    conn = await self._connector.connect(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/connector.py", line 544, in connect
    proto = await self._create_connection(req, traces, timeout)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/connector.py", line 944, in _create_connection
    _, proto = await self._create_direct_connection(req, traces, timeout)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/connector.py", line 1209, in _create_direct_connection
    raise ClientConnectorError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host powercalc.lauwbier.nl:443 ssl:default [Try again]

Diagnostics dump or YAML config
No response

@pmffromspace
Please see https://homeassistant-powercalc.readthedocs.io/en/latest/library/library.html#disable-download-feature.
I have added that option when implementing the download feature for people who like to fully operate locally.
The drawback is you'll need to manage downloading the profiles yourself.
Let me know when you have any further questions.

Thanks for the quick reply


Agregar tres cursos a coming soon

Puedes generar imagenes que vayan con los colores de nuestra plataforma y ponerlas en coming soon?
Designing Sounds for Beginners by Dist pfp: https://twitter.com/distcollective
Learn the fundamentals of digital sound-making for creatives.
Mastering An Artist Statement by Haiver pfp: https://twitter.com/HaiverArt
Learn how to crast a simple and powerful artist statement.
Generative Coded Art 101 by Heeey pfp: https://twitter.com/heeey_eth
Learn the fundamental concepts and history behind generative art.


Memory and map

Currently NmtFields hold a copy of both the alms, the maps and the masks that were used to create them. For large maps, this can be very memory-heavy. We should include an option for fields to free up this memory upon creation if possible.

Closed by #117


Added notebook with model using scaled features

This PR adds the notebooks used to enhance cross-country model performance

2023-02-06_crosscountry_initial_jace.ipynb - experimented on different scalers applied on the feature columns and wealth index. Performance was increased (R^2 = 0.41 -> 0.48) especially for the case where PH is the test country (R^2 = 0.25->0.42).

Oh one last thing, can you add a bit of discussion at the top and refer to the 2 reference papers we found that also normalized features and wealth index per country? Just so we remember the basis for doing something like this. Thanks!


Compilation error

I run with success
./setup.sh
But on command
./build.sh
clang-16: error: no input files
wasm-ld: error: cannot open llama2c.o: No such file or directory

And indeed the folder structure is empty:)
Any chance you know what might have caused it?

Sorry for the inconvenience. What folder structure? I imagine you cloned the repo locally? can you perhaps share a screenshot of your folder ls -la output for example?


Add linear velocity components to links that have linear velocity cmds applied

Signed-off-by: Ashton Larkin<EMAIL_ADDRESS>🦟 Bug fix
Fixes #966
Summary
When a link has a LinearVelocityCmd applied to it in a given simulation step, there's no way to read what the link's linear velocity is in future simulation steps since the LinearVelocityCmd is "zeroed out" after it is applied. This PR adds a LinearVelocity and WorldLinearVelocity component to a link when a LinearVelocityCmd is applied to it, so that users have a way to read a link's linear velocity in future simulation steps. I've added a test case to check this in the physics system integration test, and have verified that running the test to read linear velocity data from a link with a LinearVelocityCmd applied to it fails without the other changes made in this PR.
We should probably make similar updates for LinearVelocityCmds applied to models, but this will be easier to do starting in ign-gazebo5 since we can make use of #736 and #685 (if a LinearVelocityCmd is applied to a model and we want to create LinearVelocity and WorldLinearVelocity components for the model, we could populate the data in these components with the new velocity information from the model's canonical link).
On a somewhat related note to this, we could also make similar changes for AngularVelocityCmd, so that users who apply AngularVelocityCmds can read the corresponding entity's angular velocity data in future simulation steps. We could either open a new PR for this, or add it to this one if this change seems like something worthwhile.
Checklist

[ ] Signed all commits for DCO
[ ] Added tests
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[ ] codecheck passed (See contributing)
[ ] All tests passed (See test coverage)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge

If the user wants the LinearVelocity of a link, shouldn't they create the component themselves? I say this because there are various components that are not created by default and the pattern we've been following so far is to expect users to create the components they need.

If the user wants the LinearVelocity of a link, shouldn't they create the component themselves?

I'm not opposed to this, but if we expect the user to create this component themselves, then how can they accurately populate the data for this component? They could set the data of the LinearVelocity component to be the data of the LinearVelocityCmd component, but the actual velocity vs. the commanded velocity will differ slightly due to physics forces, right?

Maybe we don't have this documented very well, but in general, when users want a value like LinearVelocity, they create the component on the entity in the PreUpdate. The physics system will then know to populate the component from the physics engine in
https://github.com/ignitionrobotics/ign-gazebo/blob/0c401c17c1d4b748233c61921c47da5725ce9d5c/src/systems/physics/Physics.cc#L2432-L2563

Maybe we don't have this documented very well, but in general, when users want a value like LinearVelocity, they create the component on the entity in the PreUpdate. The physics system will then know to populate the component from the physics engine

Yeah, I just realized this - see my edit on https://github.com/ignitionrobotics/ign-gazebo/pull/992#issuecomment-905010859. So, should this PR be closed? If so, I can post on #992 that the solution is to create a LinearVelocity component for links of interest.

Maybe we don't have this documented very well, but in general, when users want a value like LinearVelocity, they create the component on the entity in the PreUpdate

For beginners, my recommendation would be to encourage them to use Link::EnableVelocityChecks, which creates the necessary components. But I agree that it's a good idea to document that thee components should be created, for power users.

I guess my only other remark is that it looks like we currently don't have code in the physics system that would take care of updating a model's velocity if a LinearVelocity component was attached to a model. It looks like we have implementation for handling links, sensors and collisions. However, I guess that if a user wanted to know a model's velocity/acceleration/etc., they could just look at the model's canonical link, right?

I agree with not adding LinearVelocity components automatically, building up on what @adlarkin mentioned, I wonder if you think it's a sensible default to assign to a Model the velocity of its canonical link. For reference this was the sample system I created for the issue.
It works once I change the entity from the model's to the canonical link's. I think there is a bit of disconnect since the LinearVelocityCmd can be applied to the model, and when it is the model itself moves, but the model's LinearVelocity component isn't updated and always reads back as zero.
I guess it can be made more coherent in two ways, either make it impossible to apply LinearVelocityCmd to models and force users to only work at the canonical link level, or make sure that when LinearVelocityCmd components are applied to models the model's LinearVelocity component is also updated.
I personally prefer the second since I think defaulting a model's velocity to that of its canonical link is a reasonable assumption, but to be fully honest I never heard of canonical links until a few days ago so I don't know if it makes sense :sweat_smile:

I think there is a bit of disconnect since the LinearVelocityCmd can be applied to the model, and when it is the model itself moves, but the model's LinearVelocity component isn't updated and always reads back as zero.

The reason why this is the current behavior is because in the physics system, we get updated frameData for links that have changed. But yes, I agree that this is confusing :grimacing:

I guess it can be made more coherent in two ways, either make it impossible to apply LinearVelocityCmd to models and force users to only work at the canonical link level, or make sure that when LinearVelocityCmd components are applied to models the model's LinearVelocity component is also updated.

I am not opposed to applying a LinearVelocityCmd to a model and then updating the model's LinearVelocity component if it exists - we'd just need to figure out how to implement this functionality (right now, nothing immediate comes to mind regarding implementation, but perhapsit wouldn't be too hard to implement). For now, I think that using the canonical link should be fine, since I understand the canonical link to serve as a "reference" for the model's velocity, pose, acceleration, etc.
@azeey what do you think about adding functionality for updating LinearVelocityCmd components that are attached to models? Do you envision any challenges with implementing this?

I'm on board with setting LinearVelocityCmd on models and updating the LinearVelocity to reflect the actual velocity of the model frame. However, note that the model frame is not the same as canonical link frame since there can be a transform between the two. For example:
<model name="M">
  <link name="L">
        <pose>1 0 0   0 0 0</pose>
   </link>
</model>

The model frame of M is translated from the canonical link by -1 0 0.
The reason we he haven't implemented updates to the LinearVelocity component of models is because the dartsim plugin of ign-physics does not make the frame data readily available for models because it doesn't implement ModelFrameSemantics. But if we want to do it, we can compute the frame data for the model frame from the frame data of the canonical link in ign-gazebo.


Fixed broadcaster and biometric, security problems

Fixed the issue of Broadcast Receiver and biometric, this was reported used mobsf.
is necesary test to check the notifications.

what are the binary files for?

sorry was autogenerated, is not important, are empthy files, you can ignore this 2 .bin

can you remove/rebase? we don't want binary file in our repo

Done, bin files was deleted

rebase still needed to clean up github history
independently on this I don't understand what security problem this PR fixes. more context would be useful

Rebase completed, this fixed problems that mobsf detect in the apk, one of they are Broadcast Receiver and ctivity (androidx.biometric.DeviceCredentialHandlerActivity) is not Protected. [android:exported=true], this gonna help to improve the score of the app, now we have a Average CVSS Score: 6.4, whit this change, is possible to have a better score.
this is important for the security analisis of the app

This looks pretty stale to me.  Going to close it.


Get schema code

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


Version 0.19.2: examples does not work

with the latest 0.19.2 release the example does not work anymore:
The example output crossposted here
Peeking at the code I got the following working, but I suspect that it will be not the intended new Stipple api because of explicit channel page argument (comments mark the changes):
using Genie, Genie.Renderer.Html, Stipple

#Base.@kwdef mutable struct Name <: ReactiveModel
@reactive mutable struct Name <: ReactiveModel
  name::R{String} = "World!"
end

#model = Stipple.init(Name())
model = Stipple.init(Name)

function ui()
  page(
    vm(model), class="container", [
      h1([
        "Hello "
        span("", @text(:name))
      ])

      p([
        "What is your name? "
        input("", placeholder="Type your name", @bind(:name))
      ])
    ], channel = model.channel__ # the channel assigned to model
  ) |> html
end

route("/", ui)

up()

May you add some insight?
I'm just learning Stipple and I'm quite impressed by its potential.
Many thanks!
Attilio

You're correct, are optimising the API and cannot keep all the examples up to date during that process

@attdona most of the examples are updated to use new API. Please check and let me know if something doesn't work

@AbhimanyuAryan
New user to Stipple here! I have done some work in flexdashboard before though and looking to improve on all of that work by upgrading to Julia. It is a little slow going, but I have seen enough of Julia to know I need to do this for a) satisfaction, and b) continue to progress that work as the Julia packages in the field are growing but the R packages may or may not.
I am trying the first example from the Stipple GitHub page:
using Stipple

@reactive mutable struct Name <: ReactiveModel
  name::R{String} = "World!"
end

function ui(model)
  page( model, class="container", [
      h1([
        "Hello "
        span("", @text(:name))
      ])

      p([
        "What is your name? "
        input("", placeholder="Type your name", @bind(:name))
      ])
    ]
  )
end

route("/") do
  model = Name |> init
  html(ui(model), context = @__MODULE__)
end

up() # or `up(open_browser = true)` to automatically open a browser window/tab when launching the app

And I get the error:

[ Info: Precompiling Stipple [4acbeb90-81a0-11ea-1966-bdaff8155998]
ERROR: LoadError: UndefVarError: @reactive not defined
in expression starting at Untitled-1:4

Was there another package I am supposed to have already added, that I don't have?
Thank you!

Hi @meeheal ,
to me that sounds as if you had an old version of Stipple installed. Please check:
]
pkg> st Stipple

The version should be v0.22.0.
Otherwise, please update
pkg> up Stipple

I got that worked out with
activate
and now up Stipple is doing something it appears! Thanks for your help.

I am providing an update. I had Julia 1.5.3 running when my problems described above occurred. I installed Julia 1.6.6, and while up Stipple still would not upgrade from Stipple 0.15.0 to 0.22.0, as Stipple was already added in the project.toml in the activated working directory in VSCode, when I then tried activate and status showed no packages, I added Stipple with add Stipple and finally, it is the correct version 0.22.0.

I think you are confusing
>pkg activate

and
>pkg activate .

The latter one activates the Project.toml of the directory where you are in.
There was another bug on our side; we had not included the latest Stipple versions in the Project.toml. I just changed that.
So for the future you can do
pkg> activate .
pkg> up

to bring your Stipple packages up to date.


Odometry topic for the track controller system

🎉 New feature
Closes #2016
Requires https://github.com/gazebosim/gz-msgs/pull/352
Summary
This PR adds odometry output to the track controller system, publishing position and instantaneous velocity. That way a conveyor with an encoder and/or resolver for respectively position and velocity feedback can be simulated.
The default topic is /model/<model name>/link/<link name>/odometry.
An alternative can be chosen by specifying the odometry_topic parameter of the plugin in the SDF.
The publication frequency is set through parameter odometry_publish_frequency.
Test it
Run the conveyor demo: gz sim conveyor.sdf
Echo the odometry messages: gz topic -e -t /model/conveyor/link/base_link/odometry

Ok I tried to update this PR to use an odometry message instead of the kinematic state as suggested here, but obviously I must have missed some git wizzardry command as suddenly 55 files are marked as changed.
What I did is the following:

Make my local changes,
Added upstream remote:

git remote add upstream git@github.com:gazebosim/gz-sim.git
git fetch upstream

Commit local changes:

git add examples/worlds/conveyor.sdf
git add src/systems/track_controller/TrackController.cc
git commit -m "Changed to odometry publisher"

Rebase local branch so my changes would be relative to the current state (correct?):

git rebase upstream/gz-sim7

Push changes:

git push --> complains that I should do a git pull first
git pull -->complains I should do git config pull.rebase false or .rebase true or .ff only
git config pull.rebase true
git pull
git push

At that point I didn't check if it already had the "55 files changed", but since the DCO was no OK I did what it said, i.e.:

git rebase HEAD~11 --signoff
git push --force-with-lease origin gz-sim7

And here we are. :-(
What should I have done differently?
How can I configure the DCO by default?
How to proceed, close this PR and submit a new one?
Thanks.

How to proceed, close this PR and submit a new one?

Given below output, I think I should do a git reset --hard HEAD@{25} followed by a git commit -S and git push, or, if that does not resolve it, a git reset --hard HEAD@{29}?
$ git reflog
827def133 (HEAD -> gz-sim7, origin/gz-sim7, origin/HEAD) HEAD@{0}: rebase (finish): returning to refs/heads/gz-sim7
827def133 (HEAD -> gz-sim7, origin/gz-sim7, origin/HEAD) HEAD@{1}: rebase (pick): Changed to odometry publisher
e1615e777 HEAD@{2}: rebase (pick): Support loading mesh by mesh name in <mesh><uri> (#2007)
7c782ff6c HEAD@{3}: rebase (pick): ComponentInspector: display PhysicsEnginePlugin (#2032)
e71af082a HEAD@{4}: rebase (pick): Send BlockOrbit false events only once from TransformControl plugin (#2030)
6dbe4daaa HEAD@{5}: rebase (pick): Categorize tutorials list (#2028)
11823d4a1 HEAD@{6}: rebase (pick): add time out to wait to avoid deadlock (#2025)
421e5b7ea HEAD@{7}: rebase (pick): Add optional binary relocatability (#1968)
e7dc89d75 HEAD@{8}: rebase (pick): Several minor fixes (#2027)
492f5cb5e HEAD@{9}: rebase (pick): Protobuf: Do not require version 3 do support Protobuf 4.23.2 (23.2) (#2006)
c2b918c96 HEAD@{10}: rebase (pick): Changed some formatting.
895ce964c HEAD@{11}: rebase (pick): Added publisher for track position and velocity.
064f69ed7 HEAD@{12}: rebase (start): checkout HEAD~11
d30b922a8 HEAD@{13}: pull (finish): returning to refs/heads/gz-sim7
d30b922a8 HEAD@{14}: pull (pick): Changed to odometry publisher
397e5a9f2 HEAD@{15}: pull (pick): Support loading mesh by mesh name in <mesh><uri> (#2007)
d5b3c8364 HEAD@{16}: pull (pick): ComponentInspector: display PhysicsEnginePlugin (#2032)
fc09e99fb HEAD@{17}: pull (pick): Send BlockOrbit false events only once from TransformControl plugin (#2030)
c4e20d3c2 HEAD@{18}: pull (pick): Categorize tutorials list (#2028)
b5eed54d6 HEAD@{19}: pull (pick): add time out to wait to avoid deadlock (#2025)
53bb5bc1a HEAD@{20}: pull (pick): Add optional binary relocatability (#1968)
02c312008 HEAD@{21}: pull (pick): Several minor fixes (#2027)
8aa45bc3f HEAD@{22}: pull (pick): Protobuf: Do not require version 3 do support Protobuf 4.23.2 (23.2) (#2006)
192d20c94 HEAD@{23}: pull (start): checkout 192d20c946fd5863f177cf8b23f95af974d78e0b
e895c7149 HEAD@{24}: rebase (finish): returning to refs/heads/gz-sim7
e895c7149 HEAD@{25}: rebase (pick): Changed to odometry publisher
a8cf56061 HEAD@{26}: rebase (pick): Changed some formatting.
08237a61a HEAD@{27}: rebase (pick): Added publisher for track position and velocity.
50a99e6c2 (upstream/gz-sim7) HEAD@{28}: rebase (start): checkout upstream/gz-sim7
3464f140d HEAD@{29}: commit: Changed to odometry publisher
192d20c94 HEAD@{30}: rebase (finish): returning to refs/heads/gz-sim7
192d20c94 HEAD@{31}: rebase (pick): Changed some formatting.
028510d46 HEAD@{32}: rebase (pick): Added publisher for track position and velocity.
064f69ed7 HEAD@{33}: rebase (start): checkout HEAD~2
935ae3a3b HEAD@{34}: checkout: moving from gz-sim7 to gz-sim7
935ae3a3b HEAD@{35}: commit: Changed some formatting.
96b1ae4b9 HEAD@{36}: commit: Added publisher for track position and velocity.
064f69ed7 HEAD@{37}: clone: from github.com:jrutgeer/gz-sim.git

How can I configure the DCO by default?

According to this documentation, following command should configure commit signing by default:
git config --global commit.gpgsign true

I think I succeeded in reverting everything and committing only the files I changed including DCO signoff. :-)
Slowly getting there.

Well, I'm generally all in favour of integration tests, but in this case I don't really see what could be a good test:

I could run the example world with different values for <odometry_publish_frequency> and <odometry_topic>, but imo. that would rather be a test for sdf::Element::Get() and validTopic, which are known to work, rather than an actual test for the plugin,
Similarly, I could also run the example world, start the conveyor and see if the position and velocity changes, but that is rather a test of Publisher::Pub(msg) and maybe also of this but that's also rather trivial?

Unless you have a suggestion for a better test?

Similarly, I could also run the example world, start the conveyor and see if the position and velocity changes, but that is rather a test of Publisher::Pub(msg) and maybe also of this but that's also rather trivial?

I'd say a test showing the changes in position and velocity would be good. Might be trivial, but could catch future changes that break behavior.

@azeey I added the test and guess what.. there was a bug. :-) I was publishing velocity instead of limitedVelocity.
So adding the test indeed proved to be valuable.
The test will currently fail if Dart 6.13 is used due to https://github.com/gazebosim/gz-sim/issues/2008. As I am running Dart 6.13 I had to change some signs to get it to run.
The tracked vehicle test also fails on my setup, presumably also due to Dart 6.13. As I could not easily fix it by changing some signs, and as I did not do any changes to the tracked vehicle plugin, I did not look further into this.

@azeey I just noticed the beta tag was removed. I thought I had until code freeze (2023/08/30) to finish this?
Can the tag be added again?

I'll add it back in. The code freeze is when everything must be merged by. Since I didn't see any changes recently, I just assumed you didn't have time to work on it.

Is this ready now? Some checks are not successful but it is not clear to me if this needs further action and if so, which.

There are a few style errors (run make codecheck). The ABI checker is also failing, but I think that's because the branch needs to be synced with gz-sim7. Can you merge from gz-sim7 and fix the style errors?

ignition_gazebo-ci-pr_any-homebrew-amd64 also fails, but "No problems were identified." so I don't know what that means.

This seems like a problem with the machine. We're looking into it.

@azeey So is there still any further action required on my side?

@azeey So is there still any further action required on my side?

No, this just needs an approval from @arjo129.


RuntimeError: cuda runtime error (2) : out of memory

While testing the RGBDiff model using the command
python test_models.py ucf101 RGBDiff /media/sda/nandan/data/ucf101_rgb_val_split_1.txt ucf101_bninception__rgbdiff_checkpoint.pth.tar --arch BNInception --save_scores SCORE_UCF101_1_RGBDIFF --workers=2
I'm getting this error
Traceback (most recent call last):
File "test_models.py", line 130, in
rst = eval_video((i, data, label))
File "test_models.py", line 117, in eval_video
rst = net(input_var).data.cpu().numpy().copy()
File "/home/nandan/anaconda2/lib/python2.7/site-packages/torch/nn/modules/module.py", line 357, in call
result = self.forward(*input, **kwargs)
File "/home/nandan/anaconda2/lib/python2.7/site-packages/torch/nn/parallel/data_parallel.py", line 73, in forward
outputs = self.parallel_apply(replicas, inputs, kwargs)
File "/home/nandan/anaconda2/lib/python2.7/site-packages/torch/nn/parallel/data_parallel.py", line 83, in parallel_apply
return parallel_apply(replicas, inputs, kwargs, self.device_ids[:len(replicas)])
File "/home/nandan/anaconda2/lib/python2.7/site-packages/torch/nn/parallel/parallel_apply.py", line 67, in parallel_apply
raise output
RuntimeError: cuda runtime error (2) : out of memory at /opt/conda/conda-bld/pytorch_1518238409320/work/torch/lib/THC/generic/THCStorage.cu:58
I'm using two K40 GPU with each global memory capacity 4742MiB.

@yjxiong : I found that runtime memory problem can be solved either by reducing --test_crops size or by reducing --test_segments size . My question is which one to prefer ? I mean which one won't affect test accuracy ?

@Nandan532189
Have you solved the "RuntimeError: cuda runtime error (2) : out of memory "?
What's your pytorch version? Thank you!

@yjxiong
Hi   What's your pytorch version of this code?  I set the "workers" as 1 or 2, there will occur an error of "RuntimeError: cuda runtime error (2) : out of memory ", while I set the "workers" as 4, there will occur an error of  "Traceback (most recent call last):
File "test_models.py", line 128, in
rst = eval_video((i, data, label))
File "test_models.py", line 116, in eval_video
rst = net(input_var).data.cpu().numpy().copy()
File "/usr/local/lib/python2.7/dist-packages/torch/nn/modules/module.py", line 224, in call
result = self.forward(*input, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/torch/nn/parallel/data_parallel.py", line 56, in forward
inputs, kwargs = self.scatter(inputs, kwargs, self.device_ids)
File "/usr/local/lib/python2.7/dist-packages/torch/nn/parallel/data_parallel.py", line 67, in scatter
return scatter_kwargs(inputs, kwargs, device_ids, dim=self.dim)
File "/usr/local/lib/python2.7/dist-packages/torch/nn/parallel/scatter_gather.py", line 30, in scatter_kwargs
inputs = scatter(inputs, target_gpus, dim)
File "/usr/local/lib/python2.7/dist-packages/torch/nn/parallel/scatter_gather.py", line 25, in scatter
return scatter_map(inputs)
File "/usr/local/lib/python2.7/dist-packages/torch/nn/parallel/scatter_gather.py", line 18, in scatter_map
return tuple(zip(*map(scatter_map, obj)))
File "/usr/local/lib/python2.7/dist-packages/torch/nn/parallel/scatter_gather.py", line 15, in scatter_map
return Scatter(target_gpus, dim=dim)(obj)
File "/usr/local/lib/python2.7/dist-packages/torch/nn/parallel/_functions.py", line 59, in forward
streams = [_get_stream(device) for device in self.target_gpus]
File "/usr/local/lib/python2.7/dist-packages/torch/nn/parallel/_functions.py", line 85, in _get_stream
if _streams[device] is None:
IndexError: list index out of range".
Do you have some advises?

I have met the same problem. How did you solve it? @Nandan532189

The test_crops is the preferred one. It does not lead to a drastic decrease in accuracy.


⚠ Bofrost.de has degraded performance

In fb34b09, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1018 ms

Resolved: Bofrost.de performance has improved in 6bdbcfa.


package command -path option requires final foreslash

package command -path option requires final foreslash / (in Linux). This is not mentioned anywhere. The expected behaviour is both:

/home/irisowner (without a directory separator in the end)
/home/irisowner/ (with a directory separator in the end)

should work in the identical way.
zpm:IPMTEST1>version

%SYS>     zpm          0.7.3
IPMTEST1> zpm-registry 1.3.2
https://pm.community.intersystems.com - 1.0.6
http://localhost:52773/registry/ - 1.3.2

zpm:IPMTEST1>package -verbose -only -path /home/irisowner osex-ipm-hello

[IPMTEST1|osex-ipm-hello]       Package START
[osex-ipm-hello]        Package FAILURE
ERROR! Error creating directory chain /home/irisownersrc/OSEX/ipm/hello/: <4294967283> Unknown error -13
zpm:IPMTEST1>

This is an easy one, just need to use ##class(%Library.File).NormalizeDirectory.


Add the possibility to remap a key to mouse clicks

Description of the new feature / enhancement
in the Keyboad Manager applet, I would like to remap a physical key to a mouse click (left/right/scroll/etc). It is not possible at the moment.
Scenario when this would be used?
when my keyboard is missing a right click button and i don't want to use my mouse for right clicking
Supporting information
No response

/dup #1475


Flea Market items are severely upcharged

General information:
Project issue is for:
SPT AKI (3.8.0) Bleeding Edge Test
Expected result:
When selling an item, I match the price to the cost on the flea market.
Actual result:
The item is not sold and times out over the period of 10 hours.
I believe that the Flea Market is upcharged significantly on certain items. Namely Armor, Helmets, Rigs and so forth. As a direct result, when you match the prices to sell these items on the Flea, it results in the game viewing your item as significantly overpriced and will refuse to buy it.
How to reproduce:

Obtain a FIR item such as the 6B3TM-01
View the Flea Market and attempt to sell the item at the lowest observable price

Screenshots:

Attachments

server-2024-02-05.log (418 KiB)
LogOutput.log (87 KiB)
image_2024-02-05_161114728.png (1588 KiB)
image.png (1931 KiB)

Originally written by AlfaRenegade

Fixed with: https://dev.sp-tarkov.com/SPT-AKI/Server/commit/b40e41bd3d5231cbb1ed29019d78334237f27056

Originally written by chomp

Player offers were calculating the price of rival armors by just the base item, not including plates/soft inserts. This resulted in the average price being 10x lower than what it should be. Ultimately resulting in the player offer getting a massively reduced sell offer chance.

Originally written by chomp


Exec tachikoma update<PHONE_NUMBER>0031

:hamster::hamster::hamster:   Strategy david
Powered by David Update as a Service - Tachikoma.io Announcement: 2015-06-28 Updated permissions - Tachikoma.io

Coverage remained the same at 86.053% when pulling 98d23d52adbfac5945663b0ca799bc1726617c47 on pazjacket:tachikoma/update-20160327170031 into 8de62600f99b87b4a5b59882a9164b43266b8792 on festivals-tech:master.


Online demo not working

I've tried the online demo in the latest version of Firefox and Chrome on Windows 7 with 32-bit kdb+ running the sorttable.q script, but after refreshing the page, I'm not seeing anything load.
There are a couple errors in the console about missing JS files:

+1 wanted to pitch your table on Thursday and had the same issue. The pitch was fine anyways ;)

Here are the errors in Chrome:

I don't know anything about javascript or web development, so don't know how to fix this, but looks like just some broken links.

currently they are working on the feature/big-refactor branch and removing polymer.

@snackycracky  Ah ok, thanks.  I'll give it another try in a few days then.

we will fix the main branch today, this should be working
On Mon, Nov 30, 2015 at 4:47 AM, Nils Petersohn<EMAIL_ADDRESS>wrote:

currently they are working on the feature/big-refactor branch and removing
polymer.
—
Reply to this email directly or view it on GitHub
https://github.com/openfin/fin-hypergrid/issues/73#issuecomment-160577270
.

this is fixed
On Mon, Nov 30, 2015 at 4:48 AM, joshmyzie2<EMAIL_ADDRESS>wrote:

@snackycracky https://github.com/snackycracky Ah ok, thanks. I'll give
it another try in a few days then.
—
Reply to this email directly or view it on GitHub
https://github.com/openfin/fin-hypergrid/issues/73#issuecomment-160577603
.

@stevewirts Thanks, the main demos are now working.
I just had to change .j.c to .j.k in the q script.  I'm guessing you had defined a custom JSON function?

The name changed between versions of Q I think
On Mon, Nov 30, 2015 at 12:52 PM, joshmyzie2<EMAIL_ADDRESS>wrote:

@stevewirts https://github.com/stevewirts Thanks, the main demos are
now working.
I just had to change .j.c to .j.k in the q script. I'm guessing you had
defined a custom JSON function?
—
Reply to this email directly or view it on GitHub
https://github.com/openfin/fin-hypergrid/issues/73#issuecomment-160705252
.


Incorrect 100% height on iPhone because of status bar

100% height of the window is displayed incorrectly on iPhone, it seems like it's reduced by height of the status bar.

The only hack that I've found that fixes this bug is to add additional 60px to the height of the wrapper on iOS. http://blog.nateps.com/how-to-hide-the-address-bar-in-a-full-screen But it isn't future-friendly at all + this issue gets fixed if you enter fullscreen mode on iOS6 mobile Safari (and if I'm not mistaken there is no reliable way to detect this):

The other hack is using window.innerHeight, but it reduces if user is zoomed in.

Good article, thank you for the information

<EMAIL_ADDRESS>Good article, thank you for the information


Markdown syntax in fenced code blocks

Ghost has a funny bug when intending to showcase markdown code in a fenced code block:
```markdown
![Example Picture](./ExamplePicture.png)
```

gets rewritten to:
```markdown
<section class="js-drop-zone image-uploader"><img class="js-upload-target" src="./ExamplePicture.png"/><div class="description">Add image of <strong>Example Picture</strong></div><input data-url="upload" class="js-fileupload main fileupload" type="file" name="uploadimage"></section>
```

This automatic conversion of the image syntax should of course not happen within code blocks.
Is there actually any current way to get around this problem?

@fladd I don't think so at the moment; however, the editor is undergoing a major overhaul at the moment which should allow better customization of things like this

This is a duplicate of #5039 - you can work around it by using the 4-space indent for code blocks instead of fences.

@acburdine Thanks for the quick answer.
@ErisDS That will work for non-highlighted code, but when using Prism.js, fenced code blocks are needed to indicate the highlighting language.

You can also just use plain-ol HTML :)

@ErisDS Oh yeah, of course! :-) doh


Query/Suggestion: Shiny Dust?

When trying to make enderium is it meant to still require a TE pulverizer to get shiny dust? I'm playing on the Resonant Rise pack with the 1.7.10-<IP_ADDRESS>7 version, so if its just something they've done apologise for wasting time.
Assuming I/they haven't derped (and fearing any use of MineTweaker with a passion) could the recipe for Ferrous in the SAG Mill be changed to give a 10% for shiny instead of the 3rd ferrous dust?
Thanks for the awesome mod. :D

hit U on shiny dust and keep changing pages until you see the sagmill page i think there is a chance of getting it from some ore than that it self

Maybe you have to look for Platinum?

Am 15.01.2015 um 02:35 schrieb 6210classick<EMAIL_ADDRESS>hit U on shiny dust and keep changing pages until you see the sagmill page i think there is a chance of getting it from some ore than that it self
—
Reply to this email directly or view it on GitHub.

https://github.com/SleepyTrousers/EnderIO/blob/master/resources/assets/enderio/config/SAGMillRecipes_Core.xml#L573
@tterrag1098 close?


Update ginkgo and gomega to latest

Update the packages to the very latest versions available now.

Yes, I believe that was the major contributor for that decision.

These packages are actually used for testing only.


Update Tailscale to 1.24.1

Sorry for the happenstantial quick turn around, but the point release fixes a pretty nasty bug in route servers (relay nodes)
https://github.com/tailscale/tailscale/issues/4541

@Oceanswave Hi, It would we awesome if you change it to 1.24.2. cc: @mvisonneau

thank you both for the head's up, I therefore updated it to v1.24.2! 🙇

Hi @mvisonneau, could you please update the helm chart as well?
https://github.com/mvisonneau/helm-charts/tree/main/charts/tailscale-relay

yep, it should not prevent you from upgrading already though:
https://github.com/mvisonneau/helm-charts/blob/main/charts/tailscale-relay/values.yaml#L7
~$ helm upgrade tailscale-relay mvisonneau/tailscale-relay --set image.tag=v1.24.2


Beginners guide

Hi , need  step by step guide for beginners on how to use the tool for intercepting app traffic from an android emulator , a video on the same will be highly appreciated.

We are refactoring and improving the functions and documentation of mediator, please pay attention to our follow-up updates.


Terminal chat: Consider polishing the presentation in the single code block case special/common case

Feedback from @TylerLeonhardt: This looks weird how there's a border around the suggestion, should we polish this to remove padding and the border?

I tried this where the line height of the editor was reduced and border changed to transparent:

I don't think the look is good enough to justify making it inconsistent all other code blocks.


[Core] Add relative modifier

Hey,
thanks for creating the library
I'm suggesting to add a relative modifier to the library, which let's you align tooltips relative to element from another context
The use-case for this is aligning tooltips within iframes or on canvas (where you know the relative coordinates upfront)
Here's the modifier code:
const relative = {
  name: 'relative',
  fn: ({ x, y, element }) => {
    const rect = element.getBoundingClientRect()
    return {
      x: rect.left + x,
      y: rect.top + y
    }
  }
}

without relative modifier
https://user-images.githubusercontent.com/10400064/169694677-a8c88c8e-f263-47f7-9327-d2311df8731d.mov
with relative modifier
https://user-images.githubusercontent.com/10400064/169694680-fa4b3cb5-36ca-4f42-aaa8-bf0064b27a7f.mov
you can already achieve similar functionality by using virtual elements

Is the floating element in the top-level document and it's being positioned to a reference element inside of an iframe?
I suppose #1594 is related?

yep, the tooltip is top-level but the target is inside of iframe
the modifier also works in combination with virtual elements (highlight inside of canvas with relative coordinates)
https://user-images.githubusercontent.com/10400064/169701710-efab6844-6fb4-4099-81af-14be4358f7a0.mov

This kinda seems like something that should just work by default. If the ref element is not inside the same document as the floating element, then we add the iframe's offsets. Unfortunately it does mean extra size cost to the library, but it should also fix #1594.
I'm assuming the reverse is impossible because you can't access a document in a higher-level

The functionality should not be only limited to iframe, but could also apply to virtual elements (such as in my example) where you know the relative position of the element but need to display the element inside of a wrapper div
so the feature should be more generic like a middleware, like i'm proposing, where you give an element (or boundary) as an argument and it adjusts the tooltip position accordingly
the example middleware i provided works for both of these cases
don't think the size is gonna be issue when you package it as optional module/middleware which can be tree-shaked
anyways, let's have a further discussion on that, as the use-case seems to be fairly common

or maybe even add a global boundary option, because right now i have to add the boundary argument each middleware i'm using

Just thought I'd mention that the project I work on had a very similar custom middleware solution for offsetting an iframe to the one shown in the issue description.
A problem I encountered is that custom middleware that provides an offset doesn't seem compatible with floating ui's shift middleware. That seems to expect any offsets to be provided through middleware data:
https://github.com/floating-ui/floating-ui/blob/77c4b27a8096cafe06e58b2c7592317d6d3a3aea/packages/core/src/middleware/shift.ts#L203-L212

@talldan is it enough to disable crossAxis checking in limitShift? If you aren't using crossAxis: true in the main `shift, it's fine

@atomiks I think we need cross axis for our use case.
I've managed to replace our custom middleware with the offset middleware, using the callback to determine the right mainAxis/crossAxis values. It looks a bit like this:
offset( ( { placement } ) => {
	const isTopBottomPlacement = placement.includes( 'top' ) || placement.includes( 'bottom' );

	// The axes here seem to be opposite to what the floating-ui docs
	// state, but this seems to work.
	const mainAxis = isTopBottomPlacement ? 'y' : 'x';
	const crossAxis = mainAxis === 'x' ? 'y' : 'x';

	// When the popover is before the reference, subtract the offset,
	// of the main axis else add it.
	const hasBeforePlacement = placement.includes( 'top' ) || placement.includes( 'left' );
	const mainAxisModifier = hasBeforePlacement ? -1 : 1;

	return {
		mainAxis: frameOffset[ mainAxis ] * mainAxisModifier,
		crossAxis: frameOffset[ crossAxis ],
	};
} )

I was confused that the mainAxis/crossAxis were flipped from what's suggested in the docs, but maybe there's something I'm overlooking or I did something wrong!

The main axis is the same as the docs suggest?
const mainAxis = isTopBottomPlacement ? 'y' : 'x';
mainAxis
Represents the distance (gutter or margin) between the floating element and the reference element.

For top/bottom, this is y.

I see. My mistake is that I didn't realise that some middleware (like flip) has a different definition of main/cross axis. Flip is the definition I saw first and I ran with that. 🤦
I was finding it a bit confusing, but now it makes a lot more sense. Thanks for clarifying.


gen-idea is deprecated. Remove it.

I've been advising against using sbt-idea since at least IntelliJ 13, happy to endorse this. :shipit:

I use gen-idea, sbt plugin hasn't always been working correctly. I don't see a reason to remove it, it's not hurting anything.

i was using gen-idea too due to being distrustful of the intellij plugin

Well, everybody else has switched since we follow warnings.

Related: https://github.com/mpeltonen/sbt-idea/issues/324
If you need gen-idea then add the following to ~/.sbt/0.13/plugins/build.sbt:
addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.5.2")

As documented here.

@wpalmeri @ayakushev99 using sbt-idea to generate IntelliJ project files is presently an antipattern. We don't need it anymore, the Scala plugin since circa IntelliJ 13 has been pretty strong. I can't recall a single problem that I've had in the IntelliJ 14 series plugin.
YMMV. I'd recommend importing a few SBT projects in IntelliJ 14 just to see. I'd be very interested to know if you run into problems.


session caching

There is commenting for saving/loading session but could not find the implementation. Is there an alternative way to save/load the session. I found some some documentation that varied but still did not work.

same problem here - anyone got it working? adding a mfa code all sessions isn't optimal for many applications.

@jgansl  I implemented session caching thusly:
https://github.com/HenryFBP/robinhoodtest/blob/4fec545890c32430f92214216fffeabbba588428/main.py#L26


Bug: cannot login after logging out from url

PHP Version
8.2.27
CodeIgniter4 Version
4.4.1
Shield Version
dev-develop
Which operating systems have you tested for this bug?
Windows, Linux
Which server did you use?
apache
Database
MariaDB
Did you customize Shield?
No
What happened?
Shield now attempts to redirect users to the page they were trying to access before logging in. However, if an unauthenticated user tries to directly access the logout URL (/logout route), it creates a login/logout loop, preventing them from logging in.
Steps to Reproduce

While not logged in, access /logout route.
Now try to logging, you will be redirected to logout page

Expected Output
I think Shield should ignore the logout route, i.e., not redirect the user to this route after login (to avoid this login/logout loop issue).
Anything else?
No response

@bgeneto Thank you for your report, I confirm this issue.
Can you try with the following settings?
    public array $globals = [
        'before' => [
            // 'honeypot',
            // 'csrf',
            // 'invalidchars',
            'session' => ['except' => ['login*', 'register', 'auth/a/*', 'logout']],
        ],
        'after' => [
            'toolbar',
            // 'honeypot',
            // 'secureheaders',
        ],
    ];

@bgeneto Thank you for your report, I confirm this issue.
Can you try with the following settings?
    public array $globals = [
        'before' => [
            // 'honeypot',
            // 'csrf',
            // 'invalidchars',
            'session' => ['except' => ['login*', 'register', 'auth/a/*', 'logout']],
        ],
        'after' => [
            'toolbar',
            // 'honeypot',
            // 'secureheaders',
        ],
    ];

'Logout' was already in my 'force-reset' exceptions. However, not in session exceptions—that was the solution! I believe this should be included in the documentation. Thanks for pointing out.

My 2 cents. Should logout route be accessed not by GET but by POST?

See https://security.stackexchange.com/questions/62769/should-login-and-logout-action-have-csrf-protection

Should logout route be accessed not by GET but by POST?

@paulbalandan  I don't understand what you mean, we don't have route /logout as POST.
CodeIgniter v4.4.1 Command Line Tool - Server Time: 2023-10-20 00:35:22 UTC+00:00

+--------+-------------------------+--------------------+--------------------------------------------------------------------+----------------+---------------+
| Method | Route                   | Name               | Handler                                                            | Before Filters | After Filters |
+--------+-------------------------+--------------------+--------------------------------------------------------------------+----------------+---------------+
| GET    | /                       | »                  | \App\Controllers\Home::index                                       | session        | toolbar       |
| GET    | register                | »                  | \CodeIgniter\Shield\Controllers\RegisterController::registerView   |                | toolbar       |
| GET    | login                   | »                  | \CodeIgniter\Shield\Controllers\LoginController::loginView         |                | toolbar       |
| GET    | login/magic-link        | magic-link         | \CodeIgniter\Shield\Controllers\MagicLinkController::loginView     |                | toolbar       |
| GET    | login/verify-magic-link | verify-magic-link  | \CodeIgniter\Shield\Controllers\MagicLinkController::verify        |                | toolbar       |
| GET    | logout                  | »                  | \CodeIgniter\Shield\Controllers\LoginController::logoutAction      |                | toolbar       |
| GET    | auth/a/show             | auth-action-show   | \CodeIgniter\Shield\Controllers\ActionController::show             |                | toolbar       |
| POST   | register                | »                  | \CodeIgniter\Shield\Controllers\RegisterController::registerAction |                | toolbar       |
| POST   | login                   | »                  | \CodeIgniter\Shield\Controllers\LoginController::loginAction       |                | toolbar       |
| POST   | login/magic-link        | »                  | \CodeIgniter\Shield\Controllers\MagicLinkController::loginAction   |                | toolbar       |
| POST   | auth/a/handle           | auth-action-handle | \CodeIgniter\Shield\Controllers\ActionController::handle           |                | toolbar       |
| POST   | auth/a/verify           | auth-action-verify | \CodeIgniter\Shield\Controllers\ActionController::verify           |                | toolbar       |
+--------+-------------------------+--------------------+--------------------------------------------------------------------+----------------+---------------+

What I mean is currently logout is setup in routes using GET. Should that be POST instead?

I didn't see an example POST used for logout.

The following flow seems good to me.
GET /logout → shows a form to logout
POST /logout → do logout

It seems Laravel uses (used?) the following code:

      Logout

    <form id="logout-form" action="{{ url('/logout') }}" method="POST" style="display: none;">
      {{ csrf_field() }}
    </form>

https://stackoverflow.com/questions/38789965/why-does-laravel-by-default-logout-via-post-as-opposed-to-get

From the same SO article.

GET requests are supposed to be "safe" and shouldn't have any significant side effects. It shouldn't matter, for example, if a precaching feature of a browser followed the link. That should just get some data.
Logging the user out would be a significant side effect, so GET would be inappropriate.

I believe also logout should not be accessed regularly by GET.


[NuGet.org Bug]: Getting too similar name upload error for packages that I own

Impact
I'm unable to use NuGet.org
Describe the bug
I own a series of packages on nuget.org that match up with .NET target framework monikers.

Basic.Reference.Assemblies.Net461
Basic.Reference.Assemblies.Net60
Basic.Reference.Assemblies.Net70
Basic.Reference.Assemblies.Net80
Basic.Reference.Assemblies.NetStandard20

This morning was attempting to release a new package Basic.Reference.Assemblies.Net20. When my action attempted to publish I got the following error:

The uploaded package's id is too similar to the already existing packages:

I doubled checked that I don't have any weird authoring mistakes on my new package (verified in package explorer that it has the ID I was expecting). Yes the difference between existing names is only one character but I already have several versions of the package which have that characteristic.
Tried uploading manually through the gallery and got the same error. When displayed in the gallery though it feels like the error is truncated. The trailing colon makes me think it should be displaying the similar names (maybe I'm off here).

At this point though I'm blocked from moving forward on some work in github.com/dotnet/roslyn because we can't upload these new packages for TFMs we want to test.
Repro Steps
Have to build the package from https://github.com/jaredpar/basic-reference-assemblies and then attempt to upload and it you will see the error.
Expected Behavior
I should be able to upload the new package. Yes it is similar to existing names but I'm the package owner for all those packages with similar names.
Screenshots
No response
Additional Context and logs
No response

Dup of https://github.com/NuGet/NuGetGallery/issues/10133

Thank you for logging this, @jaredpar. We are looking into it and should have an update this week - an initial workaround to get you unblocked.

@jaredpar as a workaround. we have reserved the prefix "Basic.Reference" for your account "jaredpar". Could you please try to upload the package and let us know if you are still facing the issue.

Thank you. That seems to have done the trick. Was able to publish a new release a few minutes ago.

Thank you. I'll close this. And we will track the fix internally.


Ziti dump with path

Fix for the ziti dump issue. Ziti dump files will be generated when the user clicks on the feedback option. ZET requires an extra parameter for the ziti dump command, i.e. the DumpPath where the ziti dumps will be placed.

It seems like it might make sense to rename the target to "release-1.12.x" branch?

does the zip file get placed into the same location too?  @JeremyTellier is it easy enough to prompt for the location to put the zip file - and then STOP opening an email automatically? i'd really like to close this issue out at the same time - seems like a double word score here: https://github.com/openziti/desktop-edge-win/issues/396

does the zip file get placed into the same location too?

Yes, the zip file will get placed in the same location

It seems like it might make sense to rename the target to "release-1.12.x" branch?

I renamed the base branch to release-1.12.x


Can't republish the hosted service MinorityPopMonterey_WFL

I was testing the publishing of the service definition files stored in portal for the hosted services and encountered an error while publishing the service definition item id 1713a43f75e246208a7acf6f617959fc to a test 10.4.1 portal. Not sure what the issue is at this point. Be aware that this service may have to be manually published to the UC servers.
    Job ID:          j16e235f66710451787c2782b163d6f8e

ERROR   Job Status:      failed
Job Message:     ERROR 001369: Failed to create the service. Failed to execute (PublishServiceDefinition).  Failed to execute (Publish Portal Service). Failed.
Serice URL:      https://server/ags/rest/services/Hosted/MinorityPopMonterey_WFL/FeatureServer
Serice Type:     Feature Service

@Dbarnes1 I can't find the hosted service "MinorityPopMonterey_WFL" that's associated with this service definition item (1713a43f75e246208a7acf6f617959fc). If this service no longer exists, please delete the service definition portal item. I will then verify and close this issue. Thank you.

Service definition item 1713a43f75e246208a7acf6f617959fc was deleted. I'm closing this issue.


feat: Ability to configure cache folder

Summary/ Motivation (TLDR;)
Now possible to specify cache folder by either

using preview.debug({cacheFolder: 'your-cache-folder'})
automatically with the auto preview feature.

Related issues

https://github.com/nvh95/jest-preview/issues/301)
https://github.com/nvh95/jest-preview/issues/126

Features

Specify cache folder for the debug function
Specify cache folder for the jestPreviewConfigure

Fixes

Running single tests with IDE such as WebStorm/IntelliJ and having the html output being stored at one place instead of relative to the closest jest config it can find.

Chores

I ran prettier + eslint and it fixed files outside this PR scope

Usage
Take a look at examples/nextjs-nx/apps/app/jest.config.js, examples/nextjs-nx/apps/app/jest.setup.ts and ``examples/nextjs-nx/apps/app/specs/index.spec.tsx`.
Basically:
For auto-preview
jestPreviewConfigure({
  autoPreview: true,
  cacheFolder: 'path-to-custom-cache-folder',
});

Using debug
// it is best to create a utility file so we do not have to specify it each time we import `debug`

import preview from "jest-preview";

export const debug = () => {
  preview.debug({cacheFolder: 'path-to-custom-cache-folder'});
};

Main branch seems to break also on Jest Preview Ecosystem CI / build, not sure how to resolve


fix: prevent undefined model given to @Ref/@CollectionOf decorators

Closes:  #1896

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

v6.114.9
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 7.0.0-beta.13 :tada:
The release is available on:

v7.0.0-beta.13
GitHub release

Your semantic-release bot :package::rocket:


Support :each_as option for specifying part class for array members

Our standard decorator handles arrays of objects in a special way, decorating each member of the array as well as the array itself. Given we support specifying an as: option on exposures to provide a custom part class, we should also support providing a custom part class for array members. This PR implements this using the each_as: option.
This feels like the last thing we need before we can release the decorator and parts feature.

I wonder if :as could work with both single objects and collections?

@solnic Good question. It would be nice if we could keep this as one option.
I guess one simple thing we could do is use the as:-specified class directly for array members, and not support custom part classes for arrays in our default decorator.
A more complex, but more encompassing, argument structure might be something like this?
expose :articles as: {CustomArrayPartClass => CustomMemberPartClass}

What do you think? Any other ideas?

I think I'll implement what I've just suggested here, along with the following behavioural change: if a simple as: SomeClass is provided for an array-like exposure, then that part class will be used to wrap the array members, not the array itself.

@timriley sounds good


Expose steal and iowait time on uv_cpu_info_t

Per https://github.com/nodejs/node/issues/22691#issuecomment-418459155 it would be great if libuv could expose the steal and iowait times for each CPU. These values are very relevant on virtual machines to monitor the execution environment.

Currently, these values seem to be consciously ignored:
https://github.com/libuv/libuv/blob/e4087dedf837f415056a45a838f639a3d9dc3ced/src/unix/linux-core.c#L779-L780
Is there a particular reason for that?


Automated cherry pick of #1238: secgroup-list remove rules

Cherry pick of #1238 on release/2.10.0.
#1238: secgroup-list remove rules

Codecov Report

:exclamation: No coverage uploaded for pull request base (release/2.10.0@1f4603b). Click here to learn what that means.
The diff coverage is 0%.

@@               Coverage Diff                @@
##             release/2.10.0   #1239   +/-   ##
================================================
  Coverage                  ?   7.95%
================================================
  Files                     ?     367
  Lines                     ?   57321
  Branches                  ?       0
================================================
  Hits                      ?    4560
  Misses                    ?   52363
  Partials                  ?     398

Flag
Coverage Δ

#aFlag
7.95% <0%> (?)

Impacted Files
Coverage Δ

pkg/compute/models/secgroups.go
2.6% <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 1f4603b...07b5ef6. Read the comment docs.

/lgtm
/approve


Fix typo

Change-Id: I4f2c4aa8da3214933b82785254531e2367469b99

Can we fix another typo in this PR?
Double "the" in the comment line.
https://github.com/googleads/google-ads-java/blob/master/google-ads-examples/src/main/java/com/google/ads/googleads/examples/advancedoperations/AddBiddingDataExclusion.java#L132

Can we fix another typo in this PR?
Double "the" in the comment line.

Done


build-script: Disable llvm module builds when asan is enabled

Apparently some sanitizer flags aren't properly encoded in module
hashes. This leads to a crash in the frontend.
rdar://problem/28356072

@swift-ci Please smoke test


Request middleware

Hello, recently I've tried to write request interceptor that will check user token and forbid access if token incorrect, but I didn't find the method that will stop further checks and return answer to user with error. I suggest to add middleware field in config object that will be a function which one can stop further checks and return answer to user.

Hello, thanks for your feedback, you can complete this task this way
const mockServerConfig: MockServerConfig = {
  interceptors: {
    response: (data, { request, setStatusCode }) => {
      const { token } = request.headers;

      if (!token) {
        setStatusCode(401);
        return { success: false };
      }

      return data;
    }
  },
  rest: {
    baseUrl: '/api',
    configs: [
      {
        method: 'post',
        path: '/signin',
...

But we must take into account that this interceptor will only work for existing requests, because we need to find a config for this.

@nothugofsea another option is to create a server using createMockServer and add middleware to it. This server is a regular express server
const mockServerConfig: MockServerConfig = {...}

const server = createMockServer(mockServerConfig);
server.use((req, res, next) => {
  // your logic
  next();
});

Thank you for answer!


InfluxDB Write Performance

Problem Statement:
I am having trouble getting InfluxDB to keeping up with my write requests.
Problem Experienced Detail:
I seem to be missing subsequent requests for the next 3-5 minutes as the 1st request "catches up" - I assume the DB is locking out later requests until it finishes with the first work loads
The Grafana dashboard looks like an electrocardiograph with peaks every 5 minutes
Hardware:
RHEL7 EC2: m4.2xl with 8 vCPUs & 32 GB Ram
EBS: io1 - 2TB - IOPS = 20,000 (x2)
InfluxDB:
version 1.2.4
Data:
15k-20k records a minute
Records are 3 fields + 3 tags
Attempts:
I can write 1 by 1 or 2000-4000 records at a time
I have tried writing http & python influxdb
I can write these records with "204 success", showing up in my parsed log of several days running, 99.93% of the time - the server seems to keep up more often than not
I have a Grafana dash and I can literally watch the volume bars "grow" as the database catches up
Remedies:
I tried adding a UDP (mounted on a different device) but still see slow catch-up
I tried upping the IO buffer per docs: https://docs.influxdata.com/influxdb/v0.9/write_protocols/udp/
Any help would be greatly appreciated!

I have the same issue.
Help please to resolve it

I've ran into this problem in the past with UDP just dropping data. The biggest problem is that since it's UDP, you don't know when something bad happens. I've found it's more performant and 100% reliable to just use batched http requests.
https://docs.influxdata.com/influxdb/v1.3/guides/writing_data/#writing-multiple-points


Adds mslib tests

I've added an mslib test for the getLatestSpoilers function, becaues the getCardsBySet function is a dead function that isn't used anywhere.
It doesn't really look like there's anything else to test for the getLatestSpoilers function, so the test is pretty barebones - tell me if you see any other cases you think should be added!

Nevermind, going in a different direction!


'new' expression, whose target lacks a construct signature, implicitly has an 'any' type.

version: "vuex-persistedstate": "^3.0.1"
From a README:
const dataState = new createPersistedState({
  paths: ['data']
})

but this causes an error in TS: 'new' expression, whose target lacks a construct signature, implicitly has an 'any' type.ts(7009)

This is an error in the README; you can create a plugin instance through createPersistedState().

@robinvdvleuten would you fix it, so others won't face this issue?

@webcoderkz it is already fixed in the README 👍


A bug or a special case about Graph Explainer?

🐛 Bug

To Reproducebi
When I use  Graph explainer to analyze the interpretability of my GAT model,In the process of training the model after random masking of edges and features，an error of unequal size occurred in the position of the following code.
      if self.__explain__:
             edge_mask = self.__edge_mask__.sigmoid()
             # Some ops add self-loops to `edge_index`. We need to do the
             # same for `edge_mask` (but do not train those).
             if out.size(self.node_dim) != edge_mask.size(0):
                 loop = edge_mask.new_ones(size[0])
                 edge_mask = torch.cat([edge_mask, loop], dim=0)
             assert out.size(self.node_dim) == edge_mask.size(0)

BUG  causes：
1.As shown in the code below,in the process of obtaining high-dimensional edge features in GATconv，it will remove some self-loop edge(remove_self_loops),then add self-loop to all nodes.
       if self.add_self_loops:
            if isinstance(edge_index, Tensor):
                num_nodes = x_l.size(0)
                if x_r is not None:
                    num_nodes = min(num_nodes, x_r.size(0))
                if size is not None:
                    num_nodes = min(size[0], size[1])
                edge_index, _ = remove_self_loops(edge_index)
                edge_index, _ = add_self_loops(edge_index, num_nodes=num_nodes)

2.However, in the code that generates edge_mask in the Graph Explainer . The size of edge_mask comes from the size of the edge_index (original edge).As below：
    def __set_masks__(self, x, edge_index, init="normal"):
        (N, F), E = x.size(), edge_index.size(1)

        std = 0.1
        self.node_feat_mask = torch.nn.Parameter(torch.randn(F) * 0.1)

        std = torch.nn.init.calculate_gain('relu') * sqrt(2.0 / (2 * N))
        self.edge_mask = torch.nn.Parameter(torch.randn(E) * std)

        for module in self.model.modules():
            if isinstance(module, MessagePassing):
                module.__explain__ = True
                module.__edge_mask__ = self.edge_mask

So here is the bug  cause，if there are some self-loop nodes in the original data, the original self-loop node will be removed in the high-dimensional space, and the edge_mask generation process will not, which will eventually lead to a bug of inconsistent size.

Environment

OS:Window
Python version:3.7
PyTorch version:1.8.1

Additional context
The way to eliminate this bug is to delete the self-loop node in original data.So is it a bug, or the self-loop nodes in the graph need to be deleted by default ???

Thanks for this issue. There are indeed some GNN ops that add self-loops to the graph (e.g., GAT or GCN), and the GNNExplainer tries to avoid this issue by also adding self-loops to the graph. However, it will not remove any pre-existing self-loops. I fixed this issue in master. Alternatively, please feel free to simply remove the self-loops in advance.


istanbul is not reporting coverage for functions that are covered by tests.

Markdown should have a much higher coverage in the reports. It shows no coverage for functions that have tests that are passing.

#43


WIP: Add a playback button to the notebook 3d backend

This PR adds a set of ipywidgets buttons for playback. Here how it looks like:

https://user-images.githubusercontent.com/18143289/104440125-3fdd8380-5592-11eb-8fb6-625dbfd5538e.mp4
Known issue
Does not depend on playback_speed but on the widget's interval value.

I also tried backgroundjobsfrom https://github.com/mne-tools/mne-python/issues/8704#issuecomment-756124875 without success so far. I'll give it a try again later this afternoon.

It's an item of #8704.

Does not depend on playback_speed but on the widget's interval value.

It seems like you should only set "interval" to get the right refresh rate (e.g., 1/60 or 1/30), and the callback should be responsible for picking the correct time points. It seems like this should be the same for the Qt and IPywidgets backends actually -- and then as long as the callback tracks/knows 1) when the last frame was rendered (or if it's the first frame), 2) what the desired time dilation is, and 3) what the current time is (time.time()) and from this can calculate what time index/value it needs to change to, no? Such code would also adapt properly if we tried to get a framerate of 60 Hz but it renders at something slower or variable, which is nice.

Does not depend on playback_speed but on the widget's interval value.

It seems like you should only set "interval" to get the right refresh rate (e.g., 1/60 or 1/30), and the callback should be responsible for picking the correct time points. It seems like this should be the same for the Qt and IPywidgets backends actually -- and then as long as the callback tracks/knows 1) when the last frame was rendered (or if it's the first frame), 2) what the desired time dilation is, and 3) what the current time is (time.time()) and from this can calculate what time index/value it needs to change to, no? Such code would also adapt properly if we tried to get a framerate of 60 Hz but it renders at something slower or variable, which is nice.

 All this code is in _play() and _advance():
https://github.com/mne-tools/mne-python/blob/fb22fa6ae491cde442ff3f4ad2f51f86f1f1c589/mne/viz/_brain/_brain.py#L778-L802

Oh you're right! All this code is in _play() and _advance():
https://github.com/mne-tools/mne-python/blob/fb22fa6ae491cde442ff3f4ad2f51f86f1f1c589/mne/viz/_brain/_brain.py#L778-L802

The Play widget is limited to a range of int values. I increased the number of frames depending on the playback_speed but it won't be as smooth as the qt version since it does not reuse _advance() to synchronize the frame rate. Instead, it's a fixed to self.refresh_rate_ms.

The Play widget is limited to a range of int values. I increased the number of frames depending on the playback_speed but it won't be as smooth as the qt version since it does not reuse _advance() to synchronize the frame rate. Instead, it's a fixed to self.refresh_rate_ms.

 FWIW on my local Ubuntu-based 3.9 after pip installing the Jupyter widgets I needed to enable them:
jupyter-nbextension enable ipycanvas --py --user
jupyter nbextension enable ipyevents --py --user

Onto the minor issues:

when clicking a time point there is a quick hop back to the old one before it continues on from the old one (and this does not happen with the standard Python plotting):

Not a dealbreaker but if it's easy to fix we might as well.

Changing the playback speed slider changes the time index even when no playback is ocurring

Playback speed does not seem correct. The data is 0.25 sec so with speed == 0.1 playback should happen in 2.5 sec. Top is the HTML which goes maybe half as fast as it should, and bottom is the Qt/Python version which goes at the right speed:

I suspect this has to do with relying somehow on the refresh rate (which probably does not actually get met by this backend) as opposed to making use of time.time()-based index selection.

Works great! FWIW on my local Ubuntu-based 3.9 after pip installing the Jupyter widgets I needed to enable them:
jupyter-nbextension enable ipycanvas --py --user
jupyter nbextension enable ipyevents --py --user

Onto the minor issues:

when clicking a time point there is a quick hop back to the old one before it continues on from the old one (and this does not happen with the standard Python plotting):

Not a dealbreaker but if it's easy to fix we might as well.

Changing the playback speed slider changes the time index even when no playback is ocurring

Playback speed does not seem correct. The data is 0.25 sec so with speed == 0.1 playback should happen in 2.5 sec. Top is the HTML which goes maybe half as fast as it should, and bottom is the Qt/Python version which goes at the right speed:

I suspect this has to do with relying somehow on the refresh rate (which probably does not actually get met by this backend) as opposed to making use of time.time()-based index selection.

One nitpick from the peanut gallery:  "toggle visibility" I think would be more clear if it said "toggle controls".  Otherwise this is looking really nice.

One nitpick from the peanut gallery:  "toggle visibility" I think would be more clear if it said "toggle controls".  Otherwise this is looking really nice.

This PR requires quite the update. I think the challenge now changed to finding a GUI-agnostic way (Qt/ipywdiget) to playback.

I think the challenge now changed to finding a GUI-agnostic way (Qt/Ipywidget) to playback.

Instead of making it agnostic I'd use our GUI abstraction layer to deal with the differences, and use a Qt timer and ipywidget object (Play?) as necessary in those backends

The test fails because Play is stored as an action but is technically not a Button.

Since I return it as a _Widget anyway, I think it's reasonable to remove it from the list of actions.

And this is how it looks when integrated in the toolbar:

I chose the simplest implementation which is to connect the playback buttons to the time slider bidirectionally.
The known issues:

When the slider reaches the right end, the layout does not fit the dock (but I don't think it's related to this PR)

The timeout is fixed (interval=500) so it's not realtime like the Qt solution
The timesteps are fixed too (step=1). For this one, I tried implementing something similar to QFloatSlider and use a similar precision of 10000 but I could not manage to connect the slider in this case (or any callback actually).

In my experiments, the bidirectional connection was not reliable. For example, using the payback to start, changing the slider and coming back to the plackback, it will start from the old position.
I can mitigate by duplicating jsdlink():
        jsdlink((play, 'value'), (slider, 'value'))
        jsdlink((slider, 'value'), (play, 'value'))

But it brings lag when the slider is dragged.

TL;DR: The realtime approach may not be possible considering the current limitations so I think the approach based on jsdlink is good enough. What do you think @larsoner, @agramfort ?
I took the time to fix 3) and the solution explained in https://github.com/jupyter-widgets/ipywidgets/issues/1775 really helped. I shared the prototype in be61d64 for reference but I ended up reverting because I am not satisfied with the overall experience. The number of calls to set_time_point increases but the ViewInteractiveWidget just cannot keep up with the updates anyway causing a visible 'lag' (and I tested locally so it might be unusable with a remote connection).

Some ability to play back is better than none, even if it's effectively a slideshow and the speed slider doesn't really reflect an accurate time dilation. We can always work on improving it later I guess. So if you're happy with how it works now @GuillaumeFavelier let me know and I'll look, test, and merge

You can have a look @larsoner, I'm ready for reviews.

Thanks @GuillaumeFavelier !


[PRCI] Improve readbility of demand responses in status view

Make view field wider so more responses can fit in one line. For transparency.retention responses, define a translation to more human friendly form, as is done in other parts of the components. Eventually will want to do this for all response types.

New Version


Update dependencies to fix CVEs

What this PR does / why we need it:
Update dependencies and add docs for the new version.
Which issue(s) this PR fixes

Fixes #1875

@JamesBurchell, thanks for the PR.
Could you kindly add info about what CVEs are fixed with the PR? See https://github.com/vmware-tanzu/sonobuoy/pull/1853 for an example.


feat: patch cas-schedule-active configmap instead of replacing

Hello!
I got a problem with current version, which force replaces cas-schedule-active configmap, cause I've deployed chart using argo cd. While configmap changes are configured to be ignored by argocd, force replacing (delete/create) forces argocd to sync originally deployed configmap, which overrides the configmap cronjob wants to create.
I got this script working fine with bitnami/kubectl:1.30 image, jq is missing from ghcr.io/codecentric/cluster-overprovisioner-helper:latest
yq in ghcr.io/codecentric/cluster-overprovisioner-helper:latest is acting weird giving me error for some reason, didn't bothered to investigate why, but this should do the same with yq, at least that works locally:
kubectl get cm "cas-schedule-{{- $schedule.name }}" -n "{{ $namespace }}" -o yaml | yq e '.data' - > /tmp/source_data.yaml
kubectl get cm "cas-schedule-active" -n "{{ $namespace }}" -o yaml | yq e '.data = load("/tmp/source_data.yaml")' - | kubectl apply -f -

Thanks!

ping @grieshaber

ping @grieshaber


UI styling

Currently using picocss with some theme, but will need to align with the current NPT site

Or we could switch the styling of the current site. Maybe one for Angus at some point, e.g. next tech catch up in a couple of weeks.

Closing in favor of #34


Why do supported_... methods return Option ?

I frequently find my self writing something like
device.supported_keys().unwrap_or(&AttributeSet::new())

which is kind of wired, because supported_... returns a collection so why does it return None if the collection is empty?
Even if I get the Some(&AttributeSetRef) variant no one guarantees me that the AttributeSet contains elements. So my code needs to handle the case where the AttributeSet is empty anyway. That leads me to the pattern from above.
From a user perspective, I can not think of any reason why I would ever do something with the None Variant. If I want to know if a device supports keys I would just call supported_events().

It's trying to be a transparent interface to the underlying system calls. I don't know of any devices for which this is true, but it's theoretically possible for eviocgbit_type to report that a device supports keys, but for eviocgbit_key to return an empty set.
If you want to collapse the two cases without checking supported_events and unwrapping supported_key, turning the Option into an iterator and then flattening will do what you want without having to create a new AttributeSet: .into_iter().flat_map(AttributeSetRef::iter)

Another thing we could do to make it slightly less annoying is impl Default for &AttributeSetRef (delegating to creating an empty BitSlice), so that it's just device.supported_keys().unwrap_or_default()


Mark some deprecated-import fixes as unsafe

Summary
Checked each import to see if its replacement is the same as the original. If the objects were different, marked the fix as unsafe.
Closes #7436.
Test Plan
cargo test

@tjkuson - What was the methodology for determining whether the imports were the same, or changed?

It may be challenging but... I feel like these could still be considered safe if the usages are exclusively in typing contexts / type annotations. What do you think?

It may be challenging but... I feel like these could still be considered safe if the usages are exclusively in typing contexts / type annotations. What do you think?

As in making Ruff determine if an import is being used for typing only? There's already logic that checks if an import only used for typing, right? If so, it shouldn't be too difficult, unless I am missing something…

@AlexWaygood are you interested in taking over review of this?

@AlexWaygood are you interested in taking over review of this?

Sure, I'll take a look tomorrow

I think I'm going to close this. I appreciate the work (thank you as always) and it's a reasonable proposal but ultimately I think it adds more overhead to the maintenance of the rule and to users than is worthwhile. If we see a real issue in practice from marking these as safe, I will of course revisit.


EV charger won't change Current.

This form is for reporting bugs.  If you have encountered a bug, you should
generally have some log messages or device diagnostics to show something is
going wrong.  If your problem is more of a question or a request for help,
then Discussions is
probably a more suitable venue.
Describe the bug
The device wont accept change of "set charging current"
To Reproduce
Steps to reproduce the behavior including the device the issue was observed with:
Once device is added it wont change the current. It will change according to a change in the Smart Life app, but will not change in Home Assistant.
Expected behavior
If the charger is set to 10A, and i want to set it to 8A, it sets it at 8A but changes back to 10A again. It never changes in real life, only when its changed in the Tuya IoT Platform or in the Smart Life app
Additional context
Add any other context about the problem here.
If the bug involves a device, then please include device diagnostics from
Settings / Devices & Services / Tuya Local (your device) / "1 device"
No messages in log when changing Set Charge Current.
tuya_local-1d044c51e5b616659a606441dfc9e5df-EV charger-f84d367d8884cea7bff1060a215c832b.json.txt
Tuya IoT Standard Status Set.txt
Please check if there are messages from Tuya Local in the Home
Assistant log (Settings / System / Logs), and include those too.

No device logs in Tuya IoT indicating Home Assistant is trying to change charging speed.
If applicable, add screenshots to help explain your problem.
Screen recording on phone: https://youtu.be/4VBJ8QNqlUk

I think this issue requires debug logs to figure out what is going on.  You can enable debugging in the device settings, when you disable it again, the log will be automatically downloaded.  You may wish to review and filter the log before attaching, as it will be the complete log from when you last restarted HA (I will only need the tuya-local related lines, and only for the period that debugging was enabled).

@make-all Thank you for reviewing. I've included the log here: https://github.com/make-all/tuya-local/files/13637677/tuya_local-1d044c51e5b616659a606441dfc9e5df-EV.charger-f84d367d8884cea7bff1060a215c832b.json.txt
However - there is no entry regarding changing charge current, when debug is enabled, charge current is set (multiple times) debug is disabled and downloaded.

This is the diagnostics, which is just a snapshot of the current state of the dps.  I need the debug log, that will show the flow of setting the charge current and then the communication back from the device.


TODO@Joh

Issue created from code comment with imdone.io

TODO @Alex TODO@Joh id:63
src/vs/editor/contrib/referenceSearch/browser/referencesController.ts:228
@imdone - Efficiently manage your project's technical debt. imdone.io

Issue closed by removing a comment.

TODO @Alex TODO@Joh id:63 gh:68
src/vs/editor/contrib/referenceSearch/browser/referencesController.ts:228
@imdone - Efficiently manage your project's technical debt. imdone.io


Add typedoc commands back after typedoc releases a version with security fixes

Due to https://github.com/TypeStrong/typedoc/issues/1009 npm audit reports an error and fails the master CI build.
typedoc commands are removed temporarily in https://github.com/jeremymeng/azure-sdk-for-js/commit/2dfc9a3e2aa8ef1e9257eea131809a7a425570d5.  This is to track the work to revert that change.

Closing this since cosmos V2 doesn't exist in this repo anymore.


Remove GPL license from manageiq-providers-amazon gem

This is a follow up to https://github.com/ManageIQ/manageiq/pull/7481
@richardfontana @chessbyte Please review

I'm intentionally not doing [skip ci] because I changed the gemspec, so I want to just verify that nothing is broken.


Fixes Webview reload Flickering

Fixes #19351
Bug
When refreshing a webview, a slight flicker can sometime be seen. This is especially noticable when using the markdown preview.
Fix
Instead of replacing the content of the iframe for refresh, create a new iframe with the new content and do a swap to update.

Here's vscode 1.8:

And after this change:

There's still a little jitter when creating new line elements (because we scroll to make sure they are fully in view), but no more flickering.