Laravel sqlsrv works in tinker mode but not in browser

I have a Laravel 5 project (on a CentOS 7 machine) that connects to an external MSSQL database.
I followed the setup outlined here using FreeTDS.
When I hit the page using a browser I get the error: SQLSTATE[HY000] Unable to connect: Adaptive Server is unavailable or does not exist (severity 9).
But when I use php artisan tinker and do something like App\MyModel::get();, it returns an Illuminate\Database\Eloquent\Collection instance with the records/models just fine.
Anyone knows what's wrong with this?

Did you check the TDS version in the FreeTDS configuration file?
In /etc/freetds.conf under the [global] section, there is a setting called tds version. If you haven't already, set it to 7.0 or 8.0. For some reason the stock FreeTDS version configuration defaults with an archaically low version number.
Also don't forget to restart the webserver, or the dblib connection might not pick up on the updated settings.

It's not a FreeTDS problem. I checked all in command line. It's a SELinux problem. I managed to fix it by disabling SELinux. Please see here.

Ah, the dreaded beast SELinux :)
Anyways, the solution for your problem is to give the webserver permissions to make outgoing connections to the database:
setsebool -P httpd_can_network_connect_db 1
The -P flag makes the rule persistent, otherwise the rule is lost after a reboot.

Thanks @baspeters! Your solution worked. I enabled SELinux again and ran your command. The site loaded in browser perfectly.

Im experiencing the same issue but on Ubutu Server 17.10 Using Laravel 5.5, Posted solution does not worked with me. Im getting "could not find driver (SQL:  SELECT .....)", it works on Tinker and CLI but not in "browser mode"
setsebool is not installed on my server or even avaliable on repositories
Any Solution?

@QSoto Check if your web server loaded the database extension too.


NOJIRA: Update ant constraint and documentation to require Java 8

Checklist

[x] the individual contributor license agreement is signed
[x] commit message follows commit guidelines
[x] documentation is changed or added

Description of change

Update docs and ant constraint to reflect that uPortal 5 requires Java 8 or above.

Coverage remained the same at 22.88% when pulling 57f8d231f0e51c2d093ecde2b40607838e571ef2 on ChristianMurphy:NOJIRA-update-to-java-8 into ce925e5ed28f05585fa3287b869f18bae151c405 on Jasig:master.

:100:


[Package Request]: Steam Art Manager

How can we help?
I would like someone else to build the manifest.
Please read and ensure the following

[X] The installer meets the above requirements

Please provide the following information
Download Page Url: https://github.com/Tormak9970/Steam-Art-Manager/releases/tag/v1.4.5
Publisher: Travis Lane
Package Name: Steam Art Manager
Description: A tool for setting the artwork of your Steam library.
Package Version: 1.4.5
Installer URL:https://github.com/Tormak9970/Steam-Art-Manager/releases/download/v1.4.5/Steam.Art.Manager_1.4.5_x64_en-US.msi

Configuring The Installation

Since https://github.com/microsoft/winget-pkgs/pull/101955 is merged, I'm going to assume this is complete. If this is in error, feel free to @ me and I'll reopen.


Add entry license topic on readme file

By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file;
(b) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
Signed-off-by: Omar Berroteran Silva

/lgtm
/approve


combineLatest typings does not reflects on its behaviour

Bug Report
Current Behavior
combineLatest operator does not infer correctly for ObservableInput<T>[] signature
Reproduction
      const a = of(1, 2, 3);
      const b = [of('a', 'b', 'c')];
      const res = a.pipe(combineLatest(b, (a, b) => b)); // $ExpectType Observable<[number, string]>

Expected behavior
The above code should be passing. However, it infers Observable<Observable<string>>.
Additional context/Screenshots
Please refer to @cartant comment here
Please note that this is also apply for merge operator the signature is similar and it would be great if we could get it fix together.

Closing this 'cause - in v7, at least - the inference is correct.


fix typo in FastbootDevice#upload

Thanks! Can you remove the dist rebuild? PRs don't generally include that.
Including dist in the repo has been convenient for some use cases, but it may not stay this way.

fixed!


After update to version 4.3.0 from 4.2.1 connection parameters is not a valid JSON object

Describe the bug
After updating from version 4.2.1 to 4.3.0 an error occurs when opening a GraphQL Subscription .
The connection parameters for the authorization should be in an incompatible format.
Before the update to 4.3.0 it worked without problems.
To Reproduce
Steps to reproduce the behavior:

Go to 'SUBSCRIPTION URL'
Scroll down to 'Connection parameters in JSON'
{"authorization": "Bearer token"}
save
try to create a subscription connection

Result: An error occurred in subscription.
Error: Your connection parameters is not a valid JSON object.
Desktop (please complete the following information):

OS: [iOS intel]
Version [4.3.0]

I'm getting this error too.


Build failure: python311Packages.cchardet

Steps To Reproduce
Steps to reproduce the behavior:

build X

[davidak@gaming:~/code/nixpkgs]$ nix-shell -I . -p python311Packages.cchardet
Build log
this derivation will be built:
  /nix/store/9gykg3l2pbfs6fdbmcs01bf06iyqwj5q-python3.11-cchardet-2.1.7.drv
building '/nix/store/9gykg3l2pbfs6fdbmcs01bf06iyqwj5q-python3.11-cchardet-2.1.7.drv'...
Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing setuptools-build-hook
Using setuptoolsBuildPhase
Using setuptoolsShellHook
Sourcing pip-install-hook
Using pipInstallPhase
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Sourcing python-namespaces-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing setuptools-check-hook
unpacking sources
unpacking source archive /nix/store/4jf9q7rps4nnpjwzizg9n722gv1i52mp-cchardet-2.1.7.tar.gz
source root is cchardet-2.1.7
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file cchardet-2.1.7/setup.cfg
patching sources
configuring
no configure script, doing nothing
building
Executing setuptoolsBuildPhase
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-311
creating build/lib.linux-x86_64-cpython-311/cchardet
copying src/cchardet/version.py -> build/lib.linux-x86_64-cpython-311/cchardet
copying src/cchardet/__init__.py -> build/lib.linux-x86_64-cpython-311/cchardet
running build_ext
building 'cchardet._cchardet' extension
creating build/temp.linux-x86_64-cpython-311
creating build/temp.linux-x86_64-cpython-311/src
creating build/temp.linux-x86_64-cpython-311/src/cchardet
creating build/temp.linux-x86_64-cpython-311/src/ext
creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet
creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet/src
creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet/src/LangModels
g++ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -I/nix/store/64vcf3x48sjfckvwzbdsr3a9yjf0jcbq-libxcrypt-4.4.30/include -fPIC -Isrc/ext/uchardet/src -I/nix/store/536aws8kkljng4ggdakk8i1nfdqb4f4x-python3-3.11.3/include/python3.11 -c src/cchardet/_cchardet.cpp -o build/temp.linux-x86_64-cpython-311/src/cchardet/_cchardet.o
src/cchardet/_cchardet.cpp:196:12: fatal error: longintrepr.h: No such file or directory
  196 |   #include "longintrepr.h"
      |            ^~~~~~~~~~~~~~~
compilation terminated.
error: command '/nix/store/y372k7srz9jm7v9sv2cs84g3crz27z1s-gcc-wrapper-11.3.0/bin/g++' failed with exit code 1
error: builder for '/nix/store/9gykg3l2pbfs6fdbmcs01bf06iyqwj5q-python3.11-cchardet-2.1.7.drv' failed with exit code 1;
       last 15 log lines:
       > running build_ext
       > building 'cchardet._cchardet' extension
       > creating build/temp.linux-x86_64-cpython-311
       > creating build/temp.linux-x86_64-cpython-311/src
       > creating build/temp.linux-x86_64-cpython-311/src/cchardet
       > creating build/temp.linux-x86_64-cpython-311/src/ext
       > creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet
       > creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet/src
       > creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet/src/LangModels
       > g++ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -I/nix/store/64vcf3x48sjfckvwzbdsr3a9yjf0jcbq-libxcrypt-4.4.30/include -fPIC -Isrc/ext/uchardet/src -I/nix/store/536aws8kkljng4ggdakk8i1nfdqb4f4x-python3-3.11.3/include/python3.11 -c src/cchardet/_cchardet.cpp -o build/temp.linux-x86_64-cpython-311/src/cchardet/_cchardet.o
       > src/cchardet/_cchardet.cpp:196:12: fatal error: longintrepr.h: No such file or directory
       >   196 |   #include "longintrepr.h"
       >       |            ^~~~~~~~~~~~~~~
       > compilation terminated.
       > error: command '/nix/store/y372k7srz9jm7v9sv2cs84g3crz27z1s-gcc-wrapper-11.3.0/bin/g++' failed with exit code 1
       For full logs, run 'nix log /nix/store/9gykg3l2pbfs6fdbmcs01bf06iyqwj5q-python3.11-cchardet-2.1.7.drv'.

Additional context
Needed for Nikola and others.
Same issue with python310.
Notify maintainers
@dotlambda @ivan
Metadata
Built from nixpkgs master (c873717c6f81082f7cf8302017971520495a75fe)

system: "x86_64-linux"
host os: Linux 6.3.5, NixOS, 22.11 (Raccoon), 22.11.4588.93fddcf640c
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.11.1
channels(root): "home-manager-22.11.tar.gz, nixos-22.11, nixos-hardware, nixos-unstable"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

@davidak greetings ! builds for me
git checkout c873717c6f81082f7cf8302017971520495a75fe
Note: switching to 'c873717c6f81082f7cf8302017971520495a75fe'.

nix-build -A python311Packages.cchardet
/nix/store/0klkk49c1vk8v6lk2jw0xx7ykz12m2ak-python3.11-faust-cchardet-2.1.18

 nix-info -m
 - system: `"x86_64-linux"`
 - host os: `Linux 6.3.9, NixOS, 23.11 (Tapir), 23.11.20230622.c44a3b0`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.15.1`
 - channels(root): `"nixos"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

I've noticed that hash is different, maybe something in your overlays ?
can you try
nix build github:nixos/nixpkgs?rev=c873717c6f81082f7cf8302017971520495a75fe#python311Packages.cchardet

Here's a rundown of the issue:
At some point, changes to CPython in https://github.com/python/cpython/issues/79315 must have made their way into Python. This broke code any code generated by Cython until around version 0.29.25 (it was fixed in https://github.com/cython/cython/pull/4428). Unfortunately, cchardet 2.1.7 was using Cython 0.29.21.
The cchardet project was not actively maintained at that time, so a fork of it was created and the Cython version was updated to 0.29.30 in https://github.com/faust-streaming/cChardet/commit/e8426f80b4e1ef5792aa40e0031c99597f136119 and released as faust-cchardet. This was pulled into nixpkgs in https://github.com/NixOS/nixpkgs/commit/d8fe6839b0dc3683edea9c4c2a6630dd5d2507f3 and became a drop-in replacement for cchardet in https://github.com/NixOS/nixpkgs/commit/1bd4b71a35006d6c86c0c6e8e84c4fa72a5b2be1 and https://github.com/NixOS/nixpkgs/commit/2d5301979dc8b0f797c47f515ec2fe03e1d220e5.
One way to get this to just work is to pick up all these changes by updating to 23.05. I don't know whether a backport would be possible.

