Add option for logging output into a log file

Hello
Can we have such option?
for now, I used AI to edit the script and replaced all "print" functions with this function
def custom_logger(msg):
    with open('/tmp/tomato.log', 'w') as log_file:
        log_file.write(f'{msg}\n')

Or maybe a status function like tomato -status
You may ask why I need the output in a log file? well I'm using the output for a block in DWM bar

So, if it's possible to have such option please do so.
If not, please close the issue.
Thanks in advance.

AI generated code for 'tomato -status"
Output is like: Break/Work Minutes:Secons
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import sys
import time
import subprocess
import os

WORK_MINUTES = 25
BREAK_MINUTES = 5

# File to store the start time and duration
TIMER_FILE = '/tmp/tomato_timer.txt'

def main():
    try:
        if len(sys.argv) <= 1:
            start_timer(WORK_MINUTES)
            print(f'🍅 tomato {WORK_MINUTES} minutes. Ctrl+C to exit')
            tomato(WORK_MINUTES, 'It is time to take a break')

        elif sys.argv[1] == '-t':
            minutes = int(sys.argv[2]) if len(sys.argv) > 2 else WORK_MINUTES
            start_timer(minutes, 'Work')
            print(f'🍅 tomato {minutes} minutes. Ctrl+C to exit')
            tomato(minutes, 'It is time to take a break')

        elif sys.argv[1] == '-b':
            minutes = int(sys.argv[2]) if len(sys.argv) > 2 else BREAK_MINUTES
            start_timer(minutes, 'Break')
            print(f'🛀 break {minutes} minutes. Ctrl+C to exit')
            tomato(minutes, 'It is time to work')

        elif sys.argv[1] == '-status':
            print_status()

        elif sys.argv[1] == '-h':
            help()

        else:
            help()

    except KeyboardInterrupt:
        print('\n👋 goodbye')
    except Exception as ex:
        print(ex)
        exit(1)

def start_timer(minutes, session_type):
    with open(TIMER_FILE, 'w') as f:
        start_time = time.perf_counter()
        f.write(f'{start_time}\n{minutes * 60}\n{session_type}\n')

def print_status():
    if os.path.exists(TIMER_FILE):
        with open(TIMER_FILE, 'r') as f:
            lines = f.readlines()
            if len(lines) < 3:
                print('No active timer.')
                return
            start_time = float(lines[0].strip())
            duration = float(lines[1].strip())
            session_type = lines[2].strip()
            elapsed = time.perf_counter() - start_time
            remaining = duration - elapsed
            if remaining > 0:
                minutes = int(remaining // 60)
                seconds = int(remaining % 60)
                print(f'{session_type} {minutes}:{seconds:02d}')
            else:
                print('No active timer.')
    else:
        print('No active timer.')

Updated main function to have the ability to set sequence of -t and -b.
Now you can have different time sequence for your break and work session.
Like
tomato -t 50 -b 10 -t 25 -b 5
def main():
    try:
        if len(sys.argv) <= 1:
            start_timer(WORK_MINUTES, 'Work')
            print(f'🍅 tomato {WORK_MINUTES} minutes. Ctrl+C to exit')
            tomato(WORK_MINUTES, 'It is time to take a break')
            start_timer(BREAK_MINUTES, 'Break')
            print(f'🛀 break {BREAK_MINUTES} minutes. Ctrl+C to exit')
            tomato(BREAK_MINUTES, 'It is time to work')

        elif sys.argv[1] in ['-t', '-b']:
            i = 1
            while i < len(sys.argv):
                if sys.argv[i] == '-t':
                    minutes = int(sys.argv[i+1]) if i+1 < len(sys.argv) else WORK_MINUTES
                    start_timer(minutes, 'Work')
                    print(f'🍅 tomato {minutes} minutes. Ctrl+C to exit')
                    tomato(minutes, 'It is time to take a break')
                elif sys.argv[i] == '-b':
                    minutes = int(sys.argv[i+1]) if i+1 < len(sys.argv) else BREAK_MINUTES
                    start_timer(minutes, 'Break')
                    print(f'🛀 break {minutes} minutes. Ctrl+C to exit')
                    tomato(minutes, 'It is time to work')
                i += 2

        elif sys.argv[1] == '-status':
            print_status()

        elif sys.argv[1] == '-h':
            help()

        else:
            help()

    except KeyboardInterrupt:
        print('\n👋 goodbye')
    except Exception as ex:
        print(ex)
        exit(1)


Scroll on mobile

Should add a class/style to the body that makes it so when the modal is open only the modal can scroll and not the page. This causes it to have to resize when you scroll on Android and probably iOS when the browser hides or shows the URL bar.
Should be a simple as adding a no-scroll class to the body and .no-scroll{overflow:hidden;}

@Jon8linden  Stay tuned in version 1.3.0, this feature is one about to come  :facepunch:

overflow: hidden is successfully added to body but it seems not to work.
I can still scroll the background...
Do you have any ideas how i can fix this?

@AthletiaTech, Unfortunately I have not found a definitive solution yet, but I got something for ios, Only it does not seem to work 100%, you could test too? Upgrade to the latest version(v1.3.3), thanks!

I'm suffering this bug too, will try to find a solution too. actually, there are a few more involving mobile, like when you focus on a input

@CavalcanteLeo, caso tenha outros bugs, peço que crie uma issue para cada um deles, fica mais simples de corrigi-los, valeu.

Arrumei aqui, mas to sem tempo nenhum de fazer uma merge request...
Vou tentar semana que vem...

me manda pelo face @CavalcanteLeo, que eu dou uma olhada! inté


[UI] Dropzone

A dropzone would be a large box which a file could be dragged & dropped to trigger file upload dialog.
This would include a class "file upload" dialog as well to allow users to navigate their file system.

+1

+1

+1

+1

We need dropzone jlukic

+1

+1

+1

+1

+1

+1


Downloaded dependencies from private repositories point to unexisting repos

I set a bunch of private repositories were I host some modules and a custom target. When I build the main  application module, the dependencies are also downloaded and store in the yotta_modules and yotta_targets folders respectively.
Nevertheless if you check the contents of the .git/config file, only the one in the main executable module is correct and pointing to the proper repo url.
For instance, my hello world executable module points to:
[remote "origin"]
url = https://git.mygithot.com/user/example-hello-world.git
fetch = +refs/heads/:refs/remotes/origin/
While the custom target points to
[remote "origin"]
url = c:\users\myusername\appdata\local\temp\tmpqdanbw
fetch = +refs/heads/:refs/remotes/origin/
And the private modules to:
[remote "origin"]
url = c:\users\myusername\appdata\local\temp\tmpdsjo3g
fetch = +refs/heads/:refs/remotes/origin/
where tmpdsjo3g varies from module to module
Shouldn't those origins point to the repos from were the module was originally cloned?

Not sure exactly what you mean – please could you clarify:

I set a bunch of private repositories were I host some modules
have you specified github-type "username/reponame" dependencies in your module.json file to pull these dependencies?

If so, yotta will use the github API to download the corresponding versions of these dependencies into yotta_modules. It will not git-clone them, so there will be no references to them in .git/config.
If, on the other hand you have specified an arbitrary git+ssh://somewhere-private.com/#~1.2.3 URL in a dependency, then yotta uses git to fetch this: it will first do a shallow clone of the repository into a temporary folder, and the copy out the specific version of your dependency (by looking at tags) that matches, for example, the ~1.2.3 specification, into your yotta_modules.
In neither case will yotta clone something into yotta_modules, and you should not be editing or performing git operations inside yotta_modules, as anything you do there may be overwritten.
Please use yotta link if you want to simultaneously develop a module and something that it depends on. Note that very close coupling of two modules that requires such development is probably an indication that your modules do not have sufficiently clear interfaces.


.limit() and .offset() are not working properly

When using .limit() in the JS API, it is applied to the overall JOIN result.
.offset() used for search pagination.
Example:
Limit result to 20, only get returned 4-5 results.

Limit is used for performance reasons. If you go by search results returned, then performance will be variable. Perhaps a different function should be used for getting 100 potential results.

This is required by GurbaniNow/api for the Node.js re-write.

Fixed in
https://github.com/GurbaniNow/api/commit/c2abac5125d8a165ef5978d2e99685735d40a4ea
https://github.com/GurbaniNow/api/commit/c12355ee48031e800c3b772b4f929b020c17c1f8

How would performance be variable. The structure for each line returned would be the same, limiting search results is for performance.

As I understand:
Limit is running 20 queries. It is not limiting the number of results returned.
Limit will always run 20 queries. Getting 20 search results could require a variable number of lines to be queried, hence variable performance. It should not matter much on a strong server. But I think we use the limit function this way in desktop app (can you clarify @Harjot1Singh ?).
If so, perhaps a new function could be used for limiting search results in addition to pagination/offset support?

This is basically what we need to do:
https://stackoverflow.com/questions/3406412/limit-join-query-on-specific-table

On 5 Apr 2020, at 13:08, Bhajneet S.K<EMAIL_ADDRESS>wrote:

As I understand:
Limit is running 20 queries. It is not limiting the number of results returned.
Limit will always run 20 queries. Getting 20 search results could require a variable number of lines to be queried, hence variable performance. It should not matter much on a strong server. But I think we use the limit function this way in desktop app (can you clarify @Harjot1Singh ?).
If so, perhaps a new function could be used for limiting search results in addition to pagination/offset support?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

If so, then limit itself is variable, due to the query changing whenever another JOIN is added/removed
So I guess this issue should be changed to add limiting search results function and pagination/offset support.

@Harjot1Singh I think that would work, but do we have queries inside queries? Never looked at the raw query generated from the API.


delete unused binary

There was a failure on one of the three runs. That failure isn't related to this PR. This file is unused.
I'll merge the PR now.


Publish Scala 2.12.x compatible binaries

Currently this is on hold awaiting a Kafka release against Scala 2.12.

Looks like Kafka build against 2.12 is available
http://search.maven.org/#artifactdetails|org.apache.kafka|kafka_2.12|<IP_ADDRESS>|jar
<IP_ADDRESS> release.

+1

BTW, as this lib wraps the Java driver, why are you waiting for a Kafka release against 2.12?

@hseeberger The testkit we provide depends on Kafka.

Thanks for the clarification!

Pushed out a new release <IP_ADDRESS> - crossbuilt against 2.11.8 and 2.12.1.

Wow, that was fast. Thanks!


Dock widget: should not display "running" indicator when "Show only running apps" is enabled

Describe the bug
In previous version of the Dock widget (1.4 I believe), behaviour was correct. After update to 2.0, running indicator is displayed even when "Show only running apps" is enabled.
How to reproduce
Manage Widgets / Dock / check "Show only running apps".
Expected behavior
Since only running apps are displayed, running indicator should not be displayed.
Screenshots

Versions:

macOS version: 10.15.7
Pock version:  0.9.0-22
Doc widget: 2.0

Dock Widget 2.0 now follows System Dock Preferences for showing/hiding running indicators.
You can disable it there, if you prefer :)

