Smart folder predicate editor

I have finally found time to do the predicate editor project requested in #1458 . It is not completed yet, as localization is missing. I will go with the tips from https://tyler.io/how-to-set-custom-display-values-and-localize-nspredicateeditor/ to generate a strings file. I have seen that the interface builder allows setting a strings file as well. If someone has the time to try and localize my current solution, I would be thankful and we could merge this quicker!
One further open question is which folder I can use with the tests. I will try and find a default folder later, which hopefully is available in the database created for testing.
Closes #1458

Foundation for localization is done @Eitot, we just need the translations for all the other languages than english. It´s extremely cool how you can even customize the order of the fields in the predicate editor rows by localization!

None, feel free to adapt the translation to the term used in the past. In German, it is "markiert", therefore I probably just wrote that. Or it was like that in the old UI, I don't know...

It seems like things aren't translated in your screenshot though, as I have translated "HasEnclosure" with "Attachment". There are also fewer options than there should be. Where does that screenshot come from?

It builds without errors now, just the unit tests need to be fixed.

The failures point to some issue with quoting in the SQL conversion which Inhave altered a little, I will look into it tonight.

Tests are fixed now

Possible improvement: custom PredicateEditorRowTemplate for the "not contains" operator. The operator is converted to a compound not predicate containing a compound or predicate containing a contains predicate currently, which looks weird in the editor as stated in https://github.com/ViennaRSS/vienna-rss/issues/1458#issuecomment-1159747906 , because it is represented by a "none of the following..." row containing a "contains" row.

@Eitot I don´t understand why we would want to have the localizations of predicates expanded, as this just leads to redundancy and possible inconsistencies in localization. Further, I really like the idea of writing the predicates in natural language by reordering the operators if needed. What is the reasoning behind the change in d758a34155e7d6ccbe08f824d6302bd5a4641d3e ?

I am currently designing the custom row template. We could also make folder images work that way.

The custom editor template for the not contains predicate is finished, with two TODOs regarding size and font of the text field remaining. I have added the translation for the template to my original strings file, I do not want to copy that translation for every text field though and therefore did not include it in the currently used translations.

I don't think it is a good idea to combine the strings too much. This leads to loss of flexibility for translations. I already encountered several instances in Dutch, for example, where the rest of the sentence did not work.

I thought it might be possible to change the grouping for different languages - did you give that a try? I think it is very inconvenient to have the same translation, e.g. for "is not" or "does not contain" several times in a resource file.

Regarding the second point, I think it is confusing when the left-most menu item changes underneath the choice the user made. I found no other instance where predicates/rules work this way (cf. Finder, Mail, Photos).

We can of course try to find sentences that make the ordering of the leftmost item more consistent. I think, as long as we don´t change the order too much and leave the field names consistent in some way, it should be recognizable. I think my example with all possible combinations of predicates (see CriteriaTest) shows that the translations I made are very neat for english, and the editor is still very useable.

I do think that the UI is not ideal. I actually like the way Mail does it:
It has more items in the menu, but it makes the choices more explicit.

Yes, it´s right that it is more explicit in mail. But also verbose, and the list gets longer as new options for filtering are added. For example, I was thinking about things like "starts with" and "ends with" for strings (e.g. someone could want all articles from authors with "A"). That would add 6 rows in that view (3 text fields, 2 operators each). Also, for using that approach then we have to develop own row templates for every predicate, which is something I am not keen on. I think, if someone is really eager on building complicated filtering logic for articles, that person can get accommodated to the not totally intuitive yet very powerful predicate editor UI.

We are constrained by what Crowdin allows us to do (which is upload one strings file for all localisations)

So Crowdin doesn't allow translators to change the list of keys for a translation?
I think we should write a little script that does the combination for us then. The problem is not only that it's inconvenient, but also can lead to UI problems, if the same constant is translated in different ways. Unfortunately, for NSPredicateEditor, the translation is part of the programming

Willing to test the nested rules, I tried this:

Clicking Save causes an exception:
2022-11-26 08:39:53.784476+0300 Vienna[47149:8716043] [General] *** -constantValue only defined for abstract class.  Define -[NSKeyPathExpression constantValue]!
2022-11-26 08:39:53.789842+0300 Vienna[47149:8716043] [General] (
	0   CoreFoundation                      0x00007ff801c9043b __exceptionPreprocess + 242
	1   libobjc.A.dylib                     0x00007ff8017dfe25 objc_exception_throw + 48
	2   Foundation                          0x00007ff8031388db _NSRequestConcreteObject + 0
	3   Foundation                          0x00007ff802fb142d -[NSExpression constantValue] + 39
	4   Vienna                              0x000000010f953459 $sSo8CriteriaC6ViennaE9predicate11notContainsABSgSo11NSPredicateC_Sbtcfc + 585
	5   Vienna                              0x000000010f95490b $sSo8CriteriaC6ViennaE9predicate11notContainsABSgSo11NSPredicateC_SbtcfcTo + 59
	6   Vienna                              0x000000010f95317a $sSo8CriteriaC6ViennaE9predicateABSgSo11NSPredicateC_tcfc + 90
	7   Vienna                              0x000000010f953208 $sSo8CriteriaC6ViennaE9predicateABSgSo11NSPredicateC_tcfcTo + 40
	8   Vienna                              0x000000010f952577 $sSo8CriteriaC6ViennaE9predicateABSgSo11NSPredicateC_tcfC + 55
	9   Vienna                              0x000000010f951d02 $sSo12CriteriaTreeC6ViennaE9predicateABSgSo11NSPredicateC_tcfc + 4354
	10  Vienna                              0x000000010f952738 $sSo12CriteriaTreeC6ViennaE9predicateABSgSo11NSPredicateC_tcfcTo + 40
	11  Vienna                              0x000000010f950bd7 $sSo12CriteriaTreeC6ViennaE9predicateABSgSo11NSPredicateC_tcfC + 55
	12  Vienna                              0x000000010f951c06 $sSo12CriteriaTreeC6ViennaE9predicateABSgSo11NSPredicateC_tcfc + 4102
	13  Vienna                              0x000000010f952738 $sSo12CriteriaTreeC6ViennaE9predicateABSgSo11NSPredicateC_tcfcTo + 40
	14  Vienna                              0x000000010f90f4b3 -[SmartFolder doSave:] + 195
	15  AppKit                              0x00007ff804f2d502 -[NSApplication(NSResponder) sendAction:to:from:] + 323
	16  AppKit                              0x00007ff804f2d384 -[NSControl sendAction:to:] + 86
	17  AppKit                              0x00007ff804f2d2b6 __26-[NSCell _sendActionFrom:]_block_invoke + 131
	18  AppKit                              0x00007ff804f2d1bf -[NSCell _sendActionFrom:] + 171
	19  AppKit                              0x00007ff804f2d106 -[NSButtonCell _sendActionFrom:] + 96
	20  AppKit                              0x00007ff804f29f85 NSControlTrackMouse + 1811
	21  AppKit                              0x00007ff804f2984e -[NSCell trackMouse:inRect:ofView:untilMouseUp:] + 121
	22  AppKit                              0x00007ff804f29721 -[NSButtonCell trackMouse:inRect:ofView:untilMouseUp:] + 606
	23  AppKit                              0x00007ff804f28b58 -[NSControl mouseDown:] + 659
	24  AppKit                              0x00007ff804f2703a -[NSWindow(NSEventRouting) _handleMouseDownEvent:isDelayedEvent:] + 4283
	25  AppKit                              0x00007ff804e9caaa -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 2595
	26  AppKit                              0x00007ff804e9be6b -[NSWindow(NSEventRouting) sendEvent:] + 345
	27  AppKit                              0x00007ff804e9a1da -[NSApplication(NSEvent) sendEvent:] + 358
	28  AppKit                              0x00007ff805159009 -[NSApplication _handleEvent:] + 65
	29  AppKit                              0x00007ff804d2a018 -[NSApplication run] + 623
	30  AppKit                              0x00007ff804cfe058 NSApplicationMain + 817
	31  Vienna                              0x000000010f844ef4 main + 52
	32  dyld                                0x00007ff80180c310 start + 2432
)

Thanks for testing though! I will change things Sunday evening.

@Eitot I was too busy again to make all the changes we spoke about, do you have a list of TODOs for me to remember all I wanted to change?

We should check whether those combinations were possible in the past. If not, there's no need to keep them.

@TAKeanice I think you wanted to write a script to minimise the strings files. I see that there is a playground reference in the Xcode project, but the file is not committed.

Thanks, that's what I am currently working on, with the help of mighty swift regexes

Other than that, I think we spoke about changing the custom row template to reuse the pre-existing template views from the superclass to avoid hard-coding the UI to a particular version of macOS.

Now registered as next action on my list

One thing that does bother me now is that the order of the rules in the left-most menu is all over the place. I am not sure why it shows the content, subject and author fields first, when these are added last. The "does not contain" item is placed at the beginning of the middle menu too. Do you know if there is a way to control this?

No idea yet, and I doubt it because the algorithm just combines fields and maybe it does so in an unstable way... But I can try and investigate that.

Will it just "gracefully fail" and only show the templates that are supported?

I think that is the case. I am not sure whether we even get an information about it. If we do, we should show a warning in the smart folder view.

So, I finally managed to write the script merging the translations such that in the final strings file all translations that are combinable are combined.

The last two commits complete the "expand / combine / compare" predicate translation script.
The combine option should be used to simplify the translation files in the distributed version, because it makes adding new translations easier. In case new predicates are added, not all combinations of predicates and options need to be written out.
The expand option should be applied to the translation files before publishing them to crowdin, because it cannot handle combined translations well.
After importing the translations (can be done before or after the "combine" step), the "compare" option should be used for each translation against the "Base" translation to check whether all the keys are still in the right shape.

They were possible in the past.

@Eitot I just looked it up, the combination "Date" and "is not" have not been possible in the previous version.
If there is no UI for a predicate, it says Warning - unable to find template matching predicate "Date" != "today in the log.
I added explicit fallbacks if an operator is really not supported with some field, and logged such cases. The "Date is not" option is back in Criteria+NSPredicate, but it has no effect since it cannot be created via the UI currently.
I also compressed the strings files, as I think that´s the state it should be kept in the repository. The only thing missing from the expansion to fully restore the translatable state is putting back the comments, but I think that this should be possible manually with not too much effort.

I suppose the "is after" and "is after or is" predicates could be renamed to "is in the last" in this context, the "is before" or "is before or is" could be renamed to "is not in the last". This might make it easier to understand what exactly is contained. In the screenshot above (taken from Automator) the "is [on|after|before]" predicates all expect a particular date, not a unit of time (which Vienna currently does not support).

Sorry I misremembered what the discussion was about, I will take care of converting the "after yesterday" predicate to "is today" on the fly when loading it into the UI for the first time after editing the smart folder editor for some predicate. Then that renaming of "is after or at" and "is after" could be done.
I wonder whether we could also add some other option like "is at [most, least] n [days, weeks, months] ago" with a number n that can be chosen freely. Relative dates are more useful than fixed ones in the context of an RSS reader. Like this, relative date ranges are also possible by combining an "at most" and an "at least" date offset with AND.

