Earn protocol WIP #14

14 of N pull requests.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 70.16%. Comparing base (bb76c37) to head (9410084).

Additional details and impacted files
@@            Coverage Diff             @@
##              dev     #547      +/-   ##
==========================================
- Coverage   70.76%   70.16%   -0.61%
==========================================
  Files          25      129     +104
  Lines         260     1354    +1094
  Branches       19       78      +59
==========================================
+ Hits          184      950     +766
- Misses         75      404     +329
+ Partials        1        0       -1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Custom serialization

This PR adds the ability to customize the serialization of values by passing custom encode and decode functions to SqliteDict. Possible use cases are storing values as JSON, applying compression, etc.

Thanks for the new feature!
Could you please add text to README in the bottom of Features section on how to use json and compression?

Sure, done.


tftp: make file filename mandatory and anchor the regex to the end of line too

I think the following regex should be modified to ^(.+)-[[:xdigit:]]{2}-([[:xdigit:]]{32})-([[:xdigit:]]{16})-([[:xdigit:]]{2})$:
https://github.com/tinkerbell/boots-ipxe/blob/e9e36bd85356785cfeaf9e2f340d5a751f5b1708/tftp/tftp.go#L123
I'm also curious, is there a reason for not using a query string alike syntax? for example, filename?traceparent=xxx?

Hey @rgl, thanks for the feedback. I'm curious about "make file filename mandatory". Would you mind expanding on this idea?
In regard to "anchor the regex to the end of line", what do you think we gain by capping the name in this way?
"is there a reason for not using a query string alike syntax?"
The reason is that this code was taken from the work already done to enable otel in Boots proper. https://github.com/tinkerbell/boots/blob/129caee6916a2ef9a5cb4af216141654b0bc6e77/cmd/boots/tftp.go#L120

Hey @rgl, thanks for the feedback. I'm curious about "make file filename mandatory". Would you mind expanding on this idea?

the regex .* means its optional, that is, it matches zero or more characters.

In regard to "anchor the regex to the end of line", what do you think we gain by capping the name in this way?

prevent it from being interpreted as something else? that way, the id would be always at the end of the string. not at the middle.

"is there a reason for not using a query string alike syntax?" The reason is that this code was taken from the work already done to enable otel in Boots proper. https://github.com/tinkerbell/boots/blob/129caee6916a2ef9a5cb4af216141654b0bc6e77/cmd/boots/tftp.go#L120

I'm not sure how picky the tftp clients are, but stashing an id in a filename using a regular char (-) is quite odd for me; I would prefer a more structured way (like a query string).


Only duplicate selection when selection is one line

Technically disable #21814/#24574 for multi-line selection.
Now it's just awkward to duplicate multiple lines.
Now:

Then:

CC @SeleckyErik @Paulb23

This seems more like a personal preference to me. I can see reasoning to prefer either of them. Maybe add an editor option to choose which behaviour is used?

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!


Potential correction for P2 license requirement if using Defender for o365.

So, I've been researching the MSFT documentation and from as far as I can see, the requirement for a P2 license or any exchange license to be attached to a shared mailbox has been dropped with the only exception being this page. I've also tested this in a lab Env where we used to be required to add 'any' o365 license in order to be able to apply the Defender license, and can confirm that we can now add a Defender for o365 license to a shared mailbox independently.
Is this correct?

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

ID: fd8b6d7d-1a95-d263-595e-78649069275f
Version Independent ID: bacc64b9-916b-bb3d-a885-46fe5d096826
Content: Remove license from shared mailbox - Microsoft 365 admin
Content Source: microsoft-365/admin/email/remove-license-from-shared-mailbox.md
Service: o365-administration
GitHub Login: @SKjerland
Microsoft Alias: sharik

@TheLegacyKiwi Thank you for your feedback. We have made changes to the document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/8688
Once the author approves, the changes will be live.
Thanks
Sri

@msbemba Thank you very much for the contribution and updating the documentation with PR. @TheLegacyKiwi Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Changing cwd in a Linux mocked filesystem in a Windows environment causes confusion

Describe the bug
When changing the current working directory while using the patched filesystem that mocks a Linux filesystem, the fake filesystem gets confused when trying to access Windows absolute paths, since absolute paths in Windows are not prefixed with a '/' while in Linux they are. The fake filesystem tries to resolve the path as a relative path in the current working directory and fails.
Traceback (most recent call last):
  File "C:/Users/gilad/Documents/my_module/bug.py", line 19, in <module>
    bug()
  File "C:/Users/gilad/Documents/my_module/bug.py", line 16, in bug
    open(__file__)
  File "C:\Users\gilad\AppData\Local\Programs\Python\Python38\lib\site-packages\pyfakefs\fake_filesystem.py", line 4449, in open
    return fake_open(file, mode, buffering, encoding, errors,
  File "C:\Users\gilad\AppData\Local\Programs\Python\Python38\lib\site-packages\pyfakefs\fake_filesystem.py", line 4935, in __call__
    return self.call(*args, **kwargs)
  File "C:\Users\gilad\AppData\Local\Programs\Python\Python38\lib\site-packages\pyfakefs\fake_filesystem.py", line 4983, in call
    file_object = self._init_file_object(file_object,
  File "C:\Users\gilad\AppData\Local\Programs\Python\Python38\lib\site-packages\pyfakefs\fake_filesystem.py", line 5037, in _init_file_object
    self.filesystem.raise_os_error(errno.ENOENT, file_path)
  File "C:\Users\gilad\AppData\Local\Programs\Python\Python38\lib\site-packages\pyfakefs\fake_filesystem.py", line 960, in raise_os_error
    raise OSError(errno, message, filename)
FileNotFoundError: [Errno 2] No such file or directory in the fake filesystem: 'C:/Users/gilad/Documents/my_module/bug.py'

How To Reproduce
My project tree structure:
.
├── __pycache__
│   └── test.cpython-38-pytest-6.0.2.pyc
└── bug.py

1 directory, 2 files

My test file:
import os
from pathlib import Path

from pyfakefs.fake_filesystem_unittest import Patcher

def bug():
    with Patcher() as patcher:
        filesystem = patcher.fs
        filesystem.is_windows_fs = filesystem.is_macos = False

        filesystem.add_real_file(__file__)

        open(__file__) # works
        os.chdir(Path.home())
        open(__file__) # fails

bug()

Your enviroment
Please run the following and paste the output.
python -c "import platform; print(platform.platform())"
python -c "import sys; print('Python', sys.version)"
python -c "from pyfakefs.fake_filesystem import __version__; print('pyfakefs', __version__)"

Output:
C:\Users\gilad\Documents\my_module>python -c "import platform; print(platform.platform())"
Windows-10-10.0.19041-SP0

C:\Users\gilad\Documents\my_module>python -c "import sys; print('Python', sys.version)"
Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)]

C:\Users\gilad\Documents\my_module>python -c "from pyfakefs.fake_filesystem import __version__; print('pyfakefs', __version__)"
pyfakefs 4.1.0

Thanks for the report!
Some background: Setting the filesystem OS in the tests is something we haven't paid too much attention, as it seemed not to be used much outside of pyfakefs itself. We use this quite a lot for our own tests, and I know that there are a few shortcomings. Some of the faked code (mainly pathlib) relies on the real implementation, and therefore switching the OS may not work there correctly, though that is something that I wanted to address at some time anyway.
I will have a closer look at the issue later, maybe there is an easy fix.

I think that any path that starts with a windows drive should be resolved as an absolute path only as a fallback (or you can force the developer to add a leading backslash to indicate it is indeed an absolute path) since it will cause resolving relative paths as absolute. There may be a better solution, I couldn't think about one now.
With the current changes, the following code will break:
import os
from pathlib import Path

from pyfakefs.fake_filesystem import OSType
from pyfakefs.fake_filesystem_unittest import Patcher

def bug():

    with Patcher() as patcher:

        filesystem = patcher.fs
        filesystem.os = OSType.LINUX

        folder = Path('/test')
        file = folder / 'C:/testfile'

        file.parent.mkdir(parents=True)
        file.touch()

        os.chdir(folder)
        open(file.relative_to(folder))  # fail - FileNotFoundError: [Errno 2] No such file or directory in the fake filesystem: PosixPath('C:/testfile')

bug()

Since it will resolve C:/testfile as /C:/testfile and not as an absolute path.
I am starting to think that this was not a bug in the first place but more of a design constraint...
stacktrace:
Traceback (most recent call last):
  File "C:/Users/gilad/Documents/my_module/bug.py", line 25, in <module>
    bug()
  File "C:/Users/gilad/Documents/my_module/bug.py", line 22, in bug
    open(file.relative_to(folder))
  File "c:\users\gilad\.virtualenvs\my_module-q9ys3txz\src\pyfakefs\pyfakefs\fake_filesystem.py", line 4543, in open
    return fake_open(file, mode, buffering, encoding, errors,
  File "c:\users\gilad\.virtualenvs\my_module-q9ys3txz\src\pyfakefs\pyfakefs\fake_filesystem.py", line 5131, in __call__
    return self.call(*args, **kwargs)
  File "c:\users\gilad\.virtualenvs\my_module-q9ys3txz\src\pyfakefs\pyfakefs\fake_filesystem.py", line 5187, in call
    file_object = self._init_file_object(file_object,
  File "c:\users\gilad\.virtualenvs\my_module-q9ys3txz\src\pyfakefs\pyfakefs\fake_filesystem.py", line 5242, in _init_file_object
    self.filesystem.raise_os_error(errno.ENOENT, file_path)
  File "c:\users\gilad\.virtualenvs\my_module-q9ys3txz\src\pyfakefs\pyfakefs\fake_filesystem.py", line 1000, in raise_os_error
    raise OSError(errno, message, filename)
FileNotFoundError: [Errno 2] No such file or directory in the fake filesystem: PosixPath('C:/testfile')

The combination of real files (added by add_real_xxx or from __file) with another file system is a bit of a problem, especially with drive letters. I don't have a good solution, and any solution will be make some sort of compromise.
As for your example--you are right, this is a case that now doesn't work because of that compromise made for real files to work, so maybe it wasn't such a good idea. I will have a closer look tonight.

Ok, I made the compromise a bit less problematic, while still retaining the ability to handle real files. It will not solve all cases, but hopefully most.
Waiting for more issues :)


navbar redesign

Purpose
Updates implementation of navbar design.
Changes
Styling changes to sidebar and page header
Checklist

[x] My code follows the style of this project.
[x] The code compiles without warnings.
[x] I have performed a self-review of the changes.
[x] I have documented my code, in particular the intent of the
hard-to-understand areas.

The text becomes colored before the picture, which I don't like. (And same for when it becomes black again)

True, fixed this.


Incorrect variable usage in AppBuilderSelectionWidgetComponent.tsx: 'selectedNodes' instead of 'selectedNodeNames'

There is an issue in the file AppBuilderSelectionWidgetComponent.tsx where the component is importing and using a variable named selectedNodes. However, this variable does not exist. The correct variable that should be used is selectedNodeNames, which is provided by the useSelection hook.
File Location
AppBuilderSelectionWidgetComponent.tsx
Suggested Fix
Replace all occurrences of selectedNodes with selectedNodeNames in the AppBuilderSelectionWidgetComponent.tsx file.

I think this has been fixed in the meanwhile. We recently refactored AppBuilderSelectionWidgetComponent.tsx and the related hooks.


Bump version to 0.3.0 for release

Resolves #N/A
Description
Bumping version to 0.3.0
Checklist

[X] I have read the contributing guide and understand what's expected of me
[X] I have signed the CLA
[X] This PR includes tests, or tests are not required/relevant for this PR
[X] I have run changie new to create a changelog entry

We talked about this earlier today, moving forward with it 🙂 Self-approval ✅


Support configuring HTML2Text for plain text rendering

The plain text generated by HTML2Text does not look very good.
Especially when you are using table heavy HTML emails. So with this
addition one should be able to configure how the plain text is generated
by configuring it. Simply add the setting HTML2TEXT with a dictionary
that maps to the options on Html2Text class.

+1 This will be really useful.

Is there any activity on this project at all?

Sorry for the delay!
There isn't much activity on the project, but we clearly have no excuse for that. Your PR looks very great, I made a small comment but after that we'll merge it & make a new release :) .
Thank you for your patience.

