Add scc template

What this PR does / why we need it:
This PR provides an SCC manifest, without which deployment of the project in an Openshift cluster would fail, since mounting host file system paths requires the following permissions to be granted (for Openshift clusters):

hostPath volume
allowHostDirVolumePlugin (if false it overrides the hostPath volume entry)
allowPrivilegedContainer (we need to be privileged, since multus-cni container is privileged. We wouldn't be able to use the socket otherwise).

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #33
Special notes for your reviewer (optional):
This PR cannot be merged until we have a way to deploy multus-v4 on an openshift cluster.
TODO: open issue in multus about this

With this SCC we can deploy the controller in openshift, but it fails because it cannot find the multus-socket:
9m22s       Normal    SuccessfulCreate   daemonset/dynamic-networks-controller-ds   Created pod: dynamic-networks-controller-ds-xxmzg
9m22s       Normal    Scheduled          pod/dynamic-networks-controller-ds-whh46   Successfully assigned openshift-dummyns/dynamic-networks-controller-ds-whh46 to ip-10-0-241-91.ec2.internal by ip-10-0-188-121
9m22s       Normal    Scheduled          pod/dynamic-networks-controller-ds-j9hh6   Successfully assigned openshift-dummyns/dynamic-networks-controller-ds-j9hh6 to ip-10-0-154-250.ec2.internal by ip-10-0-188-121
5m12s       Warning   FailedMount        pod/dynamic-networks-controller-ds-j9hh6   MountVolume.SetUp failed for volume "multus-server-socket" : hostPath type check failed: /run/multus/multus.sock is not a socket file

We need to get multus-v4 on openshift to the controllers to successfully come up.

Let's fly with this for the time being.
Once we have CNO optionally install multus-v4, we can revisit, and give proper feedback; no sense to hold off MVP a downstream dependency.


Suppress Groovy warning in IDEA

Current coverage is 78.29% (diff: 100%)

Merging #176 into master will not change coverage

@@             master       #176   diff @@
==========================================
  Files           128        128
  Lines          4634       4634
  Methods           0          0
  Messages          0          0
  Branches        502        502
==========================================
  Hits           3628       3628
  Misses          916        916
  Partials         90         90

Powered by Codecov. Last update 65969f0...ae990c9

@alexander-yevsyukov LGTM.


Documentation incorrect regarding BoundedSequence.is_empty()

Documentation incorrectly indicates that you can check a BoundedSequence is empty.
/// // The default bounded sequence is empty
/// assert!(BoundedSequence::<i32, 5>::default().is_empty());
This results in the following error:
thread '...' panicked at library/core/src/panicking.rs:220:5:
unsafe precondition(s) violated: slice::from_raw_parts requires the pointer to be aligned and non-null, and the total size of the slice not to exceed isize::MAX

Hey @imdex-matthew, I took a loot at this, and it actually wasn't incorrect documentation. This was a bug in our implementation.
Now that #416 is merged, this should be fixed


add windows dockerfile

With the upcoming Windows Server 1709 release, the Windows Docker API named can be mounted into containers so you can run a jenkins container that manages the underlying host.

Looks interesting but I'll let someone with windows experience to chime in.
Although I think it would me more interesting to have the jenkins slave images in windows than the master

Hi,
I have this error while build this Dockerfile:
Step 12/32 : RUN Invoke-WebRequest -Uri "https://github.com/ojdkbuild/ojdkbuild/releases/download/${Env:JAVA_OJDKBUILD_VERSION}/${Env:JAVA_OJDKBUILD_ZIP}" -OutFile ojdkbuild.zip -UseBasicParsing
---> Running in 12bbb90d5ae6
Invoke-WebRequest : The request was aborted: Could not create SSL/TLS secure
channel.
At line:1 char:76

... yContinue'; Invoke-WebRequest -Uri https://github.com/ojdkbuild/ojdkb ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:Htt
pWebRequest) [Invoke-WebRequest], WebException
FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShe
ll.Commands.InvokeWebRequestCommand