@Eitot please review the change in https://github.com/ViennaRSS/vienna-rss/pull/1636/commits/b2287b1a872bfb29499042a829323b6fd7edf3f7 . I am not sure whether this behavior of the predicate editor is desirable or if we should stick to the old way, meaning inputs like "after today" are possible but the editor will behave very predictable.


Wrong hash and no release errors

Error if hash commit doesn't exist.
If there are no tags, calculate next version from 0.0.1

One last question, do we have an integration test (i.e. running the command) capturing this case?


Add whiten ops before compute advatanges

From LLaMA 2 paper, it says:

We also find it important to whiten the final linear scores (shown here by reversing the sigmoid with the logit function) in order to increase stability and balance properly with the KL penalty term (β) above.

This function is taken from alpaca_farm

@SingL3, thanks for the change! It makes sense. I have kicked started our benchmark to help understand its effect


Add support for Microchip SAM L10/L11

I'm working on implementing a HAL for the SAML11 using the Xplained Pro evaluation kit and it would be great to have support from probe-rs. I'm relatively new to the Rust embedded ecosystem(and embedded in general) so I don't know what is needed to add support but happy to help in any way I can.
probe-run --list-probes detects the dev board:
[0]: EDBG CMSIS-DAP (VID: 03eb, PID: 2111, Serial: ATML3138071800003086, CmsisDap)

You can generate it with target-gen :)

The CMSIS-Pack for the SAML11 didn't include a flash algorithm so target-gen didn't work for me. As I'm not qualified to write a flash loader I'll leave it open for anyone who might want to volunteer. :)
It seems edbg supports this chip so I'll give that a try in the meantime.

I have an L10, I can probably manage that. Probably not the L11's fancy additions, though.


Gradle plugin deprecation warnings in Gradle 6.4

Describe the bug
Not really a bug. Just a heads up for upcoming Gradle releases. :wink:
When running the dependency analyzer plugin in a multi-project setup, Gradle warns about the resolution of deprecated configurations. Gradle 7 will not set up these configurations.
Example:
The archives configuration has been deprecated for resolution. This will fail with an error in Gradle 7.0. Please resolve the compileClasspath or runtimeClasspath configuration instead. Consult the upgrading guide for further information: https://docs.gradle.org/6.4/userguide/upgrading_version_5.html#dependencies_should_no_longer_be_declared_using_the_compile_and_runtime_configurations

You can find a reproduction repository here: https://github.com/niktekusho/owasp-gradle-plugin-deprecation-sample.
Version of dependency-check used
Gradle Plugin 5.3.2 with Gradle 6.4
Log file
> Task :dependencyCheckAnalyze
Verifying dependencies for project owasp-gradle-plugin-deprecation-sample
The archives configuration has been deprecated for resolution. This will fail with an error in Gradle 7.0. Please resolve the compileClasspath or runtimeClasspath configuration instead. Consult the upgrading guide for further information: https://docs.gradle.org/6.4/userguide/upgrading_version_5.html#dependencies_should_no_longer_be_declared_using_the_compile_and_runtime_configurations
The compile configuration has been deprecated for resolution. This will fail with an error in Gradle 7.0. Please resolve the compileClasspath configuration instead. Consult the upgrading guide for further information: https://docs.gradle.org/6.4/userguide/upgrading_version_5.html#dependencies_should_no_longer_be_declared_using_the_compile_and_runtime_configurations
The compileOnly configuration has been deprecated for resolution. This will fail with an error in Gradle 7.0. Please resolve the compileClasspath configuration instead. Consult the upgrading guide for further information: https://docs.gradle.org/6.4/userguide/upgrading_version_5.html#dependencies_should_no_longer_be_declared_using_the_compile_and_runtime_configurations
The default configuration has been deprecated for resolution. This will fail with an error in Gradle 7.0. Please resolve the compileClasspath or runtimeClasspath configuration instead. Consult the upgrading guide for further information: https://docs.gradle.org/6.4/userguide/upgrading_version_5.html#dependencies_should_no_longer_be_declared_using_the_compile_and_runtime_configurations
The runtime configuration has been deprecated for resolution. This will fail with an error in Gradle 7.0. Please resolve the runtimeClasspath configuration instead. Consult the upgrading guide for further information: https://docs.gradle.org/6.4/userguide/upgrading_version_5.html#dependencies_should_no_longer_be_declared_using_the_compile_and_runtime_configurations
Checking for updates and analyzing dependencies for vulnerabilities
Generating report for project owasp-gradle-plugin-deprecation-sample
Found 0 vulnerabilities in project owasp-gradle-plugin-deprecation-sample

To Reproduce
You can find a reproduction repository here: https://github.com/niktekusho/owasp-gradle-plugin-deprecation-sample.
Expected behavior
No deprecation warnings are shown by Gradle.

Tried it with gradle 6.6.1 and plugin version 6.0.2 and the issue still exists.

The fix will be included in 6.0.3.

To be clear - the warning will appear if using gradle 6.4. However, if using gradle 7.0 or higher ODC will no longer try to resolve these scopes.


Components that depend on useIsHeadphonesConnected on Android don't re-render when bluethooth headphones are connected/disconnected.

Summary
useIsHeadphonesConnected hook doesn't trigger re-renderings when BT headphones are connected/disconnected on Android.
This works fine on iOS.
Current behavior
If you have a react component that uses this hook, it will not re-render anything that depends on the value of this hook on Android, when you connect/disconnect BT headphones.
Expected behavior
I can provide an example if that is helpful.

Hi there! A PR would be helpful, this isn't a use case of mine so someone will have to determine the root cause and code up a fix

I have a similar issue on Android, useIsHeadphonesConnected does not trigger any event at all. I use
const deviceInfoEmitter = new NativeEventEmitter(NativeModules.RNDeviceInfo);
const listener = deviceInfoEmitter.addListener('RNDeviceInfo_headphoneConnectionDidChange', (headphone) => { ... })

instead.

@paulwellnerbou Does that work for you? I've tried both ways and neither does anything. I don't receive any events.

@AlexLerman , yes it works for me (Android).


Change the default segment format in perf runner

Codecov Report

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

@@           Coverage Diff           @@
##           master    #1636   +/-   ##
=======================================
  Coverage   67.79%   67.79%
=======================================
  Files         825      825
  Lines       40128    40128
  Branches     5279     5279
=======================================
  Hits        27203    27203
+ Misses      11122    11116    -6
- Partials     1803     1809    +6

Impacted Files
Coverage Δ

...e/impl/dictionary/LongOnHeapMutableDictionary.java
88.88% <0%> (-6.67%)
:arrow_down:

...impl/dictionary/DoubleOnHeapMutableDictionary.java
68.88% <0%> (-6.67%)
:arrow_down:

...inot/common/utils/ControllerTenantNameBuilder.java
69.44% <0%> (-5.56%)
:arrow_down:

...ava/com/linkedin/pinot/common/utils/MmapUtils.java
53.54% <0%> (-5.17%)
:arrow_down:

...r/filter/predicate/PredicateEvaluatorProvider.java
60% <0%> (-4%)
:arrow_down:

...afkaHighLevelConsumerBasedRoutingTableBuilder.java
89.28% <0%> (-3.58%)
:arrow_down:

...e/operator/dociditerators/BitmapDocIdIterator.java
60.71% <0%> (-3.58%)
:arrow_down:

...nsport/netty/PooledNettyClientResourceManager.java
87.23% <0%> (-2.13%)
:arrow_down:

...linkedin/pinot/common/metrics/AbstractMetrics.java
77.68% <0%> (-1.66%)
:arrow_down:

.../impl/dictionary/BaseOffHeapMutableDictionary.java
72.82% <0%> (-1.09%)
:arrow_down:

... and 14 more

Continue to review full report at Codecov.

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


feat: theme customization for pages

Hey, I just made a Pull Request!
Closes #2488
Summary
Page theme now included in top level Theme provider.
https://github.com/spotify/backstage/pull/2739/files#diff-eefdf3bc4c0763ce0789b858d77aada4R79
To consume page theme, useTheme could be used.
:heavy_check_mark: Checklist

[x] All tests are passing yarn test
[ ] Screenshots attached (for UI changes)
[ ] Relevant documentation updated
[x] Prettier run on changed files
[ ] Tests added for new functionality
[ ] Regression tests added for bug fixes

Many thanks! I love it! ❤

Failing test is not related to this PR. Idk same failing happened in this PR as well https://github.com/spotify/backstage/pull/2729.


Generate class docs using JsDoc

We need to generate class docs using https://jsdoc.app/
This needs to be stored in the same Hugo site where CLI docs will be stored. For example, we could host it as: https://hashgraph.github.io/solo/classes

:tada: This issue has been resolved in version 0.23.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


requestPurchase after my app is stopped

Hi i use<EMAIL_ADDRESS>My code is :
 await RNIap.requestPurchase(productId);
this code run but payment successfully after my app is stopping

