Missing GDK DLL(s) for windows standalone build with msys2

I am trying to package gtimelog, a Python + GTK application, for Windows.
I got it running fine using msys2, but it doesn't run standalone - it seems nuitka cannot find all relevant DLLs.

Nuitka version, full Python version, flavor, OS, etc. as output by this exact command.

python -m nuitka --version

$ python -m nuitka --version
1.8
Commercial: None
Python: 3.11.5 (main, Sep 28 2023, 19:43:22)  [GCC 13.2.0 64 bit (AMD64)]
Flavor: MSYS2 MinGW
Executable: C:/msys64/mingw64/bin/python.exe
OS: Windows
Arch: x86_64
WindowsRelease: 10
Version C compiler: C:/msys64/mingw64/bin/gcc.exe (gcc).

How did you install Nuitka and Python

I installed msys2 using their installer on Windows 11 pro and following the msys2 guidelines and this micro howto to make sure GTK worked.  I used the default paths (C:\msys64\).
In the msys2-provided mintty terminal emulator & default shell I cloned gtimelog into my $HOME
To make it run, I had to install a few libraries, most of which I found in the pygobject docs:

pacman -S --needed --noconfirm base-devel mingw-w64-x86_64-toolchain git \
   mingw-w64-x86_64-python3 mingw-w64-x86_64-python3-cairo \
   mingw-w64-x86_64-gobject-introspection mingw-w64-x86_64-libffi

Additionally - not sure if all of these are required, but I think these are the ones I got (hope I am not missing anything):
pacman -S msys2-runtime-devel
pacman -S mingw-w64-x86_64-python-cairo
pacman -S mingw-w64-x86_64-libsecret
pacman -S mingw-w64-x86_64-libsoup
pacman -S mingw-w64-x86_64-python-nuitka

To get gtimelog to run:
In the cloned repository directory I ran make run to create .mo and GSettings schema files.
After this, I could run gtimelog by issueing: python gtimelog

Then, by reading docs and trial and error, I got nuitka to build this into a standalone. Again, in the repo clone directory:
PYTHONPATH=src python -m nuitka --standalone --follow-imports --onefile --include-package-data=gtimelog --show-anti-bloat-changes --show-modules gtimelog
This results in a 9.4 MB gtimelog.exe, which works when started in the msys2 shell or outside of the shell with the generated gtimelog.cmd which sets some paths:

set PATH=c:/msys64/mingw64/bin;%PATH%
set PYTHONHOME=C:/msys64/mingw64
"%~dp0.\gtimelog.exe" %*

The generated gtimelog.exe however doesn't run when I start it without these paths set.

The specific PyPI names and versions

python -m pip freeze

$ python -m pip freeze
C:/msys64/mingw64/bin/python.exe: No module named pip

Here's a gist of the output of pacman -Q --info instead: https://gist.github.com/hacklschorsch/f649d8e8a398906bdc218d98d3aafb25
Here's the error I am getting:
C:\msys64\home\Flo\gtimelog>.\gtimelog.exe

** (process:32464): WARNING **: 16:11:42.781: Failed to load shared library 'libgdk-3-0.dll' referenced by the typelib: 'libgdk-3-0.dll': The specified module could not be found.
Traceback (most recent call last):
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gtimelog", line 13, in <module>
    from gtimelog.main import main  # noqa: E402

  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gtimelog/main.py", line 72, in <module gtimelog.main>
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 676, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 573, in module_from_spec
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gi/importer.py", line 147, in create_module
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gi/overrides/__init__.py", line 118, in load_overrides
  File "importlib.py", line 126, in import_module
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gi/overrides/Gdk.py", line 91, in <module gi.overrides.Gdk>
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gi/overrides/__init__.py", line 195, in override
AssertionError

I already have an example, that I think also covered Cairo usage. This should work from git top level (image file), but I think it says I do not have gtk or gdk, what package would that be? I would like to start out by assertion that what worked so far is working, before maybe finding a difference.
import cairo
import gi
from gi.repository import Gdk, Gtk

gi.require_version("Gtk", "3.0")
gi.require_version("Gdk", "3.0")
Gtk.init()

image = cairo.ImageSurface.create_from_png("doc/images/Nuitka-Logo-Symbol.png")
region = Gdk.cairo_region_create_from_surface(image)

print("All OK")

I think your reproducer is correct.

In a clone of the current Nuitka develop branch, this is what I get:
$ python reproducer.py
C:/msys64/home/Flo/nuitka-gdk-dll-reproducer/Nuitka/reproducer.py:3: PyGIWarning: Gdk was imported without specifying a version first. Use gi.require_version('Gdk', '3.0') before import to ensure that the right version gets loaded.
  from gi.repository import Gdk, Gtk
C:/msys64/home/Flo/nuitka-gdk-dll-reproducer/Nuitka/reproducer.py:3: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
  from gi.repository import Gdk, Gtk
All OK

Compiling:
$ python -m nuitka --standalone --follow-imports --onefile reproducer.py
Nuitka-Options:INFO: Used command line options: --standalone --follow-imports --onefile reproducer.py
Nuitka-Options:INFO: Following all imports is the default for onefile mode and need not be specified.
Nuitka:INFO: Starting Python compilation with Nuitka '1.9rc4' on Python '3.11' commercial grade 'not installed'.
Nuitka-Plugins:INFO: anti-bloat: Not including '_bisect' automatically in order to avoid bloat, but this may cause: may slow down by using fallback implementation.
Nuitka-Plugins:INFO: anti-bloat: Not including '_json' automatically in order to avoid bloat, but this may cause: may slow down by using fallback implementation.
Nuitka:INFO: Completed Python level compilation and optimization.
Nuitka:INFO: Generating source code for C backend compiler.
Nuitka:INFO: Running data composer tool for optimal constant value handling.
Nuitka:INFO: Running C compilation via Scons.
Nuitka-Scons:INFO: Backend C compiler: gcc (gcc).
Nuitka-Scons:INFO: Backend linking program with 27 files (no progress information available for this stage).
Nuitka-Scons:INFO: Compiled 27 C files using ccache.
Nuitka-Scons:INFO: Cached C files (using ccache) with result 'cache miss': 27
Nuitka-Plugins:INFO: gi: Included 37 data files due to typelib files for gi modules.
Nuitka-Postprocessing:INFO: Creating single file from dist folder, this may take a while.
Nuitka-Onefile:INFO: Running bootstrap binary compilation via Scons.
Nuitka-Scons:INFO: Onefile C compiler: gcc (gcc).
Nuitka-Scons:INFO: Onefile linking program with 1 files (no progress information available for this stage).
Nuitka-Scons:INFO: Compiled 1 C files using ccache.
Nuitka-Scons:INFO: Cached C files (using ccache) with result 'cache miss': 1
Nuitka-Onefile:INFO: Using compression for onefile payload.
Nuitka-Onefile:INFO: Onefile payload compression ratio (30.49%) size 39041642 to 11905569.
Nuitka-Onefile:INFO: Keeping onefile build directory 'reproducer.onefile-build'.
Nuitka:INFO: Keeping dist folder 'reproducer.dist' for inspection, no need to use it.
Nuitka:INFO: Keeping build directory 'reproducer.build'.
Nuitka:INFO: Successfully created 'reproducer.exe'.

Similar to my problem, the compiled .exe works from within the msys interactive shell:
$ ./reproducer.exe
C:\msys64\tmp\ONEFIL~1\reproducer.py:3: PyGIWarning: Gdk was imported without specifying a version first. Use gi.require_version('Gdk', '3.0') before import to ensure that the right version gets loaded.
C:\msys64\tmp\ONEFIL~1\reproducer.py:3: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
All OK

And as expected, the same behavior as I had in a cmd w/o the necessary environment PATHs set:
.\reproducer.exe
** (process:38716): WARNING **: 09:44:50.086: Failed to load shared library 'libgdk-3-0.dll' referenced by the typelib: 'libgdk-3-0.dll': The specified module could not be found.
Traceback (most recent call last):
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\reproducer.py", line 3, in <module>
    from gi.repository import Gdk, Gtk

  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 676, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 573, in module_from_spec
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gi/importer.py", line 147, in create_module
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gi/overrides/__init__.py", line 118, in load_overrides
  File "importlib.py", line 126, in import_module
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gi/overrides/Gdk.py", line 91, in <module gi.overrides.Gdk>
  File "C:\Users\Flo\AppData\Local\Temp\ONEFIL~1\gi/overrides/__init__.py", line 195, in override
AssertionError

This should work from git top level (image file), but I think it says I do not have gtk or gdk, what package would that be?

Sorry, seems I don't have my notes together after all :/
$ history | grep 'g[dt]k'
pacman -S mingw-w64-x86_64-gtk3 mingw-w64-x86_64-python-gobject

So, my original example runs just fine for me after updating all of MSYS2 and using factory Nuitka, so this must be new in some way, and sure enough, the GDK DLL mentioned is not included.

it seems my example is too much cairo leaning maybe, the GTK DLL is also not included (anymore). It seems they changed the DLLs to have a lib prefix not seen before. I wonder if find it again will make the GDK DLL be included as a dependency, so we are not having a GDK DLL issue here, but a GTK DLL issue that shows as a GDK DLL issue first, and yes indeed, that seems to be the case, so that's probably your issue.

Thanks @kayhayen!  Please mention if there's anything I can do to help.

Thanks for your report @hacklschorsch , this is fixed on the factory branch, which is a development version under rapid development. You can try it out by going here: https://nuitka.net/doc/factory.html
Feedback if this is working is very welcome, just please do not share plans of doing it, but rather confirmations or denials of it working.

Running the current factory (05306821d) yields a working standalone executable of the reproducer for me.
Gtimelog exhibits a new problem as well, so that's progress :)
Thank you!

This is part of the hotfix release 1.8.4 that I just made. However, the further changes of your PR will be in 1.9 only and are on develop right now.


Operated Obs usage

Obs scans all rooms and stores data in segments
Prioritize rooms that are nearby, and rooms that haven’t been scanned in a while

we should be able to scan all highway rooms in the empire at 1 room per 10 ticks for 2k room. then we will need to assign these rooms to cities for mining if they are in range.


feat(teloki): loki api that pushes to otlp

