SSL documentation improvements

Minor documentation touch-up to add missing kubectl create option and synchronise secret objects spread-around in the documentation.

This change is

committed code with the company e-mail address instead of the individual


Android 9 don't work

HI! i' have a phonegap application and for android-targetSdkVersion 27 works well.
For android-targetSdkVersion 28 crash with background plugin. I put permissions in my config.xlm   and dosen't work. Any someone have a solution?
config.xlm Head:
`

 <platform name="android">
         <edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application">
             <application android:usesCleartextTraffic="true" />

         </edit-config>

 </platform>

 <platform name="android">
         <edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application">
             <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

         </edit-config>

 </platform>`

This plugin doesn't update anymore. https://bitbucket.org/TheBosZ/cordova-plugin-run-in-background/src/master/ this fork works on android 9.

What is the change compared to this version?

@JohannesPertl  @ThorvaldAagaard it should work properly if this used in your tests:
cordova.plugins.backgroundMode.on('activate', function() {
   cordova.plugins.backgroundMode.disableWebViewOptimizations();
});


Cannot change guard mode

Since I update home assistant I think, I can’t change guard mode. Nothing is happening when I edit it.
Homebase version   <IP_ADDRESS>h
Core 2024.3.3
Supervisor 2024.03.0
Operating System 12.1
UI  20240307.0
Eufy 8.0.1
Homebase 2

I didn't find anything in the logs

Today, I have some informations in logs files :
`Enregistreur: homeassistant
Source: custom_components/eufy_security/eufy_security_api/web_socket_client.py:63
intégration: Eufy Security (documentation, problèmes)
S'est produit pour la première fois: 12:54:29 (1 occurrences)
Dernier enregistrement: 12:54:29
Error doing job: Exception in callback WebSocketClient._on_close(>)
Traceback (most recent call last):
File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run
self._context.run(self._callback, *self._args)
File "/config/custom_components/eufy_security/eufy_security_api/web_socket_client.py", line 81, in _on_close
self.close_callback(future)
File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 317, in _on_close
_LOGGER.debug(f"on_close - executed - {future} = {future.exception()}")
^^^^^^^^^^^^^^^^^^
File "/config/custom_components/eufy_security/eufy_security_api/web_socket_client.py", line 63, in _process_messages
async for msg in self.socket:
File "/usr/local/lib/python3.12/site-packages/aiohttp/client_ws.py", line 312, in anext
msg = await self.receive()
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiohttp/client_ws.py", line 244, in receive
msg = await self._reader.read()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiohttp/streams.py", line 663, in read
return await super().read()
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiohttp/streams.py", line 622, in read
await self._waiter
asyncio.exceptions.CancelledError`

It's ok, I had to update eufy security ws.

I appear to be having the same issue--
eufy-security-ws is at <IP_ADDRESS> on my system, is there a newer update I need to get?

Mine was doing the same. I only needed to restart the eufy-security-ws addon to get it working again.

Hi, I'm having the same issue today. If I change the status on Eufy app it's updated in Home Assistant, but I can't change it from Home Assistant. I have tried to restart eufy security ws docker container.

when you can't change the guard mode, is the "Connected" sensor "On" or "Off" for that particular camera? You probably need to enable it under "Diagnostic" if you have not already done so.

Hi, I'm having the same issue today. If I change the status on Eufy app it's updated in Home Assistant, but I can't change it from Home Assistant. I have tried to restart eufy security ws docker container.

when you can't change the guard mode, is the "Connected" sensor "On" or "Off" for that particular camera? You probably need to enable it under "Diagnostic" if you have not already done so.

In my case it’s the base and not the camera. The Connected sensor is On.

In my case it’s the base and not the camera. The Connected sensor is On.

If you are referring to the base then I can't change its mode as well.

I also can’t set the Homebase Guard Mode. I haven’t tried to before, so don’t know if it worked previously or not. It reports correctly when set from the Eufy app but cannot be changed in HA.
Homebase version <IP_ADDRESS>h
Homebase 2
Eufy Security 8.0.2
Core 2024.5.3
Supervisor 2024.05.1
Operating System 12.3
Frontend 20240501.1

Today, I have some informations in logs files :
`Enregistreur: homeassistant Source: custom_components/eufy_security/eufy_security_api/web_socket_client.py:63 intégration: Eufy Security (documentation, problèmes) S'est produit pour la première fois: 12:54:29 (1 occurrences) Dernier enregistrement: 12:54:29
Error doing job: Exception in callback WebSocketClient._on_close(>) Traceback (most recent call last): File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run self._context.run(self._callback, *self._args) File "/config/custom_components/eufy_security/eufy_security_api/web_socket_client.py", line 81, in _on_close self.close_callback(future) File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 317, in _on_close _LOGGER.debug(f"on_close - executed - {future} = {future.exception()}") ^^^^^^^^^^^^^^^^^^ File "/config/custom_components/eufy_security/eufy_security_api/web_socket_client.py", line 63, in _process_messages async for msg in self.socket: File "/usr/local/lib/python3.12/site-packages/aiohttp/client_ws.py", line 312, in anext msg = await self.receive() ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/aiohttp/client_ws.py", line 244, in receive msg = await self._reader.read() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/aiohttp/streams.py", line 663, in read return await super().read() ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/aiohttp/streams.py", line 622, in read await self._waiter asyncio.exceptions.CancelledError`

I have the same logs here, anyone any idea how to solve this?

I also can’t set the Homebase Guard Mode. I haven’t tried to before, so don’t know if it worked previously or not. It reports correctly when set from the Eufy app but cannot be changed in HA.
Homebase version <IP_ADDRESS>h Homebase 2 Eufy Security 8.0.2 Core 2024.5.3 Supervisor 2024.05.1 Operating System 12.3 Frontend 20240501.1

Same problem here, but it worked fine until more or less 4 weeks ago. Then suddenly as you described.
No solution so far?

I am also facing this issue, which is a real shame. Sometimes it works perfectly. Other times it does not.
It's like it can read the state from the Base Station fine as the Base Station widget on my dashboard reflects what I do in the Eufy app. But, if you change the Arm mode of the Base Station from within Home Assistant it does not work. Randomly it starts working again after a while but then it will fail later again.
My logs are the exact same as the ones shared in this thread.
Anyone have an update or anything I can try?

I am also facing this issue, which is a real shame. Sometimes it works perfectly. Other times it does not.
It's like it can read the state from the Base Station fine as the Base Station widget on my dashboard reflects what I do in the Eufy app. But, if you change the Arm mode of the Base Station from within Home Assistant it does not work. Randomly it starts working again after a while but then it will fail later again.
My logs are the exact same as the ones shared in this thread.
Anyone have an update or anything I can try?

Are you using other Eufy plugins (like Homebridge)? In this case, try to disable all the other plugins and restart Home Assistant


Do not show drag buttons on elements that are only children

Since dragging elements is for sorting elements among its siblings, this button should not be seen on only children.
One possible are of confusion for this is when an element, like an <strong>, is placed in the middle of Text nodes that aren't wrapped in any tag. In that situation dragging isn't allowed either because unlike with DOM elements, there's no good way of telling where we want that element to land (in between any two characters?)

@leandrocp I believe that bug existed before and should have been fixed by https://github.com/BeaconCMS/beacon_live_admin/pull/214

Either way, I don't think it's related to this PR.

@leandrocp I believe that bug existed before and should have been fixed by #214

I don't see the bug on the main branch, so it seems to be something new. Forcing canBeDragged to true makes the error go away as well 🤔

I added a few null-checks. At some point $selectedDomElement.parentElement.children must be null and it's failing, although the way it's manifesting is unexpected. Try again.

Yeah I found the same issue on https://github.com/BeaconCMS/beacon_live_admin/pull/218 with assets updated. Let me try this PR again.

Working now!


Keep accounts, but let us turn off Cloud Sync

Is your feature request related to a problem? Please describe.
Currently, many users myself included are put off using the service due to account sessions being stored in the cloud. You can see this from other issues and posts online. Personally, it's not that I don't trust you, or dislike having an account, it's that I don't trust the chance of these sessions being hacked, intercepted etc. Storing my email session on your servers, if they are compromised all of my accounts are compromised; when personally I won't be using cloud sync anyway on other devices.
Describe the solution you'd like
Add a simple slider to turn off cloud sync of sessions, and wipe session information from the cloud, keeping sessions local. I'd say that's the perfect compromise, with not too much extra work.
That would mean the only data stored on your servers or transmitted over the internet would be hashed login information, and premium status, which I and likely everyone else with privacy concerns would be fine with.
Premium is conserved, user stats are conserved, I don't see any reason this would cause an issue for you or users.
Describe alternatives you've considered
Currently, I'm using standalone messaging apps. If this isn't changed, I'm either going to have to stick with those or switch to another aggregator i.e. Rambox

Nevermind, I realise now that sessions weren't persisting between reinstalls due to cloud sync, cookies were stored in app data. Closing issue.


Create pl.json

Polish translation added

Thank you @nepozs!

@nepozs I released a new version with new strings. I prefilled the Polish version using deepl. It would be cool if you could check how good a job it did!


AMPI: Link ROMIO with libpthread

Could you comment on what this fixes? I think -pthread is generally better.

Updated

This fixes the following problem, a build time showstopper for any program that calls into ROMIO:
/usr/bin/ld: /home/evan/charm/netlrts-linux-x86_64/bin/../lib/libampiromio.a(onesided_aggregation.o): undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

This fixes the following problem, a build time showstopper for any program that calls into ROMIO:
/usr/bin/ld: /home/evan/charm/netlrts-linux-x86_64/bin/../lib/libampiromio.a(onesided_aggregation.o): undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

This file (and a few others in ROMIO) will create internal pthreads. Not sure that would work at all. We can merge this patch to get around the build failure.


Bumped ccx-rules-ocp version

Codecov Report

Merging #240 (c6650fc) into master (2871576) will decrease coverage by 2.44%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #240      +/-   ##
==========================================
- Coverage   73.28%   70.84%   -2.45%
==========================================
  Files           9        9
  Lines         423      367      -56
==========================================
- Hits          310      260      -50
+ Misses         89       88       -1
+ Partials       24       19       -5

Impacted Files
Coverage Δ

content/content.go
86.48% <0.00%> (-0.77%)
:arrow_down:

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 2871576...c6650fc. Read the comment docs.


Include a timestamp on log messages

For whatever reason, this doesn't seem to be the default behavior. We definitely need to show a way to do this.

I'll take this one


cannot seem to get bootstrap 3 to work

Have tried loading bs3 w/ webpack, from the index file and even from the home css. Never can get it to play nice with jquery.
Any suggestions?

@adowning do you have a link to your repo? I want to see how you're adding it and to see if I can provide better instructions. Including bootstrap is a great idea, ideally I wanted to include Material Design components when they're available

A big :+1: to Material Design, but having an example for bootstrap would be nice too

no problem, I can add one :)

this will be solved via @valorkin's ng2-bootstrap module which supports bootstrap versions 3 and 4