i solved this bu
await RNIap.requestPurchase(productId).then(res => console.log(res));
returned Possible Unhandled Promise Rejection (id: 0): Error: No purchases found Error: No purchases found     at createErrorFromErrorData (blob:http://localhost:8081/153a2b48-48e9-4f2b-96d0-691d6a0dea72:14517:17)     at blob:http://localhost:8081/153a2b48-48e9-4f2b-96d0-691d6a0dea72:14476:27     at MessageQueue.__invokeCallback (blob:http://localhost:8081/153a2b48-48e9-4f2b-96d0-691d6a0dea72:15342:18)     at blob:http://localhost:8081/153a2b48-48e9-4f2b-96d0-691d6a0dea72:15068:18     at MessageQueue.__guard (blob:http://localhost:8081/153a2b48-48e9-4f2b-96d0-691d6a0dea72:15256:13)     at MessageQueue.invokeCallbackAndReturnFlushedQueue (blob:http://localhost:8081/153a2b48-48e9-4f2b-96d0-691d6a0dea72:15067:14)     at http://localhost:8081/debugger-ui/debuggerWorker.js:80:58
problem help me

Upgrade to 4.0.3 please


Add Continuous Deployment to this repo

roocs-utils version: Current
Python version: Any
Operating System: N/A

Description
Currently, the deployment method for adding new versions to PyPI is entirely manual. We should leverage GitHub Workflows to make this easier.
For an example, see:

https://github.com/roocs/clisops/blob/master/.github/workflows/publish-pypi-production.yml and
https://github.com/roocs/clisops/blob/master/.github/workflows/prepare-release.yml

@Zeitsperre we like to move roocs-utils into clisops: #107


Update Composer dependencies (2021-09-29-00-08)

Visual regression test passed!
View the visual regression test report


Python3 support

In case anyone's wondering, all that's required for python3 support is to remove ur from the front of two strings in reader.py.
Doesn't fix #3 though! :)

In case anyone's wondering, all that's required for python3 support is to remove ur from the front of two strings in reader.py.
Doesn't fix #3 though! :)

Specifically remove ur from strings stored in variables db_client_script on line 299 and mod_mgr_script on line 294


NAT

Hello everyone.
Is there a solution to running a node (particularly a validating one) that is behind a NAT?
I have looked briefly at things like NAT punching, but was unable to answer this.
I think it would be incredibly valuable if arbitrary users could run a node even in a NAT'ed environment.
Thanks.

This is probably not the repository you want to open this issue on - maybe Tendermint?


One ESP32 with 64 Endpoints. (CON-1298)

I have a system DIY, with 64 input and 64 output, and serial connection.
i want to make the esp32 to communicate with it by serial and control the 64 "endpoint OnOffLight" that control 64 button with 64 relay.
the communication done and working perfect.
but their is no enough fee heap space. i want it in a one device not more.
Solutions ?

@ronny-antoon You can add up to 16 endpoints. However, if you disable Bluetooth, you can add up to 40 endpoints. In that case, you'll need to find another way to do the commissioning, as all memory will be consumed with 40 endpoints.

@ronny-antoon You can add up to 16 endpoints. However, if you disable Bluetooth, you can add up to 40 endpoints. In that case, you'll need to find another way to do the commissioning, as all memory will be consumed with 40 endpoints.

Thank you,
But thats not enough, i need 64 endpoints

@ronny-antoon If you can afford PSRAM, you can use it by connecting it externally. You can refer to the documentation here: https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/external-ram.html. Use the Memory allocation strategy configuration option from menuconfig.

@ronny-antoon You can use PSRAM. Here is reference from esp-idf documentation https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/external-ram.html.
Configure below options from menuconfig. Use idf.py menuconfig command to open menuconfig gui.
Select Component config -> ESP PSRAM
Enable Support for external, SPI-connected RAM.
Check if SPIRAM_USE_MALLOC OR SPIRAM_USE_CAPS_ALLOC options are enabled.
Select Component config -> ESP Matter -> Memory allocation strategy
Enable option External SPIRAM

As mentioned, for large number of endpoints (like 64), using PSRAM and moving the allocations to it is a solution. Closing this now


Fix missing attributes, support filtering

It looks like I missed writing attributes out on a few elements where we're reading them in. I've added that in and cleaned up the implementation for writing attributes that are stored as their own fields as well as in the attrs HashMap on SimpleData and SimpleArrayData
Closes #37

Merging this despite clippy warning since it's for a deprecation we might be ignoring in order to support multiple versions of geo-types


Add export to imgur

Add support to export the snippet as an image to Imgur using Imgur's API.

When clicking "Export to imgur" the image will be uploaded to imgur with the given title.
The only thing left to do is to create an official client id for carbon and set it in the NEXT_IMGUR_CLIENT_ID environment variable.
Closes  #688

Sweet, pretty useful feature for me

Sweet, pretty useful feature for me

Sweet feature!

Sweet feature!

I've created a new share menu for the two options and also ran Prettier

I've created a new share menu for the two options and also ran Prettier

This is looking good! I'm going to look into some stylistic tweaks before merging.

This is looking good! I'm going to look into some stylistic tweaks before merging.

Are there any more fixes that need to be done?

Are there any more fixes that need to be done? @mfix22

@amitkeinan9 nope! I don't think so. I haven't had time to test this end-to-end yet. I hope to get to it soon, but have been super busy.
Testing it with a real Imgur key and posting a video here would speed things up!

https://user-images.githubusercontent.com/16577335/107127985-c1d77880-68c2-11eb-9592-5d8ba46701dd.mov

https://user-images.githubusercontent.com/16577335/107128150-fb5cb380-68c3-11eb-9835-27ea2b0f2498.mov
@mfix22


Example: Deploying PHP Guestbook application with Redis (frontend image pull issue)

Seems like frontend-deployment on guestbook app is not downloading the images:
╭─sandesh at Sandesh’s MacBook Pro in ~/guestbook
╰─○ kubectl apply -f https://k8s.io/examples/application/guestbook/frontend-deployment.yaml

deployment.apps/frontend created

╰─○ kubectl get pods -l app=guestbook -l tier=frontend

NAME                        READY   STATUS         RESTARTS   AGE
frontend-5b46649f74-6fvnf   0/1     ErrImagePull   0          3s
frontend-5b46649f74-pddfl   0/1     ErrImagePull   0          3s
frontend-5b46649f74-wrx2b   0/1     ErrImagePull   0          3s

╭─sandesh at Sandesh’s MacBook Pro in ~/guestbook
╰─○ kubectl describe pod frontend-5b46649f74-6fvnf
Name:             frontend-5b46649f74-6fvnf
Namespace:        default
Priority:         0
Service Account:  default
Node:             ip-1xxxxxx.eu-west-1.compute.internal/xxxxxx
Start Time:       Mon, 08 Jan 2024 14:38:41 +0530
Labels:           app=guestbook
                  pod-template-hash=5b46649f74
                  tier=frontend
Annotations:      <none>
Status:           Pending
IP:               xxxx
IPs:
  IP:           xxxxxx
Controlled By:  ReplicaSet/frontend-5b46649f74
Containers:
  php-redis:
    Container ID:
    Image:          gcr.io/google_samples/gb-frontend:v5
    Image ID:
    Port:           80/TCP
    Host Port:      0/TCP
    State:          Waiting
      Reason:       ImagePullBackOff
    Ready:          False
    Restart Count:  0
    Requests:
      cpu:     100m
      memory:  100Mi
    Environment:
      GET_HOSTS_FROM:  dns
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-n2789 (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             False
  ContainersReady   False
  PodScheduled      True
Volumes:
  kube-api-access-n2789:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   Burstable
Node-Selectors:              <none>
Tolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type     Reason     Age                From               Message
  ----     ------     ----               ----               -------
  Normal   Scheduled  87s                default-scheduler  Successfully assigned default/frontend-5b46649f74-6fvnf to ip-10-1-0-167.eu-west-1.compute.internal
  Normal   Pulling    46s (x3 over 86s)  kubelet            Pulling image "gcr.io/google_samples/gb-frontend:v5"
  Warning  Failed     46s (x3 over 86s)  kubelet            Failed to pull image "gcr.io/google_samples/gb-frontend:v5": rpc error: code = NotFound desc = failed to pull and unpack image "gcr.io/google_samples/gb-frontend:v5": failed to resolve reference "gcr.io/google_samples/gb-frontend:v5": gcr.io/google_samples/gb-frontend:v5: not found
  Warning  Failed     46s (x3 over 86s)  kubelet            Error: ErrImagePull
  Normal   BackOff    9s (x5 over 86s)   kubelet            Back-off pulling image "gcr.io/google_samples/gb-frontend:v5"
  Warning  Failed     9s (x5 over 86s)   kubelet            Error: ImagePullBackOff

Manifest image URL should be changed to 'us-docker.pkg.dev/google-samples/containers/gke/gb-frontend:v5'
https://github.com/GoogleCloudPlatform/kubernetes-engine-samples/blob/HEAD/quickstarts/guestbook/frontend-deployment.yaml
Seems all the image URLs should be updated on this website

This looks similar to issue(s) https://github.com/kubernetes/website/issues/44190 and https://github.com/kubernetes/website/issues/44224. I think it is a duplicate.
/triage duplicate

thank you  @dipesh-rawat  Will close this :)


Reduce unwraps for recoverable errors [1]

Hi again!
Explanation
The following patch removes some of the unwrap()s and expect()s for recoverable errors. Namely, cpal::Device::name and the default stream config functions are called several times whereby the results are unwrapped. Both may be cached, and the device name can be a reasonable default if there's an error.  In terms of stream configs, a device is unusable without a stream config and there's no way to provide a reasonable default. Instead of exiting, swyh-rs now logs those cases and continues enumerating devices.
Rationale
Currently, swyh-rs may panic if any device for any host has an invalid name. Panicking is safe and unwraps are okay, of course, but I think that reducing the propensity to panic for benign errors will lead to a more robust program overall.

Looks all good to me!
The only possible downside I can see is that if you don't panic and as a result cause a problem further on it's a bit harder to diagnose.

Definitely! I made sure to log the errors at the source to ensure information isn't lost, but more logging can always be added.


The most important type of alert is missing. How do you configure and get alerts for failed login attempts?

The most important type of alert is missing. How do you configure and get alerts for failed login attempts and lock outs.
[Enter feedback here]

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

ID: 9f2879ba-e58e-cd47-f488-10d153c31418
Version Independent ID: 391a2c05-d63d-e84e-7c7d-80c3b3518419
Content: Alert policies in the security and compliance centers - Microsoft 365 Compliance
Content Source: microsoft-365/compliance/alert-policies.md
Service: o365-seccomp
GitHub Login: @markjjo
Microsoft Alias: markjjo

@billspeers Thanks for feedback. Currently, this functionality isn't in alert policies. Please provide this feedback at https://office365.uservoice.com/forums/289138-office-365-security-compliance?category_id=137187
Also, you might look in AAD sign-in reports: https://docs.microsoft.com/en-us/azure/active-directory/reports-monitoring/concept-sign-ins Note sure if there is a notification functionality or if you just have to track failed logons in the report.


allow set force partition for topic writer

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en

Pull request type

Please check the type of change your PR introduces:

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?
Deny start writer with partition number instead of message group id with error "ydb: producer id not equal to message group id, use option WithMessageGroupID(producerID) for create writer"
What is the new behavior?
Allow set partition number to writer

Codecov Report
Patch coverage has no change and project coverage change: -18.07 :warning:

Comparison is base (f8c75f8) 62.78% compared to head (983e7b6) 44.72%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@             Coverage Diff             @@
##           master     #604       +/-   ##
===========================================
- Coverage   62.78%   44.72%   -18.07%
===========================================
  Files         228      149       -79
  Lines       21785    15547     -6238
===========================================
- Hits        13678     6953     -6725
- Misses       7415     8275      +860
+ Partials      692      319      -373

Flag
Coverage Δ

1.16.x
?

1.19.x
44.68% <0.00%> (-17.70%)
:arrow_down:

1.20.x
44.72% <0.00%> (-17.88%)
:arrow_down:

insecure
?

integration
?

macOS-latest
44.68% <0.00%> (+0.03%)
:arrow_up:

secure
?

ubuntu-latest
44.72% <0.00%> (-18.03%)
:arrow_down:

unit
44.72% <0.00%> (+<0.01%)
:arrow_up:

windows-latest
?

Flags with carried forward coverage won't be shown. Click here to find out more.

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Uncaught TypeError: Return value of Logger\TelegramHandler::getConfigValue() must be of the type string, null returned

Uncaught TypeError: Return value of Logger\TelegramHandler::getConfigValue() must be of the type string, null returned

vendor/grkamil/laravel-telegram-logging/src/TelegramHandler.php:159

I got this error after upgraded to 1.8

fixed

Works and thanks for fixing it quick!


[W5.11][T09-A3]Tey Xin Hui

enhancement: changed the find command such they can find the subject regardless of the case of the keywords

@TeyXinHui Some comments added. Please close the PR after reading comments.


Create lgflmail.txt

@philipto Hey dude, you told me to make the lib/domains/net/lgflmail.txt and here it is :P

@philipto I added my school, I will get my teacher to get into contact with LGFL to add the whole list of schools.

@ItsEternity Yes, sir, certainly :)
I appreciate if you update the description in the file lgflmail.txt as soon as you know other schools, which share the domain with your school. If there are more than five of them, it will probably make sense not to list all the schools, but add some general description of them such as "schools located in Central London under common administration of LGFL" or something like that.
Pull request merged. Thank you!