All right. I'll make the changes asap.

Hi @stianpr any news about it?

Hi @stianpr any news about it?

Sorry for the delay. I'll try to make the adjustments today!


Avoid negative number

Hello,
very nice work.
Is it possible to add the property ignoreNegative to FakeCurrencyInput?
The goal is to forbid the user to type the minus sign. I tried to use minValue={0}, but this not worked.

@rlovatto You actually just reported a bug. Setting minValue={0} was supposed to work, but, as you said, it was not.
I just released version 1.0.1 with that fixed. Let me know if you still have any problems.
Thanks!

It worked, thank you.


How can I load the data on table scroll?

I have a table that loads a huge data set, I want to implement datatable scroll  so that I load the data every time I scroll down on my table

Is this what you mean?
https://github.com/DataTables/Scroller

Kind of. I did some changes and loaded the data from server everytime


Support isize

Will publish a new version early next week.
Thank you for your contribution.

Published in v0.1.21.


.Net: When running a plan with Kernel.RunAsync, the KernelResult.Metadata only contains information about the plan function.

Describe the bug
After running a plan that invokes plugins, the resulting KernelResult should contain metadata about the functions (plugins) called in the plan. Instead, it only contains metadata about the plan plugin.
To Reproduce
Steps to reproduce the behavior:

Register at least one plugin in the kernel.
Create a plan with a goal that will invoke the plugin.
Run the plan with kernel.RunAsync(plan)
Examine the KernelResult object returned from running the plan and notice that metadata is only present for 1 plugin which is the plan plugin.

Expected behavior
Metadata should exist for all of the plugins invoked in the plan execution.
Platform

OS: [e.g. Windows, Mac]
IDE: [e.g. Visual Studio, VS Code]
Language: [e.g. C#, Python]
Source: [e.g. NuGet package version 0.1.0, pip package version 0.1.0, main branch of repository]

Additional context
Add any other context about the problem here.

Closing this since KernelResult no longer exists.


TypeError: d.getErrors is not a function: Build broken with 2.2.0-rc.4, but working with 2.1.0-beta.28

Do you want to request a feature or report a bug?
BUG
What is the current behavior?
Get following stacktrace:
./node_modules/.bin/webpack --config ./config/webpack.config.production.js
keywords if/then/else require v5 option
/path/node_modules/webpack/lib/Compilation.js:640
const errors = d.getErrors();
^
TypeError: d.getErrors is not a function
at block.dependencies.forEach.d (/path/node_modules/webpack/lib/Compilation.js:640:22)
at Array.forEach (native)
at blocks.forEach.block (/path/node_modules/webpack/lib/Compilation.js:632:23)
at Array.forEach (native)
at Compilation.reportDependencyErrorsAndWarnings (/path/node_modules/webpack/lib/Compilation.js:631:10)
at modules.forEach.m (/path/node_modules/webpack/lib/Compilation.js:502:34)
at Array.forEach (native)
at Compilation.finish (/path/node_modules/webpack/lib/Compilation.js:502:16)
at /path/node_modules/webpack/lib/Compiler.js:469:16
at /path/node_modules/tapable/lib/Tapable.js:225:11
at _addModuleChain (/path/node_modules/webpack/lib/Compilation.js:452:11)
at processModuleDependencies.err (/path/node_modules/webpack/lib/Compilation.js:423:13)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
d is:
ConstDependency {
"module": null,
"expression": ""production"",
"range": [
32190,
32210
],
"loc": SourceLocation {
"start": {
"line": 1119,
"column": 22
},
"end": {
"line": 1119,
"column": 42
}
}
}
If the current behavior is a bug, please provide the steps to reproduce.
webpack config, just to give an overview: https://gist.github.com/macmillan78/6ab1411b5623d4fbf8106d9146060900
Seems to occur at every ConstDependency.
Changing
Compilation.js:640 from const errors = d.getErrors() to const errors = d.getErrors && d.getErrors() fixed the bug and produced a working build.
What is the expected behavior?
Build should work as it did with v2.1.0-beta.28
Please mention other relevant information such as the browser version, Node.js version, Operating System and programming language.
Node: 7.0.0
OS: macOS Sierra
webpack: v2.2.0-rc.4

same here

Fixed in latest https://github.com/webpack/webpack/releases/tag/v2.2.0-rc.7. Not sure why, I looked through the commits and it's not clear to me what fixed it.

Didn't fix it for me! As before, it works with the dev server, but it does not for a normal build using webpack CLI.

Hmmm, interesting. My webpack build now isn't broken even in rc.4. Not sure what happened there. Looking into it, will report back.

Try nuking node_modules and reinstall

If you're replying to me, I've tried everything but I can't reproduce this bug anymore with any of the rc.4, rc.5 and rc.6 family (and I could reliably reproduce it before upgrading to rc.7, it's so weird). Don't think anything change in my project that would affect this, but I'll recheck.

TLDR: Make sure your globally installed webpack version and the version your app depends on are both the latest, or at least match.
Ok, I think this is a non issue. It happens when you're running new webpack code (say you have globally installed webpack 2.2.0-rc.5) and you're depending on old webpack versions (say 2.2.0-beta.28) in your app, and using that older version of webpack with say, DefinePlugin, e.g.:
new webpack.DefinePlugin({
  'process.env.NODE_ENV': JSON.stringify('production')
})

