Renaming Suggestion of Method Names to Make Them More Descriptive

Renaming Suggestion of Method Names to Make Them More Descriptive

Description
We have developed a tool (NameSpotter) for identifying non-descriptive method names, and using this tool we find a non-descriptive method name in your repository:
/* Non-descriptive Method Name in src/main/java/net/obvj/agents/util/TimeInterval.java */
public static TimeInterval of (String input)
    {
        int digits = extractFirstDigitGroupFrom(input);
        String timeUnitDescription = extractFirstLetterGroupFrom(input);

        TimeUnit timeUnit = timeUnitDescription.isEmpty() ? TimeUnit.DEFAULT
                : TimeUnit.findByIdentifier(timeUnitDescription);

        return new TimeInterval(digits, timeUnit);
    }

We considered "of" as non-descriptive because it is too generic, and we can not infer the function of this method until we look into the method body or the comments above. We proposed renaming the method name to "parseString2TimeInterval". Consequently, when we look at this method name, we will be informed that this method is written for parsing a String input into a TimeInterval object.
Do you agree with the judgment?

If not, could you please leave your valuable opinion?

If you do agree, the relevant modification has been submitted as a PR, and thanks for your precious time to consider it.

@AnonymousAccount4SE, here are the reasons why your change is not approved:

The suggested name parseString2TimeInterval is redundant: by looking at the method signature, anyone can understand that the method accepts a String and returns a TimeInterval, so there's no point in repeating the parameter and return type in the method name. It just makes the coding mode verbose.
The method contains a Javadoc with some examples of accepted strings. So, your statement that the API users will have to look inside the method to understand what it does is not true. Every good IDE available in the community (e.g.: Eclipse, IntelliJ, etc.) will display the Javadoc when the user rests the mouse on the method name (here's the compiled Javadoc of the TimeInterval class: https://javadoc.io/static/net.obvj/agents/0.3.3/net/obvj/agents/util/TimeInterval.html)
The current method name is inspired by other well-known classes designed by leading programmers of the Java API. Here you have just a few examples:

Duration.of(...)
Instant.of(...)
LocalDateTime.of(...)
Stream.of(...)
Optional.of(...)
CompletableFuture.of(...)

Renaming a public method is not a simple task. Because this project is released on Maven Central, it may be a dependency for other projects too. So you don't just rename the method. Instead, you must deprecate it, and create a new one. That way, other API users will be notified that the old method may be removed soon, without breaking their code.

Good luck!


Annotated xQL Classes

added annotations and some missing properties to _sql/* / _eql/* enpoints.

conflicts resolved.


Apply feature_re to bias too

Fixes #92 - now it's possible to include bias with feature_re with a regexp like (old_regexp|^<BIAS>$)

Current coverage is 96.41% (diff: 85.71%)

Merging #93 into master will decrease coverage by 0.05%

@@             master        #93   diff @@
==========================================
  Files            31         31
  Lines          1447       1451     +4
  Methods           0          0
  Messages          0          0
  Branches        274        276     +2
==========================================
+ Hits           1396       1399     +3
  Misses           27         27
- Partials         24         25     +1

Diff Coverage
File Path

••••••••   85%
eli5/_feature_names.py

Powered by Codecov. Last update e04e5bf...6b0f5dd

Thanks!


Streaming audio and parallel enable recording in dialplan

When we are enabling recording in the dialplan we are not able to send the caller audio streaming, but connection established but after sometime connection got disconnected with 1006 abnormal closure...
In the dialplan we are set record-session..and lua script sending streaming.
Any suggestions please
Note: both the channel call uuid is same...I mean recording and streaming access the same uuid

Any update it will be well and good please!!!!
WSS streaming and recording we can not able to do it parallel!!!

Unfortunately I cannot address every particular use case unless it is actually a bug. Are you sure record_session is causing a conflict? Try removing record_session to make sure streaming is fine and there is no disconnecting. Since you are using lua script to call the API, maybe you can also use uuid_record from the same lua script to record.

Yes after removing the record_session it is working fine...
And also I tried in Lua script to use uuid_record before the streaming started not working.
After then i tried to use uuid_record after the straming started for channel_call_uuid & otherleg_call_uuid its working fine....
Looks like a strange behaiour
Please let me know if you need any freeswitch log i will share you...
Dial plan: once we commented the record-session, streaming is working a-lg and b-leg

If uuid_record after the streaming in lua then
Recording working and B-leg streaming working & and A-leg Streaming working.

right. looks like the right option to start recording after you start the streaming.

Yes correct!!!

Issue resolved

Working fine as we expected


Passing empty string to cp throws internal error

Node version (or tell us if you're using electron or some other framework):
v6.8.0
ShellJS version (the most recent version/Github branch you see the bug on):
0.7.6
Operating system:
Mac OS X
Description of the bug:
Passing empty string to cp command throws an internal error.  Would be much easier to deal with an exception or error return.
ShellJS: internal error
Error: must provide pattern
    at new GlobSync (node_modules/glob/sync.js:31:11)
...
   at node_modules/shelljs/src/common.js:246:22

Example ShellJS command to reproduce the error:
shelljs.cp('', 'dest');

Thank you for the bug report. I think the desired behavior in this case is to just source string(s), even if they're empty. This is what GNU cp does:
$ cp "" dest
cp: cannot stat '': No such file or directory

If any of the source files do not exist, then return a shell error like the above.

@freitagbr sure, that sounds like a reasonable approach. You can fix this inside common. Just don't pass the empty string to globSync.
This can be a unit test on common.expand(). We should probably write tests for the following cases:

common.expand([]): either throw an error or allow it to return [], whichever makes more sense
common.expand(['']): returns ['']
common.expand([5]): either throw an error or return [5], whichever makes more sense


cannot run on HighSierra

I was trying to run Bleno on Mac HighSierra but it doesn't work. I was working before with Sierra. No services shown on LightBlue.
default	21:43:00.463494 +0200	identityservicesd	Continuity stop advertising of type: 12
default	21:43:00.465117 +0200	wirelessproxd	Advert timer expired for client 12 after 2.00 seconds
default	21:43:00.466371 +0200	wirelessproxd	Stop advertising for process identityservicesd (811) of type 12
default	21:43:00.466473 +0200	identityservicesd	Continuity update advertising with data: Advertising request of type 12, priority 4, UseFG 290 (181.25 ms), data <003011f9 1fa70586 c5df78ca ccb1>, connectable 1, options {
}
default	21:43:00.466451 +0200	wirelessproxd	Nothing left to advertise, stopping
default	21:43:00.468017 +0200	wirelessproxd	Tried to update the advertising request interval for process identityservicesd (811), but a client has asked us to stop in the meantime
default	21:43:00.471081 +0200	kernel<PHONE_NUMBER>87 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::forcePowerGated: kPowerStateOn timeout 0ms
default	21:43:00.536149 +0200	kernel<PHONE_NUMBER>49 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::powerStateWillChangeToGated: kPowerStateOn
default	21:43:00.536218 +0200	kernel<PHONE_NUMBER>23 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::setPowerStateGated: kPowerStateSuspended -> kPowerStateOn
default	21:43:00.536261 +0200	kernel<PHONE_NUMBER>70 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::setPowerStateGated: resuming pipes
default	21:43:00.536318 +0200	kernel<PHONE_NUMBER>19 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::forcePowerGated: kPowerStateOn completed with 0x00000000 after 65ms
default	21:43:00.536331 +0200	kernel<PHONE_NUMBER>40 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::powerChangeDone:
default	21:43:00.536395 +0200	kernel<PHONE_NUMBER>98 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::updateIdlePolicyGated: IOUSBHostInterface@2 [<private>] has an idle policy of 500ms
default	21:43:00.536416 +0200	kernel<PHONE_NUMBER>22 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::updateIdlePolicyGated: IOUSBHostInterface@0 [<private>] has an idle policy of 500ms
default	21:43:00.536436 +0200	kernel<PHONE_NUMBER>42 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::updateIdlePolicyGated: IOUSBHostInterface@1 [<private>] has an idle policy of 500ms
default	21:43:00.536454 +0200	kernel<PHONE_NUMBER>63 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::updateIdlePolicyGated: consensus idle policy timeout 500ms
default	21:43:01.578633 +0200	kernel<PHONE_NUMBER>17 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::forcePowerGated: kPowerStateSuspended timeout 1000ms
default	21:43:01.578924 +0200	kernel<PHONE_NUMBER>13 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::powerStateWillChangeToGated: kPowerStateSuspended
default	21:43:01.578971 +0200	kernel<PHONE_NUMBER>59 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::setPowerStateGated: kPowerStateOn -> kPowerStateSuspended
default	21:43:01.578982 +0200	kernel<PHONE_NUMBER>73 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::setPowerStateGated: suspending pipes
default	21:43:01.579083 +0200	kernel<PHONE_NUMBER>72 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::forcePowerGated: allowing power level to float
default	21:43:01.579100 +0200	kernel<PHONE_NUMBER>91 Bluetooth USB Host Controller@14330000: IOUSBHostDevice::forcePowerGated: kPowerStateSuspended completed with 0x00000000 after 0ms
default	21:43:09.948053 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.949102 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.949771 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.950400 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.951137 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.951666 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.952334 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.952742 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.953535 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.955304 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.956218 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.957073 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.957863 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.958966 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.959800 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.961419 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.962761 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:09.964383 +0200	system_profiler	Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
default	21:43:10.322949 +0200	bluetoothd	setStateForConnection CBCentralManagerStatePoweredOn

I see the exact same!

In mac/bindings.js it seems to try to talk to "com.apple.blued" through XPC:
  this._xpcConnection = new XpcConnection('com.apple.blued');
But High Sierra has no running services called "com.apple.blued"
sudo launchctl list | grep bl
           0       com.apple.bluetoothReporter
           0       com.apple.diagnosticextensions.osx.bluetooth.helper
108     0       com.apple.bluetoothd
           0       com.apple.bluetoothaudiod

I changed:
this._xpcConnection = new XpcConnection('com.apple.blued');
to this
this._xpcConnection = new XpcConnection('com.apple.blued');
and this
107 blenoBindings.on('kCBMsgId4', function(args) {
to this
107 blenoBindings.on('kCBMsgId6', function(args) {
in mac/bindings.js and it seems to work

Great thx @nraamat , possible to make a PR?

I might not have the time for the PR - also I am not sure if this is a stable solution

I experience that somethings work and some don't. Probably the name of the bluetooth deamon was not the only thing that changed.
Does anybody know the where to find documentation for XPC to com.apple.bluetoothd

Does this help? https://github.com/sandeepmistry/noble/pull/689/commits

It is heavily related - I just don't know how to get the reference/documentation for needed constants for high sierra

@malikolivier
After installing your modified fork, it still doesn't work. bleno.on('stateChange', function (state) is never called, I'm using macOS 10.13. But I'm very new to Node.JS, I'm not sure if it's correct to use npm install ./ in the downloaded bleno's folder to install the modified local package?
Thanks in advance!

@CocoaBob My fork is not modified. It was actually merged into the main trunk and my contribution was released in 0.4.2. See https://github.com/sandeepmistry/bleno/pull/274
What makes you assume that my fork might work for your specific use case?

@malikolivier Sorry,sorry, sorry! I was trying to mention @lkknguyen but I typed ikk, I thought it was I, then GitHub automatically selected you 😂
I was trying to make it work under High Sierra, and @lkknguyen 's fork is supposed contain the fix, but it doesn't work on my side.

It didn’t work for me yet, sorry couldn’t help you. I was just trying out what nraamat suggested.

Yes, an unfortunately it was only fixing the first of many problems. And I am not able to do the necessary reverse engineering of CoreBluetooth.

+1

This actually seems pretty real. Did anyone get this working?

@lkknguyen try the pr i just submitted #343

@aj-ptw Thanks, still unable to make it work. Is it working with your MacOS now?

@lkknguyen nope. still needs more work i think.

Have anyone got further insights to this?

I can report the same issue in MacOs High Sierra 10.13.

For me on MacOs HighSierra 10.13.1, I changed blenoBindings.on('kCBMsgId6',  to blenoBindings.on('kCBMsgId4',  in lib/mac/bindings.js file

@Terfender in which file?

@aj-ptw mentioned in  lib/mac/bindings.js file. I believe this pull request will solve the issue

@Terfender will changing the lib/mac/bindings.js break the previous version?
So you didnt need to make a new file? Could you PR to this repo with your fix so I can test it!
How did you know to change from a 6 to a 4?
Thanks!

@aj-ptw , I am kinda naive when it comes to create PR on github, I created a new branch. PR here, and my mac can pickup stateChange now. However, it doesn't pickup advertisingStart event. Looks like kCBMsgId16 needs to change? I have no idea what these IDs are, but I will investigate and see if I come up with something.
I knew about changeing the ID from 6 to 4 from this comment.

Please test https://github.com/sandeepmistry/bleno/pull/360


Bug/missing feature when seeking back

Describe the bug
When i try to search back the OSD message is wrong. while in the original mpv android it's ok.
To Reproduce
Steps to reproduce the behavior:

Go to 'file picker'
Click on 'the file'
Play the video
try to seek back

Expected behavior
Display this OSD message
--00:06
[15:11].
Actual behavior
Displays the wrong osd msg
+00:00
[15:11]
Screenshots
Original mpv-android :

mpvKt :

Additional info (please complete the following information):

Device: Redmi note 11d
Android version: 13
App Version : Nightly 0.1.5-158

Additional context
Add any other context about the problem here.

Looks ok to me.

i am on release 0.1.5

Yep, i've made a regression, will be swiftly fixed


Added support for nav

@aryehraber Hold on for a minute.. forgot to update the docs

@aryehraber Ready to be reviewed

Hey @makkinga, thanks for this!
I haven't been able to do a test run yet, but I noticed a formatting change that I'm not super keen on. I prefer follow the standard of adding a space after using the not operator (!), eg:
if (! $this->someMethod()) {
    //
}

I usually let little things like this slide if it's 1-2 methods, but since (presumably) PHPStorm auto-corrected this I'd prefer restore if that's ok? I can also merge it in and fix it up myself, no problemo, but I would imagine PHPStorm is just gonna do it again next time 😅

No problem.. I tought PSR-2 did that but cant find any rule for this.. I'll have it updated

Hey @makkinga, I've left this one pending as it seems to also hold your Taxonomy PR code (which broke other parts of Fetch, so I had to revert earlier this week). Or is that all fixed in this PR?

Oh.. I did test it but didn't see anything that broke.. I can remove the taxonomy code from this PR and make a new one for that.. can you tell me how to reproduce the issue?

It seems any Fetch call that returns a collection/array of data throws an exception (eg: Collections and Pages).
If you download and install v4.3 and then Fetch a Collection (eg: /!/Fetch/collection/blog), I get the following error:

It does indeed.. removed it from this PR though and that fixed it. I'll have a look into the issue and make you a new PR for the taxonomies

@aryehraber found the issue.. and I did fix that before.
row 529 of Fetch.php should be
return $this->goDeep($value);

instead of
return $this->goDeep([$key => $value]);

Closing for now, please see: https://github.com/aryehraber/statamic-fetch/pull/37#issuecomment-443166272


Locale is lost on navigation

Environment

Operating System: Linux
Node Version:     v16.14.2
Nuxt Version:     3.4.3
Nitro Version:    2.3.3
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      modules, i18n
Runtime Modules<EMAIL_ADDRESS>Build Modules:    -

Reproduction
https://stackblitz.com/edit/github-zwtg8a?file=pages/index.vue
Describe the bug
Locale is not preserved when navigating between pages.
Reproduction:

Switch locale to "fr" by clicking button "fr".
Text changes from "Welcome" to "Bienvenue".
Click on link "Page2".

Expected: Text remains "Bienvenue" and locale remains "fr".
Actual: Text reverts to "Welcome" and locale switches back to "en".
Additional context
No response
Logs
No response

You need to use localePath() inside the nuxt-link:
<NuxtLink :to="localePath('/second')">Page2</NuxtLink>
You can read about this in the documentation here

I don't want to localize my URLs.
The documentation says "You can localize URL path with using useLocalePath."
Are you saying, localizing URLs is a must if I want to use this module? (Then I would suggest this as a potential improvement...)

localePath() only adds prefixes to your links URL (based on what strategy you've chosen)
so <NuxtLink :to="localePath('/second')">Page2</NuxtLink>
will be rendered to
Page2
or
Page2
It does not translate your URLs

That's understood :)
Still, I don't want to localize the URLs, even with a prefix.

If you don't want prefixes in your links then set the strategy to no_prefix in your i18n config
But you need cookies to keep track of current local by setting up i18n.detectBrowserLanguage  in the nuxt.config.ts file
For a more detailed explanation check the browser-language-detection docs

Hooray 🎆🎉 Thanks :+1:
(Maybe that would be a sensible default to allow progressive use of i18n.)


Can you add IMPORTRANGE manual update?

Hi! I have found method with F12+Chrome called SYNO.Office.Sheet.Snapshot. It is working when updating links between sheets in Synology, running IMPORTRANGE function. Can we repeat this manually with API call?

I didn't get the context of this usage. Could you provide more information on the details?


Failed to load .NET runtime

Godot version
Godot Engine v4.1.1.stable.mono.official.bd6af8e0e - https://godotengine.org OpenGL API 3.3.0 - Build <IP_ADDRESS>4 - Compatibility - Using Device: Intel - Intel(R) UHD Graphics
System information
Runtime Environment:  OS Name:     Windows  OS Version:  10.0.19045  OS Platform: Windows  RID:         win10-x64  Base Path:   C:\Program Files\dotnet\sdk\7.0.400\
Issue description
I have been using the non-mono version of Godot (including writing a gdExtension in C++) without issue.  I wanted to try the mono version and am unable to run the executable.  I have VS Community 2022 installed, which updates my .NET SDK periodically.  I'm not trying to build the Godot engine.  Just trying to use the editor and load and run data sets.
ERROR: hostfxr_initialize_for_runtime_config failed with code: -2147450733
   at: (modules/mono/mono_gd/gd_mono.cpp:200)
ERROR: .NET: Failed to load compatible .NET runtime
   at: (modules/mono/mono_gd/gd_mono.cpp:277)
ERROR: Parameter "godot_plugins_initialize" is null.
   at: initialize (modules/mono/mono_gd/gd_mono.cpp:400)

I saw several related issues and I tried some of the steps that others have, but nothing so far has worked.  Here is the output from 'dotnet --info':
.NET SDK:
 Version:   7.0.400
 Commit:    73bf45718d

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.19045
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\7.0.400\

Host:
  Version:      7.0.10
  Architecture: x64
  Commit:       a6dbb800a4

.NET SDKs installed:
  7.0.400 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 3.1.23 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.21 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.10 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 3.1.23 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.14 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.16 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.18 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.20 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.21 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 6.0.21 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.10 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
  x86   [C:\Program Files (x86)\dotnet]
    registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
  DOTNET_ROOT       [C:\Program Files\dotnet]

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download

Steps to reproduce

Download the binary from the Godot site.
Execute it.

Minimal reproduction project
N/A

I'm sorry.  I failed to extract the GodotSharp folder.


Query grouping not working for HAVING clause

Query grouping is only working for WHERE clause. it's not working for HAVING clause.
My question is why you guys introduced HAVING clause related methods like $builder->having(). whats the point?
query grouping, like with having clause any of these things not working for having clause. only for where clause.
Every time I tried to do something with this framework I hit a big wall. I was thought these prolems will get fixed in v4. but its looks like its same as v3.x.
I tried to contribute and fix these issues. but that narfbg guy never wanted to things get fix.
https://github.com/bcit-ci/CodeIgniter/pull/5643

Sounds like you guys were working toward a solution for a while, then it got abandoned.
No worries, though, as @michalsn got your back this time.


Using "with" in conjunction with .Exif produces runtime error for PNG images

What version of Hugo are you using (hugo version)?

$ hugo version
Hugo Static Site Generator v0.76.0-DEV/extended linux/amd64 BuildDate: unknow

Does this issue reproduce with the latest release?
Yes.
Background
The documentation and this forum topic suggest using with to avoid errors when attempting to read EXIF data while ranging through a directory of images that contains one or more PNG files. Hugo's ability to read EXIF data is limited to the JPEG and TIFF formats.
Problem
Using this approach results in "error calling Exif: runtime error: invalid memory address or nil pointer dereference."
To reproduce the problem:
I will post a minimal failing example shortly.

See my comment in the forum.

The nested with does not seem to be working either.  Minimal failing example:
git clone --single-branch -b hugo-github-issue-7688 https://github.com/jmooring/hugo-testing hugo-github-issue-7688
cd hugo-github-issue-7688
hugo server

Pushed minimal failing example again to fix comment syntax.

OK, a PNG image, yes then I think I understand.


IS this compatible with React Hooks?

Hello I tried to implement this in React Hooks and it hasn't worked. Is this compatible with React Hooks.

Yes. I have used them with hooks and it is perfectly fine to use with it.


Create Windows build

Related: https://github.com/brendan-ward/pyogrio/issues/3#issuecomment-788209586

Closed by #7


Remove label initializers for cloud independent persistent volumes

What this PR does / why we need it:
This PR removes PV label initializers for cloud independent persistent volumes. This is necessary since the K8s Cloud Controller Manager crashes by accessing cloud specific properties of a persistent volume that are nil, causing a runtime panic (see https://github.com/kubernetes/kubernetes/issues/68996).
Special notes for your reviewer:
Release note:

Label initializers for cloud independent persistent volumes are automatically removed via the Shoot Care operation, temporarily mitigating a runtime panic that would otherwise happen in the Cloud Controller Manager.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

LGTM after fixing the errors reported by concourse.


purescript bump

Strange error.

My fault. nox-review is broken here.

Note that we have the latest version of purescript as haskell-ng.packages.ghc784.purescript already.
GHC 7.8.4 cannot compile it, though, because the package depends on the latest version of transformers. That is a core library of GHC, so it cannnot be updated. Upstream should probably use transformers-compat instead.

@peti That makes sense that it would be in haskellng.
I guess the main trouble is that nox does not list the packages in haskell-ng, so I keep defaulting to the packages in haskellPackages on occasion. Since haskellPackages is doomed to be deprecated, should we just close the pull?

Personally, I'd prefer people to switch to the NG package set ASAP, so, yeah, let's close this PR.


Style/main page

Why is this pull request needed?
This pull request is needed because we want our main page to look good
What does this pull request change?
Aligns main page to sketches. Since some features are missing, not everything is perfect yet, but this gets us at least halfway there
Issues related to this change:
Closes #77

Would be nice to see this with a rebase so the tables are generated when clicking run.


Two Rotary-Encoders

I want to have two encoders in one script. I assumed it would work like this:
#include <Arduino.h>
#include <BasicEncoder.h>
#include <TimerOne.h>

BasicEncoder encoder(8, 9);
BasicEncoder encoder2(10, 11);

void timer_service() {
  encoder.service();
  encoder2.service();
}

void setup() {
  Serial.begin(230400);
  Serial.println("Starting..");
  Timer1.initialize(1000);
  Timer1.attachInterrupt(timer_service);
}

void loop() {
  int encoder_change = encoder.get_change();
  if (encoder_change) {
    Serial.print("Encoder 1: "); Serial.println(encoder.get_count());
  }
  int encoder2_change = encoder2.get_change();
  if (encoder2_change) {
    Serial.print("Encoder 2: "); Serial.println(encoder2.get_count());
  }
}

However, when I use this code, both values will change when I turn any of the rotary-encoders, and sometimes they enter a feedback-loop where both of the values will change (equally) endlessly.
I am really bad at Arduino/C, so am I doing something obvious wrong, or is the error somewhere else than on my side here?

Ah, I see that you use a static variable to keep the pin state - https://github.com/micromouseonline/BasicEncoder/blob/5b25c665327a0b0ee2197c2d3ee56c0515e40e53/BasicEncoder.h#L62. I see that you write about doing this in the Readme, but I still do not understand what the benefit of this being a static variable is. Is there any reason against using an instance variable, setting it to -1 before initializing it, and only set it if it's -1?  As far as I see, that would do just the same thing but the state wouldn't be shared across instances...?

Thank you.
I can't think why I would have left it like that but you are quite right of course. The static previous_change variable is not good.
You can have multiple encoders if you make these changes. (I am without good internet access just now. I you wanted to make a pull request I can review that or it will be a few days before I can update the repo)

The sevice method should become:

 void service() {
   int8_t state_now = pin_state();
   state_now ^= state_now >> 1;  // two bit gray-to-binary
   int8_t difference = m_previous_state - state_now;
   // bit 1 has the direction, bit 0 is set if changeed
   if (difference & 1) {
     m_previous_state = state_now;
     int delta = (difference & 2) - 1;
     if (m_reversed) {
       delta = -delta;
     }
     m_change += delta;
     m_steps += delta;
   }
 }

add a new private property to keep track of changes to give this:

 private:
  int8_t m_pin_a = 0;
  int8_t m_pin_b = 0;
  uint8_t m_pin_active = LOW;
  uint8_t m_steps_per_count = 4;
  bool m_reversed = false;
  int8_t m_previous_state = 0;
  volatile int m_change = 0;
  int m_steps = 0;

Update the constructor to initialise the state tracker:

BasicEncoder(int8_t pinA, int8_t pinB, uint8_t active_state = LOW, uint8_t steps = 4)
     : m_pin_a(pinA), m_pin_b(pinB), m_pin_active(active_state), m_steps_per_count(steps) {
   pinMode(pinA, INPUT_PULLUP);
   pinMode(pinB, INPUT_PULLUP);
   m_change = 0;
   m_previous_state = pin_state();
 }

I think that is sufficient and I just tested with two encoders on pins (10,11) and (2,3).

I have updated the library now to V1.1.0 which should support multiple encoders. Please re-open this issue if there is a problem or a new issue if that suits you.
Thank you for bringing this up.


Add icon for missing currencies

Is it possible to create a special icon for currencies that do not have their own icon yet? Like a question mark, and that it can be reached with a class like "missing".
In this way, if I look for an image in my app, and its missing, i add the "missing" class, to show something instead of a broken image link.

We have that actually: https://github.com/atomiclabs/cryptocurrency-icons/blob/master/svg/color/generic.svg We just forgot to document it.

Great, thanks for your fast reply!


Does the Security Reader role permit read permission into some of the overlapping data source and services, such as OMS, Log Analytics?

I need granular permissions to allow a “first responder” to see the alerts, filter them and escalate the legitimate threats.
I need a role that permits, also view permissions of the unified audit log.

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

ID: 8c61e7b5-619a-fbd4-c7de-a1d04a33e61f
Version Independent ID: c35c73d4-42d5-eb01-bb54-6c9c2ad9377a
Content: Permissions in Azure Security Center
Content Source: articles/security-center/security-center-permissions.md
Service: security-center
GitHub Login: @TerryLanfear
Microsoft Alias: terrylan

@ajhstn Thanks for your feedback! We will investigate and update as appropriate.

@ajhstn For audit logs and other Azure AD sign-in reports you can use Security Reader role. For OMS and Log analytics you can assign "Log Analytics Reader" access to the user.

@ajhstn We will now proceed to close this thread. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


Courses page

Search bar

To search for particular course / topic

Grid of all courses with thumbnail

button - learn more which takes to [[parti-course page]]
button - to add to favourite

Option to filter / sort

Filter by Topic
Filter by creator ( if there's gonna be more teachers )
Filter by length
Filter by rating
Filter by Level ( beginner, advanced )

Custom course list (only for signed in)

Option to create custom user list like udemy's wishlist - Panel
Option to add courses to group similar courses according to user - Panel
Archived Lists - Panel

Favourite course list (only for signed in)

Option in grid to favourite course

contact us

CC

I would like to work on this issue.

I think we have to split all the sections of course page into different components using react.js . That is what Kunal was saying If I am not wrong.
and for custom code list and fav list we need the access for the database to check user if they are signed in or not.
If you don't mind can I handle this issue.

Hi, @SoulNinja-dev  I would like to work on this issue.


Help me

i'm a don't understand the program, how to use?

Hi, look the README.md of Project, will have a gif teaching how to use.


Archival with Slack

Figure out a way to archive all links and files from Slack into Drive or an updated archive.html.

Slack-to-RSS is live, but iffy with files and furled links. Uses Slack API token to access Slack directly.
Downloaded archives in JSON are clear, but manual, snapshot instead of live. One .json for each day.

maybe we should use scrollback.io which has public archives by default.

hm, maybe scrollback doesn't have archives the way i'd like them to.

Alright, I have not arrived at a solution to this problem in either direction. http://stackoverflow.com/questions/32907767/can-i-have-a-recursive-javascript-function-inside-a-getjson-function for the .json approach.


python3.8 support

I am trying to install tellurium using pip.
When I run pip install tellurium I get the following error message:
ERROR: Could not find a version that satisfies the requirement tecombine>=0.2.2 (from tellurium) (from versions: none)
ERROR: No matching distribution found for tecombine>=0.2.2 (from tellurium)
I tried downgrading the version of tellurium or installing these missing requirements by hand but they are not available.
Adding python 3.8 support would be great.

We don’t currently support python 3.8 but we are working on it. 3.7 or 3.6
are ok.
Herbert Sauro
On Wed, Apr 29, 2020 at 3:36 AM Famke Bäuerle<EMAIL_ADDRESS>wrote:

I am trying to install tellurium using pip.
When I run pip install tellurium I get the following error message:
ERROR: Could not find a version that satisfies the requirement
tecombine>=0.2.2 (from tellurium) (from versions: none) ERROR: No matching
distribution found for tecombine>=0.2.2 (from tellurium)
I tried downgrading the version of tellurium or installing these missing
requirements by hand but they are not available.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sys-bio/tellurium/issues/454, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIBSDQQMM25YDNXEM4NLW3RO77IDANCNFSM4MTTIVTA
.

--
Herbert Sauro, Professor
University of Washington, Bioengineering
206-685-2119, www.sys-bio.org
<EMAIL_ADDRESS>Books: http://books.analogmachine.org/

I just installed tellurium using pip in a conda environment with python version 3.8.5. Things seem to be working. Is python 3.8 now supported?
-Dan

it should, I use python 3.8.6 all the time.
Herbert
On Thu, Mar 25, 2021 at 1:35 PM danolson1 @.***> wrote:

I just installed tellurium using pip in a conda environment with python
version 3.8.5. Things seem to be working. Is python 3.8 now supported?
-Dan
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/sys-bio/tellurium/issues/454#issuecomment-807437548,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIBSDTJ7UDEN63SUB6SFHDTFOM77ANCNFSM4MTTIVTA
.

--
Herbert Sauro, Professor
University of Washington, Bioengineering
206-685-2119, www.sys-bio.org
@.***
Books: http://books.analogmachine.org/

We actually support python 3.9, even, so this issue can be closed.  Thanks for bringing it up!

You may want to update the documentation here, which says that only python versions 2.7, 3.4, 3.5, and 3.6 are supported.
https://tellurium.readthedocs.io/en/latest/installation.html

You’re right, these need to be changed.
Thanks for letting us know.
Herbert
On Thu, Mar 25, 2021 at 5:51 PM danolson1 @.***> wrote:

You may want to update the documentation here, which says that only python
versions 2.7, 3.4, 3.5, and 3.6 are supported.
https://tellurium.readthedocs.io/en/latest/installation.html
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/sys-bio/tellurium/issues/454#issuecomment-807845303,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIBSDRA4OE32VXWA5M62ULTFPK5TANCNFSM4MTTIVTA
.

--
Herbert Sauro, Professor
University of Washington, Bioengineering
206-685-2119, www.sys-bio.org
@.***
Books: http://books.analogmachine.org/


Sending 2 texture to Fragment Shader using PIXI

Hello ! :)
I come here today because i have a lot of trouble trying to pass 2 textures to my fragment shader... I begin in PIXI AND in Shader so maybe i'm just doing something wrong :/ ...
I looked a lot on every post in here to try help me but i never understand you're answear so i dont know how to fix my code for it to work.
This is my Main.js :
var height = 500;
var renderer = new PIXI.autoDetectRenderer();
renderer.autoResize = true;
renderer.resize(width, height)
document.body.appendChild(renderer.view);

var stage = new PIXI.Container();

// smoke shader
var uniforms = {};
uniforms.u_resolution = { type: 'v2', value: { x: width, y: height}};
uniforms.u_screen = { type: 'v2', value: { x: window.innerWidth, y: window.innerHeight}};
uniforms.u_mouseX_norm = { type: 'f', value: 0.0};
uniforms.u_mouseY_norm = { type: 'f', value: 0.0};
uniforms.u_mouseY = { type: 'f', value: 0.0};
uniforms.u_time = {type: '1f',value: 0.0};
uniforms.posY = {type: 'f', value: 0.0};
uniforms.lineHeight = {type: 'f', value: 5.0};
var mapTexture = PIXI.Sprite.fromImage("http://i.imgur.com/2yYayZk.png");
mapTexture.texture.baseTexture.wrapMode = PIXI.WRAP_MODES.REPEAT;
uniforms.textureMap = {type: "sampler", value: mapTexture};

var shaderCode = document.getElementById( 'fragShader' ).innerHTML
var smokeShader = new PIXI.Filter('',shaderCode, uniforms);
smokeShader.needAlphaBlending = true;
// var displacementTexture = PIXI.Sprite.fromImage("http://i.imgur.com/2yYayZk.png");
// displacementTexture.texture.baseTexture.wrapMode = PIXI.WRAP_MODES.REPEAT;
// var displacementFilter = new PIXI.filters.DisplacementFilter(displacementTexture);

var bg = PIXI.Sprite.fromImage("img/Lge_1600.jpg");
bg.width = width - 100;
bg.height = height - 100;
bg.x = (width/2) - (bg.width/2);
bg.y = (height/2) - (bg.height/2);
stage.addChild(bg);

stage.filters = [smokeShader];

animate()

var count = 0;
var lineTimer = 10;
var positionY = 0;
var lineHeight = 1.0;

function resetUniform(uniforms) {
	count = 0;
	lineTimer = 10;
	positionY = 0;
	lineHeight = 1.0;
	uniforms.posY = {type: 'f', value: 0.0};
}

function animate() {

    count+=0.01;
    smokeShader.uniforms.u_time = count;

	smokeShader.uniforms.posY = positionY;
	var mouseX = renderer.plugins.interaction.activeInteractionData.MOUSE.global.x;
	var mouseY = renderer.plugins.interaction.activeInteractionData.MOUSE.global.y;
	var normMouse = {x: mouseX/width, y: 1.0 - mouseY/height};
	smokeShader.uniforms.u_mouseX_norm = normMouse.x;
	smokeShader.uniforms.u_mouseY_norm = normMouse.y;
	smokeShader.uniforms.u_mouseY = smokeShader.uniforms.u_resolution.y - mouseY;

	var displacement = 0.3;
	// displacementTexture.worldTransform.tx += displacement;
	// displacementTexture.worldTransform.ty -= displacement;

    // this is the main render call that makes pixi draw your container and its children.
    renderer.render(stage);

    // start the timer for the next animation loop
    requestAnimationFrame(animate);
}

$(function() {
	var imgTab = [
		"img/Lge_1600.jpg",
		"img/YouthChallenge_1600.jpg"
	];
	var imgIndex = 0;
	$("canvas").bind("click", function() {
		imgIndex += 1;
		if(imgIndex > imgTab.length-1) imgIndex = 0;
		var imgNext = imgIndex + 1;
		if(imgNext > imgTab.length-1) imgNext = 0;
		bg.setTexture(PIXI.Texture.fromImage(imgTab[imgIndex]));
		smokeShader.uniforms.textureMap = PIXI.Sprite.fromImage(imgTab[imgNext]);
	})
});

And my Fragment shader :
            #define TWO_PI 6.28318530718
            precision mediump float;
            uniform vec4 filterClamp;

            uniform vec2 u_resolution;
            uniform vec2 u_screen;
            uniform float u_mouseX_norm;
            uniform float u_mouseY_norm;
            uniform float u_mouseY;
            uniform float u_time;

            varying vec2          vFilterCoord;
            varying vec2          vTextureCoord;
            uniform sampler2D     uSampler;
            uniform sampler2D     textureMap;

            uniform float          posY;
            uniform float          lineHeight;

            float rand(vec2 co){
                return fract(sin(dot(co.xy ,vec2(12.9898,78.233))) * 43758.5453);
            }

            vec4 gray(vec4 texture) {
                return vec4(dot(texture, vec4(0.1, 0.59, 0.2, 0.0)));
            }

            void main() {
                float bug = 0.0;
                float d = 0.0;
                vec2 st = gl_FragCoord.xy/u_resolution.xy;
                vec4 pixelMap = texture2D(textureMap, vFilterCoord);
                vec4 pixel = texture2D(uSampler, vTextureCoord);
                vec4 pixelReturn = vec4(0.0);

                if(pixel == pixelMap) {
                    bug = 1.0;
                }

                pixelReturn = mix(gray(pixel), pixelMap, clamp(u_mouseX_norm, 0.0, 1.0));
                pixelReturn.r += bug;

                // float alpha = clamp(u_mouseY_norm, 0.0, 1.0);
                // if(gl_FragCoord.y >= u_mouseY) {
                //     alpha = 0.0;
                // }
                // pixelReturn = vec4(pixelReturn.rgb * alpha, alpha);

                gl_FragColor = pixelReturn;
            }

My pixel render my picture like i want, but my second texture just do black pixel everywhere.
It might be a vFilterCoord problem, but i just saw that on internet without understanding how to pass it from my main.js, or how to be sure that the coordinates are good for my second texture.
Thank you in advance, and good job for PIXI :)

Can you put it into fiddle please? https://fiddle.jshell.net . We're working on our own pixi playground later :)
I certainly can help you, but a bit later . Have you read https://github.com/pixijs/pixi.js/wiki/v4-Creating-Filters ?

Thx for your answer :)
Here is my fiddle !
https://fiddle.jshell.net/1z5wv9xt/
No, but i'm doing it now thanks ;)

I havent looked at shader yet, but there are different ways to manage second texture, whether we need customize position or not. Sometimes its better to use renderer plugin approach instead: https://github.com/pixijs/pixi-plugin-example
It doesnt have all those coordinates problems.

I've also saw that you mistook Sprite input as Texture input. Sprite cant be input for shader, you have to make same tricks as in DisplacementFilter to allow that, and it has to be added to stage and positioned properly.

Thanks again :)
I'm looking to use mapped matrix like it said in the post you send me first.
I did everything like in DisplacementShader, trying to use vFilterCoord to work and i got an error in my main.js.
This is my error
Uncaught TypeError: Cannot read property 'calculateSpriteMatrix' of undefined
    at window.onload ((index):80)

I updated my jsFiddle for you to see.

Thank you, I'll look at it.

Closing due to inactivity. Please re-open if needed :)


Multilanguage file/folder problem

In the configuration file one can make its documentation multi language, but I can't find how to add non-English pages/directories as it will yield a Page Not Found if I put a necessary accented character into the name of the page/folder. If there is no workaround for this I find the multi language option quite a bit misleading.
Is there a workaround for folders/pages with accents?

Look at it https://github.com/justinwalsh/daux.io/pull/286. May be it can help you.

I will also look into this


Minor changes to adjust to API spec.

I think those aren't relevant enough to grant each its own pull request.

LGTM

LGTM


lib/cmsis_rtos_v1: Check for mutex owner in cmsis

Check for the mutex owner in the cmsis layer itself while releasing.
Fixes #9574.
Signed-off-by: Rajavardhan Gundi<EMAIL_ADDRESS>

@pswarnak : Addressed your comments.


Nonblock without exception

Related to #139 .
Should boost performance, as exception handling is a quite expensive VM operation.
Left support for ruby 2.0.0, although the ball is on someone else to drop it.

@TiagoCardoso1983 are there benchmarks available? I'm curious to see some

@digitalextremist not for celluloid-io, but maybe @tarcieri has some, as the project README claims some numbers comparing it to eventmachine and node.js.

And then I looked at the benchmarks directory.... :)
# master
Calculating -------------------------------------
               spawn       154 i/100ms
               calls       415 i/100ms
         async calls       165 i/100ms
-------------------------------------------------
               spawn     1607.1 (±4.4%) i/s -       8162 in   5.088789s
               calls     4123.4 (±14.7%) i/s -      20335 in   5.027527s
         async calls     8537.5 (±17.2%) i/s -      41415 in   5.012115s

#nonblock without exceptions
Calculating -------------------------------------
               spawn       155 i/100ms
               calls       446 i/100ms
         async calls       173 i/100ms
-------------------------------------------------
               spawn     1650.4 (±7.1%) i/s -       8215 in   5.004736s
               calls     4059.4 (±9.4%) i/s -      20516 in   5.094898s
         async calls     8781.6 (±14.8%) i/s -      42904 in   5.001161s

There is improvement, although I was expecting more.

Then I looked at the benchmark file, and it's not doing any IO. Maybe we better wait for @tarcieri to answer.

I think the performance implications are going to vary widely depending on which Ruby VM you're on. Exceptional async I/O used to create a new exception object and mix IO::WaitReadable/WaitWritable into the instance on MRI 1.9.3/2.0, which busts the method cache. This was fixed in later versions, but these are also the versions that support this feature.
I don't have hard numbers.

actually I was wrong, celluloid-io doesn't have any benchmarks, reel does. @digitalextremist , it's your house, right?

The Reel benchmarks are outdated badly if not irrelevant, unfortunately :-1:

The traditional expectation that exception handling is expensive is true in many compiled languages since everything else is really fast, but in Ruby that may not hold true.

it is true, and by the reasons stated before. check performance difference between raise/resque and throw/catch, for example. This can be indeed a huge performance boost for IO scenarios.

@ioquatix the situation was actually a lot more dire than that in MRI for quite awhile, as the exceptions generated for EAGAIN events in the async I/O APIs mixed a module into the exception instance. In addition to creating a new metaclass each time an exception is thrown (allocating even more memory and increasing GC pressure that much more) this also busts the method cache, and in the versions of MRI that did this MRI only has a single global method cache. This results in the entire application running much slower because the class hierarchy changes each time one of these exceptions is thrown. It's pretty much the same thing I was describing in this blog post:
https://tonyarcieri.com/dci-in-ruby-is-completely-broken
I believe in 2.2 there are now special exception classes which already have IO::WaitReadable and IO::WaitWritable mixed in so that no longer happens (this is exactly what JRuby and Rubinius were already doing). Using exception: false at least avoids allocating objects for the exception and collecting the stack trace (as many more objects).

@tarcieri sounds like the whole thing is over engineered up the wazoo, your blog was informative :)

When handled in UDPSocket class, will probably solve https://github.com/celluloid/celluloid-io/issues/156

Just checked the documentation, it seems that the same usage of exceptions doesn't apply there...

Wrong again, apparently support was added in ruby 2.3.0: http://docs.ruby-lang.org/en/2.3.0/UDPSocket.html

is this good to merge? or is the build an artifact coming from celluloid behaving bad?

I don't think so. It doesn't look complete. No where are you actually passing :exception => false to a read_nonblock or write_nonblock call...

ups, completely overlooked.

better?

better? It seems that the default for ruby 2.1+ is still exceptionless. Isn't it the purpose? Because I don't see otherwise the condition to be used. Should I test if I'm inside an actor and then switch to exceptionless mode?

FWIW, we've received reports of problems in http.rb's timeout implementation which this PR is copypasta'd from, so I think there's probably some more work needed here:
https://github.com/httprb/http/issues/298#issuecomment-173069847

@tarcieri are you sure that it's about the exception handling? The problem in http may arise also from the io/wait API usage in favour of IO.select, as one favours poll() syscall over select(), and maybe the interval handling is different (?). possible guess.

@TiagoCardoso1983 we haven't figured out the exact cause yet

@tarcieri I just checked you reverted to using IO.select in http.rb . So, what is the gist? Unusable with timeouts? Funky with fd's other than network sockets? I had complaints on another project where using io/wait calls for IO.pipe fds has a different behaviour than using them with IO.select.

@TiagoCardoso1983 see this issue:
https://github.com/httprb/http/issues/298
Switching from IO.select to io/wait has an indeterminate difference with respect to timeout behavior. They are not semantically equivalent.
I've been meaning to dig deeper into this issue but haven't yet. The result was a complete breakage of timeout handling.

I see. See https://github.com/net-ssh/net-ssh/pull/303#issuecomment-192680848 for what I meant with API incompatibility. As I was investigating, io/wait uses poll API in Linux and falls back to select in MacOS and Windows, but I suspect that the calls semantics are different. A bit unfortunate IMO.

I'd like to pull an strace-style syscall profile against the two APIs to see what actually differs. Just haven't had the time yet.


add a field-of-view slider in settings

Buildings appear smaller than they are from afar rn.

since lxr considered this..


Could not build on IOS

Not able to run the repo because of the following error
Error (Xcode): ../.pub-cache/hosted/pub.dev/flutter_scene-0.0.1-dev.1/lib/scene.dart:13:8: Error: Type 'ui.SceneNode' not found.

Flutter Doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.10.3, on macOS 12.5 21G72 darwin-arm64, locale
    en-IN)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 14.0.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.1)
[✓] VS Code (version 1.79.2)
[✓] VS Code (version 1.71.0)
[✓] Connected device (3 available)
[✓] Network resources

• No issues found!

The Flutter Scene package currently requires a custom build of Flutter Engine to use (instructions here: https://github.com/flutter/flutter/wiki/Impeller-Scene).
After the migration to Flutter GPU is done, a custom engine build will no longer be required.

Hi Brandon,
I'm highly interested in using SceneBox for 3D rendering on Android within Flutter applications. I'm a relatively new Flutter developer, but I have a specific need to render PDB files (3D protein structures) on the fly.
Would you be able to provide a rough estimate on when SceneBox might gain Android support?
Thanks for your time and consideration!

The Flutter Scene package currently requires a custom build of Flutter Engine to use (instructions here: https://github.com/flutter/flutter/wiki/Impeller-Scene).
After the migration to Flutter GPU is done, a custom engine build will no longer be required.

Hi Brandon,
I'm highly interested in using SceneBox for 3D rendering on Android within Flutter applications. I'm a relatively new Flutter developer, but I have a specific need to render PDB files (3D protein structures) on the fly.
Would you be able to provide a rough estimate on when SceneBox might gain Android support?
Thanks for your time and consideration!


Completed tasks are forced to remain hidden

If I place an automated action to close a task when moving to "Done", the task disappears from the board the precise time I raise my finger from the mouse. I feel this have two drawbacks:

The whole column loses its sense if I close the tasks automatically
I cannot have an instant tracking of finished AND closed tasks simultaneously.

A possible workaround of this is to create an additional column, let's say, "closed", where I drop closed tasks, but the second point remains unsolved.
Might it be possible to make closed tasks remain in the column through an option that says "show/hide completed tasks" or something like that?
Thanks in advance!

Might it be possible to make closed tasks remain in the column through an option that says "show/hide completed tasks" or something like that?

I like this feature, too. Closed tasks should be viewable with an on/off toggle. Right now the only way I have found to view closed tasks in Kanboard is to export the project tasks to CSV.

You can view closed tasks under the "Actions" (upper left menu) -> "Completed Tasks"

@aaron832 , indeed that is the current way of viewing completed tasks; what I'm saying is that I am not able to see completed tasks inside the board once the task is completed.
The rationale for this is in my first post.
Thank you.

A feature like show closed tasks in this column that were closed in the last NN days would be handy... then I could see the tasks completed in this iteration.
Currently, I drop stuff in done, then use a script to close the tasks via the API.

+1

With the current development version, you can now see closed tasks in the board, however you cannot move those tasks.


Enable config in meltano.yml to point to a path/file

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/2803
Originally created by @tayloramurphy on 2021-06-16 15:56:57

Following from https://gitlab.com/meltano/meltano/-/issues/2764#note_596105493
config: <path.{json,yml}> in meltano.yml would be a little different: I'd expect it to function the same as having the config dict in meltano.yml, just directed to a different file. This means that env vars would still override config values set in that file, and meltano config <plugin> set <key> <value> would write directly to the configured config file instead of meltano.yml. It's not a way to load existing config into Meltano, but rather a way to move config out of meltano.yml. This may be less important once we have https://gitlab.com/meltano/meltano/-/issues/2456.

View 5 previous comments from the original issue on GitLab


{"status":"error","err-code":"api-signature-not-valid","err-msg":"Signature not valid: Verification failure [校验失败]","data":null}

first i get accont information by client.AccountClient ,when i recieve the response, i use the same account client  instance  to get the account balance , this time the response is a error
{"status":"error","err-code":"api-signature-not-valid","err-msg":"Signature not valid: Verification failure [校验失败]","data":null}
but when i  change the code like that
`
func (p *Signer) sign(payload string) string {
p.hash.Write([]byte(payload))
result := base64.StdEncoding.EncodeToString(p.hash.Sum(nil))
p.hash.Reset()
return result

}`
then there is no error，but i dont know whether it‘s correct

@simpdo , thanks for your feedback, I have fixed this idempotence issue. You can get latest code from master branch.


Passign pgPool to getPostGraphileBuilder on postgraphile handler breaks the subscription

Postgraphile handler is throwing below error when using with live query.
client was closed and is not queryable

I dig little bit and found out that the passing pgPool might be the issue at below line number
https://github.com/Urigo/graphql-mesh/blob/master/packages/handlers/postgraphile/src/index.ts#L89
I swapped the pgPool with just the connectionString and it worked

I couldn't reproduce the issue. Could you create a reproduction?

Feel free to open a new issue with a reproduction if it still persists.

Feel free to open a new issue with a reproduction if it still persists.


Avoid using TBQueue for StakeDistribution

Currently stake distribution is extracted from the set snapshot at the start of epoch, inserted in a TBQueue and finally inserted in the db in chunks 1000 per block.
We could avoid using the TBQueue and insert stake distribution directly from the snapshot. To do this we want a way to index how many entries have already been registered, without keeping any volatile in memory data. I think we could directly query this number from the db. This would let us remove the DBQueues (since rewards will also become incrementally available through events) and would drastically simplify code and reduce memory usage.
Other things we need to consider are:

At which slot should we start extracting from the set snapshot. At the beginning of the epoch or we can go later? How soon do we need there entries after the epoch boundary?
How many entries per block should db-sync insert? This also depends on how fast we want these entries inserted.

insert stake distribution directly from the snapshot

You mean the ledger state right?

To do this we want a way to index how many entries have already been registered, without keeping any volatile in memory data

Yes, this solution requires that we store some state. I think we need proper support for this in ledger rather than trying to hack around the problem here in db-sync.

insert stake distribution directly from the snapshot

You mean the ledger state right?

Yes the set stake distribution snapshot that lives in the ledger state

Fixed in https://github.com/input-output-hk/cardano-db-sync/pull/1094


BlobStoreStats returns valid log segment size map in the wrong order

BlobStoreStats has a function to get size by log segment. The return type is a NavigableMap but the sort order in the map is incorrect. This causes DefaultCompactionPolicy to pick the wrong segments.
The sort order needs to be fixed by using LogSegmentNameHelper.COMPARATOR
For example, segments with names 1_0, 2_0 and 10_0 should be sorted in that order but the returned Map has them in natural String sort order i.e. 1_0, 10_0 2_0

#721 fixes the bug but tests to test this scenario need to be added to BlobStoreStats


[SPIKE] Investigate upgrading react-datepicker

Elastic forked react-datepicker in order to add some accessibility improvements. It was forked on version 2.0.0, where the latest version is 4.8.0. As of now, lots of CVEs are coming from that package, so it may make sense to see if we can just switch to using it off NPM and upgrading to the latest version, rather than trying to fix the CVEs in what we have now.

Here are the main things I've found so far:

The fork changes instances of Date to Moment
A prop, utcOffset was added
In the package from NPM, ref doesn't work out of the box for some reason

Changing these things would most likely require a major version bump, or a rework of how some of the date picker component works. For fixing CVE's, the work is too much. However, we still probably want to look into updating to the version from NPM in the future.


Unclear error message: "cannot use operator[] with a string argument with array"

Describe what you want to achieve.
Send array of arrays over a network connection.

Describe what you tried.
On the server:

nlohmann::json jsonMessageOut;
jsonMessageOut[ "action" ] = "updateUnits";

databaseResults R = database.query( "SELECT \"longitude\", \"latitude\" FROM \"units.lonlat\" LIMIT 10;" );
if ( R.size() > 0 ) {
	std::vector< std::pair< double, double > > units;
	for ( const auto& unit : R )
		units.push_back( { unit[ 0 ].as< double >(), unit[ 1 ].as< double >() } );

	jsonMessageOut[ "units" ] = units;
}
else
	jsonMessageOut[ "units" ] = nlohmann::json::array();

[send]

On the client:
while ( ! ( jsonMessageIn = websocketGetMessageInbound() ).empty() ) {	// TODO Look into pushing these into the SDL event queue.
	const std::string action = jsonMessageIn[ "action" ];

	switch ( networkStringValues[ action ] ) {
		...

		case networkActionUpdateUnits: {
			std::vector< std::pair< double, double > > units = jsonMessageIn[ "units" ];

			for ( const auto& unit : units )
				std::cout << unit.first << "x" << unit.second << std::endl;
		}

		...
	}
}

Describe what happens instead.
[[98.02922343358784,-71.97847384808085],[-63.31191659209324,-35.374567995631736],[-110.474999892986,-6.113705884129388],[69.75989939459609,67.16343799507328],[2.3197853267517132,81.05544938056028],[40.16905596844069,80.41366385334712],[-87.83292780117719,-7.74048656814756],[-93.33958934205057,-76.02122165690062],[-23.417427851405677,51.76305532126719],[32.21544673426408,83.85006816965088]] [json.exception.type_error.305] cannot use operator[] with a string argument with array

It seems strange to me that I can see the correct response in the error message but not access it like I would any other array.

Describe which system (OS, compiler) you are using.
Emscripten v1.39.10/Clang v8.0.0-3

Describe which version of the library you are using (release version, develop branch).
Release v3.7.3

It was my mistake (I was sending the array directly, not the array as part of a larger object). I was missing about two lines of code. Sorry about that.


docs: edited README.md Building for iOS section

I just edited a bullet in the README.md with a bullet saying rosetta 2 not needed with kivy-ios==2.2.1.
This is going to be a moot point because this whole section will be overridden with the next pull request on the ios build issue.

:ok_hand: sounds good to me!


issue/92

Updated timelines. Added architecture docs.
Improvements to timeline and architecture docs.
Added Learning Resources.

PR build here https://folio-at-cu--218.org.readthedocs.build/en/218/admin/index.html


fix(link): restyle to match spec

Closes #1801
This PR incorporates the feedback from the v1.1 component audit
Changelog
Changed

use new color tokens
match spec for focus styles. There was a comment about using box-shadow to set a border on the focused link state, but this only allowed the border to appear on the bottom of the element. Switching to outline allows us to match the spec which calls for a border around the entire element

Removed

href attribute from disabled link example (in order to achieve the cursor CSS changes in addition to disabling page navigation)

question for the reviewers:
has there been any discussion around supporting a disabled link? a disabled anchor is essentially text, so maybe we should just add a disabled class and not apply the class to an anchor element

@aagonzales Also - Any thoughts on @emyarod's question on disabled link...? Thanks!

I'm not sure I understand the disabled link question...

is there any need to have a disabled link component since a disabled link is just text? one of the feedback points from the audit was that disabled links shouldn't navigate, but the reason it was navigating in the first place was because it was still a link 🤣

A disabled link needs to be using $disabled-02. It serves as a visual indicator that something is broken or missing or not working as intended. A link could be disabled because a user has not done some required task or other required parameters are not met.

I created a .bx--disabled class which is meant to be a global class for disabled text, although it's contained within the link component styles. Figuring out our import structure took much longer than I would like to admit, so if anyone has any feedback or advice on how we can consume theme tokens within our helper classes file it would be very appreciated

One last thing, can we remove the visited color by default? I like @joshblack suggestion of offering this functionality via something like bx--link--visited

sure, I reverted the visited color change and added the helper class for visited links

I'm good with this once @aagonzales signs off

yeah I would like to confirm that we want to draw a box around the whole link when it is focused. I added a long link that wraps to the docs as an example

Sorry just now looked at the focus bc your comment. The focus should only be 2px, looks like its using 3px right now. After that should be good!

thanks @aagonzales! I reduced the focus border width

@emyarod
Here's the updated spec as promised (linked on Airtable too):
https://ibm.box.com/s/wic90965yccngbmkt1hr6ycc8yw51g25

Again we are going back to the original design in order to match digital now that they fixed their problem with the fat underline:
https://pages.github.ibm.com/webstandards/carbon-integration-poc/components/link.html