how to disable one publish stream?

I use ffmpeg push stream to rtmp server in 2 client，use other 2 client receiving stream，now I want to disable one of stream，how to do that？“curl http://<IP_ADDRESS>:8080/control/drop/client?app=myapp1&name=test1” sometimes it succeed，sometimes it failed，who tell me the method which must be successful？

can you share please the nginx.conf file to understand how is configured your server?
what do you have running in port 8080 ?

11 rtmp {
12    server {
13        listen 1935;
14        chunk_size 4096;
15        application myapp1 {
16            live on;
17        }
18        application myapp2 {
19            live on;
20        }
21        application hls {
22            live on;
23            hls on;
24            hls_path /tmp/hls;
25        }
26    }
27 }
28
29 events {
30     worker_connections  1024;
31 }
32
33
34 http {
35     include       mime.types;
36     default_type  application/octet-stream;
37
38     #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
39     #                  '$status $body_bytes_sent "$http_referer" '
40     #                  '"$http_user_agent" "$http_x_forwarded_for"';
41
42     #access_log  logs/access.log  main;
43
44     sendfile        on;
45     #tcp_nopush     on;
46
47     #keepalive_timeout  0;
48     keepalive_timeout  65;
49
50     #gzip  on;
51
52     server {
53         listen       8080;
54         server_name  <IP_ADDRESS>;
55         location /control {
56             rtmp_control all;
57         }
58         location /stat {
59             rtmp_stat all;
60
61             # Use this stylesheet to view XML as web page
62             # in browser
63             rtmp_stat_stylesheet stat.xsl;
64         }
65         location /stat.xsl {
66             # XML stylesheet to view RTMP stats.
67             # Copy stat.xsl wherever you want
68             # and put the full directory path here
69             root /mnt/nginx-rtmp-module/;
70         }
71     }
is it enough？


macOS implementation

Inspiration by this MIT licensed C project - https://github.com/zserge/tray
(if I get the time I can contribute, otherwise just leaving it as an issue here as a feature request)
Thanks

Yes I really have to get that working.
I'll get to it in a bit

It will take me longer as expected, I still have some stuff to do - I'll install a VM next week and try to get everything working on macOS.

Do you have time to add this feature for macOS? If you don't, I can implement it for you?

I'm not experienced with macos development and don't have a machine to test / develop it on so I would actually be grateful for a PR ^^

I actually have no experience with osX :D, but I think I can do this with the objc runtime wrappers. I'll let you know here when I start.


Unable to set Multiple Env variables

"scripts": {
"start": "cross-env PAGE_ID=xxxxxx NODE_ENV=development node server",
}
I am trying to set PAGE_ID in environment variables but process.env.PAGE_ID shows me undefined. Any Solutions?

Did you find solution?


!important for .hide, Do we really need to?

We have had this discussion before in F5. Must we have !important for .hide? I realize that there are cases where !important is needed but I would rather have another class for situations when you needed a display:none !important;. For example, we could have a class of must-hide or something similar.
My biggest problem with .hide having an !important is the fact that I have used this class for years and use it in conjunction with my javascript. Javascript doesn't override !important so I have to either use an inline style or create another class.
Thank You

We felt it was important to be consistent with visibility classes, so that meant putting !important on pretty much everything in the visibility file. Moving from 5 to 6 was the opportunity to do that properly.
If you're using .hide in conjunction with JavaScript that manages component state, I'd recommend adding/removing that specific class as part of that.


Fix rolling builds.

Here are some fixes of issues I am getting on the latest rolling. I am not certain how was this working before at all.
@pabloinigoblasco please check if these changes are OK and if so, merge the PR.

Hello @destogl
Thanks for the PR.
Nonetheless there is something I think we are not aligned yet. I think you are missing something about the smacc architecture.
Let me first follow your proposal (your mindset). If I am not wrong, your changes are related "more or less" with the idea of the need of some static rclcpp::Node node object that should be gobally accesible. Some other of your changes are related with the idea of getting access to a logger by name without using a node (maybe you do not have global access to that node object in that specific place).
I introduced several times changes in a few commits to remove those changes you propose. But now it is an opportunity to clarify this. I think we both have been struggling for some times introducing opposite views and we could even have introduced some inconsistent/broken code.
I have to say that both your view and mine are totally valid and must be able to put this pipeline in green. But the point is that right now we are not working with that strategy.
Now, Why we do not need that globally-static node? The reason is the following: We already have another globally accessible node from any of our items (behaviors, state reactors, clients, states statemachines or component to one single and unique node via the getNode() method - available in all of those). In the same way
Where is located that globally accessible node? is a member field of the statemachine class (that exists for any smacc executable). Any behavior, statereactor, client, component have access to the current state machine. Hence to the current node and the current logger. (Only a very little parts of our code does not have access to those)
That means that creating another rclcpp::Node node is redundant and also unaligned with the other strategy.
So I have to say that this PR is by the moment incorrect. The thumb rule is the following:
We have to use always:

getNode()
getLogger()

Any question you may have is welcome! Thanks @destogl

Regardless.
There are some parts that are good fixing some broken code (that maybe showed up in some merge action)

@pabloinigoblasco I agree with all you said and have updated the SM generation template accordingly.
I was confused what you what to achieve because node was only partially removed from the code.
Also, let't try to avoid huge PRs like #208 because it is easy to break things with them, and they make history very cluttered. We should strive that each feature and bug fix are in separate PRs.

@pabloinigoblasco I agree with all you said and have updated the SM generation template accordingly.
I was confused what you what to achieve because node was only partially removed from the code. Also, let't try to avoid huge PRs like #208 because it is easy to break things with them, and they make history very cluttered. We should strive that each feature and bug fix are in separate PRs.

You are right with those long commits #208. I guess that this is one of the reasons why we shouldnt leave stuff in red... once one enters in red, one does not know what one is breaking

We have two alternatives:

Statemachine dictionary/blackboard (simple for basic problems, it is not the most recommended approach, but better than global variables)

Using data components. This is a long discussion, but it is architectonically much more powerful and scalable. The most of the cases data belong to some "actor" or client in an orthogonal. The key issue is that you can create client behaviors that only gets the required data via .requiresClient and getComponent method. This is known in software engineering with many different names and with several variants, but one very famous the ("dependency injection"). Not always easy to make developers understand this, but is extremely powerful. I think this issue deserves some "blog entry" or "master video class" because at first glance most of developers would not understand why they need this.

Blackboard approach
Nonetheless, for a very basic initial example we could start with the "blackboard approach" and we could improve it later iwhen we have some more time. What do you think guys @destogl @brettpac?
   // sets arbitrary data into the state machine blackboard
  template <typename T>
  void setGlobalSMData(std::string name, T value);

  // returns true if data was found and successfully retreived from the state machine blackboard
  template <typename T>
  bool getGlobalSMData(std::string name, T & ret);

I agree, that for this example we should go with the blackboard approach, although we need to name it something different eventually.

@pabloinigoblasco I updated the code as you suggested. Please check my latest commit for it
Nevertheless, I am getting error with boost::any_cast.
bad any cast: boost::bad_any_cast: failed conversion using boost::any_cast

I suspect this is when I am trying to get the data back. Am I doing something wrong?

@pabloinigoblasco I updated the code as you suggested. Please check my latest commit for it
Nevertheless, I am getting error with boost::any_cast.
bad any cast: boost::bad_any_cast: failed conversion using boost::any_cast

I suspect this is when I am trying to get the data back. Am I doing something wrong?

The way you get the date is fine.
The issue is that our system is not being smart enough to see the compatibility of const char* with std::string.
We should improve that.
By the moment the solution would be to use a std::string value in the setter

@pabloinigoblasco the generated SM is now working as expected. Please check this and merge if you are happy.

In general it looks fine. Thank you.
The only thing I think is incorrect is keeping the author in a template file for file generation.
There is not any any problem on keeping your name as author (as you indeed are for this template file) but only if the generated code of the template does not have it.
//
// Author: Denis Štogl (template)
//


Add missing return types

Hello again. 🙂
This PR adds return types to functions that are missing ones. 👍  Also, question, phpdocs, yay or nay? 🤔

@thinkverse Thanks, appreciate it! TE the doc blocks, generally speaking I avoid them unless they add some sort of static analysis benefit which I think they could here, especially with the toArray method returning an array of integers.

@thinkverse Thanks, appreciate it! TE the doc blocks, generally speaking I avoid them unless they add some sort of static analysis benefit which I think they could here, especially with the toArray method returning an array of integers.

generally speaking I avoid them unless they add some sort of static analysis benefit which I think they could here, especially with the toArray method returning an array of integers.

Should I added 'em here or maybe open another PR?

generally speaking I avoid them unless they add some sort of static analysis benefit which I think they could here, especially with the toArray method returning an array of integers.

Should I added 'em here or maybe open another PR?

Here is fine. I think just adding return types in the docblocks is fine too, no need to add method descriptions etc.

Here is fine. I think just adding return types in the docblocks is fine too, no need to add method descriptions etc.

Already had them prepared if you're OK with a small one-line description on the methods, can remove the descriptions though if you prefer, it's up to you. 🙂

Already had them prepared if you're OK with a small one-line description on the methods, can remove the descriptions though if you prefer, it's up to you. 🙂

That's perfect!

That's perfect!

There ya' go. 👍

There ya' go. 👍


.imwrite ignores the IMWRITE_PNG_BILEVEL flag.

Probably bug
This is driving me crazy. I couldn’t even locate where it went wrong.
The imwrite method’s supposed to spit out a 1-bit binary PNG image file (PNG supports the bit depth of 1.) if the IMWRITE_PNG_BILEVEL flag is set, but it keeps generating 8-bit images.
                    if( params[i] == IMWRITE_PNG_BILEVEL )
                    {
                        isBilevel = params[i+1] != 0;
                    }

                    png_set_IHDR( png_ptr, info_ptr, width, height, depth == CV_8U ? isBilevel?1:8 : 16,

The minimum proof-of-concept
import OpenCV from "@u4/opencv4nodejs";

OpenCV.imwrite(
	"why.png",
	new OpenCV.Mat(0x100, 0x100, OpenCV.CV_8UC1),
	[OpenCV.IMWRITE_PNG_BILEVEL, 1]
);

Could anyone please help me find what’s so wrong about this piece of code?

Environment
I’m using a 64-bit Intel CPU, Windows 10, OpenCV 4.6.0 & @u4/opencv4nodejs 6.2.5.
The OpenCV was built with this command:
npx build-opencv rebuild
	--version 4.6.0
	--cuda
	--nocontrib
	--nobuild
	--binDir "opencv-4.6.0/build/x64/vc15/bin/"
	--libDir "opencv-4.6.0/build/x64/vc15/lib/"
	--incDir "opencv-4.6.0/build/include/"
	--keepsources

import FileSystem from "node:fs/promises";

const imencode_image_data = await OpenCV.imencodeAsync(
	".png",
	new OpenCV.Mat(0x100, 0x100, OpenCV.CV_8UC1),
	[OpenCV.IMWRITE_PNG_BILEVEL, 1]
);
await FileSystem.writeFile("imencode.png", imencode_image_data);

await OpenCV.imwriteAsync(
	"imwrite.png",
	new OpenCV.Mat(0x100, 0x100, OpenCV.CV_8UC1),
	[OpenCV.IMWRITE_PNG_BILEVEL, 1]
);

process.exit();

This bug only happens with the OpenCV.imwrite method. OpenCV.imencode respects the OpenCV.IMWRITE_PNG_BILEVEL flag. There might be something wrong with how OpenCV::imwrite was bound.

Bug
I’ve found what is wrong. Compare the two:
https://github.com/UrielCh/opencv4nodejs/blob/66d7d42abb17ae5c5f8b5cfe6bf7cb5409baf24a/cc/io/ioBindings.h#L56-L71
cv::imencode(ext, img, dataVec, flags);

and
https://github.com/UrielCh/opencv4nodejs/blob/66d7d42abb17ae5c5f8b5cfe6bf7cb5409baf24a/cc/io/ioBindings.h#L35-L44
cv::imwrite(path, img);

.
When the .imwrite binding method calls cv::imwrite, it does not supply the flags variable for the params argument (cv::imwrite(path, img);).

My fix suggestion
This line
https://github.com/UrielCh/opencv4nodejs/blob/66d7d42abb17ae5c5f8b5cfe6bf7cb5409baf24a/cc/io/ioBindings.h#L42
should be
      cv::imwrite(path, img, flags);

.

Look's correct; one more deep breath, and you can open your first PR.
Spooler alert: To be merged, a PR must contain a test function covering the new code (should be eight more lines)
👍

Extra note, small PR, are much more appreciated than bigger ones, so put each fix in a different PR.
You can create multiple branches on your fork to keep it clear.
I'll do my best to merge them quickly.


How to change AccessLevel of existing project member?

If I have a existing project member, how can I change the AccessLevel (user permissions) of this member without removing him from the project? Is this possible?

Sorry, I did miss the getMember method of the ProjectApi.
I found the solution:
projectApi.getMember(project.getId(), user.getId()).setAccessLevel(AccessLevel.GUEST);

@Spenhouet
Setting the access level on the member does not update the member, there is an edit member endpoint but a method to call it is not implemented.  I can add the following if you would like it added to the ProjectApi, simply re-open this issue:
public Member updateMember(Integer projectId, Integer userId, Integer accessLevel) throws GitLabApiException

@gmessner Good to know. Yes, it would be good to have the ability to change the access level of a project member.
I guess it would be more intuitive if the method would be named:
public Member updateMemberAccessLevel(Integer projectId, Integer userId, Integer accessLevel)

We try to mirror the GitLab API as much as possible, which is why GitLab4J is broken down into the sub-apis (ProjectApi, NotesApi, ...). There is actually another setting (expires_at) that can be updated on the member, see:
https://docs.gitlab.com/ee/api/members.html#edit-a-member-of-a-group-or-project
So I will actually be modifying the addMember to include the expiresAt param and creating updateMember() with this signature:
public Member updateMember(Integer projectId, Integer userId, Integer accessLevel, Date expiresAt) throws GitLabApiException

Just released 4.7.4.
updateMember() has been added to both the ProjectApi and GroupApi.  Have overloaded methods with and without expiresAt param.


Fix flashes

After merging the component library #21, I am noticing some red flashes on the UI -- this is typically because a VM.require is not fully loaded before attempting to load it.
The solution is typically to just give a fallback such as:
const { Button } = VM.require("/path") || ( () => <></> );

This way, when the functional component is called before it is loaded, it resolves successfull to <></>.
Flashes

[ ] Go to nearbuilders.org/feed, the left sidebar flashes looking for Button
[ ] Go to nearbuilders.org/resources, the left sidebar flashes looking for Button
[ ] Go to nearbuilders.org/library, the page flashes looking for Button

Note
Since these are all button, I know that in buildhub.near/widget/components, we VM.require button from and buildhub.near/widget/components.Button then return it from the module. It's possible the loading issues comes from here rather than the Widgets that are using Button.

I thought this was solved in @itexpert120 #29, but it does not appear so on the current gateway.
Things may act differently when developing locally since local relies on a readily available redirectmap rather than an async request.
Also, I think there was an issue with the advice I gave:
When we do,
const { Button } = VM.require("/path");

VM.require returns an object where Button is a function, essentially this:
const { Button } = {
    Button: () => <button />
}

So then a fix like () => <></> doesn't actually fix "Button not found".
Something like this would work:
const { Button, Post } = VM.require("/path");
Button = Button || () => <></>
Post = Post || () => <></>

Or:
const { Button, Post } = VM.require("/path") || { Button: () => <></>, Post: () => <></> }

On it


Flush After Presents

Flush after presents to avoid capture files with incomplete final blocks. The last block in a capture is often a present since the logic to quit is evaluated between a present and the next Vulkan call that would be made. By selctively flushing after presents we can take care of these cases without the cost (if any) of the option to flush after every block is written.
The warning seen when running many captures through convert, compress, and optimize is:
[gfxrecon] WARNING - Incomplete block at end of file

CI gfxreconstruct build queued with queue ID 15925.

CI gfxreconstruct build # 2093 running.

CI gfxreconstruct build # 2093 passed.

It might be worth investigating whether something like this was also needed to get data all the way out of even OS disk cache to storage on clean shutdown:

This shouldn't be necessary.  fwrite does have a local buffer (see https://man7.org/linux/man-pages/man0/stdio.h.0p.html) but that buffer is flushed on normal exit (see https://www.gnu.org/software/libc/manual/html_node/Flushing-Buffers.html) and should then be the operating system's I/O cache.  If the data is in the operating system's hands, the data will be written to the file unless the system itself has a hard crash.
So this PR is really a solution for getting data into the operating system's hands in the case of an abnormal shutdown like killing through Task Manager or an unhandled signal on Linux or Android.
I think it's good, and as we discussed we just need a little measurement to make sure the performance characteristics are as we expect.

Food for thought! I'm still concerned about whether the stdlib doing the
exit for the app is the same std lib we are linked against. If not, how's
it going to know to close our files? Most extreme version off the top of my
head, app is a windows game running through steam proton on linux. we live
on the linux side. Less extreme, app static links a std lib and we dynamic
link the system std lib. I think the safest bet is to go belt and braces:
flush, maybe fsync, fclose, both our files through any shutdown mechanism
we can trap.
On Fri, 28 Oct 2022 at 19:09, bradgrantham-lunarg @.***>
wrote:

It might be worth investigating whether something like this was also
needed to get data all the way out of even OS disk cache to storage on
clean shutdown:
This shouldn't be necessary. fwrite does have a local buffer (see
https://man7.org/linux/man-pages/man0/stdio.h.0p.html) but that buffer is
flushed on normal exit (see
https://www.gnu.org/software/libc/manual/html_node/Flushing-Buffers.html)
and should then be the operating system's I/O cache. If the data is in the
operating system's hands, the data will be written to the file unless the
system itself has a hard crash.
So this PR is really a solution for getting data into the operating
system's hands in the case of an abnormal shutdown like killing through
Task Manager or an unhandled signal on Linux or Android.
I think it's good, and as we discussed we just need a little measurement
to make sure the performance characteristics are as we expect.
—
Reply to this email directly, view it on GitHub
https://github.com/LunarG/gfxreconstruct/pull/862#issuecomment-1295306817,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AZDANZ5AML6HFH4BGUZS6STWFQJE5ANCNFSM6AAAAAARIEJAFQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

As noted in the other issue, all instances of libc will make an atexit to close all files and that flushes all files.  I'm not worried about it in the slightest.  I think this PR's content, flush at Present is a good idea.


[Question] Is it compatible with the Stream feature of gRPC Python client

Hi bRPC developers @chenBright @wwbmmm @wasphin @thorneliu
As titled, is bRPC compatible with the Stream feature of gRPC Python client?
The main use case is similar to the SSE feature of ChatGPT, with the client accessing it being Python and using the Streaming mode.

From what I understand, bRPC does not support gRPC streaming.


Safe and unsafe zip on Getter

I was recently looking through a presentation on Monocle 3 and saw the following issue with zip - https://blog.fp-tower.com/monocle-3-a-peek-into-the-future/#75.
I was wondering, if we have evidence that the target types for the two Getters are different, than the resulting Getter  should always be lawful.
final val msg =
    "Zipping two Getters with the same target type is potentially unsafe, consider using zipUnsafe"

trait Getter[S, A] { self =>

  def get(s: S): A

  def zip[A1](other: Getter[S, A1])(
      using @implicitNotFound(msg) ev: NotGiven[A =:= A1]
    ): Getter[S, (A, A1)] =
    Getter[S, (A, A1)](s => (self.get(s), other.get(s)))

  def zipUnsafe(other: Getter[S, A]): Getter[S, (A, A)] =
    Getter[S, (A, A)](s => (self.get(s), other.get(s)))
}

object Getter:
  def apply[S, A](_get: S => A): Getter[S, A] =
    (s: S) => _get(s)

case class Person(name: String, age: Int)

val name = new Getter[Person, String]:
    def get(p: Person): String = p.name

val age = new Getter[Person, Int]:
    def get(p: Person): Int = p.age

val nameAndAge = name.zip(age)

// val nameAndName = name.zip(name)

val nameAndNameUnsafe = name.zipUnsafe(name)

Trying to compile with nameAndName gives the following error -
[error] -- Error: ..../src/main/scala/Main.scala:38:32 ------
[error] 38 |val nameAndName = name.zip(name)
[error]    |                                ^
[error]    |Zipping two Getters with the same target type is potentially unsafe, consider using zipUnsafe
[error] one error found
[error] one error found
[error] (Compile / compileIncremental) Compilation failed
[error] Total time: 4 s, completed 27 Feb 2021, 21:30:30

Edit: Scratch that, I can break it by doing the following, val nameAndAgeAndName = name.zip(age).zip(name). Feel free to close this :)

Np, zip is safe for Getter because Getter[S, A] is a fancy wrapper over S => A.
The problem is for Lens where you can modify  the target. Maybe if we could keep track of the path within the data structure... Anyway I don't think it is worth the effort :)


feat(core): add custom table check constraint support for postgres

Adds a new @Check decorator for entities, allowing to set up custom check
constraints. At the moment, this is only for Postgres, as MySQL only supports
check constraints as of version 8, which is above the minimum test version.
While SQLite does in theory support check constraints already, tests broke due
to some bug in Knex, which is why the implementation was skipped for now.
This partially addresses #1711

Note:
Due to already existing other check constraints (namely, enums in Postgres), I decided to suffix all custom check constraint names with _custom, so I can filter them out where necessary.

Codecov Report

Merging #2688 (6f50c8a) into master (341f4c0) will decrease coverage by 0.04%.
The diff coverage is 92.64%.

@@             Coverage Diff             @@
##            master    #2688      +/-   ##
===========================================
- Coverage   100.00%   99.95%   -0.05%
===========================================
  Files          193      194       +1
  Lines        11285    11374      +89
  Branches      2568     2585      +17
===========================================
+ Hits         11285    11369      +84
- Misses           0        5       +5

Impacted Files
Coverage Δ

packages/knex/src/schema/SchemaHelper.ts
98.38% <0.00%> (-1.62%)
:arrow_down:

packages/knex/src/schema/SchemaComparator.ts
99.15% <88.88%> (-0.85%)
:arrow_down:

packages/knex/src/schema/SchemaGenerator.ts
99.64% <92.85%> (-0.36%)
:arrow_down:

packages/core/src/decorators/Check.ts
100.00% <100.00%> (ø)

packages/core/src/decorators/index.ts
100.00% <100.00%> (ø)

packages/core/src/typings.ts
100.00% <100.00%> (ø)

packages/knex/src/schema/DatabaseSchema.ts
100.00% <100.00%> (ø)

packages/knex/src/schema/DatabaseTable.ts
100.00% <100.00%> (ø)

packages/mysql-base/src/MySqlSchemaHelper.ts
100.00% <100.00%> (ø)

packages/postgresql/src/PostgreSqlSchemaHelper.ts
100.00% <100.00%> (ø)

... and 6 more

Continue to review full report at Codecov.

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

I gonna address the outstanding issues once I receive general sign-off or feedback on this PR :)

Due to already existing other check constraints (namely, enums in Postgres), I decided to suffix all custom check constraint names with _custom, so I can filter them out where necessary.

If that is the only reason, I would definitely like to refactor it before stable v5 is out, but I can do that myself after we merge.

Thanks a lot for your quick feedback!
Would you like to me to address the mentioned points, or would you rather prefer to just fork from my branch, since you mentioned that you'd like to introduce some changes and additions to it anyway?

Yes please, address it here before we merge it (as said I am fine merging the _custom thingy for now). Would be good to also test the uncovered lines.

please dont rebase and force push, so i can see what you actually changed after the review

please dont rebase and force push, so i can see what you actually changed after the review

Sorry, force of habit :) – Will to separate commits on here from now on!