C++: IR field flow

This PR takes the the first stab at implementing field flow in the IR.
This is still WIP, but any comments is appreciated. One thing I remember is @jbj mentioning that DefinitionByReferenceNode couldn't be made a PostUpdateNode because there's not a corresponding pre update node to pick, but it seemed like this was the most obvious way to model partial flow to the this parameter in setters. And for now https://github.com/Semmle/ql/pull/2921 only reports a couple of problems with nodes missing locations, which shouldn't be a problem to fix.

Here's a quick rundown of the changes in the output:

AuthenticationBypass.qlref in Semmle/code has 1 new true positive
ql/cpp/ql/test/library-tests/dataflow/dataflow-tests/test_ir.ql has 3 new true positives and 2 new false positives
The changes to ql/cpp/ql/test/library-tests/dataflow/taint-tests/test_diff.ql and ql/cpp/ql/test/library-tests/dataflow/taint-tests/test_ir.ql looks like the expected output given that it's tracking taint.

ql/cpp/ql/test/library-tests/dataflow/dataflow-tests/test_ir.ql has 3 new true positives and 2 new false positives (the 2 false positives were also present in the old field flow library according to the comments)

And those two false positives are caused by limitations of the shared field-flow library rather than the C++ instantiation of it. They'll be present in the other languages too.

Testing locally on Wireshark/Wireshark revealed something that looks like a bad join order in DataFlowImpl::parameterThroughFlowCand:
[2020-03-27 10:13:23] (3432s) Tuple counts for DataFlowImpl::parameterThroughFlowCand#ff#antijoin_rhs:
<PHONE_NUMBER> ~0%     {3} r1 = JOIN DataFlowImpl::parameterThroughFlowCand#ff#shared AS L WITH DataFlowUtil::InstructionNode::getEnclosingCallable_dispred#ff_10#join_rhs AS R ON FIRST 1 OUTPUT L.<2>, L.<1>, R.<1>
<PHONE_NUMBER> ~2%     {4} r2 = JOIN r1 WITH DataFlowImplCommon::Cached::TParamUpdate#2#ff_10#join_rhs AS R ON FIRST 1 OUTPUT r1.<2>, R.<1>, r1.<1>, r1.<0>
                      832264     ~0%     {3} r3 = JOIN r2 WITH project#DataFlowUtil::ParameterNode::isParameterOf_dispred#2#fff AS R ON FIRST 2 OUTPUT r2.<2>, r2.<3>, r2.<0>
                                         return r3

I'm looking into this now.

CPP-difference run: https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/996

CPP-difference run: https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/996

Most of the differences on openjdk come from #3123. The two changes for cpp/signed-overflow-check are also from a different PR, but I forget which.

Most of the differences on openjdk come from #3123. The two changes for cpp/signed-overflow-check are also from a different PR, but I forget which.

Oh yeah, good point. I should have chosen my baseline commit more carefully. I'll create a new one that compares against master

I don't think you want to compare against master since some of the unrelated changes come from unmerged PRs. You want the baseline to be a branch with all the PRs that you've included in this PR (on top of the merge-base to master).

I don't think you want to compare against master since some of the unrelated changes come from unmerged PRs. You want the baseline to be a branch with all the PRs that you've included in this PR (on top of the merge-base to master).

I don't think I have included any unmerged PRs in here yet? So far I've only merged from master. So #3123 isn't actually included in this PR. Only the part in #3097.

Here's a more honest CPP-differences run: https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/999

I've pushed a new commit that modifies the PostUpdateNodes so that they're attached to Chi instructions now. It seems like this loses some flows, but merging in #2704 seems to fix this.

A fresh CPP-differences run: https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/1020/

A fresh CPP-differences run: https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/1020/

It's not all that fresh -- it seems to be based on an old master from 2 April. There's clearly some performance work to be done. Be sure to merge from the latest master, including path explanations, before investigating performance.

It's not all that fresh -- it seems to be based on an old master from 2 April. There's clearly some performance work to be done. Be sure to merge from the latest master, including path explanations, before investigating performance.

Will do. Fresh was the wrong choice of word here. I meant fresh as in "a new one based on the changes made to this PR".

The latest CPP-Differences revealed a performance regression due to the following predicate in DataFlowImplCommon.qll:
pragma[nomagic]
private predicate parameterValueFlow0(
  ParameterNode p, Node node, ContentOption contentIn, ContentOption contentOut
) {
  p = node and
  Cand::cand(p, _) and
  contentIn = TContentNone() and
  contentOut = TContentNone()
  or
  // local flow
  exists(Node mid |
    parameterValueFlow(p, mid, contentIn, contentOut) and
    LocalFlowBigStep::localFlowBigStep(mid, node)
  )
  or
  ...
}

with this PR we get the following tuple counts for iteration 5:
(2455s) Tuple counts for DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow0#ffff#cur_delta:
1579748   ~0%         {4} r1 = SCAN DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow#ffff#prev_delta AS I OUTPUT I.<1>, I.<0>, I.<2>, I.<3>
109572057 ~11994%     {4} r2 = JOIN r1 WITH DataFlowImplCommon::Cached::FlowThrough::LocalFlowBigStep::localFlowBigStep#ff AS R ON FIRST 1 OUTPUT R.<1>, r1.<1>, r1.<2>, r1.<3>
...
109577945 ~11984%     {4} r15 = r2 \/ r14
...
109580255 ~11974%     {4} r27 = r15 \/ r26
...
109580255 ~11974%     {4} r30 = r27 \/ r29
...
109580255 ~11974%     {4} r33 = r30 \/ r32
...
109580255 ~11974%     {4} r36 = r33 \/ r35
...
109580255 ~11974%     {4} r39 = r36 \/ r38
...
109580255 ~11974%     {4} r42 = r39 \/ r41
...
109580255 ~11974%     {4} r45 = r42 \/ r44
14493     ~4%         {4} r46 = r45 AND NOT DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow0#ffff#prev AS R(r45.<1>, r45.<0>, r45.<2>, r45.<3>)
14493     ~6%         {4} r47 = SCAN r46 OUTPUT r46.<1>, r46.<0>, r46.<2>, r46.<3>
                    return r47

where's on the current master (6e88b6d4f462523cd7313e870475124f428e84e0) we get:
(61s) Tuple counts for DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow0#ffff#cur_delta:
57061  ~0%     {4} r1 = SELECT DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow#ffff#prev_delta AS I ON I.<2> = I.<3>
57061  ~3%     {3} r2 = SCAN r1 OUTPUT r1.<1>, r1.<0>, r1.<2>
0      ~0%     {3} r3 = JOIN r2 WITH DataFlowImplCommon::Cached::FlowThrough::LocalFlowBigStep::localFlowBigStep#ff AS R ON FIRST 1 OUTPUT r2.<1>, r2.<2>, R.<1>
...
0      ~0%     {3} r9 = r3 \/ r8
...
0      ~0%     {3} r15 = r9 \/ r14
...
0      ~0%     {3} r20 = r15 \/ r19
...
0      ~0%     {3} r25 = r20 \/ r24
...
0      ~0%     {3} r28 = r25 \/ r27
...
0      ~0%     {3} r31 = r28 \/ r30
106958 ~0%     {4} r32 = SELECT DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow0#ffff#prev AS I ON I.<2> = I.<3>
106958 ~5%     {3} r33 = SCAN r32 OUTPUT r32.<0>, r32.<1>, r32.<2>
106958         {3} r34 = MATERIALIZE r33 AS antijoin_rhs
0      ~0%     {3} r35 = r31 AND NOT r34(r31.<0>, r31.<2>, r31.<1>)
0      ~0%     {4} r36 = SCAN r35 OUTPUT r35.<0>, r35.<2>, r35.<1>, r35.<1>
                return r36

I'm not exactly sure what's causing the change in RA. On master we only keep the rows where contentIn and contentOut are equal, where's this is not the case after the changes in this PR.
Here's the relevant predicate differences:
Master:
  exists(/* DataFlowUtil::Node */ TIRDataFlowNode mid |
    exists(/* DataFlowImplCommon::ContentOption */ TContentOption arg3 |
      rec DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow#ffff(p,
                                                                                mid,
                                                                                contentOut,
                                                                                arg3),
      contentOut = arg3
    ),
    DataFlowImplCommon::Cached::FlowThrough::LocalFlowBigStep::localFlowBigStep#ff(mid,
                                                                                node)
  );

This PR:
exists(/* DataFlowUtil::Node */ TIRDataFlowNode mid |
  DataFlowImplCommon::Cached::FlowThrough::LocalFlowBigStep::localFlowBigStep#ff(mid,
                                                                                node),
  rec DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow#ffff(p,
                                                                              mid,
                                                                              contentIn,
                                                                              contentOut)
);

I'm not exactly sure what's causing the change in RA. On master we only keep the rows where contentIn and contentOut are equal, where's this is not the case after the changes in this PR.

I think the constraint on master is inferred indirectly from readStep and storeStep being none(), and which isn't true after the PR. The bigger problem is that there are many possible mid  nodes that connect a pair of p and node with the same content. That might be coming from chi nodes on parameters, but averaging 100 of those seems extreme. Could it be caused by alias/conflation of parameters?

I think the constraint on master is inferred indirectly from readStep and storeStep being none(), which isn't true after the PR. The real problem is that there are many possible mid nodes that connect a pair of p and node with the same content. That might be coming from chi nodes on parameters, but averaging 100 of those seems extreme. Could it be caused by alias/conflation of parameters?

 In a previous commit I introduced an abstract class for ParameterNodes (to split explicit and implicit parameters), and then removed the abstract'ness from the class following your comment in https://github.com/Semmle/ql/pull/3123. But (unlike Jonas) I forgot to introduce a char pred to the ParameterNode class, so parameterValueFlow0 was not restricted to only parameters.
I've fixed this and started a new CPP-differences.