@tjni thank you very much for your summary, I am sure we can sort out a backport if it's necessary.
I'll just add one more bit of info, to clear confusion on my side
Original report claims that Built from nixpkgs master (https://github.com/NixOS/nixpkgs/commit/c873717c6f81082f7cf8302017971520495a75fe)
but from build logs ( in original report )
this derivation will be built:
  /nix/store/9gykg3l2pbfs6fdbmcs01bf06iyqwj5q-python3.11-cchardet-2.1.7.drv

but that commit already contains cchardet-2.1.8

@davidak do you still encounter this failure? I want to do some maintenance on old issues.


Making install bash script from interenal python logic

To provide 2 ways for install.
$ bash -c "$(curl -fsSL https://raw.githubusercontent.com/junaruga/rpm-py-installer/master/install)"

$ pip install rpm-py-installer

It might be good to generate the install bash script from Python logic for good maintenance.
Below might be good.
make install-script => Generateinstall bash script.

To reduce the task to generate the install script every time after up to date.
Below logic might be good, calling an Python script internally in install bash script.
install
curl `http://PATH_TO_ANOTHER_PYTHON_SCRIPT/something.py` > /tmp/XXXXX-rpm-py-installer/something.py
${PYTHON} /tmp/XXXXX-rpm-py-installer/something.py

Change to below format.
Replace install from Bash script to Python script.
$ /path/to/python -c "$(curl -fsSL https://raw.githubusercontent.com/junaruga/rpm-py-installer/master/install)"

Homebrew is using ruby as a front end script as a reference.
https://brew.sh/
https://github.com/Homebrew/install/blob/master/install


Drop pkg/utils/kubernetes.{Key,ObjectMeta{FromKey}} functions

How to categorize this PR?

/area dev-productivity
/kind enhancement
What this PR does / why we need it:
This PR drops the pkg/utils/kubernetes.{Key,ObjectMeta{FromKey}} functions since their usage is error-prone (it is not obvious in which order the arguments name/namespace need to be provided). Using client.ObjectKey or metav1.ObjectMeta structs is straight-forward and clear.
Release note:

The `pkg/utils/kubernetes.{Key,ObjectMeta{FromKey}}` functions have been dropped. Use `client.ObjectKey` or `metav1.ObjectMeta` instead.

Thanks!
/lgtm
/approve

Thanks!
/lgtm
/approve


support proxy-protocol on listening sockets

Support for the proxy-protocol http://haproxy.1wt.eu/download/1.5/doc/proxy-protocol.txt
This is tested (applied to 1.4.35) on FreeBSD. Basically lets us put our lighttpds behind a proxy without losing the client IP.
if proxy.expect_header is set in socket context, the header is read and processed; if proxy.expect_header & 2; then the schema is set to https (proxy is doing TLS termination, but lighttpd needs to know)
There's a small memory cost to have the additional state, so I put it all in ifdefs, with a configure option.

not merged - closing for now. please create a new pull request with an updated patch if you are still interested.


Identify requirements

Documentation Is:

[X] Missing or needed?
[ ] Confusing
[ ] Not sure?

Please Explain in Detail...

[x] Identify requirements related to the issue, with:

Id
title
description (as one paragraph)

[x] If not documented by the project, describe based on code reviews and existing test cases

Your Proposal for Changes
N/A
Example
No response

Closed as completed through #4.


[WIP] Presence for the OC XMPP backend

close https://github.com/jsxc/jsxc/issues/269
TODO:

[x] broadcast presence when updated
[x] when some one send presence respond with the current presence of the other users
[ ] do not return the presence of other users when the user set is presence to unavailable
[ ] add unit tests
[ ] add extra option to use mecache instead of DB for storing the presence
[ ] add integration tests
[ ] squash commits

It looks like I don't get stable8 to work. If we want to use IDbConnection in favour of IDb because it's deprecated we need to drop stable8 support, because the Mapper of core still uses IDb in stable8....

@BernhardPosselt any ideas on solving this? I saw in the news app you are using IDBConnection but require stabel 8.2 >=. What would you advice for supporting? Thanks.

Use IDbConnection and drop 8.0 support or support two different versions (its now possible on the app store to upload multiple versions for multiple owncloud releases)

We don't have to remove all deprecated stuff as long as it is not removed from core. EOL for 8.0 is end of this year, so I would prefer to support it.
This affects only this branch, am I right?

@sualko @BernhardPosselt okay thanks than I'll make sure ownCloud 8 still works. We just have to make a compromise between supported versions and deprecated functions.
I now changed the code to use (deprecated) prepareQuery and IDb it should now support stable8.

Great news. We just have to keep in mind, that we have to remove those functions, if 8.0 has reached his eol.

PS: another thing to keep in mind: most deprecations in the appframework were made when we thought there was 8.1, 8.2, 8.3 and 8.4. Somehow 8.3 and 8.4 are now dropped, so the deprecation dates are not really valid anymore. It's a mess :/

mmmm. I merged this from the command line but Github doens't see it's merged. I probably did something wrong...
#Merged
https://github.com/owncloud/jsxc.chat/commit/653d612e1a6d09567b58ff530caa2a61aa4d2dd0

If you merge manually you have to merge without fast forward (git merge --no-ff). But I don't know why you merge manually at all. Just squash your commits on the pr branch and push it via push -f to it. Afterwards you can merge via web ui.

As you merged it, I assume this can go in the next beta release this afternoon?


Revert the PR 1744 as the yaml files have been added back

The PR 1744 fixes the non-existent yaml files in the description of Citadel health checking in
https://preliminary.istio.io/docs/tasks/security/health-check.html reported by the issue https://github.com/istio/istio/issues/6922. Since the PR https://github.com/istio/istio/pull/7178 adds back the removed yaml files, the PR 1744 is reverted.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: lei-tang
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: sdake
If they are not already assigned, you can assign the PR to them by writing /assign @sdake in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

content/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/cc @wattli

/cc @ymesika

/cc @myidpt

/assign @sdake

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: lei-tang, sdake
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

content/OWNERS [sdake]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Just noticed the linter failed in many areas - can you resolve?
TIA
-steve


stats: add nesting around servers for easier parsing

Adding a simple nesting with key servers for easier parsing of the json delivered by /info on the api.

I am not exactly sure if this affects the dynomite-manager to collect stats. I will have to verify that.

For now the /info is mostly unusable for clean parsing, we are building an external prometheus exporter for a production use-case and it could be great to offer a cleaner output. Thanks a lot


onSuccess Hook of useAction is not called if action returns undefined

// client component
const { execute } = useAction(deleteAssignmentAction, {
  onSuccess: () => {
    console.log('onSuccess was called')
  },
})

With this server action:
export const deleteAssignmentAction = teacherAction(idSchema, async (id, { user }) => {
  // delete assignment ...
  revalidatePath('/assignments')
})

The onSuccess is not called.
But in this case it is:
export const deleteAssignmentAction = teacherAction(idSchema, async (id, { user }) => {
  // delete assignment ...
  revalidatePath('/assignments')
  return true
})

Yes, this is the expected behavior. You can also return an empty object, instead of true. You're required to do that, because onSuccess and onSettled callbacks get executed if result.data isn't undefined.

Hi, thank you for the quick reply. It would be great if that behavior is documented in the docs.
Although, I think that it's unexpected behavior. The absence of data, doesn't mean something was not successful, right? In the example I gave, it just feels unnecessary to return a value.

Awesome. Thanks for the great work. This lib is what I was searching for since I started using server-actions 👍
Btw. do you plan to extend it for the usage with route.ts files? Kind of a similar pattern.

do you plan to extend it for the usage with route.ts files? Kind of a similar pattern.

Would be pretty cool, but route handlers implementation is completely different under the hood. It doesn't rely on React's Server Actions feature, so the library would also have to manage fetching, responses, streaming. Maybe one day with next-safe-route 👀 . A tiny wrapper that just validates client input with Zod would also be cool.

With this fix, if the action is missing a return statement, data will be null, and onSuccess/onSettled callbacks will run after the action finishes executing.


Mlflow 1.9.0 breaks the unit tests

Description of the bug
Mlflow 1.9.0 breaks the unit tests.
To Reproduce
Use mlflow 1.9.0 to run unit tests.
Expected behavior
Unit tests pass.
 It will run method normally, but it is now
2020-06-20T21:44:08.6866420Z         possible to use `mock` call features with it, like call count.
2020-06-20T21:44:08.6866609Z
2020-06-20T21:44:08.6866720Z         :param object obj: An object.
2020-06-20T21:44:08.6868858Z         :param unicode name: A method in object.
2020-06-20T21:44:08.6869029Z         :rtype: mock.MagicMock
2020-06-20T21:44:08.6871943Z         :return: Spy object.
2020-06-20T21:44:08.6872112Z         """
2020-06-20T21:44:08.6872270Z >       method = getattr(obj, name)
2020-06-20T21:44:08.6872798Z E       AttributeError: 'PyFuncModel' object has no attribute '_process'
2020-06-20T21:44:08.6872881Z
2020-06-20T21:44:08.6876443Z /opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/pytest_mock/plugin.py:84: AttributeError

I think the change introduced by https://github.com/mlflow/mlflow/pull/2920 is the cause.
As of MLflow v1.9.0, the FonduerModel is wrapped by PyFuncModel, which has no attribute '_process'.

Another change introduced by mlflow/mlflow#2920 causes another issue.

Add type enforcement to pyfunc predict. PyFuncModel will enforce input schema for models that contain input signature. The schema enforcement checks column names as well as column types.


kill most todos

Coverage decreased (-0.5%) to 77.893% when pulling 53249a0294cded916d270460e6429439b275e687 on sni/less-todo-clean-up into 290313c21a18b06872ad164dd31a007cb36afae3 on master.

small comments and RTM

Good catches.


[Feature] Add DiscoPOP algorithm

I've read this paper recently https://arxiv.org/abs/2406.08414, I am wandering if I can work on adding this algorithm to the framework, I want to implement for myself, but I can add it to the framework as a dependent trainer object.

As I understand it, DiscoPOP is a meta-optimisation method, i.e. it rewrites online the objective function, among other things. I have no idea how to make it work in TRL. If you have a reference implementation or are willing to work on it, please do. I can't guarantee that it would make sense to merge it in the future, but it's certainly something that could benefit the community (maybe as a research project, or as a link in the description).

I'm closing because this feature hasn't received any PR, and doesn't seem to be widely requested by the community. This issue may be reopened at a later date if that changes.


fix(): side menu highlighting and navigation

navigation: The name of the TabsPage link should match the
name being used to navigate.
highlighting: There is no tabName property on PageInterface.
It should be tabComponent.
This PR resolves #379

Looks great, thank you!


IOS connection error

Describe the bug
I am developing an app for Android and iPhone in Ionic/Angular using this add-on to connect to an iTAG beacon with a button on it.
Like this: https://gadgetmou.com/product/smart-bluetooth-mini-waterproof-wireless-itag-alarm-tracer-gps-locator-alarm-anti-lost/
Android connects fine and is able to scan and connect to the device.
IOS can scan and find the device, but when asked to connect it get immediately disconnected with an error
Please keep in mind that i am rather new to Angular/TypeScript ;-)
To Reproduce
Steps to reproduce the behavior:

Scan for devices
connect to the device using MAC address
Works on Android but fails on IOS
the following error appears in xCode:

...
 [log] - BLE STATUS:  Connecting to device "F470B536-6ABF-F58D-F1D6-E43AB8B43B87"
⚡  BluetoothLe - Connecting to peripheral <CBPeripheral: 0x283a47b60, identifier = F470B536-6ABF-F58D-F1D6-E43AB8B43B87, name = iTAG            , mtu = 23, state = disconnected>
⚡  BluetoothLe - Reject connect Connection timeout
ERROR MESSAGE:  {"message":"Connection timeout","errorMessage":"Connection timeout"}
⚡  [error] - {"message":"Connection timeout","errorMessage":"Connection timeout"}
⚡  To Native ->  BluetoothLe initialize 86048855
⚡  [log] - BLE STATUS:  ERROR! Error while connecting to device "iTAG connect error: Error - Connection timeout"
⚡  BluetoothLe - Resolve initialize BLE powered on
...

Plugin version:
npm view capacitor-community/bluetooth-le
<EMAIL_ADDRESS>| MIT | deps: 1 | versions: 1
Capacitor plugin for Bluetooth Low Energy
dist
.tarball<EMAIL_ADDRESS>.shasum: undefined
dependencies:
@types/web-bluetooth: ^0.0.16
dist-tags:
latest: 3.0.0-1

Desktop (please complete the following information):

Windows 10
Visual Studio Code

npm -v
9.5.0

ionic -v
5.4.16

node -v
v18.15.0

Please notice that i am developing on a windows 10 computer, but the project is cloned via git to a Mac when transferring the app to an iPhone
Smartphone (please complete the following information):

OS: IOS 15.7
iPhone 6s

TypeScrip code
The connect function that throws the error:
    /**
     * Connect to iTag device and start listening for notifications
     * @param deviceID
     * @param bondDevice
     * @param notificationCallback
     * @param successCallback
     * @param errorCallback
     * @param disconnectCallback
     * @param stateChangeCallback
     */
    public async itagConnect(
        deviceID: string = "",
        bondDevice = false,
        successCallback: CallableFunction = this.onSuccess,
        errorCallback: CallableFunction = this.onError,
        disconnectCallback: CallableFunction = this.onDisconnect,
        stateChangeCallback: CallableFunction = this.onStateChange
    ): Promise<void> {

        try {
            // Connect device
            this.onStatusUpdate("Connecting to device \""+deviceID+"\"");
            await BleClient.connect(
                deviceID,
                () => {
                    disconnectCallback();
                },
                {timeout: 10000}
            ).then(
                () => {
                    //Keep bluetooth connection alive by reading device battery level
                    this.onStatusUpdate("Start monitoring battery level")
                    this.batteryMonitor = setInterval(() => {
                        if (this.bluetoothConnectedDevice.length == 0 || this.bluetoothIsScanning) {
                            clearInterval(this.batteryMonitor);
                        } else {
                            this.ReadBatteryLevel(deviceID);
                        }
                    }, 1000);
                    this.onStatusUpdate("Connection successfull");
                }
            )

            //Bond/pair device to phone (Android only!)
            if (bondDevice) {
                this.onStatusUpdate("Bonding with device")
                if (!BleClient.isBonded(deviceID)) {
                    BleClient.createBond(deviceID);
                }
            } else {
                this.onStatusUpdate("Bonding is disabled")
            }

            // Monitor for bluetooth state change
            this.onStatusUpdate("Start bluetooth state monitoring")
            BleClient.startEnabledNotifications(
                (value: boolean) => {
                    stateChangeCallback(value);
                }
            )

            // If no errors, call success callback function
            this.connected = true;
            this.bluetoothScanResults = [];
            successCallback()
        } catch (error) {
            // BLE connecton failed
            errorCallback("iTAG connect error: "+error.name+" - "+error.message)
        }
    }

Can you connect to the iTAG with another app such as nRF Connect for Mobile?

I have tested with two different kind/versions of iTAG's. One with Bluetooth 4.2 and one with 5.0.
It is unclear why but other app can connect to the 4.2 bluetooth device with eg. nRF connect, but not the 5.0 version. Might have something to do with the age of the phone.
But... none of the devices is able to connect via my Ionic app, and returns the same error as posted. Both device has no probelms connecting to my Android device (OnePlus 8Pro)

Have you found out anything by testing with more devices?

Finally we got a newer iPhone to test on, but the result is still the same.
It is an iPhone SE with iOS 16.4, and we have updated iOS and xCode accordingly on the development Mac-book.
⚡  Native ->  BluetoothLe initialize 28948423
⚡  BluetoothLe - Resolve initialize BLE powered on
⚡  TO JS undefined
⚡  To Native ->  BluetoothLe getConnectedDevices 28948424
⚡  TO JS {"devices":[]}
⚡  To Native ->  BluetoothLe
⚡  [log] - BLE STATUS:  Attempting to connect to device "59353DDC-DACC-D596-F0EC-CFB22B9000DC"
removeListener 28948425
⚡  [log] - BLE STATUS:  Connecting to device "59353DDC-DACC-D596-F0EC-CFB22B9000DC"
⚡  To Native ->  BluetoothLe addListener 28948426
⚡  To Native ->  BluetoothLe connect 28948427
⚡  BluetoothLe - Connecting to peripheral <CBPeripheral: 0x280e27740, identifier = 59353DDC-DACC-D596-F0EC-CFB22B9000DC, name = iTAG            , mtu = 23, state = disconnecting>
⚡  BluetoothLe - Reject connect Connection timeout
ERROR MESSAGE:  {"errorMessage":"Connection timeout","message":"Connection timeout"}
⚡  [error] - {"errorMessage":"Connection timeout","message":"Connection timeout"}
⚡  [log] - BLE STATUS:  ERROR! Error while connecting to device "iTAG coneect error: Error - Connection timeout"
⚡  To Native ->  BluetoothLe initialize 28948428
⚡  BluetoothLe - Resolve initialize BLE powered on
⚡  TO JS undefined
⚡  To Native ->  BluetoothLe getConnectedDevices 28948429
⚡  TO JS {"devices":[]}
2023-05-17 10:31:05.232793+0200 App[634:18510] [Snapshotting] Snapshotting a view (0x10182ee00, UIKeyboardImpl) that is not in a visible window requires afterScreenUpdates:YES.

Have you tried increasing the timeout? https://github.com/capacitor-community/bluetooth-le#connect
If other apps also fail to connect to it, it could be that it is somehow blocked by the OS. But I don't have experience with iTags.

The connect timeout is set to 10 seconds which should be more than enough, but the disconnect comes almost instantly after the connection has been initiated.
I know that it for a very short moment has a connection to the iTAG, be course after the iPhone/xCode shows the disconnect message in the log the iTAG will start beep'ing as a result of a lost cennection.
This makes be come to the conclusion that is is the iPhone that drops the connection for some reason. And before my code can start reading batterylevel.
An older iPhone 6S had problems with the Bluetooth 5.0 device, but the newer iPhone SE and an iPad running the same iOS as the old iPhone have no problems in connection to both the Bluetooth 4.2 and 5.0 device (Both branded as iTAG's)
IT is only the "connect" statement as showed in my example code that fails to connect on IOS.
If you have any code examples that successfully connects and listens to an iTAG (regardless of Bluetooth version) on iOS i would be very interested in seeing it.

I wonder why the connection log show the state "disconnecting" in the same line as the connect statement itself:
BluetoothLe - Connecting to peripheral <CBPeripheral: 0x280e27740, identifier = 59353DDC-DACC-D596-F0EC-CFB22B9000DC, name = iTAG            , mtu = 23, state = disconnecting>
It is as if the device is told to disconnect as soon as the connection is made?

Version 3.1.0 contains a possible fix for this issue. Can you check if it solves your problem.


Need to fetch Request header's in Nuxt

Describe the feature
I'm looking for to access the request headers in the Server api side it was not working
I used useRequestHeaders and useRequestHeader both composable in  filepath: server/api/index.ts
it was throwing the function  is not define
Additional information

[ ] Would you be willing to help implement this feature?
[ ] Could this feature be implemented as a module?

Final checks

[X] Read the contribution guide.
[X] Check existing discussions and issues.

export default defineEventHandler(async (event) => {
  console.log(getRequestHeaders(event))
})


chore(sfdx-cli): update sfdx-cli to 7.144.2 [stable]

Description
Update docker image to sfdx-cli 7.144.2
Checklist
All items have to be completed before a PR is merged

[x] Adhere to Contribution Guidelines
[x] Updates to Decision Records considered?
[x] Updates to documentation at DX@Scale Guide considered?
[x] Tested changes?
[x] Unit Tests new and existing passing locally?

Codecov Report

Merging #925 (a94d829) into develop (f1c0ebb) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #925   +/-   ##
========================================
  Coverage    80.16%   80.16%
========================================
  Files           36       36
  Lines         1104     1104
  Branches       238      238
========================================
  Hits           885      885
  Misses         209      209
  Partials        10       10

Continue to review full report at Codecov.

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


Questions on methodology and bug report

Does the x represent the position of the leader, and are ua, ub used to control the forward and turn movements of the follower respectively? Why ua is generated directly by the leader but ub is determined by the follower's br function?
Line 258 on main.py, the code doesn't seem to have generated a file named 'gdtest'+str(theta)+'.npy'.
Thank you!

Hello there,
I sincerely apologize for the late reply. I didn't notice the issue until today...
In the code, x represents the aggregated state, i.e., x = [xa, xb] where xa denotes the leader's position and xb denotes the follower's position and the heading angle. So the dimension of x is 5. ua and ub denote the leader's control and the follower's best response (the optimal control after solving his own decision-making problem). Then both have dimension 2, respectively.
In the Stackelberg game, the leader and the follower make decisions independently, but the follower decides his action (control) after observing the leader's control. In our problem, the leader does not know the follower's decision-making model. What the leader can observe is the follower's final decision (best response). Therefore, the leader learns a best response function to approximate the follower's best response so that she can compute the Stackelberg equilibrium strategy to perform trajectory guidance.
The variable name ub in main.py may cause some confusion (e.g., line 158). It represents the follower's real best response. The leader learns a function br(x, ua) tp approximate ub.
Thank you for mentioning the issue in main.py (maybe in line 255?). That line was intended for testing purposes and should have been commented out.  I will address this and make the code more organized in a new branch.
Your feedback is greatly appreciated.

Thank you for your reply :)
At 2024-04-18 02:09:31, "Yuhan Zhao" @.***> wrote:
Hello there,
I sincerely apologize for the late reply. I didn't notice the issue until today...
In the code, x represents the aggregated state, i.e., x = [xa, xb] where xa denotes the leader's position and xb denotes the follower's position and the heading angle. So the dimension of x is 5. ua and ub denote the leader's control and the follower's best response (the optimal control after solving his own decision-making problem). Then both have dimension 2, respectively.
In the Stackelberg game, the leader and the follower make decisions independently, but the follower decides his action (control) after observing the leader's control. In our problem, the leader does not know the follower's decision-making model. What the leader can observe is the follower's final decision (best response). Therefore, the leader learns a best response function to approximate the follower's best response so that she can compute the Stackelberg equilibrium strategy to perform trajectory guidance.
The variable name ub in main.py may cause some confusion (e.g., line 158). It represents the follower's real best response. The leader learns a function br(x, ua) tp approximate ub.
Thank you for mentioning the issue in main.py (maybe in line 255?). That line was intended for testing purposes and should have been commented out. I will address this and make the code more organized in a new branch.
Your feedback is greatly appreciated.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Multi Auth with different ldap_auth configuration

Laravel Version: 5.7
Adldap2-Laravel Version: 5.1
PHP Version: 7.2
LDAP Type: AD

Description:
adldap2-laravel is working perfectly for me, my challenge is I have two different Auth databases and needs LDAP auth for both, My challenge now is the Auth config for both are different, even if I have defined two different connections in config/ldap.php both are using config from config/ldap_auth.php file, is there a way to define different auth configuration for different connections?

Steps To Reproduce:

Hi @gopankombiyil, this is a great question.
Right now the ldap_auth.php file does not support separate configurations for each LDAP connection you have configured. You will have to create a separate auth provider (in your auth.php config file) for each of your databases and override the ldap_auth at run-time before calling Auth::attempt() in your LoginController.
I'll look into seeing how easy this would be to introduce into the current configuration, but it does seem like this could be somewhat difficult and would be pretty configuration heavy, which could lead to more confusion.

Thanks for the update @stevebauman . I tried to override the auth config by extending the AdldapAuthServiceProvider.php with no positive outcomes.
Could you please give me an idea how to override the config in Login controller, I have 2 different type of users, two different auth providers and two different ldap connections in config. The only issue at the moment is, both connections are trying to use same auth config.


Mongoose method rendering

How do you render a mongoose model method? If I try {{ model.gravatar }} it works but I cannot pass values through by going {{ model.gravatar({size: 300}) }} for example. Is there a way to do this?

I'm not sure what you are referring to by mongoose, but there is no way to pass arbitrary arguments to functions executed from a template as they are treated as helpers. It will always pass the options object for example.
If your methods are safe with this, then you could write a subexpression helper that generates your hash values so you could in theory do something like this:
{{ model.gravatar (object size=300) }}

Handlebars.registerHelper('object', function(options) {
  return options.hash;
});

There are many other ways that this can be done as well, but generally I'd recommend pre-calculating these values in your code that calls the template rather than trying to shoehorn dynamic calls from the template. It can be made to work but it might not be the most efficient or stable.


Can't get this to work with ES version 7.6.2

I am trying to use this in a spring boot project and am facing some version incompatibilities with elasticsearch client.
pom.xml:
...
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.4.RELEASE</version>
        <relativePath/>
    </parent>
...
    <dependencies>
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-elasticsearch</artifactId>
            # spring-boot parent provides version 7.6.2
        </dependency>
        <dependency>
            <groupId>com.senacor.elasticsearch.evolution</groupId>
            <artifactId>spring-boot-starter-elasticsearch-evolution</artifactId>
            <version>0.2.0</version>
        </dependency>
    </dependencies>

Starting the application with some migration scripts in place, I am getting the following:
***************************
APPLICATION FAILED TO START
***************************

Description:

An attempt was made to call a method that does not exist. The attempt was made from the following location:

    com.senacor.elasticsearch.evolution.core.internal.migration.execution.MigrationServiceImpl.executeScript(MigrationServiceImpl.java:122)

The following method did not exist:

    'void org.elasticsearch.client.RequestOptions$Builder.addHeader(java.lang.String, java.lang.String)'

The method's class, org.elasticsearch.client.RequestOptions$Builder, is available from the following locations:

    jar:file:/home/nkuhn/.m2/repository/org/elasticsearch/client/elasticsearch-rest-client/7.6.2/elasticsearch-rest-client-7.6.2.jar!/org/elasticsearch/client/RequestOptions$Builder.class

The class hierarchy was loaded from the following locations:

    org.elasticsearch.client.RequestOptions.Builder: file:/home/nkuhn/.m2/repository/org/elasticsearch/client/elasticsearch-rest-client/7.6.2/elasticsearch-rest-client-7.6.2.jar

Action:

Correct the classpath of your application so that it contains a single, compatible version of org.elasticsearch.client.RequestOptions$Builder

Already tried to set elastic version explicitly:
<properties>
    <elasticsearch.version>7.6.2</elasticsearch.version>
</properties>

Same result.
Also tried to exclude elasticsearch client lib explicitly:
        <dependency>
            <groupId>com.senacor.elasticsearch.evolution</groupId>
            <artifactId>spring-boot-starter-elasticsearch-evolution</artifactId>
            <version>0.2.0</version>
            <exclusions>
                <exclusion>
                    <groupId>org.elasticsearch.client</groupId>
                    <artifactId>elasticsearch-rest-client</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.elasticsearch.client</groupId>
                    <artifactId>elasticsearch-rest-high-level-client</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.elasticsearch.client</groupId>
                    <artifactId>transport</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

No effect.
Any ideas, how to solve this?
Seams like version 7.6.2 should be supported.

Hey @nilskuhn,
can you provide a repo with a non working example. I tried to reproduce the mentioned issue but couldn't.
cheers

Hey @nilskuhn,
I could reproduce the issue now, i was on the wrong rest-high-level-client version. No need for a repo link. I'll look into it a

Now i was able to reproduce the issue. I was on the wrong rest-high-level-client version, sorry. Will look into it.
cheers

Hey, @nilskuhn
can you verify if it works if you change
<elasticsearch.version>7.6.2</elasticsearch.version> to <elasticsearch.version>7.3.2</elasticsearch.version>

Yes, with <elasticsearch.version>7.3.2</elasticsearch.version> it works!
Thanks, I would use that version until you are providing a fix for version 7.6.2.
We are planing to update to latest ES version 7.9 soon. Do you plan to test / support latest versions in the future?

Hey @nilskuhn,
Yes, I'll look into it and fix it as soon as possible. We also have to migrate to 7.9, So I will create PR to support the newest version.

Thanks a lot!
And, I forgot to mention: Great that you published this project!
Using ES as an application backing database, storing some domain objects (which is maybe not exactly what ES is supposed to be used for), aside this small tool I didn't find other solutions.

Unfortunately, I can't go with <elasticsearch.version>7.3.2</elasticsearch.version> because than, I am running into this kind of errors due to multiple versions of elasticsearch-rest-high-level-client dependency at runtime :(
So I will have to wait for a fix for version 7.6.2. Please let me know, if I may help with something to get the fix done.

Okay, then I'll try to find a good solution. I'll contact you as soon as I found a good one.

I've updated some versions and added Elasticsearch 7.8 and 7.9 compatibility tests. Maybe this helps.
@S1riU5 If you need support with this issue just contact me on WhatsApp

Ah, another idea:
<elasticsearch.version>6.8.6</elasticsearch.version>

This is what elasticsearch-evolution uses internal. This is definitive compatible with Elasticsearch  "7.9.3", "7.8.1", "7.7.1", "7.6.2", "7.5.2", "7.4.2", "7.3.2", "7.2.1", "7.1.1", "7.0.1" and "6.8.13"
But don't use a higher 6.8 version, because we have documented there some issues:

es client 6.8.7/6.8.8/6.8.9/6.8.10/6.8.11/6.8.12/6.8.13 does not work with ES 7.6.2, 7.5.2 and 7.4.2 so keep 6.8.6 until this issue is fixed

Maybe that can work... I created  #6 to increase the internally used es-rest-client-versions. Not sure if this is the best solution.

Please let me know, if it makes sense, to test it.

Ah, another idea:
<elasticsearch.version>6.8.6</elasticsearch.version>

...

As I mentioned earlier in this thread, this doesn't work because of two different versions of elasticsearch, one of evolution and another one of my own spring application:

I am running into this kind of errors due to multiple versions of elasticsearch-rest-high-level-client dependency at runtime :(

@S1riU5 Could you check PR of @xtermi2 ? There are some tests failing.
I would really like to use evolution, but at the moment it doesn't work using ES version 7.6.2 in productive Spring application.

@S1riU5 is working on this issue in #6 and will cut Elasticsearch compatibility to 7.5.0+ in release 0.3.0
But please be patient, we are working on this project in our spare time.

Ok, sorry for being so pushy, from your last comments I could not see if you are still actively working on this topic.
Take your time and thanks.

@nilskuhn can you please verify the 0.3.0-SNAPSHOT release with this maven snapshot repository:
	<repositories>
		<repository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
		</repository>
	</repositories>

NICE, works for me with <elasticsearch.version>7.6.2</elasticsearch.version>.
Thanks!

You are mentioning in the README, elasticsearch-evolution >= 0.3.0 works with ES versions 7.5.x and later. Does this already cover latest ES version 7.9?

Nice, then I will release this SNAPSHOT under 0.3.0

You are mentioning in the README, elasticsearch-evolution >= 0.3.0 works with ES versions 7.5.x and later. Does this already cover latest ES version 7.9?

yes, 7.9.x and 7.10.x


Fix browserify and supply alternative unpkg entry point

Closes #606.
Ref #603.
This restores Browserify functionality when debug is used as a nested module. It also fixes the unpkg use case (though in reality there should be a better, more standard way to do this).
However, it's the least intrusive way to fix both problems. I can't guarantee that the unpkg solution works, but users should be pinning versions anyway and not using debug@* on live sites.
cc @mjackson - if you have any input as to how to support unpkg in a less domain-specific way, that'd be great.

Coverage remained the same at 83.111% when pulling ab725714ccee6ea6e26e9d2ae00f049f9a9b20c3 on fix-browserify into 7fb104b8cfcbc3a91d8e4a6727638c3fe24be8d2 on master.


[Parser] Don't lose outer "disabled" variables when checking a guard's "else".

When checking for uses of "disabled" variables within the "else"
statement of a "guard", keep track of the disabled variables from
outer scopes. This is a pattern used everywhere else in the parser,
but got missed here. Fixes SR-7567 / rdar://problem/39868144.

@swift-ci please smoke test and merge


[dataviewer] Improve the default selected view

It is quite boring to browse data from the tree when there you only want to display it using a specific view.
There is way to improve that by trying to reuse the previous user choice.

+1, yes this is cumbersome!


Update action node version

Github runners using node16 are being deprecated

This is a fixture. It is never run.


Align model types naming

Some model types are defined with capital case, some with lower case and some use mixed (e.g. "Classification", "CTPN", "MaskRCNN")

I think we could just use __class__.__name__ instead of artificial __model__ property

Sounds good to me if the class names are aligned as well.


added swell library stanza to my-plugin to  make OSX builds work.

Hi,
First thanks for this project.  Was building on OSX and the link stage failed.
This pull request fixes that problem and shouldn't break other operating systems.   Although I'm assuming linux needs the same type of thing.
Cheers,
Eric

Thank you, see REAPER Forum post.


fix(amplify-codegen): swift - add has-one associatedFields for CPK use case

Description of changes

This PR is similar to https://github.com/aws-amplify/amplify-codegen/pull/538. We're looking to add the associatedFields for CPK use cases for has-one unidirectional relationships:
Before
.hasOne(project.team, is: .optional, ofType: Team.self, associatedWith: Team.keys.teamId, targetNames: [\\"teamId\\", \\"teamName\\"]),

With this PR
.hasOne(project.team, is: .optional, ofType: Team.self, associatedFields: [Team.keys.teamId, Team.keys.name], targetNames: [\\"teamId\\", \\"teamName\\"]),

This enables the library use caes for lazy loading hasOne models, related library changes https://github.com/aws-amplify/amplify-swift/pull/2737
Issue #, if available

Description of how you validated changes
Checklist

[ ] PR description included
[ ] yarn test passes
[ ] Tests are changed or added
[ ] Relevant documentation is changed or added (and PR referenced)
[ ] Breaking changes to existing customers are released behind a feature flag or major version update
[ ] Changes are tested using sample applications for all relevant platforms (iOS/android/flutter/Javascript) that use the feature added/modified

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Thanks for the review, we will continue to explore the need for this in the library PR https://github.com/aws-amplify/amplify-swift/pull/2737 . Once the library PRs are ready, merged, and released, we can merge codegen PR in, since library changes need to be released first before codegenerating new information in the schema

This PR may not be necessary for lazy loading (https://github.com/aws-amplify/amplify-swift/pull/2737 / https://github.com/aws-amplify/amplify-swift/pull/2749 ). However, let's keep this open as we explore uni-directional cascade delete scenario

Just confirmed that this is not needed. Close this PR for now


Hook State docs do not tell the true story when comparing to class-based components

https://reactjs.org/docs/hooks-state.html

We’ll start learning about Hooks by comparing this code to an equivalent class example.

The first code snippet on this page is not equivalent to the second. The first is purposely terse / succinct, while the latter is purposely verbose -- as if one is trying to propose the functional component as much shorter than the non-functional class component.
The class component has unneeded boilerplate which should be removed so the reader can clearly see the differences between the two approaches and decide for themselves which one is easier to understand, write, and use. The constructor is not needed and it is also missing its import statement.
The class component example should be this ...
import React from 'react';

class Example extends React.Component {
  this.state = {
    count: 0
  };

  render() {
    const { count }  = this.state;

    return (

You clicked {count} times

        <button onClick={() => this.setState({ count: count + 1 })}>
          Click me
        </button>

    );
  }
}

What you wrote is not valid JavaScript syntax. Did you mean state = { }?
Regardless, that's not a valid JavaScript syntax either. It's a syntax proposal which has not been standardized yet — and like with any proposals, a subject to change.
In the past when the docs included experimental syntax, people complained about it being confusing. I think it makes sense that we decided the docs should stick to the stable syntax.

Okay -- fair enough and thanks for the explanation. It's easy to lose site of what is "core ES" nowadays!

For sure! 😄


#18 teken behouden bisnummers (#19)

Coverage decreased (-0.3%) to 99.676% when pulling 46965606f7cc627c8d43d6f93a095976a8cc5ed0 on develop into 4e9333c622e1dc9af1290f3147d8fe0f1146c586 on master.


Video is not playing on MAC

The video is not working on MAC.

Could you be a little more specific as far as where you are seeing this issue? I was just checking this project out again since I've used it before, and the video example as well as the sites I've used the video on before all still work for my Macbook on Chrome.

Not playing anymore after updating to Safari 11. It used to work fine in Safari 10.
Safari Version 11.0 (126<IP_ADDRESS>.7)

Hello
I get the same thing - video element not revealing, if you force display in CSS it appears but with no playback?

I'm not sure this is the best solution but I commented out the following lines (around line 338 in vide.js)
// Disable visibility, while loading
      visibility: 'hidden',
      opacity: 0

It seems that the script is getting confused when video tries to run. The upside is, it now also works on iPad!

Experiencing the same issue. I will look in to @Dogleg's solution somewhere this week, but I have the feeling this is just a quick and dirty fix.

It may well be @DiederikvandenB but it got things running. Let me/us know how you get on.
Thanks
Gareth

Alright, had some time already. Was not able to fix it (yet), but I did find the root of the problem.
Safari 11 has a new feature which by default disables autoplay videos (link). I have a second temporary fix:

Disable autoplay
Call window.$('video').get(0).play(); as soon as your page is loaded. If you're using jQuery for everything, this could be something like:

$(document).ready(() => {
    $('video').get(0).play();
});

Or call it here for React or Vue
As I said, this is just a temporary fix. However, if you go back to the Verge article I posted, you'll see in the screenshot that it by default should only disable autoplay for videos that have no sound. On the page where I use Vide, I have a muted video which is still blocked. It would be great if I / someone else would find a way to autoplay a muted video using Vide.
Hope this helps a bit already.

Great, guys. I tried both @Dogleg and @DiederikvandenB fixes. The later is better because I didn't need to change vide.js source code. I also found that other javascript video player libraries also stoped working, not only Vide. I know this is an issue with Safari, but should be addressed anyway.
Here is what worked great for me, using jQuery, based on @DiederikvandenB fix:
jQuery(function() {
    $('#myElement').data('vide').getVideoObject().play();
});

Thanks @luciano-schirmer and @DiederikvandenB for the workaround. Safari 11 definitely hinders background video auto-play.

Hi @luciano-schirmer . I'm trying with your solution but its not working for me. Do I have to initialize the plugin first? Any help will be apreciated. Thanks.

Hi @kingmauro
It didn't work for me either initially until I realised that it needs to be triggered on an event. So…
$(document).ready(function() {
	//FORCE VIDEO PLAY - SAFARI 11 ISSUE
	$(window).load(function() {
		$('#imagearea').data('vide').getVideoObject().play();
	});
});

I did try putting inside the .ready fun but that didn't work. I'm not the best, but the above works for me.
Good luck!

It worked @Dogleg! Thank you.

Thanks @Dogleg! 💯

Thanks @Dogleg

@julenmelgar's  solution perfectly works for me with Safari 12, but not the other solutions suggested here. Thanks!
Note:  Video still doesn't play in Safari for iPhone.

Hi Guys, I'm new in this world and its impossible to me that this work in MAC. I have and html5 code where I'm embed the video in this way:
<div data-vide-bg="video/beach1" data-vide-options="autoplay: true, loop: true, muted: true">
Could you help with more information about where and how I must use the code to solve the problem with MAC´s.
Thanks a lot

I tried every single solution posted above - none worked with autoplaying the video in Safari.
I found a workaround by using a click function:
$('.video-container').click(function(){         $('.video-container').data('vide').getVideoObject().play();  });

[_``_](

[ ] @ #1. url

)


Implemented put API for Database Storage

Refactored Upload code to route upload files via the new Storage APIs.
Changes

Implemented put API in DatabaseStorage
Wired StorageManager to take in all upload requests. All requests are routed to the DatabaseStorage by default.
Add injections for ProjectManager
Updated ProjectLoader API

@chengren311 updated PR with your comments.


chore : Removed server url from start-https command in ClientSetup

Description
In the Client Setup Document section for Create local HTTPS certificates, removed the URL https://release.app.appsmith.com/ from the command ./start-https.sh as this step is already mentioned in the section If you would like to hit a different Appsmith server
Fixes #21955
Type of change

Chore (housekeeping or task changes that don't impact user perception)
This change requires a documentation update

How Has This Been Tested?

NA

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/ok-to-test sha=64a8272


Invalid schema for DeploymentManifest.XSD

DeploymentManifest.XSD is not valid as publised here. The following elements refers to undefined types.
<xs:element name="UserX" type="DeploymentUserX" />
<xs:element name="GroupX" type="DeploymentGroupX" />
<xs:element name="RoleX" type="DeploymentRoleX" />
<xs:element name="RoleAssignmentX" type="DeploymentRoleAssignmentX" />
Also, it would be nice if those XSD could be provided as files, not as pastes from DOCX/PDF.

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

ID: 3b3bfe80-38e3-e49a-dd94-c2851264dfce
Version Independent ID: 8796c402-cd21-a86b-99f0-d0bd035ceb5f
Content: SharePoint Online Migration API Overview
Content Source: docs/apis/migration-api-overview.md
Product: sharepoint
GitHub Login: @JoanneHendrickson
Microsoft Alias: jhendr

I agree it would be nice to download all the XSD files. If you follow the links through to the 2013 list, you have to follow more links to elements of the XSD files and make the file yourself, you cannot just download the XSD files.

Still no XSD files available to download :-/


Check contrast and colors

Is this a BUG REPORT or FEATURE REQUEST?:
bug
What happened:
Our button fragment has some color issues.
What you expected to happen:
Everything readable and contrast is ok.
How to reproduce it (as minimally and precisely as possible):
Check the various color testing pages.
Anything else we need to know?:
Can we auto check color contrast/readability on our dev color pages?

We can  run axe using Cypress to test different pages but axe tests the entire accessibility checklist. Do we only want the contract checks?


Unable to open file name [...something].js

NextJS has a special route filename that involves the following file name pattern [...something].js.
This extension is having issues opening the file. Even though the explorer shows the file in the file tree, opening it results in the following error:
Unable to open '[...nextauth].js': Unable to read file 'vscode-vfs://github/nextauthjs/next-auth-example/pages/api/auth/[...nextauth].js' (Error: Unable to resolve non-existing file 'vscode-vfs://github/nextauthjs/next-auth-example/pages/api/auth/[...nextauth].js').

I dug into this one, and it looks like a bug in the GitHub GraphQL api -- I've reached out to see how to best resolve this.

This is blocked until the GitHub API issue is fixed.

This should be resolved now. Please let us know if otherwise.


Check manifest.json to find icon

They do it: https://github.com/antongunov/favicongrabber.com/blob/master/server/api/grabber/page.js#L36


Support for 12 hour timestamps

Would it be possible to support 12 hour timestamp format (ie: AM/PM)?
I've worked with the google calendar and Nautulis Roam extensions which both support 12 hour timestamp formats.  Would there be a possibility for code reuse?
example:
https://github.com/search?q=repo%3Atombarys%2Froam-depot-nautilus time parse&type=code

Hi,
currently you can display timestamps in 12h format in the calendar, but you can only input manually 24h time format and the timestamp recorded in the Roam block will always be in 24h format.
I take note of your feature request, it shouldn't be hard to implement, i will try to add it to the next update. Thanks for the code snippet from Nautilus but Full Calendar is a React/JavaScript app, not a Clojure one.

12h format is now supported for input timestamps, have a try !


How to add new EEP devices

Is it possible to install new EEPs?
For example, I have a motion sensor EEP A5-07-01 (Eltako FB65B) and a temperature/humidity EEP A5-04-01 (Nodon STPH-2-1-05)

Added in release v1.3.3:
https://github.com/grimmpp/home-assistant-eltako/releases/tag/v1.3.3-added-new-eep-A5-04-01-and-A5-07-01


container won't start: Error: spawnSync /bin/sh EACCES

On running the docker container using the provided example settings:
mkdir -p /tmp/grist-test
docker run \
  -p 80:80 -p 443:443 \
  -e URL=https://cool-beans.example.com \
  -e HTTPS=auto \
  -e TEAM=cool-beans \
  -e<EMAIL_ADDRESS>\
  -e PASSWORD=topsecret \
  -v /tmp/grist-test:/persist \
  --name grist --rm \
  -it gristlabs/grist-omnibus  # or grist-ee-omnibus for enterprise

The following error is thrown, and the process dies:
<ref *1> Error: spawnSync /bin/sh EACCES
    at Object.spawnSync (internal/child_process.js:1107:20)
    at spawnSync (child_process.js:776:24)
    at Object.execSync (child_process.js:858:15)
    at invent (/grist/run.js:228:31)
    at prepareMainSettings (/grist/run.js:165:40)
    at main (/grist/run.js:18:3)
    at Object.<anonymous> (/grist/run.js:45:1)
    at Module._compile (internal/modules/cjs/loader.js:1114:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1143:10)
    at Module.load (internal/modules/cjs/loader.js:979:32) {
  errno: -13,
  code: 'EACCES',
  syscall: 'spawnSync /bin/sh',
  path: '/bin/sh',
  spawnargs: [ '-c', 'pwgen -s 20' ],
  error: [Circular *1],
  status: null,
  signal: null,
  output: null,
  pid: 0,
  stdout: null,
  stderr: null
}

It seems this is related to running the command pwgen -s 20 to generate random values for variables.

That's odd, thanks for reporting. Not able to replicate yet. What architecture is the container running on?

Thanks for looking at it. This is on a fresh lxc VPS running:
Operating System: Debian GNU/Linux 11 (bullseye)
Kernel: Linux 5.15.0-56-generic
Architecture: x86-64
Docker version 23.0.3, build 3e7cbfd

Interestingly, the bug does not surface on a comparable VPS running
Ubuntu 22.04.1 LTS
with the same kernel and docker version.

If I had to guess, it is some weirdness related to the storage driver in use by docker (default of overlay2 is apparently not available under lxc?)
If so, squashing the image might work.

@marlon0 I pushed a squashed version of the gristlabs/grist image, if you get a chance to re-pull it I'd be interested in whether it changes anything.

Update: I had to undo the squashing, it was causing other problems.


Improve date validation: should not accept 0 as month or day

This caused an exception here: https://forum.paradoxplaza.com/forum/threads/imperator-to-ck3-release-thread.1415172/post-28889960

Fixed by #499 :)


Enhancement: custom relation field

Is your feature request related to a problem? Please describe.
I want to make custom relation field so i can set custom render_function_key and custom display template.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Something like this in list:

and something like this in detail:

Describe alternatives you've considered
If i trying to use StringField as base class:
@dataclass
class NotesField(StringField):
    rows: int = 6
    render_function_key: str = "notes"
    class_: str = "field-textarea form-control"
    form_template: str = "forms/textarea.html"
    display_template: str = "displays/note.html"
    exclude_from_create: Optional[bool] = True
    exclude_from_edit: Optional[bool] = True
    exclude_from_list: Optional[bool] = False

class ClientView(MyModelView):
    fields = [
        NotesField("notes"),
        Client.notes,
    ]

class DesktView(MyModelView):
    fields = [
        Desk.clients,
    ]

It leads to this api response:
GET: http://<IP_ADDRESS>:8000/admin/api/desk?skip=0&limit=20&order_by=id asc:
Reponse:
   {
    "items": [
        {
            "id": 1,
            "client": [
                {
                    "id": 15,
                    "notes": "[Note(content='test', client_id=15, id=4,), Note(content='teaa', client_id=15, id=6)]",
                    "_repr": "15",
                    "_detail_url": "http://<IP_ADDRESS>:8000/admin/client/detail/15",
                    "_edit_url": "http://<IP_ADDRESS>:8000/admin/client/edit/15"
                }
            ],

As you can see it resolving "notes" field (relation of a relation) and showing it like text (serializing func thinks it string field).
This is problem because it overloads backend by resolving a lot of related records.
And it might be not a problem if there is no a lot of relations, but if there a long chain of relations it starting resolving literally all databse which leads to crash of worker and even cycling of resolving records which leads to endless fetching to the database (and blocking it) until worker crashing and restarts by itself.
I found out that i can change "serialize" function to exclude this field:
    @dataclass
    class CustomRelationField(StringField):
        rows: int = 6

    async def serialize(
        self,
        obj: Any,
        request: Request,
        action: RequestAction,
        include_relationships: bool = True,
        include_relationships2: bool = True,
        include_relationships3: bool = True,
        include_select2: bool = False,
    ) -> Dict[str, Any]:
    ...
                elif not isinstance(field, RelationField):
+                    if isinstance(field, CustomRelationField):
+                           continue
                     ...

but this method is not allowing me to use relations information in detail view.
This method leads to overloading database in detail view:
    async def serialize(
        self,
        obj: Any,
        request: Request,
        action: RequestAction,
        include_relationships: bool = True,
        include_relationships2: bool = True,
        include_relationships3: bool = True,
        include_select2: bool = False,
    ) -> Dict[str, Any]:
    ...
                elif not isinstance(field, RelationField):
+                    if isinstance(field, CustomRelationField)  and action == RequestAction.LIST:
+                           continue
                     ...

How i can change serialize def so it stop to resolving in some moment? Or it will be even better if there is another more correct way to customize relation field display?

Somehow this saves the optimization and at the same moment returns all required data:
@dataclass
class CustomRelationField(StringField):
    async def serialize_value(
        self, request: Request, value: Any, action: RequestAction
    ) -> Any:
        if action == RequestAction.DETAIL:
            return '123'

I didn't understand how it all works.

I found thys syntax in admin demo source code:
class Post(SQLModel, table=True):
    id: Optional[int] = Field(primary_key=True)
    async def __admin_select2_repr__(self, request: Request) -> str:
        template_str = (
            "Title: {{obj.title}}, Publish by:"
            " {{obj.publisher.full_name}}"
        )
        return Template(template_str, autoescape=True).render(obj=self)

I belive this can help to change list view.
Finally, it remains to understand how to change the template in the detail view.

Is there any way to set representation html template for detail view also?

I made _detail_repr
If anyone need this I can provide modified code

You can simply override the detail template for this specific field. You can find more information on https://jowilf.github.io/starlette-admin/advanced/custom-field/?h=custom#detail-page
Also, I noticed that you are currently using an outdated version of starlette-admin. I recommend upgrading to the latest version.

class ClientView(MyModelView):
    fields = [
        NotesField("notes"),
        Client.notes,
    ]

The field names must be unique per view


Label and legend missing

@JustinJaniszewski  You missed to add label and legend in your plot. We have to label the energy for the configurations chosen as stated in the homework.

What is legend?

Oh thank you. I will do that now


Handle shuffle method name for upcoming dask release

This method will change names in the upcoming dask release next week (xref https://github.com/dask/dask/pull/10344). Handling that name change early here.

Personally, I'd prefer not adding too many of these version consistency things at this stage. I am happy as long as we are compliant with the latest Dask release until we are in a more mature state.

@phofl makes a reasonable point. We don't really have "users" yet. So, perhaps it's best to test against main and simply fix breakages like this as they show up?

I'd rather test against the latest release, this makes running benchmarks and stuff a bit easier without having to install from main all the time. We release all 2 weeks in dask, so this shouldn't be too bad?

I wouldn't want to make benchmarking too tricky.
I was just thinking that it becomes tricky to use dask:main with dask-expr:main (something I personally do often) if we  fix breakages after a dask release.
One possibility is to follow the convention used in this PR, but to immediately raise an issue to remove the try/except after the next release?

Then let's go with main, my opinion isn't strong here.

Then let's go with main, my opinion isn't strong here.

I pushed a commit to move to main. I also don't have super strong opinions about this, so we can always move back to the latest release (or agree to handle both main and the latest release).


[wabt-compatibility] bulk memory

According to https://github.com/WebAssembly/bulk-memory-operations/blob/master/proposals/bulk-memory-operations/Overview.md, instructions as table.init, table.copy has changed.
Bug: https://github.com/wasdk/wasmparser/issues/33

@ktran @bmeurer @EricSL PTAL, thanks :)
I don't think we can display name in this case if we want to be wabt-compatibility.

The operands for table.copy & table.init are still in place according to the linked specification.
It's just that the table is omitted if the table index is 0 (for table.copy if both src and dest are 0).
See the core spec, 6.5.6 Table Instructions

Make senses. Thanks Kim 👍

@ktran sorry, I click something and it request you to review again :(

No worries, thanks for the help!

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[chore] Engine refactor - how to handle mutability

If you store a mutable object in the engine, a getter can take it and mutate it without the engine's knowledge so the downstream effects do not happen.
How to solve this?
Currently relying on the user to mark the Topic as a DeepReadonly type.
We can by default mark all types as DeepReadonly, or we can by default return a copy.

Marking discord voice subscription as DeepReadonly broke it. Also don't know how to return a copy of it. Also we want to be able to mutate its state. So perhaps it's ok to allow the user to safeguard against unexpected mutations? Perhaps add a warning when using mutable arrays/maps/objects when registering rules? That doesn't help when we want read-only classes (i.e. PlayerItems) ...  need to think on this more.


Don't use deprecated SPDX identifiers

For eg: GPL-2.0 is deprecated, but there's a test
get_short_license_id("GPL 2.0") == "GPL-2.0"

That is true indeed. To be honest, I didn't know that was deprecated. grayskull is getting the spdx from opensource.org, I will change it to get all spdx from spdx.org then, in that way I can check if the license was deprecated or not.
Thanks for reporting it! :)

For example, on opensource.org they are still pointing that the spdx for GPL 2.0 is GPL-2.0
https://opensource.org/licenses/GPL-2.0
It seems they are not the best source to rely on license information
:grimacing:

Solved with #107 and I generated version 0.3.0 for that


Design by contract research

Ada 2012
From: https://en.wikibooks.org/wiki/Ada_Programming/Contract_Based_Programming
Pre and post-conditions:
  function Sum (A, B : Number) return Number
  with
    Pre  => A <= 0.0 and B >= 0.0,
    Post => Sum'Result = A + B;

Predicates:
type Course is record
    Name       : Unbounded_String;
    Start_Date : Time;
    End_Date   : Time;
end record
    with Dynamic_Predicate => Course.Start_Date <= Course.End_Date;

Vala
From: https://wiki.gnome.org/Projects/Vala/Tutorial#Assertions_and_Contract_Programming
double method_name(int x, double d)
        requires (x > 0 && x < 10)
        requires (d >= 0.0 && d <= 1.0)
        ensures (result >= 0.0 && result <= 10.0)
{
    return d * x;
}

D
From: https://dlang.org/spec/function#contracts
Function preconditions and post-conditions:
int fun(ref int a, int b)
in (a > 0)
in (b >= 0, "b cannot be negative!")
out (r; r > 0, "return must be positive")
out (; a != 0)
{
    // function body
}

From: https://dlang.org/spec/struct.html#Invariant
Struct invariants:
struct Date
{
    this(int d, int h)
    {
        day = d;    // days are 1..31
        hour = h;   // hours are 0..23
    }

    invariant
    {
        assert(1 <= day && day <= 31);
        assert(0 <= hour && hour < 24);
    }

  private:
    int day;
    int hour;
}

Fortress
From: https://samth.github.io/fortress-spec.pdf page 57
factorial(n: Z64) requires {n ≥0 }=
    if n = 0 then 1
    else n factorial(n −1)
end

mangle(input: List) ensures {sorted(result) provided sorted(input) }=
    if input 6= Empty
    then mangle(first(input))
            mangle(rest(input))
end

Kotlin
All the search results I found were terrible content farm blogs so not using this.

Eiffel
Oh boy. This one's got a Galapagos island syntax.
From: https://www.eiffel.org/doc/eiffel/ET-Design_by_Contract%28tm%29%2C_Assertions_and_Exceptions
Pre and post-conditions:
feature -- Element change

    deposit (sum: INTEGER)
            -- Add `sum' to account.
        require
            non_negative: sum >= 0
        do
            ... As before ...
        ensure
            one_more_deposit: deposit_count = old deposit_count + 1
            updated: balance = old balance + sum
        end

Interestingly, conditions can be named.
 This makes Boolean operations much more readable, and I think I will adopt it.


python3packages.meteoalertapi: init at 0.1.8

Motivation for this change
Python wrapper for MeteoAlarm.org
https://github.com/rolfberkenbosch/meteoalert-api
This is a Home Assistant dependency.

Related Home Assistant change: https://github.com/home-assistant/core/pull/51383
Target Home Assistant release: current (only dependency update, no code changes)

Best would be to hold back with this one for a little as the update of Home Assistant 2021.6.0 is in process.
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/)
[ ] Added a release notes entry if the change is major or breaking
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 125559 at 10458d7a run on x86_64-linux 1

2 packages built successfully:

python38Packages.meteoalertapi
python39Packages.meteoalertapi


Add features for individual architectures

Are all features enabled by default?

No - but they probably should be for backwards compatibility?

Are all features enabled by default?

No - but they probably should be for backwards compatibility?

Yes, I'd say that should be the default.


Add ability to limit max repository size.

Output of restic version
restic 0.16.2 compiled with go1.21.3 on linux/amd64
What should restic do differently? Which functionality do you think we should add?
Add the ability to limit the maximum repository size.
What are you trying to do? What problem would this solve?
Some cloud storage providers (Wasabi) don't seem to provide a way to limit the size of a bucket or a spending limit on the account.  Being able to set a maximum-size threshold on the backup repository will help prevent a possible expensive accidental overrun if it begins backing up more than expected due to some unexpected condition such as passing the wrong directory arguments or moving more files into a directory than possibly intended for the backup set.
I currently can approximate this in a wrapper script by first running restic stats --json mode raw-data, followed by restic backup --quiet --dry-run --json and adding up the 'total_size' from the stats call and 'data_added' from the backup dry run to get a new projected total size -- and checking that against a configured threshold.
It would be nice (and I imagine possibly more efficient?) to be able to pass a "--max-repo-size 50G" argument to restic directly.
If I'm missing some other way of accomplishing this that exists -- my apologies and please advise.  Thanks!!
Did restic help you today? Did it make you happy in any way?
Restic is awesome!  I love the ways that it lets me manage backups in an efficient way across multiple different back ends, and is supported across all operating systems!  Great work!

Yeah! Any news on this?

There is one key limitation for this feature. It won't be possible to accurately limit the repository if multiple clients backup to the same repository at the same time. There will also be a significant slowdown on startup as restic would have to list all files in the backend to know how large the repository currently is.

A quick estimate of the repository size is the sum of sizes of all packfiles, excluding space needed for indices and snapshots etc.:
repo_packs, _ := pack.Size(ctx, repo, false)
pack_size := int64(0)
for _, size := range repo_packs {
pack_size += size
}
This is an index function and will not go back to the backend.
IMHO one doesn't need an exact limit, just a rough limit. If multiple clients are backing up at the same time, the last one hitting the limit check will have to bite the bullet (and the backup will fail).

This is an index function and will not go back to the backend.

True, that is also already used to clean up stale pack files from the cache. Judging from the described use case, a rough limit would be sufficient. Together with the size of the index files that should cover 99% of the repository size.
What would be the expected behavior if the repository size is reached? Then restic should probably just cancel the backup creation?

I think cancelling the backup would be the right choice, together with an appropriate error message. Then the administrator / user can take manual steps to either increase the repository size or remove old snapshot (and the prune it).


Refactor separate object store from sst builder

Which issue does this PR close?
Part of #495
Rationale for this change
In order to introduce our custom file format, ObjectStore should be avoided being used by SstBuilder and a FileChunkWriter will replace it so that we can append a footer containing the file format information to the encoded sst.

What changes are included in this PR?

Replace the ObjectStore with FileChunkWriter in the SST builder.

Are there any user-facing changes?
None.

How does this change test
Existing tests.

A new design has been proposed, so let's drop this changeset.


Node 22 support

Node 22 support

I guess this error is due to lack of Node 22 support?
[4/4] Building fresh packages...
error .../node_modules/node-sass: Command failed.
Exit code: 126
Command: node scripts/install.js
Arguments:
Directory: .../node_modules/node-sass
Output:
/bin/sh: /tmp/yarn--1718703076889-0.2675272992829243/node: /bin/sh: bad interpreter: Text file busy
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

I got the similar issue...I hope the pull request can be merged soon.

Node Sass is deprecated, and this issue is unlikely to ever be fixed. Please move your Sass compilation to the sass package instead.


feat: Allow partials on every element

There is a strong desire to expand support for partials to more scenarios. Fresh 1.5 shipped with partial support for navigation and https://github.com/denoland/fresh/pull/1930 landed recently in main that enables it for form elements. But there are lots of scenarios where you want to trigger a partial update based on an event. Like when changing the value of a select in a form or something. We need a way to allow that.
Something I was pondering about is whether we should introduce some sort of object syntax for events.
<select onChange={{ partial: "/foo/bar" }}>...</select>

// or maybe abstracted via a function
<select onChange={partialTrigger("/foo/bar")}>...</select>

I haven't yet decided what it should look like and open to ideas.

The abstracted via function idea seems most straightforward to me, and let's the user put extra JS in the handler if needed.

@adamgreg The main thing I'm not sure how to solve is how would you send these functions to the browser when you add them outside of an island. Only thing I can think of is to serialize the function but that breaks if it captures variables via a closure.

Oh, that's a tricky one.
A general solution to serialising little handler functions to the client would be useful for other cases, if it's possible. Interestingly, Chrome DevTools lets you inspect a function's closure using console.dir() (but Firefox doesn't). Maybe it's something that could be exposed via a new Deno API?


fix/528-simplify-use-of-credential-id

This PR attempts to make @simplewebauthn/server simpler to use by keeping credentialID a string throughout registration and authentication. This PR contains the following breaking changes!
Fixes #528.
Registration

excludeCredentials when calling generateRegistrationOptions() expects id to be a string. type is no longer necessary here either.
registrationInfo.credentialID returned from verifyRegistrationResponse() is now the base64url-encoded credential ID string instead of a Uint8Array.

Authentication

allowCredentials when calling generateAuthenticationOptions() expects id to be a string. type is no longer necessary here either.
authenticationInfo.credentialID returned from verifyAuthenticationResponse() is now the base64url-encoded credential ID string instead of a Uint8Array.
AuthenticatorDevice.credentialID (in @simplewebauthn/types) is now a base64url-encoded string instead of a Uint8Array. This will break existing use of the authenticator argument in verifyAuthenticationResponse().

Helpers

isoBase64URL.isBase64url() is now called isoBase64URL.isBase64URL() (note the "URL" in the method name)

Rationale
The idea here is that, in practice, it makes a lot of sense for a given credential ID to be persisted as the base64url-encoded string. This makes it easier, for example, to confirm which credentials are making it to the WebAuthn API call, to copy-paste the ID from a WebAuthn response to look up the credential in the RP's database, to share the credential ID with others...in all of these, strings help the developer discern one credential from another.
Thinking about the developer experience, let's start with an RP dev wiring up registration for a user. First they generate WebAuthn registration options:
const opts = generateRegistrationOptions({ ... });

Then the options make it to WebAuthn via @simplewebauthn/browser, and a response is sent back to be verified:
// Assume the response succeeded verification
const verification = verifyRegistrationResponse({ ... });
// Imagine `credentialID` is of type `string` now
const { credentialID } = verification.registrationInfo;

Later, the user comes back to authenticate with a passkey. The RP dev first generates authentication options, specifying the user's registered credential:
const opts = generateAuthenticationOptions({
  // ...
  // `credentialID` is still `string`, no need for a helper to get it to `Uint8Array`
  allowCredentials: [{ id: credentialID }],
});

When verifying the authentication response, the credential ID can again be used as-is with no helpers needed:
const verification = await verifyAuthenticationResponse({
  // ...
  authenticator: {
    // ...
    // No need to use any helpers here either
    credentialID,
  },
});

Thinking about how credentialID might get persisted across various SQL and NoSQL solutions, strings are so easy to implement, query, and think about that most users of this library are probably already storing credentialID as a string, but needing to maintain code that goes to and from base64url string and bytes. I think in my gut this PR will simplify use of this library even further by removing the need to remember how and when to go between the two formats.
Yes, the spec says these values are bytes, but this is a library intended to make it simpler to implement WebAuthn. This PR feels like a great direction to take things in the spirit of that.

I went digging a bit and this PR represents a bit of a reverting some changes made in #97 way back in February 2021 to emphasize more use of Buffer over base64url-encoded strings 🤯


Making markdown-style avaible for about and home layouts.

Is your feature request related to a problem? Please describe.

Quoted text color is red which is not good color for gray color based layout. By default markdown-style not  available for about and home layouts.

Describe the solution you'd like
if markdown-style is available for about and home layouts should look like this.

Describe alternatives you've considered

none
Additional context

none

done in #45


facing problems with FFMPEG

facing some problems with latest ffmpeg (staxrip 1.4.0). when im trying to using x264(2 pass) through ffmpeg, its stop working in the middle of 1 pass. but x264 works fine individually. i didnt face this kind of problem while using v1.3.7.
how can i solve this problem?
pc config: W10(x64) pro, i5-7600k,  16GB ram, gtx 1060 gpu

Hi, you can solve it the same way almost any problem can be solved, replace components with alternatives. Use only a source filter and not any other filter, replace it with a alternative source filter, replace the ffmpeg build with the ffmpeg build from 1.3.7.
The problem can only be AviSynth or ffmpeg or the source, it's unlikely that the problem is caused by staxrip.

i see,  thanks,,,,  it only works with  "AviSynth" thou,  n also i tried replacing ffmpeg (v1.3.7) but no good. unsupported.

Disappointing. :( back to v1.3.7
i've tried every single source possible, i thought its working fine with AviSynth ( LWLibavVideoSource) but unfortunately not. it stops in the middle of 1st pass. tried re install every soft n its perfect OK with 1.4.0.
could u please check it and find out whats causing this problem?

Here it works.
https://pastebin.com/KLmn79QZ

it might work with ffmpeg 3.2.2 but not working with ffmpeg 3.1.5.
btw, from where can i download <IP_ADDRESS> version, that you are using ?
is there any way to make staxrip <IP_ADDRESS> to support 3.2.4 (stable) /3.3.1 ?

on the main page:
https://github.com/stax76/staxrip
there is a download section where you can find test builds:
https://github.com/stax76/staxrip#download
alternatively you can use: Main Menu > Help > Web Site > Test Build
I only provide support for test builds.

thanks a lot.


Component: News-list block (informs DS)

Scope & build news-list block (@TODO link to issue in design-system & ca-design-system-gutenberg-blocks)

Still needs styling
Currently working on content pages & will resume this once that's complete

Waiting on pagination


Snoozed emails don't come back into inbox at set time

I can snooze emails, but they just sit in the Snoozed folder and don't get put back into the inbox at the set time.
OS X 10.10.5, time locale French - Canada.

hey @flareau , do the emails ever come back? It might be the case that there is a small delay (< 15min)
if that's not the case, let me know.
We are working on a fix to remove this delay

I see. Yes, after about 20 minutes it came back.

thanks!

I've also got this issue. It has never worked for me.

Now snoozing doesn't work at all for me. Even days later, the snoozed emails don't come back. Things that have changed lately in my setup:

I have Nylas configured to use the same email account on two different machines. Snoozed emails don't come back on either machine.
My Gmail account used to be set to redirect to Inbox. I have disabled that in my Google account. I started having snooze problems with Nylas on that day.

I tried deleting the app, the .nylas folder in my home, and the one in Application Support (Mac OS X), deleting the N1-Snoozed label, and then reinstalling. It worked once, and then stopped working again.

Hey folks—we've dedicated more server resources to running through the unsnooze queue and it seems to have resolved this issue. @flareau — what do you mean by "Redirect to Inbox"? I'm not sure whether that option changes the behavior of snooze (it probably shouldn't), but I haven't heard of it before.
Could you try snoozing mail again?

@bengotow, I meant that logging into Gmail"s website would redirect me to Google's Inbox website. I mentioned it because I noticed that when it worked, snoozed emails came back even when I wasn't using N1, so I thought you might be using some server side functionality provided by Google.
Now snoozing woks as expected. Thanks!

are we supposed to expect a notification for when a snoozed email returns to inbox? The snoozed mails seem to be returning fine. The menu bar icon lights up but I don't receive any notification. Is this expected?

I have been experiencing this issue for a few days now... Snoozed emails are never coming back to inbox.


server: fix isIBGPPeer() to handle local-as configuration

Signed-off-by: FUJITA Tomonori<EMAIL_ADDRESS>

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@60202fc). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master      #80   +/-   ##
=========================================
  Coverage          ?   34.65%
=========================================
  Files             ?       58
  Lines             ?    27905
  Branches          ?        0
=========================================
  Hits              ?     9670
  Misses            ?    17205
  Partials          ?     1030

Impacted Files
Coverage Δ

pkg/server/peer.go
55.15% <100%> (ø)

Continue to review full report at Codecov.

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


fixed Java16 compatibility + version bump (2.1.1)

Oh yeah, totally forgot about this too, since I mostly mod for 1.18 currently. Ty!


Fixing path for sql-request plugin

@pedroluz89 thank you for your contribution!
@Jak-MS can you please sign off here as well?
#sign-off

Looks good. Thanks @pedroluz89


Fix/locale changes

New keys/values from various PRs

you might guess that my ability to review this thoroughly is limited!

Yeah, and you can't really do a google translate either :D


Support SCS 3.0

The SCS 3.0 PR is here: https://github.com/cvxgrp/scs/pull/169
The new version of SCS is overall much faster and more reliable, as well as supporting quadratics natively (and other new features).

Awesome, thanks @bodono! Added support in the edge branch and will merge once 3.0 is released.

Wow, that was fast, great work! If you have any spare cycles it would be great to have your input on the website, in particular the Ruby API and an example or two if you have time. The website would name you as the maintainer of the API of course.
Current API page here (missing Ruby): https://www.cvxgrp.org/scs/api/index.html#interfaces
Here is the website source: https://github.com/cvxgrp/scs/tree/3.0.0/docs/src

Started it here. Will wait for the other API docs and examples to see if it's easy to match.

Great, thanks.

The PR updating SCS to 3.0 has landed now, so feel free to land your changes too!


Parse CSS with multiple curly braces

This is a fix for https://github.com/jotform/css.js/issues/4

Thanks for the pull request, but it does not seem to fix curly brackets inside commented areas problem,
try parsing this
.someSelector
{
  margin:40px 10px;
  padding:5px; /* This is { blue } */
}

.someSelector2
{
  margin:40px 10px;
  padding:5px;
}

will result :
[
  {
    "selector": ".someSelector",
    "rules": [
      {
        "directive": "margin",
        "value": "40px 10px"
      },
      {
        "directive": "padding",
        "value": "5px"
      },
      {
        "directive": "",
        "value": "/* This is { blue",
        "defective": true
      }
    ]
  },
  {
    "selector": "*/\n}\n\n.someSelector2",
    "rules": [
      {
        "directive": "margin",
        "value": "40px 10px"
      },
      {
        "directive": "padding",
        "value": "5px"
      }
    ]
  }
]

So, apparently it brakes next selector. So I suggest cleaning of comments before parsing, unless they are needed absolutely :
var parser = new cssjs();
var cssString = ".someSelector{color:blue;/*{somecomment*/}";
cssString = parser.stripComments(cssString);
var parsed = parser.parseCSS(cssString);

My general thought about the whole comments issue is, using a non-regex parser. Regexes are already too complicated, I see no practical use continuing adding rules to current regexes.


Redirects not working 1-29-2021

It looks like the redirection is not working.  We have bunch of URL's that we redirect using CNAME and they all stopped working today. Thank you for looking into it.
Here is the error message-
This site can’t be reached
localhost refused to connect.

Thank you for fixing the issue. I truly appreciate it.

Thank you for fixing the issue. I truly appreciate it.


Fix/2.3.7

problem with browser history state

Coverage decreased (-0.002%) to 99.433% when pulling 39b3de9b2015037f447047aa53004a30e786daed on kobalka:fix/2.3.7 into 388a60451722d4aea41790315f6f984577240cdb on Narzerus:fix/2.3.7.

Without this fix using angular-permission is useless because replace will work over and over and there is no history, history is empty. This replace functionality clear every time last history ui-router#state.go

location - {boolean=true|string=} - If true will update the url in the location bar, if false will not. If string, must be "replace", which will update url and also replace last history record.

So if you check permission every time application start, there will be no history at all, thats why this {'location':'replace'} brake core browser functionality like back and forward buttons.

Thanks for the fix! I was starting to think I broke the angular application when the router didn't go to previous state.


Initial Version

Q
A

Is bugfix?
❌

New feature?
✔

Breaks BC?
✔

@samdark and @vjik please merge, there is still some TODOs for which I will raise issue for and do but think for now this is a good starting place i.e. we have something that can do every SynchronousAdapter can do but is asynchronous and uses the database.


Rename function name to add_manifests

While I'm looking into #286, I found there is one function add_manifest_entries which is confusing to me.
In fact, it writes manifest instead of manifest entries. As I think manifest entries (i.e., ManifestEntry) should refer to the entries inside manifest (i.e., Manifest). I think updating the function names and a few comments make it less confusing.

Thank you @liurenjie1024


اضافه مشروع URWAY

{     "name": "ياسر طواش",     "githubURL": "https://github.com/tawashy/urway.js",     "projects": [       {         "name": "URWAY Payment Gateway",         "URL": "https://github.com/tawashy/urway.js",         "description": "The URWAY.js library provides convenient access to the URWAY API from applications written in server-side JavaScript.",         "details": {}       }     ]   }

Done 🚀