Hello guys
Are we aware that this PR breaks projects since it needs to add checks in migrations ?
I had to create migration again so that it adds checks, checks that I don't need.
    this.addSql('alter table "user" drop constraint if exists "user_id_check";');
    this.addSql('alter table "user" alter column "id" type bigint using ("id"::bigint);');
    this.addSql('alter table "user" drop constraint if exists "user_created_at_check";');

Do I need to do anything to ignore this ?
Is this behavior by default since the merging of this PR ?

It works just fine in the tests, so please provide reproduction so we can see more details. Not sure what you mean by "since it needs to add checks in migrations", this PR adds support for diffing check constraints. If you were using some before, you will need to define them in the entity definition (via the @Check() decorator), otherwise the ORM will try to remove them. That is correct behaviour, you need to define all check constraints now at the metadata level.

I have no idea what so ever. If this persist I am gonna make a repro.
what I can tell you for sure is that I didn't have any checks before.

Don't be too concerned with the drop constraint if exists queries - those are there for each column update query, we do it blindly as we did not know before if there is a constrain or not. We could improve there finally, as we have this information. Will take a look if we can, I would very much like to get rid of this hack.
Try adding some logs to the schema comparator to see what caused the alter column query, there can be many reasons - obviously if it broke now, it might be because of the check constraints, but the ORM was using them only for enums in postgres, so it sounds weird to see a query for altering PK column (but I really can imagine you actually had such constraint before, PKs are unsigned and postgres does not have unsigned columns, it can be done only via check constraints, and maybe that is what you get from serial/bigserial meta types).
https://github.com/mikro-orm/mikro-orm/blob/master/packages/knex/src/schema/SchemaComparator.ts#L375

