Update the CD pipeline

Correct the trigger

Codecov Report

Merging #23 (c7eabe0) into main (9e0c9b8) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main       #23   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            3         3
  Lines          166       166
=========================================
  Hits           166       166

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 9e0c9b8...c7eabe0. Read the comment docs.


interfaces: rework GIF and GRE integration, possibly rewriting interfaces_configure() completely and other side quests

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Is your feature request related to a problem? Please describe.
GIF and GRE setup is half-opportunistic and half-static leading to several problems that collide with real world configuration e.g. when DHCPv6 is in play. There's also the complication of VIP use which needlessly complicates the code.
Describe the solution you like
GIF and GRE need better integration when doing a boot configuration run so they are configured after their parent interfaces are configured, but are automatically configured before they are being used as interfaces themselves.
While here it would be nice to get rid of the array_walk() use. Loops are cheap and yield the same amount of code.
Describe alternatives you considered
Micro-managing exceptions which is already not really working out so well in interfaces_configure().
Additional context
https://forum.opnsense.org/index.php?topic=26700.0

Note to self:
% git grep 'interface.*configure.*&'
src/etc/inc/interfaces.inc:function interface_vlan_configure(&$vlan, $intfs = null)
src/etc/inc/interfaces.inc:function interface_bridge_configure(&$bridge)
src/etc/inc/interfaces.inc:function interface_wireless_configure($if, &$wl, &$wlcfg)

More notes:

Traverse config in core_devices() to get a list of devices names associated with the system
Always run post-configuration hooks in interface_configure() and report devices back to interfaces_configure()
Kill static configuration block in interfaces_configure() with the help of the above tools
When all has been configured manually invoke the creation of unassigned devices

For terminology: device ... found in ifconfig output, interface ... something assigned in the config.xml as interaface

More:

guess_interface_from_ip() needs to be removed from GRE handling
LAGG MTU is weird... cannot set member MTU as soon as it is added as laggport
interface_bridge_add_member() adds member even if it was already added

We are at the point where we can defer the work from the gif/gre/bridge/lagg side as well. Oddities exist but do not relate to user-facing problems.


Adding query parameters for ordering and color scheme

Added request parameters for ordering (o) and color scheme (c).
Required a heavy refactoring of init methods and the corresponding test suites.
I also refactored the parameter parsing functions to use URLSearchParams and URL classes. It makes the code clearer and safer, and they are VanillaJS so no added size to be concerned about.
I've also included an initControlButton function to reduce code duplication across the system. Further refactorings can be applied to reduce the code duplication and size, but those are out of the scope of this ticket.

What is your motivation for adding these as query parameters? What function does it serve?
At least for me, I wouldn't want these things to be controlled by the query parameters. I wouldn't want these things to change if someone with different parameters sends me link for simple-icons.

What is your motivation for adding these as query parameters? What function does it serve?
At least for me, I wouldn't want these things to be controlled by the query parameters. I wouldn't want these things to change if someone with different parameters sends me link for simple-icons.

didn't you open this ticket: https://github.com/simple-icons/simple-icons-website/issues/45 ?
I'm simply addressing it.

My apologies, forgot about that ticket. However, as per #45 it's not my idea but rather a suggestion from https://github.com/simple-icons/simple-icons/discussions/4865#discussioncomment-352284.
That being said, could you explain in text how your implementation is intended to work? What is the behavior of these query parameters in various scenarios?

My apologies, forgot about that ticket. However, as per #45 it's not my idea but rather a suggestion from simple-icons/simple-icons#4865 (comment).
That being said, could you explain in text how your implementation is intended to work? What is the behavior of these query parameters in various scenarios?

The params in the url would override (but NOT overwrite) localStorage. That means that the url can force the UI to ignore the local preferences, but shouldn't change the values stored.
The Url could contain up to three parameters:

q: the existing query, no changes.
o: the order parameter, one of order-alphabetically, order-color or order-relevance.
c: the color scheme parameter, one of light, dark or system.

This can be provided in any combination.
Additionally, there are a few refactorings done to remove code duplication, which I find useful to handle the parameters
Having said that, I'll be completely fine with removing the whole thing if you think we don't really need it. More than completely fine, actually. I do like the idea of having parameters, but I don't think it's all that useful and I like simple code far more than scatter shot features.
If I were to add a parameter, it would be an icon parameter for the icon detail view, nothing else.

My apologies, forgot about that ticket. However, as per #45 it's not my idea but rather a suggestion from simple-icons/simple-icons#4865 (comment).
That being said, could you explain in text how your implementation is intended to work? What is the behavior of these query parameters in various scenarios?

The params in the url would override (but NOT overwrite) localStorage. That means that the url can force the UI to ignore the local preferences, but shouldn't change the values stored. The Url could contain up to three parameters:

q: the existing query, no changes in behavior, but the parsing is refactored.
o: the order parameter, one of order-alphabetically, order-color or order-relevance.
c: the color scheme parameter, one of light, dark or system.

This can be provided in any combination.
Additionally, there are a few refactorings done to remove code duplication, which I find useful to handle the parameters
Having said that, I'll be completely fine with removing the whole thing if you think we don't really need it. More than completely fine, actually. I do like the idea of having parameters, but I don't think it's all that useful and I like simple code far more than scatter shot features.
If I were to add a parameter, it would be an icon parameter for the icon detail view, nothing else.

The params in the url would override localStorage.

As per my comments on this topics earlier. I don't support it implemented in that way. I don't see any reason why the URL - which someone else may be providing me with - would override my personal preferences. I don't want someone to send me a simpleicons.org link that has dark mode enabled when I prefer to use it in light mode and have declared that preference when I visited the website last time, there's simply no reason.
I'm not against adding these query parameters altogether (see my previous comments on this topic).

Notice that it overrides your preference, but it doesn't overwrite it.
What that means is that if you remove the query params you will again see the page as you have declared in your preferences.
This could be useful if someone wants to call your attention on how a particular set of preferences look like, or when sending a link to a new user that has no preferences set. I still don't think that's important enough, but it could be used that way.
I implemented it because it's a ticket that exists. That you have reservations about it didn't mean that you didn't want it implemented.
Having discussed it, I have no problems diacarding this and closing the ticket as not really useful, with your input on the matter.

Notice that it overrides your preference, but it doesn't overwrite it.
What that means is that if you remove the query params you will again see the page as you have declared in your preferences.

I notice that and I understand the difference. I don't want to have to inspect a link, and possibly remove some of it, before I click on it to have a what I would say is normal experience.

This could be useful if someone wants to call your attention on how a particular set of preferences look like, or when sending a link to a new user that has no preferences set. I still don't think that's important enough, but it could be used that way.

It can indeed be useful for new users, but as an existing user I wouldn't want to be bothered by this.

I won't approve this Pull Request in it's current state, if you can find support for it among other maintainers then feel free to move ahead with this :slightly_smiling_face:

Notice that it overrides your preference, but it doesn't overwrite it.
What that means is that if you remove the query params you will again see the page as you have declared in your preferences.

I notice that and I understand the difference. I don't want to have to inspect a link, and possibly remove some of it, before I click on it to have a what I would say is normal experience.

This could be useful if someone wants to call your attention on how a particular set of preferences look like, or when sending a link to a new user that has no preferences set. I still don't think that's important enough, but it could be used that way.

It can indeed be useful for new users, but as an existing user I wouldn't want to be bothered by this.
I won't approve this Pull Request in it's current state, if you can find support for it among other maintainers then feel free to move ahead with this 🙂

I don't care about this PR. I'll close it along with the issue. That's good enough for me.


the html5 menuitem tag isn't supported

when doing:
menu
  menuitem moi

I get:

Uncaught Error: Assertion Failed: A helper named 'menuitem' could not be found

Sounds like we need to add it to the whitelist; in the meantime you can prefix with %, e.g. %menuitem moi

cheers


Update to @fadroma/client v5

Done:

<EMAIL_ADDRESS>incl<EMAIL_ADDRESS><EMAIL_ADDRESS>still on<EMAIL_ADDRESS>
<EMAIL_ADDRESS>has been available for 2 days - amino not ded yet

<EMAIL_ADDRESS>replaces<EMAIL_ADDRESS>
CI should now produce working ESM and CJS builds alongside the raw TS source.
Added Jest invocation to CI

<EMAIL_ADDRESS>now provides the Deployment class.

This is used to create a unified API for each group of contracts that act as a defined subsystem (TGE, Swap, Rewards, Lend, etc.), and largely replaces the Context kludges from @fadroma/client@4 and friends.
These deployment classes only know how to fetch addresses from provided receipts; the deployer classes in the parent repo extend them, replacing the getters with one-shot deployers.

Next steps:

Instantiate deployment with receipts

allow receipt path to be configured (FADROMA_DEPLOY_RECEIPTS?)
store mainnet and testnet receipts in siennajs dir, publish as part of siennajs
load contract addresses from receipt to get a working Sienna client out of the box

Allow newer versions of SecretJS to be passed in when constructing Chain and/or Agent