Already implemented opentelemetry-collector-contrib:
https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver/lokireceiver
https://github.com/open-telemetry/opentelemetry-collector/tree/main/exporter/otlpexporter


MAISTRA-1374 Whitelist the k8s.v1.cni.cncf.io/networks annotation for…

…templating

Pulling back as @knrc already has a fix in the pipeline


Create CODE_OF_CONDUCT.md

This creates a Code of Conduct document

Codecov Report

Merging #2290 into canary will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           canary    #2290      +/-   ##
==========================================
- Coverage   10.67%   10.66%   -0.01%
==========================================
  Files         247      247
  Lines        9033     9029       -4
  Branches      987      986       -1
==========================================
- Hits          964      963       -1
+ Misses       7954     7951       -3
  Partials      115      115

Impacted Files
Coverage Δ

src/commands/dev/lib/builder-cache.ts
68.86% <0%> (+1.59%)
:arrow_up:

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 4552ad9...5cf098a. Read the comment docs.


0.16.0-rc Command /bin/sh failed with exit code 1

After upgrading to 0.16.0-rc I am now not able to archive the project in Xcode.
The react-native bundle script that runs as my last build phase in Xcode bombs out and spits this at me.
react-native bundle --entry-file index.ios.js --platform ios --dev false --bundle-output /Users/jason.merino/Library/Developer/Xcode/DerivedData/MyApp-eldkyikzvyjteiggldraztbktyqq/Build/Intermediates/ArchiveIntermediates/MyApp/BuildProductsPath/Release-iphoneos/MyApp.app/main.jsbundle --assets-dest /Users/jason.merino/Library/Developer/Xcode/DerivedData/MyApp-eldkyikzvyjteiggldraztbktyqq/Build/Intermediates/ArchiveIntermediates/MyApp/BuildProductsPath/Release-iphoneos/MyApp.app
bundle: Created ReactPackager
bundle: start
[10:27:32 AM] <START> Whole Program Optimisations
uncaught error TypeError: unknown: Property property of MemberExpression expected node to be of a type ["Identifier"] but instead got "BooleanLiteral"
    at validate (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-types/lib/definitions/index.js:98:13)
    at Object.validate (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-types/lib/definitions/core.js:412:45)
    at Object.validate (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-types/lib/index.js:266:9)
    at NodePath._replaceWith (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-core/node_modules/babel-traverse/lib/path/replacement.js:201:7)
    at NodePath.replaceWith (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-core/node_modules/babel-traverse/lib/path/replacement.js:179:8)
    at firstPass.Identifier (dead-module-elimination.js:96:14)
    at NodePath._call (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-core/node_modules/babel-traverse/lib/path/context.js:74:18)
    at NodePath.call (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-core/node_modules/babel-traverse/lib/path/context.js:46:17)
    at NodePath.visit (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-core/node_modules/babel-traverse/lib/path/context.js:104:12)
    at TraversalContext.visitQueue (/Users/jason.merino/Code/MyApp/node_modules/react-native/node_modules/babel-core/node_modules/babel-traverse/lib/context.js:153:16)
Command /bin/sh failed with exit code 1

Looks like this is lower down in some of the babel dependencies.
The app works in development mode, but when going to create the archive it fails. I've removed and reinstalled node_modules a few times, and believe I have updated everything correctly and am at a loss for what to do next. Any help would be appreciated.

Looks like a duplicate of #3948?

Let's reopen if it's not a duplicate.

@mkonicek to me it looks like this issue is different. #3948 seems to be related to not being able to compile the project. I can compile my project just fine and everything works in development mode. It's when I go to create the archive and the --dev flag is set to false that this issue crops up.
In fact, I went back and tried out the command just from the terminal and it worked with --dev true.
react-native bundle --entry-file index.ios.js --platform ios --dev true --bundle-output ...

but throws an uncaught error with --dev false.
react-native bundle --entry-file index.ios.js --platform ios --dev false --bundle-output ...

Looks like something after "Whole Program Optimisations" is throwing the error.

Please re-open.