I have no idea what so ever. If this persist I am gonna make a repro. what I can tell you for sure is that I didn't have any checks before.

Hi. I have a similar problem. When setting constraints with the @Check, migrations are overwritten.
Have you found a solution?


Integrate translations with yamlclean rubygem

Force-pushed a new commit to address those issues :)

ping @tractorcow

Nice job. :D

Phew, I've tested this, and merged back to 1.x (hope that helps you out tomorrow @dhensby )


Notify users if Registration Updates failed

Currently a user gets no notifications if registration updates failed or if the registration has already timed out due to connectivity issues or similar. It would be helpful to get such a notification as additional M2MInterface::Error in order to allow a user to react accordingly.
Br,
Sebastian

ARM Internal Ref: IOTCLT-2137

Thanks for reporting. We will check and see how we can improve this experience.

Closing the issue as inactive and due to the repository being deprecated.
Please take a look at our current offering at https://cloud.mbed.com/docs/current. The actively maintained version of this component can be found in http://github.com/armmbed/mbed-cloud-client.
Please open a new issue if this is still valid. We strongly encourage you to migrate to the latest product. New issues in this repository will most likely remain unfixed.


Information on the input data of the extragalactic sources

Hey!
I have two questions about the Extragalactic section of the Cosi Data Challenge 2.
For the input data of 3C279_low100 and 3C279_high100, the given value for the flux must be multiplied by 2. Does this also apply to the spectral data?
For 3C 273 it says that the baseline model can be found in Madsen et al 2015. Where do the input data of 3C 279 and 4C+21.35 come from?
Thank you very much!

Hello,

For the input data of 3C279_low100 and 3C279_high100, the given value for the flux must be multiplied by 2. Does this also apply to the spectral data?

For the MEGAlib simulations, the normalization is set by the Flux keyword in the source file, whereas the spectrum just gives the shape. The factor of 2 that is mentioned in the spectrum files has already been applied in the source files (and thus in the simulations). If you wanted to just plot the spectrum from the given file at the same normalization level as the simulations, then yes, you would need to multiply by 2.

Where do the input data of 3C 279 and 4C+21.35 come from?

The input for 3C 279 is from the work here: https://ui.adsabs.harvard.edu/abs/2015ApJ...804...58Z/abstract
For 4C+21.35, the light curve is taken from the Fermi light curve repository, and the spectrum is extrapolated from the Fermi-LAT log parabola model from the 4FGL-DR3 (which is also the one used in the light curve repository).
Hopefully this answers your questions, but please let me know if I need to clarify anything else.

Thank you, this helps me a lot!

Hello @ckarwin,
I have another question. I would like to plot the input data. So I wanted to ask from which 3 months exactly the data for 3C279 and 4C+21.35 were taken?
Thank you!


Doesn't create database or tables

Steps to reproduce
Try to use it without creating the database/table first
Expected behavior
Should create the database and table
Actual behavior
Throws an error which can't even be deciphered without debugging node

Database feathers does not exist.

Table feathers.users does not exist.

System configuration
Module versions (especially the part that's not working):
"feathers-rethinkdb": "^0.3.3"
NodeJS version:
7.3.0
Operating System:
Windows 10

nvm there's an additional init method

@ForsakenHarmony why can't you create a service then call the method?
app.use('messages', rethinkService({}) );

app.service('messages').init().then(...);

@marshallswain that leads to the same Error : Unhandled rejection ReqlRuntimeError
I've tried putting it everywhere
if I put the app.use in the then block it tells me that I have to configure every service before the auth service, any other way and I get that Error ^

Stacktrace
Unhandled rejection ReqlRuntimeError
    at Connection._processResponse (node_modules\rethinkdbdash\lib\connection.js:395:15)
    at Socket.<anonymous> (node_modules\rethinkdbdash\lib\connection.js:201:14)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at Socket.Readable.push (_stream_readable.js:134:10)
    at TCP.onread (net.js:551:20)

Hmmm...   That's odd.  Here's how it's used in the tests: https://github.com/feathersjs/feathers-rethinkdb/blob/master/test/index.test.js#L259
Can you try it that way and give me an update?

It tells me that I have to configure every service before the auth service.

I missed that part.  We should probably make the init functionality available as a standalone utility, so it's not attached to a service.  Then you'll be able to do all of your preparation in a single step, then setup all of your services and Auth.

so I have to create them manually for now?

That's what I'd recommend, for now.  Or make a pull request.  :)

I just tried locally (and on CI) and init should work. To make sure that all tables are created you can register the services the way they are supposed to and then use this:
const inits = Object.keys(app.services).map(path => {
  const service = app.service(path);

  if(typeof service.init === 'function') {
    return service.init();
  }

  return Promise.resolve();
});

Promise.all(inits).then(() => app.listen(3030));

before starting the app. Calling init multiple times (or with an existing table) shouldn't do anything.

that does sound interesting

kinda having difficulties with this now, init is already called in the services to bind the hooks which seems to lead to it trying to initialise the database twice, getting errors from that

It shouldn't do anything if the db already exists.

Also not sure how to initialise the hooks, because they were originally in init().then(...)
userService.init().then(() => {
  // Set up our before hooks
  userService.before(hooks.before);

  // Set up our after hooks
  userService.after(hooks.after);
});

You can register the hooks before the table is initialized. What exactly is the issue? Are you trying to add something to the db once the server starts up?

ok, I have no idea why I have it after the promise

bump

Can you create a breaking example and open a new issue? I'm using the exact same code I posted above to run our tests and never had an issue.

managed to fix it with this
https://gist.github.com/ForsakenHarmony/a29e7684425642b7e3c6888e3794b253

I think your example breaks as soon as you have multiple services

I thought it worked with two services but maybe it was just a weird race condition. Here is the correct way to run it sequentially:
let promise = Promise.resolve();

const inits = Object.keys(app.services).map(path => {
  const service = app.service(path);

  if(typeof service.init === 'function') {
    promise = promise.then(() => service.init());
  }
});

promise.then(() => app.listen(3030));

This has been added to the new generator now via https://github.com/feathersjs/generator-feathers/pull/172


Add bin full alert to HaclCodes

I can't tag the release for the next few days because I'm away and can't do it on mobile but I'll do it when I get back

I can't tag the release for the next few days because I'm away and can't do it on mobile but I'll do it when I get back

I can take care of this one too if you want.

@gazpachoking yes please 🙏

0.16 is good to go!


IMapFeatureLayer.SelectionChanged not fired when deselecting

This issue was imported from CodePlex
bjoernpoettker wrote 2011-09-17 at 10:22
Hi,
when I deselect a feature with CRTL + mouse-click the feature isn't highlighted anymore but the SelectionChanged event isn't fired.

Not reproduced.


styling #iframeinsert for smartphone