Here's the newest CPP-differences after merging in master after Robert's outparam PR (along with necessary flow from #3220): https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/1043/
Performance still looks good. I'll take a look at the profile for microsoft/Chakra just to be sure. We have a couple of new results now as well:
=== Changes per project (+new -fixed) ===

g/git/git                                                                   +1 -0
g/php/php-src                                                               +2 -0

=== Changes per query (+new -fixed) ===

cpp/path-injection                                                          +2 -0

cpp/uncontrolled-allocation-size                                            +1 -0

I'll take a look at these tomorrow.

Here's the newest CPP-differences after merging in master after Robert's outparam PR (along with necessary flow from #3220): https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/1043/

That looks great!

Performance still looks good. The only major spike in time spend is on microsoft/Chakra, but that is due to increased build time.

It looks to me like there's a performance regression beyond the noise level. Looking at the analysis time diffs, the first DefaultTaintTracking-based queries in the suite are clearly taking longer than they used to. The biggest relative slowdown is on git/git, but that could be noise.
I do expect a slowdown since we're doing more work than before, and a few percent seems reasonable. But do you see any individual predicates that have slowed down and are now slower than they ought to be?

I do expect a slowdown since we're doing more work than before, and a few percent seems reasonable. But do you see any individual predicates that have slowed down and are now slower than they ought to be?

The query that has the biggest slowdown cpp/cpp/path-injection has has the biggest slowdown in the query phase of the evaluation. Looking at the timing stats for that particular stage locally for git/git and wireshark/wireshark (and a brief look at the timing stats for other stages) there's no predicate that immediately caught my eye as unreasonably slow.

Here's the relevant internal PR: https://git.semmle.com/Semmle/code/pull/36713


Prove it's possible

There are two aspects of this that need to be proven out before full-fledge development begins:

Creating a SmartSpeaker accessory is all that's necessary to see and control a device in HomeKit (AirPlay 2 is not required).
All necessary Alexa/FireTV states can be retrieved and set.

Okay… so I've learned a couple things about item 1 above:

The accessory can be created, but not registered as a platform accessory. It needs to be published as an external accessory.
The only characteristics that seem to work are the media states (play/pause/stop). AirPlay 2 is required for volume control. See homebridge/homebridge#2553 for details.

For item 2, this looks promising to determine the current audio player state.

Yep, confirmed tonight that the referenced function gives me what I need.


Add some links around the bazel toolchain topic

Hi,
I've been looking at bazel toolchain stuff and thought i would add some links here that i found

@jin Thanks for the quick review! :) I think all of those should be fixed up now

thanks!


PHP templates-specific sniffs

Please check if the PR fulfills these requirements

[x] The commit message follows our guidelines
[x] Tests for the changes have been added (for bug fixes/features)
[x] Docs have been added/updated (for bug fixes/features)

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Feature.
What is the current behavior? (You can also link to an open issue here)
There are no rules targeted to the PHP templates.
What is the new behavior (if this is a feature change)?
PHP templates have specific formatting rules. For some of our projects, we follow Plates-suggested syntax . It includes using alternative syntax for control structures, short echo tags, and avoiding semicolons. Therefore, creating a set of rules targeted to PHP templates makes sense.
The current PR introduces the InpsydeTemplates ruleset that could be used conditionally (or not used :smile: ) in your projects:
<rule ref="InpsydeTemplates">
    <include-pattern>*/templates/*</include-pattern>
    <include-pattern>*/views/*</include-pattern>
</rule>

For now, only one rule is added to remove trailing semicolons before closing PHP tags. A very nice investigation and usage comparison of this rule can be found here: https://github.com/prettier/plugin-php/issues/609#issuecomment-423863793.
Sure, we can and should discuss the approach widely. Maybe we could decide to maintain such rules in a separate repository. But since we already have a test suite and documentation here, in my opinion, it will be no harm to add custom rules that could be enabled conditionally.
Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)
No.
Other information:
Apart from the feature, there is a small deprecation (since PHPCS 3.8.0) fix here - https://github.com/inpsyde/php-coding-standards/blob/441f7ceca8d0df4ea6bfab9798630cd2031c3fe5/tests/cases/FixturesTest.php#L227-L231. It could be applied separately.

Wouldn't it be good to have that discussion or documentation (if the discussion already happened) here in this very PR?

Thanks for pointing this out. The PR was updated after an internal discussion, but it does make sense to document the decision and explain the reasons behind it.
Inpsyde and InpsydeTemplates standards and their relationship
I initially suggested making the InpsydeTemplates coding standard completely decoupled and unrelated (as you can see from the PR description). In this case, even using the standalone repository is possible (but it's not the best idea, as we have a testing framework and primary PHP coding standard documentation here). Also, PHP templates are still regular PHP files requiring other code-quality sniffs. So, we must apply both Inpsyde and InpsydeTemplates sniffs to PHP templates.
It's possible with the decoupled setup like:
<?xml version="1.0" encoding="UTF-8"?>
<ruleset>
    <file>./src/</file>
    <file>./tests</file>
    <file>./functions.php</file>
    <file>./views</file>

    <rule ref="Inpsyde">
    </rule>

    <rule ref="InpsydeTemplates">
        <include-pattern>*/views/*</include-pattern>
    </rule>

</ruleset>

But what if we want turn off some rules (like NoElse) from Inpsyde in the template context? Sure, we can do it in our project-specific standard, but we can't do it in InpsydeTemplates by default.
That's why the "InpsydeTemplates extends the Inpsyde coding standard" option was selected. It provides maximum flexibility (we can conditionally turn off Inpsyde rules, and we can add third-party template-specific sniffs, if any) and not add much verbosity to consuming package config:
<?xml version="1.0" encoding="UTF-8"?>
<ruleset>
    <file>./src/</file>
    <file>./tests</file>
    <file>./functions.php</file>
    <file>./views</file>

    <rule ref="Inpsyde">
        <exclude-pattern>*/views/*</include-pattern>
    </rule>

    <rule ref="InpsydeTemplates">
        <include-pattern>*/views/*</include-pattern>
    </rule>
</ruleset>

Regarding "Inpsyde including InpsydeTemplates", it might work as well. Basically, it's the inversion of the initial suggestion:
 <?xml version="1.0" encoding="UTF-8"?>
<ruleset>
    <file>./src/</file>
    <file>./tests</file>
    <file>./functions.php</file>
    <file>./views</file>

    <rule ref="Inpsyde">
    </rule>

    <rule ref="InpsydeTemplates">
        <exclude-pattern>*/src/*</include-pattern>
        <exclude-pattern>*/tests/*</include-pattern>
        <exclude-pattern>*/functions.php</include-pattern>
    </rule>
</ruleset>

But most of the time, it will be more verbose. And still, turning off specific rules from Inpsyde in a template context is not possible.
Last but not least, consideration is backward compatibility. Changing the Inpsyde coding standard in this way will require updating every project-specific standard.
Based on the listed reasons, the "InpsydeTemplates extends the Inpsyde coding standard" seems the most reasonable.
Would it be possible not to create the standalone standard but add a new sniffs directory?
Let's consider the following structure.
Sniffs
    CodeQuality
    Templates

Implementing the selected setup is not possible. Any imported sniffs from PSR, WordPress, etc., in the following ruleset are ignored. Only the CodeQuality and Templates sniffs are imported:
<?xml version="1.0" encoding="UTF-8"?>
<ruleset>
    <file>./src/</file>
    <file>./tests</file>
    <file>./functions.php</file>
    <file>./views</file>

    <rule ref="Inpsyde.CodeQuality">
        <exclude-pattern>*/views/*</include-pattern>
    </rule>

    <rule ref="Inpsyde.Templates">
        <include-pattern>*/views/*</include-pattern>
    </rule>
</ruleset>

We have to import the whole Inpsyde standard to import external sniffs. So it equals "Inpsyde including InpsydeTemplates" with discussed already cons (it is impossible to turn off curated Inpsyde rules, it is impossible to include third-party template-specific rules, it breaks backward compatibility and might be more verbose):
<?xml version="1.0" encoding="UTF-8"?>
<ruleset>
    <file>./src/</file>
    <file>./tests</file>
    <file>./functions.php</file>
    <file>./views</file>

    <rule ref="Inpsyde">
    </rule>

    <rule ref="Inpsyde.Templates">
        <exclude-pattern>*/src/*</include-pattern>
        <exclude-pattern>*/tests/*</include-pattern>
        <exclude-pattern>*/functions.php</include-pattern>
    </rule>
</ruleset>

Sorry, by mistake I pushed in this branch instead of development. But I changed nothing on this PR's files, only fixed Psalm issues in other files.


Unable to pip install pennylane-qulacs["gpu"]

Hi there,
At the moment I´m finding trouble installing the QLacs plugin to use the qlacs.simulator in a Quantum Long Short Term Memory Application. When I run the - !pip install pennylane-qulacs["cpu"]- it seems to work.
However when trying to run - pip install qulacs pennylane-qulacs["gpu"] -  in Google Colab, it keeps returning the following error:
error: subprocess-exited-with-error
× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
Building wheel for qulacs-gpu (setup.py) ... error
ERROR: Failed building wheel for qulacs-gpu
Running setup.py clean for qulacs-gpu
Failed to build qulacs-gpu
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (qulacs-gpu)
My backend is setup as "qulacs.simulator" which also returns:
DeviceError: Device qlacs.simulator does not exist. Make sure the required plugin is installed.
The versions used are:
Pennylane QML: 0.39.0
Windows 10 Pro
Environment: Google Colab // Jupyter Notebook
Python: 3.10.12

Hi @Iaguigoiri, were you able to solve this issue? If so, what was the solution?


could not determine kind of name for C.CODEC_CAP_EXPERIMENTAL

While building with docker i occurs an error follow
could not determine kind of name for C.CODEC_CAP_EXPERIMENTAL

Ran into this building ffmpeg from git; building against FFmpeg 3.4.2 "Cantor" release seemed to fix


Add sorting action filter

I implemented sorting as another action filter. Its OnActionExecuted needs to run after the filtering attribute (so it has to be placed before it in the config, due to nesting). This works according to the new spec, so it requires sort expressions to be prefixed with + or -.
Closes #17

Rebased and fixed tests


Mean Accuracy Treshold

How is the mean accuracy in the ReliabilityDiagram Calculated? What is the threshold used to select a binary outcome?
Would it be possible to add a parameter to use as a threshold?
Thanks

Hi @mathieulallier807, sorry for the late response. The calibration target for binary classification calibration is rather the relative frequency of the positive class, i.e., of label "1", than the accuracy.
For example, consider N = 100 images of a dataset with binary ground-truth labels Y ∈ {0, 1}, where 50 images are labeled as Y = 0 and 50 images with Y = 1. Furthermore, consider a classification model with a sigmoidal output in [0, 1], indicating
its confidence for Y = 1. In our example, this model is able to always predict the correct ground-truth
label with confidences P̂= 0 and P̂= 1 for Ŷ = 0 and Ŷ = 1, respectively. Thus, the network is
able to achieve an accuracy of 100% but with an average confidence of 50%. Therefore, we consider
the relative frequency for Y = 1 in a binary classification task as the calibration goal that is also 50%
in this scenario.
I hope this helps.


[Bug] run pytorch Qwen-7B-Chat with ARC-c ppl under CPU ,and result is not good

Prerequisite

[X] I have searched Issues and Discussions but cannot get the expected help.
[X] The bug has not been fixed in the latest version.

Type
I'm evaluating with the officially supported tasks/models/datasets.
Environment
opencompass recommend conda env
Reproduces the problem - code/configuration sample
--datasets arc_c_ppl --hf-path /home/test/llm_mode_debug/qwen7_B/ --tokenizer-path /home/test/llm_mode_debug/qwen7_B/  --tokenizer-kwargs padding_side='left' truncation='left' trust_remote_code=True --model-kwargs trust_remote_code=True device_map='cpu' --max-seq-len 2048 --max-out-len 16 --batch-size 1 --num-gpus 0 --debug
Reproduces the problem - command or script
--datasets arc_c_ppl --hf-path /home/test/llm_mode_debug/qwen7_B/ --tokenizer-path /home/test/llm_mode_debug/qwen7_B/  --tokenizer-kwargs padding_side='left' truncation='left' trust_remote_code=True --model-kwargs trust_remote_code=True device_map='cpu' --max-seq-len 2048 --max-out-len 16 --batch-size 1 --num-gpus 0 --debug
Reproduces the problem - error message
Loading checkpoint shards: 100%|██████████| 8/8 [00:05<00:00,  1.35it/s]
06/03 17:29:13 - OpenCompass - INFO - Start inferencing [opencompass.models.huggingface.HuggingFace_llm_mode_debug_qwen7_B/ARC-c]
[2024-06-03 17:29:33,307] [opencompass.openicl.icl_inferencer.icl_ppl_inferencer] [INFO] Calculating PPL for prompts labeled 'A'
100%|██████████| 295/295 [8:32:09<00:00, 104.17s/it]
[2024-06-04 09:41:03,213] [opencompass.openicl.icl_inferencer.icl_ppl_inferencer] [INFO] Calculating PPL for prompts labeled 'B'
100%|██████████| 295/295 [8:31:23<00:00, 104.01s/it]
[2024-06-04 18:12:26,649] [opencompass.openicl.icl_inferencer.icl_ppl_inferencer] [INFO] Calculating PPL for prompts labeled 'C'
100%|██████████| 295/295 [8:36:10<00:00, 104.99s/it]
[2024-06-05 02:48:37,632] [opencompass.openicl.icl_inferencer.icl_ppl_inferencer] [INFO] Calculating PPL for prompts labeled 'D'
100%|██████████| 295/295 [8:42:03<00:00, 106.18s/it]
06/05 11:34:31 - OpenCompass - INFO - Partitioned into 1 tasks.
06/05 11:34:33 - OpenCompass - INFO - Task [opencompass.models.huggingface.HuggingFace_llm_mode_debug_qwen7_B/ARC-c]: {'accuracy': 35.25423728813559}
dataset    version    metric    mode      opencompass.models.huggingface.HuggingFace_llm_mode_debug_qwen7_B

ARC-c      a450bd     accuracy  ppl                                                                   35.25
Other information
No response

We haven't verify the results on CPU.

We haven't verify the results on CPU.

Thanks, here is another question,Just feel confuse for the evalution resut ,Take arc-c  for an example, https://hub.opencompass.org.cn/dataset-detail/ARC-c , I saw the official result from opencompass, I could saw some detail for the dataset link, but seems hard for me to judge data from gen or ppl method.
官网
GitHub
论文/技术报告
How do I distinguish the result test from GEN or PPL, I got the result both ppl and gen from opencompass test. Please kindly correct me if I was wrong. Thanks

@tonysy Could you please kindly help to review my question?  take https://hub.opencompass.org.cn/dataset-detail/ARC-c  for example, is the data from gen or ppl test, the result provide base on which gpu?


What happens if Kong pod crashed before writing cache invalidation cluster event to DB ?

Discussed in https://github.com/Kong/kong/discussions/8132

Originally posted by shettyh December  1, 2021
How the cache is invalidated on other pods in this case ?
// @kikito

On traditional mode it may lead to inconsistent state. That is, some nodes on cluster may not get invalidation and thus their caches are not cleared. On DBless or hybrid you won't see this issue as there the data planes are not connected to the database and they don't even receive any invalidation events. In future we will make dbless nodes and data plane nodes a bit more stateful because some use cases require it. In general kong pods should not be crashing and if that is frequent, then there is issue that needs to be fixed.

It would be great to have this transactional, so that no entity is changed without proper invalidation event written in database too.

Thanks @bungle. Concern was that it is very difficult to figure out if there was a cache inconsistency when this rare edge case happens.

It would be great to have this transactional, so that no entity is changed without proper invalidation event written in database too.

Yes this would be great


[Feature] Added masking views feature in Delfin UI.

What type of PR is this?
/kind new feature
What this PR does / why we need it:
This PR adds support for masking views in Delfin UI.
User will be able to list the masking views and in turn the resources that are masked using the masking view.
Which issue(s) this PR fixes:
Fixes #593
Test Report Added?:
/kind TESTED
Test Report:

Special notes for your reviewer:

Few comments:
a) Rather than 'Ports list' can we simply say 'Ports' or 'Port List'? same for Volumes List
b) When showing Storage Host details, Showing Storage ID and Native_storage_ID may be confusing.
c) Storage Host detail should contain the Initiator