@mkonicek It looks like I have resolved the issue I was having. I guess that now when you bundle the app it doesn't understand referencing global.__DEV__. If I change my if statements from
if (global.__DEV__) {
...

to
if (__DEV__) {
...

Then it creates the bundle successfully.

+1 same issue

Thanks @jasonmerino for reporting how you fixed it, this fix worked for me.

@niftylettuce :+1:

@jasonmerino   hou to reslove this problem?
' if (global.DEV) {'?
which file?
please help!

@zhaowx In the project I had the issue in I had to change any reference to global.__DEV___ to just __DEV__. That was the whole change. Couldn't use the global portion while bundling the app.


How to permanently close the update link prompt?

The Automatically update internal links option is turned off.
Every time I insert an image, the Update link prompt keeps appearing.
I want to know how to turn off the prompt completely.

Thank you very much for your answer.

This message is nailed into the obsidian. I asked the obsidian developer about it, he replied that there was no way to turn it off. This is very annoying, but there is no solution.

您好，我已收到邮件，将尽快查看。

You can write to the developer of obsidian with a request to make this message disabled. Perhaps he will do this after the next appeal.

Thank you for your reply and I hope this problem will be solved soon.


Setting up CI from repo within arm powershell script for a service as Azure Repos instead External Git?

Hi,
I've encountered either an issue or a lack of information how to set it up correctly. So the idea is to setup CI from Azure DevOps repo for a deployed app service from azure powershell script but when it's done by powershell script using the example provided here:
https://docs.microsoft.com/en-us/azure/app-service/scripts/powershell-continuous-deployment-github
The outcome is that when I open Azure Portal, go to the deployed service and open deployment settings (there all the new commits and deploys are shown along with the logs), the source says External Git and for some reason it doesn't automatically redeploy the app on a new master branch commit. I need to click "Sync" manually for it to work.
BUT when I do all of this manually so I setup the whole app service and deployment through Azure Portal only (no powershell script), I have the option to choose Azure Repos in Deployment Center and then when I open deployment settings the source is set to Azure Repos instead of External Git and the redeployment is done automatically on a new commit to master branch without me having to click the Sync button.
I have no idea if the auto sync problem is related to the source differences but that is the only difference I can find atm between creating app service and deployment manually and through the arm powershell script.
Do you have any idea what's the problem here? Should the repo be recognized as Azure Devops in order to auto sync to work and if so how to do it in powershell script?
In both cases the build and deploy is made with Kudu Server but it probably doesn't matter.
Thanks for any help,
Mike

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

ID: f6f87b42-0ea2-d50a-0118-c53de6ad8d45
Version Independent ID: 54a8f2b9-646d-e99d-6fa5-a3cc2b307cba
Content: PowerShell: Deploy continuously from GitHub - Azure App Service
Content Source: articles/app-service/scripts/powershell-continuous-deployment-github.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

Thanks for the question! We will review and get back to you shortly.

@MichalLechowski I wanted to check and see if you were able to find an answer to this. Please let me know if you didn't.

@MichalLechowski Since we have not heard back from you we will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly reopen the issue and continue the discussion.

@MichalLechowski I wanted to check and see if you were able to find an answer to this. Please let me know if you didn't.

@BryanTrach-MSFT  Frankly, no. I have no idea where the problem is, also nothing to be found on the Internet as far as I've tried. I can pass any suggestions to the guy responsible for deployment scripts in our team and he can test them but I'm out of ideas so if you have any, feel free to tell me what to do/try.
Greetings,
Mike


Wifi Strength

Hi, Do the wifi cameras allow you to query the current wifi strength and could that be exposed as a sensor entity to HA?

@CrashM85 yes the signal strength can be queryed using GetWifiSignal, so yes it could be added as a sensor in HomeAssistant. Although the number will be between 0 and  255 which is a bit arbitrary, it is unfortunately not in dbm.
I will add it to my to do list of feature requests.
However since I have many things to implement, this may take quite some time before I get to it.
If you appreciate the reolink integration and want to support its development, please consider sponsering the upstream library or purchase Reolink products through this affiliate link.

This library now supports the wifi signal strength query with this commmit I made: https://github.com/starkillerOG/reolink_aio/commit/69097feb54d7a431480a24b8db03098ba98587fe
Soon I will add the nessesary code to Home Asssitant to add it as a sensor.

Thanks! Have a coffee on me.

The wifi signal sensor will be available in HomeAssistant 2023.8 that will be released on August 2nd 2023.
Therefore I will close this issue now.

Hi, Got the update for HA and it appears the wifi signal is just always "1" on a RLC-410W

Yes indeed, the number on my cam correspondends to the amount of wifi bars, 1 is probably a pretty bad signal


As a trestle user I would like an example trestle repository leveraging a trestle markdown workflow.

Using arc42.org to produce an example.

Completed in compliance-trestle-demos repo.


Blog home page

Related Issue
Fix #2669
Description
I have made a blogs home page to redirect to various blogs

Blog card component made
Component compatible for both light and dark mode
Blog data JSON made
Mapped in blog page
Display all in grid container in main blog page
Added blogs with image,title,description and link to it

Type of PR

[ ] Bug fix
[x] Feature enhancement
[ ] Documentation update
[ ] Security enhancement
[ ] Other (specify): _______________

Screenshots / Videos (if applicable)
https://github.com/user-attachments/assets/69e173c8-ade9-4d46-bfcd-cf3f91527fe5
Checklist

[x] I have performed a self-review of my code.
[x] I have read and followed the Contribution Guidelines.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have followed the code style guidelines of this project.
[x] I have checked for any existing open issues that my pull request may address.
[x] I have ensured that my changes do not break any existing functionality.
[x] Each contributor is allowed to create a maximum of 4 issues per day. This helps us manage and address issues efficiently.
[x] I have read the resources for guidance listed below.
[x] I have followed security best practices in my code changes.

Additional Context
[Include any additional information or context that might be helpful for reviewers.]
Resources for Guidance
Please read the following resources before submitting your contribution:

[ ] Code Harbor Hub Community Features
[ ] Docusaurus Documentation
[ ] React.js Documentation
[ ] Markdown Guide
[ ] MDX Documentation
[ ] Mermaid Documentation

Resources for DSA Features on Our Site:

[ ] Tabs: Switch Languages
[ ] Line Numbering
[ ] Math Equations

Contribution Guidelines
Thank you for considering contributing to our project! To ensure smooth collaboration and effective contribution management, please adhere to the following guidelines:
Issue Creation

Limit on Issues:

Each contributor is allowed to create a maximum of 4 issues per day. This helps us manage and address issues efficiently.

Contribution Levels

Basic Contributions:

This project is primarily focused on documentation. Most of the setup has been completed, so contributors will generally need to work on basic code tasks, such as writing tests.
For these tasks, issues will be assigned the level1 label.

Acknowledging Hard Work:

If a contributor puts in significant effort on a task, the issue will be upgraded to level2. This is our way of recognizing and appreciating extra effort.

Feature Additions and Component Work:

Contributors working on new features or components using JSX/TSX will be assigned a level based on the complexity and quality of their work.
The more complex and valuable the contribution, the higher the level assigned.

Level Definitions

Level1:

Tasks are straightforward, such as fixing minor bugs, writing tests, or making simple documentation updates.

Level2:

Tasks require more effort, such as addressing complex bugs, improving existing features, or making substantial documentation improvements.

Level3:

Tasks are highly complex and involve significant new feature development, major refactoring, or extensive contributions to the project’s core components.

We look forward to your contributions and appreciate your effort in helping us improve the project!

@komal-agarwal5, I have created the blog's page based on our requirements. You can check it out at https://codeharborhub.github.io/blogs/.

You can update its content or try to address other issues.

You can update its content or try to address other issues.

@Ajay-Dhangar I have mapped content for existing 9 blogs
and there is slight difference in the UI bw the 2 , I have image hover effect also in the cards I made
If I add more blogs can this be merged then?
Or you can say if any more changes u want in the cards I can do that then?

You can update its content or try to address other issues.

@Ajay-Dhangar I have mapped content for existing 9 blogs and there is slight difference in the UI bw the 2 , I have image hover effect also in the cards I made If I add more blogs can this be merged then? Or you can say if any more changes u want in the cards I can do that then?

@komal-agarwal5, thanks for putting in the work on this blog home page feature. Your initial approach was a great starting point, but there were some issues with how you implemented the blog card component. I've made some changes to the codebase and added an example blog card for you to reference. You can delete your added code, pull our main branch, and then add images and content to the empty blog cards. I'll assign this issue the same level as before, and once you've made these updates we can merge the PR.

You can update its content or try to address other issues.

@Ajay-Dhangar I have mapped content for existing 9 blogs and there is slight difference in the UI bw the 2 , I have image hover effect also in the cards I made If I add more blogs can this be merged then? Or you can say if any more changes u want in the cards I can do that then?

@komal-agarwal5, thanks for putting in the work on this blog home page feature. Your initial approach was a great starting point, but there were some issues with how you implemented the blog card component. I've made some changes to the codebase and added an example blog card for you to reference. You can delete your added code, pull our main branch, and then add images and content to the empty blog cards. I'll assign this issue the same level as before, and once you've made these updates we can merge the PR.

Ok thank you so much, I will do it as said.

https://github.com/user-attachments/assets/6585ad2c-6509-496e-a79e-3ea5917d8389
@Ajay-Dhangar done


Document native database encryption [9.18]

This PR documents the new offline-first database encryption feature. Will be part of the 9.18 release.

Great job!


resolving tikv store address return an error "invalid store ID xxxx, not found" leading to raft client infinite loop

Bug Report
Hi Guys,
Currently, we offlined a TiKV node, and then we found that our TiKV cluster reported some error logs simultaneously. The errors were the same:
[2024/11/19 18:13:27.752 +08:00] [WARN] [client.rs:138] ["failed to update PD client"] [error="Other(\"[components/pd_client/src/util.rs:306]: cancel reconnection due to too small interval\")"]
[2024/11/19 18:13:27.754 +08:00] [ERROR] [util.rs:460] ["request failed"] [err_code=KV:PD:gRPC] [err="Grpc(RpcFailure(RpcStatus { status: 2-UNKNOWN, details: Some(\"invalid store ID 6365, not found\") }))"]
[2024/11/19 18:13:27.754 +08:00] [ERROR] [util.rs:469] ["reconnect failed"] [err_code=KV:PD:Unknown] [err="Other(\"[components/pd_client/src/util.rs:306]: cancel reconnection due to too small interval\")"]tikv

TiKV wants to resolve another TiKV node from PD, which store ID is 6365. However, 6365 is an offlined store and has already been removed as a tombstone. So PD just returns an error message: "invalid store ID 6365, not found."
I think these infinite error logs may be caused by the code below.
https://github.com/tikv/tikv/blob/3bd8c24d1a1eb277877557b35d3b175330e7010e/src/server/resolve.rs#L114-L124
If a store ID is not found in PD, PD returns an error message: "invalid store ID xxxx, not found." TiKV's resolve get_address perhaps needs to return an error Error::StoreTombstone(store_id) so the raft client could know this store is a tombstone and end the loop.
https://github.com/tikv/tikv/blob/3bd8c24d1a1eb277877557b35d3b175330e7010e/src/server/raft_client.rs#L837-L845

What version of TiKV are you using?
5.0.6
What operating system and CPU are you using?
Linux  Intel(R) Xeon(R) Gold 5218 CPU @ 2.30GHz
Steps to reproduce

stop a tombstone tikv service.
use pd-ctl remove-tombstone

What did you expect?
the error log gone.
What did happened?
tikv report error simultaneously

Thx for your contribution, we've already fixed this issue by https://github.com/tikv/tikv/pull/18023.
Since v5.x is not a Long Term Support (LTS) version, u can manually do the cherry-pick work by yourself if necessary.


Update externalids.md - ExternalId casing

Proposed changes
The documentation doesn’t referencing casing differences when it comes to identifiers. A customer recently wrote in asking about these differences, and through testing I was able to conclude the results below.
Merge timing

ASAP once approved?

@cmastr Can you hold off on merging this PR? I may update it again next week once Eng has resolved a JIRA.

@lizkane222 is this ready now?


Add files via upload

Kuwait University

A link for what??

http://kuweb.ku.edu.kw/ku/index.htm

@kill390 I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host ku.edu.kw.domains not found: 3(NXDOMAIN) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for your understanding!


Necessary to put complete routes in store?

This also puts all components in the store and its even possible to break things with a cyclic dependency.
For example:

A <App store={store} /> root component that receives the store using a prop (the store is created differently by client/server).
<ReduxRouter>{routes}</ReduxRouter> is a child of <App>
Routes get stored in state
Therefore, using the _owner relation, also <App> is stored in the store (deeply nested somewhere in routes)
store is stored in store because it's a prop of App. Cyclic dependency is complete.

I hope this makes any sense. It's a constructed case because store is passed to <App>. But nevertheless it breaks redux-devtools with persistState.

Route handlers shouldn't be put into state. If this is currently the case it seems wrong. Shouldn't we be able to match any location (even persisted one) to the handlers during the rendering instead?

 I'm just hoping @acdlite can help me understand this part :-)

Redux React Router is pretty hands off about the state is returned from React Router. We mostly just treat it as an opaque blob of "stuff" and then pass it to <RoutingContext>, which is a React Router component for rendering an app for a given router state.
Right now, one of the things React Router keeps in its state is an array of the currently matched routes. It does this so that <RoutingContext> knows which components to render.
It may be possible for us to sneakily remove the components property from the active routes before sending it to the store, then adding them back before rendering. Now that the API is mostly settled I'll look into this soon.

Thanks. :-)
I'm sorry if I sounded demanding or patronizing, I didn't intend to.

No problem, I didn't get that vibe at all :)

I'm getting this Uncaught ReferenceError: _classCallCheck is not defined error using transition middleware.
As you can see, it changes route from "/about" to "/about?" which makes no sense.
Do you know on whose side this bug is?

And looks like this issue is not about this error message.

I also ran into this issue, but the error occurs following the @@reduxReactRouter/replaceRoutes action.
The URL I'm trying to reach is: /users?page=1&metros%5B%5D=New%20York%20City&metros%5B%5D=San%20Francisco

This does not occur if I go to a URL with a single metros parameter, such as: /users?page=1&metros%5B%5D=New%20York%20City

Is this still an issues? I will close this for now.

I'm getting this error when I put some components in the state.  The component that gives me the error is decorated (may be relevant).  Can anyone suggest how I can troubleshoot the cause of my issue?  I saw some posts that suggest decorating the component may be the root cause of the error.


Bump Zerotier

Upgrade to 1.4.6

This is only the plugin version, not the package.

Hi,
Yes, that's right. I didn't make it clear in my message - sorry! It's a bump of Zerotier package to 1.4.6, not the plugin version. Thanks @mimugmail !

You can safely close this PR, @fichtner is watching every update on used packages and sync them.
You can have a look here:
https://github.com/opnsense/ports/blob/master/net/zerotier/Makefile

Closed as per above.


V2 Preview-1 OSX Zoom in/out appears to not work

Describe the bug
When tagging images in VoTT v2 it appears that the zoom in and out buttons don't work
To Reproduce

Import images into project, start tagging some
Try to zoom in/out (see that nothing happens)

Expected behavior
Picture will zoom in/out
Screenshots
Screen I am looking at to try to zoom in/out

Platform
[ ] Electron
[ ] Browser
Neither, V2 app in React
OS
[ ] Windows
[x] Mac
[ ] Linux
Additional context
V2 preview version of app

Same here Windows. V2 Preview Version

Ps. Tried Clicking the + and - on the screen. Tried Scrolling with mouch. Tried ctrl/shift/alt scroll with the mouse also

I think we don't support zooming so far. It is in roadmap for future updates. So buttons should be removed from UI.

You guys are correct - we have included the buttons in v2 but the functionality is not yet complete.  We will remove the buttons in the next preview release till the feature is finalized.

Can't wait for you to bring back the button when they work. It is a feature i'm really looking forward to.


Backdoored dependency? flatmap-stream-0.1.1 and flatmap-stream-0.1.2

I'm using version 3.3.6 of this module. flatmap-stream was added by this commit:
https://github.com/dominictarr/event-stream/commit/e3163361fed01384c986b9b4c18feb1fc42b8285
The new updates to the package on npm are very suspicious.
0.1.0: https://registry.npmjs.org/flatmap-stream/-/flatmap-stream-0.1.0.tgz
0.1.1: https://registry.npmjs.org/flatmap-stream/-/flatmap-stream-0.1.1.tgz
0.1.2: https://registry.npmjs.org/flatmap-stream/-/flatmap-stream-0.1.2.tgz
Regards.

If you're reading this, it looks like the solution for the moment is to downgrade to 3.3.4 (which does not have the vulnerability) until npm support can grant permission to a new owner who won't inject compromised packages.

Thrre were no bad intentions:
https://github.com/dominictarr/event-stream/issues/73

per the description linked here: https://github.com/dominictarr/event-stream/issues/116#issuecomment-441745900
the package attempts to steal Bitcoin from an installed Bitcoin wallet, so yes, it does seem like there were really bad intentions!!!

I mean flatmap-stream were added to this repository not to steal bitcoins but to implement functionality. @right9ctrl just didn't know flatmap were malicious.

@funny-falcon Sure, that's why an utterly unknown package was used for flatmap instead of going with any of the many, many popular libraries which already provide it (lodash springs to mind instantly, but I'm 100% sure there are plenty of others). A package which had literally zero downloads before being integrated into event-stream. That's why the major version was bumped immediately afterwards without invalidating the old minor release which introduced the attack.
Sure. You keep believing it was unintentional. Whatever you say. I bet you're not even a sockpuppet.