This is due to github requiring a higher TLS version
Change the Run commmand to:
RUN [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest ........

I think this is superseded by https://github.com/jenkinsci/docker/pull/852


linuxPackages.rtl8192eu: <IP_ADDRESS>90319 -> <IP_ADDRESS>00620

Motivation for this change
Relates to #95448
I own no such device, I just did a compile test.
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

This PR definitely solves my problem described in #95448.

Result of nixpkgs-review pr 95497 1

2 packages marked as broken and skipped:
- linuxPackages_hardkernel_4_14.rtl8192eu
- linuxPackages_hardkernel_latest.rtl8192eu

15 packages built:
- linuxPackages-libre.rtl8192eu
- linuxPackages.rtl8192eu (linuxPackages_5_4.rtl8192eu)
- linuxPackages_4_14.rtl8192eu
- linuxPackages_4_19.rtl8192eu
- linuxPackages_4_4.rtl8192eu
- linuxPackages_4_9.rtl8192eu
- linuxPackages_5_7.rtl8192eu (linuxPackages_latest.rtl8192eu)
- linuxPackages_hardened.rtl8192eu
- linuxPackages_latest-libre.rtl8192eu
- linuxPackages_latest_hardened.rtl8192eu
- linuxPackages_latest_xen_dom0.rtl8192eu
- linuxPackages_latest_xen_dom0_hardened.rtl8192eu
- linuxPackages_testing_bcachefs.rtl8192eu
- linuxPackages_xen_dom0.rtl8192eu
- linuxPackages_xen_dom0_hardened.rtl8192eu

@troydm I wonder why you said I'd need bc. Can you elaborate?

@mweinelt it's needed during build process to determine something. Honestly I don't remember which thing it determines but if it's not there you'll see error message in build log, process won't stop tho and module will be built anyway, but it's good to have less errors

Got it.
/nix/store/6737cq9nvp4k5r70qcgf61004r0l2g3v-bash-4.4-p23/bin/bash: bc: command not found


Hotfix/env variable folder names

Changes
A quick way to make folder structure in s3 compatible storage configurable
Why Are Changes Being Made
So you can customize what your folders are named so this adds two env variables
ODFI_FOLDER
And
RDFI_FOLDER
If you leave them blank or do not set them it will default to the original paths so this is backwards compatible
I did make a tweak to the path so that it is ALWAYS
{NAME}/{SFTP}/{DATE}/{DIRECTORY}/{FILE}
instead of
{NAME}/{SFTP}/{DIRECTORY}/{DATE}/{FILE}
because it was a bit frustrating to have to navigate another folder level deep to see which files were for which days, figured this would be easier for most people if done this way as I could not see a reasonably good reason to have the directory names be ahead of the dates, but if that's incorrect happy to chat about it
The other open question would be whether you need the directory at all. If you did away with the directory it would mirror the way outgoing files are saved in s3 compatible storage which might be nice, but i'm not sure why it was originally chosen so I do not want to make assumptions without learnings

This feels like a hack where a proper solution should be added.

yeah I mean I cannot deny that lol - I just figured this both preserved backwards compatibility and gave us a desired solution, but I cannot say that this would be the "recommended" path for a long term sustainable solution.
However for maintainability and backwards compatibility it felt like a fair compromise

The other open question would be whether you need the directory at all. If you did away with the directory it would mirror the way outgoing files are saved in s3 compatible storage which might be nice

Yea, but in cases where the FI only uses the root directory it can get messy. Having subfolders allows us to determine which processor handled the file.

I couldn't push on your branch so I created https://github.com/moov-io/achgateway/pull/124 with this change.

ah nice, I'll close this in favor of https://github.com/moov-io/achgateway/pull/124


Scroll Reverser 1.5.1 crashes on Intel Mac OS X Tiger 10.4.11

Hi, your web site says Scroll Reverser 1.5.1 should work on Mac OS X Tiger 10.4, but on my Intel Mac it crashes on launch:
**********

Host Name:      MacBookPro2
Date/Time:      2020-01-29 14:30:35.632 -0600
OS Version:     10.4.11 (Build 8S2167)
Report Version: 4

Command: Scroll Reverser
Path:    /Applications/Scroll Reverser.app/Contents/MacOS/Scroll Reverser
Parent:  WindowServer [56]

Version: 1.5.1 (65)

PID:    213
Thread: Unknown

Link (dyld) error:

Symbol not found: _kLSSharedFileListItemBeforeFirst
  Referenced from: /Applications/Scroll Reverser.app/Contents/MacOS/Scroll Reverser
  Expected in: /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices

Apple documentation says kLSSharedFileListItemBeforeFirst (used in LoginItemsController.m) was introduced in Mac OS X 10.5. I see that that code is not supposed to be compiled if TIGER_BUILD is defined. According to ScrollInverter.xcodeproj/project.pbxproj, TIGER_BUILD is only defined when sdk=macosx10.4. (It seems like it would be more correct to base this on the deployment target, not the SDK.) I see that in cb13c8da462476ded56798cf4f8dc73fce4ab64f the Xcode project was changed to use the 10.4 SDK and deployment target for PowerPC builds but the 10.6 SDK and 10.5 deployment target for Intel builds, which explains why the Intel part of the build doesn't work on 10.4.
If I use lipo to -thin the universal executable to just the ppc arch, it runs fine on Intel Mac OS X 10.4 via Rosetta.

@ryandesign Did you discover the https://github.com/pilotmoon/Scroll-Reverser/tree/tiger branch? I haven't tried building it for years but it might just compile.

Actually yes I guess looks like you did. IIRC the tiger build was done on Snow Leopard.

While I remember. (Distant memories coming up.)
That version of the app builds in two parts.
Intel build uses the 10.6 SDK and assumes it's running on at least Leopard. This is why it crashes on Intel 10.4.
PowerPC build had #defines in it to remove the calls that aren't supported on 10.4.
So to make it run on 10.4 Intel you would need to #define out the same bits that are excluded from the PowerPC build.
Thinking about it the whole thing is a bit of a hack conflating OS target and Processor target. I just assumed it would never run on an Intel machine running Tiger!


Add mattsanetra.uk

This PR is:

[x] Adding a new domain
[ ] Updating existing domain size
[ ] Changing domain name
[ ] Removing existing domain from list
[ ] Website code changes (512kb.club site)
[ ] Other not listed

[x] I used the uncompressed size of the site
[x] I have included a link to the GTMetrix report
[x] The domain is in the correct alphabetical order
[x] This site is not a ultra lightweight site
[x] The following information is filled identical to the data file

I confirm that I have read the FAQ section, particularly the two red items around minimal pages and inappropriate content and I attest that this site is neither of these things.

[x] Check to confirm

- domain: mattsanetra.uk
  url: https://mattsanetra.uk/
  size: 226
  last_checked: 2023-03-18

GTMetrix Report: https://gtmetrix.com/reports/mattsanetra.uk/EnVSl2mW/
Thank you!

Thanks for adding your site!


Uploading PDF's created from Google Docs from Google Drive to OneDrive

This is awesome and thank you so much for your work here! When using the uploadFile function for PDF files that were created using Apps Script from Google Docs, the resulting file in OneDrive doesn't have a file type (the .pdf is not maintained). It works well for PDF's that are uploaded to google drive. I'm curious how I would modify convToMicrosoft to handle this case. I may be missing something obvious and really appreciate any help here.

Adding the ".pdf" suffix to the end of the file name when creating with Apps Script resolved this issue.


为什么sheet不支持区分大小写？( Why does sheet not support case sensitivity?)

目前看库内部使用的strings.EqualFold来比较两个sheet的名字，但是这个函数是不支持区分大小写的。
比如我想将默认的Sheet1改成sheet1，无法直接更改，只能改成另外一个名字，再将这个名字改为sheet1
Currently, the library uses strings.EqualFold internally to compare the names of two sheets, but this function does not support case sensitivity.
For example, I want to change the default Sheet1 to sheet1. I cannot change it directly. I can only change it to another name, and then change the name to sheet1.

Thanks for your issue. We need to using the target == source instead of strings.EqualFold function. Would you like to create a pull request to help us fix this problem?

Thanks for your issue. This issue has been fixed, please upgrade to the master branch by go get -u github.com/xuri/excelize/v2@master, and this patch will be released in the next version.

Thanks for your issue. This issue has been fixed, please upgrade to the master branch by go get -u github.com/xuri/excelize/v2@master, and this patch will be released in the next version.谢谢你的问题。该问题已修复，请通过 go get -u github.com/xuri/excelize/v2@master 升级到 master 分支，该补丁将在下一版本发布。
感谢的你的快速回应，如果这是一个bug的话，影响的地方不仅仅是SetSheetName这个函数，还有DeleteSheet这个函数，内部使用的是GetSheetIndex，也许还有更多地方 = =
Thank you for your quick response. If this is a bug, it affects not only the SetSheetName function, but also the DeleteSheet function, which uses GetSheetIndex internally. Maybe there are more = =

Thanks for your feedback. The sheet name is not case-sensitive by default, you can't create two sheet names "Sheet1" and "sheet1" on a workbook, so I think just need to change the behavior of the SetSheetName function.


Autotuner self.nargs Becomes None Right Before Creating the Dictionary full_nargs

Hello,
I'm reaching out to inquire whether the issue described at this link: https://github.com/state-spaces/mamba/issues/84#issuecomment-1933483360 could potentially be related to Triton's implementation and if it may require a bugfix in the Triton repository.
Thank you!

could you provide a code snippet that can reproduce the error?

If you set up a conda environment with python 3.11 and run the script to train mamba_chat on a 24GB GPU (see readme) I get the same error. I do not have more of a minimal reproduction, sorry.

I have the same issue with Python 3.10, also using Mamba.
self.nargs is created here: https://github.com/openai/triton/blob/638e531a7158cd971d32e2a6bd5ca0f2309c8227/python/triton/runtime/autotuner.py#L120
self.nargs holds a lot of information that is destroyed in the if condition below. I think self.nargs is used as a reference, and somehow becomes None because of it. To be clear, the dictionary was not empty during testing (as mentionned in the mamba issue), and len(self.configs)==6 in my case.
I fixed the issue (dirty fix) by adding self.nargs = dict(zip(self.arg_names, args)) once again below the if condition, and before the full_nargs line. That repopulates self.nargs with the proper dictionary content.

Do you have a small reproducer?

I am trying to make one, but I am not sure how to.
If I put a try catch around the full_nargs line and start an IPython embed session, I can see that self.nargs is None. However, if I print(self.nargs) right before, the output does contain a dictionary every time (but the code still fails after that).

Here is the traceback
Traceback (most recent call last):
  File "/my-code-path/train.py", line 167, in <module>
    train(args)
  File "/my-code-path/train.py", line 157, in train
    trainer.train()
  File "/conda-path/transformers/trainer.py", line 1780, in train
    return inner_training_loop(
  File "/conda-path/transformers/trainer.py", line 2118, in _inner_training_loop
    tr_loss_step = self.training_step(model, inputs)
  File "/conda-path/transformers/trainer.py", line 3036, in training_step
    loss = self.compute_loss(model, inputs)
  File "/my-code-path/train.py", line 24, in compute_loss
    y_pred = model(token_ids)
  File "/conda-path/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/conda-path/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/conda-path/torch/nn/parallel/data_parallel.py", line 185, in forward
    outputs = self.parallel_apply(replicas, inputs, module_kwargs)
  File "/conda-path/torch/nn/parallel/data_parallel.py", line 200, in parallel_apply
    return parallel_apply(replicas, inputs, kwargs, self.device_ids[:len(replicas)])
  File "/conda-path/torch/nn/parallel/parallel_apply.py", line 110, in parallel_apply
    output.reraise()
  File "/conda-path/torch/_utils.py", line 694, in reraise
    raise exception
TypeError: Caught TypeError in replica 1 on device 1.
Original Traceback (most recent call last):
  File "/conda-path/torch/nn/parallel/parallel_apply.py", line 85, in _worker
    output = module(*input, **kwargs)
  File "/conda-path/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/conda-path/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/my-code-path/mixer_seq_simple.py", line 166, in forward
    hidden_states = self.backbone(embedding, inference_params=inference_params)
  File "/conda-path/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/conda-path/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/my-code-path/mixer_seq_simple.py", line 89, in forward
    hidden_states, residual = layer(
  File "/conda-path/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/conda-path/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/conda-path/mamba_ssm/modules/mamba_simple.py", line 340, in forward
    hidden_states, residual = fused_add_norm_fn(
  File "/conda-path/mamba_ssm/ops/triton/layernorm.py", line 478, in rms_norm_fn
    return LayerNormFn.apply(x, weight, bias, residual, eps, prenorm, residual_in_fp32, True)
  File "/conda-path/torch/autograd/function.py", line 539, in apply
    return super().apply(*args, **kwargs)  # type: ignore[misc]
  File "/conda-path/mamba_ssm/ops/triton/layernorm.py", line 411, in forward
    y, mean, rstd, residual_out = _layer_norm_fwd(
  File "/conda-path/mamba_ssm/ops/triton/layernorm.py", line 155, in _layer_norm_fwd
    _layer_norm_fwd_1pass_kernel[(M,)](
  File "/conda-path/triton/runtime/autotuner.py", line 159, in run
    full_nargs = {**self.nargs, **kwargs, **self.best_config.kwargs}
TypeError: 'NoneType' object is not a mapping

I think the autotuner was not supposed to be used in a multi-threading environment. How did you enable multi-threading?

I am using Huggingface transformers library and the Mamba architecture on top of that. I haven't done anything specific to enable multi-threading.
I am a bit outside my comfort zone, not sure how everything works under the hood. Could it come from the parallel_apply from torch (see traceback in my previous comment).

So is there any proper way to fix this issue? Or should I try that "dirty fix"?


CI: update homebrew formula on release

don't know how accurately this would work, but this was just a rough idea how I thought we could update the formula. feel free to drop any suggestions

hoping nothing is broken
bors r+


Add magic property annotations to phan

Currently, @property, @property-read, and @property-write are all
equivalent, due a to lack of checks if a context node is getting/setting a
property.
Also add annotation @PhanForbidUndeclaredMagicProperties
(Motivation: if a class is expected to have complete annotations for its
getters/setters, then it is useful to warn if something undeclared is used
in that class, to prevent typos and to ensure analysis maintains a
consistent quality)
Limitations:

Does not warn if __get/__set don't exist.
Not able to have a __get() shadow a property of the same name inside
the current class (e.g. getter of private property, which does
initialization). For best results, make them the same type.
(not able to do it in a way that accounts for which type is used inside/outside the classes.)
Possibly some edge cases if multiple classes have @property annotations. My use case doesn't involve inheritance.

Fixes #386
Taken from my fork, with the new @PhanForbidUndeclaredMagicProperties
annotation introduced.

@TysonAndre Should we change @PhanForbidUndeclaredMagicProperties to @phan-forbid-undeclated-magic-properties so that we're consistent with our usage with camel casing vs. hyphens?

A few comments added, but otherwise looks good to me.


update bottom python pin

it's probably not hurting anything, and doesn't require a new build_number, but as of #12 the upstream now specifies a minimum python:
https://github.com/lovesegfault/beautysh/blob/master/pyproject.toml#L30
We should update on the next release! might be soon, never know with new build chains...

For what it's worth, the minimum python was only necessary for poetry to let me add the dev tooling I wanted. The package itself should, I think, work on all Pythons >=3.4

If pip won't install it in an older python, and it's not tested against
those versions upstreams, conda-forge shouldn't either!


bundle update shows incorrect message when updating git gems

If I have
gem "decidim", git: "https://github.com/decidim/decidim"

And I run
bundle update decidim

And that results in bundler updating the locked sha1 reference in my lock file, I wouldn't expect bundler to display the "Bundler attempted to update decidim but its version stayed the same" message.
Is this a reasonable expectation?

That doesn't sound right. A repo to demonstrate this problem would be 👍

Ha! I actually just started on a fix for this issue about half an hour ago, before I even saw it was filed! WIP PR incoming

Nice! Thanks @segiddins!!


Support IPv6 Zone ID as per RFC 6874

IPv6 scoped address contains Zone ID, which is appended to IPv6
address after '%' separator.  RFC 6874 says that Zone ID after '%'
must consist of 1*(unreserved or pct-encoded).  This commit adds this
IPv6 Zone ID support.

Updated patch, to rule out the case where there is just zone ID.

Thank you so much! Landed in 7d75dd7, sorry for delay.


Horizontal scroll bar is overlapping with count/selection label in devext in manager

Describe the bug
Horizontal scroll bar is overlapping with count/selection label in devext in manager.

In production it looks as expected

Expected Behavior
it should not overlap
Reproduction Steps & Sample
Test app: https://sg-em-devext.mapsdevext.arcgis.com/apps/instant/manager/index.html?appid=d30ffa4fcdde411f8ced045a26d72030
Other Relevant Info
No response

looks good in devext


Correct way of checking for key existence during transaction?

Hi,
What is the right way to check for existence of a key during a transaction?
Checking for a version > 0 works as expected (evaluates to "false" if the key is not there and to "true" if it is present:
                var keyUtf8 = ByteString.CopyFromUtf8(key);                 TxnRequest txr = new TxnRequest();                 Compare c = new Compare();                 c.Key = keyUtf8;                 c.Target = Compare.Types.CompareTarget.Version;                 c.Result = Compare.Types.CompareResult.Greater;                 c.Version = 0;                 txr.Compare.Add(c);
But I can't not get the same result using the Create CompareTarget, always evaluates to "true":
                TxnRequest txr = new TxnRequest();                 Compare c = new Compare();                 c.Key = keyUtf8;                 c.Target = Compare.Types.CompareTarget.Create;                 txr.Compare.Add(c);
thanks!

Testing for CreateRevision > 0 should succeed iff the key exists.
What client library is this? I don't see a CompareResult in the second example, so maybe that's the problem?

Yes, testing for CreateRevision > 0 with Create works as well. Maybe I'm misinterpreting the  meaning of CompareTarget.Create as "check if it exists" but it seems I need to provide the CreateRevision as well.
The code is c# calling the raw grpc wrappers.

@dariopb that's not what it means. The compare target is the field in the key-value metadata use for the comparison-- from the docs  target is the key-value field to inspect for the comparison. (https://github.com/coreos/etcd/blob/master/Documentation/dev-guide/api_reference_v3.md#message-compare-etcdserveretcdserverpbrpcproto).
There's no specialized key existence check in the grpc protocol since there's already several ways to do the check (version > 0, createrev >0 , modrev > 0).

Thanks, it makes sense now. Closing.


Using the controller

Hello!
How to hide tabbar to other ViewController?

Hello, @alexslivkin
- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    YALFoldingTabBarController *tabBarController = (YALFoldingTabBarController *)self.tabBarController;
    tabBarController.tabBarView.hidden = YES;
}

Thank you

@alexslivkin, have you solved your issue? May we close the ticket?


Fix pagination due to mysql library upgrades

Need to use paginate function - no pagination works  https://packagist.org/packages/joshcam/mysqli-database-class
https://github.com/nenuadrian/Secret-Republic-Hacking-Browser-Game-V3/commit/a09b61f9ad9f90a2074bb8f308ee7e941a54a815

https://github.com/nenuadrian/Secret-Republic-Hacking-Browser-Game-V3/commit/20684e7cad77cddf79ec03c1d57174de0a66357c


How to get first "n" elements in collection using v9

to use pagination i must use ordering together, i haven't found a way to get the first "n" elements of a collection and paginate on each page of "n" elements, can you give me an example of how to do this?

@wagnerteixeira please see the docs here:
https://firebase.google.com/docs/firestore/query-data/query-cursors#web-v9
I'll copy the snippet for you:
import { collection, query, orderBy, startAfter, limit, getDocs } from "firebase/firestore";

// Query the first page of docs
const first = query(collection(db, "cities"), orderBy("population"), limit(25));
const documentSnapshots = await getDocs(first);

// Get the last visible document
const lastVisible = documentSnapshots.docs[documentSnapshots.docs.length-1];
console.log("last", lastVisible);

// Construct a new query starting at this document,
// get the next 25 cities.
const next = query(collection(db, "cities"),
    orderBy("population"),
    startAfter(lastVisible),
    limit(25));


Why localhost as domain ?

Hello,
I am doing the generation of the sitemap with a cron every days but the domain is 'localhost' :
<sitemapindex> <sitemap> <loc>http://localhost/sitemap/products.xml</loc> </sitemap> <sitemap> <loc>http://localhost/sitemap/taxons.xml</loc> </sitemap> <sitemap> <loc>http://localhost/sitemap/static.xml</loc> </sitemap> </sitemapindex>
What am i doing wrong? I would like 'https://mydomain.com/sitemap/...'

Ok my bad, I found the solution, we need to write the domain in the admin


Expand clean-venv-cache and clean-npm-cache to be usable in production

I found on chat.zulip.org (probably the Zulip server deployed the most often) 8GB of old virtualenvs and 4GB of old node_modules directories, which is a lot of disk to be used by old copies of dependencies.
I ran the clean scripts to clean this up; the venv one worked fine (though I think ideally it would iterate through all non-purged deployments (from listing /home/zulip/deployments/) when computing its list of versions to keep, not just those mentioned in /home/zulip/deployments/current aka the current Zulip checkout).  The npm one deleted all cached the node_modules directories, which was definitely not correct.
I think a valid test for whether we're in a production environment for the purpose of this code is just whether /home/zulip/deployments/current exists.
Tagging this as a priority, since this sort of disk leak can be kinda nasty.

@HarshitOnGitHub assigning you so others know you're working on this in #6088


[SPARK-37786][SQL] StreamingQueryListener support use SQLConf.get to get corresponding SessionState's SQLConf

What changes were proposed in this pull request?
Current StreamingQueryListener only support add constructor parameter of SparkConf, but if we  start a SparkContext first, many SQL conf won't be applied to SparkContext's SparkConf.
Also it's a SQL component,  related configuration we defined it as SQLConf. But it's hard to use SQLConf in this plugin listener.
This patch, we use pass SQLConf to StreamingQueryManager  and use SQLConf.withExistingConf to wrap the passed SQLConf. Then we can use SQLConf.get to get the same SQLConf of SessionState when initializing StreamingQueryListener
Why are the changes needed?
Pass corresponding SessionState's SQLConf to StreamingQueryListener. Then user can use SQLConf.get to use the  SQLConf.
Does this PR introduce any user-facing change?
User can use StreamingQueryListener with corresponding SessionState's SQLConf. For example
private class SQLConfStreamingQueryListener extends StreamingQueryListener {
  val sqlConf = SQLConf.get
  override def onSuccess(funcName: String, qe: QueryExecution, durationNs: Long): Unit = {
  }
  override def onFailure(funcName: String, qe: QueryExecution, exception: Exception): Unit = {
  }
}

How was this patch tested?
Added UT

GA passed, can merge this.

Merged to master.

@HyukjinKwon Should we add a migration guide to mention this in the migration guide? If need I will raise a follow up for this two prs.

what do we need for migration?

what do we need for migration?

See https://github.com/apache/spark/pull/35122


Update pos-trigger-printing.md

:x: Organization membership check failed
Members of the MicrosoftDocs organization should use the private repo. Please move your changes to https://github.com/MicrosoftDocs/Dynamics-365-Operations, and close this pull request.


Issue with CONTACT US form UI

Hi,
I was exploring this project and I came across CONTACT US form and there the text which is written is not visible. If we select that text then only we get to know that YES, there's some text..
What's next?
I would like to change the UI of form and make a better one. I'd love to contribute, kindly assign me this issue.
Thank you :)

@neeru24 make sure to complete this issue within 2 days.
make sure to join discord server for further communication and updates.

@neeru24 make sure to complete this issue within 2 days.
make sure to join discord server for further communication and updates.

Sure, I'll complete it by tomorrow. Can I get the discord link?

it's mentioned in Readme.

it's mentioned in Readme.

Okay thank you

@neeru24 make sure to complete this issue within 2 days.
make sure to join discord server for further communication and updates.

Done with the task


Question:Best way to use Add Locator Handler?

I need to use https://playwright.dev/docs/api/class-page#page-add-locator-handler in my tests to handle a random dialogue popup that is breaking my tests.
with non playwright BDD test usually I could add the Handler in at the start of the test case and then it would run before every step
With the PlaywrightBDD can I just add it to one step, and will it then apply to all following steps in a feature or do I need to call it explicitly in every step?

There are different options:

If locator handler should be applied on all pages, you can enable it in auto-fixture:

export const test = base.extend({
  handleSignupPopup: [async ({ page }, use) => {
    await page.addLocatorHandler(page.getByText('Sign up to the newsletter'), async () => {
      await page.getByRole('button', { name: 'No thanks' }).click();
    });
    await use();
  }, { auto: true }]
});

If handler should be applied only on some pages, you can filter it by tags in auto-fixture as well:

export const test = base.extend({
  handleSignupPopup: [async ({ page, $tags }, use) => {
    if ($tags.includes('@haspopup')) {
      await page.addLocatorHandler(page.getByText('Sign up to the newsletter'), async () => {
        await page.getByRole('button', { name: 'No thanks' }).click();
      });
    }
    await use();
  }, { auto: true }]
});

And as you mentioned, it is possible to apply locator handler explicitly by step, I would only suggest to do it in background step:

Feature: my feature

    Background:
      Given I always decline signup popup

    Scenario: ...

Step:
Given('I always decline signup popup', async ({ page }) => {
  await page.addLocatorHandler(page.getByText('Sign up to the newsletter'), async () => {
    await page.getByRole('button', { name: 'No thanks' }).click();
  });
});

Great thankyou, I was on holiday but have just done the auto fixture approach


The flash message should be according to the selected locale if the admin trying to create a Shipment.

Bagisto Version: Master
Steps To reproduce--
1. Log in as a customer.
2. Change the app locale in Arabic..
3. Create an order.
4. Login as an admin.
5. Try to create shipment for the same order.
Expected result: The flash message should be according to the selected locale if the admin trying to create a Shipment.
Actual result: The flash message is showing according to the customer's locale when the admin trying to create a Shipment. Please find the screenshot Here.

@jitendra-webkul
Now, this issue is fixed. so I am closing this issue.
And I have attached a screenshot Here, for future reference.


[Bug]: Stretchly crashes in Ubuntu 20.04/Gnome

Version

[X] I'm using version 1.11.0

Known issues

[X] I've checked Known issues

Existing issues

[X] I've checked Existing issues

What operating system are you using?
Linux
Operating System Version
Ubuntu 20.04, Linux earth 5.15.0-46-generic #49~20.04.1-Ubuntu SMP Thu Aug 4 19:15:44 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Reproduction steps

Start stretchly
Work, leave computer
Come back, stretchly has crashed
...
Reproduces how often: 100% (sooner or later)

Expected Behavior
no crash
Actual Behavior
crash after some time
Relevant log output
First half is from log file, second part is printout to terminal.

LOG:

[2022-08-25 15:59:07.603] [info]  Stretchly: initializing...
[2022-08-25 15:59:07.610] [info]  Stretchly: loading preferences
[2022-08-25 15:59:07.615] [info]  Stretchly: starting Idle time monitoring
[2022-08-25 15:59:07.615] [info]  Stretchly: starting Do Not Disturb monitoring
[2022-08-25 15:59:07.656] [info]  Stretchly: loading default break ideas
[2022-08-25 15:59:07.675] [info]  Stretchly: loading default break ideas
[2022-08-25 15:59:08.995] [info]  Stretchly: checking for new version (local: v1.11.0, remote: 1.11.0)
[2022-08-25 16:08:57.618] [info]  Stretchly: showing Mini Break notification
[2022-08-25 16:09:07.815] [info]  Stretchly: showing window 1 of 3
[2022-08-25 16:09:07.816] [info]  Stretchly: starting Mini Break
[2022-08-25 16:09:07.866] [info]  Stretchly: showing window 2 of 3
[2022-08-25 16:09:07.886] [info]  Stretchly: showing window 3 of 3
[2022-08-25 16:09:27.819] [info]  Stretchly: finishing Mini Break (shouldPlanNext: true)
[2022-08-25 16:19:17.821] [info]  Stretchly: showing Mini Break notification
[2022-08-25 16:19:28.006] [info]  Stretchly: showing window 1 of 3
[2022-08-25 16:19:28.008] [info]  Stretchly: starting Mini Break
[2022-08-25 16:19:28.027] [info]  Stretchly: showing window 2 of 3
[2022-08-25 16:19:28.059] [info]  Stretchly: showing window 3 of 3
[2022-08-25 16:19:48.011] [info]  Stretchly: finishing Mini Break (shouldPlanNext: true)
[2022-08-25 16:29:18.013] [info]  Stretchly: showing Long Break notification
...
[2022-08-26 11:41:25.593] [info]  Stretchly: finishing Mini Break (shouldPlanNext: true)
[2022-08-26 11:50:55.596] [info]  Stretchly: showing Long Break notification
[2022-08-26 11:51:25.795] [info]  Stretchly: showing window 1 of 3
[2022-08-26 11:51:25.796] [info]  Stretchly: starting Long Break
[2022-08-26 11:51:25.836] [info]  Stretchly: showing window 2 of 3
[2022-08-26 11:51:25.838] [info]  Stretchly: showing window 3 of 3
[2022-08-26 11:51:29.222] [info]  Stretchly: postponing Long Break
[2022-08-26 11:55:59.217] [info]  Stretchly: showing Long Break notification
[2022-08-26 11:56:29.430] [info]  Stretchly: showing window 1 of 3
[2022-08-26 11:56:29.431] [info]  Stretchly: starting Long Break
[2022-08-26 11:56:29.434] [info]  Stretchly: showing window 2 of 3
[2022-08-26 11:56:29.481] [info]  Stretchly: showing window 3 of 3
[2022-08-26 11:56:33.416] [info]  Stretchly: finishing Long Break (shouldPlanNext: true)
[2022-08-26 12:03:40.580] [info]  Stretchly: pausing breaks because of idle time

TERMINAL OUTPUT:

(base) niclas@earth:~$ stretchly

(stretchly:665338): Gtk-WARNING **: 15:59:07.574: Theme parsing error: gtk.css:3536:25: 'font-feature-settings' is not a valid property name
15:59:07.603 › Stretchly: initializing...
15:59:07.610 › Stretchly: loading preferences
15:59:07.615 › Stretchly: starting Idle time monitoring
15:59:07.615 › Stretchly: starting Do Not Disturb monitoring
/usr/share/libdrm/amdgpu.ids: No such file or directory
15:59:07.656 › Stretchly: loading default break ideas
15:59:07.675 › Stretchly: loading default break ideas
[665338:0825/155907.718317:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.login1.Manager.Inhibit: object_path= /org/freedesktop/login1: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.716" (uid=1106 pid=665338 comm="/snap/stretchly/17/stretchly --no-sandbox --enable" label="snap.stretchly.stretchly (enforce)") interface="org.freedesktop.login1.Manager" member="Inhibit" error name="(unset)" requested_reply="0" destination="org.freedesktop.login1" (uid=0 pid=1612 comm="/lib/systemd/systemd-logind " label="unconfined")
16:08:57.618 › Stretchly: showing Mini Break notification
16:09:07.815 › Stretchly: showing window 1 of 3
16:09:07.816 › Stretchly: starting Mini Break
16:09:07.866 › Stretchly: showing window 2 of 3
16:09:07.886 › Stretchly: showing window 3 of 3
16:09:27.819 › Stretchly: finishing Mini Break (shouldPlanNext: true)
[665338:0825/160927.867497:ERROR:bus.cc(561)] Failed to get the ownership of org.mpris.MediaPlayer2.chromium.instance665338: Connection ":1.1056" is not allowed to own the service "org.mpris.MediaPlayer2.chromium.instance665338" due to AppArmor policy
[665338:0825/160928.194612:ERROR:object_proxy.cc(623)] Failed to call method: org.gnome.SessionManager.Inhibit: object_path= /org/gnome/SessionManager: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.1057" (uid=1106 pid=665338 comm="/snap/stretchly/17/stretchly --no-sandbox --enable" label="snap.stretchly.stretchly (enforce)") interface="org.gnome.SessionManager" member="Inhibit" error name="(unset)" requested_reply="0" destination="org.gnome.SessionManager" (uid=1106 pid=3258 comm="/usr/libexec/gnome-session-binary --systemd-servic" label="unconfined")
[665338:0825/160928.194647:ERROR:power_save_blocker_linux.cc(338)] No response to Inhibit() request!
16:19:17.821 › Stretchly: showing Mini Break notification
16:19:28.006 › Stretchly: showing window 1 of 3
16:19:28.008 › Stretchly: starting Mini Break
16:19:28.027 › Stretchly: showing window 2 of 3
16:19:28.059 › Stretchly: showing window 3 of 3
16:19:48.011 › Stretchly: finishing Mini Break (shouldPlanNext: true)
[665338:0825/161948.354262:ERROR:object_proxy.cc(623)] Failed to call method: org.gnome.SessionManager.Inhibit: object_path= /org/gnome/SessionManager: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.1068" (uid=1106 pid=665338 comm="/snap/stretchly/17/stretchly --no-sandbox --enable" label="snap.stretchly.stretchly (enforce)") interface="org.gnome.SessionManager" member="Inhibit" error name="(unset)" requested_reply="0" destination="org.gnome.SessionManager" (uid=1106 pid=3258 comm="/usr/libexec/gnome-session-binary --systemd-servic" label="unconfined")
[665338:0825/161948.354288:ERROR:power_save_blocker_linux.cc(338)] No response to Inhibit() request!
16:29:18.013 › Stretchly: showing Long Break notification
...
11:41:25.593 › Stretchly: finishing Mini Break (shouldPlanNext: true)
[665338:0826/114125.934257:ERROR:object_proxy.cc(623)] Failed to call method: org.gnome.SessionManager.Inhibit: object_path= /org/gnome/SessionManager: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.1293" (uid=1106 pid=665338 comm="/snap/stretchly/17/stretchly --no-sandbox --enable" label="snap.stretchly.stretchly (enforce)") interface="org.gnome.SessionManager" member="Inhibit" error name="(unset)" requested_reply="0" destination="org.gnome.SessionManager" (uid=1106 pid=3258 comm="/usr/libexec/gnome-session-binary --systemd-servic" label="unconfined")
[665338:0826/114125.934281:ERROR:power_save_blocker_linux.cc(338)] No response to Inhibit() request!
11:50:55.596 › Stretchly: showing Long Break notification
11:51:25.795 › Stretchly: showing window 1 of 3
11:51:25.796 › Stretchly: starting Long Break
11:51:25.836 › Stretchly: showing window 2 of 3
11:51:25.838 › Stretchly: showing window 3 of 3
11:51:29.222 › Stretchly: postponing Long Break
11:55:59.217 › Stretchly: showing Long Break notification
11:56:29.430 › Stretchly: showing window 1 of 3
11:56:29.431 › Stretchly: starting Long Break
11:56:29.434 › Stretchly: showing window 2 of 3
11:56:29.481 › Stretchly: showing window 3 of 3
11:56:33.416 › Stretchly: finishing Long Break (shouldPlanNext: true)
12:03:40.580 › Stretchly: pausing breaks because of idle time
Segmentation fault (core dumped)

Preferences
"microbreakDuration": 20000,
	"microbreakInterval": 600000,
	"breakDuration": 300000,
	"breakInterval": 2,
	"breakNotification": true,
	"microbreakNotification": true,
	"breakNotificationInterval": 30000,
	"microbreakNotificationInterval": 10000,
	"microbreak": true,
	"break": true,
	"microbreakStrictMode": false,
	"breakStrictMode": false,
	"morningHour": 6,
	"microbreakPostpone": true,
	"breakPostpone": true,
	"microbreakPostponeTime": 120000,
	"breakPostponeTime": 300000,
	"microbreakPostponesLimit": 1,
	"microbreakPostponableDurationPercent": 30,
	"breakPostponesLimit": 1,
	"breakPostponableDurationPercent": 30,
	"mainColor": "#478484",
	"transparentMode": false,
	"opacity": 0.9,
	"audio": "crystal-glass",
	"volume": 1,
	"fullscreen": true,
	"ideas": true,
	"naturalBreaks": true,
	"naturalBreaksInactivityResetTime": 300000,
	"allScreens": true,
	"useIdeasFromSettings": false,
	"language": "en",
	"notifyNewVersion": true,
	"isFirstRun": false,
	"posLatitude": 0,
	"posLongitude": 0,
	"useMonochromeTrayIcon": false,
	"useMonochromeInvertedTrayIcon": false,
	"silentNotifications": false,
	"monitorDnd": true,
	"microbreakStartSoundPlaying": false,
	"breakStartSoundPlaying": false,
	"themeSource": "system",
	"endBreakShortcut": "CmdOrCtrl+X",
	"breakWindowWidth": 0.85,
	"breakWindowHeight": 0.85,
	"checkNewVersion": true,
	"breakIdeas": [
		{
			"data": [
				"Not alone",
				"Do you find it hard to take a break alone? Try to do it with a co-worker. Aside from making it easier to stick to breaks, you will have a chance to get to know them better. Taking breaks together increases productivity."
			],
			"enabled": true
		},
		{
			"data": [
				"Step away",
				"Do you ever notice how your brain can figure things out by itself? All it takes is to step away from the computer and take a break to think about something totally unrelated."
			],
			"enabled": true
		},
		{
			"data": [
				"Microbreaks",
				"Rest is a key component in ensuring the performance of the musculoskeletal system. Frequent breaks can decrease the duration of a task and help lower the exposure to ergonomic injury risk."
			],
			"enabled": true
		},
		{
			"data": [
				"Meditation",
				"Research studies suggest that mindfulness-based exercises help decrease anxiety, depression, stress, and pain, and help improve general health, mental health, and quality of life. Not sure how to start? There are numerous apps to help you out."
			],
			"enabled": true
		},
		{
			"data": [
				"Blink",
				"Looking at screens for a long time causes you to blink less, thus exposing your eyes to the air. Blink rapidly for a few seconds to refresh the tear film and clear dust from the eye surface."
			],
			"enabled": true
		},
		{
			"data": [
				"Ergonomics",
				"Improper height and angle of the keyboard, mouse, monitor or working surface can cause health problems. Take some time to read about desk ergonomics."
			],
			"enabled": true
		},
		{
			"data": [
				"Move",
				"There are a lot of ways you can exercise within your office. Try marching in place or doing desk push-ups."
			],
			"enabled": true
		},
		{
			"data": [
				"Change",
				"Do you have a stability ball or standing work desk?
			],
			"enabled": true
		},
		{
			"data": [
				"Notice",
				"Are you daydreaming or having trouble focusing? It is a sign that you need to take a break."
			],
			"enabled": true
		},
		{
			"data": [
				"Tech",
				"How about taking a no-tech walk?"
			],
			"enabled": true
		},
		{
			"data": [
				"Metabolism",
				"Emerging research shows that sitting for long periods of time contributes to risk of metabolic syndrome, heart attack and stroke risk and overall death risk, among others. Taking regular walking breaks can help your circulation, working to counteract some of those problems."
			],
			"enabled": true
		},
		{
			"data": [
				"Active Meetings",
				"How about moving meetings from the conference room to the concourse? Walking not only burns calories but it may even foster a sense of collaboration."
			],
			"enabled": true
		},
		{
			"data": [
				"Fruit",
				"Take your time and eat some fruit. Slowly. Notice the flavor, the texture, the freshness."
			],
			"enabled": true
		},
		{
			"data": [
				"Bathrooms",
				"Walk to the farthest bathroom in the worksite facility when going to the restroom."
			],
			"enabled": true
		},
		{
			"data": [
				"Coffee break",
				"Going on coffee break? Consider doing a 5-minute walk every time you go for one."
			],
			"enabled": true
		},
		{
			"data": [
				"Colleagues",
				"Do not email or message office colleagues, walk to their desks to communicate with them."
			],
			"enabled": true
		},
		{
			"data": [
				"Learning",
				"In a study of healthy volunteers, NIH researchers found that taking short breaks, early and often, may help our brains learn new skills."
			],
			"enabled": true
		},
		{
			"data": [
				"Exercise",
				"Evidence suggests small amounts of regular exercise can bring dramatic health benefits, including measurably reducing stress."
			],
			"enabled": true
		},
		{
			"data": [
				"Repeat",
				"Have you found your stretch-ly-routine? Do not forget to repeat it for more than once to better fight effects of prolonged sitting."
			],
			"enabled": true
		},
		{
			"data": [
				"Wrist and forearm",
				"Extend your arms with the palms facing towards you, then slowly rotate the hands four times clockwise, then four times counter-clockwise."

			],
			"enabled": true
		},
		{
			"data": [
				"Mobilize",
				"For every thirty minutes of stagnation, you should have at least one minute of stimulation."
			],
			"enabled": true
		},
		{
			"data": [
				"7 Minute Workout",
				"This workout packs in a full-body exercise routine in a fraction of the time. But as with any exercise, be careful. There are numerous apps to get you started."
			],
			"enabled": true
		},
		{
			"data": [
				"Pulse",
				" Raise your pulse rate to 120 beats per minute for 20 straight minutes four or five times a week doing anything you enjoy. Regularly raising your heart rate results in improved cardiovascular health."
			],
			"enabled": true
		},
		{
			"data": [
				"Take the stairs ",
				"Studies have shown that stair climbing, which is considered vigorous-intensity physical activity, burns more calories per minute than jogging."
			],
			"enabled": true
		},
		{
			"data": [
				"Make art",
				"Art therapy is known to have great mental health benefits, especially when it comes to stress management. How about writing a quick poem, taking a picture or painting something small?"
			],
			"enabled": true
		},
		{
			"data": [
				"Declutter",
				"A clean space helps your focus at work and is often linked to positive emotions like happiness."
			],
			"enabled": true
		},
		{
			"data": [
				"Lunch outside",
				"Nature is linked to positive emotions and decreased stress and anxiety. Whenever possible, try to take your daily lunch break outside, surrounded by some greenery."
			],
			"enabled": true
		},
		{
			"data": [
				"Public transport",
				"If you use public transport regularly, you can stand instead of sitting. If it is possible, try to replace as many of your daily trips as possible with walking or cycling."
			],
			"enabled": true
		},
		{
			"data": [
				"Yawning",
				"Yawning can be really helpful, as it produces tears to help moisten and lubricate the eyes."
			],
			"enabled": true
		},
		{
			"data": [
				"Focus change",
				"Hold one finger close to the eye and focus on it. Slowly move the finger away, focus far into the distance and then back to the finger. Bring the finger back and focus on something far away."
			],
			"enabled": true
		},
		{
			"data": [
				"Palming",
				"While seated, brace elbows on the desk and close to the desk edge. Let your weight fall forward and cup hands over eyes. Close your eyes and inhale slowly through nose and hold for few seconds. Continue deep breathing."
			],
			"enabled": true
		},
		{
			"data": [
				"Hand squeezes",
				"Squeeze a pair of balled-up socks or a soft rubber ball, hold for 5 seconds. Repeat whole process few times."
			],
			"enabled": true
		},
		{
			"data": [
				"Slow Breathing",
				"Emerging research suggests potential for use of controlled slow breathing techniques as a means of optimising physiological parameters that appear to be associated with health and longevity."
			 Roll your shoulders forward for 10 seconds, then backward.",
			"enabled": true
		},
		{
			"data": "Raise your right arm, stretch it over your head to the left, and hold for 10 seconds. Repeat on the other side.",
			"enabled": true
		},
		{
			"data": "With your right hand, grab each finger of your left hand in turn and squeeze. Repeat on the other side.",
			"enabled": true
		},
		{
			"data": "Stand up and do a lunge. Hold for 10 seconds, then do the other leg.",
			"enabled": true
		},
		{
			"data": "Close your eyes and simply notice whatever arises in current moment, without judgement.",
			"enabled": true
		},
		{
			"data": "Focus every 20 minutes for 20 seconds on an object at 20 feet distance.",
			"enabled": true
		},
		{
			"data": "If you need help, ask for it.",
			"enabled": true
		},
		{
			"data": "Do one thing at a time.",
			"enabled": true
		},
		{
			"data": "Is your attention spent wisely?",
			"enabled": true
		},
		{
			"data": "Change your sitting posture.",
			"enabled": true
		},
		{
			"data": "Expose your eyes to natural light.",
			"enabled": true
		},
		{
			"data": "With your eyes closed, slowly and gently raise your eyes to the ceiling and back down to the floor.",
			"enabled": true
		},
		{
			"data": "With your eyes closed, slowly and gently move your eyes to the left, then slowly to the right.",
			"enabled": true
		},
		{
			"data": "Shake your hands out to get some relief.",
			"enabled": true
		},
		{
			"data": "One at a time, touch the tip of each finger to the tip of your thumb so they make an O-shape.",
			"enabled": true
		},
		{
			"data": "Make a fist and then slide your fingers up until they point toward the ceiling, like you're telling someone to stop.",
			"enabled": true
		},
		{
			"data": "Make a fist and then fan your fingers out and stretch them as far as you can.",
			"enabled": true
		},
		{
			"data": "Sit tall, arms hanging at your sides, and slowly rotate neck in one direction in a large circle.",
			"enabled": true
		},
		{
			"data": "Stand tall and slowly tilt your head toward the shoulder using the same hand until you feel a strech.",
			"enabled": true
		},
		{
			"data": "Stand tall with your arms by your side. Squeeze your shoulder blades together and hold.",
			"enabled": true
		},
		{
			"data": "Stand tall with your arms raised along your shoulders. Move hands slightly behind your back, hold for a second and return.",
			"enabled": true
		}
	],
	"showBreaksAsRegularWindows": false,
	"appExclusions": [],
	"appExclusionsCheckInterval": 1000,
	"pauseForSuspendOrLock": true,
	"pauseBreaksShortcut": "",
	"resumeBreaksShortcut": "",
	"screen": "primary",
	"timeToBreakInTray": false,
	"currentTimeInBreaks": false
}

Additional information
My graphics setup is a three-monitor setup on

0a:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] (rev ca)

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Ubuntu 20.04.5 LTS
AMD® Ryzen 7 3800x 8-core processor × 16
AMD® Radeon rx 5600 xt
GNOME version 3.36.8

Similar behavior is happening for me for:
Ubuntu 22.04.1 LTS with Regolith 2.1
AMD® Ryzen 7 pro 5850u with radeon graphics × 16
AMD® Renoir
GNOME version 42.4
Tested both with .deb package and AppImage.

Same happening to me for:

Fedora Linux 36 (Workstation Edition), 64 bit
Intel(R) Core i7-8550U x 8
Mesa Intel(R) UHD Graphics 620 (KBL GT2)
Gnome Version 42.4
Wayland Windowing System

I noticed the pattern since upgrading Stretchly to v. 1.11.0.
stefan@fedora ~ $ stretchly
09:58:12.888 › Stretchly: initializing...
09:58:12.900 › Stretchly: loading preferences
09:58:12.911 › Stretchly: starting Idle time monitoring
09:58:12.912 › Stretchly: starting Do Not Disturb monitoring
09:58:12.959 › Stretchly: loading default break ideas
libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
09:58:12.989 › Stretchly: loading default break ideas
10:13:02.916 › Stretchly: showing Mini Break notification
10:13:13.159 › Stretchly: showing window 1 of 2
10:13:13.160 › Stretchly: starting Mini Break
10:13:13.180 › Stretchly: showing window 2 of 2
10:13:33.161 › Stretchly: finishing Mini Break (shouldPlanNext: true)
10:13:50.946 › Stretchly: arguments received from second instance:
10:13:50.947 › Stretchly: command 'help' executed in second instance, dropped in main instance
10:28:13.164 › Stretchly: showing Long Break notification
10:28:33.425 › Stretchly: showing window 1 of 2
10:28:33.427 › Stretchly: starting Long Break
10:28:33.437 › Stretchly: showing window 2 of 2
10:32:28.195 › Stretchly: finishing Long Break (shouldPlanNext: true)

A similar thing is happening to me after I log back in after putting my computer to sleep. Ubuntu 20.4

could you guys see this issue, might be the same: https://github.com/hovancik/stretchly/issues/633#issuecomment-687633349
trying with gdb might give more useful debug info

@hovancik
Thanks for the pointer. I've been running Stretchly 1.12.0 for a half day now with gdb debugging, but this error hasn't occurred (before it took less than that to surface). After running 1.11.0 with gdb debugging again this error hasn't surfaced. Something must have change in the underlying system - in my case Ubuntu 22.04.
After reviewing apt history for the hunt of libappindicator upgrade I found out that in my system it is provided via libayatana-appindicator3-1:amd64 (0.5.5-3) and it hasn't been touched since system installation in fall last year. Hard to tell what else has changed that could have fixed this issue, however it does not occur to me anymore.
Thanks for you work!

After running Stretchly 1.12.0 for straight two days now, with one hibernate in the meantime I haven't encountered this error.
@hovancik In the changelog you've mentioned you've trimmed down tray requests. I suppose it could have fixed  or hidden this bug. As per bug report you've linked this is a bug in upstream library, with fix that probably hasn't been introduced to all distros, yet.

Yeah, with latest version, the tray is updated much less frequent, so probably lower chance of the issue happening :)

I'm closing this, if issue appears again, we can reopen.

Also, Electron has now new tray implementation, so new Stretchly version will have that.


Add helper methods to LFXGroup

It would be convenient to have helper methods on LFXGroup that returned the power state of a particular group.

isPower() would return true if any lights are on, otherwise false
getColor() not sure how to handle this one, honestly

lifx-sdk-android solved this by:

"fuzzy power" where the result can be on, off or mixed.
averaging the colors.

Maybe adding getFuzzyPower() and getAverageColor() to LFXGroup?

Awesome! Super helpful. Thanks for the quick updates!


Paypal "not working at the moment" error

Hey all - I'm trying to sponsor this app through Paypal transfer, and it gives me a "not working at the moment" error once I cloud through the dollar mo
URL:
https://stackedit.io/app#
Browser:
Google Chrome Version 67.0.3396.99 (Official Build) (64-bit)
OS:
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04 LTS
Release:	18.04
Codename:	bionic
How to reproduce
Click on the "sponsoring" link, and click any dollar amount. Paypal errors out.

Should be fixed now, sorry for the inconvenience. You may have to close your browser tabs and reload the app to get the update.


Dashboard max usage redirection doesn't depend on a cluster

Redirection from dashboard to list of vms/hosts sorted by cpu/memory should select the most used cluster. Now it redirects to the currently selected cluster.

Maybe we can add all the percentages of vms/hosts of each cluster and select the cluster with highest value. Or we can select cluster with currently most active vm/host. Or with currently most  5-10 active vms/hosts.
Any suggestions?


Flow is always 'pausing' after creating inquiry with core.ask

Hi all,
I have a flow with core.ask in it. After that step the flow status will be changed to pausing, then paused. At that time I can respond to the inquiry and the flow status will be changed to running.
But I often found that the flow status is always pausing after the inquiry is created. So I cannot respond to the inquiry since that will delete it and the flow cannot be resumed.
is there any way that I can manually change the flow status to paused? From cli or update mistral/stackstorm database? Thanks a lot.

@wyjuly is the workflow stuck in pausing or just taking a bit of time to make it into the paused state? As far as I can remember we don't have a tool for manipulating state directly. The only way to do that is through modifying its status via mongo.
This isn't exactly a pleasant UX though and warrants some thought and enhancement.

Also sometimes after I respond to an inquiry, the flow status was changed to 'Failed' and the output of the sub-flow shows:
{
  "traceback": "  File \"/opt/stackstorm/st2/lib/python2.7/site-packages/st2actions/container/base.py\", line 210, in _do_resume
    (status, result, context) = runner.resume()
  File \"/opt/stackstorm/st2/lib/python2.7/site-packages/retrying.py\", line 49, in wrapped_f
    return Retrying(*dargs, **dkw).call(f, *args, **kw)
  File \"/opt/stackstorm/st2/lib/python2.7/site-packages/retrying.py\", line 206, in call
    return attempt.get(self._wrap_exception)
  File \"/opt/stackstorm/st2/lib/python2.7/site-packages/retrying.py\", line 247, in get
    six.reraise(self.value[0], self.value[1], self.value[2])
  File \"/opt/stackstorm/st2/lib/python2.7/site-packages/retrying.py\", line 200, in call
    attempt = Attempt(fn(*args, **kwargs), attempt_number, False)
  File \"/opt/stackstorm/runners/mistral_v2/mistral_v2/mistral_v2.py\", line 444, in resume
    self.context.get('user', None)
  File \"/opt/stackstorm/st2/lib/python2.7/site-packages/st2common/services/action.py\", line 308, in request_resume
    % liveaction.id
",
  "error": "Unable to resume liveaction \"5a9fe1f2a9dc5b169b3f706f\" because it is not in a paused state."
}

But I'm sure that before I respond the inquiry I checked the main flow's status with:
st2 execution list --status paused
And the main flow's ID is in the list.

@bigmstone I tested many flows with inquiry. Yes the status changed from pausing to paused will take a bit time. But some of them will not be changed after more than 30 minutes And there are other flows running at that time so that shouldn't caused by heavy load.
I'm ok to change its status from mongo since I want to resume the flow, not re-run it.
And obviously change it to paused from cli is not permitted since it told me that:
st2 execution pause 5a9fd73da9dc5b169b3f6e7d
ERROR: 404 Client Error: Not Found
MESSAGE: Unable to identify resource with id "['5a9fd73da9dc5b169b3f6e7d']". for url: http://<IP_ADDRESS>:9101/v1/executions/['5a9fd73da9dc5b169b3f6e7d']

But the flow exists. Maybe the CLI wants to find a flow with status is running to pause, right?

@wyjuly Can you provide the workflow execution output st2 exectuion get <execution_id> with the execution that is still in the pausing state. It's also helpful if you can share the workflow itself so we can see what exactly you're using and how. I'd suggest sharing via gist and posting the links here. That will make it easier for us to read through them.

@wyjuly I'm going to close this issue for now. Please re-open if the issue persists and provide the above requested information.


Dockerfiles release

Adding Windows Dockerfiles for stable releases

Hi @brycem, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Bryce Milton). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

Resubmitting from personal fork as requested in https://github.com/PowerShell/PowerShell/pull/2461


Support for CSR format sparse matrix in optimizer?

matrix format:https://jax.readthedocs.io/en/latest/_autosummary/jax.experimental.sparse.BCSR.html#jax.experimental.sparse.BCSR
some feature in deepspeed: https://github.com/microsoft/DeepSpeed/blob/master/deepspeed/ops/csrc/adam/fused_adam_frontend.cpp

I believe that if the matrix format is a pytree (which I think it is), then things should work out of the box?
It would be great if you can check whether things do work out of the box or not.
It would be even more awesome if you can contribute an example on using these sparse matrix formats 😉


Featured carousel

Summary
UX ticket: https://github.com/rancher/dashboard/issues/5007
Occurred changes and/or fixed issues
Created a Featured carousel and implement it on the Apps & Marketplace Charts page
Add a toggle switch in the top-right 'Browse | Featured' - the default will be 'featured',

Does this resolve some/all of #5460 and/or https://github.com/rancher/dashboard/issues/5007?
I've added a few reviewers, just needs approval from one.
@ all - please note this is a 2.6.6 issue and should not merge to master yet

@bisht-richa please rephrase the PR description using the template.
The issues tackled with this PR is not correct, as @richard-cox asked, so please correct it with https://github.com/rancher/dashboard/issues/5460 and keep the term Fixed so it ensures automations in Zube.

@bisht-richa What's the current status on this one? There's some new conflicts and some unaddressed conversations still

@richard-cox I will fix the new conflicts and I am waiting for actual data, currently we are using dummy data

@richard-cox Thank you


Bug : Footer

Describe the bug
A clear and concise description of what the bug is.
Copyright year is static in footer should be dynamic in nature
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Pr #660 raised


Case sensitive matching

compe currently seems to perform a case-insensitive match. For example, take this Rust code:
const NUMBERS: usize = 32;

fn main() {
    let mut numbers = vec![10, 20, 30];

    numbers.push(10);

    println!("{:?}", numbers);
}

If I type num and trigger a completion, compe suggests both NUMBERS and numbers:

Since I have already type num in lowercase, I would like it to suggest only symbols that match the casing. Is this currently possible with  nvim-compe? If not, is that something that could be added? Thanks! :smiley:

Oh this issue I had for the longest time, specially when using spell source and buffer source and writing non-code related stuff. I'd have Word and then I type wo it suggest Word, the suggestions should worry about what casing we used before and should default to what casing the user is using and complete based on it.
In other words, typing wo should show word and on confirm it would post word. The same goes when I have word in the completion items, typing Wo will suggest Word and on confirm it would post Word.

Thinking about this: to support this, nvim-compe would have to add some sort of option to match from the start, with the same case. That is, say your input is like so:
foo|

And the possible options are:

foo
foo_bar
bar_foo
FOO
FOO_BAR
BAR_FOO

Then the only options suggested should be:

foo
foo_bar

If the input is this:
FOO|

Then the suggested options should be:

FOO
FOO_BAR

Better solution could be smart case matching.
foo would present foo, Foo, FOO, but foo should have highest score (lazy user detected, compe being as helpful as possible).
F would only present Foo and FOO (explicitly requested by user).
Could be a setting: smartcase, matchcase

I will investigate intellij/vscode bejaivior

Or, Feel free to put it here if someone knows it.

The smartcase approach looks good.

Hi @hrsh7th , any update on this? A setting to be case sensitive would be really great.


use dynamic aria-label for file upload

Coverage remained the same at 81.759% when pulling bd15e7e1b85bebd31f6548c1c63e8e9ca1d471b1 on CAB-3633 into 2c79aee2afa355f4dc62fa6ddafab930cc9ce0b5 on develop.


feat: DIA-99: [FE] Create range slider frontend component and add to Semantic Search

Hi @yyassi-heartex!
This PR was created in a response to PRs in upstream repos:

https://github.com/HumanSignal/dm2/pull/255

This PR is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in 10 days.

This PR was closed because it has been stalled for 10 days with no activity.


Node affinity operator behavior is not defined

https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
The operator field is a fairly important aspect of the node affinity concept, and yet the behavior of the operator fields are undefined.
The docs list the following:

You can use the operator field to specify a logical operator for Kubernetes to use when interpreting the rules. You can use In, NotIn, Exists, DoesNotExist, Gt and Lt.

But don't define the behavior of these operators. I think a table documenting this would be appropriate here.
It looks like other folks have had the same questions that I had when reading this doc ("I didn't find any documentation").

Thanks @WilliamDenniss , that's a good idea to propose , and I think i still have not found any detailed explanation of operator fields

/assign

/language en
/remove-lifecycle rotten
/sig scheduling
/triage accepted
/priority backlog

/remove-lifecycle rotten
Nice to have

@utkarsh-singh1 I don't see any updates; so unassigning you. Please feel free to assign, if you come back here again and are willing to work on 🙂
/unassign @utkarsh-singh1

For hints on what to document, see https://github.com/kubernetes/website/issues/39256#issuecomment-1418316723


Smooth deprecation suggestion

Just noticed on the readme that you are planning to deprecate the library, if so, please try to smoothly/gracefully deprecate it by relying on the alternative solution -> https://www.dicebear.com/playground/
The integration looks pretty similar:
<img   src="https://api.dicebear.com/9.x/thumbs/svg?seed=Princess"   alt="avatar" />
Also their "thumbs" theme looks similar to the boringavatars.
It should be pretty quick to migrate, but users of this library will avoid seeing 404.
Hope it helps!

Hey @alexeysarakuz, thanks for the suggestion. The problem here is the amount of daily requests through the service.
To avoid this we created a new subscription service plan to cover expenses. More info here: https://boringdesigners.gumroad.com/l/boring-avatars-service


Audio NOT playing in background when device is locked

[x] I have read the Get Started - Installation section
[x] I have read and done the Get Started - Setup Android section
[x] I have read and done the Get Started - Setup iOS section
[x] I have already searched for the same problem

Environment

Technology
Version

Flutter version
2.8.1

Plugin version
5.3.2

Android version
11

iOS version

Xcode version

Device information: Motorola Moto G9 Plus
Description
In version ^4.0.0+4, the audio of a youtube video used to play in background when the device was locked. But in version ^5.3.2 the audio pauses when the device is locked.
Is there any way we can enable background audio when the device is locked?
Expected behavior:
Background audio of the Youtube video SHOULD continue to play when the device is locked.
Current behavior:
Background audio of the Youtube video pauses when the device is locked.

I am having the same issue. Any workaround?


bump build number

to get rebuild with fixed run_exports from zeromq (fixes https://github.com/conda-forge/zeromq-feedstock/issues/49)
should get up-to-date libsodium 1.0.17 as well

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Heroku shutting down their free tier

Heads up: Heroku is eliminating their free services, starting November 28. Staticman has long recommended Heroku for their free services, and the documentation walks users through setting up hosting on Heroku; that documentation will need to be changed.
There are a number of competitors seeking to replace Heroku in this market niche. I've looked at a number of them and my current favorite is fly.io. They have a dedicated Heroku importer which has worked pretty well for me.

Thank you for the tip. I just migrated my Heroku Staticman app to fly.io and it works like a charm.

@DawnPaladin: Thank you very much for the hint. Please share your feedback about any issues that you might have faced during the migration process.
@matheusamazonas: Thank you for sharing your thoughts with us.
I am currently hosting Staticman on Heroku, and I intend to migrate my app, too.
Are there any settings that need to be changed during the migration?

@turian:
Did you try using a different version (v1 or v2) for the API post request?

Check the logs on Heroku. That might help finding out what's causing your issue.

@ka2in The migration was as simple as it could be, to be honest. I only had to choose the Fly.io app name, which Heroku app should it migrate, and that was it. I was kind of impresses about how easy it was.

@turian It's hard to pinpoint what your problem could be without extra information. I did struggle a bit while trying to set it up on Heroku, but everything was easily fixable.

I was looking into this recently, and I figured that Staticman can run as a Google Cloud Function with an ugly POST redirection patch. Here is my fork that implements that.
As a Google Cloud Function, Staticman will be able to handle get 2 million POST requests per month for free.
So essentially it's free for small blogs.

@Rubonnek I just wanted to say thanks for your effort here! I preferred GCF over Fly.io or Netlify for no real reason other than not having to create an account with yet another company - and it works great thanks to your patch.
A couple of notes for anyone doing the same:

The entry point is called "main"
You need to set up the environment variables including RSA_PRIVATE_KEY before running the function, otherwise it will fail to run
If you get an HTTP 403 error accessing the URL in a browser after it's run up, you need to give "allUsers" the "Cloud Run Invoker" permission so that unauthenticated users can invoke the function via an HTTP request

I hope that helps! I get about 2 comments a month so I'm hoping 2 million POST requests will be enough 😆

Fly.io's heroker importer worked well for me. The importer actually appeared to get stuck, but when I went to the dashboard the app was running. After that, just had to change the github app webhook url and change the API link in the site config.yml.

@turian:
Did you try using a different version (v1 or v2) for the API post request?
<form method="POST" action="https://api.staticman.net/v3/entry/github/eduardoboucas/staticman/gh-pages/comments">

Check the logs on Heroku. That might help finding out what's causing your issue.

i suggest using v3 for two-folded reasons:

native GitLab support for GitLab Pages, AND
native GitHub App support for GitHub Pages

ℹ It's possible that one (personal) API server serve both GitLab and GitHub sites.

@DawnPaladin @matheusamazonas
I wanted to give your suggestion a try, but then I was asked for my credit card details in the middle of the process. No way to import your app from Heroku before selecting a payment method.

We’re living in a post-heroku world. They disabled the free tier in part because of people signing up and using resources, and the competitors have learned from this and require cards.

I just migrated my Heroku instance to Cyclic.  They have free accounts and don't require credit cards.  To get setup, I had to fork this repo, since eduardo's repos wouldn't show up in the list.  I also had to deploy from master, not dev.
After moving over my GITHUB_TOKEN and RSA_PRIVATE_KEY, and changing the URL in staticman.yml to point to the new instance, everything seems to be working.

More Heroku alternatives are listed at
https://github.com/Engagespot/heroku-free-alternatives

@erikw @jamesmortensen: Thank you very much for introducing more alternatives to Heroku.

@Rubonnek the gcloud integration looks cool.  With a little bit more effort, I think you could write a wrapper around it that would allow users of Staticman to choose between the default  standalone mode and cloud function mode.
However, the upstream project isn't active, so I'm not sure if it's a good time investment if there is no one to evaluate and merge the pull request.
@VincentTam does v3 still support PAT tokens? I think I am still on v2 because I didn't create a GitHub app.

@VincentTam does v3 still support PAT tokens? I think I am still on v2 because I didn't create a GitHub app.

@jamesmortensen

Git provider
✔ / ❌

GitHub
✔

GitLab
❌

I encourage you to move to GitHub App for issues addressed by PR 243.

I finally migrated my app to Render without any big issues.

Deploy as a Web Service.
Node environment.
Enter the environment variables you were using on Heroku

You can set a different name for your Web Service under Settings. That's it.

Would be nice if people update their tutorials on the net to explain the migration process for new users. The Getting Started on the Staticman official website is not a detailed resource for newcomers.

@ka2in would you be able to write one for Render?  I should be able to have time soon to do one for cyclic.sh.
Since there is no one to approve and merge pull requests, I think we could just post links to those tutorials in this issue.

@jamesmortensen yes, sure. I'll prepare a tutorial for Render.

@ka2in When deploying the app on Render, it prompts

Staticman API running on port 10000

But the build never finishes. It remains stuck on "in progress". It builds fine locally but there seems to be some trouble in deployment which I'm struggling to figure out. Is there by any chance you faced the same issue or know a workaround to fix it?

https://github.com/ka2in/heroku-render-migration/wiki/Migrating-your-Staticman-instance-from-Heroku-to-Render

@prateekdwv What have you chosen under Environment (runtime environment for your web service) in Render?
I'm getting comments without any issues through my instance on Render.

I just migrated staticman to fly.io using the linked Heroku importer. Very simple.

Made fly.io account. Input credit card to be able to use free tier.
run heroku importer tool.
change every instance in website of "herokuapp.com" to "fly.dev"

@ka2in Thanks for your tutorial! When I try to add a comment on my blog, I can't access https://dreambooker-comment.onrender.com/v3/entry/github/zxdawn/zxdawn.github.io/main/comments. Is there anything I need to modify for my blog repo?

The fly.io migration tool kept failing for me. It said the app was not found. I then manually cloned a copy of staticman to fly.io and copied my secrets from Heroku. That "mostly" seemed to work, but when the app runs, I'm getting an error about the RSA key not being found. Thoughts on what to try next?

i've given up trying the RSA key cuz RSA won't be safe in post-quantum era.

@VincentTam I'm not able to get the app to run without the RSA though as it kills my app on fly.io. Not sure why I'm having these issues as people above seem to have had no issues using the Heroku to fly.io migration tool. It's just not working for me and my manual clone of staticman and migration of my secrets are not working. I'm a bit confused on how to fix this.

What port are you all using on fly.io in the config.js staticman file? I think that is where my app is failing. Fly.io is looking for 8080, but staticman is trying to use the default 0. Does that make sense?

When I first migrated to Fly.io, I kept receiving failure reports:
% flyctl launch

Release v1 created
==> Monitoring deployment

 1 desired, 1 placed, 0 healthy, 1 unhealthy [health checks: 1 total, 1 critical]
Failed Instances

Failure #1

Instance
ID      	PROCESS	VERSION	REGION	DESIRED	STATUS 	HEALTH CHECKS      	RESTARTS	CREATED
e92b862b	app    	1      	ewr   	run    	running	1 total, 1 critical	0       	5m22s ago

Recent Events
TIMESTAMP           	TYPE      	MESSAGE
2022-11-28T02:55:10Z	Received  	Task received by client
2022-11-28T02:55:36Z	Task Setup	Building Task Directory
2022-11-28T02:55:37Z	Started   	Task started by client

2022-11-28T02:55:39Z   [info]Staticman API running on port 8098
--> v1 failed - Failed due to unhealthy allocations - no stable job version to auto revert to and deploying as v2

--> Troubleshooting guide at https://fly.io/docs/getting-started/troubleshooting/
Error abort

I eventually fixed this by setting/changing internal_port = 8098 in the fly.toml file (to match my staticman config).

Thanks, @hispanic! I updated both my config.js and fly.toml to match on the port and that seems to work. I am able to now get the "Hello from Staticman version 3.0.0!" message when I go to the URL.
I updated my api url in my website config file and changed my GitHub Application webhook address, but it failed when doing a test post to the new fly.io instance. Some of the messages that I received:
[@octokit/app] Deprecated. Use @octokit/app-auth instead. See https://github.com/octokit/app.js/#deprecated

(node:536) UnhandledPromiseRejectionWarning: Error: error:0906D06C:PEM routines:PEM_read_bio:no start line

(node:536) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4)

(node:536) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

[error] could not send HTTP request to instance: connection error: timed out

Did you have any issues when attempting a first test comment?

Nope. No issues after that, I believe. Make sure you set your secrets (env vars), including your private key:
% flyctl secrets set -a [your-app-name] RSA_PRIVATE_KEY="$(cat key.pem)"
Full disclosure, I'm using a custom fork, not the official Staticman. (I'm not encouraging usage of my fork, at least not by anyone expecting support.)

Thanks, @hispanic. Are you not seeing the depreciation warning around @octokit/app being deprecated and needing to use @octokit/app-auth instead?

Nope, no warning for me.

@hispanic Yeah, I'm very confused. I am able to use the Fly.io webhook in my Github app, but when I change from my Heroku api call in my comment form HTML post URL to the Fly.io api URL, I get the following error:
iad [error] could not send HTTP request to instance: connection error: timed out
It seems that I am able to authenticate to the Fly.io instance since I can use the webhook URL in my GitHub app, but I don't know why my post URL is not working.

I'm not sure what to say. Standard debugging procedures apply. Try to figure out the differences between the calls by recreating both the success and error conditions using something such as Insomnia, Postman, etc. Good luck.

Thanks @hispanic. I'll try and figure that out (I'm primarily a designer, so I still have a lot to learn about debugging issues).

Roger that. A time out error implies, to me, some sort of configuration error beyond Staticman.
That said, personally, I don't believe that Staticman is maintained, packaged, supported, or coded cleanly enough to be reliably stood-up by those who are not willing and able to dig into the code a bit. This is not a criticism of anyone, including Eduardo. I'm very thankful the codebase is available for use, regardless of any weaknesses I see it as having.

Sorry to necro, but for folks that successfully migrated to fly.io, did it stop working after fly.io then migrated (in May 2023) to their "v2"? Seems to have stopped working for me, and I'm trying to figure out if that's the cause.

Please change the text and link saying Heroku has a free plan on your website. It's somewhat confusing when one lands on the Heroku website and can't find it (any more)!
Best, Take care

@samusz If you’re referring to something in the docs, you can make the edit yourself and submit a PR https://github.com/eduardoboucas/staticman.net


Include Test Object ID range 42769-42800

Question
The OMA LwM2M registery (https://technical.openmobilealliance.org/OMNA/LwM2M/LwM2MRegistry.html) has a ObjectID Class category "Test" which consists of IDs in the range 42769-42800.
Currently leshan (or at least the web-server-demo) does not accept any Object IDs > 42768, so XML-Objectdescriptions with IDs in the Test range are rejected by leshan during startup.
I think it would make sense for leshan to accept Object IDs in the test range as this is useful during prototyping.

Yep, I guess this should be accepted.
I didn't remember about that range :thinking:. Is it something new ?
Looking quickly at the code, this should be adapted :
https://github.com/eclipse-leshan/leshan/blob/6e62e54e72d90bc3f335af533d5e7d53e3718f37/leshan-core/src/main/java/org/eclipse/leshan/core/model/DefaultObjectModelValidator.java#L49-L60
And also maybe URN validation is too strict ? :thinking:
https://github.com/eclipse-leshan/leshan/blob/6e62e54e72d90bc3f335af533d5e7d53e3718f37/leshan-core/src/main/java/org/eclipse/leshan/core/model/DefaultObjectModelValidator.java#L138-L179

Would this impact the URN "kind"?
https://github.com/eclipse-leshan/leshan/blob/master/leshan-core/src/main/java/org/eclipse/leshan/core/model/URN.java

I didn't remember about that range 🤔. Is it something new ?

Yeah, the ID ranges where changed at some point, but I am not sure when exactly. Before the change there was a range of IDs that could be used without any registration for custom objects (in the 30000 range as far as I remember). But now it seems everything up to 42768 is reserved and the Test Object IDs where added.

And also maybe URN validation is too strict ?

Right. At least for the Test Id range this might be an issue, as OMA does not seem to define a URN for that range.

@rw-wep  thx for taking time to report that !

Would this impact the URN "kind"?

@jvermillard  Yep this code should probably be adapted too. :+1:

Right. At least for the Test Id range this might be an issue, as OMA does not seem to define a URN for that range.

I tried to get an answer about that : https://github.com/OpenMobileAlliance/lwm2m-registry/issues/737

MA does not seem to define a URN for that range.

@rw-wep, in your case what looks like  URN ?

I created a PR about that : https://github.com/eclipse-leshan/leshan/pull/1515
For now, it skips URN validation for test range ... I don't understand why OMA didn't define a URN pattern for test (e.g. : urn:oma:lwm2m:test:<id>:<version>)

@rw-wep let me know if you review it and/or if you're able to test it.

Looks good so far.
The objectdescription-file (id 42772) I test with has a blank URN field.
It can be loaded without errors and it shows up in the leshan-web-server-demo when a device connects with such an object.

I integrated PR #1515 in master
About Test URN format,  we will see if we get an answer from OMA.
Waiting I think we can close this issue.
@rw-wep thx again for your time.  :pray:


Command line flags not overriding configuration file values

What happened:
When running syft -vv alpine:latest an error will occur if the configuration file is also set for verbosity.
What you expected to happen:
No error for syft to occur with command line flags and config set.
How to reproduce it (as minimally and precisely as possible):
run syft -vv alpine:latest with a configuration file also configured with log settings
log:
  # use structured logging
  # same as SYFT_LOG_STRUCTURED env var
  structured: false

  # the log level; note: detailed logging suppress the ETUI
  # same as SYFT_LOG_LEVEL env var
  level: "error"

  # location to write the log file (default is not to have a log file)
  # same as SYFT_LOG_FILE env var
  file: ""

Anything else we need to know?:
Community Meeting origin 8/4
Environment:

Output of syft version: v0.53.4
OS (e.g: cat /etc/os-release or similar):
OSX

NOTE: this looks like the command line precedence has an issue. It was just reported the same thing was happening for --output on the community Slack: https://anchorecommunity.slack.com/archives/C4PJFNEEM/p1667844831946429

There is also a problem with command line flags overriding any config. An example is:
SYFT_OUTPUT=table syft alpine:latest -o json

... outputs the table instead of json but the command line parameter should override the environment variable (and config file).


Fix error messages

This makes it so you actually get a 404 page when you try to do something with a flathub application which doesn't exist.

Good point, I've updated it with a simpler error message


End Nakamoto Splash Screen for Now

With the timeline change on Nakamoto we should pull down the splash screen until it's actually live on public mainnet (mid-august)

:tada: This issue has been resolved in version 1.176.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[Bug] Be core dump when using concat as join key

Search before asking

[X] I had searched in the issues and found no similar issues.

Version
lts-1.2
commit:c08568e
using tpch to make a test table
CREATE TABLE `supplier_100` (
  `s_suppkey` int(11) NOT NULL COMMENT "",
  `s_name` varchar(25) NOT NULL COMMENT "",
  `s_address` varchar(40) NOT NULL COMMENT "",
  `s_nationkey` int(11) NOT NULL COMMENT "",
  `s_phone` varchar(15) NOT NULL COMMENT "",
  `s_acctbal` decimal(15, 2) NOT NULL COMMENT "",
  `s_comment` varchar(101) NOT NULL COMMENT ""
) ENGINE=OLAP
DUPLICATE KEY(`s_suppkey`)
COMMENT "OLAP"
DISTRIBUTED BY HASH(`s_suppkey`) BUCKETS 12
PROPERTIES (
"replication_allocation" = "tag.location.default: 1",
"in_memory" = "false",
"storage_format" = "V2"
)

insert into  supplier_100 select * from supplier limit 100

the bad case
select t1.index_id,
       t2.sum_xxx
  from (
        select s_suppkey,
               s_name,
               concat(s_suppkey,s_name,'-', s_suppkey)as index_id
          from supplier_100
         group by
      s_suppkey,s_name
       ) t1
  left join (
        select t0.index_id,
               sum_xxx
          from (
                select s_suppkey,
                       s_name,
                       concat(s_suppkey,s_name,'-', s_suppkey)as index_id,
                       sum(s_nationkey) as sum_xxx
                  from supplier_100
                 group by
              s_suppkey,s_name
               ) t0
       )t2
    on t1.index_id = t2.index_id
 order by
  t1.index_id,
 t2.sum_xxx
limit 1000000

stack
*** Query id: 0-0 ***
*** Aborted at<PHONE_NUMBER> (unix time) try "date -d @1667283506" if you are using GNU date ***
*** Current BE git commitID: c08568e ***
*** SIGABRT unkown detail explain (@0x1f400031fe1) received by PID 204769 (TID 0x7f961bbe2700) from PID 204769; stack trace: ***
 0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /root/doris-vector/be/src/common/signal_handler.h:420
 1# 0x00007F975C3F5400 in /lib64/libc.so.6
 2# gsignal in /lib64/libc.so.6
 3# abort in /lib64/libc.so.6
 4# __gnu_cxx::__verbose_terminate_handler() [clone .cold] in /opt/meituan/palo/up/be/lib/palo_be
 5# __cxxabiv1::__terminate(void (*)()) in /opt/meituan/palo/up/be/lib/palo_be
 6# 0x0000560FD1F85141 in /opt/meituan/palo/up/be/lib/palo_be
 7# 0x0000560FD1F85295 in /opt/meituan/palo/up/be/lib/palo_be
 8# doris::vectorized::throwFromErrno(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int) at /root/doris-vector/be/src/vec/common/exception.cpp:115
 9# Allocator<false, false>::alloc(unsigned long, unsigned long) [clone .isra.0] at /root/doris-vector/be/src/vec/common/allocator.h:134
10# void doris::vectorized::PODArrayBase<1ul, 4096ul, Allocator<false, false>, 15ul, 16ul>::alloc<>(unsigned long) at /root/doris-vector/be/src/vec/common/pod_array.h:138
11# void doris::vectorized::PODArrayBase<1ul, 4096ul, Allocator<false, false>, 15ul, 16ul>::resize<>(unsigned long) at /root/doris-vector/be/src/vec/common/pod_array.h:245
12# doris::vectorized::FunctionStringConcat::execute_impl(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long) at /root/doris-vector/be/src/vec/functions/function_string.h:479
13# doris::vectorized::PreparedFunctionImpl::execute_without_low_cardinality_columns(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) at /root/doris-vector/be/src/vec/functions/function.cpp:251
14# doris::vectorized::PreparedFunctionImpl::default_implementation_for_nulls(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool, bool*) at /root/doris-vector/be/src/vec/functions/function.cpp:221
15# doris::vectorized::PreparedFunctionImpl::execute(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) at /root/doris-vector/be/src/vec/functions/function.cpp:273
16# doris::vectorized::IFunctionBase::execute(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) at /root/doris-vector/be/src/vec/functions/function.h:135
17# doris::vectorized::VectorizedFnCall::execute(doris::vectorized::VExprContext*, doris::vectorized::Block*, int*) at /root/doris-vector/be/src/vec/exprs/vectorized_fn_call.cpp:96
18# doris::vectorized::VExprContext::execute(doris::vectorized::Block*, int*) at /root/doris-vector/be/src/vec/exprs/vexpr_context.cpp:44
19# doris::vectorized::HashJoinNode::_extract_build_join_column(doris::vectorized::Block&, doris::vectorized::PODArray<unsigned char, 4096ul, Allocator<false, false>, 15ul, 16ul>&, std::vector<doris::vectorized::IColumn const*, std::allocator<doris::vectorized::IColumn const*> >&, bool&, doris::RuntimeProfile::Counter&) at /root/doris-vector/be/src/vec/exec/join/vhash_join_node.cpp:1229
20# std::__detail::__variant::__gen_vtable_impl<std::__detail::__variant::_Multi_array<std::__detail::__variant::__deduce_visit_result<doris::Status> (*)(doris::vectorized::HashJoinNode::_process_build_block(doris::RuntimeState*, doris::vectorized::Block&, unsigned char)::{lambda(auto:1&&)#1}&&, std::variant<std::monostate, doris::vectorized::SerializedHashTableContext, doris::vectorized::PrimaryTypeHashTableContext<unsigned char>, doris::vectorized::PrimaryTypeHashTableContext<unsigned short>, doris::vectorized::PrimaryTypeHashTableContext<unsigned int>, doris::vectorized::PrimaryTypeHashTableContext<unsigned long>, doris::vectorized::PrimaryTypeHashTableContext<doris::vectorized::UInt128>, doris::vectorized::PrimaryTypeHashTableContext<doris::vectorized::UInt256>, doris::vectorized::FixedKeyHashTableContext<unsigned long, true>, doris::vectorized::FixedKeyHashTableContext<unsigned long, false>, doris::vectorized::FixedKeyHashTableContext<doris::vectorized::UInt128, true>, doris::vectorized::FixedKeyHashTableContext<doris::vectorized::UInt128, false>, doris::vectorized::FixedKeyHashTableContext<doris::vectorized::UInt256, true>, doris::vectorized::FixedKeyHashTableContext<doris::vectorized::UInt256, false> >&)>, std::integer_sequence<unsigned long, 1ul> >::__visit_invoke(doris::vectorized::HashJoinNode::_process_build_block(doris::RuntimeState*, doris::vectorized::Block&, unsigned char)::{lambda(auto:1&&)#1}&&, std::variant<std::monostate, doris::vectorized::SerializedHashTableContext, doris::vectorized::PrimaryTypeHashTableContext<unsigned char>, doris::vectorized::PrimaryTypeHashTableContext<unsigned short>, doris::vectorized::PrimaryTypeHashTableContext<unsigned int>, doris::vectorized::PrimaryTypeHashTableContext<unsigned long>, doris::vectorized::PrimaryTypeHashTableContext<doris::vectorized::UInt128>, doris::vectorized::PrimaryTypeHashTableContext<doris::vectorized::UInt256>, doris::vectorized::FixedKeyHashTableContext<unsigned long, true>, doris::vectorized::FixedKeyHashTableContext<unsigned long, false>, doris::vectorized::FixedKeyHashTableContext<doris::vectorized::UInt128, true>, doris::vectorized::FixedKeyHashTableContext<doris::vectorized::UInt128, false>, doris::vectorized::FixedKeyHashTableContext<doris::vectorized::UInt256, true>, doris::vectorized::FixedKeyHashTableContext<doris::vectorized::UInt256, false> >&) at /var/local/ldb-toolchain/include/c++/11/variant:1020
21# doris::vectorized::HashJoinNode::_process_build_block(doris::RuntimeState*, doris::vectorized::Block&, unsigned char) at /root/doris-vector/be/src/vec/exec/join/vhash_join_node.cpp:1336
22# doris::vectorized::HashJoinNode::_hash_table_build(doris::RuntimeState*) at /root/doris-vector/be/src/vec/exec/join/vhash_join_node.cpp:1204
23# doris::vectorized::HashJoinNode::_hash_table_build_thread(doris::RuntimeState*, std::promise<doris::Status>*) at /root/doris-vector/be/src/vec/exec/join/vhash_join_node.cpp:1151
24# std::thread::_State_impl<std::thread::_Invoker<std::tuple<doris::vectorized::HashJoinNode::open(doris::RuntimeState*)::{lambda()#1}> > >::_M_run() at /var/local/ldb-toolchain/include/c++/11/bits/std_thread.h:211
25# execute_native_thread_routine in /opt/meituan/palo/up/be/lib/palo_be
26# start_thread in /lib64/libpthread.so.0
27# clone in /lib64/libc.so.6

What's Wrong?
core when using concat as join key
What You Expected?
return correct result
How to Reproduce?
No response
Anything Else?
No response
Are you willing to submit PR?

[x] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

This is because join could convert build side column to nullable to default, but concat didn't deal nullable type.
I'll fix it.

this has been solved by #13655


mysql does not support executing multiple query statements at the same time and displaying the query results separately.

mysql does not support executing multiple query statements at the same time and displaying the query results separately.
ver:24.0.0

Please clarify your request.
What do you mean by "executing multiple query statements at the same time"? Is it about executing several statement by pressing one button or about parallel execution?
What do you mean by "displaying query results separately"?

It's been a while since no update here. If the issue is still actual please let me know and provide additional information.


📖 Update version warning banner in release-0.22.0

Summary
This PR changes the version warning banner behavior in branch release-0.22.0 to match the changes made to branch main in #2111 .
This PR only changes enough to get the needed behavior fix; the older automation in the new state gives the right result (e.g., the latest alias has already been set to point to release-0.22.0, no need to change it).
Related issue(s)
This is part of addressing #2019 .

/lgtm
/approve