Few comments:
a) Rather than 'Ports list' can we simply say 'Ports' or 'Port List'? same for Volumes List

Done.

b) When showing Storage Host details, Showing Storage ID and Native_storage_ID may be confusing.

Yes. But they are two different fields and they have to be shown. This was done after discussion with @NajmudheenCT @sushanthakumar previously.

c) Storage Host detail should contain the Initiator

Will make the change.

Some suggestions

Initiators should be displayed in masking view table only if it has direct relation with initiator, otherwise show initiator under host view

Will check and change accordingly, if needed.

Port lists -> ports

Already changed.

Storage host details -> change label ' native storage host ID' to 'native host id', since we are already in the context of storage, no need to append storage in the view

Will change.

@kumarashit @NajmudheenCT @sushanthakumar
As per the comments and the discussions I have made the changes.
here are the updated screenshots.
Storage host Details

ports

Volumes

latest masking view tab screenshot please..


Linear Search in Python

Pull request for Linear Search in python

Linear search is a simple program to search for a key in given List in linear fashion
Closes #161


Flood of sort warnings while trying to compile glibc.

I am trying to compile glibc from git branch 2.35. I am seeing a flood of:
sort: failed to parse key '2n,2n': options '-nn' are incompatible

could you please provide a small test case to reproduce the issue ?
thanks

could you please provide a small test case to reproduce the issue ? thanks

I do not know how to do that. Can a uutils developer try it please?

Sorry but not, it isn't practical to debug coreutils with "please rebuild X"...
please reopen once you have a test case showing the issue

Sorry but not, it isn't practical to debug coreutils with "please rebuild X"...
please reopen once you have a test case showing the issue

Could you at least give me details on what I should do? What would a test case entail exactly?
Not everyone is a software developer.

Reproduction: sort -k 2n,2n. I sadly don't have time to further investigate this issue, but it looks like we should accept multiple options if they are compatible (in this case they're even the same option). The relevant source code is located here: https://github.com/uutils/coreutils/blob/81a2abc0944888f03b5d2d9bf878b2b851140c8b/src/uu/sort/src/sort.rs#L460


Error message fails to disappear when message is placed outside of form

For one reason or another, my requirements specify that all form validation errors should appear on a certain part of the page. This container is outside of the form being validated. I can place the errors into this container through the errorPlacement callback, but those errors are not automatically removed once validation passes. Example:

<form>
  <input class="required url" name="url" />
</form>

It seems I can place the errors anywhere within the form and validation errors are removed as soon as the input field validates successfully.
Looking at the code, it looks like you are building out the selector (based on the name of the input) each time you want to hide/show it. Why not just keep a reference to the label the first time you build it?
I would think about submitting a patch, but it looks like you do not accept them?

@bradseefeld I just got bite by this bug. Did you make any progress fixing it or have a work around. Otherwise, I'm going to fix it on my end.

No progress on a fix :( Sorry.

I did some searching of the source code and found that (for version 1.9 at least) this functionality already exists.  Just set the errorLabelContainer.
$("form").validate({
    ...
    errorLabelContainer: "#error-container"
    ...
});


SSCS-8163 - Hearing postponed Joint Party Welsh

SSCS-8163 - Hearing postponed Joint Party Welsh

Do you not need to add/change a test in NotificationConfigTest for templateIdsWithHearingAndEventTypesWelsh

the PR does change a test in that method


Fix spelling

Q
A

Is bugfix?
no

New feature?
no

Breaks BC?
no

Tests pass?
yes

Fixed issues

Thank you!


Migrate sorin prompt to zsh-async

Fixes #1384 and is a final tweak for the security issue relating to "pw3nage".
Proposed Changes

Add zsh-async as an external module
Move all git-info checking in the sorin prompt to zsh-async
Ensure that pw3nage does not trigger with this method

@belak, is there a rush to fix this? If not, I'll like to use this for a day in a way of beta test.

No huge rush. :)

I am also testing this now. It appears to have fixed the issue I was seeing on Sierra. Thanks.

I'm testing it from last night at the momemt all works fine. Thanks.

Do you have any comments for this @indrajitr ?

@belak, added suggestions as separate commit in belak/zsh-async-sorin-updated. Feel free to pickup the ones that are useful and squash them as you find relevant.

I'm not around for most of this weekend, but you're welcome to update the branch. The changes you mentioned seem useful.

Branch updated. Feel free to squash and apply. This is a great PR!

I've had mixed experiences with updating an install to use this branch. Do you think it's fine to merge as-is or should we try to improve the transition?

I've similarly had mixed experiences with the git submodule update, it seems like if you have something reasonably clean it does work well, but the other time I did have to blow away the repo and clone it again to fix whatever problem state it got it into...
Someone who knows more about submodules would be better able to comment on why things might break that way.

I think we should just merge as is (possibly with rebase and updated commit message(s)).
We can handle and support the transition issues on a case to case basis.

I agree with @indrajitr
I stupidly did not update the submodules, but I solved it immediately with your help. Our messages would still be visible so that everything can be solved
Sent from my Motorola Moto G (4) using FastHub

Squashed and merged with a rambling backstory included in the commit message. Any fixes can come in future PRs. Thanks to everyone for testing this!

Broken symlink 😞
~/.zgen/sorin-ionescu/prezto-master/modules/prompt/functions ❯ file async
async: broken symbolic link to ../external/async/async.zsh
prompt_pure_async_tasks:38: command not found: async_job
prompt_pure_async_tasks:43: command not found: async_job
prompt_pure_async_tasks:51: command not found: async_job
~/.zgen/sorin-ionescu/prezto-master/modules/prompt/functions ❯ mv async async.bak && ln -s ../external/pure/async.zsh async

restart a new shell, and now everything's working fine. Let me know if you need any help to fix this in master. 😄


3D Human Pose with Heuristics, Body Prior and Smoothing

Added basic parallelization for bbox and pose2d modes.
Main Steps:

Get initalization using mode = pose3d
Heuristics, body prior and smoothing = refine_pose3d

Merging to unblock, will open another PR to merge into main


Change coco utils to use high-level interface

Highlights:

gen_coco_sal() is gone and in its place is parse_coco_dset() which takes a kwcoco.CocoDataset object and creates matrices for use with the new high-level detector interface
sal-on-coco-dets was updated to use this new utility function and high-level interface combination
Updated testing of both modules
I added new logic to mock failed import of the extra dependencies even when they are installed
Updated the serialized detections example as well

Using a fill with the CLI tool is now done by specifying it in the configuration for the GenerateObjectDetectorBlackboxSliency implementation. The fill currently isn't accounted for in the configuration suite of the existing implementations. I will address this in #97 since I changed the format of drise.py there.