@funny-falcon @right9ctrl deliberately added an older version of flatmap-stream that contained the malicious code. But whether this was intentional or a mistake is irrelevant.  It's called an analogy. We're obviously talking about open source code, not the justice system or due process. One of two scenarios are at play here:

@right9ctrl intentionally added the malicious dependency.
@right9ctrl unintentionally added the malicious dependency.

Either way, this person put others at risk by adding a version of flatmap-stream containing the malicious code. The library contains less than 200 lines of JS. I honestly hope @right9ctrl was being malicious because if this is the work of a legitimate developer trying to maintain a package used by hundreds of thousands of projects, then I'm done with JavaScript. The community has reached a new low if this was truly an honest mistake.
But personally @funny-falcon, I'm not one to blindly follow Hanlon's razor. If you want to convince me (and others) that this was not a malicious act, please provide better arguments than simply spamming "no bad intentions" in every thread. You look naive at best and suspect at worst.

It's not really appropriate to use that language nor to attack someone directly like that. Criticize the argument sure not the person.

Can someone put a security notice on npm if there isn't any yet? That would be valuable.

As I understand it, NPM have already removed the package. But it might still be sitting in your cache.

@right9ctrl also forked node-scrypt which is used by coin and mining software, and in the fork changed already unsafe code (invalid memory reads) into just differently unsafe code.
And a certain person assuming "no bad intentions", is as @supernintendo said, "naive at best and suspect at worst"

crazy.

brb switching to golang as this is the<PHONE_NUMBER>2938th time this has happened

@right9ctrl Crazy...

@supernintendo , first, you are really polite.  That really shows your level.
Second, with my claim I added link to the issue about flatmap functionality in this library opened three years ago and closed three months ago by @right9ctrl. That is why I claim that it was huge and unforgettable mistake, but just mistake.
Third, if you, @supernintendo, never made any mistake, then you are totally right... But there is no single man who never did mistakes.
Forth, leftpad happened more than two years ago, but people still import libraries for dozen line of codes. That is npm tradition. Obviously  @right9ctrl just followed tradition. Given malicious code is present only in minified version of library, it is clear to me he didn't notice that malware. Do you check minified versions of all libraries you imported to your project? I really doubdt.
And it is npm issue: npm should not allow publishing of minified versions. It should allow to publish public visible well readable versions.
"let him who is without sin cast the first stone" - spoked one great man. Don't forget this sentence.

@funny-falcon    You're a good cooker.       pot

@dominictarr I think locking this issue might not be a bad idea. The tone has got a bit nasty and any actionable issue has long since got lost in the thread.
We can go ahead open a new issue if action does need to be taken.

@supernintendo it's people like you that give the tech community a bad name. Throwing insults at someone just because you disagree with them is never the right answer.

@funny-falcon I just want to ask you to clarify a bit this place:

And it is npm issue: npm should not allow publishing of minified versions. It should allow to publish public visible well readable versions.

How would you advise them to check this? There are many modules which provide both the minified and original code, and under normal circumstances, they'll be semantically identical. But how are npm supposed to check whether this is really the case? Or do you think that all minification must be performed by end-users?

What if npm allowed only unminified code to be published and execute a minification at install time?

@funny-falcon it seems like @right9ctrl tried to hide it, publishing a 4.0.0 version without the backdoor and leaving the 3.3.6 with it. It it was a mistake, he would publish a 3.3.7 without the backdoor too.

@right9ctrl user doesn't exist now :man_shrugging: the problem comes when you have dependencies using this dependencies :man_facepalming:

@Imcarreiro there is still a chance he didn't recognize backdoor presence, and published 4.0.0 version because he changed method signature (was flatmap, become flatmapSync).
It is pity though @right9ctrl decided to remove itself without attempt to apologize for his mistake.

Whatever @right9ctrl has added this malware intentionally or not. I think we should keep this situation as a lesson for the future. We must be aware that using packages with too much confidence can cause big security issues for the entire community and do our best to avoid that.

@right9ctrl updated the version to 4.0.0 (instead of 3.3.7) is because he tried to hide the malicious codes but he still wants those codes to remain in affected projects since npm update cannot update<EMAIL_ADDRESS>to<EMAIL_ADDRESS>(unless you use npm update -f).

@JieJiSS Yeah it makes sense!

@JieJiSS that is assumption. That is not necessary true. As well as my assumption.

@funny-falcon yeah just assumption. He unregistered and nobody can confirm now.

surely they fled  only because of the too many notifications he got by this thread @-ing them. We missed our chance to applologise to this innocent github user
They had too fragile a soul...

@funny-falcon There is a high level of product liability (e.g. a manufacturer assume liability over their widgets' safety regardless of use or intent) for contributors to the open-source community. Fault and liability can also lie with npm, package maintainers, and others. But to outright assume that there was no fault is to miss the core purpose of liability.

@christopherwxyz mistake is a fault. I agree whole issue is the damn fault.
I just saw evidence this were unintentional fault.

Someone wrote the code, though.

If you're reading this, it looks like the solution for the moment is to downgrade to 3.3.4 (which does not have the vulnerability) until npm support can grant permission to a new owner who won't inject compromised packages.

as per the ref link article they suggest to upgrade to 4.0.1 , can you please recommend whether to go for downgrade to 3.3.4 or 3.3.5 or upgrade to 4.0.1 Ref :
https://www.zdnet.com/article/hacker-backdoors-popular-javascript-library-to-steal-bitcoin-funds/

@kevinpiac what should I run? I haven't event-stream in my package.json .
npm install event-stream ?
Thanks

@y-chen If you are using npm version 5 or newer, running npm i should generate a package-lock.json file. This file contains event-stream since it's a peer dependency of your project. Update it to 3.3.5 (last version before the backdoor) and run npm i again. This did the trick for me.

Morale of the story:

Write your own code and don't ever blindly trust your source.

Morale of the story:

Write your own code and don't ever blindly trust your source.

But, isn't that the purpose of a FOSS ecosystem? We can review the code. I'd say, the system is still working (of course, thanks to all contributors).


Improve rendering of rectangular icons

The problem
Any non trivial app is likely to use external icon packages, like FontAwesome, which not always have perfectly squared icons. Unfortunately, rectangular icons are not guaranteed to be rendered correctly and in fact they're not. For example, they are not properly centered: https://github.com/flutter/flutter/issues/24054.
Another thing you may consider a "problem" is that different fonts may have uneven sizes (e.g. FontAwesome). In fact, the above issue with centering is related to the fact that some FontAwesome rectangular icons are wider than size pixel at fontSize=size.
Proposal
Solving the centering problem is trivial just by passing textAling: TextAlignment.center to the RichText in Icon.build. I have a ready PR for that but I wanted to discuss an alternative solution before submitting it.
If you consider the uneven size between fonts a problem, or you simply want to avoid overflowing the SizedBox, then one could think to wrap the RichText with a FittedBox widget. The problem of uneven font sizes is not completely solved but is alleviated for sure.
Is there any particular reason for not using a FittedBox? Does it affect performances in a significant way?
Let me know which solution you prefer (if any) and I'll submit a PR.

Any news about your PR? ;-)
for anyone else a copy&paste workaround
/// Workaround for centered icons. see https://github.com/flutter/flutter/issues/24054#issuecomment-439167235
class CenteredIcon extends StatelessWidget {
  const CenteredIcon({
    Key key,
    @required this.icon,
    this.color,
    this.size,
  }) : super(key: key);

  final IconData icon;
  final Color color;
  final double size;

  @override
  Widget build(BuildContext context) {
    return Text(
      String.fromCharCode(icon.codePoint),
      style: TextStyle(
        inherit: false,
        fontSize: size,
        fontFamily: icon.fontFamily,
        package: icon.fontPackage,
        color: color,
      ),
    );
  }
}

@hpoul As you can see, I didn't get any answer from Flutter's team members, so I didn't open any pull request. I have some vague memory that just setting textAlign to center in Icon.build didn't work in all cases but I don't remember exactly the details. It's been months since I opened this issue...
Your solution is totally fine, probably the best if you give up on the constraint that an Icon of size N is a square NxN.
Below, there is the workaround I used (in June). It's basically the (June) code of Icon with a couple of modifications (in bold). Since I'm using both material icons and FontAwesome icons, I put a FittedBox so that they have approximately the same size. It works well for me. It's also what I would put in the PR, so any feedback is appreciated.

class MyIcon extends StatelessWidget {

  const MyIcon(
    this.icon, {
    Key key,
    this.size,
    this.color,
    this.semanticLabel,
    this.textDirection,
  }) : super(key: key);

  final IconData icon;
  final double size;
  final Color color;
  final String semanticLabel;
  final TextDirection textDirection;