Because you require('webpack') in your config to get the DefinePlugin, you require the older version of webpack and the implementation of ConstDependency/Dependency that's missing getErrors.
The new Compilation.js depends on Dependency.js' getErrors() (https://github.com/webpack/webpack/blob/d9ac04380e04852b8e61592c431411663a0c658a/lib/Compilation.js#L640-L646), which was introduced in: https://github.com/webpack/webpack/blob/f745f02910cb45a55ed659ebd99288e45a38e873/lib/Dependency.js#L35-L37
Older versions of Compilation.js do not depend on getErrors() and only use getWarnings() (https://github.com/webpack/webpack/blob/92a8be23614f92bc5669bf43eb0ddf746b2477e7/lib/Compilation.js#L644-L650)

Updated EVERYTHING to final 2.2.0 and now it works!
Thx for the help!


Convert heif byte array  to jpg or png byte array

Hello,
how to convert a heif byte array  to jpg or png byte array ?
Thanks

The decoder sample shows how to decode HEIF images to PNG.
The WriteOutputImage method is where most of the work is done.

I try to create the libeheif dll using Vcpkg but I obtain a "libeheif.dll" and a "libde265.dll" in "buildtrees" folder, how to integrate libde265.dll in libeheif.dll ?
Thanks

I try to create the libeheif dll using Vcpkg but I obtain a "libeheif.dll" and a "libde265.dll" in "buildtrees" folder, how to integrate libde265.dll in libeheif.dll ?
Thanks

It work, thanks.

It work, thanks.

Is-it possible to get a rgba or argb byte array instead of jpeg or png ?

Is-it possible to get a rgba or argb byte array instead of jpeg or png ?

Yes, you can use something like the following:
static byte[] GetHeifImageBytes(HeifImage heifImage)
{
	HeifPlaneData planeData = heifImage.GetPlane(HeifChannel.Interleaved);

	byte[] pixels = new byte[planeData.Stride * planeData.Height];

    Marshal.Copy(planeData.Scan0, pixels, 0, pixels.Length);

	return pixels;
}


Get rid of unused db utils

Purpose
$Subject

Codecov Report

Merging #13998 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master   #13998      +/-   ##
============================================
- Coverage     64.58%   64.56%   -0.03%
  Complexity      426      426
============================================
  Files          2155     2155
  Lines         95550    95550
  Branches      12738    12738
============================================
- Hits          61713    61693      -20
- Misses        28823    28854      +31
+ Partials       5014     5003      -11

Impacted Files
Coverage Δ
Complexity Δ

...in/java/org/ballerinalang/logging/BLogManager.java
19.84% <0%> (-19.05%)
0% <0%> (ø)

...a/org/ballerinalang/bre/bvm/WorkerDataChannel.java
83.95% <0%> (-3.71%)
0% <0%> (ø)

...ain/java/org/ballerinalang/net/websub/hub/Hub.java
69.53% <0%> (-1.57%)
0% <0%> (ø)

...et/http/actions/httpclient/AbstractHTTPAction.java
79.14% <0%> (+0.85%)
0% <0%> (ø)
:arrow_down:

...a/org/ballerinalang/bre/bvm/GlobalMemoryBlock.java
79.41% <0%> (+0.98%)
0% <0%> (ø)
:arrow_down:

...llerinalang/stdlib/socket/tcp/SelectorManager.java
71.79% <0%> (+1.7%)
0% <0%> (ø)
:arrow_down:

...rinalang/runtime/threadpool/ThreadPoolFactory.java
66.66% <0%> (+4.76%)
0% <0%> (ø)
:arrow_down:

...allerinalang/test/util/client/ResponseHandler.java
80.76% <0%> (+15.38%)
0% <0%> (ø)
:arrow_down:

...allerinalang/net/jms/LoggingExceptionListener.java
100% <0%> (+50%)
0% <0%> (ø)
:arrow_down:

Continue to review full report at Codecov.

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


Subscribe to rooms

Hi! I have server with rooms to chat. Full url is ws://93.171.XXX.XX:8080/conversation_realtime/sportspace581a1541590b21.14581077".
But I have to connect to this by 2 steps:

connect to "ws://93.171.XXX.XX:8080"
subscribe to room "conversation_realtime/sportspace581a1541590b21.14581077"

In JS it  looks like:
var _WS_URI = "ws://<IP_ADDRESS>:8080";
var webSocket = WS.connect(_WS_URI);

webSocket.on("socket/connect", function(session){
session.subscribe("conversation_realtime/sportspace581a1541590b21.14581077", function(uri, payload){
                    console.log(payload.message.text);
}
}

How can I realize it in swift in Starscream library? Can't find subscribing to rooms.

Starscream is WebSocket library providing the base RFC 6455. The Javascript library you are referencing is probably something like Socket.io, OpenTok.js, etc. that is built on top of WebSocket and has the concept of "rooms". You could use this library to build around whatever technology you are using on the JS side or see if there is an existing library for that. Starscream just does merely WebSockets which do not have rooms, namespaces or such.


docs(readme): update README.md

Description of change

copilot:all

Pull-Request Checklist

[ ] Code is up-to-date with the main branch
[ ] This pull request follows Contributing.md
[ ] This pull request links relevant issues as Fixes #0000
[ ] pre-commit run -a passes with this change
[ ] poetry run pytest passes with this change
[ ] There are new or updated unit tests validating the change
[ ] Documentation has been updated to reflect this change
[ ] The new commits follow conventions outlined in the conventional commit spec

Welcome to Codecov :tada:
Once merged to your default branch, Codecov will compare your coverage reports and display the results in this comment.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


[ci] bump gha versions and add dependabot

This PR bumps GHA versions to current ones.
Also added dependabot.yml to get notified about GHA updates automatically.
@Robbepop Do you want to add cargo versions monitoring to dependabot?

The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #441   +/-   ##
=======================================
  Coverage   79.38%   79.38%
=======================================
  Files          72       72
  Lines        6198     6198
=======================================
  Hits         4920     4920
  Misses       1278     1278

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Thanks a lot for the updating!

@Robbepop Do you want to add cargo versions monitoring to dependabot?

What would this imply exactly? Generally in the past I disliked bot-automated PRs.


consider replacing the get_bmi function

for "inclusivity" reasons

Good point - I thought about it few times, too. I will replace it.


Error when running CLV Quickstart

Problem Description
I've been trying to run the quickstart for CLV but the bgm.fit() returns an error.
I have used the same code and data from the example, as well as tried with my own data with same results.
Error Message
"
340 # globals, (look for code object in it's co_consts attribute..) and
341 # add the result to code_globals 342 if co.co_consts: IndexError: tuple index out of range
"
Environment
OS: Windows
Python version: 3.11.3
pymc-marketing==0.1.0
Thanks!!

I created a new environment with Python 3.9 and is running ok.

Thanks for checking out the package - glad it's working now. I'll close this issue, but just send us messages if there's anything else.


FixedTypo-ReadMe

verb did not agree with the subject

@kailwallin  how would you like to be referred to in the contributors list?

Maybe it's a peculiarly British thing to refer to companies in the plural, but "Browserstack, who provides..." sounds totally wrong to me - I'd only use that phrasing when talking about an individual person. "Browserstack, which provides..." might work, but still feels a bit odd.

@gasman  - just merged in, I felt it read ok with the change but happy to revise if needed.
https://github.com/wagtail/wagtail/commit/6a6555eb191b32e64de656605f9f5521dff07083
Thanks for the PR @kailwallin - let me know if you want the contributors name updated :)


Automated cherry pick of #6456: fix: cloudprovider list support filter by zone and cloudregion

Cherry pick of #6456 on release/3.2.
#6456: fix: cloudprovider list support filter by zone and cloudregion

Codecov Report

Merging #6457 into release/3.2 will decrease coverage by 0.02%.
The diff coverage is 0.35%.

@@               Coverage Diff               @@
##           release/3.2    #6457      +/-   ##
===============================================
- Coverage         7.05%    7.03%   -0.03%
===============================================
  Files              649      649
  Lines           111327   111499     +172
===============================================
- Hits              7856     7845      -11
- Misses          102862   103046     +184
+ Partials           609      608       -1

Flag
Coverage Δ

#aFlag
7.03% <0.35%> (-0.03%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/baremetal/manager.go
0.50% <0.00%> (-0.01%)
:arrow_down:

pkg/baremetal/tasks/baseprepare.go
0.00% <0.00%> (ø)

pkg/baremetal/tasks/bm_register.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/sharablebase.go
7.08% <0.00%> (-0.09%)
:arrow_down:

pkg/cloudcommon/policy/policy.go
1.50% <0.00%> (-0.06%)
:arrow_down:

pkg/compute/models/cloudaccounts.go
0.69% <0.00%> (-0.01%)
:arrow_down:

pkg/compute/models/cloudproviderregions.go
0.27% <0.00%> (-0.01%)
:arrow_down:

pkg/compute/models/cloudproviders.go
0.89% <0.00%> (-0.05%)
:arrow_down:

pkg/compute/models/dbinstanceresource.go
0.00% <0.00%> (ø)

pkg/compute/models/disks.go
0.53% <0.00%> (-0.01%)
:arrow_down:

... and 21 more

Continue to review full report at Codecov.

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


Invalid Requests

Everytime I tried to register to a new service, A notification told me there was a network error, so after installing a packet sniffer, I found out that the request sent by pushjet is invalid, and returns a 301, moved permanently.
A screenshot of these packets can be found here:
http://imgur.com/7pJ3gzo
Forgetting to put https at the front of the URL also causes this error (with cURL at least)

Are you using HTTP or HTTPS? The api will redirect you if you are using HTTP. I’ll add an error for this so that it’s a little bit more obvious.
Van: miyoyo<EMAIL_ADDRESS>Verzonden: Saturday, April 02, 2016 6:49 PM
Aan: Pushjet/Pushjet-Android<EMAIL_ADDRESS>Onderwerp: [Pushjet/Pushjet-Android] Invalid Requests (#5)
Everytime I tried to register to a new service, A notification told me there was a network error, so after installing a packet sniffer, I found out that the request sent by pushjet is invalid, and returns a 301, moved permanently.
A screenshot of these packets can be found here:
http://imgur.com/7pJ3gzo
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub https://github.com/Pushjet/Pushjet-Android/issues/5 https://github.com/notifications/beacon/ABF1a42bTm6Z-kufjCBdx7NXcul78pwNks5pzp4CgaJpZM4H-UlJ.gif

It seems like the application can't contact the server because of a 301 error, that could be fixed by talking to the server by Https, but the app can't do it.
This result in the app not working at all:
I can't subscribe to services
I can't fetch notifications
etc...

After further inspection, it seems that fetching messages does redirect OK, but it's impossible to subscribe to a service, as this is not redirected. Here is a screenshot of a packet sniffer, and you can see that there is only the "regular" http request, no encrypted one.
http://imgur.com/VvaW30c

Odd, is this the PlayStore build?

I'll be rolling out a new build tonight, hold tight!

I've got the message fetching to work by registering a new UUID to a service, then changing the UUID in the xml file to match the one I added
But the "push" still doesn't work, I still need to manually update it.

I'm having problems as well, trying to add a new service to my android phone using the PushJet app but replies with Network issue.

Same problems here

Can you please give us an update because the app completely unusable?

Hey, sorry for the delay. I've sadly been incredibly busy with work and college lately. I'm looking at it right now.

The issue should be fixed, I'm uploading a new APK to the play store in a minute. A new issue has been opened to address the core problem (#6).

Have not had time to sign the binary yet. For now a unsigned by is is available. Remember to back up your subscriptions. It should sync them with the server upon reinstalling but it's better to be safe then sorry.
https://my.mixtape.moe/hqjmwm.apk
I'm sorry for the delay but I sadly have an extremely busy life.

The delay is no problem, as you are not paid for this work
The fix works perfectly, and my subscriptions were kept after reinstalling
Thanks for fixing it!


Button balance off if Roboto is not used

When Roboto is not used (not used by default in the halfmoon CSS) the balance of the button element is off. An example of this is below, on the left is with Roboto enabled and on the right is without.

A quick way to test this is to load the buttons documentation page and toggle the documentation-styles-2.css body font-family on and off.
/* documentation-styles-2.css */
body {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

/* halfmoon.min.css */
body {
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
}

Hey, thanks for raising a detailed issue. May I ask, which browser are you using?
Also regarding Roboto, it is not meant to be used by default. Since Halfmoon is a framework, it is built to use the system font. I use Roboto on the documentation site as a fallback if Apple system fonts are not available. Of course, most people will probably choose different fonts for their sites.

The screenshot was taken from Windows 10 with Chrome, but I just tested in Firefox and it does the same.
I would expect the button text to be balanced/centered regardless of the font and not be reliant on a specific font.

That is exactly how fonts work though. Different fonts have different heights (even with the same font-size property). This post explains it really well: https://www.creativelive.com/blog/why-do-font-sizes-vary/
The buttons in Halfmoon have the following styles:

.btn {
  height: 3.2rem;
  line-height: 3.2rem;
}

This makes the text vertically centered, but the degree to which it appears vertically centered depends on the font-family being used. However, if someone can suggest a possible fix for this which I am not aware of, I am all ears.

That makes sense. It looks like leading-trim will help with this issue once it arrives.
Just to verify, as a user of this framework my options are to either use Roboto or write an override for the base halfmoon css to get the balance as expected for the font I use. Is this accurate?

No, because as I mentioned before, I really think it depends on your own perception, because the differences are tiny. For instance, I genuinely prefer the look of the buttons on on my Mac (where Apple system font is available). With Roboto, at least to me, the text looks one pixel above where it ideally should be. This is probably because I do most of the development on my Mac, so I am used to that look. If Roboto looks right to you, go for it, or you can override the base as you said.

Okay. Thanks for your input and communication on this perceived issue.


How to build flutter app on raspberry pi 4

Steps to Reproduce

The raspberry has 2022-09-22-raspios-bullseye-arm64.img.xz image as Operation System. The uname is "Linux raspberrypi 5.15.61-v8+ #1579 SMP PREEMPT Fri Aug 26 11:16:44 BST 2022 aarch64 GNU/Linux"
These are my steps:
pi@raspberrypi:~ $ flutter create my_app
Building flutter tool...
Waiting for another flutter command to release the startup lock...
Creating project my_app...
Running "flutter pub get" in my_app...
Resolving dependencies in my_app... (3.0s)
+ async 2.10.0
+ boolean_selector 2.1.1
+ characters 1.2.1
+ clock 1.1.1
+ collection 1.17.0
+ cupertino_icons 1.0.5
+ fake_async 1.3.1
+ flutter 0.0.0 from sdk flutter
+ flutter_lints 2.0.1
+ flutter_test 0.0.0 from sdk flutter
+ js 0.6.6
+ lints 2.0.1
+ matcher 0.12.14
+ material_color_utilities 0.2.0
+ meta 1.8.0
+ path 1.8.3
+ sky_engine 0.0.99 from sdk flutter
+ source_span 1.9.1
+ stack_trace 1.11.0
+ stream_channel 2.1.1
+ string_scanner 1.2.0
+ term_glyph 1.2.1
+ test_api 0.4.17
+ vector_math 2.1.4
Changed 24 dependencies in my_app!
Wrote 129 files.

All done!
You can find general documentation for Flutter at: https://docs.flutter.dev/
Detailed API documentation is available at: https://api.flutter.dev/
If you prefer video documentation, consider: https://www.youtube.com/c/flutterdev

But when I try to run the app I get this error
pi@raspberrypi:~/my_app $ flutter run
Launching lib/main.dart on Linux in debug mode...
ERROR: Compilation to SkSL failed.
/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag: warning: (version, profile) forced to be (460, core), while in source code it is (320, es)
/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag:9: error: '#include' : Included file not found. for header name: flutter/runtime_effect.glsl
/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag:93: error: 'FlutterFragCoord' : no matching overloaded function found
/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag:93: error: '=' :  cannot convert from ' const float' to ' temp 2-component vector of float'
ERROR: Target debug_bundle_linux-arm64_assets failed: ShaderCompilerException: Shader compilation of "/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag" to "/home/pi/my_app/build/flutter_assets/shaders/ink_sparkle.frag" failed with exit code 1.
/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag: warning: (version, profile) forced to be (460, core), while in source code it is (320, es)
/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag:9: error: '#include' : Included file not found. for header name: flutter/runtime_effect.glsl
/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag:93: error: 'FlutterFragCoord' : no matching overloaded function found
/home/pi/snap/flutter/common/flutter/packages/flutter/lib/src/material/shaders/ink_sparkle.frag:93: error: '=' :  cannot convert from ' const float' to ' temp 2-component vector of float'
Building Linux application...
Exception: Build process failed

This is my flutter doctor
pi@raspberrypi:~/my_app $ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, 3.7.0-13.0.pre.31, on Debian GNU/Linux 11 (bullseye) 5.15.61-v8+, locale en_GB.UTF-8)
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] Connected device (1 available)
[✓] HTTP Host Availability

! Doctor found issues in 3 categories.

Hint to the team: Similar conflicts were occurring to web samples recently. https://github.com/flutter/flutter/issues/115433

Closing this as a duplicate of https://github.com/flutter/flutter/issues/116703.


bug: ion-checkbox doesn't read correctly with iOS voiceover

Type: bug
Platform: ios 8 webview
With VoiceOver turned on in iOS, voiceover does not read an ion-checkbox as a checkbox, and doesn't read it's current state (checked or unchecked).  The root problem seems to be that the directive's template has
<label>
   <div>
      <input>

The <div> between the <label> and <input> seems to be what's breaking Voiceover.  Removing that <div> makes it read correctly.
Tested on iOS 8.1.3

Greetings @asselin!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!

Little hesitant to change anything so close to 1.0. Will revisit this post 1.0

Can you try with ion-checkbox?

@mlynch Sorry, I'm not following your request.  The issue was reported because I was using ion-checkbox.  Are you saying that the HTML that it expands to has been changed to fix this?

@asselin Hey! Is this still an issue with the latest version of Ionic? ionic 1.3.0?

Hello all! As it seems it has been a while since there was any activity on this issue i will be closing it for now. Feel free to comment if you are still running into this issue. Thanks for using Ionic!


Move detached to widgetbase

  detached() {
    if (this.widget) {
      this.widget.destroy();
    }
  }

Sounds good to me - can't see a reason not to destroy a widget automagically.


added ethereum price prediction project

this fixes #1249
Description
This project predicts Ethereum prices using machine learning models, specifically Random Forest and Extra Trees. The model leverages data sourced from an API(coingecko.com) over a 365-day period.
Features

Predicts Ethereum price based on historical data.
Uses machine learning algorithms (Random Forest and Extra Trees) for accurate predictions.

Screenshot of the final project

Checklist:

[ ] 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

Thanks for the update! The folder contains the whole project, so it might be large. Let me know if any adjustments are to be made.!

push that to the drive and adding deployment file would be fine. repo is already big. lfs cant handle this.


feat: Control return to confirm action

Thank you for your contribution to the Koda - Generative Art Marketplace.
👇 __ Let's make a quick check before the contribution.
PR Type

[x] Feature

Needs Design check

@exezbcz please review

Needs QA check

@kodadot/qa-guild please review

Context

[x] Closes #10213

Did your issue had any of the "$" label on it?

[x] My DOT address: Payout

Screenshot 📸

[ ] My fix has changed something on UI; a screenshot is best to understand changes for others.

bug or a feature :)
probably we should only allow that shortcut if the transaction has not started
CleanShot.2024-05-16.at.17.18.47.mp4
can useMagicKeys combinations give you a cleaner solution?

thank you very much for checking it @hassnian

bug or a feature :)
probably we should only allow that shortcut if the transaction has not started
can useMagicKeys combinations give you a cleaner solution?

Thank you! I have updated it.

What should be the correct behavior? working only for confirmation buttons on modals or also for trying again when a transaction is cancelled/fails?
Transfer: doesn't work on confirmation button prob because it uses a different modal
Teleport bridge: works on try again
Drop: works on modal and on try again
Create NFT/Collection: won't proceed to signing if you hit it once, i think it's a focus issue, doesn't work on try again
Buy Now: works for signing but doesn't for try again
Listing: works for signing but doesn't for try again

What should be the correct behavior? working only for confirmation buttons on modals or also for trying again when a transaction is cancelled/fails?

I prefer it only works for confirmation buttons on modal.

Transfer: doesn't work on confirmation button prob because it uses a different modal

Yup, it's a separate modal. However, I have also made the transfer confirm modal work with the shortcut. Now it should work as the others.

Teleport bridge: works on try again
Drop: works on modal and on try again
Create NFT/Collection: won't proceed to signing if you hit it once, i think it's a focus issue, doesn't work on try again
Buy Now: works for signing but doesn't for try again
Listing: works for signing but doesn't for try again

Only applying to the confirm button should be enough.
I can't manage to go to the page with "try again" button after I cancel the transaction request. It keeps loading all the time.
I would leave it to another follow-up issue if anyone else could reproduce it and fix it.

modal animation is gone
this pr
https://github.com/kodadot/nft-gallery/assets/44554284/ae5ba16f-7caf-46b3-92eb-530a476c1787
canary
https://github.com/kodadot/nft-gallery/assets/44554284/19daf17d-7c40-4b31-9da0-648cef8340de

rechecking PR:
on transfer, modal is being shown behind the other modal:
modal being shown behind.webm

still working for try again on teleport
create nft/collection: modal opens behind

buy now and listing are good

Thanks for all the comments above. I will close this PR and leave it to the other one who has a better solution.


video files became courrpeted after finishing download with 12 chunks

hi new issue ,  i tried in the past days to download video files with 12 chunks but after  download finished , i tried to play the video  i noticed that the video became corrupted in some places  ,  i tried the same file with 1 chunk , and i tried to play it after finishing download , the video played correctly without any issue , i think that there is issue in regrouping algorithm of chunks after finishing  , i hope to fix this issues soon because when i put the chunk to 1 the download speed became very slow

I check this feature and i have no issue

I have encountered the same question.when I load the video file which not support broken-point-resume download,causing every chunk loading a whole file.so if the file will be load many count.the result file which made by these files is error when playing it.i think,it should check the respond header which has the filed range-accept or not.

i faced this issue when trying to download this file , please can u check it for me i really want this issue to be resolved
http://www.spruto.tv/get_file/5/22874f2e0f80628c9f1061967ef1481d/116000/116379/116379.mp4
thx in advance

I tested a 200M LAN file size apk.
The original download about 30 seconds。
Use the lib, set 8 chunks, download time 15 seconds
But the merge chunks is completed a total 47 seconds
. .
How to speed up merge time?
@majidgolshadi

Use RandomAccessFile maybe resolve this issue?


Support for battery health for wired protects

Description
Hi
The old version also supported a status for the backup battery for wired nest protects. Is this something you can look at adding if its available?
Thanks
Device (optional)
No response
Additional information
No response

This should be possible, if the 'old version' has it as well. Did you use 'badnest' or 'homebridge-nest' before?
I have a wired nest protect as well, and I have a battery sensor present by the way. It is a binary sensor (Normal / Empty).

Ah, OK.
I now see that there are a whole host of other entities available that didn't immediately show up in the default views.
I'm happy for this request to be closed as the data is already available.
Does this just grab updates from API, so if a device does identify smoke HA won't show this until the next request to the API? Or does it also register for webhook pushes when certain events occur?
Thanks

Indeed, this integration uses the Home Assistant entity categories to divide the entities by type. In your default lovelace interface, you will only see the main entities by default.
The integration subscribes to new events, thus these should be almost instant. Since you have a wired protect, you can check this with the occupancy. These updates should be in in 3-5 seconds.


Could not find the declaration file for certain module.

Bug report
Description / Observed Behavior
POV: using Typescript
I was importing useSWRMutation from swr/mutation and the error occured:
(Besides mutation, immutable and infinite has the same problem)

and I dug a bit found out the directory(exports) in package.json might be given the wrong path.

Expected Behavior
How did you expect SWR to behave here?
Well, hope the type will work :D
Repro Steps / Code Example
SWR version: 2.0.0
simply just follow the tutorial and with this line of code:
import useSWRMutation from 'swr/mutation';

Additional Context
the current workaround: I copied the d.ts into local d.ts

and here's my tsconfig.json
{
  "compilerOptions": {
    "target": "esnext",
    "baseUrl": ".",
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noImplicitAny": true,
    "noEmit": true,
    "incremental": true,
    "esModuleInterop": true,
    "module": "esnext",
    "moduleResolution": "nodenext",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "jsx": "preserve"
  },
  "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "**/*.js"],
  "exclude": ["node_modules"]
}


Uncaught TypeError: Cannot assign to read only property 'exports' of object '#'

in dubbo admin ui
I did not make any changes, build the project directly. I can build successfully, but can not access, the following error occurs
Nodejs version：v12.13.0

BaseClient.js?e917:12 Uncaught TypeError: Cannot assign to read only property 'exports' of object '#'
at Module.eval (BaseClient.js?e917:12)
at eval (BaseClient.js:42)
at Module../node_modules/webpack-dev-server/client/clients/BaseClient.js (app.js:7498)
at webpack_require (app.js:727)
at fn (app.js:101)
at Module.eval (SockJSClient.js?810f:26)
at eval (SockJSClient.js:137)
at Module../node_modules/webpack-dev-server/client/clients/SockJSClient.js (app.js:7510)
at webpack_require (app.js:727)
at fn (app.js:101)

https://github.com/webpack/webpack-dev-server/issues/2010#issuecomment-552273249


De-duplicate error spam.

Prevent large amounts of duplicate error spam reaching the MessageQueue.
Helps address #84713 .
Notes

Simple solution for error spam within the same frame for discussion.
Toaster might deal with duplicates, but is preferable in some ways to prevent this before spam reaches the MessageQueue, so not to fill it up.
This won't deal with duplication of 2 or more error messages.
Could possibly pass the number of duplicates in the error message if desired (with some cunning).

This makes sense, but I suggest documenting this in the ERR_ and WARN_ macros that if you want messages in the same frame to be distinguished, they must differentiate themselves in some way (e.g. by inserting some context).

This makes sense, but I suggest documenting this in the ERR_ and WARN_ macros that if you want several errors from the same function in the same frame to be printed, they must differentiate themselves in some way (e.g. by inserting some context).

Good idea I'll do this. :+1:
(Although might be subject to change if we think of variations of how to do the de-duplication.)

Intriguingly, the tests failing seems not to be to do with the static lifetimes or lack of mutex, they are failing because l->errfunc() is not called in the case of a duplicate.
Maybe the tests are counting the number of errors or something... Still investigating.


what is the s dependency?

your readme says:
Option 2: Load manually
Please make sure you have these dependencies installed.
dash
s
editorconfig
dash and editorconfig ring bells to me, but what is s ? Can you provide a URL?

https://github.com/magnars/s.el

thanks. It wasn't obvious to me that these were Emacs packages (there are 'dash' and 'editorconfig' packages in Fedora)

@hanwen , "packages" here, and in any Emacs related document, is referring "Emacs package" (Melpa / Elpa). Never Linux distribution package. By the way, I recommend you to remove the Fedora 'dash' and 'editorconfig' you installed with yum or dnf, and do it with Emacs package manager


Can we use TagHelpers in the Grid?

I created a TagHelper to build a Bootstrap Popup on Hover e.g.,<PHONE_NUMBER> to show additional phone numbers;  When I use it as such:
columns.Add(m => $"<popup-phones unit-id='{m.ID}'>{m.PrimaryPhone}</popup-phones>").Encoded(false);
It does not seem to trigger the TagHelper and the results show<PHONE_NUMBER> with popup-phones html suppressed from view but visible when inspected in Html source.  The source does not show all the extra HTML created by the TagHelper.  As a test, The TagHelper worked outside of the grid using  <popup-phones unit-id='100'>123-345-4567</popup-phones> on its own.
Is there an option I need to use to force the TagHelper to trigger?

No tag helper won't work on a string. It works by injecting C# code into a razor file if a tag falls under a tag helper rules, that's why it can not work as a grid column which is just a string value.


Need a unix-compatible release to the gallery

This is required for https://github.com/PowerShell/PowerShell/pull/2743
Current gallery version produces the following errors on unix (among others)
[-] Validate that relative path can be specified as Path parameter of Compress-Archive cmdlet 205ms
      Exception calling "Substring" with "2" argument(s): "StartIndex cannot be less than zero.
      Parameter name: startIndex"
      at line: 348 in /home/travis/build/PowerShell/PowerShell/test/powershell/Modules/Microsoft.PowerShell.Archive/Pester.Commands.Cmdlets.Archive.Tests.ps1
    [-] Validate that relative path can be specified as LiteralPath parameter of Compress-Archive cmdlet 61ms
      Exception calling "Substring" with "2" argument(s): "StartIndex cannot be less than zero.
      Parameter name: startIndex"
      at line: 360 in /home/travis/build/PowerShell/PowerShell/test/powershell/Modules/Microsoft.PowerShell.Archive/Pester.Commands.Cmdlets.Archive.Tests.ps1
    [-] Validate that relative path can be specified as DestinationPath parameter of Compress-Archive cmdlet 54ms
      Exception calling "Substring" with "2" argument(s): "StartIndex cannot be less than zero.
      Parameter name: startIndex"
      at line: 372 in /home/travis/build/PowerShell/PowerShell/test/powershell/Modules/Microsoft.PowerShell.Archive/Pester.Commands.Cmdlets.Archive.Tests.ps1

Full build log: https://travis-ci.org/PowerShell/PowerShell/builds/190414570

@anmenaga can you look into this?

Added unix-compatible release to the gallery;
Verified on PS "v6.0.0-alpha.17" on ubuntu 16.04:
Install-Module -Name Microsoft.PowerShell.Archive -Force -Scope CurrentUser


Section added to README.md giving a high level of Circus Train extens…

Section added to README.md giving a high level of Circus Train extensions that are publicly available, namely
https://github.com/ExpediaInceCommercePlatform/circus-train-datasqueeze
https://github.com/HotelsDotCom/circus-train-bigquery

Coverage remained the same at 75.221% when pulling 3388ece8528462354f30e76e52bdbbc308d2ee75 on saktheeshb:downstream-reference into ecc80dbc73cb28191e8ce86a148710ecbe69cc91 on HotelsDotCom:master.

Fixes #117.
Thanks for the contribution @saktheeshb


add test to folder structure support for specs

Adding folder structure test that was fixed in a previous PR

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


build(deps): upgrade to Netty 4.1.60.Final

https://netty.io/news/2021/03/09/4-1-60-Final.html
https://netty.io/news/index.html

WDYT? @carl-mastrangelo

Hey, I ended up bumping this to 4.1.62.   There was a CVE I was working on with the Netty team, and wanted to remain quiet about it until the release.    Thanks for putting this PR together, but I ended up pushing the newer version a few minutes ago.


CricleCI Plugin - Feature: Trigger pipeline

Feature Suggestion
The CircleCI plugin is a great tool to visualize recent builds and provides the option to re-run builds. What I and my team feel is missing is an option to actually trigger the pipeline based on specific parameters. To better explain this feature: In our Circle config, we have certain workflows that can be triggered from Slack for instance, which is just based on some environment parameter in Circle. Having this option, CircleCi users in Backstage would have the flexibility to trigger pipelines and workflows that they want without having to base it on being triggered of a specific commit & push action.
Possible Implementation
A similar implementation that CircleCi uses today with the "Trigger Pipeline" button.
https://support.circleci.com/hc/en-us/articles/360050351292-How-to-trigger-a-workflow-via-CircleCI-API-v2
Context

This sounds like a good enhancement, is this something that you want to help out and build? 🙏

@benjdlambert  Could start looking into it when I have some time over :)
Another "feature" or visualization improvement would be to include tasks that haven't started, and in addition to include "approval" steps which is a feature that CricleCI provides.

So, as shown in the picture, only the job that has actually started/completed will be visible in the plugin, and the approval step is also excluded to trigger the next job.
Should I describe this in a separate issue or extend the feature here? :)

I think a seperate issue could be good, in case someone else can contribute the other work and it
keeps the PR's smaller.

@benjdlambert I'd love to work on this enhancement! Let me know if it's still open. Thanks

Assigned!

@benjdlambert The current CircleCI SDK we're using is still on the v1 API which will be deprecated within the next year. In order to trigger a pipeline, we need to use the v2 API which the sdk doesn't support.
The workaround until we migrate the entire service to the v2 API is to trigger a new build job which is available in the current SDK. The only challenge with this is that pipelines/workflows can't be triggered.
As for migration to v2, we could generate all of the typescript types using their OpenAPI spec, and use a rest client to make the calls to their v2 API. I am open to working on this as well, I just don't know if I have time as this is a much larger task.
What are your thoughts?

Yeah it seems we're a little stuck until there's any progress on this https://github.com/worldturtlemedia/circleci-api/issues/228 by the looks of things. If you could get the v2 stuff underway and maybe help push that issue along then we can migrate to that API instead. I think just do the best you can right now, and let's see where we get. It's a little tricky always with these dependencies, so making a link out to CircleCI so users can do things there could also be an option if we get stuck,


Arcane Recovery with multiclass uses character level instead of Wizard level

Arcane Recovery should allow a wizard to recover a number of level-spell slots equal to half his wizard level. However, the game currently uses the character level.
For example, a Fighter 12/Wizard 2 should have only 1 spell slot to recover, but Arcane Recovery allows recovery of 7 spell slots.

Care share your save?

I'll have to create a new one - I'm in a multiplayer game and another player handles the save games. But I reproduced the issue locally. I'll generate one and attach it here.

@ThyWoof here is a save file.
ArcaneRecoveryBug.zip

I used all wizard spells on above save but not getting offered any arcane recovery. this is strange. Mod has been handling Arcane Recovery under MC for years now.
Can you confirm you get the arcane recovery prompt on short rest?

cannot reproduce on a Wizard/Figher

cannot reproduce on a Rogue/Wizard

not sure why it's not working for you. Care share your settings file?

Cool and sorry as I’m a single developer working on a mod that is huge. Will take a look why this stopped working as it’s implemented back in 2022.

No problem - thanks for doing this! Plus, it's not even like it was game breaking! :)

check #4279 for an updated DLL with this fix in case you wanna confirm on your end.


TiProxy keeps reporting errors for HAProxy health check

Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)

Start HAProxy and set the health check port to 6000 of TiProxy
Start TiProxy

2. What did you expect to see? (Required)
No errors in TiProxy
3. What did you see instead (Required)
TiProxy keeps reporting:
[2024/02/28 15:43:14.752 +08:00] [WARN] [main.proxy] [proxy/proxy.go:206] [failed to set tcp keep alive option] [connID=15] [client_addr=<IP_ADDRESS>:62842] [addr=<IP_ADDRESS>:6000] [error="failed to set keepalive and timeout: set tcp [::7f00:1]:6000-><IP_ADDRESS>:62842: setsockopt: invalid argument"]
[2024/02/28 15:43:15.157 +08:00] [WARN] [main.proxy] [proxy/proxy.go:206] [failed to set tcp keep alive option] [connID=16] [client_addr=<IP_ADDRESS>:62845] [addr=<IP_ADDRESS>:6000] [error="failed to set keepalive and timeout: set tcp <IP_ADDRESS>:6000-><IP_ADDRESS>:62845: setsockopt: invalid argument"]
[2024/02/28 15:43:20.757 +08:00] [WARN] [main.proxy] [proxy/proxy.go:206] [failed to set tcp keep alive option] [connID=17] [client_addr=<IP_ADDRESS>:62855] [addr=<IP_ADDRESS>:6000] [error="failed to set keepalive and timeout: set tcp <IP_ADDRESS>:6000-><IP_ADDRESS>:62855: setsockopt: invalid argument"]
[2024/02/28 15:43:23.164 +08:00] [WARN] [main.proxy] [proxy/proxy.go:206] [failed to set tcp keep alive option] [connID=18] [client_addr=<IP_ADDRESS>:62862] [addr=<IP_ADDRESS>:6000] [error="failed to set keepalive and timeout: set tcp [::7f00:1]:6000-><IP_ADDRESS>:62862: setsockopt: invalid argument"]

4. What is your version? (Required)

master

I have also reproduced the issue.
it's because the haproxy already reset the connection when tiproxy set tcp keepalive  and i write a simple server as haproxy backend server for test, the code as below

package main

import (
	"bufio"
	"fmt"
	"log"
	"net"
	"time"
)

func main() {
	listener, err := net.Listen("tcp", fmt.Sprintf("%s:%s", "<IP_ADDRESS>", "6000"))
	if err != nil {
		log.Fatal(err)
	}
	defer listener.Close()

	for {
		conn, err := listener.Accept()
		if err != nil {
			fmt.Printf("Error accepting connection: %v\n", err)
		}
		fmt.Printf("Message incoming: %s\n", conn.RemoteAddr())
		go func(conn net.Conn) {
			defer conn.Close()
			tcpcn, ok := conn.(*net.TCPConn)
			if !ok {
				fmt.Printf("not tcp connection\n")
				return
			}

			if err := tcpcn.SetKeepAlive(true); err != nil {
				fmt.Printf("failed to set keep alive: %v\n", err)
			}

			deadline := time.Now().Add(1 * time.Second)
			conn.SetReadDeadline(deadline)
			reader := bufio.NewReader(conn)

			for {
				message, err := reader.ReadString('\n')

				if err != nil {
					conn.Close()
					fmt.Printf("Error reading message: %s\n", err)
					return
				}
				fmt.Printf("Message incoming: %s", string(message))
				conn.Write([]byte("Message received.\n"))
			}
		}(conn)
	}
}

the server std print looks like
failed to set keep alive: set tcp <IP_ADDRESS>:6000-><IP_ADDRESS>:62435: setsockopt: invalid argument
Error reading message: read tcp <IP_ADDRESS>:6000-><IP_ADDRESS>:62435: read: connection reset by peer
Message incoming: <IP_ADDRESS>:62438
failed to set keep alive: set tcp <IP_ADDRESS>:6000-><IP_ADDRESS>:62438: setsockopt: invalid argument
Error reading message: read tcp <IP_ADDRESS>:6000-><IP_ADDRESS>:62438: read: connection reset by peer
Message incoming: <IP_ADDRESS>:62439
failed to set keep alive: set tcp <IP_ADDRESS>:6000-><IP_ADDRESS>:62439: setsockopt: invalid argument
Error reading message: read tcp <IP_ADDRESS>:6000-><IP_ADDRESS>:62439: read: connection reset by peer

We have to read or write to the TCP connection if we want to figure out the TCP connection status.


Fix Typo

Stafeful with a single L, in the CLI help users might get confused otherwise.

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

Nice catch, thank you!


Sorry for the simple question.Where I can find the data capture control?

Below is the Data Capture Control window, which allows you to pick the desired path to the dataset and load the class label file that you created above, and then presents options for selecting the current object class and train/val/test set that you are currently collecting data for:
I can't find where it is

It should automatically pop up when you start the camera-capture tool, like shown here:  https://youtu.be/2XMkPW_sIGg?t=603
Typically it is in the top-right corner of the screen.  Do you have a monitor attached to your Jetson?


consider new informative names for DM parameters

See more comments in #183 . Here is one suggestion:
Couldn't you use a delimiter and just paste the fleets together if there are multiple? e.g., ln(DM_theta)_Age_P7(2-3-4)
For what it is worth, I like the correct mathematical notation of ln(DM_theta) because it helps the visually impaired when a screen reader is reading the output. I think there are ways in tidyverse to accommodate the parenthesis, at least you can with backticks but I think there are other ways as well.
Originally posted by @kellijohnson-NOAA in https://github.com/nmfs-stock-synthesis/stock-synthesis/issues/183#issuecomment-861718915

relates to #266

I started into implementing the more informative names with the code for MV Tweedie.  Some aspects of the proposed names get complicated.  I do not see an easy way to list in the name all the fleets that use that parameter.

Could we just expand the Length_Comp_Fit_Summary and Age_Comp_Fit_Summary outputs to include columns for the parameter labels?
Perhaps you've already implemented changes to this table for MV Tweedie, but it occurs to me that it could be expanded from this status-quo format:
Age_Comp_Fit_Summary |   |   |   |   |   |   |   |   |   |   |   |   |
-- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | --
Factor | Fleet | Recommend_var_adj | # | N | Npos | min_Nsamp | max_Nsamp | mean_Nsamp_in | mean_Nsamp_adj | mean_Nsamp_DM | DM_theta | mean_effN | HarMean_effN | Curr_Var_Adj | Fleet_name
5 | 1 | 1 | # | 47 | 47 | 13 | 1440 | 473.255 | 473.255 | 215.072 | 0.829148 | 1273.44 | 70.6253 | 1 | Fishery
5 | 2 | 1 | # | 14 | 14 | 46 | 105 | 69.5 | 69.5 | 64.3659 | 12.3422 | 284.77 | 32.8397 | 1 | Acoustic_Survey
to something like
Age_Comp_Fit_Summary |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
-- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | --
Factor | Fleet | Recommend_var_adj | # | N | Npos | min_Nsamp | max_Nsamp | mean_Nsamp_in | mean_Nsamp_adj | mean_Nsamp_DM | weight_par1 | weight_par2 | weight_Label1 | weight_Label2 | mean_effN | HarMean_effN | Curr_Var_Adj | Fleet_name
5 | 1 | 1 | # | 47 | 47 | 13 | 1440 | 473.255 | 473.255 | 215.072 | 0.829148 | NA | ln(DM_theta)_1 | NA | 1273.44 | 70.6253 | 1 | Fishery
5 | 2 | 1 | # | 14 | 14 | 46 | 105 | 69.5 | 69.5 | 64.3659 | 12.3422 | NA | ln(DM_theta)_2 | NA | 284.77 | 32.8397 | 1 | Acoustic_Survey
where both weight_Par and weight_Label values would be NA for the multinomial likelihood, the 2nd one would be NA for the DM, and both would have meaning for the MV Tweedie.
That would make it easy to match each fleet with the parameter.

Good suggestion Ian.

Realizing that the addition of the 2 parameter Tweedie causes problems for the logic of the current indexing approach, which refers to parameter number.  Revise the indexing approach to refer to method no., and for each method create index to the parameters it uses.  This will be backward compatible as parameter and method are synonymous when only 1 parm per method.


Add logging to determine root causes. This is not expected to remain

If this is not expected to remain, perhaps it's "debug" level info, and we can only write it to the logs when the log level is set to a debug level?  Something like that?


SKU Recommendations for Az SQL MI

Hello!
No issue, but I was wondering if this process could be run against an existing Azure SQL VM and/or Azure SQL MI to determine SKU recommendations?
Thanks for your insight!

Hello!
No issue, but following up regarding my previous question:
I was wondering if this process could be run against an existing Azure SQL VM and/or Azure SQL MI to determine SKU recommendations?
Thanks for your insight!


Implement BIFSG and FirstName models; increment version to 1.1.0

Will implement #12
In this PR the following have been done:

Implement a .ipynb to pull first name demographic data from the referenced data set in the BIFSG scientific paper.
Implement a first name model off of that data
Implement a BIFSG model by combining the first name, surname, and geocode models as indicated by the BIFSG paper
Updated CLI and GUI to include the 2 new models
Updated documentation with usages and references
Implement testing for first name model and BIFSG model with parity to existing testing
Updated testing for CLI and GUI to cover new functionality
Fix a few small spelling errors
Fix a bug in some of the older tests where the tests would always pass due to comparing identical result sets every time.

Please let me know of any questions or comments you may have. I will likely be writing up an article on my usage of this new functionality soon to identify racial disparities in a dataset I was analyzing. I'd like to link back to this wonderful library for others to replicate my results. :)

Well that escalated quickly ... :)
Thanks for your efforts. Will review presently and touch base in the next couple days.
Quick administrative ask: can you confirm that you are releasing your code under the MIT license? I am OK with you keeping copyright to your code and will document accordingly in license/documentation/PyPI.

Well that escalated quickly ... :)
Thanks for your efforts. Will review presently and touch base in the next couple days.
Quick administrative ask: can you confirm that you are releasing your code under the MIT license? I am OK with you keeping copyright to your code and will document accordingly in license/documentation/PyPI.

Yes absolutely MIT is fine. :)

Yes absolutely MIT is fine. :)

@TheCleric , good afternoon.
Wrapping up review. This is dynamite--thank you for adding your code and fixing mine at the same time. Question:
Within test_cli.py, you enhanced the functionality of the _compare() method by allowing it to tack keyword arguments onto the end of the subprocess args:
subprocess_commands.extend([command for kvp in [[f'--{key}', kwargs[key]] for key in kwargs.keys()] for command in kvp])
This is brilliant and super-helpful, but I can see my future self staring at this code slack-jawed trying to remember what it does. Can you confirm the dumbed-down version is functionally equivalent?
            # Convert kwarg key, value pairs to optional arguments e.g. ['--surname_column', 'custom_surname_col_name']
            argument_pairs = [
                [f'--{key}', value]
                for key, value
                in kwargs.items()
            ]
            # Add them to the subprocess arguments
            for argument_pair in argument_pairs:
                subprocess_commands.extend(argument_pair)

@TheCleric , good afternoon.
Wrapping up review. This is dynamite--thank you for adding your code and fixing mine at the same time. Question:
Within test_cli.py, you enhanced the functionality of the _compare() method by allowing it to tack keyword arguments onto the end of the subprocess args:
subprocess_commands.extend([command for kvp in [[f'--{key}', kwargs[key]] for key in kwargs.keys()] for command in kvp])
This is brilliant and super-helpful, but I can see my future self staring at this code slack-jawed trying to remember what it does. Can you confirm the dumbed-down version is functionally equivalent?
            # Convert kwarg key, value pairs to optional arguments e.g. ['--surname_column', 'custom_surname_col_name']
            argument_pairs = [
                [f'--{key}', value]
                for key, value
                in kwargs.items()
            ]
            # Add them to the subprocess arguments
            for argument_pair in argument_pairs:
                subprocess_commands.extend(argument_pair)

Yes, that's probably easier to understand for future devs. 😃
Oh, and good job using .items() instead. Always forget about that function. 😆

Yes, that's probably easier to understand for future devs. 😃
Oh, and good job using .items() instead. Always forget about that function. 😆

Evening, @TheCleric .
I'm tapping out for today, so I wanted to give you a status update.
Everything seems to be working. At your convenience would you please clone my surgeo/dev repo, install, and run the unittests on your machine? Comments on changes are also welcomed if you're so inclined.
Working plan as of right now:

Do some manual user acceptance testing on GUI/CLI in case I missed anything;
Make sure my addition to default arguments in the CLI module didn't break things;
Understand the journal article and run BIFSG data up against the example in the journal article to make sure we're consistent;
Accept your pull request;
Merge my changes from my dev branch;
Upload package to PyPI;
Create a Github release; and,
Create/upload binary installer Windows installer to Github.

Evening, @TheCleric .
I'm tapping out for today, so I wanted to give you a status update.
Everything seems to be working. At your convenience would you please clone my surgeo/dev repo, install, and run the unittests on your machine? Comments on changes are also welcomed if you're so inclined.
Working plan as of right now:

Do some manual user acceptance testing on GUI/CLI in case I missed anything;
Make sure my addition to default arguments in the CLI module didn't break things;
Understand the journal article and run BIFSG data up against the example in the journal article to make sure we're consistent;
Accept your pull request;
Merge my changes from my dev branch;
Upload package to PyPI;
Create a Github release; and,
Create/upload binary installer Windows installer to Github.

All unit tests pass for me on your dev branch.
Only question/comment on your commits:
Was the addition of files.txt with your local paths on purpose?
Otherwise looks good!

All unit tests pass for me on your dev branch.
Only question/comment on your commits:
Was the addition of files.txt with your local paths on purpose?
Otherwise looks good!

Defenitely an error. Good catch, thanks.
When I get home from work I'll start to burn through the remaining items on this list.

Defenitely an error. Good catch, thanks.
When I get home from work I'll start to burn through the remaining items on this list.

One other thing I think I made a mistake on is what it does if it doesn't find a first name. As of right now it looks like it returns NaN, but it should probably revert to the 'ALL OTHER FIRST NAMES` entry for its probabilities.

One other thing I think I made a mistake on is what it does if it doesn't find a first name. As of right now it looks like it returns NaN, but it should probably revert to the 'ALL OTHER FIRST NAMES` entry for its probabilities.

Looks like it could affect surnames as well. Hope to have a fix in this PR shortly.

Looks like it could affect surnames as well. Hope to have a fix in this PR shortly.

@TheCleric , do you think you will have further changes for v.1.1.0? If not I will go merge and close #12 .
If you want me to hold off that's equally fine--just wanted to make sure you weren't waiting on me.

@TheCleric , do you think you will have further changes for v.1.1.0? If not I will go merge and close #12 .
If you want me to hold off that's equally fine--just wanted to make sure you weren't waiting on me.

No, I think this is done on my end!

No, I think this is done on my end!


[feature] Automatically open threads for messages in specific channels

Purpose of pull request
Related Issue: resolves #157

Automatically opens a new thread for career questions
Automatically opens a new thread for valid resume review submissions

Checks if a resume review submission has an image or PDF, otherwise deletes it

Pull request checklist

[x] Branch and PR are named correctly
[x] Updated relevant documentation
[x] Tested with a tester bot
[x] Wrote unit tests for changes

NOTE: Please do not merge this before merging into these two PRs

Upgrade Discord.js to v13: #161
Small PR to fix linting not working on Windows: #163

Screenshots
Career Questions:

Resume Review:

Testing instructions

Run unit tests using yarn test
Set up locally and designate two channels, one as a career question channel and one as a resume review channel to test manually

Made a new revision with the following changes:

Replies to a top-level comment/thread will be auto-deleted
Deleted replies will have their message contents AND attachments sent to the user as a direct message

Added code to handle the edge case where the content length is >2000 characters

Made a new revision adding support for hiring and share your question channels along with some unit tests. Verified that the current functionality for career questions and resume review still works:

Can you try pull and merge with development branch?


Make Dashboard page interactive

All links on page should do something.
Be creative!

Whoever completes this task, please be aware that the PR is present https://github.com/epicmaxco/vuestic-admin/pull/654


Revert "Update Production for presentation"

Shame on me, I did a squash merge again 🙈
Reverts hpi-swt2/workshop-portal#611

Coverage remained the same at 100.0% when pulling 79094650ee4ad05f46d8286029dcab202f46a9d9 on revert-611-dev into 37f0528ab4c9d337a2d6726ac60724d5b8059f3f on production.


chore(terraform): public ssh key

Update the public ssh key variable to take the file path rather than the
content of the file. This now behaves in the same way as the private ssh
key variable.

bors merge


swipeleft, swiperight, swipeup, swipebottom don't work on Chrome 29 for Android

I've been working on a simple swipe menu for a webapp of mine using Hammer.js while I noticed that the swipe events I've mentioned in the title don't get fired (can't debug because I have some adb issues with the drivers and windows 8.1). It only happens in Chrome for Android while the default Browser for android 4.1 works fine.
Hammer.JS - v1.0.5, Chrome 29 for Android
tested this in 2 Android devices: Archos Platinum 50 (phone), HP Touchpad (tablet).

using panleft panright worked for me. swipeleft and swiperight do not work.

Same issue here, still persists in Chrome 87 (swipeleft, swiperight). I can use HammerJS in Chrome on desktop, but when I open DevTools and switch to the mobile layout, the actions don't get registered.
When I put touch-action: pan-y; in the touch area, it works.  This works for Chrome 87 as of 08. 01. 2021. My specific use case was to show sidebar on horizontal swipe on Android devices, so if anyone is looking for a solution, putting touch-action: pan-y; in the HTML, body tag (or the element you want to use gestures at). Other solutions (such as preventDefault() didn't work for me), and I haven't tested it with horizontal scrolling, so I am not sure if it works.
So, as for HammerJS, possible solution might be to assign a touch-action CSS to the element that listens for gestures?

Same issue here, still persists in Chrome 87 (swipeleft, swiperight). I can use HammerJS in Chrome on desktop, but when I open DevTools and switch to the mobile layout, the actions don't get registered.
When I put touch-action: pan-y; in the touch area, it works.  This works for Chrome 87 as of 08. 01. 2021. My specific use case was to show sidebar on horizontal swipe on Android devices, so if anyone is looking for a solution, putting touch-action: pan-y; in the HTML, body tag (or the element you want to use gestures at). Other solutions (such as preventDefault() didn't work for me), and I haven't tested it with horizontal scrolling, so I am not sure if it works.
So, as for HammerJS, possible solution might be to assign a touch-action CSS to the element that listens for gestures?


Module not found: support/underscore

Hello !
I was trying to use Melkor on a Windows (7, x64) machine, but ran into this error message:
Error: Module not found: support/underscore
    at Object.loader.load (C:\Users\dev\Desktop\wiki\node_modules\melkor\node_modules\waigo\src\loader.js:255:11)
    at Object.<anonymous> (C:\Users\dev\Desktop\wiki\node_modules\melkor\node_modules\waigo\src\application.js:14:15)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.loader.load (C:\Users\dev\Desktop\wiki\node_modules\melkor\node_modules\waigo\src\loader.js:269:10)
    at exports.init (C:\Users\dev\Desktop\wiki\node_modules\melkor\index.js:26:19)

Any Idea ?
Thx

Try doing npm install again, looks like underscore is missing.

May be related to #13

I'm having an identical problem with the latest on the same platform, Win7/64. Double checked to make sure underscore was installed, even installed it where I want Melkor to run, but no luck. I sorted through the error, and I don't see any way for the underscore.js in waigo/src/support to actually find an instance of underscore as it's installed in NPM, but then again, I don't know anything about Node.js in the first place. It just looks to me like waigo/src/application.js:13-14 is looking in the wrong place for it or something. Please advise, I'd love to have Melkor running.

It's hard for me to figure this one out since I'm running OS X. Have any other windows users managed to get it working? I'm also wondering whether this is due to use of / rather than \.

Maybe I'll should get a VM up and running for this.


v1.3: PHPStan fails in Travis

Haven't modified anything in the Travis / PHPStan configs, PluginSkeleton v1.3.5:
$ vendor/bin/phpstan analyse -c phpstan.neon -l max src/
In XmlServiceMapFactory.php line 25:

  Container tests/Application/var/cache/test/ApplicationTestDebugProjectConta
  iner.xml not exists

analyse [-c|--configuration CONFIGURATION] [-l|--level LEVEL] [--no-progress] [--debug] [-a|--autoload-file AUTOLOAD-FILE] [--error-format ERROR-FORMAT] [--errorFormat ERRORFORMAT] [--memory-limit MEMORY-LIMIT] [--] [<paths>]...
The command "vendor/bin/phpstan analyse -c phpstan.neon -l max src/" exited with 1.

Same issue happens here: https://travis-ci.org/Sylius/PluginSkeleton/jobs/463241133

I have to use this path in my most recent plugin:
container_xml_path: tests/Application/var/cache/test/ApplicationTests_StefanDoorn_SyliusSeoUrlPlugin_Application_KernelTestDebugContainer.xml

Here is the same. Setting the proper container_xml_path in the phpstan.neon does the job, thank you @stefandoorn!
Anyway I'm not sure how we should fix it at plugin skeleton level. The problem is that the new name is different for every plugin so if we change the phpstan.neon here in the skeleton then we have to add some documentation in the README.md to say that that configuration must be adjusted when the plugin name changes.
Maybe @pamil and/or @Zales0123 have some thoughts about this.


The player has an inconsistent look in different browsers

Hi,
Attached are the screens of the player in different browser.
Chrome:

Firefox:

Safari:

Curious to know why it looks inconsistent and if there is a workaround to make it look the same.
Thanks

I'd imagine the difference is due to the each browser having it's own design for controls when you don't specify your own custom controls. Here are two links for building your own custom controls:

https://developer.mozilla.org/en-US/Apps/Fundamentals/Audio_and_video_delivery/cross_browser_video_player
http://blog.teamtreehouse.com/building-custom-controls-for-html5-videos

@DVassilev would you suggest to make a custom component that will render the

play/pause button
"timeline"
volume control
download icon
this way through css one can ensure the styling is consistent?

@zverbatim If that's what you want to do, sure

@DVassilev probably i'll have to make my own component. This one relies on <audio> tag.
Example:
<audio preload="auto" controls="" webkit-playsinline="" src="audio.wav" style="width: 100%; height: 100%; display: block;"></audio>

Any raw video/audio URL passed in to ReactPlayer is played using native <video> or <audio> elements to let each browser load and display the media as they see fit. The difference you see is simply a result of each browser's native controls looking different.
This has the advantage of avoiding any bugs or constraints of custom controls (eg how would you support Safari's AirPlay with custom controls?), but you can always use controls={false} and render your own using some sort of internal state (like the demo page). The library is deliberately flexible in this regard and gives you the freedom to control it (or not control it) as you wish.


Use correct trash path with sudo

https://github.com/sindresorhus/trash/issues/21

And it's not? :p If you sudo you're temporarily the root users, which means it goes to the root users trash.
Though I do agree it's not optimal. I'm honestly not sure how we would fix this as I'm just calling the native trash method.
Suggestions?

Yeah, I haven't been able to test it as sudo but it sounds like the expected behavior for me too.

It's the expected behavior, but not the wanted.


Implement "drop table" functionality

Acceptance criteria
"DROP TABLE IF EXISTS table_name CASCADE CONSTRAINTS" is implemented.

Closed with #42


lineClamp with values 1,2,1 & 2 not working as expected

Description
Hello,
So I was testing lineClamp in panda and when I provide both 1 and 2 as number or even string, the values are bing translated to 1px or 2px, the expected behaviour is to be just a number.
Link to Reproduction
https://codesandbox.io/p/github/omarkhatibco/pandacss-test/main?file=%2Fsrc%2FApp.tsx%3A1%2C1&layout=%257B%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522panelType%2522%253A%2522TABS%2522%252C%2522id%2522%253A%2522clj3g2y4k000b3b6nca8rhglx%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522panelType%2522%253A%2522TABS%2522%252C%2522id%2522%253A%2522clj3g2y4k000d3b6npw8t91vd%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%252C%2522sizes%2522%253A%255B50%252C50%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522clj3g2y4k000b3b6nca8rhglx%2522%253A%257B%2522id%2522%253A%2522clj3g2y4k000b3b6nca8rhglx%2522%252C%2522activeTabId%2522%253A%2522clj68o72000613b6oi5qawc4e%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clj3g2y4k000a3b6ne53qyvb8%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Ftsconfig.node.json%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%252C%257B%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Fsrc%252FApp.tsx%2522%252C%2522id%2522%253A%2522clj68o72000613b6oi5qawc4e%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%252C%257B%2522id%2522%253A%2522clj7ma6l000603b6nvsblxl9s%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TERMINAL%2522%252C%2522shellId%2522%253A%2522clj7ma6u7005cfwgn8ts8gj5d%2522%257D%252C%257B%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Fstyled-system%252Frecipes%252Fbutton-recipe.mjs%2522%252C%2522id%2522%253A%2522cljata9m400gc3b6n26dfc20h%2522%252C%2522mode%2522%253A%2522temporary%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%255D%257D%252C%2522clj3g2y4k000d3b6npw8t91vd%2522%253A%257B%2522id%2522%253A%2522clj3g2y4k000d3b6npw8t91vd%2522%252C%2522tabs%2522%253A%255B%257B%2522type%2522%253A%2522TASK_LOG%2522%252C%2522taskId%2522%253A%2522dev%2522%252C%2522id%2522%253A%2522clj3g527g00h73b6nc0l440p1%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522TASK_PORT%2522%252C%2522taskId%2522%253A%2522dev%2522%252C%2522port%2522%253A5173%252C%2522id%2522%253A%2522clj3g55w900na3b6n5jyzb1zg%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522path%2522%253A%2522%252F%2522%257D%255D%252C%2522activeTabId%2522%253A%2522clj3g55w900na3b6n5jyzb1zg%2522%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D
Steps to reproduce
Check styled.p component
JS Framework
React TS
Panda CSS Version
0.4.0
Browser
Latest
Operating System

[X] macOS
[ ] Windows
[ ] Linux

Additional Information
No response

Duplicate of #818
Fix already in; we'll release an update shortly.


Feature: Deploy to scoop for easy installation on Windows

API
Other
Description
Please consider adding Kuzu to scoop.sh
It would make it more discoverable to the general public and easier for end users to install / maintain.
Thanks.

Hi @Orcomp, that seems like a reasonable feature. We will look into this and prioritize accordingly. Thanks for posting!


Extract prisms into a dictionary, not an array

Right now in the get_prism_json function I extract all the prisms and put them into an array. Instead, I want a dictionary of prism dictionaries each with a key value equal to prism_id

where is the function

@Harshal662 I believe everything is on the dev branch. https://github.com/daGoodenough/bolt12-prism/blob/dab138746d5d34da677066c05d4f0266706f6603/prism-plugin.py#L81

Or are u merging branches?

I'll let @daGoodenough answer for sure, but I think we're developing full BOLT12 functionality dev (merging into dev). This issue really only applies to the dev branch. I'm new to github. Is there a way to specify a branch that an issue applies to?

@Harshal662 Okay sorry about that, should be good to go in the main branch. its the get_prism_json function. Currently only used in deleteprism.
If you want to just submit a PR for the get_prism_json function go for it, otherwise it would be awesome if you add a unique ID to each prism when the createprism method is called. This would then be used like so:
prisms: {
 prism1: {
   id: prism1
   },
}

Also, there should be an option to pass offer_id to the get_prism_json method so that, for example, deleteprism can just pass the offer id and only get back the one corresponding prism.

I will try that.

I realize now that it might have been unnecessary to do this. What do you think? Is it sufficient to just keep track of the offer_id that corresponds to the prism? I think it should be because each offer should only correspond to one prism.
Submitted a PR removing the id in favor of just using the offer_id. Would appreciate your feedback: https://github.com/daGoodenough/bolt12-prism/pull/22
Either way, I appreciate the other code you contributed. Looks much better already!

I agree, the Offer ID should be sufficient to uniquely identity a prism. This gets back to the definition of a Prism: A Prism is a special BOLT12 Offer that gets split out to multiple recipients."

Is their anything else I can do?


Fix navigation on iOS

Tasks

[x] Swipe back gesture does not work correctlly on ios(leaves entire application)
[x] Starting rn-hotels is slow (Solved by sharing the bridge)

Swipe back gesture does not work correctlly on ios(leaves entire application):

In our application we have way how to disable system swipe back gesture. You can find it NavigationViewController and it is method: - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch. If you modify this method a bit it will works BUT you have to find a way how to tell native app that user is on default screen (search screen) and system gesture should be allowed.
I can change the method for you, but don't know to solve the second part of the problem...

you have to find a way how to tell native app that user is on default screen

There are a way to do this -> a bridge. But this means we have to activate/deactivate on the root component, which is what we do on android back button, which we really don't want to do

Ok, ok. I've just wanted to point out where this code can be found in our app.  :)

@pistelak thanks for pointing us out to that method. It's indeed very helpful. The problem I have with extending it is that I don't want to couple it with React Native.
The naive approach would be to just list the RNHotelsViewController in the swipeBackDisabled array of controllers. That, unfortunately, wouldn't work as you want to swipe back when there are no children inside the React Navigation hierarchy.
The best approach that I see would be to implement delegate pattern where each screen can conform to the protocol and expose method shouldAcceptSwipeBackGesture. That way, we can implement React Native specific logic inside the controller and your handler will just ask for it. Benefits are fewer conditionals and ability to control the swipe back gesture from within the controller itself.
Let me know what you think.

@mrtnzlml what do you think about ^^

Not now. The delegate approach is not a hack but standard way of doing
things.
On Android, depending on your structure, we will use the same approach.
Native team should give me an idea whether this is something they are
interested in as it touches few files on Native side.
Otherwise, we will have to do hacks here.
On Thu, May 17, 2018, 2:28 PM Michal Sänger<EMAIL_ADDRESS>wrote:

Are we also considering Android right?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/kiwicom/mobile/issues/558#issuecomment-389849053, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACWcxp6d4UAdmZPdCkbNqLXhfwQDR6eCks5tzWzmgaJpZM4T5w9F
.

So what does this involve from our side(JS code)
Say in the RootComponent.componentDidMount do something like Bridge.allowSwipe(true) then on other  screens Bridge.allowSwipe(false)?

Yes. I was thinking to do it from the StackNavigation onStateChange.
We will provide you with Native Module as a PR where we can discuss the JS
API once the approach in general gets accepted.
On Thu, May 17, 2018, 2:35 PM Trond Bergquist<EMAIL_ADDRESS>wrote:

So what does this involve from our side(JS code)
Say in the RootComponent.componentDidMount do something like
Bridge.allowSwipe(true) then on other screens Bridge.allowSwipe(false)?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/kiwicom/mobile/issues/558#issuecomment-389851064, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACWcxiyMox0N1GRpXkS4lmcglSLkkxlPks5tzW6pgaJpZM4T5w9F
.

@pistelak can I have your comment on my comments above that suggest using a protocol and delegate to ask for current controller whether it should accept gestures? It involves a tiny amount of changes to the main app - we can take care of that. Details to be discussed in the appropriate PR in that repo, just trying to get a sense whether you like that idea.

Hi @grabbou,
I think, using notification is probably far better than my usage of singleton for navigation. Anyway, I'm not sure about the delegation part. You will be able to pass the information to coordinator but ¯_(ツ)_/¯ - I don't know what will be the next step.
I'd probably create - (BOOL)isInteractivePopGestureAllowed; (This should be probably wrapped inside of a protocol but I'm not sure where this protocol should be placed...) method in RNKiwiViewController. As a next step, I'd adjust the method I've mentioned earlier.
It could look like:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {

    // probably not necessary
    const BOOL kIsPopGestureRecognizer = self.interactivePopGestureRecognizer == gestureRecognizer;

    if (kIsPopGestureRecognizer && [self.topViewController respondsToSelector:@selector(isInteractivePopGestureAllowed)]) {
        return [(id)self.topViewController isInteractivePopGestureAllowed];
    }
}

What do you think?

Oh, I did not see your previous commit earlier, so I wrote this as a reaction to existing PR... But yea, I agree with you.

Yeah, that's what I am thinking right now - the part with selector could replace the hardcoded array of view controllers.

This should be probably wrapped inside of a protocol but I'm not sure where this protocol should be placed...

Needs to be inside the mobile app I guess. We are working to implement two additional methods as a part of RNKiwiViewControllerFlowDelegate so that the flowDelegate (in your case, RNHotelsFlowViewController) can obtain an information whether to accept gestures or not.
Once it has this information (e.g. as a boolean property), it can return it from the isInteractivePopGestureAllowed method that it implements as a part of native-app specific protocol.
Seems right :)

@tbergq I made this issue only iOS related. Can you explain the step  We have to call bridge module to leave application ?

Ok I'll move it to Android specific issue and investigate it.

Now that https://github.com/kiwicom/mobile/pull/623 is merged, ios native app needs to use it in order to fix the swipe back gesture.

@pistelak ^^

We have open issue to decide how to integrate this with mobile app - either we do protocol-based communication, or, we employ some hardcoded hacks based on flowDelegate.

Resolved? Can we close it? 🙂

Solved.


chore: define live-sanchonet services

Migrate current live-sanchonet to the sdk repo and new cluster.

I think we still want clarity from @mchappell if we are ok just keeping short names for the new cluster or if we need to retain backend...eks. version as well