Dock Widget 2.0 now follows System Dock Preferences for showing/hiding running indicators. You can disable it there, if you prefer :)

Sorry but I think it shouldn't be the same setting: in the normal dock I want to display the running indicator because there are many icons and it makes sense to know which apps are running. But in Pock when I have selected "Show only running apps" there are only running apps in the touch bar so it makes no sense to show the running indicator!
Sharing the setting with the native dock is not an improvement, they are different docks and one should be able to use different settings. Or follow my advice and ignore the setting when "Show only running apps" is active :)

Did you implement this in Dock widget 2.0.1 ? It looks ok to me now :)


httprepl -c|--content syntax error

The docs state:

Provides an inline HTTP request body. For example, -c "{"id":2,"name":"Cherry"}"

In order to work, the double quotes should be escaped, if not you get http error 400.
It sould be corrected to:
-c "{\"id\":2,\"name\":\"Cherry\"}"
Thanks.

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

ID: 1b76f907-1815-d4d3-c04b-8df935941d8b
Version Independent ID: 8426ee38-422d-6286-70eb-f7f38cca0dd0
Content: Test web APIs with the HttpRepl
Content Source: aspnetcore/web-api/http-repl/index.md
Product: aspnet-core
Technology: aspnetcore-webapi
GitHub Login: @Rick-Anderson
Microsoft Alias: scaddie

Associated WorkItem - 60874

Yes, I remember that, in general testing Web API's depends to on the testing tool. What happens when you use
-c "{d:2,name:\"Cherry\"}" ?
What about single quotes?
Thanks for reporting this. Any chance you could PR this? At the top right of the article, select the Edit pen icon:

Select the pen icon again. Save.

What happens when you use
-c "{d:2,name:\"Cherry\"}" ?
What about single quotes?

400 in both cases


Another Round of UI changes

Description
Removed the orange image used as a divider and replaced them with a small 1px orange line. Much of the centering was off with a number of pages so that is fixed as well to make them more uniform.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have removed unnecessary comments/console logs from my code
[x] I have made corresponding changes to the documentation if necessary (optional)
[x] My changes generate no new warnings
[x] I have checked my code and corrected any misspellings
[x] No duplicate code left within changed files
[x] Size of pull request kept to a minimum
[x] Pull request description clearly describes changes made & motivations for said changes

The only changes that remain are to the Admin-specific pages and the Support page.

Can we get a snippet of what the new interface looks like?

make sure to resolve the merge conflicts though


contributing: black install / docs and pipenv over venv

While refreshing #649 I ended up learning various things.

I think usage of pipenv should be favored over venv in the contribution docs - so I moved instructions to use pipenv above venv.
Black has an issue about not formatting Python files without .py extension, like our verify files in the tests folder. If a pre-commit git hook is used to invoke black, this is no longer an issue.
pre-commit was installed from dev-requirements.txt but black wasn't, but still explicitly written out to be installed. I moved black to dev-requirements.txt. Hmmm but I think pre-commit will install the black specified by .pre-commit-config.yaml separately anyhow, so in reality we should probably remove all dependency of black and always invoke it through pre-commit.
UPDATE: I made it so in the fourth commit.

Review suggestions

Form an opinion about 3 and ask me to act on it.
UPDATE: I made a fourth commit directly... I removed black as a dependency and shifted recommendation to invoking it through pre-commit run.

When we introduced black the feeling was that pre-commit was too confusing and/or failed for some. This is why we have the "entry level" setup that asks people to pip install black instead of using pre-commit. As you point out pre-commit installs black itself so this is somewhat redundant. At the time @choldgraf had problems while following the pre-commit instructions. We should check if that is still the case and what people think about what the lowest barrier to entry setup is.
In general we have tried to only have one way to setup things in the contributing guide. The goal when writing the instructions is to have a very high chance of them "just working" for someone who isn't a regular Python user and being easy to translate into other ways of setting things up for more expert users. For example we never mention conda but assume that a conda user knows how to translate the instructions.
 As in: I am an very experienced Python user and from the one pipenv command I can't instantly translate what I should do to get up and running with my preferred setup method. So while I don't actually use our venv instructions verbatim (and maybe even think thats not the best way to setup things) I do know how to translate them because they are so explicit.
Another problem I think we should ponder is how popular pipenv is amongst users. I am not sure how we'd get data on "venv users", "conda users", "pipenv users", etc. The only information I do have is that pipenv got hyped by its author and that he took several steps that in retrospect turned out to be premature (for example declaring it "the official way to install stuff") and aimed at misleading people.
In conclusion:

I think we should keep the (super) explicit setup steps as the way we explain how to setup stuff and assume that people with opinions/other preferences are experienced enough to translate them.
How do we balance explaining different methods of getting setup and keeping the guide short and clear? Should we list venv and pipenv and conda steps? Should we list none? My preference is to not cover any of the alternatives after we have the "basic and explicit" one (lower maintenance and clearer docs)

Thank you for reviewing this Tim!
My experience is very clear, but I'm okay to adjust the PR for concrete change suggestions or even scrap most changes and open up a new PR with the single change of adding a note about the issue I experienced with running the command: black .
pipenv / venv
pipenv / venv - discussion about what that is listed first among two options that were already there, and me moving pipenv as a first entry.
I've struggled with having multiple requirements files in general, it took me a long time before I grasped what went on within z2jh. This repo has that, and that is a key benefit of using pipenv + Pipfile. One more reason for using pipenv and Pipfile is that it allows us to Pipfile.lock and get something very reproducible, something I consider relevant for this repo.
In my opinion, and with less background in python about the history of tools etc, I'm less confused about a short instructions of pipenv, it does things I understand as well.
Black / pre-commit
Regarding pre-commit focused instructions vs black focused instructions.
I'm one of the users that felt pre-commit was overkill initially, so I opted to not do that. I ended up needing to learn all about it in order to debug and conclude the difference between black . and pre-commit run --all-files. I then felt obliged to help others avoid this issue by documenting that and figured it would be easier to strongly encourage the use of pre-commit right away.

I think we should keep the (super) explicit setup steps as the way we explain how to setup stuff and assume that people with opinions/other preferences are experienced enough to translate them.

I didn't grasp if/how that translates to action suggestions for this PR.

How do we balance explaining different methods of getting setup and keeping the guide short and clear? Should we list venv and pipenv and conda steps? Should we list none? My preference is to not cover any of the alternatives after we have the "basic and explicit" one (lower maintenance and clearer docs)

I'd vote for pipenv + venv as it is no change to have that, or only pipenv for lowered maintenance and clearer docs.

I didn't grasp if/how that translates to action suggestions for this PR.

The action would be: don't remove/hide/make less prominent the venv based steps

I'm one of the users that felt pre-commit was overkill initially

Good, well, bad you went in circles but good that we gained some experience :) I am all for the pre-commit based setup as that is what I actually use.