  @override
  Widget build(BuildContext context) {
    assert(this.textDirection != null || debugCheckHasDirectionality(context));
    final TextDirection textDirection = this.textDirection ?? Directionality.of(context);

    final IconThemeData iconTheme = IconTheme.of(context);

    final double iconSize = size ?? iconTheme.size;

    if (icon == null) {
      return Semantics(
        label: semanticLabel,
        child: SizedBox(width: iconSize, height: iconSize),
      );
    }

    final double iconOpacity = iconTheme.opacity;
    Color iconColor = color ?? iconTheme.color;
    if (iconOpacity != 1.0)
      iconColor = iconColor.withOpacity(iconColor.opacity * iconOpacity);

    Widget iconWidget = RichText(
      overflow: TextOverflow.visible, // Never clip.
      textDirection: textDirection, // Since we already fetched it for the assert...
      textAlign: TextAlign.center,
      text: TextSpan(
        text: String.fromCharCode(icon.codePoint),
        style: TextStyle(
          inherit: false,
          color: iconColor,
          fontSize: iconSize,
          fontFamily: icon.fontFamily,
          package: icon.fontPackage,
        ),
      ),
    );

    if (icon.matchTextDirection) {
      switch (textDirection) {
        case TextDirection.rtl:
          iconWidget = Transform(
            transform: Matrix4.identity()..scale(-1.0, 1.0, 1.0),
            alignment: Alignment.center,
            transformHitTests: false,
            child: iconWidget,
          );
          break;
        case TextDirection.ltr:
          break;
      }
    }

    return Semantics(
      label: semanticLabel,
      child: ExcludeSemantics(
        child: SizedBox(
          width: iconSize,
          height: iconSize,
          child: FittedBox(
            child: iconWidget,
          ),
        ),
      ),
    );
  }
}

Long frustrated by the square nature of Icons, I wrote a package with a class that extends Icon, so it may be used in Tab()s and IconButton()s, etc.
I'm still new, so I am not sure if I implement the extended class properly.
Furthermore, I did not opt to use a FittedBox, but do centerLeft align because I accept Size parameter as trueSize.
Aside from break of requiring Size instead of double, these IconToos are interchangeable with Icons.
Bonus, shadows pass is accepted and all original Semantics and debug Property functionality are maintained.
I chose a nice simple name for easy import into new projects: icon


xFunc should return a func w/ identical sig as underlying func

The signature of a func returned by, say, color.PrintFunc should be
the same as fmt.Print. This enables code usage like:
	f := fmt.Print
	if configColor {
		f = color.New(color.FgRed).PrintFunc()
		// f = color.New(color.FgRed).Print // this is sufficient
	}
	f("foo bar")

P.S. After this patch, I am not sure why the xFunc family of functions
are still needed (except for backward compatibility). Maybe we should
revise the examples in the documentation to reduce future usage.

Hi @maverickwoo
This came up before but I'm not keen to change the signature of the function. The reason is that it's widely used package and a break like this would cause a lot of problems and problem would break hundreds of thousands projects. Maybe we can do a v2.0 release in the future with these breaking changes. For now though I think we don't need this. Thanks!


Some UI Fixes

Fixes z-index weirdness with pagination in resource lists (shift the pagination to the left)
Resolves an issue where HTTPRoute status conditions had a label of "Unknown" - added some parsing to check status.parents

/lgtm


Feat/message/mempool

closes #82
Added mempool.zig, implementing necessary functions to deserialize/serialize into the wire
Added some tests but should look similiar to Verack as neither contain payload.

You should also add it as an if/else condition in wire deserializeMessage

should be good now i just forgot to git add that file.

You should also add it as an if/else condition in wire deserializeMessage

https://github.com/oxlime/btczee/blob/cae11b088a2b052dc768b84612eb503f81b52005/src/network/wire/lib.zig#L83

oh I missed it sorry


show hide default grids in Js

Hi,
Is there a way to show default gridlines onload.
I dont have any custom gridlines. I want to show default grids that appear with code below onload the chart.
grid :{
y: {
show : true,
}
}
Many thanks in advance.

refer this
set datapoints for which you want to show grid lines

Thanks for your response but that does not work for me. I have to load different charts on every click and should provide an button to show hide grid lines.
I solved it using d3
to show:
d3.selectAll('.c3-grid line')
.style('visibility', 'visible')
to hide
d3.selectAll('.c3-grid line')
.style('visibility', 'hidden')
But it would be better If i have that option in c3

can you post the fiddle here, i'll try that

no response from submitter


bootstrap.sh: remove GOBIN for cross-compiled binary

Go otherwise complains:
go get: cannot install cross-compiled binaries when GOBIN is set
Signed-off-by: Daniel Maslowski<EMAIL_ADDRESS>

could we, rather, start creating bin directories in form
util/linux_amd64/bin/...
util/plan9_amd64/bin/...
etc.
is that possible? We need to start thinking in terms of heterogeneity now.
The plan 9 naming won't quite do it, since the only differentiate on architecture.
Daniel, nice to see you here.

Sorry, was a bit unsure how to go about this for now.
So the line is just removed for now, and I am creating a new issue for the goal of getting a Go toolchain in place. :)


Create Post “is-the-pest-control-treatment-safe-for-my-family-and-pets”

Automatically generated by Netlify CMS

👷 Deploy Preview for chic-shortbread-66a66b processing.

Name
Link

🔨 Latest commit
b48e435180ce14d9a779167307c1047711f39387

🔍 Latest deploy log
https://app.netlify.com/sites/chic-shortbread-66a66b/deploys/6530780d54801200081a09c3


Fix memory leak in cert_write example program.

Fixes #1422.
Needs backports: Yes, available at #2058 and #2057.

I am not sure we need a ChangeLog entry for this, but this is up to the Gatekeeper decision

I'm okay with a ChangeLog entry for this, given it's fixing an issue with a GitHub entry.

There's no Jenkins CI pass, but given this fixes an example that isn't tested by the CI, I can accept the PR as it is, without a test pass.


[TRANSLATION] EN to ZH-CN & ZH-TW

Articles translated:

/zh-tw/progressive-web-apps.markdown
/zh-tw/fundamentals/getting-started/your-first-progressive-web-app/index.markdown
/zh-tw/fundamentals/getting-started/push-notifications/index.markdown
/zh-cn/progressive-web-apps.markdown
/zh-cn/fundamentals/getting-started/your-first-progressive-web-app/index.markdown
/zh-cn/fundamentals/getting-started/push-notifications/index.markdown

... and more
Added my info to src/content/_contributors.yaml too.
It would be great if someone review and merge this. Thank you in advance. :smile:

I have totally no idea why the build failed. If someone checking this PR, pls help me fix the problem. Thanks :smile:

Articles/Codelabs Translated:

/zh-tw/fundamentals/getting-started/push-notifications/ (the whole codelab)
/zh-tw/progressive-web-apps.markdown
/zh-tw/fundamentals/getting-started/your-first-progressive-web-app/index.markdown
/zh-cn/fundamentals/getting-started/push-notifications/ (the whole codelas)
/zh-cn/progressive-web-apps.markdown
/zh-cn/fundamentals/getting-started/your-first-progressive-web-app/index.markdown
and more

Fix Typo/Layout:

/en/fundamentals/getting-started/push-notifications/step-07.markdown
/en/fundamentals/getting-started/push-notifications/step-09.markdown

Added my info to src/content/_contributors.yaml and profile picture too.
It would be great if someone review and merge this. Thank you in advance. :smile:

Hey @limhenry - thanks for doing this. I don't have time to review until after I/O, but I'll take a look immediately after.
If anyone else has time, please feel free to review and merge.

@limhenry Thank you for the modifications. LGTM, but I'm not a reviewer. :P

@petele I already checked this PR, but could you re-check this PR and merge this if looks good?

@petele Thank you for the merging!

@petele Thanks! :smile:


Instagram detected the automated behavior

After a few days of using the account, I logged into the website and received this message from Instagram:
**We suspect automated behavior on your account.**
To prevent your account from being temporarily restricted or permanently disabled, please ensure that no other users or tools have access to your account and that you're adhering to our Terms of Use. We also recommend changing your password to a stronger one to help prevent any unauthorized access from third parties.

Does this mean Instagram detected our activity and flagged the account? Is there anything we can do to avoid this situation?

 They have an AI that seeks out stuff like this to ban you. You have to trick it for as long as you can.
So just click dismiss. You did get flagged but that's not a death sentence. Post a few BS posts to your page. Make some likes and comments on some celebrities. Add a profile pic and a mini bio. Act like a human being.
Periodically, scrape some profiles bits at a time. Teach the AI scanning for scrapers and bots that your behavior is totally normal. That you really do just scroll through the profile from top to bottom at moderate speed. Zip through sidecars and posts. Add some more pics. add hashtags to posts so that bot accounts will like and follow you. wait 5-10 mins between actions. Again, act like a human being.
 And you just seem like a weirdo but not a bot. If you ever can't add profiles without it saying "requested" on a public profile, add a post or two over the next couple days and try again. The system will back off and let you. Don't add too many people in a single day. Act like a human being.
Do make sure that you make some alt accounts on different IP addresses and never log into them on the same session as another. I made that mistake and lost 3 accounts at once and it sucked.
In summation, if you have a new account, you need to be more careful as new accounts are under more scrutiny. Never log in on a mobile device. Use a VPN. Make alts. And start slow. You're not a bot.  Act like one. You wont see that message too often if you do it right.

 They have an AI that seeks out stuff like this to ban you. You have to trick it for as long as you can.
So just click dismiss. You did get flagged but that's not a death sentence. Post a few BS posts to your page. Make some likes and comments on some celebrities. Add a profile pic and a mini bio. Act like a human being.
Periodically, scrape some profiles bits at a time. Teach the AI scanning for scrapers and bots that your behavior is totally normal. That you really do just scroll through the profile from top to bottom at moderate speed. Zip through sidecars and posts. Add some more pics. add hashtags to posts so that bot accounts will like and follow you. wait 5-10 mins between actions. Again, act like a human being.
 And you just seem like a weirdo but not a bot. If you ever can't add profiles without it saying "requested" on a public profile, add a post or two over the next couple days and try again. The system will back off and let you. Don't add too many people in a single day. Act like a human being.
Do make sure that you make some alt accounts on different IP addresses and never log into them on the same session as another. I made that mistake and lost 3 accounts at once and it sucked.
In summation, if you have a new account, you need to be more careful as new accounts are under more scrutiny. Never log in on a mobile device. Use a VPN. Make alts. And start slow. You're not a bot.  Act like one. You wont see that message too often if you do it right.

Thank you for your answer, I got it

use also "trickle -s -v -d instaloader .... " to restrain download speed.