Hi,
I am trying to adapt navbar for smartphone and save space to the app.
When I set all  buttons in the same
, It seems ok!
<!DOCTYPE html>

		  <meta name="viewport" content="width=device-width, initial-scale=2">

					Stop app

					Admin
					Sign Out

But when I reduce the width of the windows (browser),  a  vertical white space appears .

At some larger width (769 pixels) the space disappears but the the user icon goes down.

Thanks!

It was the padding-top of iframe fixed at 150 px in /css/default.css  line 25 and 48.
Just reduce the padding-top to 50 px.
I added default.html file to /css  folder.
and changed the line  in index.html as
<link rel="stylesheet" media="screen"<EMAIL_ADDRESS>
by
<link rel="stylesheet" media="screen" href="css/default.css"/>

but it seems taht the custom default.css is not read.

We need to set a new path of the new default.css file, like this
<link rel="stylesheet" media="screen"<EMAIL_ADDRESS>
and change the link for app.html, index.html, and admin.html
in original  default.css there is 3 times setting of  iframe {padding-top:200px}. Maybe is not needed.
thanks


Chore: add postgres example

ref: https://github.com/dai-shi/wakuwork/issues/17#issuecomment-1535566006
Closing this for now, but I'm very curious how people use it.


Feature: EMPDless in 23.1+

Consider adding support to run without EMPD in 23.1+
https://blog.erlware.org/epmdlessless/

Jep, already seen this and been thinking the same.
We need to investigate the implications for:

the actual release and nodetool commands
cluster_com
vmq-admin tool and commands
how to's for docker/k8s


[BUG] Connection not work, if the expiration is set to "Never"

If applicable to your issue, please include:
- A description of the bug, including actual behavior and if applicable, expected behavior
Connection not work, if the expiration is set to "Never"
If an expiration time is chosen the connection works
If I choose "Never" then "Logging in ..." appears but nothing happens

- Info about your system (device, OS, browser and browser version)

System Info
Dashy Version: V 1.3.6
Browser: Firefox
Is Mobile? No
OS: Windows

Any console errors? If the issue happens at runtime, open up the dev tools [F12], and go to the Console tab. If the output is very long, please use 0bin
https://0bin.net/paste/9xymypXr#oiiiQfiFH2fE5Ipm6RdopVTMWTAqlLd69cf3KmFhdql

Thanks for raising this, looks like it was an issue when I calculated the timeout, when set the Never the data times out immediately causing an error. I've fixed it in #71 :)


this file is the project implementation of project with radam optimizer

lgtm

hey what about mish

@pranshurastogi29 https://github.com/ucalyptus/Pneumothorax-Segmentation-using-Hypercolumns/issues/38


VSCode, PyCharm, Kate support

VSCode support
PyCharm support
Kate support
Fixed maps issue
Fixed typo

Closes #13

https://github.com/franciscolourenco/done also doesn't seems to be using it

Thanks @anki-code !


Problem using another .h5

Hi I tried your project and I liked it ;)
I tried also to change another .h5 file to create only a binary classification (dogs vs cats) but uncommenting the lines of the code to do it and putting my.h5 in the model folder, I have different problems. Can you explain me which should be the features to create a .h5 file to work on it ?
For example I tried to used this .h5 file (https://drive.google.com/open?id=19yICdtSbU_YkQBRxJ2if9KJwUL1oY5xs) from this tutorial (https://deeplizard.com/learn/video/XgzxH6G-ufA) to create only a binary classification.
Can you explain me how to re-edit it to work with this tutorial?
Thanks in advance and let me know.
I really appreciate your project 👍🏻

Basically, you just need to modify these lines in.app.py:
https://github.com/mtobeiyf/keras-flask-deploy-webapp/blob/39144f7304c2fa76229e62b4b00f244115f4a8e4/app.py#L30-L42
Comment out line 31, and uncomment line 40. Once the model is successfully loaded, you should be good to go.

Thanks for the answer. I did it but , using this .h5 (https://drive.google.com/open?id=19yICdtSbU_YkQBRxJ2if9KJwUL1oY5xs) file inside the /models folder I have this error
  pred_class = decode_predictions(preds, top=1)   # ImageNet Decode   File "/usr/local/lib/python3.6/site-packages/tensorflow_core/python/keras/applications/__init__.py", line 49, in wrapper     return base_fun(*args, **kwargs)   File "/usr/local/lib/python3.6/site-packages/tensorflow_core/python/keras/applications/imagenet_utils.py", line 30, in decode_predictions     return imagenet_utils.decode_predictions(*args, **kwargs)   File "/usr/local/lib/python3.6/site-packages/keras_applications/imagenet_utils.py", line 222, in decode_predictions     'Found array with shape: ' + str(preds.shape)) ValueError:decode_predictions expects a batch of predictions (i.e. a 2D array of shape (samples, 1000)). Found array with shape: (1, 2) <IP_ADDRESS> - - [2020-10-21 15:58:12] "POST /predict HTTP/1.1" 500 411 0.527850
Where do you think could be the error?
I'm trying to re-adapt this tutorial (https://deeplizard.com/learn/video/XgzxH6G-ufA) to your model.

Seems like the output decoding should be modified, since you're not using imagenet model, which has 1000-dim output (but yours just has 2 classes).
Check out these lines. Pick the max, set the result to "dog" or "cat" accordingly.
https://github.com/mtobeiyf/keras-flask-deploy-webapp/blob/39144f7304c2fa76229e62b4b00f244115f4a8e4/app.py#L79-L84

Thank again. I tried to re-edit in this way:
`        # Make prediction
preds = model_predict(img, model)
    # Process your result for human
    pred_proba = "{:.3f}".format(np.amax(preds))    # Max probability
    pred_class = decode_predictions(preds, top=1)   # ImageNet Decode

    #result = str(pred_class[0][0][1])               # Convert to string
    #result = result.replace('_', ' ').capitalize()

    #prediction = model.predict(processed_image).tolist()

    result = {
        'pred_class': {
            'dog': pred_class[0][0],
            'cat': pred_class[0][1]
        }
    }`

But same error. Can you re-edit it rapidly please 🙏🏻 ?

The result variable is just a string. You need to assign either 'dog' or 'cat' to it, based on your prediction output.

I tried in this way
        result = {

                'dog': pred_class[0][0],
                'cat': pred_class[0][1]

        }

but I have this error
 File "/usr/local/lib/python3.6/site-packages/keras_applications/imagenet_utils.py", line 222, in decode_predictions
    'Found array with shape: ' + str(preds.shape))
ValueError: `decode_predictions` expects a batch of predictions (i.e. a 2D array of shape (samples, 1000)). Found array with shape: (1, 2)

I tried now with the code at left of this screen
https://ibb.co/fdX31VK
and I obtain this
https://ibb.co/JvDBMMf
I think I'm near to the solution.
Can you help me in these last steps?

I told you the result variable should be a string, not a json-like dictionary. For example
@app.route('/predict', methods=['GET', 'POST'])
def predict():
    if request.method == 'POST':
        # Get the image from post request
        img = base64_to_pil(request.json)

        # Save the image to ./uploads
        # img.save("./uploads/image.png")

        # Make prediction
        preds = model_predict(img, model)

        # determine it's a dog or cat
        # then, assign it to the result, for example
        if preds[0][0] > preds[0][1]:
            result = "dog"
        else:
            result = "cat"

        # Serialize the result, you can add additional fields
        return jsonify(result=result)

    return None

Ok great, now it works. Thank you again ;)


Examples don't appear on documentation

Currently, there is an experiments tab on the doxygen page, but nothing listed.
Need to rebuild doxygen and check doxygen setting.

It appears that there is not really a direct way to have doxygen pickup the example files, and that examples pages will need to be created manually.


Simplify ConsistencyLevel and CosmosStruct

@thomastaylor312 and I are looking into simplifying the cosmos crate. This PR contains changes to two types that are indicative of the larger changes we would like to make.
In general these changes favor concrete types over traits. Some additional changes I'd like to make include but are not limited to:

Remove the CosmosClient trait and and rename CosmosStruct to CosmosClient.
Change the hyper_client field of CosmosStruct to client and make it a Box<dyn Client> . This is somewhat dependent on other work to abstract the client usage so implementations are not dependent on a particular http implementation.
Consolidate all the clients into one client CosmosClient (aka CosmosStruct)

This is great work ❤ . I think we probably want to merge https://github.com/Azure/azure-sdk-for-rust/pull/79 first since many modifications are probably going to create conflicts.


Bazel extractor: Separate spawn-specific logic from extraction. [phab:D1790]

Created by fromberger at 2017-07-20 16:48:18:
In order to support some of the "native" Bazel rules, separate the part of the
extractor that handles the relatively-generic parts of the rule plumbing, viz.
inputs, outputs, arguments, target, and environment, into their own type.  The
extraction machinery now operates on that type, allowing the caller to handle
other rule types on a case-by-case basis.
The existing tools have been updated to preserve the spawn-specific logic.  We
might want to pull those apart further in the future.
Update unit tests.
Update extractor uses for the switch to ActionInfo.

shahms wrote at 2017-07-20 16:51:22:
Thanks!

shahms accepted this revision at 2017-07-20 16:51:22

fromberger closed via commit 6f748d07f4683b8ec73c0cfa1e4900de1fa94d49 at 2017-07-20 16:55:46


zsh commands output by install.sh have syntax issues

Operating system and version:
Linux 6.11.3-200.fc40.x86_64 # 1 SMP PREEMPT_DYNAMIC Thu Oct 10 22:31:19 UTC 2024 x86_64 GNU/Linux
nvm debug output:

> nvm debug
nvm --version: v0.40.1
$SHELL: /bin/zsh
$SHLVL: 1
whoami: 'vernica'
${HOME}: /home/vernica
${NVM_DIR}: '${HOME}/.nvm'
${PATH}: ${HOME}/local/bin:${HOME}/.local/bin:${HOME}/go/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin
$PREFIX: ''
${NPM_CONFIG_PREFIX}: ''
$NVM_NODEJS_ORG_MIRROR: ''
$NVM_IOJS_ORG_MIRROR: ''
shell version: 'zsh 5.9 (x86_64-redhat-linux-gnu)'
uname -a: 'Linux 6.11.3-200.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Oct 10 22:31:19 UTC 2024 x86_64 GNU/Linux'
checksum binary: 'sha256sum'
OS version: Fedora Linux 40 (Workstation Edition)
awk: /usr/bin/awk, GNU Awk 5.3.0, API 4.0, PMA Avon 8-g1, (GNU MPFR 4.2.1, GNU MP 6.2.1)
curl: /usr/bin/curl, curl 8.6.0 (x86_64-redhat-linux-gnu) libcurl/8.6.0 OpenSSL/3.2.2 zlib/1.3.1.zlib-ng brotli/1.1.0 libidn2/2.3.7 libpsl/0.21.5 libssh/0.10.6/openssl/zlib nghttp2/1.59.0 OpenLDAP/2.6.7
wget: /usr/bin/wget, GNU Wget2 2.1.0 - multithreaded metalink/file/website downloader
git: /usr/bin/git, git version 2.47.0
ls: cannot access 'grep='\''grep'$'\n''/usr/bin/grep': No such file or directory
grep: grep='grep --color=auto'
	/usr/bin/grep (grep --color=auto), grep (GNU grep) 3.11