For me the thing we should aim to achieve with the instructions is to present them in a language that as many readers as possible understand. Either because they can "blindly" copy and paste them and succeed or because they can read them and translate into their favourite language. For me this shared language is pip install based commands (even though I don't actually use it when I setup this repo for work). The way I'd pick the shared language is by number of users and "built-in'ness". For me pip ticks both those boxes: pip is used by more humans then any of the other options (this is an informed hunch*) and it is available in most Python installs (via system package managers, conda, pyenv, home brew, etc).
I use conda every day, all day to create environments and install software. However I think compared to the total number of Python users "no one else" uses conda which makes it a bad option for the shared language of install instructions. In order to achieve the "just copy&paste it" goal we'd have to also provide instructions for installing conda itself. I've chosen to be a conda user and learnt how to translate pip install -r some-file.txt into conda install -n my-fave-env -c conda-forge <packages>. I think that the effort to learn how to translate from the mainstream option to my niche option is on my plate.
I am not sure we need a lock file. IMHO that is relevant if you want to reliably produce deployments, however repo2docker is more like a library which means it should not pin its versions super tightly. We also create deployments of repo2docker but those are via docker images and we have one image for ~every commit on master so you can recover exactly the state things were in for each deployment.

The hunch is based on watching Python users and what the PyPA starts with when you google for "install python package" https://packaging.python.org/tutorials/installing-packages/

@betatim I removed the commit where I reordered the venv / pipenv instructions

I consider pip to be easy, but not venv. Since we in the contributing docs suggest the use of pip+venv rather than only pip, i think pipenv is easier and more understandable to do the job.

Nods, I don't really like venv either, compared to conda environment they feel like hacks. However at the last iteration of editing these docs there was support to have venv mentioned because (and here I agree) it makes sense to have some form of one-environment-per-project. Maybe we can change the start to have a sentence for humans without commands saying something like "It makes sense for you to create a environment (via venv, conda, pipenv, or other) for this project and setup the dependencies: ...now come the pip commands...". This way we don't tell people how to make an env, but we do tell them there are several ways and they need to pick one.

This PR, only does this within that section currently:

Is it okay that we shift this discussion to another PR?

Somewhat hooked by the discussion though:
When I try to make what you suggest concrete I come up with the following idea:

tell the users that venv/conda can be used to create an environment without saying how, and then pip install commands
point out it is also possible to install and create an environment using the Pipfile / Pipfile.lock files in a single command after installing pipenv.

When I consider what I'd suggest myself, I conclude that I'd embrace pipenv and the Pipfile + Pipfile.lock we currently have and remove the [xxx-]requirements.txt / environment.yml files that are redundant. Perhaps adding a note that we can run commands to generate requirements.txt files from the Pipfile if we want.

I did some rewording of the Code formatting section.

mmmm, I got the same error I got before:
(dev) choldgraf@barbecue ~/github/forks/python/jupyter/jupyterhub/repo2docker (master) $ pre-commit run --all-files
[INFO] Installing environment for https://github.com/ambv/black.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
An unexpected error has occurred: CalledProcessError: Command: ('/home/choldgraf/anaconda/envs/dev/bin/python', '-mvirtualenv', '/home/choldgraf/.cache/pre-commit/repo46rqbbtl/py_env-python3', '-p', 'python3')
Return code: 100
Expected return code: 0
Output:
    Using base prefix '/home/choldgraf/anaconda/envs/dev'
    New python executable in /home/choldgraf/.cache/pre-commit/repo46rqbbtl/py_env-python3/bin/python3
    Also creating executable in /home/choldgraf/.cache/pre-commit/repo46rqbbtl/py_env-python3/bin/python
    ERROR: The executable /home/choldgraf/.cache/pre-commit/repo46rqbbtl/py_env-python3/bin/python3 is not functioning
    ERROR: It thinks sys.prefix is '/' (should be '/home/choldgraf/.cache/pre-commit/repo46rqbbtl/py_env-python3')
    ERROR: virtualenv is not compatible with this system or executable
    Running virtualenv with interpreter /home/choldgraf/anaconda/envs/dev/bin/python3

Errors:
    /home/choldgraf/.cache/pre-commit/repo46rqbbtl/py_env-python3/bin/python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory

@choldgraf can you try leaving all envs, conda etc, and try using pipenv?
pip install pipenv
pipenv install --dev
pipenv shell
pre-commit run

I've tried and tested the following on my Windows computer successfully. I corrected some details.

The documentation for pipenv also needed a note about pipenv shell to activate the virtual environment.
pre-commit needed to be added as a --dev package within our Pipfile, and Pipfile.lock needed to be updated to reflect this.

Looking into this a bit more, it looks like in general pre-commit doesn't work well with conda unless it's installed by conda:
https://github.com/pre-commit/pre-commit/issues/701
So, I uninstalled pre-commit and then ran conda install -c conda-forge pre-commit
and then it worked!
So, we should update these instructions to tell people what to do if they're using conda. I am -1 requiring that people use pipenv instead of other package managers (though fine in general with package managers being in the docs)

I would be hesitant to discontinue the recommendation python3 -m venv named_env. pipenv relies on the virtualenv package which was designed to meet the needs of creating a virtual environment in Python 2 and is a separate package. venv is available as part of CPython.
While I like the concept of a Pipfile.lock, I would prefer to have the option to use venv over pipenv.

Hi all, I'll close this PR as I've lost momentum on it - anyone is of course welcome to continue from this point if wanted! Thanks everyone for working with me on this!


Generate unique codes as a background task

See also https://github.com/Amsterdam/openstad-oauth2-server/pull/89


How to load ollama models like SmolLLM2

How can we load small LLM models like smolLLM2 via this plugin?  Ex https://ollama.com/library/smollm2:135m

ollama pull smollm2:135m and then select the model in the Local GPT settings in Obsidian.

Sorry I didn't elaborate! I meant how to load small models like smolLLM2 on mobiles ! Android and IPhone ! It would be nice feature to have such models load directly via this plugin  . for reference you can check pocketpal AI its open source . would be wonderful plugin to load such models directly on phone for grammar and text related prompts . thank you


[1.21] [Neoforge] Bound items Text unredable

Describe the bug
Bound items have the entire text scrambled instead of just the orange text
To Reproduce
Steps to reproduce the behavior:

hover over a bound item

Expected behavior
Only a section of the text should be scrambled
Screenshots
https://github.com/klikli-dev/occultism/assets/44974827/f498698b-13e9-4fe9-b94a-1b3be9ad3a98
System (please complete the following information):
Occultism Version: 1.133.2
OS: Windows
Minecraft Version: 1.21

I am not sure I understand (the video is not playing properly for me, so maybe that is why).
To me it looks like the white text is not scrambling?
I can look into it, but this is all vanilla text effects so I would be surprised if they changed how they work. How does it behave on e.g. 1.20.1?

in 1.20.1 there is actually no scrambling of the words. All the text is static.
https://github.com/klikli-dev/occultism/assets/44974827/6eae8ca2-2fea-4705-9d34-14c2f5279b61

Ok that makes more sense actually, I thought I was going crazy!
I think I know what is going on, the change from nbt -> data components apparently causes jei to re-roll the name on each tick. I have to look into how to get around that

@ffuentesm I am wondering, do you have any other mods in the setup?
For me it doesn't do that at all, neither in SP nor in MP. I can try to add something that might help but without reproducing the cause it's a bit of a blind flight :D

the next commit will auto-close this issue, please ping me to reopen if the released version does not fix it!

Yep, I am currently with a few mods in 1.21. I can try to see this without them.
Your 1.133.3 update, fixed most of the problem.
Now the only items with the Scrambled text are the 4 mining lamps.

@klikli-dev the problem persists on the miners even when I have no other mods installed.
Also, Neoforge 21.0.31 has a new crash on launch

@klikli-dev the problem persists on the miners even when I have no other mods installed. Also, Neoforge 21.0.31 has a new crash on launch

@ffuentesm as for the miners, I will quickly test in a live environment if I can make it happen there.
I think the issue may be the jei version, maybe a newer version causes it and my old one does not or something like that

Ahh that must be it. Turned off my brain there for a moment it seems. Let me take a look!

Ok that should do it! The lamps still didn't reproduce the problem for me, but they are now on the list :)

Thanks, they are now Fixed.

Issue exists on EMI still despite being fixed on JEI


i18n(fr): Updating guides/backend/supabase.mdx from #7767

Description (required)
Updating guides/backend/supabase.mdx from #7767

Related issues & labels (optional)

Closes #
Suggested label: i18n

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

File
Note
Locale

src/content/docs/fr/guides/backend/supabase.mdx
Localization changed, will be marked as complete.
fr

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


Cannot compile SVG

I am not sure if this is a bug or a feature request, so let me just explain my problem.
I have a lot of small SVG icons and I would like to use asset_compress to pack them into a single SVG file that I can reuse as described here.
I thought all I had to do was to create my own filter and to declare it in the INI file. Something like this:
[svg]
paths = WEBROOT/img/**
cachePath = WEBROOT/cache_svg/
filters[] = MySVGPackingFilter

[allicons.svg]
files[] = icons/*.svg

However it looks like this doesn’t work because the list of allowed extensions is hardcoded and doesn’t include SVG.
Can I solve this problem without modifying asset_compress? If not, what would be the best approach to modify asset_compress so that it can do what I want?

I think adding svg as an extension type makes sense. If you send a pull request I can merge it and do a release.


Merge custom directives with federated schema

There's a need on our team to have the @authorize directive added to queries and mutations.
Really interested in this! 👍

Can you add a test for this?


Feature request: Option to add custom translation services

It would be awesome if this plugin has a parameter option to add your own translation service.
https://github.com/payloadcms/payload/discussions/4370#discussioncomment-7798429

Hello, thanks for bringing up  my plugin :)
But you can pass translateService async function prop to the plugin.
type TranslateService = (text: string, target: string, source: string) => Promise<string>;

export type TranslatorConfig = {
  GOOGLE_API_KEY?: string;
  translateService?: TranslateService;
  afterTranslate?: (data: AfterTranslateData) => Promise<string[]>;
  beforeTranslate?: (data: BeforeTransalateData) => Promise<string[]>;
  access?: (req: PayloadRequest) => Promise<boolean> | boolean;
  slateToHtmlConfig?: SlateToHtmlConfig;
  htmlToSlateConfig?: HtmlToSlateConfig;
  collections?: string[];
  globals?: string[];
};

From readme:

translateService - If you would like to use for example DeepL instead of Google, you can write you own implementation for the service

For example with this:
plugins: [
  translatorPlugin({
    GOOGLE_API_KEY: process.env.GOOGLE_API_KEY,
    collections: ['examples'],
    translateService: (text, target, source) => `${text} ${target} ${source}`
  }),

Any text should transform to this pattern, target - language to transform, source - current language.
Maybe would be good to add additional pre-defined services like DeepL and GPT3.5. I even tried GPT3.5, but it's much slower than Google and sometimes he breaks the structure of the needed response, DeepL should be fine.
I plan to make some things better, improve the code (now it's kinda mess), publish to npm (probably would nice?) after some time

Ahhh think I'm blind 🙈  Should have read the docs... haha
Very cool! Thx for the response. Love the plugin you made


File "cloudfail.py", line 277, in      update()

Hi Any idea on the error below? I installed it in Kali Linux 2018.1
[16:21:41] Just checking for updates, please wait...
[16:21:41] Updating CloudFlare subnet...
[16:21:41] Updating Crimeflare database...
Traceback (most recent call last):
File "cloudfail.py", line 277, in
update()
File "cloudfail.py", line 229, in update
zip_ref = zipfile.ZipFile("data/ipout.zip", 'r')
File "/usr/lib/python3.6/zipfile.py", line 1108, in init
self._RealGetContents()
File "/usr/lib/python3.6/zipfile.py", line 1175, in _RealGetContents
raise BadZipFile("File is not a zip file")
zipfile.BadZipFile: File is not a zip file

Me too.
Anybody know why?

Fine...
http://crimeflare.net:82/domains/ipout.zip  is   gone.

Change http://crimeflare.net:82/domains/ipout.zip to http://crimeflare.net:83/domains/ipout.zip

Hi
Thanks for bringing this to my attention, my collegue has pushed an update here:
https://github.com/m0rtem/CloudFail/commit/1b1549a5ddbf848ed47762d77d6543a38766a598

Having the same issue the domain is gone

hey man is crimeflare gone now?

The link doesn’t work as when it tries to update the crime thing it doesn’t do anything and eventually it fails.
Thanks
Sent from my iPhone

On 29 Sep 2021, at 18:27, obnoxious @.***> wrote:

hey man is crimeflare gone now?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.


⚠ PrivateHD has degraded performance

In 94a07d3, PrivateHD ($PHD) experienced degraded performance:

HTTP code: 200
Response time: 2902 ms

Resolved: PrivateHD performance has improved in c40fabd.


Indicator details form Performance tab: Only allow single level, don't default to Goal, and list the levels in order from high to low

Summary: Today, we allow people to assign multiple levels to a single indicator. I confirmed with PaQ advisors that this is not a valid use case, and we shouldn't permit it. We also should not be automatically defaulting to Goal. While we're in there, I'd like to make a usability tweak, which is to list the levels in a more intuitive order from high to low.
Important execution detail: Prior to making this change, we need to do a few things.

Run a database query to identify all indicators that currently have more than one level assigned to them. (UPDATE: Turns out there are only two of these from the Kenya YES program.)
Suggested solution for those two indicators: Reverts Level to the default state which will (going forward) be no selection at all. The next time they edit those two indicators, they'll be required to choose a level.

ACCEPTANCE CRITERIA

[x] 1. The order of levels is listed as follows:
1.1. Goal
1.2. Impact
1.3. Outcome
1.4. Intermediate outcome
1.5. Output
1.6. Activity
[ ] 2. There is no default level selected.
[ ] 3. I can only select one level.
[ ] 3.1. If I select a level, I can click it again to deselect it.
[ ] 4. Level is a required field.
[ ] 4.1. There is a "required" asterisk next to the form label.
[ ] 4.2.

If we build for

There is no default level selected.

Then this can't be a required field, which obviates

Level is a required field.
4.1. There is a "required" asterisk next to the form label.
4.2.

The "View it on Github" link doesn't take me to the comment, so I'll reply
via email.
I think our discussion just now took care of this concern. Is that right?
For all indicators going forward, we DO want level to be a required field,
and we do NOT want there to be a default selection. I don't follow why
these things would be mutually exclusive...
On Tue, Nov 27, 2018 at 11:30 AM PJ Souders<EMAIL_ADDRESS>wrote:

If we build for

There is no default level selected.

Then this can't be a required field, which obviates

Level is a required field.
4.1. There is a "required" asterisk next to the form label.
4.2.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mercycorps/TolaActivity/issues/205#issuecomment-442186529,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AgHHCx31x5EhkMP0C5vVuPRuQvRpVacQks5uzZLPgaJpZM4TY1qv
.

--
JENNY MARX
User Experience Lead  |  TolaData
Program Performance and Quality
MERCY CORPS
tel<PHONE_NUMBER> | cell<PHONE_NUMBER> | skype jennyhavah
45 SW Ankeny St | Portland OR 97204 | USA
https://www.mercycorps.org/email-signature-creator#
Powered by the belief that a better world is possible.
Join us at mercycorps.org https://www.mercycorps.org/
Facebook https://facebook.com/mercycorps | Twitter
https://twitter.com/mercycorps

I deleted the comment when I realized I had misread the acceptance criteria. You are correct they are not mutually exclusive.
I was confused bc the form element as rendered out of the box would default to the first level (Goals), I (wrongly) thought this was bc the field was non-nullable and/or required. But turns out the field in DB isn’t actually required -or- non-nullable which is why we had [n] indicators with no levels at all. We have to enforce this requirement entirely on the front end which is weird but not wrong.
This change is merged and you can test it on demo on the next release
P

On Nov 27, 2018, at 1:51 PM, jennyhavah<EMAIL_ADDRESS>wrote:
The "View it on Github" link doesn't take me to the comment, so I'll reply
via email.
I think our discussion just now took care of this concern. Is that right?
For all indicators going forward, we DO want level to be a required field,
and we do NOT want there to be a default selection. I don't follow why
these things would be mutually exclusive...
On Tue, Nov 27, 2018 at 11:30 AM PJ Souders<EMAIL_ADDRESS>wrote:

If we build for

There is no default level selected.

Then this can't be a required field, which obviates

Level is a required field.
4.1. There is a "required" asterisk next to the form label.
4.2.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mercycorps/TolaActivity/issues/205#issuecomment-442186529,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AgHHCx31x5EhkMP0C5vVuPRuQvRpVacQks5uzZLPgaJpZM4TY1qv
.

--
JENNY MARX
User Experience Lead | TolaData
Program Performance and Quality
MERCY CORPS
tel<PHONE_NUMBER> | cell<PHONE_NUMBER> | skype jennyhavah
45 SW Ankeny St | Portland OR 97204 | USA
https://www.mercycorps.org/email-signature-creator#
Powered by the belief that a better world is possible.
Join us at mercycorps.org https://www.mercycorps.org/
Facebook https://facebook.com/mercycorps | Twitter
https://twitter.com/mercycorps
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub https://github.com/mercycorps/TolaActivity/issues/205#issuecomment-442230806, or mute the thread https://github.com/notifications/unsubscribe-auth/AAKUZIQseDrNf4vvCrFmXKIQBt0gPEJUks5uzbPZgaJpZM4TY1qv.

Happy paths are happy. I found one edge case that fails. To reproduce:

Click "Add indicator", type a name and click "Save changes"
Abandon task. Skip all other steps and go straight to the program page. Find your newly added indicator.

Expected: Level should be set to None.
Observed: Level is defaulting to Goal

I can guess what's happening here. We actually create the Indicator object as soon as you clear the Add Indicator screen. It's defaulting to the first item on the list.
This might require a change to the data model(?)
The architecturally "right" answer here is probably that this field shouldn't be "required," unless the requirement is enforced on the data model. Kind of a sidebar but @KennyMonster pointed out this morning that in cases like this (we require user input but need to accept legacy empty data) we should have a "none" selection or something similar.

Kind of a sidebar but @KennyMonster pointed out this morning that in cases like this (we require user input but need to accept legacy empty data) we should have a "none" selection or something similar.

Not sure I totally followed this. But I want to emphasize that we can't give users a selectable option called "None". From an M&E perspective, this would be conceptually equivalent to making the field not required.

Sorry I wasn't clear on this hypothetical: I'm not suggesting we have a "None" entry on that field. I'm trying to resolve that field for this specific edge RN.
Here's whats bugging me. These kind of weird edge cases are likely given the way we're using "required in the frontend but not the backend" (e.g. for levels) and "required in the backend but not the frontend" (e.g. for target frequency). For example this edge case also creates an indicator with no target frequency! And remember how we had all those "Temporary" indicators until we added that intermediate "Add Indicator" screen?
My personal bias is that the code especially the data model should reflect as closely as possible the objects in the real world. Which, wow, not our codebase RN.
The pain is exacerbated by our reliance on the backend to automagically generate the frontend (via Django forms or crispy forms). It's a structural frustration that won't be resolved in a satisfying manner until we refactor the data model.

Fixed in merge #851

Validated. When there is no selection, I see the phrase "None selected", like so:

Validated. I added a new indicator, saved and exited. The level is set to None as expected.


Files generated by "model-cmdlet" will no be removed after "model-cmdlet" is removed.

In directive of "README.md", I add the following part:
  - model-cmdlet:
    - SqlVirtualMachine

After I run autorest and .\build-module.ps1, I find below files.
PS  \SqlVirtualMachine> ls -Recurse New-AzSqlVirtualMachineObject* | Resolve-Path -Relative
.\custom\autogen-model-cmdlets\New-AzSqlVirtualMachineObject.ps1
.\docs\New-AzSqlVirtualMachineObject.md
.\examples\New-AzSqlVirtualMachineObject.md
.\exports\New-AzSqlVirtualMachineObject.ps1
.\test\New-AzSqlVirtualMachineObject.Tests.ps1

I remove the model-cmdlet part from "README.md", and run autorest & build-module.ps1 again.
These files are still there. It feels like the removal of "model-cmdlet" is not working.
If these files are untouched, they should be removed somehow.

We need to  clean the custom\autogen-model-cmdlets folder when regenerating the module.

Fixed in https://github.com/Azure/autorest.powershell/pull/1128.


prometheus metrics ?

Does latest version of PSO provide prometheus metrics of pvc usage ?
PSO Explorer don't offer such functionality, pso-analytics was but it's not maintained anymore
Thanks

The latest version of PSO provides information for getvolumestats which can be scraped by the Prometheus Node Exporter.
This blog post has useful information on this.


Fix Integrate tab SVG arrows

In Integrate tab (Trigger --> Input --> Output), replaced decent-but-overstretched-arrows with better looking arrows:
BEFORE

AFTER

Tested in Edge (25.10586) and Chrome (49.0.something).

Not 100% sure on the grey color. Should it match the other glyphs? Now it's a bit dimmer. I don't think black works there, it's distracting.

Actually here is the design the designers wanted to have. I think @Tuesdaysgreen tried to get that in but couldn't quite get it to look right and abandoned that.
I think your gray arrows are much better looking than the black ones we have right now.

Agreed that this is a good incremental change. Let's strive for the final version to be like the hi-fis, but this is good for now.
Has my sign-off.

@snobu do you wanna merge this?

Merged to dev.


Failing PR builds

There are a handful of PRs which have failed due to internal Travis errors. Could somebody with access re-trigger these builds so they can hopefully pass?

I have merged quite some of PR's, and ci should be fixed.

Builds are still failing. Randomly hanging on e2e tests.
Starting up http-server, serving dist
Available on:
http://<IP_ADDRESS>:3000
http://<IP_ADDRESS>:3000
Hit CTRL-C to stop the server

<EMAIL_ADDRESS>protractor /home/travis/build/AngularClass/angular2-webpack-starter
protractor
(node:5827) DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead.
[17:58:41] I/direct - Using ChromeDriver directly...
[17:58:41] I/launcher - Running 1 instances of WebDriver
No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself.
Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#Build-times-out-because-no-output-was-received
The build has been terminated


How to install "r3l" module?

I meet the ModuleNotFoundError: No module named 'r3l' when I run the script.
I tried to copy the r3l file to the environment folder, bur encountered new problems. And i don't fing the setup.py to install r3l module.
And git@github.com:vikashplus/r3l.git  is no longer existed,

This repository uses git submodules. Please ensure that you are following the setup instructions properly to fetch the submodules.

I also get the same error:
ModuleNotFoundError: No module named 'r3l'
Followed the setup instructions.

git clone -recursive git@github.com:facebookresearch/MTRF.git is the correct command.

I already figured that the above command must be the right one rather than the one in the installation. But the error:  ModuleNotFoundError: No module named 'r3l' remains. Is there a way to fix that?

I haven't checked to confirm, my guess is that somehow the installation is messing up the path.
Try running things from this location -- https://github.com/facebookresearch/MTRF/tree/main/MTRF to see if import r3l works

same issue


@page is not a valid selector for document.querySelectorAll()

Coverage reports fall over when @page is found in CSS
I'll have a PR for this shorlty

@benedfit is this still actual or issue was resolved by your PR ?

This is still the case, I haven't got around to creating a fix for this


specifying appEngineRouting in createTask doesn't override task-level routing

Environment details

OS: macOS Mojave (10.14)
Node.js version: 8.12.0
npm version: 6.4.1
@google-cloud/tasks version: 0.2.2

Steps to reproduce

create task queue pointing to "main-task-handler" service
create another app engine service named "second-task-handler"
create a task using the following code snippet
observe that task is still delivered to "main-task-handler" instead of "second-task-handler" even though "appEngineRouting" is specified in "appEngineHttpRequest" during  task creation.
One more thing which I am not sure whether it is related to the issue or not...observe that "host" from "createTask" callback response is "second-task-handler.[PROJECT-ID].appspot.com" rather than "second-task-handler-dot-[PROJECT-ID].appspot.com"

var client = new tasks.v2beta3.CloudTasksClient({
  // optional auth parameters.
});

var formattedParent = client.queuePath('[PROJECT-ID]', '[REGION-CODE]', '[QUEUE-NAME]');
var task = {
    appEngineHttpRequest: {
        appEngineRouting: {
          service: 'second-task-handler'
        },
        relativeUri: '/',
        body: Buffer.from(JSON.stringify({ message: 'hello to different service from scheduled task' })).toString('base64')
    },
    scheduleTime: {
        seconds: 120 + Date.now() / 1000, // due in next two minutes
      }
};
var request = {
  parent: formattedParent,
  task: task,
};

client.createTask(request)
  .then(responses => {
    var response = responses[0];
    // doThingsWith(response)
  })
  .catch(err => {
    console.error(err);
  });

Not sure if this is a Tasks bug or something else.

Setting the routing on the queue will override task routing. In order to keep them distinguishable, the task fields set the appEngineRouting, while setting the queue routing is specified as appEngineRoutingOverride. For more information see [Configuring routing].(https://cloud.google.com/tasks/docs/configuring-queues#routing)


Dynamic method calling

I want to be able to do this:
class MyAction
  include Actionizer
  def find
    # Code stuff here
  end
end

and call it like this:
class SomeOtherAction
  include Actionizer
  def execute
    result = MyAction.find(some: 'params')
    fail!(error: result.error) if result.failure?
  end
end

and also use the shorthand version:
class SomeOtherAction
  include Actionizer
  def execute
    find_or_fail(MyAction, some: 'params')
  end
end

@cesarfigueroa Any thoughts you have would be helpful. I'm thinking of refactoring the tests, but I think they're good for now.

We should test ! and ? methods as well


Request for latest security fix versions

There are security vulnerabilities (e.g. CVE-2023-0215, CVE-2023-0662, CVE-2023-0286, CVE-2023-0568, CVE-2022-4450) with some of the most recent versions of the downloads available from https://www.apachefriends.org/download.html
Downloads for more recent security fixes would resolve these. In particular, I am looking for (Windows version):

Apache 2.4.56
PHP 8.1.17
OpenSSL 1.1.1t

work in progress https://github.com/ApacheFriends/xampp-build/pull/20

New XAMPP released https://www.apachefriends.org/blog/new_xampp_20230408.html


🛠 Tweak internal CI actions, add --no-cache-dir at Dockfile files

Introduce a --no-cache-dir tag into the pip install command in order to reduce the resulting container size, also at this particular time, the docker containers do not make use of the cache directory on next execution layers, so there is no reason to create it.
See: hadolint/DL3042

Makes sense, thanks @realFranco! 🚀


Can it support Table of content？

Hope that Table of content can be automatically generated.

You can get the JSON structure with the listener and you can create something like toc with that.

You can get the JSON structure with the listener and you can create something like toc with that.

then, how do I  link to the title ?

You can get the JSON structure with the listener and you can create something like toc with that.

then, how do I link to the title ?

That need a little bit more works, you need to extend the heading nodes to make it support anchor.

Thank you，how to extend the node？I can only define a node to overwrite heading nodes

Thank you，how to extend the node？I can only define a node to overwrite heading nodes

https://milkdown.dev/#/using-utils-package

If you can create a auto heading plugin, I think a lot of people will love it.

https://milkdown.dev/#/using-utils-package
Sorry, I missed it

If you can create a auto heading plugin, I think a lot of people will love it.

ok，I'd be happy to

If you can create a auto heading plugin, I think a lot of people will love it.

Should I refer to  https://github.com/Saul-Mirone/milkdown/blob/main/CONTRIBUTING.md？

If you can create a auto heading plugin, I think a lot of people will love it.

Should I refer to https://github.com/Saul-Mirone/milkdown/blob/main/CONTRIBUTING.md？

If you want to open a pull request for milkdown, you may need to.
If you want to keep the plugin like this: https://github.com/songhn233/milkdown-plugin-shiki, then you don't need to.

If you want to open a pull request for milkdown, you may need to. If you want to keep the plugin like this: https://github.com/songhn233/milkdown-plugin-shiki, then you don't need to.

After cloning Milkdown, run pnpm install to install dependencies.Then I run pnpm test it's not passed
D:\workspace\milkdown\milkdown\packages\vue\src\VueNode.tsx
  2:52  error  Unable to resolve path to module '@milkdown/prose'  import/no-unresolved

D:\workspace\milkdown\milkdown\packages\vue\src\VueNodeView.tsx
  3:28  error  Unable to resolve path to module '@milkdown/prose'  import/no-unresolved

✖ 277 problems (277 errors, 0 warnings)

 ELIFECYCLE  Command failed with exit code 1.
 ELIFECYCLE  Test failed. See above for more details.

Sorry, I've just merged a new PR and havn't update the CONTRIBUTION.md file.
You need to run pnpm build:packs before run pnpm test now.


Boolean literal should be LiteralExpression

Bug Report

Sorry, In my memory there's a duplicate issue about the same problem but I can't find it out.
🔎 Search Terms
API, Boolean, Literal

🕗 Version & Regression Information

I was unable to test this on prior versions because It's API

⏯ Playground Link
None
💻 Code

    export interface TrueLiteral extends PrimaryExpression {
        readonly kind: SyntaxKind.TrueKeyword;
    }

    export interface FalseLiteral extends PrimaryExpression {
        readonly kind: SyntaxKind.FalseKeyword;
    }

🙁 Actual behavior
isLiteralExpression(trueLiteral) === false

🙂 Expected behavior
isLiteralExpression(trueLiteral) === true

Sorry, In my memory there's a duplicate issue about the same problem but I can't find it out.

Possibly #26075?

You even commented in this issue. :-)

Thanks!.


[it] Ensure seccomp starts with small letter

en PR https://github.com/kubernetes/website/pull/43209/files
/assign @fabriziopandini

@Arhell We do occasionally see Netlify build failures. Could you try to trigger the build again by force-pushing empty commit.

/lgtm
/approve


Add the possibility to manage the package outside the module

Pull Request (PR) description
I need the possibility to fix the version of keepalived, so, like service_manage, I introduce package_manage to install keepalived from another puppet module.
This Pull Request (PR) fixes the following issues
n/a

Commits are merged into one commit.


Build fails with Use of undeclared identifier '_CUPS_DNSSD_GET_DESTS'

Building the latest commit on the master branch on a GNU/Linux distribution, the build fails with the error below.
$ git log --oneline -1
befbadcef Fix ipptool -P output (some was going to stdout...)
$ ./configure
$ make -j
[…]
dest.c:2101:20: error: use of undeclared identifier '_CUPS_DNSSD_GET_DESTS'
  cupsEnumDests(0, _CUPS_DNSSD_GET_DESTS, NULL, 0, 0, (cups_dest_cb_t)cups_get_cb, &data);
                   ^
1 error generated.

This happens because you don't have mDNSResponder or Avahi. Fixed...
[master b39dd420c] Fix builds without Bonjour/Avahi (Issue #5105)

Thank you for the quick reaction. Let’s see if Travis is happy now.


Porting to .NET Core 3.0

Has anybody ported this code to ..NET Core 3.0 and got it working.
I ported it - when everythign works will upload.
I am able to communicate between SignalRWebConsole and SinglaRLogconsole.  But the logging from SignalRLogPubConsole does not display on the SignalRWebConsole page or the SignalRLogConsole window.
Any pointers will help

Or why not 3.1 (or maybe even 5). I would love it!


Fix/change acs175 current formula

close #40

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


Created new logo for Lumix

Summary

Created new logo for Lumix
Updated the favicon for the same
This PR solves Issue #29

Preview

favicon:

Logo for navbar (light variant)

Logo for navbar (light variant)

Thanks a lot for the contribution!

Hi @HarjjotSinghh
Here's a Holopin Badge that you can collect as a gift for contributing to Lumix!
https://holopin.io/collect/clo2tgips49930glf7mhyunyy

Yo thanks for this bro!
On Mon, 23 Oct 2023 at 17:05, Gurkeerat Singh @.***>
wrote:

Hi @HarjjotSinghh https://github.com/HarjjotSinghh
Here's a Holopin Badge that you can collect as a gift for contributing to
Lumix!
https://holopin.io/collect/clo2tgips49930glf7mhyunyy
—
Reply to this email directly, view it on GitHub
https://github.com/Keerat666/Lumix/pull/34#issuecomment-1774999100, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A3GNSWCLFV6TLUVSZV7YCDTYAZJBVAVCNFSM6AAAAAA6BUCY7OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZUHE4TSMJQGA
.
You are receiving this because you were mentioned.Message ID:
@.***>


Ruby gRPC server does not stop gracefully after receiving SIGINT / SIGTERM

What version of gRPC and what language are you using?
Ruby, gRPC gem version: 1.4.5
What operating system (Linux, Windows, …) and version?
Mac OS X El Capitan 10.11.6
What runtime / compiler are you using (e.g. python version or version of gcc)
$ruby --version
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin15]

What did you do?
If possible, provide a recipe for reproducing the error. Try being specific and include code snippets if helpful.
require 'google/protobuf'
require 'grpc'

# The following definitions for EchoRequest, EchoReply, and EchoServer
# are taken straight from https://github.com/grpc/grpc/tree/master/src/ruby/end2end
Google::Protobuf::DescriptorPool.generated_pool.build do
  add_message "echo.EchoRequest" do
    optional :request, :string, 1
  end
  add_message "echo.EchoReply" do
    optional :response, :string, 1
  end
end

module Echo
  EchoRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("echo.EchoRequest").msgclass
  EchoReply = Google::Protobuf::DescriptorPool.generated_pool.lookup("echo.EchoReply").msgclass
end

module Echo
  module EchoServer
    class Service

      include GRPC::GenericService

      self.marshal_class_method = :encode
      self.unmarshal_class_method = :decode
      self.service_name = 'echo.EchoServer'

      rpc :Echo, EchoRequest, EchoReply
    end

    Stub = Service.rpc_stub_class
  end
end

class EchoServerImpl < Echo::EchoServer::Service
  # say_hello implements the SayHello rpc method.
  def echo(echo_req, _)
    Echo::EchoReply.new(response: echo_req.request)
  end
end

s = GRPC::RpcServer.new

grpc_host = '<IP_ADDRESS>:50051'

begin
  s.add_http2_port(
    grpc_host,
    :this_port_is_insecure
  )
  s.handle(EchoServerImpl)
  s.run_till_terminated
rescue SignalException => e
  puts e.inspect
  s.stop
end

Invoked using ruby grpc_test.rb (the name of the file).
What did you expect to see?
Upon sending a SIGTERM or SIGINT to the process, I would expect the process to exit gracefully.
What did you see instead?
Upon sending SIGTERM:
$ruby grpc_test.rb
#<SignalException: SIGTERM>
E0815 14:01:15.239863000<PHONE_NUMBER>37056 completion_queue.c:486]       assertion failed: cqd->completed_head.next == (uintptr_t)&cqd->completed_head
Abort trap: 6

Upon sending SIGINT:
$ruby grpc_test.rb
^CInterrupt
E0815 14:00:59.510724000<PHONE_NUMBER>37056 completion_queue.c:486]       assertion failed: cqd->completed_head.next == (uintptr_t)&cqd->completed_head
Abort trap: 6

Anything else we should know about your project / environment?
Not that I know of.

ruby 2.4.2p198 (2017-09-14 revision 59899) [x86_64-darwin17]
gRPC gem version: 1.7.1
Mac OS 10.13.1
Seems fixed, I can't see the error above.


no more on_server_ready helper func?

Is your feature request related to a problem? Please describe.
Yes, with nvim-lsp-installer I liked the fact that I could do LspInstall and after the lsp was installed, it was automatically configured and registered by nvim-lsp-installer without having to actually modify any .lua files to do the setup.
Now, I have to manually call lspconfig.<lsp>.setup for each of the LSP's that I want to use.
Describe the solution you'd like
Have a helper function so mason-lspconfig registers installed tools automatically
Describe potential alternatives you've considered
No response
Additional context
No response

nvm.. just found it in the doc.

I think an addition to the README on how to use on_attach with mason-lspconfig.nvim would really help though! @williamboman

I think an addition to the README on how to use on_attach with mason-lspconfig.nvim would really help though! 🙏🏻 @williamboman

Yeah no I agree, I just really like vim help files and wish more plugins made use of them haha. By on_attach, do you mean the general interaction with lspconfig? By default, mason (and mason-lspconfig) tries to get out of the way as much as possible, so as long as you've set up both plugins (2 lines), you can interact with lspconfig as you would normally.
require("mason").setup()
require("mason-lspconfig").setup()

require("lspconfig").sumneko_lua.setup {}
require("lspconfig").rust_analyzer.setup {}

Then, there are some additional convenience APIs that can automate this setup for you. Maybe I should include example snippets for all of these approaches?

By the way, LOVE your work :) Even more that you upped the ambition even more from your original project to mason. Hero!
Personally I confront the README for all setup instructions, and then the help files generally later... I don't know how common that is, but I doubt not super uncommon. I think it's kind of in the spirit of mason-lspconfig to automatically call setup on all of the installed ones, or at least easily be able to do that? If you want to customize it, then call it again with custom options? Or is that crazy?

+1 for automatically attach installed LSP servers.  The LspInstall / MasonInstall convenience factor is killed when having to manually add each and every server.
Maybe a sane default would be to automatically attach all servers, with an option to disable?

I think an addition to the README on how to use on_attach with mason-lspconfig.nvim would really help though! 🙏🏻 @williamboman

Yeah no I agree, I just really like vim help files and wish more plugins made use of them haha. By on_attach, do you mean the general interaction with lspconfig? By default, mason (and mason-lspconfig) tries to get out of the way as much as possible, so as long as you've set up both plugins (2 lines), you can interact with lspconfig as you would normally.
require("mason").setup()
require("mason-lspconfig").setup()

require("lspconfig").sumneko_lua.setup {}
require("lspconfig").rust_analyzer.setup {}

Then, there are some additional convenience APIs that can automate this setup for you. Maybe I should include example snippets for all of these approaches?

This would be really nice IMO. I personally moved to mason from lsp-installer and wasn't sure if I needed to change anything in the way I'm configuring my language servers or not, as there isn't much information available about it here.


CFE fails to account for null when checking whether a switch statement as exhaustive

The following program is accepted by the CFE:
enum A {
  b, c
}

int f(A? a) {
  switch (a) {
    case A.b:
    case A.c:
    return 0;
  }
}

main() {
  f(A.b);
}

It should be rejected, since the switch statement is non-exhaustive (it doesn't handle null), and therefore null might be returned from f, in violation of its static type.  This is a soundness issue.

See also https://github.com/dart-lang/language/issues/1143#issuecomment-688398869

@leafpetersen Can you triage this?  Thx


Send FullAddressInfo for addresses falling directly inside uprobes

We can send a meaningful FullAddressInfo even for addresses falling inside the
[uprobes] map, by treating it as a single function (which is the case, only
two possible addresses seem to be involved).
Test: Instrument Trata's very frequently called
eva::concurrent::thread_aware_task_sink::execute_task(bool). Verify the
expected result in "Sampling", "Top-down", "Bottom-up" (instead of the previous
"???" or "unknown@0x7fffffffe001").

I forgot that I need to update a test, working on that.

The test should be updated properly now.


Adding support for Python3 and Windows

Please note that I had to change the path delimiter to be "|" instead of ":", since it's breaking windows code.

Hi,
Could the path delimiter be ";" instead of "|" since ";" is the path separator in windows?
I think that would work fine in linux as well.

Yeah it surely can.

Great!
I'm thinking of an easy way to add an assert that : is not used as separator (since people will probably not notice the update and be puzzled). But not sure how to do it in a nice way.

Well, to just change it into ";" will break compatibility of course.
Since ":" is a delimiter between the drive letter and the relative drive path inside, if the part before the ":" is one char long, it's safe to assume it's a windows path.
But yeah, it's rather ugly.

What about supporting both delimiters, i.e. change
for path in paths.split(':'):

to
for path in paths.split(':;'):

and also change the default delimiter to ;.
Then it would still work with the old (and new) delimiter on linux and it would work with the new delimiter on windows.

I take that back. It will obviously not work for windows since it will still split between the drive and the rest of the path.


Add the Stack CI workflow.

Didn't mean to PR this one to the main repo; was trying to test PRs in my fork.


How to create a data table with dynamic fields.

I got data from the backend API like this:
{
  "id": "TASK-6699",
  "user": {
    "avatar": "https://ui.shadcn.com/avatars/02.png",
    "username": "cruii"
  },
  "status": "Success",
  "lastRunTime": "2023-08-11 00:00:00",
  "extendProps": [
    {
      "title": "title1",
      "header": "header1",
      "value": "v1"
    },
    {
      "title": "title2",
      "header": "header2",
      "value": "v2"
    }
    // others
  ]
}

id, user, status, lastRunTime are the basic column fields, which are confirmed.
Now I want to dynamically generate the table columns based on the extendProps returned from the backend.

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.

did you find a way to make it? I need to know how to render some dynamic fields


tagcloud for kibana5.0

Hi,
Is this plugin compatible for kibana 5.0 ? or is there a tagcloud/wordcloud for kibana5 ?
log   [11:44:08.679] [warning] Plugin "tagcloud" was disabled because it expeced Kibana version "0.1.0", and found "5.0.0".
Could someone advice on this please ?

#12

Closing this since it was addressed in #12.


bug: Status subresource returns 404 for any CR with Kind: Cluster

Describe the bug
While playing around with integration between Cluster API and KCP I hit an issue where KCP returns 404 whenever we try to patch the /Status subresource on objects with Kind: Cluster.
In order to double-check the issue I have re-created the problem using wild west example and changing the Kind in it (see below)
Steps To Reproduce
Apply the following resources:
APIResourceSchema
apiVersion: apis.kcp.io/v1alpha1
kind: APIResourceSchema
metadata:
  name: v230208-22d06c1f.clusters.wildwest.dev
spec:
  group: wildwest.dev
  names:
    kind: Cluster
    listKind: ClusterList
    plural: clusters
    singular: cluster
  scope: Namespaced
  versions:
    - name: v1alpha1
      schema:
        description: Cowboy is part of the wild west
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation
            of an object. Servers should convert recognized schemas to the latest
            internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this
            object represents. Servers may infer this from the endpoint the client
            submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            description: CowboySpec holds the desired state of the Cowboy.
            properties:
              intent:
                type: string
            type: object
          status:
            description: CowboyStatus communicates the observed state of the Cowboy.
            properties:
              result:
                type: string
            type: object
        type: object
      served: true
      storage: true
      subresources:
        status: {}

APIExport
apiVersion: apis.kcp.io/v1alpha1
kind: APIExport
metadata:
  creationTimestamp: null
  name: wildwest-dev
spec:
  latestResourceSchemas:
    - v230208-22d06c1f.clusters.wildwest.dev
status: {}

APIBinding (if running in a workspace different than root, adjust the path accordingly)
apiVersion: apis.kcp.io/v1alpha1
kind: APIBinding
metadata:
  name: wildwest-dev
spec:
  reference:
    export:
      name: wildwest-dev
      path: root

Sample Cluster
apiVersion: wildwest.dev/v1alpha1
kind: Cluster
metadata:
  name: woody
spec: {}

then run
curl -k -H "Authorization: Bearer <your token>"  https://<IP_ADDRESS>:6443/clusters/root/apis/wildwest.dev/v1alpha1/namespaces/default/clusters/woody/status

You will get "404 page not found"
Expected Behaviour
To be able to use custom resources of Kind: Cluster
Additional Context
No response

@fabriziopandini fixed the yaml formatting for you 😄

So it works as long as the Kind is not Cluster?

@ncdc - Yeah, we explicitly took the cowboys type, named it Cluster, from that point on, the /status subresource returns 404

🤔 Might be worth adding a test case about it, could this because of the /clusters/ prefix handling?

Yes please!

yeah, we were suspecting probably something about path resolution and handling, either regex or not expecting cluster twice

/unassign @s-urbaniak
/assign


Minor English updates

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Marshall Gunnell seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Put postprocessing back in himem queue

Boris's suggestion to put postprocessing back in the himem queue: https://czi.quip.com/64xeAX9iyMeZ/Learnings-from-cMAL-2-rerun-on-idseq-dag-and-new-result-monitor

Now it'll just explicitly set vcpus: Sample::DEFAULT_VCPUS_HIMEM and job_queue: Sample::DEFAULT_QUEUE_HIMEM


normalize commands in define directive

it seems commands are not normalized in the define directive. need to fix that.

done


2.14.4 release upload failed

FWICS the release upload for 2.14.4 failed and no sdist is available. I suppose it'll take some time before PyPI admins reply to the size limit request, so perhaps you could remove some ancient wheels and reupload?
https://github.com/pydantic/pydantic-core/actions/runs/6905856186/job/18791242303

Oh, that's our mistake, we could have known this world happen as I only deleted one old release.
The pypi fix should be done today.

@mgorny,
Fixed! 😄

Thank you!


In examples recommend another way to change default device

SYCL_DEVICE_FILTER - filters, not actually change default device.
Do not recommend users to use it. It is not the best recommendation but there is no other way to change default device yet.
Originally posted by @PokhodenkoSA in https://github.com/IntelPython/numba-dppy/pull/428#discussion_r649200070

Not clear what the issue is about.


Create Class Diagrams

Class Diagrams including all designed classes, their properties and methods must be created.

Class Diagrams are created.


Extend GradStore public functionality

This PR allows user to merge two GradStores together (and also to create an empty one).
It is helpful for collecting gradients from multiple different backward passes (e.g. with different graph but sharing some weights) before making optimizer step.

Could you provide some minimal example of how you would want to use this? Maybe it's something that could be done via some helper functions rather than having to modify the GradStore themselves.

I'm trying to implement some kind of checkpointing by splitting the whole network by segments and running forward and backward pass separately for each segment to avoid storing all activations of the whole network in the backprop graph at the same time.
let segments: Vec<Box<dyn Module>> = ...;
let mut opt = ...;

// Forward pass
let mut xs = ...;
let mut checkpoints: Vec<Tensor> = vec![];
for seg in segments.iter() {
    checkpoints.push(xs.clone());
    xs = seg.forward(&xs)?.detach()?;
}
let ys = xs;

// Backward pass
let mut grad = ys.ones_like()?;
let mut grad_store = GradStore::default();
for (seg, xs) in segments.iter().zip(checkpoints).rev() {
    let ys = seg.forward(&xs)?;
    let mut gs = ys.mul(&grad)?.backward()?;
    gs.remove(&grad);
    grad = gs.remove(&xs).unwrap().detach()?;
    grad_store.extend(gs)?;
}

// Optimizer step
opt.step(&grad_store)?;

It also could be done without this PR by storing a Vec<GradStore> instead of single grad_store and performing optimizer step for each of them. But the problem of such approach is when segments share the same weights (e.g. as in recurrent network) then we perform multiple optimizer steps on the single weight, but some optimizers are not linear (i.e. opt.step(a); opt.step(b); is not the same as opt.step(a + b);).

Thanks for the details.
Maybe in that case you could have some specific optimizer that would perform the aggregation and for which step would take multiple grad-store? The optimizer implementation is very straightforward and you can probably get it to work around existing optimizers. This way the complexity could be externalised to a specific crate for checkpointing.

Maybe in that case you could have some specific optimizer that would perform the aggregation and for which step would take multiple grad-store?
I didn't consider customizing optimizer, thanks for idea.
But this approach doesn't eliminate the problem when multiple GradStores contain gradients for the same variable unnecessarily consuming extra memory. With GradStore::extend they can be collapsed together during backward pass.

@LaurentMazare, what do you think about this PR? Has it a chance to be merged?
Or maybe it's better to simply expose GradStore internal storage like it's done in VarMap.data()?


Exclude Supplier Submitted content from homepages

Production:

Development:

 Remove "Supplier News" and "Supplier Submitted" content from any of the sections on the home page of all Brands sites


Add announcement banner

Summary
Add announcement banner.
To make this work right, there is a great refactor in how config works, moving it to its own table.
Ticket Link
https://mattermost.atlassian.net/browse/MM-47240
Screenshots
iPhone

iPad

Android

Release Note
Add support for the announcement banner

@matthewbirtch What you are seeing here is almost a direct translation from V1. Before doing the final touches in the design (mainly the rounded border and the horizontal padding), can you confirm a few things?

Covering the whole screen is ok or not
The text should be centered or not
The icon on the right should be an x to dismiss, or an i of get more information
If the icon is an x to dismiss, should we not show the icon if the bar cannot be dismissed?
The new designs don't have any screen to see the whole notification. Not sure if we want to remove it (I wouldn't since in mobile the space for the banner is not very long).

Hey @larkox, responses to your questions:

Covering the whole screen is ok or not

I assume you mean going full-width on tablet? I actually like it better if we can span the full width, but I assumed that it wouldn't be possible, but now I see that it is based on your screenshots. I've updated the designs to show how it should display full width on tablet.

The text should be centered or not

I'm good with centering it. It actually works better on wider screens to center the text, so good call

The icon on the right should be an x to dismiss, or an i of get more information

Not exactly. If the banner is configured as dismissable, then the x icon shows on the right. If not, there is no icon on the right side. The info icon always displays to the left of the message - just like it does on the webapp.

If the icon is an x to dismiss, should we not show the icon if the bar cannot be dismissed?

Correct, if the banner is configured not to be dismissable then the x icon should not show. Having said that, since mobile real estate is so limited, I'm hesitant to offer a non-dismissable banner on mobile. My personal feeling is that it should always be dismissable on mobile, but I suppose that would contradict the configuration in the system console.

The new designs don't have any screen to see the whole notification

I actually had no idea we could do this. I agree that we should offer a way to show the full announcement, but it seems odd to open a full modal though. I wonder if it should just open an OS alert dialog instead of a full modal. Thoughts?

I actually had no idea we could do this. I agree that we should offer a way to show the full announcement, but it seems odd to open a full modal though. I wonder if it should just open an OS alert dialog instead of a full modal. Thoughts?

@matthewbirtch the problem I see with this approach is that announcement banners can have markdown, which is not going to render properly in an Alert nor allowing to press on links and stuff like that.

@larkox I see you changes on the config, will it make sense to have those changes in a separate PR instead of as part this one?

@enahum It makes sense. I will try to rebase the changes back to the gekidou branch and create a PR with only those changes.

I actually had no idea we could do this. I agree that we should offer a way to show the full announcement, but it seems odd to open a full modal though. I wonder if it should just open an OS alert dialog instead of a full modal. Thoughts?

@matthewbirtch the problem I see with this approach is that announcement banners can have markdown, which is not going to render properly in an Alert nor allowing to press on links and stuff like that.

Ahhhhh right. That makes sense. I guess either a bottom sheet or modal will likely be the way to go then. @larkox I'll update the design with this in mind

@larkox conflicts need resolving

@larkox is this ready for review or still needs UX changes?


Create LuaThread class in Godot

When returning Lua threads to Godot, we should wrap them into a RefCounted subclass.

There is no need for separate classes for coroutine and threads.


[SPARK-38392][K8S][TESTS] Add spark- prefix to namespaces and -driver suffix to drivers during IT

What changes were proposed in this pull request?
There are two small proposals:

prefix the name of the temporary k8s namespaces with "spark-" so that the output of `kubectl get ns" is more clear.
unify the name of the driver pod in non-test and IT tests to always use -driver as a suffix.

Why are the changes needed?
At the moment the name of the temporary namespace is just UUID without the -s. When one reads the result of kubectl get ns it is a bit cryptic to see UUIDs.
The names of the driver pods in ITs are not telling me that they are Drivers.
In non-test (i.e. production) the driver pod names are suffixed with -driver. I propose the same for IT tests.
Executor pods always use -exec- in their pod names, both in non-test and ITs.
Does this PR introduce any user-facing change?
Yes! Developers who debug IT tests will see more clear names now.
How was this patch tested?
Manually with kubectl get ns --watch and kubectl get po --watch.

FYI, for test-only PRs, we can backport it into old release branches if needed.
Since this test PR is helpful, I backported it to branch-3.2 for Apache Spark 3.2.2 too.


Accept timeout as CLI option

Changes Unknown when pulling 424b5bba82149e629461405ca0a33a3cedf1439a on fcastilloes:master into ** on kusanagi:master**.


webstorm build support?

hello~
I can builld the project from command line, but can you support webstorm too? when i try to build use webstorm to build the project, print the follow error:
(i use the v1.0.1 package)
   npm ERR! code ELIFECYCLE
   npm ERR! errno 1
   npm ERR<EMAIL_ADDRESS>build: `cd scripts && ./build.sh`
   npm ERR! Exit status 1
   npm ERR!
   npm ERR! Failed at the<EMAIL_ADDRESS>build script.
   npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

   npm ERR!      E:\NODE\npm-cache\_logs\2018-05-14T07_21_54_869Z-debug.log

and the details of the log is:
       9 verbose lifecycle<EMAIL_ADDRESS>CWD: E:\tech-research\leaflet\Vue2Leaflet-1.0.1
      10 silly lifecycle<EMAIL_ADDRESS>Args: [ '/d /s /c', 'cd scripts && ./build.sh' ]
      11 silly lifecycle<EMAIL_ADDRESS>Returned: code: 1  signal: null
      12 info lifecycle<EMAIL_ADDRESS>Failed to exec build script
      13 verbose stack Error<EMAIL_ADDRESS>build: `cd scripts && ./build.sh`
      13 verbose stack Exit status 1
      13 verbose stack     at EventEmitter.<anonymous> (E:\node\node\node-v8.10.0-win-
      x64\node_modules\npm\node_modules\npm-lifecycle\index.js:285:16)
      13 verbose stack     at emitTwo (events.js:126:13)
      13 verbose stack     at EventEmitter.emit (events.js:214:7)

need your help,  thank you.

Hi @xzzh999,
Vue2Leaflet will not provide support for any specific IDE.
It seems webstorm is trying to use a build.sh script, it should be possible to run a npm command instead.
Have a look here form some documentation.
Hope this helps.

Hi @KoRiGaN,
Thank you for your reply,
i use  npm command to build project ok,
and i build with webstorm ok too, just modify package.json as follow:
  "build": "cd scripts && build.sh",

it seems windows must use build.sh instead of ./build.sh.


[Android] Build System for Custom Application Configuration

### Tasks
- [ ] https://github.com/openedx/openedx-app-android/issues/88

@nizmaylova - created Android epic to echo the work being done here! Made a task list which hopefully helps with task association.


[Backport 2.14] Fix ml inference ingest processor always return list using JsonPath

Description
Manual backport due to conflict https://github.com/opensearch-project/ml-commons/pull/2985
Related Issues
https://github.com/opensearch-project/ml-commons/issues/2974
Check List

[ ] New functionality includes testing.
[ ] New functionality has been documented.
[ ] API changes companion pull request created.
[ ] Commits are signed per the DCO using --signoff.
[ ] Public documentation issue/PR created.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

all windows tests passed. flaky test at linux 21, rerunning

REPRODUCE WITH: ./gradlew ':opensearch-ml-plugin:integTest' --tests "org.opensearch.ml.rest.RestMLDeployModelActionIT.testReDeployModel" -Dtests.seed=BA424FEC5C102B22 -Dtests.security.manager=false -Dtests.locale=hu -Dtests.timezone=Egypt -Druntime.java=21
    	at app//com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:988)


📇 Tracker: Enable 3D for CC applications

3D support in CC-applications
For relevant apps which has tags, makes 3D relevant. Expand list as needed.
Create sub issues where relevant, e.g. where backend/frontend job is needed.

[x] #582
[x] #583
[x] #940
[x] #941
[x] #942
[x] #943

After some discussions with @espenkalle, this is the list of actions needed to complete the 3D component.

[ ] Implement support for different environments (CI/CD)
This is currently hard-coded
See widget/{widget}/config.ts for more details on how it is set up

[ ] Fix support for multiple facilities.
Currently the first element in the list of facilities are taken

[ ] Widgets does not support the current implementation of CustomActions
If custom actions are needed, a new widget has to be created and the actions defined in the widget.

[ ] Add API endpoints for fetching which tags that are relevant for 3D.
This is straight-forward for WorkOrder and Punch, but other applications such as Handover, HeatTrace and Pipetest is more complex. The endpoint should return the tags that are relevant for 3D.

Notes to self:

Jone is the PO for this
Chris is the "master of widgets and Echo" 👑

After a lot of back-and-forth with how to implement this, it was decided that we skip using widgets for this implementation.
This decision is documented in an ADR: https://github.com/equinor/lighthouse/blob/main/docs/decisions/004-modelviewer-bundling.md
There have been a lot of rewrites of the ModelViewer component, since the handover from Espen.
This includes:

Removing all widget-spesific functionality
Support for lazy-loading the ModelViewer for more optimal bundle sizes
Restructured most of the code. (Removed almost all useEffects, useState, etc.)
Added a way of using environment variables, etc.
...

Moving this to Done, as 3D now is implemented in all applications described in the issue 🎉


Add copy button to token addresses in Token Balances list

Similar to DecodedParamsTable, it should be easy to copy addresses of tokens in the Token Balances page.

I actually like it, although I don't know if the UI will look cluttered. But we can give it a try.


Allow the cluster to start fully

The helm check failed because coredns hadn't deployed in 3 minutes and as a result the chart-museum svc didn't resolve.

going with a ping


Dynamically named logfiles based on the host header.

(Are you asking for help with using Caddy? Please use our forum instead: https://caddy.community. If you are filing a bug report, please take a few minutes to carefully answer the following questions. If your issue is not a bug report, you do not need to use this template. Thanks!)
1. What version of Caddy are you running (caddy -version)?
Caddy 0.10.0
2. What are you trying to do?
Write to dynamically named logfiles based on the host header.
3. What is your entire Caddyfile?
  *.some.site.name {
    tls selfsigned {
      max_certs 10
    }
    gzip

    proxy / http://<IP_ADDRESS>:80 {
        fail_timeout 300s
        transparent
    }

    log "/var/log/caddy/{host}.access.log" {
      rotate_size 100
      rotate_age  14
      rotate_keep 2
    }

  }

4.
Not relevant
5. Please paste any relevant HTTP request(s) here.
Not relevant
6. What did you expect to see?
Logfiles named /var/log/caddy/bla.some.site.name.access.log
7. What did you see instead (give full error messages and/or log)?
Logfiles named /var/log/caddy/{host}.access.log
8. How can someone who is starting from scratch reproduce the bug as minimally as possible?
(Please strip away any extra infrastructure such as containers, reverse proxies, upstream apps, dependencies, etc, to prove this is a bug in Caddy and not an external misconfiguration. Your chances of getting this bug fixed go way up the easier it is to replicate. Thank you!)

Thanks for the feature request.  This was requested before and worked on #1414 for issue  #1396.
I made some progress but then the goalposts changed.  Perhaps someone with a little more go experience than me might take a look.
Fundamentally I think this is a good feature request.

I can see why this would be nice, but how do we prevent abuse?

Actually wait -- I'm gonna close this as a duplicate, since I also find value in this feature request, but I'm gonna direct the discussion into the first/original issue, #1396 so that it's all in one place.


Toaster Showing 2 Icons

Yesterday, I tried the Toaster plugin version 0.4.15 and everything worked fine. Today I updated the Toaster to version 0.4.18 and now I am getting 2 icons in toaster notifications. (Screenshot attached).
My Toaster directive is like this:
<toaster-container toaster-options="{'close-button': true, 'position-class': 'toast-bottom-right'}"></toaster-container>

And my Toaster is called like this in controller:
toaster.pop({
                        type: 'success',
                        title: 'Hi Superman',
                        body: 'Welcome!'
                });

Sorry, it wasnt due to the Toaster version. It turns out the theme I was using had its own overrides for the Toaster plugin which uses font-awesome icons instead of the default background image that comes with toaster css. Thats why I was seeing both the icons. I need to move the toaster css above my theme plugin so the toaster override worked.

@Mr-Anonymous There is an open issue that hopefully I'll be able to get to someday for native support for replacing icons, particularly with font-awesome icons.  That should alleviate some of these types of issues.  But yep, changing the stylesheet load order should do the trick in the meantime :)


Correct Bootstrap name

Bootstrap is not "Twitter Bootstrap" since like 2013 :)

Codecov Report

Merging #1709 into development will not change coverage.
The diff coverage is n/a.

@@             Coverage Diff              @@
##           development    #1709   +/-   ##
============================================
  Coverage        85.44%   85.44%
============================================
  Files               85       85
  Lines             2295     2295
  Branches           300      300
============================================
  Hits              1961     1961
  Misses             235      235
  Partials            99       99

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 83eb78c...d36de07. Read the comment docs.

Thanks, now I feel myself and an old ;)


[Backport] Use Ubuntu Precise for Travis unit test jobs

Backports #4572 to unblock Travis CI tests

👍


Action repeat wrapper bugfix

Fixes a bug in action repeat wrapper used for DM control envs, where action repeat is disabled after the first episode.

Thanks!


How can I run my pipeline programmatically after I packaged my project?

I ran kedro package and distributed my kedro project. Now, when I do a pip install my_procejt I get the package but the question is how can I run my pipeline from an external .py script. What should I import to my external python file and how can I run my pipeline?
Based on the generated kedro_cli.py I tried this (my_external_runner_script.py):
from kedro.runner import SequentialRunner
from kedro.context import load_context
from pathlib import Path

def run(
    tag=None,
    env=None,
    runner=SequentialRunner,
    node_names=(),
    to_nodes=[],
    from_nodes=[],
    from_inputs=[],
    load_version={},
    pipeline=None,
    config=None,
    params={},
):

    context = load_context(Path.cwd(), env=env, extra_params=params)
    context.run(
        tags=tag,
        runner=runner(),
        node_names=node_names,
        from_nodes=from_nodes,
        to_nodes=to_nodes,
        from_inputs=from_inputs,
        load_versions=load_version,
        pipeline_name=pipeline,
    )

if __name__ == "__main__":
    run()

The Path.cwd() is obviously wrong in this case. I could not find any info about this in the documentation?
Could you please give me a hint how to do this?
Thank you,
Stefan

@limdauto looks like one for you. I believe there's improvements/fixes for this coming up soon in the next release

Hi @f-istvan, since kedro package only packages Python code, you will need the following in your current working directory:

A .kedro.yml file with the content: context_path: <my_project>.run.ProjectContext
A conf/ directory with the configurations for your run.
Optionally a data/ directory if you use local data.

Then you can run your package with python -m <my_project>.run
In the upcoming 0.16 release, we have removed the requirement for the .kedro.yml file and added more information on how to use this packaging mechanism.

Hi @limdauto,
Adding the files and directories you described fixed my issue. I can run my pipeline with python -m my_project.run. This is great! However, I sill want to run the pipeline from a python script on my environment. It is just more convenient than a bash script. I understand that I can use import subprocess for example but something like this would be useful for me (my_external_runner_script.py):
from my_project import my_pipeline_runner

# I can build my_params here dynamically with python

# and run the pipeline programmatically
my_pipeline_runner(my_params ...)

It's like cli (python -m my_project.run) vs script (python my_external_runner_script.py).
Hope it is a valid point and makes sense.
Thank you!

@limdauto Can you explain the reasoning behind having conf/ and .kedro.yml outside of the python library?  I am a bit confused why they wouldn't be inside so that kedro package could make standalone libraries.

@f-istvan Oh this is a very interesting use case. Interestingly enough, I thought calling load_context(Path.cwd()) in the same directory as conf/ and .kedro.yml should give you a useable context to run your pipeline programmatically. What error do you see?
@WaylonWalker That's a good question. We touched on this in our newly updated documentation about packaging: https://kedro.readthedocs.io/en/latest/03_tutorial/05_package_a_project.html?highlight=package#package-your-project

Please note that this packaging method only contains Python source code of your Kedro pipeline, not any of the conf/, data/ and logs/ directories. To successfully run the packaged project, you still need to be inside a directory that contain these sub-directories. This allows you to distribute the same source code but run it with different configuration, data and logging location in different environments.

This mental model unfortunately breaks when it comes to .kedro.yml, so in 0.16 we removed the need for .kedro.yml to be manually created altogether. I hope this makes sense.

Would it be possible to package up the catalog?  I have had some folks that do a lot of hypothesis testing that want fast access to data, and very little interest in building/running pipelines want the catalog for certain projects made easily portable.  They would really like to be able to pip install amazing_pipeline and start running hypothesis against data loaded off of the catalog.
Personally I have a couple of pipelines that seem to reuse the same sections of pipeline over and over.  I would really like to be able to make those their own package, import them into new projects and just append the pipeline and catalog to the new pipeline with no more than a small bulk change in the path or s3 bucket.

@WaylonWalker Yes, you can. It's a bit more involved. In setup.py, there is an option for you to add package data, which are essentially non-Python files, in your distribution: https://setuptools.readthedocs.io/en/latest/setuptools.html#including-data-files
The problem, however, is that your package data need to be on the same level as your setup.py or below. Our conf/ is in a layer above. So what I would do as a workaround if you want to bundle your conf/ with your source distribution is to modify your setup.py to enable the include_package_data functionality and modify the kedro_cli.package command to:

Move everything under src/ to a /tmp location
Move your conf/ to that exact location

Then you should be able to bundle your configuration with your binary distribution. It's not what we would recommend as the default setup, but it should work.

Thanks @limdauto, I got everything fully working from a pip installed wheel.  I moved conf/ and .kedro.yml into the library, included them in the Manifest, modified some path variables and it is working much easier than I anticipated.
This is a big move for us.  I do not really see as many use cases for using different catalogs as I do for folks who want to be able to pip install project and get access to all of the project's data.  For the most part, I think I can take care of dev/prod easier with a transformer than walking everyone through how to get the catalog working for hypothesis testing.

@f-istvan I'm going to be closing this but please feel free to re-open it if you still have problems.

@f-istvan did you ever manage to find a solution to this, or did you revert to using something like subprocess?  I have run into a similar sort of issue.  Would be good to know.  Cheers!


Feature: Add "delete" button to notifications menu

This feature has MyMail. It will be convenient quickly to send a e-mail to trash directly from notification.

You can already configure this under: Global settings > Notifications > Show 'Delete' button