Some thoughts on social media that "restrain" downloading. I know that download/upload bandwidth is valuable, especially for heavy stuff (like images and videos). However,

I think that loading the page with a lot of "javescript", make pages heavy, and at the end cost you a lot, or
collecting users keystrokes to watch users behavior is an "official hacking" as well an intrusion to our personality. There are researchers that says even with few keystrokes can detect a lot of user personality and behavior. there are even special tools to make keystrokes to appear random to computer.
I have visited social media as "human" and by pressing "arrows" or clicking with mouse to next image is considered "spamming" (eg. FB) and they dont let me to continue, while it is much easier to download them with bot to watch them without any disturbance!
it is much better, if eg. instagram says that it will support instaloader giving eg. 10% of its bandwidth for x number of downloadings per user, by registering its api, than to invest to all these heavy stuff, expensive, fruitful technologies. Some social media sites do that.
Social media is exactly that social. They are public. Every user has the right to keep an archive. Archivists have saved much of internet history which without them, such history will be extinct. We know that many social media have gone through years eg. vines or installed many restrictions, deleted accounts etc such as twitter, tumblr etc. These are not 'safe' social media - this is a running contest of when your account will be deleted or not!
It is better to use decentralized networks like fedora universe.

@estatistics Hello, what download speed do you recommend in your experience? I very quickly get the “automated behavior” error, especially if I use --reels

<500kb

<500kb

@estatistics are you for real? How is that even real to trick AI if most mobile networks are way faster than that speed

<500kb

@estatistics are you for real? How is that even real to trick AI if most mobile networks are way faster than that speed

I assumed that he had confused bits and bytes as is very common. That he meant 500 KB/s.
But even that speed is low.

I know what works best for me. If you find any other method that working efficiently, without banning, please you are welcome to post it. yes, I meant <500kb/s.

I know what works best for me. If you find any other method that working efficiently, without banning, please you are welcome to post it. yes, I meant <500kb/s.

It’s cool that it works, it’s just doesn’t make sense why it have to be that low, unless such slow speed makes you invisible to AI detection

I know what works best for me. If you find any other method that working efficiently, without banning, please you are welcome to post it. yes, I meant <500kb/s.

can you write the full command so i can copy paste it? I dont understand much of tech so the current docs are too confusing. i want to login and download a backup of my account and i want to ensure the download speed is slow enough i dont get banned

I know what works best for me. If you find any other method that working efficiently, without banning, please you are welcome to post it. yes, I meant <500kb/s.

can you write the full command so i can copy paste it? I dont understand much of tech so the current docs are too confusing. i want to login and download a backup of my account and i want to ensure the download speed is slow enough i dont get banned

Is your account private..??

i want to login and download a backup of my account

If you want to download your own account, no need for instaloader, just ask Instagram for it: https://help.instagram.com/181231772500920?helpref=faq_content . If this does not work or is incomplete, complain to them.