When trying to start the development server in the FE throws:
webpack-internal:///./siennajs/Core.ts:80
class Deployment extends _fadroma_scrt__WEBPACK_IMPORTED_MODULE_0__.Deployment {
                                                                    ^

TypeError: Class extends value undefined is not a constructor or null
    at eval (webpack-internal:///./siennajs/Core.ts:80:69)
    at Module../siennajs/Core.ts (/Users/atanaskrondev/Projects/private-platform/.next/server/pages/_app.js:5795:1)
    at __webpack_require__ (/Users/atanaskrondev/Projects/private-platform/.next/server/webpack-runtime.js:25:43)
    at eval (webpack-internal:///./siennajs/index.ts:14:63)
    at Module../siennajs/index.ts (/Users/atanaskrondev/Projects/private-platform/.next/server/pages/_app.js:5927:1)
    at __webpack_require__ (/Users/atanaskrondev/Projects/private-platform/.next/server/webpack-runtime.js:25:43)
    at eval (webpack-internal:///./api/backend/index.ts:21:66)
    at Module../api/backend/index.ts (/Users/atanaskrondev/Projects/private-platform/.next/server/pages/_app.js:2891:1)
    at __webpack_require__ (/Users/atanaskrondev/Projects/private-platform/.next/server/webpack-runtime.js:25:43)
    at eval (webpack-internal:///./redux/sagas/bridgeExchangeSaga.ts:9:76)
    at Function.__webpack_require__.a (/Users/atanaskrondev/Projects/private-platform/.next/server/webpack-runtime.js:111:13)
    at eval (webpack-internal:///./redux/sagas/bridgeExchangeSaga.ts:1:21)
    at Module../redux/sagas/bridgeExchangeSaga.ts (/Users/atanaskrondev/Projects/private-platform/.next/server/pages/_app.js:5498:1)
    at __webpack_require__ (/Users/atanaskrondev/Projects/private-platform/.next/server/webpack-runtime.js:25:43)
    at eval (webpack-internal:///./redux/sagas/index.ts:8:77)
    at Function.__webpack_require__.a (/Users/atanaskrondev/Projects/private-platform/.next/server/webpack-runtime.js:111:13)
 ELIFECYCLE  Command failed with exit code 1.

Here's the FE brach I'm trying on:
https://github.com/SiennaNetwork/private-platform/pull/407

On a fresh checkout it's running.
When going to swap and selecting the second token I receive this error:

I guess it has something to do with my first comment about the AMMExchange client type.


mutated array/object declared with const errors but ok with let

Suggestion
Is there a setting where, if you declare an array or object with const and mutate it, it errors, but if declared with let it's ok?
I've been searching through the docs but couldn't figure out.
PS: I'm using typescript.

No, we don't have a rule like that.
What I personally use is the naming-convention rule to enforce variables declared with let are prefixed with m_ (for mutable). Then I use immutable-data's ignoreAccessorPattern to ignore such variables.
I'm not sure if I'd be in favor of adding your suggestion a built-in option or not. I'd need to think about the flow on effects of such an option.

I think it's worth giving it a good thought.

Is there a way to use ignore patterns or something to make all arrays immutable by default but using some regex in the identifier to make it mutable like "let/const mut_arr = []"?

Is there a way to use ignore patterns or something to make all arrays immutable by default but using some regex in the identifier to allow mutations like "let/const mut_arr = []"?

I'm not sure what you mean exactly. ignorePattern will let you match against the variable name (e.g. mut_arr); if it matches then the rule won't report any issues. Any mutations on objects and arrays will be reported so in that sense they are already all immutable by default.

So let's say I have a class (or object). Is there any way to do this?
class Hey {
    mut_array = []
}

const hey = new Hey()

hey.mut_array.push(1)   // currently, it complains with "Modifying an array is not allowed."

You can use the ignoreAccessorPattern option for this.
This should do what you want:
{
  "ignoreAccessorPattern": "**.mut_*.**"
}


facter: change sys-filesystem to a runtime dep

Prior to this change sys-filesystem was listed as a development dependency, to avoid requiring a C compiler when performing a gem install. However, this produces a version of facter whose mountpoints fact and partitions facts are broken. Re-visit the decision and prefer to produce a fully functional facter version.
This issue was discovered when using facter in Debian, where the lack of a dependency on sys-filesystem produces a package with broken mountpoints and partitions facts.

Can one of the admins verify this patch?

Debian bug for reference, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1089174


Trillian integration fixups

Connections to trillian backends do not use TLS.
The signer wasn't saving the logID.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #582   +/-   ##
=======================================
  Coverage   59.66%   59.66%
=======================================
  Files          32       32
  Lines        2209     2209
=======================================
  Hits         1318     1318
  Misses        616      616
  Partials      275      275

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 a0c9fb4...d1735b0. Read the comment docs.


Nix Hive is incompatible with Nix 2.5

Nix 2.5 changes nix eval to expect a URL and does not understand that (import ...) is an expression.  To get the original behavior, we must pass the --expr flag to Nix 2.4, which is not present in Nix 2.3.  This blocks Nix Hive from using the same path for evaluating a Nix expressions across the two versions.  (They weren't kidding when they said the tool was experimental. :))
Potential solutions:

Insist Nix Hive users use Nix 2.3 until 2.5 becomes stable.
Add a flag or setting that Nix Hive can pick up to swap between 2.3 and 2.5 calling conventions.
Have Nix Hive run nix --version to sniff out whether it needs the --expr flag.

For now, we can stick with 1.  2.5 is still a moving target.

Turns out that if your nix.conf does not enable the experimental nix command features, none of this works.  I have replaced the use of nix eval and nix build with nix-instantiate and nix-build to avoid risk of Nix flake features breaking Nix Hive, and added the necessary flag to nix copy to enable its use without amending /etc/nix.conf
I doubt this is fixed entirely, since nix copy is still experimental, but nix-copy-closure is very inferior to nix copy.


Fix: publish for v1.9.4 (failed build)

Codecov Report

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

@@           Coverage Diff           @@
##           master     #173   +/-   ##
=======================================
  Coverage   36.98%   36.98%
=======================================
  Files           8        8
  Lines         219      219
=======================================
  Hits           81       81
  Misses        138      138

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 3517f1e...dafeec7. Read the comment docs.


kafl_fuzz.py path

Hello.
I stuck this problem.
There is no kafl_fuzz.py

cd ~
git clone https://github.com/IntelLabs/kAFL.git
cd kAFL

make deploy
# update-grub and change kernel

make env

cd ~/kAFL/kafl/fuzzer/

there is no kafl_fuzz.py
three months ago, there is a kafl_fuzz.py in ~/kAFL/kafl/fuzzer directory.
It is something change?

Hi @5angjun !
Thanks for reporting this issue.
Indeed kafl_fuzz.py is missing since the kafl command line has been refactored to act as a single kafl entrypoint with subcommands, like git for example.
You can find this in the next kafl.fuzzer changelog, unpublished yet:
https://github.com/IntelLabs/kafl.fuzzer/blob/master/.github/RELEASE.md
At the same time were are updating the tutorial with this new command line, the PR hasn't been merged yet:
https://github.com/IntelLabs/kAFL/pull/135
So in short, you should now switch from kafl_fuzz.py to kafl fuzz.
Furthermore, a Docker image is coming soon for kafl, if you prefer that option in the future:
https://github.com/IntelLabs/kAFL/pull/136
If you have more topics or concerns you would like to start engaging with, you can start a discussion here !
https://github.com/IntelLabs/kAFL/discussions
Thanks

oh thanks
but is there any seed file to run fuzz followed tutorial??
i command using this commands.
i need some advice
sudo su
## Dependency ##
apt-get update -y
apt install curl git wget file zsh sudo vim libssl-dev libffi-dev build-essential libssl-dev libc6-i386 libc6-dbg gcc-multilib make gcc gdb -y
apt install python git curl wget vim zsh gdb python3 python3-pip  -y
apt install gawk bison flex openssl libssl-dev libelf-dev lz4 dwarves -y
apt install qemu-utils qemu-system-x86 python3 python3-venv g++-mingw-w64-x86-64 zstd -y
apt install python3 python3-venv -y
sudo apt install gawk bison flex openssl libssl-dev libelf-dev lz4 dwarves zstd -y

## git clone ##
cd ~
git clone https://github.com/IntelLabs/kAFL.git
cd kAFL

## Install kAFL ##
make deploy
make env

## Download Target kernel ##
mkdir ~/kAFL/linux-kernel && cd ~/kAFL/linux-kernel
git clone -b kafl/fuzz-5.15-4 https://github.com/IntelLabs/kafl.linux.git linux-guest
cd linux-guest

## change .config to custom config  And Build##
wget https://raw.githubusercontent.com/IntelLabs/kafl.targets/master/linux-kernel/config.vanilla.virtio
mv ./config.vanilla.virtio .config
make -j$(nproc)

## set KAFL CONFIG ##
cd ~/kAFL/kafl/fuzzer/
wget https://raw.githubusercontent.com/IntelLabs/kafl.targets/master/linux-kernel/kafl_config.yaml
export KAFL_CONFIG_FILE=kafl_config.yaml

## output Dir ##
mkdir output

## FUZZ ##
kafl fuzz --purge \
-w /dev/shm/kafl \
--redqueen \
--grimoire \
-D --radamsa \
--kernel ~/kAFL/linux-kernel/linux-guest/arch/x86/boot/bzImage \
-t 0.1 \
-ts 0.01 \
-m 512 \
--log-crashes \
-p 12 \
--work-dir ./output

The setup script above looks good, screenshot also looks like kAFL is installed correctly (it launches and manages to boot the kernel, you can verify by looking at Qemu logs in $KAFL_WORKDIR/{qemu,serial,hprintf}*log).
The relevant error message is "ABORT: Attempt to finish kAFL run but never initialized". This is an 'abort' hypercall issued by the harness inside the kernel source. The error is triggered when we reach the end of a fuzz execution loop without consuming any fuzzing input (meaning we can stop fuzzing because the configuration is broken).
It looks like you supplied the correct kernel config and kafl config, but something is wrong. The kernel .config will activate the virtio injection, but the qemu commandline shown in your screenshot does not have any virtio devices enabled. The kafl_config.yaml you downloaded enables a virtio-net device and also sets hprintf parameter in the qemu --append option. Both are missing in your screenshot, so something is wrong how you supplied this config.

Thanks @il-steffen for your inputs.
To better understand what went wrong while loading the config, you can use the --verbose kafl switch to turn on verbose logging.
This will dump important information regarding which configuration files were loaded, and what the whole config looks like when the fuzzer starts.


Brainstorm "joke submission" workflow

issue based, automated using github actions?

jokes should be attributed to authors, look into the legalities around this
workflows should verify these, but everything should be verified manually as well
data validation will be needed in some form, might be a good use-case for either strict type checking via manual guards, or a validation library like zod, but that might be overkill.

Current workflow could take form in multiple steps.
First iteration will be the traditional github open-source flow that is primarily documentation driven.
Second iteration could utilize the fact the app can have a server element in vercel and a fancy auth flow for actual data submissions, maybe into some basic database, like airtable or even a google sheet. Will create an issue to track the advanced option later. For now will close this one and create a new MVP flow, which mainly is tied with: #21


A green pane overlaps and remains on the screen

Description
I've just installed React Native macOS and tried to start a very first project:
yarn global add react-native-macos-cli
react-native-macos init MyProject
cd MyProject
react-native-macos run-macos

After that I can see a green pane overlapping a bottom of my screen. It does not want to disappear. When I press Cmd+R, a new one pane overlaps the previous. When I press Cmd+R again, a third one overlaps previous two. Here are the screenshots:
http://take.ms/Ckcng (one pane)
http://take.ms/FxBvz (two panes overlap each other)
http://take.ms/zZnIp (three panes, etc.)

React Native version: react-native-macos-cli: 2.0.1, react-native-macos: 0.16.1
Platform: macOS
Development Operating System: macOS 10.13.4
Dev tools: Xcode 9.3 (9E145)

+1

Hopefully fixed in 0.18. Let me know if it persists

Still an issue in 0.18.0-alpha-3:


Allow custom default merge message with .gitea/default_merge_message/<merge_style>_TEMPLATE.md

Fix #11089

Just my two cents here:
Would it not be better to move these to a .gitea/merge_message subfolder?  This allows for less clutter in the main .gitea subdirectory and also allows for a common prefix to become a subfolder thereby making the system more usable.
Again, I'm not qualified to make this decision, I'm just taking inspiration from how GitHub handles their files (.github/workflows/*.yml instead of .github/workflow_*.yml and .github/issue_template/*.yml instead of .github/issue_template_*.yml)

LGTM please!

If I understand the changes correct, then this is a per repo option, not an instance wide option like zeripath suggested right?

@MarkusAmshove correct.

I think all review requests have been resolved. Please review again. @zeripath

CI failure is related.
The problem is occurring because the HeadRepo can be deleted at the time of merging.

[E] [6276b3d1-274] GetDefaultMergeMessage: repository does not exist [id: 91, uid: 0, owner_name: , name: ]
integration tests ...

make L-G-T-M work.


question about the "other" class

Hi, thanks for your great work.
I noticed that you use "other" class to refer background or unknown classes in training. May I ask where is the corresponding processing code? Beside, do you encode the unseen (novel) classes as "other" in training procedures?

Hi @Dingry,
Thanks for your interest in LSeg!
This is a great question and we are a little surprised that we didn't do any processing on the dataset. If the dataset contains 'other', then we will use it. Otherwise, we directly use the label provided in the selected dataset. No additional processing procedure is required.
Hope this helps.
Best,
Boyi


Add the possibility to use spdlog with YARP

This PR closes https://github.com/ami-iit/bipedal-locomotion-framework/issues/407. In detail, I implemented a custom sink to handle the logging through yarp.
The switching between the normal logging to the yarp one is pretty simple and has been implemented using the factory pattern.
#include <BipedalLocomotion/TextLogging/Logger.h>
#include <BipedalLocomotion/TextLogging/YarpLogger.h>
#include <BipedalLocomotion/TextLogging/LoggerBuilder.h>
// Change the logger
BipedalLocomotion::TextLogging::LoggerBuilder::setFactory(std::make_shared<BipedalLocomotion::TextLogging::YarpLoggerFactory>()));

BipedalLocomotion::log()->info("My info");

will print
[INFO] [2021-09-02 23:20:43.501] [thread: 108475] [blf] My info

using yInfo()
Thanks to this feature all the applications that uses BipedalLocomotion::log can log all the info/errors in a yarp logger

Disclaimer: I didn't review the files yet.
Does this implementation change the logger in a process-wise manner? And I mean, if there are multiple systems (advanceables) running, but just one in its compile unit switches the logger to YARP, do all the logging -also of the other systems- be sunk to the new logger?

Does this implementation change the logger in a process-wise manner?

Since the logger is treated as a singleton the builder should be called before calling the first time log() (i.e. at the beginning of your main).
Then all the treads spawn by that application will use yarp to log

Ok, I guess that this operation will be done in the main() and then the entire application will dump to the right sink :+1:

Ok, I guess that this operation will be done in the main() and then the entire application will dump to the right sink 👍

Yes, I think that's the idea in general with spdlog loggers, at least the one provided by singletons .

Yep, this morning for some reason I was assuming this to be done in the Advanceable's code. But that makes no sense, hence I asked. From the main is definitely the intended pattern.


combine with react?

this looks pretty neat! I have a larger web app all built out with react, and wanted to use kaboom for a single page game. Was wondering how best to do this?
Worried if there are context or router changes that would force re-rendering, otherwise break the kaboom content, or ways to "suspend" react from controlling the same parts of the DOM.

If you are concerned React could accidentally nuke your game, you could put the game in a statically rendered iframe.
Sounds like you should investigate on the React side.
Perhaps post a sample page with a game running and see if you run into problems.
https://github.com/facebook/react/issues/10923#issuecomment-338715787

@dcsan it should be in separate repository. The possible approach would be using react reconciler.
https://www.youtube.com/watch?v=CGpMlWVcHok

Are you experiencing real problems? The kaboom state should be safe, if you're using global all globals functions should refer to the same kaboom state, if you're using const k = kaboom then you might want want to put it behind a ref. Also you definitely don't want to call kaboom() again during a game so it should be in a place where it's only run on mount.
I can do some investigation and make a good template for react use.

no, I was inquiring before I started the dev effort. @slmjkdbtl  I thought since react is popular you might already have an answer.

It should be the same as how you'd use any JavaScript library with react:
import kaboom from "kaboom"
import * as React from "react"

const Game: React.FC = () => {

	const canvasRef = React.useRef(null)

	// just make sure this is only run once on mount so your game state is not messed up
	React.useEffect(() => {

		const k = kaboom({
			// if you don't want to import to the global namespace
			global: false,
			// if you don't want kaboom to create a canvas and insert under document.body
			canvas: canvasRef.current,
		})

		k.add([
			k.text("oh hi"),
			k.pos(40, 20),
		])

		// write all your kaboom code here

	}, [])

	return <canvas ref={canvasRef}></canvas>

}

Please reopen if there's any other question about using with react!

Hello @slmjkdbtl (sorry for the ping), I am having some issues when I am trying to load sprites in my react-kaboom project
output:

console:

my code:

import { useEffect, useRef } from "react";
import kaboom, { KaboomCtx, KaboomOpt } from "kaboom";

const Kaboom = ({run, options} : {run: (kaboom: KaboomCtx) => void, options?: KaboomOpt}) => {
    const isRunning = useRef(false);
    const canvasRef = useRef<HTMLCanvasElement>(null);

    useEffect(() => {
        if (isRunning.current || !canvasRef || !canvasRef.current) {
            return;
        }
        isRunning.current = true;
        run(kaboom({
            ...options,
            global: false,
            canvas: canvasRef.current as HTMLCanvasElement,
        }))
    }, [options, run])

    return <canvas ref={canvasRef} className={styles.canvas}></canvas>
}

export default Kaboom

It should be the same as how you'd use any JavaScript library with react:
import kaboom from "kaboom"
import * as React from "react"

const Game: React.FC = () => {

	const canvasRef = React.useRef(null)

	// just make sure this is only run once on mount so your game state is not messed up
	React.useEffect(() => {

		const k = kaboom({
			// if you don't want to import to the global namespace
			global: false,
			// if you don't want kaboom to create a canvas and insert under document.body
			canvas: canvasRef.current,
		})

		k.add([
			k.text("oh hi"),
			k.pos(40, 20),
		])

		// write all your kaboom code here

	}, [])

	return <canvas ref={canvasRef}></canvas>

}

Please reopen if there's any other question about using with react!

In this case, the user effect will continue to work even if the component is unmounted. It’s better to write a return, although I haven’t figured out which one. As an option:
return () => {
  k.debug.paused = true;
};

Pauses the game.
Or:
k.scene("endGame", () => {});
return () => k.go("endGame");

Create an empty scene "endGame" and call it.
I don’t know, I’m not sure that these are the best options, but I couldn’t think of a better one.

This is my code I am just making a simple jump-the-pillar . here I have created an obstacle in which I applide
move() function it accepts two parameters move(direction , speed)  but it is not moving .
Any help is Appreciated.

import { useEffect } from 'react';
import './App.css';
import kaboom from "kaboom";
function App() {

  useEffect( () => {
    let boom = kaboom();
    console.log( "kaboom->", boom )

    boom.setGravity( 1000 )
    boom.loadBean()

    const player = boom.add( [
      boom.sprite( "bean" ),
      boom.pos( 120, 80 ),
      boom.area(),
      boom.body(),
    ] )

    const platform = boom.add( [
      boom.rect( 2000, 48 ),
      boom.pos( 0, 950 - 48 ),
      boom.outline( 4 ),
      boom.area(),
      boom.body( { isStatic: true } ),
      boom.color( 127, 200, 255 ),
    ] )

    const obstacle = boom.add( [
      boom.rect( 48, 64 ),
      boom.area(),
      boom.outline( 4 ),
      boom.pos( 400, 950 - 48 ),
      boom.anchor( "botright" ),
      boom.color( 255, 180, 255 ),
       boom.move( "LEFT", 10 ),  // <-- **!!PROBLEM!!**  I am getting problem here
      "tree",
    ] );
    player.onCollide( "tree", () => {
      boom.addKaboom( player.pos );
      boom.shake();
    } );

    boom.onKeyPress( "space", () => {
      player.jump()
    } )
    boom.onKeyPress( "up", () => {
      player.jump()
    } )
    boom.onKeyPress( "right", () => {
      player.move( 1000 )
    } )
    boom.onKeyPress( "left", () => {
      player.move( -1000 )
    } )

  }, [] )

  return (
    <></>
  );
}

export default App;


[Question] How send message with local file as base64 encoded PDF attachment?

Bot Info

SDK Platform: .NET
SDK Version: <IP_ADDRESS>
Active Channels: Skype, Telegram, Facebook, Slack
Deployment Environment: Azure Bot Service

Issue Description
UploadAttachmentAsync works correctly only in Slack. In other channels (Telegram, Facebook), the file is broken and with Skype doesn't work.
Code Example
using (var connector = CreateConnector(new Uri(serviceUrl)))
{
                var attachments = new Attachments(connector);
                var response = await attachments.Client.Conversations.UploadAttachmentAsync(
                    conversationId,
                    new AttachmentData
                    {
                        Name = fileName,
                        OriginalBase64 = content,
                        Type = mimeType
                    });
}

On skype channel we got error:
Microsoft.Rest.HttpOperationException: Not Found
   at Microsoft.Bot.Connector.ErrorHandling.<HandleErrorAsync>d__2`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.Bot.Connector.ConversationsExtensions.<UploadAttachmentAsync>d__15.MoveNext()
--- End of stack trace from previous location where exception was thrown ---

I'm a newbie. I'm also using UploadAttachmentAsync. It works. But I still have some questions. I think this method would send the file to server,right? When will it be deleted? Do I need delete it after download it by myself?


Fixed #30365 -- Fixed syntax highlighting in SQL examples.

Sphinx interprets some "%[a-z]" in SQL statements as
"Literal.String.Interpol" which lead to weird highlighting

@vlt Thanks for this patch :rocket:


Removed confusing guidelines to run the server

Removed confusing guidelines to run the server

Addeed make ren_server in different line
Poiting to web url is suggested

Closed this pr as no response for 30 days, please reopen and resolve the comments if you still want to contribute, thanks


[AST Builder] Implement create_table statement

Description
Implement ast_builder create_table statement
Tasks

[ ] implement basic create table statement
[ ] block invalid column options (ex. NULL NOT NULL)
[ ] implement create table as statement (with subquery)

Issue
referred #614
Description
Following tests should be passed.
    #[test]
    fn create_table() {
        let actual = table("Foo")
                .create_table()
                .set_col(col("id"), "int", null())
                .set_col(col("num"), "int")
                .set_col(col("name"), "text")
                .build();
        let expected = "CREATE TABLE Foo (id INTEGER NULL, num INTEGER, name TEXT)";

        let actual = table("Foo")
                .create_table_if_not_exists()
                .set_col(col("id"), "uuid", unique())
                .build();
        let expected = "CREATE TABLE IF NOT EXISTS Foo (id UUID UNIQUE)";

        test(actual, expected);
    }

It seems to be a problem solved in #784. Can I close it?

Hi, this issue has been solved?

Hi, this issue has been solved?

There doesn't seem to be a subquery implementation yet.

Hi, this issue has been solved?

There doesn't seem to be a subquery implementation yet.

Hi, this issue has been solved?

Hi, ast builder for basic create table statement has been implemented, but you can still work on supporting ast builder for create table with subquery


[mwc-textfield] attribute size does not populate to input element

Is your feature request related to a problem? Please describe.
<mwc-textfield size="5"></mwc-textfield> does not change the visible width from 20 to 5.
Describe the solution you'd like
Implement property size that will populate its value to element input.

input.

Thanks for the issue! I'm assuming that the reason you want this attribute is to control the width of the textfield, correct?
https://jsbin.com/civojirepi/1/edit?html,output
I'll add this to our backlog

I'm assuming that the reason you want this attribute is to control the width of the textfield, correct?

Yes, I do.
Thank you!


Estimating relative volume of a pool of queries

Hello!
Is it possible to estimate the relative interest of a pool of queries (for example 1k queries) using G-TAB?
I do not even need an annual trend, just a relative volume of a sample of queries (I would like to avoid a time-consuming procedure).
Thanks!

Hey @RiccardoTr! If I understand correctly, yeah, you can! You should:

Build an anchor bank with the desired timeframe and the desired place;
Use this anchor bank for the pool of queries!

From my understanding:

If you want the relative interest of each query in the pool, you will get this adjusted value from the queries made with the anchor bank.
If you want the interest relative to another third website, say Facebook, you can simply add it to your pool and you'll manage to compare it!

Best
Manoel

Thank you Manoel.

I've built the anchor bank according with a specific timeframe, no problem with that.
The problem is that I don't know the code to include my queries. Let's say the pool of queries is: "pizza, hamburger, sushi, ...". What code should I use?

Best
Riccardo


Problems setting up virtual environent (Ubuntu)

Hey
I have python 3.6:
familia@familia-desktop:~/LDSSA/heroku-model-deploy$ python3 --version
Python 3.6.6

Calling pipenv on the requirements file I get this... any clue what is the problem? It also took many minutes to run. Computer details below. Thanks:
familia@familia-desktop:~/LDSSA/heroku-model-deploy$ pipenv install -r requirements.txt
Creating a virtualenv for this project...
Pipfile: /home/familia/LDSSA/heroku-model-deploy/Pipfile
Using /usr/bin/python3.6 (3.6.6) to create virtualenv...
⠋Already using interpreter /usr/bin/python3.6
Using base prefix '/usr'
New python executable in /home/familia/.local/share/virtualenvs/heroku-model-deploy-D-SL1Mzz/bin/python3.6
Also creating executable in /home/familia/.local/share/virtualenvs/heroku-model-deploy-D-SL1Mzz/bin/python
Installing setuptools, pip, wheel...done.
Setting project for heroku-model-deploy-D-SL1Mzz to /home/familia/LDSSA/heroku-model-deploy

Virtualenv location: /home/familia/.local/share/virtualenvs/heroku-model-deploy-D-SL1Mzz
Creating a Pipfile for this project...
Requirements file provided! Importing into Pipfile...
Pipfile.lock not found, creating...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
b/python3.6/dist-packages/pipenv/patched/piptools/resolver.py", line 74, in resolve_hashes
    return {ireq: self.repository.get_hashes(ireq) for ireq in ireqs}
  File "/usr/local/lib/python3.6/dist-packages/pipenv/patched/piptools/resolver.py", line 74, in <dictcomp>
    return {ireq: self.repository.get_hashes(ireq) for ireq in ireqs}
  File "/usr/local/lib/python3.6/dist-packages/pipenv/patched/piptools/repositories/pypi.py", line 448, in get_hashes
    for candidate in matching_candidates
  File "/usr/local/lib/python3.6/dist-packages/pipenv/patched/piptools/repositories/pypi.py", line 448, in <setcomp>
    for candidate in matching_candidates
  File "/usr/local/lib/python3.6/dist-packages/pipenv/patched/piptools/repositories/pypi.py", line 72, in get_hash
    hash_value = self._get_file_hash(location)
  File "/usr/local/lib/python3.6/dist-packages/pipenv/patched/piptools/repositories/pypi.py", line 81, in _get_file_hash
    for chunk in iter(lambda: fp.read(8096), b""):
  File "/usr/local/lib/python3.6/dist-packages/pipenv/patched/piptools/repositories/pypi.py", line 81, in <lambda>
    for chunk in iter(lambda: fp.read(8096), b""):
  File "/usr/local/lib/python3.6/dist-packages/pipenv/patched/notpip/_vendor/urllib3/response.py", line 401, in read
    raise IncompleteRead(self._fp_bytes_read, self.length_remaining)
  File "/usr/lib/python3.6/contextlib.py", line 99, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/local/lib/python3.6/dist-packages/pipenv/patched/notpip/_vendor/urllib3/response.py", line 307, in _error_catcher
    raise ReadTimeoutError(self._pool, None, 'Read timed out.')
pipenv.patched.notpip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

familia@familia-desktop:~/LDSSA/heroku-model-deploy$

-Computer-
Processor		: 2x Pentium(R) Dual-Core  CPU      E5400  @ 2.70GHz
Memory		: 4043MB (2541MB used)
Operating System		: Ubuntu 16.04.5 LTS

Apparently does not seem to have at least pandas, or am I getting it wrong?
familia@familia-desktop:~/LDSSA/heroku-model-deploy$ pipenv shell
Launching subshell in virtual environment…
 . /home/familia/.local/share/virtualenvs/heroku-model-deploy-D-SL1Mzz/bin/activate
familia@familia-desktop:~/LDSSA/heroku-model-deploy$  . /home/familia/.local/share/virtualenvs/heroku-model-deploy-D-SL1Mzz/bin/activate
(heroku-model-deploy-D-SL1Mzz) familia@familia-desktop:~/LDSSA/heroku-model-deploy$ python3
Python 3.6.6 (default, Jun 28 2018, 04:42:43)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pandas as pd
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'pandas'
>>>

Resolved by creating a new folder to restart the process and installing one package at a time:
pipenv install scipy
...

And also correcting the spelling of category-encoders to category_encoders as suggested in Slack.
:)


BCE Device is always sending old positions[Fixed]

I have issue related to the BCE , the BCE  device always  sends old positions even after the service sent the response .

Have you tried to contact manufacturer and ask why it could be happening? Possibly there is some problem with server response format.

After contacting  the manufacturer, he informed me that the confirmation key should be calculated y the next expression
private static final int CONFIRM_ACK_KEY=0x7F;
int confirmKey = buf.readUnsignedByte()&CONFIRM_ACK_KEY;
I applied this fix and now no old data is sent from the device

Can you please send a pull request with your fix.

Is the https://github.com/tananaev/traccar/commit/16ebb921e416e94cb9e01340d38c7071882dd65f fix correct?

Yeah It is correct


test: some branches in view per diem page

Description
copilot:summary
copilot:poem
Walkthrough
copilot:walkthrough
Clickup
app.clickup.com
Code Coverage
Please add code coverage here
UI Preview
Please add screenshots for UI changes

rest all are linting changes


[OPPRO-277] Support greatest(),least() functions in Gluten

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
How was this patch tested?
(Please explain how this patch was tested.  Thanks

Just skip round() function temporarily, because of semantics difference in Velox's round().
Will support round(), after velox's new function implementation.

Hi @rui-mo ,
Can it be merged？


WindowsError Parameter is Incorrect After build/all.py

Have you read the FAQ and checked for duplicate open issues?
Yes
What version of Shaka Player are you using?
3.1.0-pre
Can you reproduce the issue with our latest release version?
Yes
Can you reproduce the issue with the latest code from master?
Yes
Are you using the demo app or your own custom app?
N/A
If custom app, can you reproduce the issue using our demo app?
N/A
What browser and OS are you using?
Google Chrome on Windows 10
For embedded devices (smart TVs, etc.), what model and firmware version are you using?
N/A
What are the manifest and license server URIs?

What configuration are you using?  What is the output of player.getConfiguration()?
N/A
What did you do?
Following the instructions here

git clone https://github.com/google/shaka-player.git
cd shaka-player
python build/all.py

What did you expect to happen?
The library to compile
What actually happened?
When I run python build/all.py I get the following error message:
Traceback (most recent call last):
  File "build/all.py", line 150, in <module>
    shakaBuildHelpers.run_main(main)
, in main
    if not step(parsed_args):
  File "C:\Users\Miguel Rivera Rios\Documents\Jobs\Sky\shaka-player\build\check.py", line 88, in check_js_lint
    return linter.lint(fix=args.fix, force=args.force)
  File "C:\Users\Miguel Rivera Rios\Documents\Jobs\Sky\shaka-player\build\compiler.py", line 331, in lint
    if shakaBuildHelpers.execute_get_code(cmd_line) != 0:
  File "C:\Users\Miguel Rivera Rios\Documents\Jobs\Sky\shaka-player\build\shakaBuildHelpers.py", line 173, in execute_get_code
    obj = execute_subprocess(args)
  File "C:\Users\Miguel Rivera Rios\Documents\Jobs\Sky\shaka-player\build\shakaBuildHelpers.py", line 162, in execute_subprocess
    return subprocess.Popen(args, **kwargs)
  File "C:\Python27\lib\subprocess.py", line 394, in __init__
    errread, errwrite)
  File "C:\Python27\lib\subprocess.py", line 644, in _execute_child
    startupinfo)
WindowsError: [Error 87] The parameter is incorrect

It specifies this as a WindowsError, but I'm not sure how to resolve.

Can you try with Python 3?  How are you building it?  Are you using cmd, PowerShell, WSL, or CYGWIN?

@miguelriverarios This is an issue with python in windows and has nothing to do with shaka-player. In python, the working directory is limited to MAX_PATH - 2 (258) characters for some reason I don't know. for reading more about this issue please follow this link . A workaround for fixing this issue is having a short directory name. Clone the project in a folder with a shorter directory name something like "E:\sky\shaka-player" or "C:\Users\Miguel Rivera Rios\Documents\shaka-player".
I might be wrong but it doesn't hurt to try.
try the above solution and please let me know the results.
Thank you

@surajkumar-sk, thanks for trying to help out on this one, but it is clear from the console output in the original post that the directory is well within the MAX_PATH limit.  It looks to be 60 characters long.
@miguelriverarios, I'm unable to reproduce your results.  I'm using a cygwin bash shell and native Windows version of Python.  I tried both Python 3.8.0 and Python 2.7.11, and both worked.  Can you please answer the questions posed by @TheModMaker?

Can you try with Python 3? Are you using cmd, PowerShell, WSL, or CYGWIN?

@joeyparrish I am confused with this too. The issue on python's page say the max_limit is 258 but when I tried testing it on my windows the maximum path length allowed was only 47(including '/shaka-player'). Any path name greater than 47 throws the same error. I taught of investigating this futher if the author of this issue responds saying this fix worked.
From the logs , the path length is greater than 42 so I think reducing the path length will work.
I can be wrong but I was able to reproduce this issue and reducing path length to less than 42 worked.

@surajkumar-sk, I set out to prove you wrong.  I copied my shaka-player source folder on Windows to a folder called very-long-pathname-indeed-to-prove-that-this-does-not-matter-at-all.  My absolute path length was then 96.  (It is normally only 41.)
What I found surprised me:
$ python3 build/all.py --force
[INFO] Generating Closure dependencies...
[INFO] Linting JavaScript...
[ERROR] *** A required dependency is missing: node

It's not the same exact failure that you and @miguelriverarios experienced, but it seems related to the path length.  Also, I'm using Cygwin shell, native Windows Python 3.8.0, and native Windows node v12.18.3.  So perhaps a different environment means different output.
Let's let @miguelriverarios have a chance to reply with details on:

Their shell environment (cygwin, cmd, powershell, etc)
Their Python and node versions
Whether or not reducing the absolute path length has an effect on the issue

Thanks!


Feature Request: use a storage class for data volume instead of host dir

Optionally use a stateful with PVCs for the StorageOS cluster. You already mount a local volume to each pod in the StorageOS cluster. Replacing that with another storage class would allow the cluster to use our cloud providers storage class to back StorageOS.
This has the following benefits:

Simpler setup since nodes do not have to be provisioned with extra storage ahead of time.
abstracts the hosts completely from the storage cluster.
makes adding more storage to the cluster as simple as scaling up the stateful set.

Hi, this is a really interesting idea.  Would it work for you if the nodes that provided storage ran as a StatefulSet, and the remaining nodes were provisioned as clients by a DaemonSet with anti-affinity on the storage nodes?
For provisioning the cluster initially, would it be enough to specify the number of storage nodes required and the PVC size?  Just thinking how to expose this via the CR or Helm without making it too complicated.
Also need to think a bit more about how you'd convert a node from a storage provider to a client and vice versa.
Thanks for the request!

From your comment I am assuming that the current daemon set has logic that must run on every node. if that is the case then the best thing eventually would probably be to extract that logic into its own daemon set. this would make the data pods placement much more flexible and you don't have to worry about converting nodes as the stateful set grows.
This could probably be done in phases.

Current system + storage class option.
Second daemon set.

These are the options that it might eventually need.
storageProvider: local/pvc
storageClass: gp2/other (just not one provided by storageos)
storageVolumeSize: 100Gi
storageDeploymentType: DaemonSet/StatefulSet

I bring this up because I have been researching the different storage options. I think it would make StorageOS more plug and play and the clear winner for my clusters.


Different offsets at different breakpoints

Hi,
Is there a way to have no offset on mobile and also have an offset on desktop?

Figured out I can use flexbox classes for my case


Cannot save Image

Hi,
I cannot save a single image from my loop. I'm using xampp. Please help.
This is my code.
$full_dir = 'uploads/';
$format = 'png';
$folder = base_path('/public/'.$full_dir.'pages/');
$quality = 100;
for($page=1; $page<=$pdf->getNumberOfPages(); $page++)  {
$page_save_filename = $folder.$page.'.'.$format;
$pdf->setPage($page);
$pdf->setOutputFormat($format);
//$pdf->setCompressionQuality($quality);
$pdf->saveImage($page_save_filename);
}
looks like $pdf->saveImage($page_save_filename);    is executed. but there's no error.

I know I'm a little late to the party, but hope this helps:
Base on the the function base_path I assume you are using Laravel. By adding a slash in front of public, it creates a double slash in the path, example:
/var/www/example-site//public/uploads/pages/
So change this:
$folder = base_path('/public/'.$full_dir.'pages/');
To this:
$folder = base_path('public/'.$full_dir.'pages/');
Additionally, ensure the paths exist. I'm not sure if it is meant to create the directory for you, so I'm not sure if this is a permission issue, I haven't looked into it.
Lastly, there is no need to set the format using a method as I believe it defaults as it is in the name.
See the complete code I've tested and is working:
$uploadsDir = 'uploads/';
$folder = base_path('public/' . $uploadsDir . 'pages/');
$quality = 100;

for($page = 1; $page <= $pdf->getNumberOfPages(); $page ++) {
    $pageSaveFilename = $folder . $page . '.png';
    $pdf->setPage($page)
        ->setCompressionQuality($quality)
        ->saveImage($pageSaveFilename);
}


fixes task cleanup when FK on TaskState.task_id

fix from issue #358. uses django's managers to cleanup

need to change the tests? or ok with existing one?


Prevent future dates in birthday

Closes #196 and #177

Looks good, but maybe just tell the user "past but < 200 years":


Validator service should use port from commandline

Maybe with a docopt like this:
REST frontend for validating SpaceAPI endpoints

Usage:
  service
  service (-h | --help)
  service --version

Options:
  -h --help     Show this screen.
  --version     Show version.
  --port=<p>    Port to listen on [default: 6767].
";

Great idea. I'd create a new sub-crate in this repository, with the directory name cli and the crate name spaceapi-validator-cli.


added conditional to switch pages

can go from welcome to main page
also added local storage functionality

Hey, it's working. Cheer up, Charlie


Remove try_ prefix in IoPin trait

CI somehow did not catch this.

r? @therealprof
(rust-highfive has picked a reviewer for you, use r? to override)


Views and spark functions not doing anything in laravel 6.

Hello there, i followed your directions to the letter but no affiliate_id is being created when a user registers and the views associated with the package are not showing up in the user dashboard. In fact the only notable addition i see is the extra column for affiliate_id in the database. Is the package not compatible with laravel 6?

I changed many thing for Laravel 6 compatibility.
There were some things I had to do less cleanly because I couldn't adapt.
I'll try to make a pull request when I get it right.

I'll attempt a fresh install sometime in the next couple weeks.

This PR got it working for me: https://github.com/keithbrink/affiliates-spark/pull/12

Thanks @greghunt your changes were added as well as a lot more fixes to make the library compatible with Laravel 6 / Cashier 10.


Where can I download the pre-trained model

The checkpoint has already been in the repo. Check the folder of checkpoints.


Add getLockTargetState and getLockCurrentState functions

Would be great if I could add the ability to get the current/target state via HTTP request also.
See here:
https://github.com/KhaosT/HAP-NodeJS/blob/master/lib/gen/HomeKitTypes.js

Totally agree with you, I'll look to integrate that as soon as possible.

Hey @philhar88
I've made a new repository called homebridge-web-lock which allows for the functionality you were requesting. Everything is explained in the README, but the basic premise is quite similar to this repository with the exception that you can now directly contact a listen server that the plugin sets up so you can send real-time changes in state back to homebridge.
Hope this solves your request,
Tom


Added a FAQ page

LGTM- I'm into grammar editing, so I hope it's okay if I fix it up (make some grammar edits, re-word a couple of things, etc) tomorrow.


Add Repo Maintainers to CODEOWNERS file

Update CODEOWNERS to provide maintainers ownership of all files in their repos
Description:
Update this repositories .github/CODEOWNER file to ensure that the repository maintainer
group(s) have full control of the files in this repository.

As these are primarily version rolls, will not do this story.


chore: home performance improvements

What's the purpose of this pull request?
One of the main problems of the home page that impacts the performance is the total blocking time (TBT).
This PR tries to decrease the TBT and improve the performance score overall on the home page.
How does it work?
The highest task is the react first render. So investigating the components that have the most impact on this huge task, I discovered that the first component that uses the hook useSWR suffers from the compilation code from SWR and we can't avoid, but can delay. This component is the ButtonSignIn, that has usePersonQuery, that uses the useQuery.
As you can see, the self time is ~0, the rest comes from useSWR.

The second problem that I identified, is that requests from SWR always be at the end of this huge task, and take considerable time, ~10% of the huge task time.
So the solution is to create new tasks that handle this and isn't a long task (doesn't take more than 50ms). To achieve this, this PR suspends useProductsQueries from ProductShelfs and ProductTiles. After this, the requests time decrease from ~10% to ~3%.

After these two changes the Score increased from the mean of ~83 to ~90, and the TBT decreased from the mean of ~490 to ~330.
Also i ran 60 psi tests for mobile using PSI Test CLI and the result is:
before Page result - https://gatsby.vtex.app/

Metric
Mean
Standard deviation
Confidence Interval (95%)

Cumulative Layout shift (CLS)
0.01
0.00
[0.01, 0.01]

First Contentful Paint (FCP)
1616.62
97154.34
[-22966.82, 26200.06]

Largest Contentful Paint (LCP)
2242.76
68619.83
[-15120.46, 19605.97]

Time to Interactive (TTI)
3109.65
124738.53
[-15120.46, 19605.97]

Total Blocking Time (TBT)
496.87
40127.19
[-15120.46, 19605.97]

Performance score
0.835
0.004198
[0.834271, 0.836396]

JavaScript Execution Time
1440.94
51058.97
[-11478.76, 14360.64]

Speed Index
4091.90
26380780.37
[-11478.76, 14360.64]

after Page result - https://sfj-8aa57ab--gatsby.preview.vtex.app/

Metric
Mean
Standard deviation
Confidence Interval (95%)

Cumulative Layout shift (CLS)
0.01
0.00
[0.01, 0.01]

First Contentful Paint (FCP)
1474.42
5705.15
[30.82, 2918.03]

Largest Contentful Paint (LCP)
2038.19
23625.70
[-3939.93, 8016.32]

Time to Interactive (TTI)
2870.59
113856.03
[-3939.93, 8016.32]

Total Blocking Time (TBT)
336.70
27745.53
[-3939.93, 8016.32]

Performance score
0.909
0.003089
[0.908218, 0.909782]

JavaScript Execution Time
1286.31
94436.18
[-22609.34, 25181.96]

Speed Index
1663.93
45706.64
[-22609.34, 25181.96]

How to test it?
Open the home page, test it, also test the performance score.

Both techniques will increase ~5.5 points in the mean score metric, from 83 to 88.5.
Result data after run 60 PSI tests on mobile
Page result - https://gatsby.vtex.app/

Metric
Mean
Standard deviation
Confidence Interval (95%)

Cumulative Layout shift (CLS)
0.01
0.00
[0.01, 0.01]

First Contentful Paint (FCP)
1471.96
16361.07
[-2667.96, 5611.88]

Largest Contentful Paint (LCP)
2078.42
51218.17
[-10881.57, 15038.40]

Time to Interactive (TTI)
3133.49
83375.34
[-10881.57, 15038.40]

Total Blocking Time (TBT)
611.04
79287.66
[-10881.57, 15038.40]

Performance score
0.839
0.002986
[0.837744, 0.839256]

JavaScript Execution Time
1527.69
150394.23
[-36527.30, 39582.68]

Speed Index
1547.57
64579.30
[-36527.30, 39582.68]

Page result - with empty fallback - https://sfj-f5d9273--gatsby.preview.vtex.app/

Metric
Mean
Standard deviation
Confidence Interval (95%)

Cumulative Layout shift (CLS)
0.01
0.00
[0.01, 0.01]

First Contentful Paint (FCP)
1414.27
45162.95
[-10013.54, 12842.07]

Largest Contentful Paint (LCP)
2015.61
89416.25
[-20609.82, 24641.04]

Time to Interactive (TTI)
2917.68
14275.59
[-20609.82, 24641.04]

Total Blocking Time (TBT)
372.14
6853.78
[-20609.82, 24641.04]

Performance score
0.895
0.000558
[0.895359, 0.895641]

JavaScript Execution Time
1383.34
26503.13
[-5322.87, 8089.56]

Speed Index
1752.78
87757.12
[-5322.87, 8089.56]

Page result - with skeleton fallback - https://sfj-8fb211c--gatsby.preview.vtex.app/

Metric
Mean
Standard deviation
Confidence Interval (95%)

Cumulative Layout shift (CLS)
0.01
0.00
[0.01, 0.01]

First Contentful Paint (FCP)
1466.77
36567.15
[-7785.99, 10719.54]

Largest Contentful Paint (LCP)
2063.61
67846.41
[-15103.90, 19231.12]

Time to Interactive (TTI)
3039.61
43130.12
[-15103.90, 19231.12]

Total Blocking Time (TBT)
420.67
20062.20
[-15103.90, 19231.12]

Performance score
0.882
0.001950
[0.881673, 0.882660]

JavaScript Execution Time
1479.98
61474.36
[-14075.18, 17035.13]

Speed Index
1746.30
17456.85
[-14075.18, 17035.13]

Obs: need to thread when the requests return status 5xx, that's going to 500 page. Maybe wrap with an error boundary

Create the fallback

Fix test

Fix error https://reactjs.org/docs/error-decoder.html/?invariant=419

Drop the swr from usePersonQuery is better than use the lazyquery with effect.
The diff here, you can see the preview. https://github.com/vtex-sites/gatsby.store/pull/10/commits/98306247aa32457cb1fd57283ee92cdaea65fea6

I don't know why i can upadte the PR description
What's the purpose of this pull request?
One of the main problems of the home page that impacts the performance is the total blocking time (TBT).
This PR tries to decrease the TBT and improve the performance score overall on the home page.
How does it work?
The highest task is the react first render. So investigating the components that have the most impact on this huge task, I discovered that the first component that uses the hook useSWR suffers from the compilation code from SWR and we can't avoid, but can delay. This component is the ButtonSignIn, that has usePersonQuery, that uses the useQuery.
As you can see, the self time is ~0, the rest comes from useSWR.

Also, this PR suspends the ProductShelf and ProductTiles queries, so these components are removed from the first render, because of the task that contains the first render decrease the duration.
After these changes, this PR achieves these results

✅  the score increased from ~84 to ~90,
✅  the TBT decreased ~30%,
✅  the TTI decreased ~10%,
✅  the LCP increased ~16%,
✅  Speed index decreased ~18%,

Those results above come from the data below.
The result of 30 PSI test on mobile for each page
Page result - https://gatsby.vtex.app/ - at https://github.com/vtex-sites/gatsby.store/commit/b06bd2c58ed940bf7998adb91f208c267c3ba7f2

Metric
Mean
Standard deviation
Confidence Interval (95%)

Cumulative Layout shift (CLS)
0.01
0.00
[0.01, 0.01]

First Contentful Paint (FCP)
1688.45
3642.63
[384.95, 2991.95]

Largest Contentful Paint (LCP)
2328.17
12591.81
[-2177.75, 6834.09]

Time to Interactive (TTI)
3196.60
45061.14
[-12928.32, 19321.52]

Total Blocking Time (TBT)
508.97
11935.71
[-12928.32, 19321.52]

Performance score
0.839
0.001166
[0.838916, 0.839751]

JavaScript Execution Time
1534.87
30944.71
[-9538.55, 12608.29]

Speed Index
1753.65
8809.73
[-1398.87, 4906.17]

Page result - https://sfj-ce42e8a--gatsby.preview.vtex.app/

Metric
Mean
Standard deviation
Confidence Interval (95%)

Cumulative Layout shift (CLS)
0.01
0.00
[0.01, 0.01]

First Contentful Paint (FCP)
1501.17
22124.27
[-6415.90, 9418.24]

Largest Contentful Paint (LCP)
1937.10
38054.16
[-11680.41, 15554.60]

Time to Interactive (TTI)
2879.64
26718.59
[-6681.48, 12440.77]

Total Blocking Time (TBT)
354.02
4851.92
[-6681.48, 12440.77]

Performance score
0.901
0.000572
[0.901129, 0.901538]

JavaScript Execution Time
1271.81
32816.32
[-10471.36, 13014.98]

Speed Index
1563.31
61181.23
[-20330.12, 23456.73]

How to test it?
Open the home page, test it, also test the performance score.


Improve species generality: harvest_bullets() function

The code that generates this content:

Is horrible, and is not at all species general. There are three separate files that get swapped in depending on if it is drift+set, drift only, or set only. The addition of combine_boot_out() (#194) will vastly streamline this (making that portion of these files general).
However, the bullet-generating code currently assumes all of Chinook, chum, and sockeye will be present and reported, and the same for sheefish and whitefish in the non-salmon case. The new functionality will allow users to select which species to report, thus this code needs to either (a) be expanded to add many new swappable files to choose from when the species are selected (obviously not the correct choice) or (b) create a function make_harvest_bullets(include_set_summary, nonsalmon) that automatically generates this bullet text. This will allow only one harvest estimation file to be swapped in for each the salmon and non-salmon sections, regardless of the selections of species or gear combos.

Closed by #205


Enhancement ideas for post-install validation script

With #71 , we introduced an initial form of post-install validation for openshift. We also captured some ideas for future enhancements, which I will move to this issue for tracking.

Fine tune the execution through command line parameters

Ability to skip certain tests
Set the expected values for certain tests (ie: number of masters)

We can look into the addoption functionality. https://docs.pytest.org/en/latest/example/simple.html

@etsauer shall we use normal python implementation instead of pytest framework? Any review on the PR I submitted above?


Features To Do list: list structure

Documentation
All the documentation is on the README file.
Updates:

Set an array of some simple to do tasks
Set a function to iterate over the tasks array and populate an HTML

Notes:
Coded by @afcastaneda223
✅  - No linters errors detected.
✅  - Used Javascript for functions.
✅  - Todo list created dynamically.

Hi @afcastaneda223,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code. :pray:
Invalid CRR
Check the comments under the review.

[ ] You have submitted a CRR with unwanted folders node-modules which makes it difficult to perform code reviews properly

You should make sure all unwanted files and folders are added properly to .gitignore file  and the node-modules folder deleted.
This Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


Problem using event listener functions

I'm trying to do my first steps using remi. I walked through both the 'brief tutorial' and some examples and I keep getting attribute error every time I try to use the '.connect' function:
AttributeError: 'function' object has no attribute 'connect'
Any idea what the problem might be?
Thank you :)

@HilaGast you are probably looking at the readme on the master branch and installed the stable release from pypi. Install the moat recent version on master branch. ;-)
Or instead you can look for an old readme version from here https://github.com/dddomodossola/remi/releases

I was also getting the same errors, it seems like if I do pip install remi==1.1 and also git checkout tags/v1.1 then the examples will run. However if I am on the master branch then the examples will not run.
There seems to be some sort of issue with the event listener functions where some parts of the codebase using widget.onclick.connect() and others are using widget.set_on_click_listener().
Its also possible the remi package hasn't been updated on pypi? Unsure!
As a note, when I try to run the examples on the master branch I get the following error
  File ".../anaconda/envs/pmp_cntrl/lib/python2.7/site-packages/remi/server.py", line 809, in do_GET
    self.client.root = self.main(*self.server.userdata)

  File "helloworld_app.py", line 38, in main
    bt.onclick.connect(self.on_button_pressed)

AttributeError: 'function' object has no attribute 'connect'

Actually on master branch there is a most advanced experimental version. You installed remi from pypi where lives the stable version.
Install the experimental version with this command:
pip install git+https://github.com/dddomodossola/remi.git

And it will work fine ;-)

Please give me some more info:

Which browser are you using?
On which OS?
python version?

This seems to be a bug.

Hope this helps!

Google Chrome | 66.0.3359.181 (Official Build) (64-bit)
-- | --
Revision | a10b9cedb40738cb152f8148ddab4891df876959-refs/branch-heads/3359@{#828}
OS | Mac OS X
JavaScript | V8 6.6.346.32
Flash | <IP_ADDRESS> /Users/sinabooeshaghi/Library/Application Support/Google/Chrome/PepperFlash/<IP_ADDRESS>/PepperFlashPlayer.plugin
User Agent | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36
Command Line | /Applications/Google Chrome.app/Contents/MacOS/Google Chrome -psn_0_49164 --flag-switches-begin --flag-switches-end
Executable Path | /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
Profile Path | /Users/sinabooeshaghi/Library/Application Support/Google/Chrome/Profile 2
Variations | c134752e-b8b72c885f419cc9-ca7d8d803542328a-cbc25d7a31101bd6-71a713bfa6674cf-ca7d8d803095aa95-3f4a17dfd52c4ff7-d52c4ff747e5d3db-3d47f4f44dc30737-b8a5ea0814ae850d-3f4a17dfa605b19e-33c3eba5589b4e9f-3f4a17dff9884634-659882c0121ae2bc-ca7d8d8057f575bb-3d47f4f4ceff87ec-3f4a17df44827ee5-ca7d8d809b54a08f-28ad44a9eab0f00-3f4a17df120703dd-3f4a17dfd0ecf1da-ca7d8d8086ba59b4-477edaaef05a96e-e2c3ac679773d3bd-f23d1dea8e3b2dc5-93702590165e16d1-3f4a17df9e5c75f1-1039a221c322f799-2dbe5f93de1fbf2-3d47f4f4f79cb77b-3d47f4f44ea303a6-ecbb250e3d7e3f6a-2eb014552b33233e-cc2bd7de25fc488a-4d2fac8772606c4f-3f4a17df58a025e3-c2b417022a32876a-ca7d8d80ff29b1bd-8ec307734bc337ce-535cb40a9a2f4e5b-d226bfeb494d8760-52325d43f47ae82a-86f22ee53ac60855-486e2a9cf296190c-4a95e4f14442aae2-75cb33fced1d377-e1cc0f1412e17bc5-e1cc0f1475f0f0a0-e1cc0f14e2b18481-5c63917ae7e71889-4ad60575b1ceb06f-d137233494e68624-803f8fc4

$ system_profiler SPSoftwareDataType

    System Software Overview:

      System Version: macOS 10.12.6 (16G1036)
      Kernel Version: Darwin 16.7.0
      Boot Volume: Macintosh HD
      Boot Mode: Normal
      Computer Name: Sina’s MacBook Pro
      User Name: Sina Booeshaghi (sinabooeshaghi)
      Secure Virtual Memory: Enabled
      System Integrity Protection: Enabled
      Time since boot: 33 days 18:29

$python -V
Python 2.7.15 :: Anaconda, Inc.

$ conda info
     active environment : pmp_cntrl
    active env location : .../anaconda/envs/pmp_cntrl
            shell level : 1
       user config file : .../.condarc
 populated config files :
          conda version : 4.5.4
    conda-build version : not installed
         python version : 2.7.13.final.0
       base environment : .../anaconda  (writable)
           channel URLs : https://repo.anaconda.com/pkgs/main/osx-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/free/osx-64
                          https://repo.anaconda.com/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/r/osx-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/pro/osx-64
                          https://repo.anaconda.com/pkgs/pro/noarch
          package cache : .../anaconda/pkgs
                          .../.conda/pkgs
       envs directories : .../anaconda/envs
                          .../.conda/envs
               platform : osx-64
             user-agent : conda/4.5.4 requests/2.18.4 CPython/2.7.13 Darwin/16.7.0 OSX/10.12.6
                UID:GID : 501:20
             netrc file : None
           offline mode : False

@sbooeshaghi thank you so much for these  information. I will try to reproduce the problem and provide a fix. It seems that your browser is returning encrypted cookies, an unexpected condition in remi. Do you have the possibility to test it with another browser? (Use the parameter start_browser = False to avoid opening the browser automatically)

I'm unable to reproduce the problem. I tried same Python and browser versions on a Windows machine, unfortunately I haven't a MacOS.

Should be fixed by the last updates. Without additional information, and unable to reproduce the problem, I close this issue.


Blank Screen Issue on logout

Bug Report
Ionic Info
Run ionic info from a terminal/cmd prompt and paste the output below.
cli packages: (H:\v2-unirely-app\node_modules)

    @ionic/cli-utils  : 1.19.2
    ionic (Ionic CLI) : 3.20.0

global packages:

    cordova (Cordova CLI) : not installed

local packages:

    @ionic/app-scripts : 3.1.11
    Cordova Platforms  : android 6.3.0
    Ionic Framework    : ionic-angular 3.9.2

System:

    Node : v8.9.4
    npm  : 5.10.0
    OS   : Windows 10

Environment Variables:

    ANDROID_HOME : not set

Misc:

    backend : pro

Describe the Bug
For my application i need to restart the ionic app after logout. I am using "window.location.reload()" to achieve the goal. App is restarted, every service and observable is also re-inited. But the issues is when "window.location.reload()" executes my application shows a blank screen (white or black) for few seconds and then main page is loaded.
Steps to Reproduce
Steps to reproduce the behavior:

After clearing storage add window.location.reload()
app will show a blank screen before main page

Expected Behavior
Ionic app should not show the blank screen after reload and should work smooth.

Sounds like you're forcing a browser refresh and reloading your app, which is a little bit of a hack - your view and app state should just be reseting itself to your logged out UI (usually by clearing user state and navigating back to login UI).

@soniabehal that's difficult without seeing your code but in whichever component has the logout UI/button, add your provider to the constructor (if it's not already there) so you can call methods on it. Then add a method (such as logout()) to your provider that sets any relevant information back to the defaults (such as user details). Then call that method from your component that has the logout UI.

For further questions like this (support and tips) you should use the Ionic forum: https://forum.ionicframework.com/ - creating issue on the ionic github repository creates unnecessary extra work for the  small team that look after Ionic.


Refresh indicator not reaching headerTriggerDistance

The headerTriggerDistance is 80 by default, but for some reason my application could only reach a max offset of 78, so the onRefresh callback was never called.
To work around this I had to manually set headerTriggerDistance to something smaller in a RefreshConfiguration

you can set maxOverScrollExtent > headerTriggerDistance

That also fixes the issue, although I found the minimum value for maxOverScrollExtent to hit headerTriggerDistance was 32. Thanks for the help


IAO Branch meeting prep

Description
This is a space to keep track of any preparation needed for the next IAO branch meeting
DOD

[ ] Share out results of reporting survey
[ ]
[ ]
[ ]
[ ]

cc: @arielleandrews @m-prodan


Chrome extension can't render json properly

example json:
https://gitee.com/maotoumao/MusicFreePlugins/raw/master/plugins.json

@ericallam The provided link is redirecting to this link: https://assets.gitee.com/favicon.ico. Could you provide another json with the issue? I would like to work on this.

For English Reader:
Did jsonhero has support json as a Chome extension?
Jsonhero  现在还能集成到Chrome 插件中吗?


build(deps): update all dependencies

update all dependencies to the latest versions
fix issues with types with @octokit/rest
update dependabot to use build for the prefix as chore is no
longer valid

[ch8743]

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


feat(mongodb-instrumentation): support mongodb v4

The new mongodb driver (that has been rewritten from scratch) has been released, you can see the PR of renovate which obviously fails here: https://github.com/open-telemetry/opentelemetry-js-contrib/pull/575.
I expect people will start to request to support it in the near term so opening an issue for this

Is the plan to support both v4 and v3 or just upgrade? (v3 will get bug fixes for a year).

I think we should support both of them since v3 is still massively used

Hey guys :)
I can do that!
pls assign this to me.
@vmarchaud @CptSchnitz


Support anchor-only links within partials

Let's say a partial includes a link like this:
[Link text](#anchor)

The link will render like this, which is incorrect:
[Link text](includes/#anchor)

This is because of the way remark-includes processes relative links in partials.
Some partials need to link to an anchor within the same page. This change supports this by ignoring links with references that begin with #. Since all headings are flattened into the containing page, we can safely ignore file paths for anchor links.

For context, I'd like the script that auto-generates the resource reference to generate one partial (and maybe multiple partials at some point) so we can be flexible in how we include the auto-generated content in the docs. This only works if partials process anchor links correctly.


Plans for project

Considering virtualenv now creates venv environments, should we deprecate and freeze this project?

Note that one can set an env var to convince virtualenv to delegate the job to venv itself 🤷♂

Yes, tox-venv should be archived as it no longer serves any real purpose. The original goal was to bypass virtualenv and its various bugs, but virtualenv is now well maintained and tox-venv has in turn become its own source of bugs.
For users that want to delegate to venv, they just need to add the following, right?
[testenv]
setenv =
    VIRTUALENV_CREATOR=venv

Indeed, though virtualenv now creates the same type of virtual environment as venv... so there's no reason why can't just use virtualenv as is.

IMHO just archive the project; update README to say the above.


ازكار افتادن ربات

Not Found
The requested URL was not found on this server.
Apache/2.4.41 (Ubuntu) Server at -------------- Port 443

مشکل از سرور و دامنته


Normalize select element styling

To allow select to have a height on Safari for Mac, and add some consistency between browsers, just add:
@media screen and (-webkit-min-device-pixel-ratio:0) { /* For Safari and Chrome */
    select {
        border-color: #adadb4; /* Turns off Aqua */
    }
}

Another way far more consistent to deactivate Aqua is to touch the border-image property:
select {
border-image-source: url();
}


Installation infrastructure into Git, Nightly builds and more

First: Thanks for the great work!
Second: The docs fit the Github version, but not the version distributed via pip. This is completely o. k. and acceptable. An easy installation process for the developer version for the uninitiated would be nice to be able to follow the Jupyter notebooks.
Simply installing via the Github repository did not work:
pip install --pre git+https://github.com/gpitt71/gemact-code.git
Defaulting to user installation because normal site-packages is not writeable
Collecting git+https://github.com/gpitt71/gemact-code.git
  Cloning https://github.com/gpitt71/gemact-code.git to c:\users\peter.jung\appdata\local\temp\pip-req-build-3n08yg0o
  Running command git clone --filter=blob:none --quiet https://github.com/gpitt71/gemact-code.git 'C:\Users\peter.jung\AppData\Local\Temp\pip-req-build-3n08yg0o'
  Resolved https://github.com/gpitt71/gemact-code.git to commit ec6a080c5e758af29214906b81677bda4a5e856e
ERROR: git+https://github.com/gpitt71/gemact-code.git does not appear to be a Python project: neither 'setup.py' nor 'pyproject.toml' found.

Could you

include a valid pyproject.toml into the repository and / or
give installation instructions for the developer version within the Readme or
produce daily "Nightly builds", i. e. every day a newly packed Python package, which was automatically packed via Github automatical releases, e.g. via this one?

Thank you very much for your feedback.
You should now be able to install the GitHub version of gemact using the command:
pip install git+https://github.com/gpitt71/gemact-code.git
Be aware that there could be ongoing changes in the GitHub version with respect to the version we released on PyPI.
We will soon release a new version of the package that will be stable with respect to the current GitHub version,
Let me know if this helped!

Many thanks, it works and helped! Nice to know: The uninstallation works too. (I re-installed it 1x to test this.)

Thank you again for your feedback, it was very helpufull to us.
I will close this issue


Update release.yml to use OIDC publishing

Fixes #36.

I've also removed the PYPI_TOKEN secret from this repo and the API token from PyPI.


[Refactor] add some protect code for find column_name

What type of PR is this：

[] BugFix
[ ] Feature
[ ] Enhancement
[x] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] I have added user document for my new feature or new function

starrocks_be_unittest succeeded.


Create better layout for mobile/small screens

The current approach looks good on large window sizes but takes up too much space on small screens.

The logo needs too much space (I think it takes up too much space in every case)
Route alternatives are displayed as rows. This takes too much horizontal screen space
The search box itself takes up too much space especially when more via points are displayed
close or hide elevation widget

For mobile I looked how others (qwant, google, ...) did this and I think the most important aspect is that the map should be as large as possible :D
And e.g. when clicking on the input the rest of the panel can disappear (maybe even the map). The tricky thing is the alternatives and the vehicle options. I solved it here using an "expandable row" e.g. clicking on the "alternatives" shows all alternatives in one row below and similar for the vehicles and options. The alternatives could be even omitted (not sure if that is good UX) when we assume the user knows how to click on the "1 circle" or "2 circle" on the map. Additionally if the screen is still too small I put a fullscreen icon below or we could use full screen as soon as the map is dragged or something.

Should we show the logo only when we type the location? (and/or remove the "maps" text of the logo? and/or move "GraphHopper" into the copyright text of the map?)

Elevatio Plugin should not be displayed on small sceens

Related to #20

Compare different routing providers on mobile

Waze

iOS (Apple Maps)

Here maps (iOS)

Bikemap (iOS)

( Having the input at the bottom like HERE maps is not a bad idea. E.g. firefox mobile uses the address bar at the bottom too and once you are used to it, the bar at the top seems miles away :D )

Compare different routing providers on mobile

The logo obviously takes too much space? And maybe it would be sufficient to add a single line (distance+time) for each alternative?
Btw on my iphone 5s, ios 12.4.9 the layout is broken (the add point button takes too much/all space):

Same problem in both FF and Safari. Also it became clear that showing the auto complete suggestions below the input boxes does not work, because they are entirely hidden by the on-screen keyboard and this makes you think there are no auto completions at all.

Ok sure. Whatever works best. I just thought the vertical space seems more limited than the horizontal space

Scrolling swiping in horizontal direction sounds good to me too.

This is a mockup I had lying around of the old maps mobile view.


New version: Ryujinx.Ryujinx version 1.1.1110

Pull request has been created with Komac v1.11.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

For moderators
This account is automated by Github Actions and the source code was created by CoolPlayLin. If you have any questions about any pull request, don't hesitate to ping @Exorcism0666, I'll get a notification.

[!important]
Please carefully review these Pull Request before merging. If it is a Pull Request for removing incorrect content and the URLs are issue, free upon manual checking, please close this Pull Request directly. (It is best to inform Exorcism0666 of the closure.)

良い一日をお過ごしください！

Automatic Validation ended with:

Exception during executable launch operation System.InvalidOperationException: No process is associated with this object.

(Automated response - build 574.)

@wingetbot waivers Add Validation-Executable-Error


Fix up-to-date-check issue

We discovered an issue with the Fast Up-to-date check feature of Visual Studio. It seemed to be looking for debug symbols, but they are never produced by an MSBuild.Sdk.SqlProj project. So we made that explicit now, which seems to fix the issue with fast-up-to-date check.
Fixes: #74

@jeffrosenberg @ErikEJ Turns out that the fast up-to-date check done by Visual Studio didn't work for project using this SDK due to it expecting a .pdb file alongside the .dacpac. Setting this property it no longer looks for that. I think this a good fix to have regardless of whether it fixes #63, agreed?


Feature request: release constants

Let's say I have a bosh release with a file jobs/containerd/templates/bin/env with the follow line:
export ROOT_DIR=/var/vcap/data/containerd/root

And I have another file, jobs/containerd/templates/config/containerd.toml with this content:
root = /var/vcap/data/containerd/root

Both of these files reference the same path, but I'm repeating myself by having this in 2 places. Currently with BOSH I would be able to avoid this by having this in my spec file:
properties:
  containerd.root:
    default: /var/vcap/data/containerd/root

This is OK, but in this case I wouldn't want to allow operators deploying this release to change this property.
Maybe something like this would work better?
properties:
  containerd.root:
    const: /var/vcap/data/containerd/root

@BooleanCat one idea previously discussed was to have a configurable: false configuration.

Is this a feature in your backlog/icebox?
nope, just recorded here for now.


PaddleDevice.Gpu() returns junk characters in OCR results

Hello,
I am using following packages:
OpenCvSharp4.runtime.win <IP_ADDRESS>30115
Sdcb.PaddleInference <IP_ADDRESS>
Sdcb.PaddleInference.runtime.win64.cuda102_cudnn76_sm61_75 2.4.0
Sdcb.PaddleOCR <IP_ADDRESS>
Sdcb.PaddleOCR.Models.LocalV3 <IP_ADDRESS>
I did follow the tutorial > "How to enable GPU?" as mentioned.
CUDA 10.2 and cudnn cudnn-10.2-windows10-x64-v<IP_ADDRESS>
are installed.  Also TensorRT-<IP_ADDRESS>.Windows10.x86_64.cuda-10.2.cudnn7.6 is installed.
And all PATH are properly set.
The code does work, but the result.Text gives some junk / special characters instead of the actual text. There are no errors and the task manager does show the GPU is being used.
Example:  A simple "Hello World" jpg file gives following result:
6$:L#U^2py
-_hqN
Can you please suggest what is wrong? Changing PaddleDevice.Gpu() back to PaddleDevice.Mkldnn() OR  PaddleDevice.Openblas()
works fine and gives correct result as "Hello World". Without changing any Nuget packages.

Has this something to do with OpenCVSharp? does it require a GpuMat instead of Mat when using PaddleDevice.Gpu()?
Does this require a specific graphics card? having some specific compute capability? Mine has compute capability of 3.5, which I think is supported by CUDA 10.2

Thanks!

Update: I was able to use the GPU by using the depreciated Nuget Sdcb.PaddleInference.runtime.win64.cuda10_cudnn7
Thanks!

Nuget : Sdcb.PaddleInference.runtime.win64.cuda10_cudnn7 works.


⚠ Bofrost.lu has degraded performance

In 5ffa159, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1834 ms

Resolved: Bofrost.lu performance has improved in 0a3b4be after 53 minutes.


Let user to specify "format as" in query builder

What happened:
Currently, the user is forced to follow the predefined algorithm that figures out the expected data format based on fields available in the query and its name. (please see Screenshots section)
This requires the user to remember the rules to follow described in README.md.
What you expected to happen:
The user should be able to intentionally select what is the data format expected by him. Please see the screenshot attached from a view in Altinity's CH data source plugin.
Screenshots
Grafana CH plugin:
export const getFormat = (sql: string): Format => {
  // convention to format as time series
  // first field as "time" alias and requires at least 2 fields (time and metric)
  const selectList = getFields(sql);
  // if there are more than 2 fields, index 1 will be a ','
  if (selectList.length > 2 && isString(selectList[0])) {
    const firstProjection = selectList[0].trim().toLowerCase();
    if (firstProjection.endsWith('as time')) {
      return Format.TIMESERIES;
    }
    if (firstProjection.endsWith('as log_time')) {
      return Format.LOGS;
    }
  }
  return Format.TABLE;
};

Altinity's data source plugin:

This is a UX problem in my opinion. If the user selects "Time series" but the returned data doesn't contain the right fields for that format do we throw an error? Do we switch back to Table view? Both? The current reliance on user's having stored the README rules in their brains isn't ideal either.
We could do something where we have the three formats as a dropdown in the header of the query builder and when you switch between them show some help text for each one? Ideally we work with UX on how this works.

I suggest providing a dropdown in the header so that user can pick format in advance. Based on selection, there might be either a info box displayed with details on query requirements, or we can be more proactive validating whether query does have everything we need.  (not sure if doable as user can provide his query)
When data frame received from backend, fields has to be validated.
Please let me know if you want to follow up on it with UX on your side.

@jkaflik I'll post back here once I have a chat with UX. The next step after that will be figuring out when this can get worked on.

Hopefully I'll be able to reconnect with UX next week. Sorry for the delay.

Other things we can do based on the query  selector:

extend query builder depending on the query type

add log level field selector for logs type

to hint preferred visualization type

add logs hint https://grafana.com/docs/grafana/latest/developers/plugins/build-a-logs-data-source-plugin/#optional-add-preferred-visualisation-type-hint-to-the-data-frame
add graph hint for aggregations

improve visualizations:

add highlight https://github.com/grafana/grafana/blob/98596c36ad733d159c0539eae160d0677f97ae7a/public/app/plugins/datasource/elasticsearch/ElasticResponse.ts#L538
process timeseries aggreggations https://github.com/grafana/grafana/blob/98596c36ad733d159c0539eae160d0677f97ae7a/public/app/plugins/datasource/elasticsearch/ElasticResponse.ts#L484

Hi @asimpson
did you have a chance to speak to UX?

@jkaflik I have not, I will try to chat with them Wednesday.


Replacing Logo

**I'm submitting a request to have my logo updated

PR#17474

...**
[ ] bug report
[ ] feature request
[ ] question about the decisions made in the repository
[ ] question about how to use this project

Summary

Other information (e.g. detailed explanation, stack traces, related issues, suggestions how to fix, links for us to have context, eg. StackOverflow, personal fork, etc.)

added comment to #17474

closing due to inactivity, please reopen if this is still an issue