I believe the continue statements showing as not being covered by testing are actually covered. This seems to be related to some CPython optimization stuff, see this issue I found.

@schencej With the function name change to parse_coco_dset, it looks like the failing notebook needs an update to use that new name.

LGTM, thanks- feel free to merge!


Open in new tab not available

Because of the way we are managing navigation, it has become impossible to open a link in a new tab. Some sort of refactor would be required. The _route attribute could become href again and maybe everything should be replaced back as an anchor. Then using preventDefault with the onclick on these tags could do the deal.

I wrote a short pen demonstrating the functionality. Should be an easy implementation beyond this.

Assigned to @anspd with a deadline of Sept 26 to production.


netdata: 1.26.0 -> 1.28.0

Motivation for this change
Updating the software and thus be able to make progress on #92782
Things done

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

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

[ ] Tested via one or more NixOS test(s) <- they were already failing on the previous version and I can't figure out why :/
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

cc @lethalman

Result of nixpkgs-review pr 107306 1

1 package built:

netdata

Result of nixpkgs-review pr 107306 1
1 package built:

Please update your nixpkgs-review to include the platform it was run on.


Update link for Misaki font

I would be happy to contribute Engish readme (or at least install guide) if this is interesting to you?

Hi.
Thanks for patch.
English contribution is always welcome.
I could not translate README to English because I have no proper dictionary that covers classic computer words.
(e.g. Printed binary listing is called "dump list" in Japanese but it may be incorrect and I don't know how it is called among native English speakers. "program list" is also "Japanese English". "program listing" may be correct but I'm not sure.)
It is trained for binary listing(language code:hex) and N60/N66-BASIC for NEC PC-6001/6601(language code:n6x).
Hex can be used for any machine/architecture.
N60-BASIC is supplied by Microsoft so I think it is suitable for any Microsoft-BASIC variants (except Japanese/graphical characters).
I hope this application will be used worldwide.
English guide may be good help.
thanks.

We can work together on English guide. If you want to start I can correct.
Or I can start from Google Translation and correct according to my understanding.

@gingerbeardman
I created roughly translated README on the branch.
Will you check and correct it?
https://github.com/eighttails/ProgramListOCR/blob/englishUsersGuide/README.adoc


Download too slow almost 0

China's access to the Internet is too slow

When executing the CDE data download command

I have uploaded a chemdata.zip file on Baidu Cloud Disk for China developers.
Link：https://pan.baidu.com/s/12z4BpGQHKvowhgUAiCKFdg
Password：oxfp