sed: /usr/bin/sed, sed (GNU sed) 4.9
cut: /usr/bin/cut, cut (GNU coreutils) 9.4
basename: /usr/bin/basename, basename (GNU coreutils) 9.4
ls: cannot access 'rm='\''rm'$'\n''/usr/bin/rm': No such file or directory
rm: rm='rm -i'
	/usr/bin/rm (rm -i), rm (GNU coreutils) 9.4
mkdir: /usr/bin/mkdir, mkdir (GNU coreutils) 9.4
xargs: /usr/bin/xargs, xargs (GNU findutils) 4.9.0
nvm current: system
which node: /usr/bin/node
which iojs: iojs not found
which npm: /usr/bin/npm
npm config get prefix: /usr/local
npm root -g: /usr/local/lib/node_modules

nvm ls output:

> nvm ls

->       system
iojs -> N/A (default)
node -> stable (-> N/A) (default)
unstable -> N/A (default)

How did you install nvm?

> curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

What steps did you perform?
> curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

What happened?
I copied and pasted the lines as the install script instructed and they show errors in ZSH:
> curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
...
=> Downloading nvm from git to '/home/vernica/.nvm'
=> Cloning into '/home/vernica/.nvm'...
...
=> Compressing and cleaning up git repository

=> Appending nvm source string to /home/vernica/.zshrc
=> Appending bash_completion source string to /home/vernica/.zshrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

> export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

zsh: bad pattern: #

What did you expect to happen?
The commands output by the script should not have syntax errors.
Is there anything in any of your profile files that modifies the PATH?

> grep -i PATH ~/.zshrc
fpath=(~/local/completion $fpath)
## -- - PATH - --
path=("$HOME/local/bin" "$HOME/.local/bin" "$HOME/go/bin" $path)
export NODE_PATH=$HOME/usr/lib/node_modules
#         export PATH="/home/vernica/miniforge3/bin:$PATH"

While you certainly shouldn’t be setting NODE_PATH with or without nvm, that “bad pattern” error is concerning. Does it continue to occur, or only during the install script?

The bad pattern error is caused by the presence of # in the commands (used for comments). In Zsh scripts, it is fine, but in Zsh commands, it is bad.
For example:
> ls # foo
zsh: bad pattern: #

So, these commands get added to my ~/.zshrc script and work fine as # indicates a comment, but if I copy & paste the commands (as the install script suggests) that will trigger the bad pattern error.

ahhh thanks for clarifying.
It seems very strange that zsh would treat a line in a sourced script any differently from a line in the terminal directly; that seems like a huge bug farm. Is perhaps your shell non-interactive? Alternatively, have you altered the default behavior of the interactivecomments zsh option?

It is an interactive Zsh prompt and I made no changes to the behavior of interactivecomments

what's setopt output?

> setopt
autocd
nobeep
extendedglob
interactive
monitor
promptsubst
shinstdin
zle

my stock zsh has:
combiningchars
interactive
monitor
shinstdin
zle

so you have autocd, nobeep, extendedglob, and promptsubst enabled, and combiningchars disabled. Could you try flipping each of those one at a time and seeing if it makes anything change?


Rework attributes handling (WIP)

I think some changes here change the json report (type and classifier aren't fields of Artifact any more)... I guess I'll add some non regression tests for it, and ensure nothing changes.
The classes that are used to decode Scaladex requests changed too (because of organization and name, that now have their dedicated case classes). I guess some basic tests for that could be added.


Change Fetch First Rendered Syntax - Always use "rows" after "offset"

@kazuki43zoo - thanks for catching this!

Coverage remained the same at 100.0% when pulling 87ecb54dc400ea79c646563528b7188025e4091d on jeffgbutler:master into e76d20139d6b2c0b2aa71991c7b9745b123c2f3a on mybatis:master.

This PR related with #96 .


Bug 1723422 - fix pagination url, bump bundle-lib

When using APIV2 registries, if we hit the pagination sequence, the registry code would fail to get the next page and thus not return any images to the broker. If the set of images on the registry is less than the page size, things worked or if the images were listed individually in the configuration.
Fixes: BZ 1723422

https://bugzilla.redhat.com/show_bug.cgi?id=1723422

Coverage remained the same at 41.003% when pulling c583696bf9e38c6f8a72fe06133e836db9255163 on bz1723422 into af45156ab3841adc6db257a69c64d580b5550642 on release-1.3.

/lgtm


UI Component - React Beta not applying styles

Description

React Beta code not applying styles

[ ] React

Will close this as it relates to "old" storybook instance


Add discoverability

From nexus-kg created by umbreak : BlueBrain/nexus-kg#425

We have metadata as direct elements to the resource. E.g.:
{
 ...
 "_project": "{project_uri}",
 "_constrainedBy": "{schema_uri}"
}


Introduce Spotless to format Java code

Prerequisite: https://github.com/diffplug/spotless/issues/1059


Autosleep setting not persisting between reboots

Describe the bug
The automatic sleep setting in oxide options do not retain the setting on reboot. It appears to be go to a default option
To Reproduce
Steps to reproduce the behavior:

Go to Options
Turn off automatic sleep
Reboot the device
Rechecking the settings will show that it’s now enabled

Expected behavior
The option being saved between boots
Version Information:

Device: reMarkable 2
OS: <IP_ADDRESS>5
Version 2.6.0

Could you attach logs. I'd recommend setting DEBUG=1 in the environment with a systemd unit override before rebooting. This will give debug logs.

@FouzR is this still an issue? If so, would you be able to provide logs now?

@FouzR poke? I will be closing this after the next release if I don't get a response.

Unfortunately, I can't really test this anymore =P
I've sold my rM2, so until the Paper Pro has some headway into this being added, I can't help :/


[✨] Receive requestEvent in server$ differently

Is your feature request related to a problem?
today, to access the requestEvent inside a clojure of a server$ primitive, you have to use the this keyword. I personally don't like using this like that, feels so imperative. Where is it coming from? feels extra magical. I would prefer seeing it coming a parameter as all the other primitives do. That way does feel really natural, because of the reactive (and functional IMO) nature of Qwik. The this really feels like classes. So because of that I've thought that maybe it would be interesting to change how requestEvent is "handed off" from Qwik Router to server$
Describe the solution you'd like
expectation:
import { component$ } from<EMAIL_ADDRESS>import { server$, routeLoader$ } from<EMAIL_ADDRESS>
const encryptInServer = server$(({ env }: RequestEvent) => (message: string, luckyNumber: number) => {
  const secretKey = env.get('SECRET_KEY');
  const encryptedMessage = encrypt(message, secretKey);
  console.log('the lucky number is =>', luckyNumber)
  return encryptedMessage;
});

export default component$(() => {
  return (
    <>
      <button
        onClick$={() => {
          const encrypted = await encryptInServer('Hello world', 22);
          console.log(encrypted);
        }}
      >
        Click me
      </button>
    </>
  );
});

as you control server$, I think it should be possible to take the parameters' values when executing encryptInServer (in the onClick$) and provide them in the server$ as arguments but in a different way than today

Describe alternatives you've considered
I didn't consider any other alternative, to be honest
Additional context
No response

We moved this issue to qwik-evolution repo to create a RFC discussion for this.
Here is our Qwik RFC process thanks.


Color Picker Bad hiDPI support

Issue description:

the color picker top area does not take EDSCALE into account and is sized wrongly when using hiDPI.
HiDpi

Normal Dpi

the color picker is working? wow
On Wed, Jun 14, 2017 at 7:33 PM, Timo<EMAIL_ADDRESS>wrote:

Issue description:
the color picker top area does not take EDSCALE into account and is sized
wrongly when using hiDPI.
HiDpi
[image: screen shot 2017-06-14 at 15 32 55]
https://user-images.githubusercontent.com/16718859/27157526-c2d1dc98-5116-11e7-9558-ff469080579e.png
Normal Dpi
[image: screen shot 2017-06-14 at 15 27 00]
https://user-images.githubusercontent.com/16718859/27157505-a5697ba2-5116-11e7-8801-dce3d2d34221.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/9184, or mute the thread
https://github.com/notifications/unsubscribe-auth/AF-Z2-UxrVehthy4AGtHlra4RYwf509Rks5sEF-vgaJpZM4N6hbN
.

better than ever before but still having issues. Always showing black and white...

yes, one of the latest commits seems to have finally fixed it. great :)

but the color in the bar not the right is still inverted

@toger5 and the crosshair is not moving (as is the measuring line in the bar on the right)

seems like we could need a tracker for the color picker? all those things are different issues.

I've made a pull request.  It is working completely now.


[Add] Social share button animation

Details
The proposed addition is to implement a new social share button that has a unique structure and displays all the social media icons for sharing when hovered upon.
On hover, a hidden panel containing various social media icons will be revealed, allowing users to easily share the content on their preferred social platforms.
Screenshots
No response
Type of Contribution

[ ] Update to an existing Animated Button
[X] Adding a new Button
[ ] Resolving a bug
[X] Proposal to the Repository
[ ] Changes related to documentation or README.md
[ ] Other Changes

Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue
[X] I am a GSSoC'23 contributor

Yes Sir , I can
On Tue, Aug 1, 2023, 10:06 PM Sourav Mishra @.***>
wrote:

instead can you add feature to share the button on social media as link or
any thing else @Nishusk https://github.com/Nishusk
—
Reply to this email directly, view it on GitHub
https://github.com/Spyware007/Animating-Buttons/issues/1911#issuecomment-1660697205,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYHSJJHARUNXGGBQTBUQIILXTEWCRANCNFSM6AAAAAA2454DCU
.
You are receiving this because you were mentioned.Message ID:
@.***>


Apply Spring Boot's Application Exit support

This PR applies Spring Boot's Application Exit support.
Closes gh-40

LGTM, rebased and merged. Thank you for your PR!


Add Websocket Proxy and Multiplexer

This PR adds websocket proxying and multiplexing support needed for RUNC apc capsule connect and related commands.  During development I also discovered that the existing WebsocketConnection tool does not properly handle timeouts.
This PR also vendors Gorilla Websockets 1.2.
TimeoutWaitGroup ( PR #74 ) is cherry picked because it required for testing.

Rebased to include timeoutwait group from master.


Fix ebook-convert execution on Windows by clearing less of the environment

Error: ebook-convert failed with exit status 1:

Fatal Python error: _Py_HashRandomization_Init: failed to get random numbers to initialize Python
Python runtime state: preinitialized

The environment you pass to CreateProcessA must include SYSTEMROOT, otherwise the Win32 API call CryptAcquireContext will fail when called inside python during initialization.

https://stackoverflow.com/questions/58997105/fatal-python-error-failed-to-get-random-numbers-to-initialize-python

Fixed in b9b15d5420a0df636b9b6bebbe3b5f71cd1e7134