My account isn’t private but it’s asking to login. I wasn’t to backup my account and other accounts so i can’t ask Instagram
On Fri, Dec 6, 2024 at 7:54 AM, abhishek7791 @.***(mailto:On Fri, Dec 6, 2024 at 7:54 AM, abhishek7791 < wrote:

I know what works best for me. If you find any other method that working efficiently, without banning, please you are welcome to post it. yes, I meant <500kb/s.

can you write the full command so i can copy paste it? I dont understand much of tech so the current docs are too confusing. i want to login and download a backup of my account and i want to ensure the download speed is slow enough i dont get banned

Is your account private..??
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

My account isn’t private but it’s asking to login. I wasn’t to backup my account and other accounts so i can’t ask Instagram

I'm not following. Why can't you use another account (which you don't care if it's banned) to back up your account?

How/Where do I use trickle? I'm fairly new to how python works but I understood enough to run Instaloader at least.

@jswag245  trickle -s -v -d 100 instaloader --login=user   --user-agent "Mozilla.........." --abort-on=302,400,401,429,403  --stories  --highlights INSTAGRAMUSER/      AND FOR REELS i use gallery-dl case it is simpler and faster. But be cautious  gallery-dl --retries -1 --cookies-from-browser firefox  "https://www.instagram.com/INSTAGRAMUSER/reels/";

@jswag245 trickle -s -v -d 100 instaloader --login=YOURUSERNAME --user-agent "Mozilla.........." --abort-on=302,400,401,429,403 --stories --highlights INSTAGRAMUSER/  AND FOR REELS i use gallery-dl cause it is simpler and faster. But be cautious  gallery-dl --retries -1 --cookies-from-browser firefox "https://www.instagram.com/INSTAGRAMUSER/reels/";
BUT before these commands, i login using (you must find 615_import_firefox_session.py in instaloader folders of github) python3 /mnt/sda1/home/615_import_firefox_session.py -c /mnt/hume/user/firefox/default_profile/cookies.sqlite
you must keep instaloader updated if problems arise

Is there a way to just download stories WITHOUT the person's posts?

find an insta account with very few pics, lets say 5-10. And then try to experiment with options to see what you suit you better.

@jswag245 trickle -s -v -d 100 instaloader --login=YOURUSERNAME --user-agent "Mozilla.........." --abort-on=302,400,401,429,403 --stories --highlights INSTAGRAMUSER/  AND FOR REELS i use gallery-dl cause it is simpler and faster. But be cautious  gallery-dl --retries -1 --cookies-from-browser firefox "https://www.instagram.com/INSTAGRAMUSER/reels/";
BUT before these commands, i login using (you must find 615_import_firefox_session.py in instaloader folders of github) python3 /mnt/sda1/home/615_import_firefox_session.py -c /mnt/hume/user/firefox/default_profile/cookies.sqlite
you must keep instaloader updated if problems arise

it writes to me  ('trickle' is not recognized as an internal or external command,
operable program or batch file.)

it writes to me ('trickle' is not recognized as an internal or external command, operable program or batch file.)

So you dont know to use even google search or ecosia search?  use "trickle linux" if you are on other type of software, you must search " how to limit bandwidth of a command in terminal" or something like this.

On server A, if you create a new account and scrape even a little, the account will be suspended, but on server B, one account has not been suspended even if it has been scraped for over a month. Is it possible to check bots by IP rather than by account?


Build non-editor targets in release mode on Travis CI

This makes sure the release code path is tested in CI builds.
This closes #22147.

I don't know if it's good to have all builds in release mode. AFAIK it includes optimizations and will take longer to build.

I don't know if it's good to have all builds in release mode. AFAIK it includes optimizations and will take longer to build.

Progress reporting could be disabled (progress=no), it's known to make builds slightly faster.

I agree with @vnen, there's no need to change it for all platforms. We only need one build of each:

tools=yes target=debug
tools=yes target=release_debug (missing in this PR) --> maybe use the server build for that use case (builds faster than OSX which often has backlog on Travis)
tools=no target=release_debug (missing in this PR) --> maybe use the android build for that one
tools=no target=release

Thanks!


GitHub Action stuck at Getting current replicas

GitHub Action is stuck at Getting current replicas

How many replicas are you configured to have?

@mhanberg Closing this ticket. I didn't set DATABASE credentials in my prod.exs properly so I was getting this error. Error was misleading. I checked gigalixir logs and then fixed this.


[Feature Request]: Prevent DataPicker and DataRangePicker to resize/jump when clicking through months

Description
When DatePicker and DateRangePicker popups open above the input, then clicking the left and right buttons resizes the popup content, causing arrow positions to jump up and down. This effect is not noticeable when the popup opens down.

Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate requests

To reproduce:

Open DatePicker or DateRangePicker playground
Add a bit more space above the component by changing some div height from above using the DevTools
Enable expandToViewport
Scroll the page so that the popup would open up, not down

A possible solution, when the popup opens up, always display 6 rows.


How to solve this problem when I'm running

# github.com/coreos/etcd/clientv3/balancer/resolver/endpoint
../../pkg/mod/github.com/coreos/etcd@v3.3.22+incompatible/clientv3/balancer/resolver/endpoint/endpoint.go:114:78: undefined: resolver.BuildOption
../../pkg/mod/github.com/coreos/etcd@v3.3.22+incompatible/clientv3/balancer/resolver/endpoint/endpoint.go:182:31: undefined: resolver.ResolveNowOption
# github.com/coreos/etcd/clientv3/balancer/picker
../../pkg/mod/github.com/coreos/etcd@v3.3.22+incompatible/clientv3/balancer/picker/err.go:37:44: undefined: balancer.PickOptions
../../pkg/mod/github.com/coreos/etcd@v3.3.22+incompatible/clientv3/balancer/picker/roundrobin_balanced.go:55:54: undefined: balancer.PickOptions
# github.com/micro/go-micro/transport/quic
../../pkg/mod/github.com/micro/go-micro@v1.18.0/transport/quic/quic.go:54:12: q.s.Close undefined (type quic.Session has no field or method Close)
../../pkg/mod/github.com/micro/go-micro@v1.18.0/transport/quic/quic.go:121:3: unknown field 'IdleTimeout' in struct literal of type quic.Config

Please use go modules. export GO111MODULE=on and only do go get without -u


Two page PDF receipts are hard to read

Couple options:

For Telia, split each page in middle, then trim, then stack vertically
Do two pages side-by-side, rotate CW, and paste in the long way

Changed it to rotate two-page receipts


Create cloud foundry application in bluemix

**As a developer
**I need a cloud foundry application in bluemix
**So that i can use cf push to push an application to bluemix and start it
Assumptions:

URL will be nyu-shopcarts-service.mybluemix.net

Acceptance Criteria:
Given a running cloudfoundry application
When I do cf push
Then the service should be deployed

Created an application at nyu-shopcarts-service.bluemix.net


Added version constraints for PHP 8.0 and doctrine/dbal 3.0

Thank you. 🎉

Thank you. 🎉

@zgabievi great! Could you also publish a new release?

@zgabievi great! Could you also publish a new release?


please add the feauture make vscode can edit default settings just like sublime

please add the feauture make vscode can edit default  settings
why i can't edit write the vscode://defaultsettings/keybindings or defaultSettings??there is no such file on my disk!!!!!!just like sublime https://github.com/Microsoft/vscode/issues/53218

I already responded in #53218


ECR Plugin issue when an image with many tags

Describe the bug
When transferring an image with many tags, this issue may occur.
LAMBDA_WARNING: Unhandled exception. The most likely cause is an issue in the function code. However, in rare cases, a Lambda runtime update can cause unexpected function behavior. For functions using managed runtimes, runtime updates can be triggered by a function change, or can be applied automatically. To determine if the runtime has been updated, check the runtime version in the INIT_START log entry. If this error correlates with a change in the runtime version, you may be able to mitigate this error by temporarily rolling back to the previous runtime version. For more information, see https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html

[ERROR] ParamValidationError: Parameter validation failed:
Unknown parameter in input: "repositoryName", must be one of: registryId, repositoryNames, nextToken, maxResults
Unknown parameter in input: "filter", must be one of: registryId, repositoryNames, nextToken, maxResults
Traceback (most recent call last):
  File "/var/task/lambda_function.py", line 28, in lambda_handler
    result = image_helper.generate_repo_tag_map_list()
  File "/var/task/util/ecr_helper.py", line 117, in generate_repo_tag_map_list
    image_tags = self._get_ecr_image_tags(repo_name)
  File "/var/task/util/ecr_helper.py", line 201, in _get_ecr_image_tags
    response = self._ecr.describe_repositories(
  File "/var/runtime/botocore/client.py", line 553, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/var/runtime/botocore/client.py", line 962, in _make_api_call
    request_dict = self._convert_to_request_dict(
  File "/var/runtime/botocore/client.py", line 1036, in _convert_to_request_dict
    request_dict = self._serializer.serialize_to_request(
  File "/var/runtime/botocore/validate.py", line 381, in serialize_to_request
    raise ParamValidationError(report=report.generate_report())

Please complete the following information about the solution:

[ ] Version: v2.6.1

We will patch this issue in next release.
Currently the workaround is manually replacing describe_repositories with describe_images in the _get_ecr_image_tags.


[BUG] incorrect warning: "Could not find mobileKeyword"

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
When retrieving transactionalSMS, I get a warning for each one that the mobileKeyword could not be found. Even though that keyword exists and has been retrieved.

Expected Behavior
The warning should not be shown, rather an info should confirm the successful retrieve of the transactionalSMS
Steps To Reproduce

Go to '...'
Click on '....'
Run '...'
See error...

Version
6.0.0
Environment

OS: macOS 14.0
Node: 20.5.0
npm: 10.0

Participation

[X] I am willing to submit a pull request for this issue.

Additional comments
No response

hi @david-robuck - somehow i didnt notice this issue. given that this part of the solution received major attention though, can I assume it's no longer a problem?

All good @JoernBerkefeld confirming this behaviour appears to be resolved. I did a full retrieve on transactionalSMS with no issues on the current version. Thanks~

thank you! :)


Missing Files & Framework on chat secure-ios

how to get complete source code of chat secure-ios , which is missing like  these files
OTR_Codesigning.xcconfig
OTRSecrets.m
Pods.debug.xcconfig
Pods.release.xcconfig
Pods.beta.xcconfig
and make it runnable source code.

Download It
From the correct repository

I have tried to download correct repositry with using terminal
Download the source code and with the submodules as well.
$ git clone https://github.com/chrisballinger/ChatSecure-iOS.git

$ cd ChatSecure-iOS/

$ git submodule update --init --recursive

$ pod install
but stil we have missing these files
OTRSecrets.m
Please help me....
https://github.com/ChatSecure/ChatSecure-iOS


python310Packages.niaclass: init at 0.1.3

Description of changes
NiaClass is a framework for solving classification tasks using nature-inspired algorithms. The framework is written fully in Python. Its goal is to find the best possible set of classification rules for the input data using the NiaPy framework, which is a popular Python collection of nature-inspired algorithms. The NiaClass classifier supports numerical and categorical features.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[X] Fits CONTRIBUTING.md.

@SuperSandro2000,  I kindly ask you to review this package.


Facebook Lite share does not work

The issue is regarding when a user is using facebook lite, the facebook share of the plugin does not work.

facebook lite is just a webview for the facebook mobile website, and its not official app from facebook.
Also it's not contains the sharing capabilities of the real facebook native app

Actually, Facebook Lite is coming from Facebook as a light version for the standard app. Like all android apps it should have a package (e.g. com.facebook.katana for the standard app). This plugin should be able to support the lite version if it uses the package for that version which maybe is com.facebook.lite. If so, a sharing intent that talks directly to lite version could be this one:
Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Example text");
intent.setPackage("com.facebook.lite");
activity.startActivity(intent);

I will try it and post back.

changing the package to com.facebook.lite in SocialSharing.java,  it opens the lite version and let's you share on Facebook.
@EddyVerbruggen, you could check it and add a new function (i.e shareViaFbLite()) which will use the lite version. An alternative could be, the exisitng shareViaFacebook method to try and share on the official app but if it cannot find the package then search for the lite app too.

Thanks for this one
http://www.volenday.com
Andrien Pecson
Web Developer
VOLENDAY
6805 Ayala Avenue, Makati, 1226 Philippines
http://maps.google.com/maps?q=6805+Ayala+Avenue%2CMakati%2CManila+1226%2CPhilippines+&hl=en
Mobile: +639173710452
Skype: andrien.pecson.volenday
Email<EMAIL_ADDRESS><EMAIL_ADDRESS>www.volenday.com
https://plus.google.com/109317514802318019777
https://www.facebook.com/Volenday http://twitter.com/Volenday
[image: Follow us on LinkedIn] http://www.linkedin.com/company/volenday
On Sun, May 15, 2016 at 12:14 AM, JcDenton86<EMAIL_ADDRESS>wrote:

changing the package to com.facebook.lite in SocialSharing.java, it opens
the lite version and let's you share on Facebook.
@EddyVerbruggen https://github.com/EddyVerbruggen, you could check it
and add a new function (i.e shareViaFbLite()) which will use the lite
version. An alternative could be, the exisitng shareViaFacebook method to
try and share on the official app but if it cannot find the package then
search for the lite app too.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin/issues/499#issuecomment-219228806


elk: deploy elk stack

K8s via helm?
https://www.elastic.co/guide/en/cloud-on-k8s/current/k8s-quickstart.html

Reference:

https://viblo.asia/p/k8s-phan-14-logging-tren-k8s-su-dung-elk-section3-Eb85ovn2l2G

https://www.elastic.co/guide/en/cloud-on-k8s/current/k8s-orchestrating-elastic-stack-applications.html

Linode: https://www.linode.com/docs/guides/how-to-deploy-the-elastic-stack-on-kubernetes/

Posibility duplicated with https://github.com/tungbq/devops-basic/issues/101 ?

Facing error: https://stackoverflow.com/questions/35921195/curl-52-empty-reply-from-server-timeout-when-querying-elastiscsearch

https://github.com/elastic/helm-charts/issues/1735

https://viblo.asia/s/chinh-phuc-kubernetes-tu-so-0-GJ59jLJaKX2

err kibana:
➜  ~ kubectl logs pre-install-kibana-kibana-njf9h
Creating a new Elasticsearch token for Kibana
Cleaning previous token
DELETE undefined failed:  connect ECONNREFUSED <IP_ADDRESS>:9200
Error: connect ECONNREFUSED <IP_ADDRESS>:9200
    at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1278:16) {
  errno: -111,
  code: 'ECONNREFUSED',
  syscall: 'connect',
  address: '<IP_ADDRESS>',
  port: 9200
}

https://artifacthub.io/packages/helm/elastic/elasticsearch

Stuck at Helm, visit later
New approach: https://www.elastic.co/guide/en/elastic-stack-get-started/current/get-started-stack-docker.html#get-started-docker-tls

[2023-09-10T12:20:35.737+00:00][INFO ][plugins.alerting] Registering resources for context "observability.logs".
[2023-09-10T12:20:35.739+00:00][INFO ][plugins.alerting] Registering resources for context "observability.metrics".
[2023-09-10T12:20:35.892+00:00][INFO ][plugins.alerting] Registering resources for context "observability.apm".
[2023-09-10T12:20:35.895+00:00][INFO ][plugins.assetManager] Asset manager plugin [tech preview] is NOT enabled
[2023-09-10T12:20:36.081+00:00][INFO ][plugins.screenshotting.config] Chromium sandbox provides an additional layer of protection, and is supported for Linux Ubuntu 20.04 OS. Automatically enabling Chromium sandbox.
[2023-09-10T12:20:36.142+00:00][ERROR][elasticsearch-service] Unable to retrieve version information from Elasticsearch nodes. security_exception
        Root causes:
                security_exception: unable to authenticate user [kibana_system] for REST request [/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip]
[2023-09-10T12:20:37.243+00:00][INFO ][plugins.screenshotting.chromium] Browser executable: /usr/share/kibana/node_modules/@kbn/screenshotting-plugin/chromium/headless_shell-linux_x64/headless_shell

https://github.com/deviantony/docker-elk

Done
Kibana:

Elasticsearch:

Follow up - Will deploy via Helm


RWS Handling

what happens when this plugin detects enabled RWS?

All RWS-related code is present in Main.cs. If the user has "Disable RWS" set to true via their main configuration file, then Armoury will search the plugins directory for StopThePed's ini. If found, it then finds the line where enable RWS is set to true, and changes the text to false.

what if one enables RWS when he's already in the game?

In that case Armoury won't be doing anything. The RWS code in Armoury only executes on first plugin load, so if the user decides to run with RWS for a single run it won't be affected until next load, or until the user modifies the config to disable the system.

so RWS loadout will overwrite the armory's one, right?

Correct, RWS runs a check against the players equipment every few ticks, this is not the case with Armoury. Armoury will only modify the players inventory when requested through the menu or hotkey.
If RWS is enabled, it will always take priority over Armoury.

Yes. I make the assumption that anyone who installs Armoury wants it to be on by default, as otherwise RWS will constantly be wiping the selected Armoury loadout.

gotcha, i would at least make it pretty visible in the .ini that it changes another file as not everyone would want to have that

Yes, it is a plaintext file, as are all the loadout files.

gotcha, thanks


Add a version tag

It has been requested that .so would contain version information (and date).
Copied from Sourceforge bugtracker (Ticket 28)
https://sourceforge.net/p/sdl2-amigaos4/tickets/28/

This should be now easier to implement, thanks to the native makefile. It's still a little bit open what numbering should be in version string. SDL uses major.minor.patch. It was proposed earlier than AmigaOS version string could contain "minor.patch" because "major" (2) is assumed.

I second minor.patch, as the major version number won't change for SDL2.

Mmm what's wrong with a "classic" Amiga like version ?
Something like:
SDL 2.0.9 (xx-xxx-2019)
Or in case of SDL1:
SDL 1.2.15 (xx-xxx-2019)

Amiga version strings always had a version.revision numbering scheme:
http://openamiga.org/?function=viewpage&pageid=16


range(a,b,c) not optimized for (at compile time) unknown step value

We optimized range(a) and range(a,b), why not this one?
Migrated from http://trac.cython.org/ticket/546

@kif That seems like a duplicate of https://github.com/cython/cython/issues/532
Cython doesn't support optimizing the range(a, b, c) syntax.

PR #368 was a good start back in 2015 and now has conflicts. Would be great if someone could take up the existing code, rebase it and finish it up.

An easy way to get around this for now is to convert your for loop into a while loop.

The current behaviour also forbids to use range(a, b, c) inside with nogil.


How to switch the color of buttonBarBackgroundColor using XLPagerTabStrip

self.settings.style.buttonBarBackgroundColor don't have mixedBackgroundColor , so i use it
        if NightNight.theme == .normal {
            self.settings.style.buttonBarBackgroundColor = UIColor(CNodeColor.backgroundColor)
            self.settings.style.buttonBarItemBackgroundColor = UIColor(CNodeColor.backgroundColor)
        } else {
            self.settings.style.buttonBarBackgroundColor = UIColor(CNodeColor.backgroundColor_dark)
            self.settings.style.buttonBarItemBackgroundColor = UIColor(CNodeColor.backgroundColor_dark)
        }

when i execute NightNight.theme = .night It has not changed.
In addition
how to use NightNightThemeChangeNotification ? Can you give a demo ?

is this repository maintained anymore? There is also no mixedTintColor for tintColor of UIButton.
Also @tomoya92 you wouldn't be seeing any change because it's not reactive


Add Translate Turkish

There is no file here in the docs for those who want to contribute. How can we contribute translations?

Currently, multilingual support is not available. For future documentation, such as those on https://chromatic.gitbook.io, multilingual support may be considered necessary.
considering future integration with GitHub for GitBook is a possibility.
However, concrete plans have not been finalized yet.
Your contribution towards enabling multilingual support in the future would be greatly appreciated.
Thank you.

Thanks for your feedback.I am closely following and monitoring your project


14 grad gpad dataset

Codecov Report

Merging #15 (17ff31a) into main (d0daaaa) will decrease coverage by 0.05%.
The diff coverage is 85.71%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main      #15      +/-   ##
==========================================
- Coverage   90.14%   90.10%   -0.05%
==========================================
  Files          60       60
  Lines        1887     1889       +2
==========================================
+ Hits         1701     1702       +1
- Misses        186      187       +1

Impacted Files
Coverage Δ

gradgpad/foundations/annotations/annotations.py
69.56% <50.00%> (-0.89%)
:arrow_down:

gradgpad/foundations/metrics/eer.py
100.00% <100.00%> (ø)

...adgpad/foundations/metrics/metrics_demographics.py
100.00% <100.00%> (ø)

gradgpad/foundations/scores/scores.py
91.84% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


[V2] page-previous and page-current issue affecting back navigation

Hello F7 Team,
I have this weird problem that occurs from time to time. Once it happens, the only way to avoid it is by closing the browser and launching it again, whereby the back navigation works well for sometime then it occurs again, and the cycle continues.
Am using this template https://github.com/framework7io/framework7-template-vue-webpack
Opening the app and serving the first page, everything seems Ok as per this screenshot:
You can see that
 is the only current page, which is okay and it should be that way.

Clicking on the About link, or any other link to navigate  to another page, the app is routed to the next page but a problem occurs: that page is loaded as both current and previous

The previous page should be data-name="home" but it's not the case here.

When this happens, the back link in the navbar doesn't work and emits an error as shown below when clicked:

Also note this happens whether pushState is enabled or not.

Can you please provide a JSFiddle to simple example where i can see that issue? Can't replicate it on my side

@nolimits4web
This morning I have discovered there's a problem in my app.vue .
This is after dismantling the project and starting afresh adding one file at a time to see which is causing a bug. When I replace the default app.vue with mine, the bug comes in, when I return the original app.vue, the bug disappears.
This is my app.vue:

<template>

    <f7-statusbar></f7-statusbar>

    <f7-panel left reveal theme-dark>
      <f7-view url="/panel-left/"></f7-view>
    </f7-panel>

    <f7-panel right cover theme-dark>
      <f7-view url="/panel-right/"></f7-view>
    </f7-panel>

    <f7-view id="main-view" url="/" main></f7-view>

    <f7-login-screen id="login-screen">
      <f7-view>
        <f7-page login-screen>
          <f7-login-screen-title>App Login</f7-login-screen-title>
          <f7-list form>
            <f7-list-item>
              <f7-label>Email</f7-label>
              <f7-input name="email" placeholder="Email address" type="email"></f7-input>
            </f7-list-item>
            <f7-list-item>
              <f7-label>Password</f7-label>
              <f7-input name="password" type="password" placeholder="Password"></f7-input>
            </f7-list-item>
          </f7-list>
          <f7-list>
            <f7-block>
              <f7-button title="Sign In" v-on:click="login()" class="button button-fill button-raised color-green">
              Sign In
              </f7-button>

or

              <f7-button @click="$refs.actionsOneGroup.f7Actions.open()" class="open-register-screen button button-fill button-raised">Create an Account</f7-button>
            </f7-block>
          </f7-list>
        </f7-page>
      </f7-view>
    </f7-login-screen>

    <f7-actions ref="actionsOneGroup">
      <f7-block-title>choose how you want to Register</f7-block-title>
      <f7-block>
        <f7-button raised popup-open=".register-popup"
          @click="$refs.actionsOneGroup.f7Actions.close(); register_user_role = 'role_one'">
          Role One
        </f7-button>
        <f7-button raised popup-open=".register-popup"
          @click="$refs.actionsOneGroup.f7Actions.close(); register_user_role = 'role_two'">
          Role Two
        </f7-button>
        <f7-button raised popup-open=".register-popup"
          @click="$refs.actionsOneGroup.f7Actions.close(); register_user_role = 'role_three'">
          Role Four
        </f7-button>
        <f7-button raised popup-open=".register-popup"
          @click="$refs.actionsOneGroup.f7Actions.close(); register_user_role = 'role_four'">
          Role Five
        </f7-button>
      </f7-block>
    </f7-actions>

    <f7-popup tablet-fullscreen class="register-popup">
      <f7-page>
        <f7-navbar title="Register">
          <f7-nav-right>
            <f7-link popup-close>Close</f7-link>
          </f7-nav-right>
        </f7-navbar>
        <f7-block-title>Fill in your details</f7-block-title>
        <f7-list form id="user-register-form">
          <f7-list-item>
            <f7-label>First Name</f7-label>
            <f7-input type="text" name="first_name" placeholder="First Name"></f7-input>
          </f7-list-item>
          <f7-list-item>
            <f7-label>Last Name</f7-label>
            <f7-input type="text" name="last_name" placeholder="Last Name"></f7-input>
          </f7-list-item>
          <f7-list-item>
            <f7-label>E-mail</f7-label>
            <f7-input type="email" name="email" placeholder="E-mail"></f7-input>
          </f7-list-item>
          <f7-list-item>
            <f7-label>Phone</f7-label>
            <f7-input type="tel" name="phone" placeholder="Phone"></f7-input>
          </f7-list-item>
          <f7-list-item>
            <f7-label>Password</f7-label>
            <f7-input type="password" name="password" placeholder="Password"></f7-input>
          </f7-list-item>
          <f7-list-item>
            <f7-label>Repeat Password</f7-label>
            <f7-input type="password" name="password2" placeholder="Repeat Password"></f7-input>
            <input type="hidden" name="role" :value="register_user_role" />
          </f7-list-item>
        </f7-list>
        <f7-block>
          <f7-button @click="register_user()" class="button button-fill button-raised color-green">
              Register Me
          </f7-button>
        </f7-block>
      </f7-page>
    </f7-popup>

</template>

Further debugging I have discovered the issue is here:
UserService.afterLogin(user_role);
commenting out the line solves it, so I will have to rework on the afterLogin function
checkLogin: function () {
      var app = this.$f7;
      var $$ = this.Dom7;
      var loginStatus = true
      if (!loginStatus){
        console.log('login status is false')
        // show login screen
        app.loginScreen.open('#login-screen');
      }
      else {
        //app.loginScreen.open('#login-screen');
        console.log('login status is true')

        var user_role = UserService.currentUser().role;
        UserService.afterLogin(user_role); // this is causing the problems
      }
    },

afterLogin: function (user_role){
    var app = new Framework7();
    var view = app.views.get('#main-view');
    console.log(user_role);
    //console.log(view);

    if (user_role == 'role_1'){
      view.router.navigate('/sp-dashboard/');
    }
    else if (user_role == 'role_2'){
      view.router.navigate({url: '/me-dashboard/'})
    }
    else if (user_role == 'role_3'){
      view.router.navigate({url: '/tr-dashboard/'})
    }
    else if (user_role == 'role_4'){
      view.router.navigate({url: '/'})
    }

  },

Finally found where the issue is. In the afterLogin function, I am creating a new Framework7 app which doesn't have the former  initialized app's params and routes and state.
Since I couldn't find a way to inject the current app instance into the UserService.js file, I solved the issue by passing the app instance as an argument of afterLogin function. so it becomes:
afterLogin: function (app, user_role){
    console.log(app); // this is now the current app instance
    var view = app.views.get('#main-view');
    console.log(user_role);

    if (user_role == 'role_one'){
      view.router.navigate('/sp-dashboard/');
    }
    else if (user_role == 'role_two'){
      view.router.navigate({url: '/me-dashboard/'})
    }
    else if (user_role == 'role_three'){
      view.router.navigate({url: '/tr-dashboard/'})
    }
    else if (user_role == 'role_four'){
      view.router.navigate({url: '/'})
    }

  },


Update README.md labels for each topic

Reviewed changes, no issues or conflicts found.
Merging PR into master

Cheers @cocallaw!