Thank you very much.
------------------ 原始邮件 ------------------
发件人: "Geon<EMAIL_ADDRESS>发送时间: 2020年5月22日(星期五) 下午3:06
收件人<EMAIL_ADDRESS>抄送: "Counting Star"<1623220940<EMAIL_ADDRESS>主题: Re: [mcs07/ChemDataExtractor]  Download too slow almost 0 (#29)
I have uploaded a chemdata.zip file on Baidu Cloud Disk for China developers.
Link：https://pan.baidu.com/s/12z4BpGQHKvowhgUAiCKFdg
Password：oxfp
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Thank you very much.谢谢
------------------ 原始邮件 ------------------
发件人: "Geon<EMAIL_ADDRESS>发送时间: 2020年5月22日(星期五) 下午3:06
收件人<EMAIL_ADDRESS>抄送: "Counting<EMAIL_ADDRESS><EMAIL_ADDRESS>主题: Re: [mcs07/ChemDataExtractor]  Download too slow almost 0 (#29)
I have uploaded a chemdata.zip file on Baidu Cloud Disk for China developers.
Link：https://pan.baidu.com/s/12z4BpGQHKvowhgUAiCKFdg
Password：oxfp
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


fix: update to eye v9.9.13

fix: update to eye v9.9.13

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

npm package (@latest dist-tag)
GitHub release
v12.8.8

Your semantic-release bot :package::rocket:


Rewrite macro derivation to use white box macro

The basic problem we have with the Magnolia-based macro derivation is that the path-dependent Accessors type won't ever infer correctly. So to get various reified-optics code to compile users will either have to:

Create Schemas by hand
Cast magnolia-derived Schemas to their correct type (i.e. Schema.CaseClass3[...])

Neither is very ergonomic.
We can solve the issue by replacing Magnolia with a white box def macro so that the type gets resolved after the macro expansion and everything infers correctly.
This is an initial stab at the macro. Here we do a couple of things:

Pull most of the core stuff into a zio-schema-core subproject so we can have the def macro in a separate compilation unit (not sure we actually need to do this but that's the way it is for now).
Implement a whitebox macro for schema derivation. This is only implemented for Product types now (and only up to arity 3 but extending to all arities is trivial).

What DOES NOT currently work:

Enum derivation.
Derivation for recursive types.

Enums should be relatively straightforward but not sure how to handle recursive types.

Returning this guy to draft. Will sort out the annotation capture and remove the magnolia derivation entirely and rebase this onto the project structure from https://github.com/zio/zio-schema/pull/143

Rebased and resubmitted on a different branch


Change worker chunk name from  to .worker

Fixes #43, as it avoids conflicts with other number-based webpack
chunks.
Note that the conflict may not be on the filename (since this plugin
adds '.worker' to it) but on the internal key used by webpack in
referencing modules.
E.g. in the below generated webpack loader code, using w0 avoids conflict with chunkId 0 that would otherwise never load.

I'd argue that a cleaner "fix" would be to name the chunk with something like worker.${id} and drop the chunkFilename replacement logic (that inserts .worker. before the output extension), but that'd break the naming of those who provided a name to the worker, so you tell me.

TBH I think I agree with your point about the cleaner fix @gluck - it'll break existing names, but perhaps that's okay? Could even append .worker to the name, then remove .worker.worker as a way to make it backwards-compatible.

Done, I was zealous and included suggested #19 change at the same time (because a user could use this feature to revert/customize the naming behavior), lmk if you think I should remove it.

(note that I couldn't make it backward-compat because the check for duplicate worker.worker. would have to be done after webpack has resolved chunkFilename and I don't know how to hook there).
I could inject into .worker into chunkFilename if it doesn't include [name] to make sure output files always include .worker in them if you think it's a good idea, but I'm personally not sure it is.

I think this looks good! I'll need a little bit before I can do a proper thorough review. We'll want to think about whether this constitutes a v5 or not given the naming change.


[Support]: How to decrypt access token

Hi,
Sorry for writing it here, but couldn't find the info in the docs. By using –enable-encrypted-token I can see the access token in being encrypted. How can I properly decrypt it? I tried aes256, which I specified in –encryption-key - but that didn't work.
Asking cuz - we tried to develop single sing out - but every time when we, for example, log in into two services (standing behind gatekeeper) and call /oauth/logout on service 2 (for example), service 1 is still being logged in until access token is expired. So, we solved it by removing http-only flag for deleting cookies once backend checks /userinfo in Keycloak (that's the way we get roles and groups for user and at the same time check KC user session is alive) and send us 401.  And then service 1 after being refreshed log out instantly. Downside is - http only flag is off, which is not very secure, and I decided maybe at least to encrypt the access token and decrypt it on backed for sending an API request to /userinfo Keycloak endpoint.
Maybe we're doing it completely wrong ?

Please check logout documentation for gatekeeper, there are several options for logout described https://gogatekeeper.github.io/gatekeeper/userguide/#logout-endpoint

Maybe I wasn't a bit clear. I tried two logout options:

Using gatekeeper own mechanism
Using Keycloak mechanism
Both working differently, first one log you out from the client, second one logout from all clients in Keycloak. So, the second one is more preferable. But the thing is when you're logging out from service one, you're still staying logged in into service two until the Access Token is expired (cuz it's still valid), and I try to find the best way - for the case: once you log out from the service one,
service two (the next tab in browser) after refreshing the page you get instantly redirected to KC (or the other page specified in --post-logout-redirect).

thanks for adding details, it is now more clear, i will look into possible solutions, meanwhile it is aes128-gcm (16-byte cipher) or aes256-gcm (32-byte cipher)

Wow! Will do and get back with response asap.

Aaand it works!
But with --enable-logout-redirect=true, so all user sessions on all clients in Keycloak are being logged out by using Keycloak mechanism. Now after initiating /oauth/logout on service 1 and refreshing page with service 2 it redirects to Keycloak like a charm, great!
What api at Keycloak are you using for checking session?

Keycloak 22.0.1
My config of GK:
  - "--enable-logging=true"
  - "--enable-json-logging=false"
  - "--enable-refresh-tokens=true"
  - "--verbose=true"
  - "--client-id=pihole-pi4"
  - "--client-secret=somerandomekey"
  - "--discovery-url=https://keycloak.duckdns.org/realms/network/.well-known/openid-configuration"
  - "--listen=:5556"
  - "--upstream-url=http://pihole:80/admin/"
  - "--redirection-url=https://service.mydomain.com"
  - "--encryption-key=somerandomekey"
  - "--enable-default-deny=true"
  - "--skip-access-token-clientid-check=true"
  - "--skip-access-token-issuer-check=true"
  - "--enable-authorization-header=true"
  - "--enable-session-cookies=true"
  - "--enable-logout-redirect=true"
  - "--post-logout-redirect-uri=https://google.com"
  - "--enable-idp-session-check"

and configuration of second client is same right (except creds)?

Yep, same. Here some KC settings (but I don't think they significant):

Tried on our working projects - working as expected. Did you manage to replicate it?

hi, didn't have time yet from yesterday, now i am in work...but will look at it and on your options in keycloak

@hillout ok tested now, works as you said for your use case, i additionally found one thing that when --enable-redirect-logout=false it logouts all sessions when there are 2 windows and one client but it doesn't work with 2 win and 2 clients in any way true/false

@p53 hi! Hm, strange cuz at my side it works this way (and it worked that way always):
Situation 1:
2-3-4 (whatever number of services (which are clients in KC)) logged in.
Using "--enable-redirect-logout=false" and if I go to https://service1/oauth/logout, it logs out only this client, I can see it judging by KC panel at the "Session" page. And if I again go to the same https://service1 it logs in via SSO again.
Situation 2:
2-3-4 (whatever number of services (which are clients in KC)) logged in.
Using -enable-redirect-logout=true at this time, and going to https://service1/oauth/logout, it logs out all the clients - thus services 1-2-3-4 are erased from user session, judging by KC panel at "Session" page. And now if I go to whatever service I'm getting redirected to KC for authentication.
I can provide you some video, or if you'll have some spare time we can arrange a zoom call - show you.

yeah those are your scenarios, i can make table:
TRUE                                        FALSE
| two tabs | 2 clients          |     :heavy_check_mark:   | :x
| two win  | 2 clients           |    :x:                                   | :x
| two win  | 1 one client    |     :x:                                   | :heavy_check_mark:
| two tabs | 1 one client    |     :heavy_check_mark:   | :heavy_check_mark:

Oh, win != tab, just got it. But in my case:
| Scenario | Clients | TRUE | FALSE
| two tabs | 2 clients | ✔ | :x
| two win | 2 clients | ✔ | :x
| two win | 1 one client | ✔ | ✔
| two tabs | 1 one client | ✔ | ✔
Two windows mean two separate tab in different windows of Chrome (right?). If it's gonna be like - one is in incognito mode, second is in general mode - than results would be differ.

:) i was trying one win in firefox and one chrome, so one more variation to try

@p53 hahaha, yeah for sure. All good then, waiting for the release, thanks!


Add metric extra.bandwidth

Add a new metric called extra.bandwidth with information about the user bandwidth.
The measurement method was extracted from https://www.smashingmagazine.com/2011/11/analyzing-network-characteristics-using-javascript-and-the-dom-part-1/ (as well as the method to measure latency).
However, the original method was changed in the following manner:

Use XMLHttpRequest instead of Image;
Abort the requests that have exceeded its timeout.

The measurement is made using the data of the last request (regardless of whether it failed or not).
Final note: the test is made once every 10 reports, and this configuration is hardcoded.
This could be configurable?

I think configurable 👍

Done! =)


Add an option to force colour output

Ninja will strip all colour from the output if it thinks it isn't running in a terminal. In some situations (e.g. VSCode's build output) I still want colour codes even though it isn't running in a terminal.
There should be an option to override this.

Actually I found the option - set the CLICOLOR_FORCE environment variable.


[Publisher] Publisher app cannot be opened on the Safari browser

On the viewer app, for the window screen share source stream info stats are blank and video Quality Dropdown has only Auto option
An error message on browser console is shown when the publisher app cannot be opened on the Safari browser
SyntaxError: Invalid regular expression: invalid group specifier name
STEPS:

Open the publisher app on Safari browser
App is not loaded, just a blank page is shown.

Int Branch: int-issue-145-multisources
Regression: YES
Environment:
OS: macOS Ventura Version 13.1
Publisher Browser: Safari Version 16.2 (186<IP_ADDRESS>.5)

Verification Status: PASSED
Branch: int-issue-145-multisources
Environment: MAC/Safari
Date: Feb 16, 2023
Notes: Publisher app can be launched on Safari browser.


Accessibility - Statement Conformity audit

Pass the Conformity Audit for the demo app at:
https://la-va11ydette.orange.com/?list=wcag-android&lang=en
And provide the json of the result of the audit in the task #162

le json de la déclaration
statementData _ODS.json.zip

The XML file needed to add the declaration to the application.
orange-design-system.xml.zip
To add this declaration, simply add this library to the application: (see the readme of the library to integrate)
https://gitlab.tech.orange/accessibility-android/accessibility-statement

The XML file is needed to add the declaration to the application.
To add this statement, you should add the library developed for this purpose in the application:
https://gitlab.tech.orange/accessibility-android/accessibility-statement
(see the readme of the library to integrate).
To add this declaration, the ideal is to add an item in the "About" of the application indicating: "Declaration of accessibility" then by clicking on it, to open a new screen presenting the view that is provided in the library.

@B3nz01d @afrahB I just realised that the library used to display the accessibility statement is an internal Orange project on GitLab. If we use that library in ODS, we need to publish the library source code on Github (either on our repository or on a new repository). Unfortunately we can't use it for now.

Accessibility Statement  En version
Xml File
[xml En.zip](https://github.com/Orange-OpenSource/o
Html Folder
HTML.zip
ds-android/files/11064079/xml.En.zip)

Accessibility statement Android.zip


bro amazing work and awesome program but there is just one issue how do i start it?

i did all the ocr and filled all of config
here is my whole cmd history
PowerShell 7.3.4
PS C:\github_repos> git clone https://github.com/AkshatOP/Poketwo-Autocatcher.git
Cloning into 'Poketwo-Autocatcher'...
remote: Enumerating objects: 46, done.
remote: Counting objects: 100% (46/46), done.
remote: Compressing objects: 100% (46/46), done.
remote: Total 46 (delta 19), reused 1 (delta 0), pack-reused 0
Receiving objects: 100% (46/46), 16.35 KiB | 1.82 MiB/s, done.
Resolving deltas: 100% (19/19), done.
PS C:\github_repos> cd .\Poketwo-Autocatcher
PS C:\github_repos\Poketwo-Autocatcher> npm install discord.js-self express ocr-space-api-wrapper
npm WARN deprecated<EMAIL_ADDRESS>no longer supported
added 79 packages in 34s
npm notice
npm notice New minor version of npm available! 9.6.3 -> 9.7.1
npm notice Changelog: https://github.com/npm/cli/releases/tag/v9.7.1
npm notice Run npm install -g<EMAIL_ADDRESS>to update!
npm notice
PS C:\github_repos\Poketwo-Autocatcher> npm install -g<EMAIL_ADDRESS>removed 2 packages, and changed 58 packages in 14s
PS C:\github_repos\Poketwo-Autocatcher> ls
Directory: C:\github_repos\Poketwo-Autocatcher

Mode                 LastWriteTime         Length Name

d----          13-06-2023 08:40 PM                node_modules
-a---          13-06-2023 09:00 PM            273 config.json
-a---          13-06-2023 08:39 PM           4796 index.js
-a---          13-06-2023 08:39 PM           1086 LICENSE
-a---          13-06-2023 08:39 PM           5557 namefix.json
-a---          13-06-2023 08:40 PM          31675 package-lock.json
-a---          13-06-2023 08:40 PM            126 package.json
-a---          13-06-2023 08:39 PM           5116 README.md
PS C:\github_repos\Poketwo-Autocatcher> npm install discord.js-self express ocr-space-api-wrapper
up to date, audited 80 packages in 12s
found 0 vulnerabilities
PS C:\github_repos\Poketwo-Autocatcher> .\index.js
PS C:\github_repos\Poketwo-Autocatcher> npm index.js
Unknown command: "index.js"
To see a list of supported npm commands, run:
npm help
PS C:\github_repos\Poketwo-Autocatcher> npm help
npm
Usage:
npm install        install all the dependencies in your project
npm install   add the  dependency to your project
npm test           run this project's tests
npm run       run the script named
npm  -h   quick help on
npm -l             display usage info for all commands
npm help     search for help on  (in a browser)
npm help npm       more involved overview (in a browser)
All commands:
access, adduser, audit, bugs, cache, ci, completion,
config, dedupe, deprecate, diff, dist-tag, docs, doctor,
edit, exec, explain, explore, find-dupes, fund, get, help,
help-search, hook, init, install, install-ci-test,
install-test, link, ll, login, logout, ls, org, outdated,
owner, pack, ping, pkg, prefix, profile, prune, publish,
query, rebuild, repo, restart, root, run-script, search,
set, shrinkwrap, star, stars, start, stop, team, test,
token, uninstall, unpublish, unstar, update, version, view,
whoami

Specify configs in the ini-formatted file:
C:\Users\psbha.npmrc
or on the command line via: npm  --key=value
More configuration info: npm help config
Configuration fields: npm help 7 config
<EMAIL_ADDRESS>C:\Users\psbha\AppData\Roaming\npm\node_modules\npm
PS C:\github_repos\Poketwo-Autocatcher> npm run index.js
npm ERR! Missing script: "index.js"
npm ERR!
npm ERR! To see a list of scripts, run:
npm ERR!   npm run
npm ERR! A complete log of this run can be found in: C:\Users\psbha\AppData\Local\npm-cache_logs\2023-06-13T15_38_04_587Z-debug-0.log
PS C:\github_repos\Poketwo-Autocatcher> npm run
PS C:\github_repos\Poketwo-Autocatcher> npm install
up to date, audited 80 packages in 1s
found 0 vulnerabilities
PS C:\github_repos\Poketwo-Autocatcher>

what do i do to start the program?


Add support for NVIDIA Shadow Buffers

Shadow buffers were a feature found in GeForce4 Ti hardware, and then sort of vanished soon afterward:
https://www.nvidia.com/en-us/drivers/feature-shadowbuffers/
This is a feature primarily seen in two D3D8 games: Splinter Cell and Splinter Cell: Pandora Tomorrow (mysteriously not on Steam):
https://www.pcgamingwiki.com/wiki/Tom_Clancy's_Splinter_Cell#/media/File:Splinter_Cell_shadow_fix_comparison.png
The only modern implementation I'm aware of is dgVoodoo2, which is proprietary, so I don't have much information beyond the above!

Took a quick look around and this post has a few comparison shots: https://ancientelectronics.wordpress.com/2017/08/02/splinter-cell-pc/
Searching combinations of "splinter cell shadow buffers geforce4" gets some results, YMMV.

Also found some speculation here: https://forum.beyond3d.com/threads/explain-please-shadow-buffers.17504/
Nothing definitive yet, but I'm trying out the game now.

After testing the game, I can confirm that there are no shadows where there should be.

Can also confirm we get results with projector shadows but not shadow buffers. Hmm.

Looking at RenderDoc. Seems like in buffer mode it's sampling a D24S8 texture and using the returned alpha (w) as the shadow value. But we are just getting full white from modern GPUs.
Shadows are drawn as quads overlaid onto surfaces they hit and the volumetrics are a separate draw call and also sample the shadow buffer.
I've also captured it on dgVoodoo2 to see what that does.

Here's the shader that draws shadows on the wall:

Image

Here is what ps_main is doing: (this code is roughly equivalent to the above):

GLSL
void ps_main()
{
    // r3 = color0
    r3 = shader_in[2];

// this is the actual shadow sample itself //

    // get texcoords at shader_in[5] and multiply z by some amount
    r1 = shader_in[5];
    r1.z = r1.z * cb3.m[14].z;

    // get sample at (-1, 0)
    vec4 _77 = r4;
    _77.x = textureOffset(sampler2DShadow(t0, s0), vec3(r1.xy, r1.z), ivec2(-1, 0));
    r4 = _77;

    // get sample at (1, 0)
    vec4 _89 = r4;
    _89.y = textureOffset(sampler2DShadow(t0, s0), vec3(r1.xy, r1.z), ivec2(1, 0));
    r4 = _89;

    // get sample at (0, -1)
    vec4 _100 = r4;
    _100.z = textureOffset(sampler2DShadow(t0, s0), vec3(r1.xy, r1.z), ivec2(0, -1));
    r4 = _100;

    // get sample at (0, 1)
    vec4 _111 = r4;
    _111.w = textureOffset(sampler2DShadow(t0, s0), vec3(r1.xy, r1.z), ivec2(0, 1));
    r4 = _111;

    // get final sample at (0, 0)
    r1 = vec4(texture(sampler2DShadow(t0, s0), vec3(r1.xy, r1.z)));

    // dot the 4 neighbor samples together with some kind of hack?
    vec4 _128 = r4;
    _128.x = dot(r4, uintBitsToFloat(uvec4(1045220557u)));
    r4 = _128;

    // repeat hack for r1
    r1 = fma(r1, uintBitsToFloat(uvec4(1045220557u)), r4.xxxx);

    // set a constant w, (why?)
    vec4 _137 = r1;
    _137.w = uintBitsToFloat(1065353216u);
    r1 = _137;

    // r2 - shadow shape mask, comes from t1, just a white texture, clamped
    r2 = texture(sampler2D(t1, s1), shader_in[6].xy);

    // r1 is shadow data (multiply by r3 to see it)
    // r2 is the mask for the whole area
    // r3 is the shadow intensity (shader_in[2]) i.e. color0
    // r1 * r2 is full intensity shadow
    // r1 * r2 * r3 is the final output
    r0 = r1 * r2;
    r0 *= r3;
    o0 = r0; // final output
}

Obviously, actual NVIDIA hardware may not do exactly this, but it seems like it's pretty close. It looks like bilinear filtering of 1/0 values to get bilinear 2x2 PCF which seems to have been a standard feature and done in one fetch according to this presentation.
It looks like this might be similar to the hack that's documented by Aras here.

In d8vk the VS is passing really big z values into texcoord 0, like 300,000. So that's why we're getting white from the shadow texture.
But in dgVoodoo, the z is multiplied by cb3.m[14].z to get what I assume is NDC depth, which is around 5e-8 and indeed reusing that magic number produces somewhat workable results. I believe it's a component of the projection matrix, but I can't find an equivalent in the constants being passed to either our VS or PS shader.
Also I think the xy of the texcoord is still wrong too somehow even after fixing the z.

I have found the best documentation of this feature here.

The hack dgVoodoo 2 is using with the uintBitsToFloat is simply to divide the 5 samples by 0.25 and set w to 1.0. This is like a 2x2 PCF.
Now I'm not sure if we should use OpImageDrefGather and try to emulate this behavior or if dgVoodoo is just showing off. I suspect hardware at the time couldn't manage 5 bilinear samples per texel very easily. We already get bilinear PCF from sampler2DShadow. But it's possible it was a feature.

OpImageDrefGather doesn't provide bilinear filtering so it doesn't look that great. I've gone ahead and implemented a 2x2 PCF just using 4 regular bilinear taps.

Exactly how is this enabled in the game? If I put v1.0 of d3d8.dll in the Splinter Cell/system/ folder and also put a dxvk.conf there with "d3d8.useShadowBuffers = True" and set (or completely comment out) "ForceShadowMode=1" in SplinterCell.ini then I get no shadows at all in the first level where Lambert walks across the corridor and he is supposed to leave a shadow at the wall.
I have set "dxvk.hud = 1" to see that d8vk is loaded.

You should check the thread with the original fix for more info, traces and even code examples.. https://www.vogons.org/viewtopic.php?f=8&t=41443&start=60

Thanks, this is useful!

dgVoodoo2 now is on github: https://github.com/dege-diosg/dgVoodoo2

dgVoodoo2 now is on github: https://github.com/dege-diosg/dgVoodoo2

Looks to be only the binary and some examples though and not the source?


Safari browser ... can't get pass challenge which I believe has everything correct

Change the Font Size of an Element Challenge result will not let me pass.  Using Safari browser on a MAC and have tried all zoom sizes.

Purr jump eat the grass rip the couch scratched sunbathe, shed everywhere rip the couch sleep in the sink fluffy fur catnip scratched.

Which of the tests are not passing?
Also before posting a Github bug report, remember first to check in the help chat room to verify the issue. :rocket:

Change the Font Size of an Element

On Feb 13, 2016, at 3:09 PM, Jami Gibbs<EMAIL_ADDRESS>wrote:
Which of the tests are not passing?
Also before posting a Github bug report, remember first to check in the help chat room https://gitter.im/FreeCodeCamp/Help to verify the issue.
—
Reply to this email directly or view it on GitHub https://github.com/FreeCodeCamp/FreeCodeCamp/issues/6973#issuecomment-183746226.

So sorry, maybe I wasn't clear entirely clear. What I meant was which of the tests on the left side column are not passing (ie. showing a red "X"):

Reference: Change the Font Size of an Element

My apologies.  Do not add a class attribute to your new p element.

On Feb 13, 2016, at 3:19 PM, Jami Gibbs<EMAIL_ADDRESS>wrote:
So sorry, maybe I wasn't clear entirely clear. What I meant was which of the tests on the left side column are not passing (ie. showing a red "X"):
https://cloud.githubusercontent.com/assets/872479/13029827/89c59fdc-d25c-11e5-9604-c8b0c161f508.png
Reference: Change the Font Size of an Element http://www.freecodecamp.com/challenges/change-the-font-size-of-an-element
—
Reply to this email directly or view it on GitHub https://github.com/FreeCodeCamp/FreeCodeCamp/issues/6973#issuecomment-183747053.

Ah great! So it sounds like this isn't a bug in the challenge but perhaps just a misplacement of a class attribute in your second p element.
Make sure your second p doesn't include a class, like this:

Purr jump eat the grass rip the couch scratched sunbathe, shed everywhere rip the couch sleep in the sink fluffy fur catnip scratched.

If that was the case, you can go ahead and close this issue. :+1:

Neither of my  elements contain a class attribute.

On Feb 13, 2016, at 3:25 PM, Jami Gibbs<EMAIL_ADDRESS>wrote:
Ah great! So it sounds like this isn't a bug in the challenge but perhaps just a misplacement of a class attribute in your second p element.
Make sure your second p doesn't include a class, like this:
Purr jump eat the grass rip the couch scratched sunbathe, shed everywhere rip the couch sleep in the sink fluffy fur catnip scratched.
If that was the case, you can go ahead and close this issue.
https://cloud.githubusercontent.com/assets/872479/13029858/692aeb5a-d25d-11e5-82e7-59a246b20bcf.png
—
Reply to this email directly or view it on GitHub https://github.com/FreeCodeCamp/FreeCodeCamp/issues/6973#issuecomment-183747440.

So then the first paragraph should have the red-text class and the second one shouldn't.

Thanks, Jamie:
Not sure why the transition from that test to the previous one eliminated that style, especially since this step does not ask you to put it in.
It’s all resolved now.
Thank you!
Deb

On Feb 13, 2016, at 3:30 PM, Jami Gibbs<EMAIL_ADDRESS><EMAIL_ADDRESS>wrote:
So then the first paragraph should have the red-text class and the second one shouldn't.
—
Reply to this email directly or view it on GitHub https://github.com/FreeCodeCamp/FreeCodeCamp/issues/6973#issuecomment-183747702.


BGE: Prevent multiple save clicks on entry form

Bug Fix: Fixed a bug that allowed users to make multiple unintended DI entries when spamming the save button. Save button will grey out and be disabled pending save.

Critical Changes
Changes
Issues Closed
New Metadata
Deleted Metadata

**lurch: attach W-031971

Tracking W-031971

@psadie Is there a Github issue which will be resolved by this? If so, please add it under the Issues Fixed header similar to how this one is noted: https://github.com/SalesforceFoundation/Cumulus/pull/4124

@psadie Is there a Github issue which will be resolved by this? If so, please add it under the Issues Fixed header similar to how this one is noted: #4124

Searched through and couldn't find a related issue we could close with this PR this time around

Release note not needed.


feat(module:divider): variant

PR Checklist
Please check if your PR fulfills the following requirements:

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

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Application (the showcase website) / infrastructure changes
[ ] Other... Please describe:

What is the current behavior?
Currently we lack the variant feature of the Divider compoent that Ant Design supports.
What is the new behavior?
Variant is implemented
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information
Since Ant has kept the dahsed option as a prop of the divider component, the nzDashed is also not deleted.

@HyperLife1119
Thank you for checking my PR :)
Your requested changes are done


Discrepency in single-column format with --display=inline vs default (side-by-side)

Forcing single-column formatting using --display=inline has subtle formatting differences for certain changes that would show as single-column anyway with default options.
eg.
$ echo 'int("10", 10)' > a.py
$ echo 'int("10", base=10)' > b.py
$ difft a.py b.py
b.py --- Python
1 int("10", base=10)

$ difft --display=inline a.py b.py
b.py --- Python
1    int("10", 10)
   1 int("10", base=10)

With colour:

The automatic single-column format is a lot more readable in this example. Other examples also cause the forced single-line format to silently drop context lines and widen the readability gap to the default format.
Observed with cargo install version Difftastic 0.56.1 (built with rustc 1.75.0)

Another example, context lines in the middle of the diff are not shown:
$ echo 'print("a", "b", "c")' > a.py
$ echo -e 'print(\n    "a",\n    "b",\n    "c",\n    "d",\n)' > b.py
$ difft a.py b.py
b.py --- Python
1 1 print(
. 2     "a",
. 3     "b",
. 4     "c",
. 5     "d",
. 6 )

$ difft --display=inline a.py b.py
b.py --- Python
1    print("a", "b", "c")
   4     "c",
   5     "d",
   6 )


Refactored WordRange string iteration

The word range lookup used NSString enumeration was a bit awkward to use. Its procedural nature to 'stop' and set captured variables outside of its context made it hard to follow.
 So it comes with a lot for free.
I couldn't get rangeOfCharacter for CharacterSet.whitespacesAndNewlines.inverted to not halt at Emoji. (Could be because some Emoji use 'joiners' which are detected as whitespace because the rangeOfCharacter method doesn't respect composed character sequences?)
I could get a custom character iterator to work, though.

In 05d10ed I reverted the custom loop to use enumerateSubstrings again, but limited to this 1 place, to use 1st part code that maybe contains additional optimizations.


Sponge has problems with executing Minecraft Functions properly

I am currently running

SpongeForge version: spongeforge-1.12.2-2838-7.2.1
Forge version: 3238
Java version: 8
Operating System: x64 Windows 10

Plugins/Mods:
[19:57:48] [Server thread/INFO] [minecraft/DedicatedServer]: Mods (24): Minecraft, Minecraft Coder Pack, Forge Mod Loader, Minecraft Forge, SpongeAPI, Sponge, Armourer's Workshop, Chisels & Bits, CreativeCore, CreativeCoreDummy, CustomNPCs, Dynmap, Fluids++, LegendaryPlus, LittleTiles, LittleTilesCore, MrCrayfish's Furniture Mod, Pixelmon, Pixelmon Trainer Commands, SpongeForge, Thut Core, Thut's Elevators, ThutCore Compat, Wondertrade

sponge plugins
[19:57:55] [Server thread/INFO] [nucleus]: Server ran the command: /sponge plugins
[19:57:55] [Server thread/INFO] [minecraft/DedicatedServer]: Plugins (17): Minecraft, Minecraft Coder Pack, SpongeAPI, Sponge, CarrotShop, CommandSigns Reloaded, GriefPrevention, LuckPerms, Nucleus, PixelHunt, PixelMoney, PixelmonBroadcasts, PixelmonEconomyBridge, SimpleDexRewards, Total Economy, VoxelSniper, WorldEdit

Issue Description
I wrote some minecraft:functions for my "radio" system I implemented with comandblocks. They basically play music according to the carrot_on_a_stick in the left hand and the location the player is right now. However they dont work in sponge. I tested them on mohist, vanilla, forge and singleplayer and they work totally fine. The command even says that the corresponding function commands are executed but nothing happens at all. This needs to be fixed desperately.
The pastebin of my function: https://pastebin.com/4zNefxz7
As I mentioned, it works on my singeplayer/ map / Mohist / Vanilla and Forge but not on sponge...!
I hope I could explain it as good as possible! Im down for further questions : )
Thanks in advance!

Hey thanks for the answer. It makes me really happy that it seems like you guys can fix this problem. I was very sad when it diddnt work like it should on my server and Im looking forward to use this to the fullest potential. However, I have problems with getting something similiar to work as well.
I want to add TrainerBattleMusic with this technique as well but its not going to work.
The music should play whenever someone receives a defined tag!
playsound trainerbattle record @a[tag=TrainerBattleMusic,score_MusicCooldown=0,score_MusicState_min=1] ~ ~ ~ 1000 1 1
scoreboard players set @a[tag=TrainerBattleMusic,score_MusicCooldown=0,score_MusicState_min=1] MusicCooldown 3240
In this case the tag is called TrainerBattleMusic. The first line defines that when some1 has the player tag the music should play and the second line defines the musicooldown. But when someone receives the playertag the music doesnt play at all ...
Is this a similiar problem?
Those 2 commands are in my function as well

It affects all functions.


Urdu language Support

Need local language for urdu speaking community. It will help the local community who does not understand english or other supported languages in the app.

@rparet already added urdu support and waiting for merge,


Material-ui – injectTapEventPlugin()

Where is the correct place to call injectTapEventPlugin() in a next.js based application?

Hey @nic,
I am also interested in this answer. But personally I don't think a next.js application is any different from other React apps.
Personally what I've done is to inject it in the main layout of my app, when component is mounted. Here is the code:
`
import Head                 from 'next/head';
import injectTapEventPlugin from 'react-tap-event-plugin';
import React                from 'React';
class MainLayout extends React.Component {
componentDidMount() {
injectTapEventPlugin();
}
render() {
const { children } = this.props;
return (

My page title

{children}

)
}
}
export default MainLayout;
`
Happy to hear any feedbacks!

@nic Just for your info, there are some issues with Material-UI and other toolkits: #119, #196, #204, #221.

@QuentinDejean Thanks a lot for your interested. I try the follow code:
import React                from 'react';
import Head                 from 'next/head';
import injectTapEventPlugin from 'react-tap-event-plugin';
import MuiThemeProvider     from 'material-ui/styles/MuiThemeProvider';
import getMuiTheme          from 'material-ui/styles/getMuiTheme';
import AppBar               from 'material-ui/AppBar';

const muiTheme = getMuiTheme({ userAgent: false });

export default class extends React.Component {

  componentDidMount() {
    injectTapEventPlugin();
  }

  render() {
    return (
      <MuiThemeProvider muiTheme={muiTheme}>

            <title>My page title</title>
            <meta name="viewport" content="initial-scale=1.0, width=device-width"/>

          <AppBar
            title="Title"
            iconClassNameRight="muidocs-icon-navigation-expand-more"
          />

Page content

      </MuiThemeProvider>
    )
  }
}

And the result is:

After click into the Icon Navigation I get more warnings:

I try to change componentDidMount to componentWillMount but the result is:
{ Error: Invariant Violation: injectTapEventPlugin(): Can only be called once per application lifecycle.

It is recommended to call injectTapEventPlugin() just before you call ReactDOM.render(). If you are using an external library which calls injectTapEventPlugin() itself, please contact the maintainer as it shouldn't be called in library code and should be injected by the application.
	at invariant (/Volumes/Projects/node_modules/react-tap-event-plugin/node_modules/fbjs/lib/invariant.js:39:15)
	at injectTapEventPlugin (/Volumes/Projects/node_modules/react-tap-event-plugin/src/injectTapEventPlugin.js:11:5)
	at _class.componentWillMount (/Volumes/Projects/.next/dist/pages/index.js:66:41)
	at /usr/local/lib/node_modules/next/node_modules/react/lib/ReactCompositeComponent.js:347:23
	at measureLifeCyclePerf (/usr/local/lib/node_modules/next/node_modules/react/lib/ReactCompositeComponent.js:74:12)
	at ReactCompositeComponentWrapper.performInitialMount (/usr/local/lib/node_modules/next/node_modules/react/lib/ReactCompositeComponent.js:346:9)
	at ReactCompositeComponentWrapper.mountComponent (/usr/local/lib/node_modules/next/node_modules/react/lib/ReactCompositeComponent.js:257:21)
	at Object.mountComponent (/usr/local/lib/node_modules/next/node_modules/react/lib/ReactReconciler.js:47:35)
	at ReactCompositeComponentWrapper.performInitialMount (/usr/local/lib/node_modules/next/node_modules/react/lib/ReactCompositeComponent.js:370:34)
	at ReactCompositeComponentWrapper.mountComponent (/usr/local/lib/node_modules/next/node_modules/react/lib/ReactCompositeComponent.js:257:21) framesToPop: 1 }

:(

After click into the Icon Navigation I get more warnings...

@nic This is exactly what is #204 and #221 are about. Material-UI is using react-addons-transition-group, which inlines React into your bundle, so you end up with two Reacts on the same page (one from Next bundle, and one from yours). Try to follow the #221 and see if that will help you with Material-UI as it helped me with React-MD.

@frol Oh!! Now I got it. Thank you so much!! Your PR is very appreciated. I'll try that.  You rock Vlad! :)

Still not quite getting it, similar to above I have a button that turns black and spews errors after clicking. I see the PR but am not sure how to translate for Material UI rather than React-MD? I keep trying but so far no luck.

Same problem here, there's any solution for this?

2.0 is coming and it has all the fixes for these and you will be able to use them like as you are doing with other React apps.

@arunoda I'm testing with the 2.0 beta and still can't make it work, I can't find the right place to put injectTapEventPlugin(). Tried with different options and still seing this error:
Invariant Violation: injectTapEventPlugin(): Can only be called once per application lifecycle.

It is recommended to call injectTapEventPlugin() just before you call ReactDOM.render(). If you are using an external library which calls injectTapEventPlugin() itself, please contact the maintainer as it shouldn't be called in library code and should be injected by the application.
    at invariant (/Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/node_modules/fbjs/lib/invariant.js:38:15)
    at injectTapEventPlugin (/Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/node_modules/react-tap-event-plugin/src/injectTapEventPlugin.js:11:5)
    at Function.getInitialProps (/Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/pages/index.js?entry:24:6)
    at _callee3$ (/Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/next/dist/server/render.js:120:81)
    at tryCatch (/Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/next/node_modules/regenerator-runtime/runtime.js:64:40)
    at GeneratorFunctionPrototype.invoke [as _invoke] (/Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/next/node_modules/regenerator-runtime/runtime.js:355:22)
    at GeneratorFunctionPrototype.prototype.(anonymous function) [as next] (/Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/next/node_modules/regenerator-runtime/runtime.js:116:21)
    at step (/Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/next/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
    at /Users/mauro/Workspace/foodvana/foodvana-enduser-web-next/next/node_modules/babel-runtime/helpers/asyncToGenerator.js:28:13

Any idea in how make it work?
Also, great work, 2.0 looks great!

Read error messages :)

Invariant Violation: injectTapEventPlugin(): Can only be called once per application lifecycle.

Just do this in the top of your file:
import injectTapEventPlugin from 'react-tap-event-plugin'
injectTapEventPlugin()

Thanks a lot for your response @arunoda, really appreciated!
Already tried that and in the first render it works perfectly, but after a hot reload or a transition with a Link, it fails again.
I tried putting it in the top of every Page, also in a parent component I re-use in all pages. But keep failing.

Send me a sample repo. Let's see what we can about this.

@arunoda here I created one nextjs2-materialui-sample
Thanks for your help!

@EehMauro there's a simple fix for this.
Add following content to a file in components/tap_events.js
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();

Then import it inside each of your pages like this:
import '../components/tap_events'

Thanks @arunoda, now it's working perfectly!

Great.

It's not working, after hot reload it fails over and over again.

Tried @arunoda solution but still the same error

@jsantana90 Quick fix (Runs injectTapEventPlugin only on the client):
if (typeof window !== 'undefined') injectTapEventPlugin();

@jsantana90 you can also create a custom document and import the module inside that.
See: https://github.com/zeit/next.js#custom-document

@arunoda I tried that:
https://github.com/GraphQLGuide/guide/blob/repro-tap-plugin/pages/_document.js#L4-L7
On first pageload I get:

and no error in the terminal. After saving a file, I get:
Invariant Violation: injectTapEventPlugin(): Can only be called once per application lifecycle
in the terminal. Repro:
npm run dev
https://github.com/GraphQLGuide/guide/tree/repro-tap-plugin

@ooade your solution works for me, btw, you can wrap in try catch like this:
try {     injectTapEventPlugin(); } catch (e) {     // Do nothing, just preventing error }

@maximblack That would work just as fine. Don't forget to change to multiline comments, else the last bracket gets blown off :smile:

@maximblack , @ooade Thank you!

I tried @ooade's solution, however, it still cause the warning: Can only be called once per application lifecycle when Next.js do the hot reloading.
Finally it works fine after I applied @maximblack's try { injectTapEventPlugin(); } catch(e) { } solution.

Just ran into this. Wanted to just say that I'd love to see some kind of initialization infrastructure in next.js. Having a simple place (not _document.js!) to put server-only and client-only init code would be fantastic. Having hooks that only ran once on the server and client, as well as hooks that allowed for easy decorating of pages, both on the server and client, would be really fantastic.

@arunoda I am still having issues with this. I've been calling it on the top of my file and not having any issues running in dev but as soon as I try to run next build it can't find the module. It seems to have something to do with react-dom

@cyrus-za Could tell how you fixed it?

I think with the above solution it imports correctly without errors but the plugin itself does nothing. Internally it tries to hook into React's event system, but with Next.js this fails silently (does nothing).
I don't think modules that hook into the event system will work with next.js at all


GLES2   Performance.get_monitor() functions do not work on GLES2

Performance.get_monitor() functions do not work on GLES2 in a running scene or in the editor.
Godot version:
Godot v3.1 Alpha Official
OS/device including version:
Windows 8.1 64bit, 8GB AMD FX 6350 6 core
Graphics Chipset
AMD Radeon HD 7700 Series
Memory Size 1024 MB
Radeon Software Version 17.4.4
Issue description:
Performance.get_monitor() functions do not work on GLES2
Steps to reproduce:
Setup a basic scene with Performance.get_monitor functions.
Toggle between GLES3 and GLES2
Minimal reproduction project:
Perf_get_monitor_3.1Alpha .zip

Seems for GLES2   VisualServerRaster::get_render_info(...)  calls
int RasterizerStorageGLES2::get_render_info(VS::RenderInfo p_info) {
return 0;
}
which isn't yet implemented.

This is why information label shows zeros

Seems ok in 3.2.4 beta2, can someone confirm?

Seems fixed as of 3.2.4beta2: