CMake cannot find FFTW package

FFTW was successfully installed with vcpkg but including the package in CMakeLists.txt with
find_package(fftw3 REQUIRED)
returns this error message:
C:\server\build>cmake .. -DCMAKE_TOOLCHAIN_FILE=d:\vcpkg\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x86-windows-static
-- Selecting Windows SDK version 10.0.16299.0 to target Windows 6.1.7601.
-- Boost version: 1.67.0
CMake Error at D:/vcpkg/scripts/buildsystems/vcpkg.cmake:247 (_find_package):
  By not providing "Findfftw3.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "fftw3", but
  CMake did not find one.

  Could not find a package configuration file provided by "fftw3" with any of
  the following names:

    fftw3Config.cmake
    fftw3-config.cmake

  Add the installation prefix of "fftw3" to CMAKE_PREFIX_PATH or set
  "fftw3_DIR" to a directory containing one of the above files.  If "fftw3"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:25 (find_package)

-- Configuring incomplete, errors occurred!
See also "C:/server/build/CMakeFiles/CMakeOutput.log".

Note that CMake can find other packages. This is the list of installed packages:
d:\vcpkg\vcpkg.exe list
...
boost:x86-windows                                  1.67.0           Peer-reviewed portable C++ source libraries
bzip2:x86-windows                                  1.0.6-2          High-quality data compressor.
bzip2:x86-windows-static                           1.0.6-2          High-quality data compressor.
fftw3:x86-windows                                  3.3.7-2          FFTW is a C subroutine library for computing the...
fftw3:x86-windows-static                           3.3.7-2          FFTW is a C subroutine library for computing the...
liblzma:x86-windows                                5.2.3-2          Compression library with an API similar to that ...
liblzma:x86-windows-static                         5.2.3-2          Compression library with an API similar to that ...
libpng:x86-windows                                 1.6.34-3         libpng is a library implementing an interface fo...
libpng:x86-windows-static                          1.6.34-3         libpng is a library implementing an interface fo...
openssl:x86-windows                                1.0.2o-2         OpenSSL is an open source project that provides ...
python3:x86-windows                                3.6.4-1          The Python programming language as an embeddable...
zlib:x86-windows                                   1.2.11-3         A compression library
zlib:x86-windows-static                            1.2.11-3         A compression library

I had a similar problem but I think the problem is that the configs are in additional folders (fftw3,fftw3f and fftw3l) within <vcpkgdir>\installed\x64-windows\share\fftw3 . Try moving the content of the folders down into the basefolder.
(Is cmake case sensitive for packages and their config files? Then this could also be an issue. The config is called FFTW3Config.cmake)

@Neumann-A : Moving the sub-directories helped but did not fully solve the problem:
The imported target "FFTW3::fftw3f" references the file
"<vcpkgdir>/installed/debug/lib/fftw3f.lib"
but this file does not exist.  Possible reasons include:
(...)

I believe, this is a problem with the cmake variable ${_IMPORT_PREFIX}, as the file is located at "/installed/x86-windows/debug/lib/fftw3f.lib".


[BUG] FileHandle not properly released

Information

Apktool Version (apktool -version) - 2.5.0
Operating System (Mac, Linux, Windows) - Windows, Linux
APK From? (Playstore, ROM, Other) - https://apkpure.com/rt-360/com.rt.RT360

Stacktrace/Logcat
INFO: Building apk file...
Dez. 11, 2020 11:48:00 VORM. brut.androlib.Androlib buildUnknownFiles
INFO: Copying unknown files/dir...
Dez. 11, 2020 11:48:02 VORM. brut.androlib.Androlib build
INFO: Built apk...
Exception in thread "main" org.apache.commons.io.IOExceptionList: 1 exceptions: [java.io.IOException: Unable to delete file: <decoded apk path>\unknown]
	at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:345)
	at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1206)
	at <my-library code>
Caused by: java.io.IOException: Unable to delete file: <decoded apk path>\unknown
	at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:1425)
	at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:338)
	... 2 more
Caused by: java.nio.file.FileSystemException: <decoded apk path>\unknown\publicsuffixes.gz: Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird.

	at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:92)
	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
	at java.base/sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:270)
	at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110)
	at java.base/java.nio.file.Files.deleteIfExists(Files.java:1180)
	at org.apache.commons.io.file.DeletingPathVisitor.visitFile(DeletingPathVisitor.java:142)
	at org.apache.commons.io.file.DeletingPathVisitor.visitFile(DeletingPathVisitor.java:36)
	at java.base/java.nio.file.Files.walkFileTree(Files.java:2724)
	at java.base/java.nio.file.Files.walkFileTree(Files.java:2796)
	at org.apache.commons.io.file.PathUtils.visitFileTree(PathUtils.java:687)
	at org.apache.commons.io.file.PathUtils.deleteDirectory(PathUtils.java:328)
	at org.apache.commons.io.file.PathUtils.delete(PathUtils.java:303)
	at org.apache.commons.io.file.PathUtils.delete(PathUtils.java:280)
	at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:1423)
	... 3 more

Steps to Reproduce
I am using apktool as a 3rd party library within my code. I have updated apktool to use commons-io version 2.8.0. It remains
the same error, just the stack trace is more descriptive. I basically call apktool b and then try to delete the folder obtained
from calling apktool d. The code looks as follows:
Utility.buildAPK(decodedAPKPath, outputAPKFile);
FileUtils.deleteDirectory(new File(decodedAPKPath));

where the build APK functionality looks as follows:
new Androlib(apkOptions).build(new ExtFile(new File(decodedAPKPath)), outputFile);
As you can observe from above logs, FileUtils.deleteDirectory() fails because another process has still  a handle/lock
on some file/folder within the folder I would like to delete. In particular, it is some file within the 'unknown' folder.
I assume apktool b is not properly releasing resources and thus removal fails. Maybe buildUnknownFiles() contains
the bug, since it touches the 'unknown' folder? This failure is not appearing with all APKs and is not Windows-specific.
APK
If this APK can be freely shared, please upload/attach a link to it.
https://apkpure.com/rt-360/com.rt.RT360
Thanks in advance!

You can try out whether apktool is the culprit using the java agent from Kohsuke. It is sort of an "add on" for the JVM and shows stacktraces of currently opened files. You can check after running apktool.
https://file-leak-detector.kohsuke.org/
java -javaagent:path/to/file-leak-detector.jar=http=19999

You can access the stack traces at http://<IP_ADDRESS>:19999

You can try out whether apktool is the culprit using the java agent from Kohsuke. It is sort of an "add on" for the JVM and shows stacktraces of currently opened files. You can check after running apktool.
https://file-leak-detector.kohsuke.org/
java -javaagent:path/to/file-leak-detector.jar=http=19999

You can access the stack traces at http://<IP_ADDRESS>:19999

@MarcMil: I tried to use it, both with my application and apktool directly. None showed any stack trace nor any open file descriptor, but the issue still remains, i.e. above mentioned stack trace appears on the console.

Hmm... Maybe some other software has the file open? A virus scanner perhaps?

Good idea, but that's not the problem. I turned off the virus scanner and re-ran it. I still suspect it is the apktool, being quite sure a lock on the unknown folder is not properly released. The folder is generated by decoding the APK, so I don't see any other process involved.

I took a look and everything looks closed to me, I even ran the tool above to follow traces of opened files.
➜  2473 java -javaagent:file-leak-detector-1.13-jar-with-dependencies.jar -jar apktool.jar d RT\ 360_v3.1.6_apkpure.com.apk -f
File leak detector installed
I: Using Apktool 2.5.1-45c91e-SNAPSHOT on RT 360_v3.1.6_apkpure.com.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: /home/ibotpeaches/.local/share/apktool/framework/1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Baksmaling classes.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
➜  2473 java -javaagent:file-leak-detector-1.13-jar-with-dependencies.jar -jar apktool.jar b RT\ 360_v3.1.6_apkpure.com
File leak detector installed
I: Using Apktool 2.5.1-45c91e-SNAPSHOT
I: Checking whether sources has changed...
I: Smaling smali folder into classes.dex...
I: Checking whether resources has changed...
I: Building resources...
I: Copying libs... (/lib)
I: Building apk file...
I: Copying unknown files/dir...
I: Built apk...

Sorry, couldn't find an issue and couldn't replicate.  Here my latest try:
    public void decodeAPK() {

        LOGGER.debug("Creating first tmp dir!");
        File tmp = new File("tmp");
        tmp.mkdir();

        try {
            LOGGER.debug("Deleting first tmp dir!");
            FileUtils.forceDelete(tmp);
        } catch (IOException e) {
            LOGGER.debug("Deleting first tmp dir failed!");
            throw new UncheckedIOException(e);
        }

        try {
            ApkDecoder decoder = new ApkDecoder(apkFile);
            decoder.setFrameworkDir("tmp");
            decodingOutputPath = new File(apkFile.getParent(), DEFAULT_DECODING_DIR);
            decoder.setOutDir(decodingOutputPath);
            decoder.setDecodeSources(ApkDecoder.DECODE_SOURCES_NONE);
            decoder.setForceDelete(true);
            decoder.decode();
        } catch (BrutException | IOException e) {
            LOGGER.error("Failed to decode APK file!");
        } finally {
            try {
                LOGGER.debug("Deleting second tmp dir!");
                FileUtils.forceDelete(new File("tmp"));
            } catch (IOException e) {
                LOGGER.debug("Deleting second tmp dir failed!");
                throw new UncheckedIOException(e);
            }
        }
    }

I had to use a different framework directory, because the default location is not available. Afterwards, I wanted to clean up the tmp directory. However, the clean up operation failed. To show that this is specific to apktool, I created another tmp directory prior to that. Here the clean up works as the following logs show:
21:01:31.879 [main] DEBUG de.uni_passau.fim.auermich.android_graphs.core.app.APK - Creating first tmp dir!
21:01:31.879 [main] DEBUG de.uni_passau.fim.auermich.android_graphs.core.app.APK - Deleting first tmp dir!
21:01:37.834 [main] DEBUG de.uni_passau.fim.auermich.android_graphs.core.app.APK - Deleting second tmp dir!
21:01:37.836 [main] DEBUG de.uni_passau.fim.auermich.android_graphs.core.app.APK - Deleting second tmp dir failed!
Exception in thread "main" java.io.UncheckedIOException: java.io.IOException: Cannot delete file: tmp
	at de.uni_passau.fim.auermich.android_graphs.core.app.APK.decodeAPK(APK.java:140)
	at de.uni_passau.fim.auermich.android_graphs.core.graphs.cfg.InterCFG.constructCFG(InterCFG.java:94)
	at de.uni_passau.fim.auermich.android_graphs.core.graphs.cfg.InterCFG.<init>(InterCFG.java:88)
	at de.uni_passau.fim.auermich.android_graphs.core.graphs.BaseGraphBuilder.build(BaseGraphBuilder.java:83)
	at de.uni_passau.fim.auermich.android_graphs.cli.Main.run(Main.java:221)
	at de.uni_passau.fim.auermich.android_graphs.cli.Main.main(Main.java:115)
Caused by: java.io.IOException: Cannot delete file: tmp
	at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:1344)
Caused by: java.io.IOException: Cannot delete file: tmp

	at de.uni_passau.fim.auermich.android_graphs.core.app.APK.decodeAPK(APK.java:137)
	... 5 more
Caused by: java.nio.file.FileSystemException: tmp\1.apk: Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird
Caused by: java.nio.file.FileSystemException: tmp\1.apk: Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird

	at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:92)
	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
	at java.base/sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:274)
	at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110)
	at java.base/java.nio.file.Files.deleteIfExists(Files.java:1185)
	at org.apache.commons.io.file.DeletingPathVisitor.visitFile(DeletingPathVisitor.java:161)
	at org.apache.commons.io.file.DeletingPathVisitor.visitFile(DeletingPathVisitor.java:37)
	at java.base/java.nio.file.Files.walkFileTree(Files.java:2804)
	at java.base/java.nio.file.Files.walkFileTree(Files.java:2876)
	at org.apache.commons.io.file.PathUtils.visitFileTree(PathUtils.java:971)
	at org.apache.commons.io.file.PathUtils.deleteDirectory(PathUtils.java:434)
	at org.apache.commons.io.file.PathUtils.delete(PathUtils.java:391)
	at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:1341)

The german log just says that another process has a lock on / is still accessing the file. The final call to decoder.decode(); must be responsible for this. One further note here. Constructing the example this way, let the bug show up in any case, while in the previous post the exception appeared now and then, and depending on the APK to be decoded.


Clone related objects when clear() is called on reverse FK fields.  F…

…ixes #97

Cool, thanks! :)


fix schedule_settings

We refactored an overshadowing variable, but we didn't fix
all references to that variable.
introduced in 93d5f5db5 #18660
This bug has not been reported

@Fryguy can we backport this to ivanchuk?

ivanchuk backport details:
commit aee28830332495bc4a55d9efede76c0025f14758 (HEAD -> ivanchuk, upstream/ivanchuk)
Author: Jason Frey<EMAIL_ADDRESS>Date:   Fri Oct 11 11:16:56 2019 -0400

    Merge pull request #19386 from kbrock/schedule_ems_refresh

    fix schedule_settings

    (cherry picked from commit bc374f4eb6b2a1c04539baa82a2210b7dc8eb485)

cc @simaishi @dmetzger57 on the backport


Ignore Nulls - Postgres

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the issue
It seems the Ignore Nulls feature has been remedied in this update:
https://github.com/fivetran/dbt_intercom/pull/25/files
However, it has not been propagated across all scripts in the package. This is causing my transformation to fail in the intercom__conversation_enhanced.sql script
Relevant error log or model output
Database Error in model intercom__conversation_enhanced (models/intercom__conversation_enhanced.sql)
14:57:31    syntax error at or near "ignore"
14:57:31    LINE 120:     first_value(author_id ignore nulls) over (partition by c...
14:57:31                                        ^
14:57:31    compiled Code at target/run/intercom/models/intercom__conversation_enhanced.sql

Expected behavior
Error in the intercom__conversation_enhanced.sql script is preventing the table intercom.intercom__conversation_enhanced table from being created. This is also preventing other tables from being created.
dbt Project configurations
name: 'Intercom_transform'
version: '1.0.0'
config-version: 2

# This setting configures which "profile" dbt uses for this project.
profile: 'Intercom_transform'

# These configurations specify where dbt should look for different types of files.
# The `model-paths` config, for example, states that models in this project can be
# found in the "models/" directory. You probably won't need to change these!
model-paths: ["models"]
analysis-paths: ["analyses"]
test-paths: ["tests"]
seed-paths: ["seeds"]
macro-paths: ["macros"]
snapshot-paths: ["snapshots"]

target-path: "target"  # directory which will store compiled SQL files
clean-targets:         # directories to be removed by `dbt clean`
  - "target"
  - "dbt_packages"

# Configuring models
# Full documentation: https://docs.getdbt.com/docs/configuring-models

# In this example config, we tell dbt to build all models in the example/ directory
# as tables. These settings can be overridden in the individual model files
# using the `{{ config(...) }}` macro.
models:
  Intercom_transform:
    # Config indicated by + and applies to all files under models/example/
    example:
      +materialized: view

Package versions
packages:

package: fivetran/intercom
version: [">=0.4.0", "<0.5.0"]

What database are you using dbt with?
postgres
dbt Version
1.3.0
Additional Context
No response
Are you willing to open a PR to help address this issue?

[ ] Yes.
[X] Yes, but I will need assistance and will schedule time during our office hours for guidance
[ ] No.

Hi @adrianruhdental thanks for raising this issue and sorry you are experiencing the issue on your end.
You pointed out that in PR #25 we addressed the ignore nulls issue for postgres compatibility with the package. While this is the case, this feature is only available on the most recent v0.5.0 release of the package. I noticed from your issue description that you are using the [">=0.4.0", "<0.5.0"] range. However, you should use the following range instead to capture the postgres updates:
packages:
  - package: fivetran/intercom
    version: [">=0.5.0", "<0.6.0"]

I noticed our latest README instructs you to install [">=0.4.0", "<0.5.0"]. I have just opened Issue #34 for our team to address this.
Let me know if upgrading your version does the trick for you!

That seems to have done it! Thank you
Sent from Outlook for iOShttps://aka.ms/o0ukef

From: Joe Markiewicz @.>
Sent: Monday, November 14, 2022 3:32:33 PM
To: fivetran/dbt_intercom @.>
Cc: adrianruhdental @.>; Mention @.>
Subject: Re: [fivetran/dbt_intercom] Ignore Nulls - Postgres (Issue #33)
Hi @adrianruhdentalhttps://github.com/adrianruhdental thanks for raising this issue and sorry you are experiencing the issue on your end.
You pointed out that in PR #25https://github.com/fivetran/dbt_intercom/pull/25 we addressed the ignore nulls issue for postgres compatibility with the package. While this is the case, this feature is only available on the most recent v0.5.0https://github.com/fivetran/dbt_intercom/releases/tag/v0.5.0 release of the package. I noticed from your issue description that you are using the [">=0.4.0", "<0.5.0"] range. However, you should use the following range instead to capture the postgres updates:
packages:

package: fivetran/intercom
version: [">=0.5.0", "<0.6.0"]

I noticed our latest README instructs you to install [">=0.4.0", "<0.5.0"]. I have just opened Issue #34https://github.com/fivetran/dbt_intercom/issues/34 for our team to address this.
Let me know if upgrading your version does the trick for you!
—
Reply to this email directly, view it on GitHubhttps://github.com/fivetran/dbt_intercom/issues/33#issuecomment-1313940290, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A2SVKGYHSM767T65OJHFDBDWIJLRDANCNFSM6AAAAAAR4XAKIA.
You are receiving this because you were mentioned.Message ID: @.***>

Brilliant! I will close this issue and work with my team to address the documentation issue highlighted in the new issue linked above. 😄


arch: support aws graviton

AWS gravition arch and aws-ec2 on-demand self-hosted runners

Doesn't this fix https://github.com/devitocodes/devito/issues/1106


Major change - connect through proxy

Selects a random proxy from an object array, and uses that proxy to connect to agar with all bots. This way your IP won't be banned by Agar.

Nice


AC 3 - charge information history - ignore dummy updates

We are only interested in actual changes, not owerwrites of identical data

If temporal sql tables is choosen as historical data solution, all dummy updates is automatically ignored, only real changes are saved to the temporal history table


App in background crash when I open other app on Android 9

If I use excludeFromTaskList(), put my app in background mode and I open other app, my app closes

Facing same issue. Did you find any solution?

Not yet...


Error When Loading Fake User Agent

Whenever I load fake-useragent I get the following message.
Error occurred during loading data. Trying to use cache server https://fake-useragent.herokuapp.com/browsers/0.1.11 Traceback (most recent call last):   File "/home/xyz/.local/lib/python3.6/site-packages/fake_useragent/utils.py", line 154, in load     for item in get_browsers(verify_ssl=verify_ssl):   File "/home/xyz/.local/lib/python3.6/site-packages/fake_useragent/utils.py", line 99, in get_browsers     html = html.split('
')[1] IndexError: list index out of range
It looks similar to but different from a message another user was getting last year #100 .

Chiming in with the same issue.  Has only creeped up in the last few days

This seems to fix the issue:
https://github.com/hellysmile/fake-useragent/pull/110

I followed the instruction from here link. You just need to changed the line 88 in fake_useragent/utils.py  :
    html = html.split('
')[1]

to:
    html = html.split('
')[1]

Just started experiencing this as well. +1 Please merge #121 :)

Fixed upstream: https://github.com/fake-useragent/fake-useragent


grabCurrentUrl vs grabFromCurrentUrl

In WebDriver it's grabFromCurrentUrl
In this module it's grabCurrentUrl
Is it expected ?

same for executeScript vs executeJS

same for refreshPage vs reloadPage

same for waitForFunction? vs waitForJS
same for waitForVisible vs waitForElementVisible

seeCurrentUrlMatches doesn't exist.

same for waitForClickable vs waitForElementClickable

Thanks, adding aliases. Somehow this was not in original test suite

This one should be fixed by last commit in main branch
Maybe tests also needed to be added

Fixed and added tests https://github.com/Codeception/module-playwright/actions/runs/10984757588


Move cassowary into package:flutter

Cassowary doesn't have any additional dependencies and this simplifies things.
Fixes #2442

@Hixie @ianloic

@HansMuller

LGTM I'm going to land this one. Team effort!


twoway dependency is dead

The twoway crate is obsolete. I suggest replacing it with memchr. The twoway crate also breaks Cargo's -Z minimal-versions option, because it can indirectly cause libc 0.1 to be pulled in.

@abonander is this crate still maintained? Apart the fact twoway is deprecated this crate uses old version causing cargo deny to bark at me in red if I want to use pact_consumer.
FYI: @ferdonline

Deprecation was also announced in RustSec's advisory DB yesterday: https://rustsec.org/advisories/RUSTSEC-2021-0146

I'm afraid @abonander abandoned this project and soon it would get its own advisory.

https://github.com/rustsec/advisory-db/issues/1438

O wow... Worse than I though. Do we have alternatives?


Raspberry Pi

Have you tried hypatia on a Raspberry Pi?, I was planning to give it ago over the weekend

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/23058401-raspberry-pi?utm_campaign=plugin&utm_content=tracker%2F7646105&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F7646105&utm_medium=issues&utm_source=github).

No I haven't. I'd love it if you gave that a go and let me know how it went! It'd be super keen if you included any special instructions or notes about software versions.
Thanks for showing interest in the project!

Hi, it has been a while but I think I have got a working version on the Raspberry Pi.  I was using SSH so I need to wait until home to check the full graphic version, I will keep you updated.

Closed, because you answered your own question! Would love to see your notes on installing on NetBSD. Note that the Installation Instructions, like the rest of the wiki, are public to editing. Thank you for your time and interest!


older ver. server+viaversion+newer client: Connected but map not loading

Map not loading and cant write in chat too.
1.8 server FlamePaper
tested on 1.19.2 client and 1.8.9 client
https://mclo.gs/k6lx4gG

Do you have any plugins on the server?

spark, protocollib, viaversion

Does it work when you use normal Paper?

the same.
server 1.18.2 puprur with viaversion
using client 1.19.2
https://mclo.gs/GYfoicd

What happens when you use Velocity or Bungeecord instead of Gate?

What happens when you use Velocity or Bungeecord instead of Gate?

its working with velocity. on 1.8 server and 1.18 server

I'm on it to fix it

Fixed by 5d2c0ce153cbf886681526a27944244dc2ce107d
go get go.minekube.com/gate@latest


Add RSpec/VerifiedDoubleReference cop

Enforces consistent style for verified double class references. The preferred style is configurable. I left the Enabled as false because I figure users may want to opt-in to using the cop.
constant is the default style since code editors should provide support for:

displaying warnings for missing or invalid references
viewing the definition of the doubled class

Examples:
EnforcedStyle: constant
# bad
let(:foo) do
  instance_double('ClassName', method_name: 'returned_value')
end

# good
let(:foo) do
  instance_double(ClassName, method_name: 'returned_value')
end

EnforcedStyle: string
# bad
let(:foo) do
  instance_double(ClassName, method_name: 'returned_value')
end

# good
let(:foo) do
  instance_double('ClassName', method_name: 'returned_value')
end

[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Updated documentation.
[x] Added an entry to the CHANGELOG.md if the new code introduces user-observable changes.
[x] The build (bundle exec rake) passes (be sure to run this locally, since it may produce updated documentation that you will need to commit).

If you have created a new cop:

[x] Added the new cop to config/default.yml.
[x] The cop is configured as Enabled: pending in config/default.yml.
[x] The cop documents examples of good and bad code.
[x] The tests assert both that bad code is reported and that good code is not reported.
[x] Set VersionAdded in default/config.yml to the next minor version.

This looks good. Thank you for the contribution ❤
By the way, I think that adding autocorrection should be a relatively minor change. Would you like to give it a go?

@bquorning added autocorrect. Let me know if you have feedback

@pirj rebased and made the cosmetic suggestions

Almost there. Could you run bundle exec rake and fix the issue? I think it’s something about a newline in the config file.

@bquorning done. FYI, after rebasing from master today, these changes are undone when generating documentation:
diff --git a/docs/modules/ROOT/pages/cops_rspec.adoc b/docs/modules/ROOT/pages/cops_rspec.adoc
index 04d969f..9eec09f 100644
--- a/docs/modules/ROOT/pages/cops_rspec.adoc
+++ b/docs/modules/ROOT/pages/cops_rspec.adoc
@@ -349,7 +349,7 @@ end
 | Name | Default value | Configurable values

 | Exclude
-| `spec/spec_helper.rb`, `spec/rails_helper.rb`, `+spec/support/**/*.rb+`
+| `spec/spec_helper.rb`, `spec/rails_helper.rb`, `spec/support/**/*.rb`
 | Array
 |===

@@ -1431,7 +1431,7 @@ expect(name).to eq("John")
 | Name | Default value | Configurable values

 | Exclude
-| `+spec/routing/**/*+`
+| `spec/routing/**/*`
 | Array
 |===

diff --git a/docs/modules/ROOT/pages/cops_rspec_factorybot.adoc b/docs/modules/ROOT/pages/cops_rspec_factorybot.adoc
index c8175da..57401bf 100644
--- a/docs/modules/ROOT/pages/cops_rspec_factorybot.adoc
+++ b/docs/modules/ROOT/pages/cops_rspec_factorybot.adoc
@@ -43,7 +43,7 @@ count { 1 }
 | Name | Default value | Configurable values

 | Include
-| `spec/factories.rb`, `+spec/factories/**/*.rb+`, `+features/support/factories/**/*.rb+`
+| `spec/factories.rb`, `spec/factories/**/*.rb`, `features/support/factories/**/*.rb`
 | Array
 |===

@@ -100,7 +100,7 @@ create_list :user, 3
 | Name | Default value | Configurable values

 | Include
-| `+**/*_spec.rb+`, `+**/spec/**/*+`, `spec/factories.rb`, `+spec/factories/**/*.rb+`, `+features/support/factories/**/*.rb+`
+| `+**/*_spec.rb+`, `+**/spec/**/*+`, `spec/factories.rb`, `spec/factories/**/*.rb`, `features/support/factories/**/*.rb`
 | Array

 | EnforcedStyle
@@ -150,7 +150,7 @@ end
 | Name | Default value | Configurable values

 | Include
-| `spec/factories.rb`, `+spec/factories/**/*.rb+`, `+features/support/factories/**/*.rb+`
+| `spec/factories.rb`, `spec/factories/**/*.rb`, `features/support/factories/**/*.rb`
 | Array
 |===

Possibly related to https://github.com/rubocop/rubocop-rspec/commit/1f1a8a9ddbc8c5a1cbf80dbad69d3e6ad18091c2?
This blocks bundle exec rake from completing naturally

Probably you are not using RuboCop >= v1.26.0 locally? CI does, and passes 🎉
@pirj, a final review?

@pirj back to you for review

@t3h2mas Thank you!
I dared to make a couple of final cosmetic touches.

@bquorning For some reason, I get dirty files after running rake generate_cops_documentation locally, even after bundle update:

But CI is silent about any discrepancies. Can you reproduce this?

What does bundle exec rubocop -V return @pirj. Maybe you have a Gemfile.local preventing you from using RuboCop >= v1.26.0?

@bquorning Ah, exactly. It was pointed to a local stale rubocop repo. All good now, thank you!

This cop breaks a stubbing pattern:
stub_const('Sentry', instance_double('Sentry'))

The following doesn't work anymore in environments where Sentry is not available.
stub_const('Sentry', instance_double(Sentry))

@schmijos I don't quite understand what you are trying to achieve with:
stub_const('Sentry', instance_double('Sentry'))

Can you please elaborate?
Just by looking at it, and with the information you've provided, it seems that you are attempting to assign a regular, non-verified double to a class constant. Is that what you want, really? How do you use Sentry in your code afterwards? Do you stub its methods?
I see two problems here. The first is that even if Sentry was available, after this statement it wouldn't be pointing to a class Sentry, but rather an instance of that class. So you would better be off with a class_double('Sentry').
And if your intention is to disregard all calls to Sentry made inside the code under test, you might want to use a "null double":
stub_const('Sentry', double('Sentry').as_null_object)

In case if RSpec/VerifiedDoubles complains that you should use instance_double instead of double('Sentry').as_null_object, it makes sense to either:

Fix RSpec/VerifiedDoubles to ignore double chained with as_null_object
Use a symbol as the class name double(:Sentry).as_null_object and set IgnoreSymbolicNames to true
Use a nameless double double.as_null_object as the cop ignores them by default


reset stdout redirection for exception dumps

Reset stdout to the default direct-to-UART handler on exceptions and
abort()s. Users may have used set_write_stdout() to redirect output
elsewhere, which likely isn't going to work in the exception handler.

Thanks for you comments! That makes sense.
I've studied the code a bit more. I found that set_user_exception_handler() lets me do what I want already. I'll close this.


Create code of conduct document

Create a "Code of conduct" document for the repository.

Closing this and moving it over to the https://github.com/lexicon-community/governance repository.


Image Generated from Viewport (in the form of a ImageTexture) won't render in SpatialMaterial when set as the albedo_texture

Godot version
3.5.stable mono
System information
Windows 11, Nvidia RTX 3050
Issue description
When saving an ImageTexture that is generated from the image data from a viewport capture, that image will not render in a spatial material when set as that material's albedo_texture.
Steps to reproduce

Capture the viewport (has to be set to 2D)
Grab the image data and create an ImageTexture
Set the ImageTexture as the albedo_texture in the spatial material

The sample project does exactly that - and saves the results of each step in a folder in the project directory.
Minimal reproduction project
Sample Project.zip

In your MRP you are never calling _on_tree_created() so the Viewport is never captured. It works if you move self.capture() into _ready().

I am, it's set externally as a signal in the editor. Does that not show up in the MRP?

If you add a print statement to _on_tree_created() you will see that it is never called

Ah alright, sorry about that! I managed to get it to work on my end.
Thanks a bunch.

Leaving this here for anyone who needs it:
I think it might have been an error with the cache or something, because it wasn't working beforehand (I initially had the logic in the _on_tree_created() method run in the _ready() method, which caused me to try that.
Closing and reopening the project fixed it.


Can you provide the pretrained models?

Thanks for the excellent work!
Do you have plan to provide the training code on RICO datasets and related pre-trained models?

Trying to replicate these results. Are you able to share pre-trained weights?


A lot of lag when using the program

Whenever I'm using the program, everything is very laggy and it takes a long time to respond even when it's the only program that's open.

In order to figure out the cause of the issue, we'll need additional details. What are your computer specs and screen resolution? How high is your CPU usage in Task Manager while using the program? Are your graphics drivers up to date? And finally, are you doing any performance-intensive tasks, like playing many notes at the same time?
If your computer was made in the last 5 years, there's a good chance NBS will be able to play at least a basic song in it without bogging down. If anything, I'd suggest you to lower your screen resolution/decrease the size of the program's window, as that will decrease the number of things it has to draw on the screen. If you have a dedicated graphics card, also make sure to set NBS to use it (e.g. for NVIDIA GPUs you do that on the NVIDIA Control Panel).

I have a pretty mid-end PC with a 4 core AMD A8-9600 processor with a CPU usage of about 90% while using the program. My motherboard is a MSI B350M-PRO VDH with 8GB of RAM installed. Graphics card is a NVIDIA GT 730 with 4GB of Video RAM and a slightly outdated driver. And finally, No. Even with only a few notes in (sometimes none at all,) the program is still very laggy.
I got this PC on September last year. Also, thanks for the tips, I'll try using them later and see if they make a difference.

Hmm yeah, your specs are definitely not the problem (they're better than the laptop I do most of the development on, and it runs just fine there). The 90% CPU usage is a big hint though. Does all of it come from NBS? Perhaps there's something running in the background that's stealing resources and causing it to lag.

I think the cause for the high CPU usage is my antivirus software, Steam, and Twitch running in the background.


Get OLLAMA models to work in Windows (both native and WSL).

Summary
Fix for https://github.com/danielmiessler/fabric/issues/314 - Ollama now functions perfectly on Windows (both natively and in the WSL environment).
Files Changed

installer/client/cli/utils.py: This file contains utility functions and classes for the Fabric CLI.

Code Changes

Removed the unused re import and added the youtube_transcript_api import (needed in the Transcribe class) :
- import re
import shutil
+ from youtube_transcript_api import YouTubeTranscriptApi

Removed host parameter from the AsyncClient().chat() calls in the localChat() and localStream() methods of the Standalone class. This was causing failures when using --remoteOllamaServer  since Ollama's AsyncClient().chat() does not take a host parameter.
- response = await AsyncClient(host=host).chat(model=self.model, messages=messages, host=host)
+ response = await AsyncClient(host=host).chat(model=self.model, messages=messages)

- async for part in await AsyncClient(host=host).chat(model=self.model, messages=messages, stream=True, host=host):
+ async for part in await AsyncClient(host=host).chat(model=self.model, messages=messages, stream=True):

Added support for specifying a remote Ollama server when listing available models in the listModels() method of the Standalone class:
+ if self.args.remoteOllamaServer:
+     client = ollama.Client(host=self.args.remoteOllamaServer)
+     default_modelollamaList = client.list()['models']
+ else:
+     default_modelollamaList = ollama.list()['models']

Reason for Changes

The re import was removed because it was not being used in the code, and the youtube_transcript_api import was added because it is being used later in the file.

The host parameter was removed from the AsyncClient().chat() calls. Now these calls work as intended.

The changes to the listModels() method fixes the code when trying to list models.

Impact of Changes
Fixed remote Ollama server usage problems and bugs. Specifically, in WSL environment on Windows, where the Ollama server is running on the native host, it makes it possible to access the model list and to use Ollama local models.
Test Plan
To test these changes, the following steps were performed:

Verified that the Fabric CLI still functions correctly after removing the unused re import and adding the youtube_transcript_api import.

Tested the localChat() and localStream() methods with and without specifying a host to ensure that they work as expected.

Tested the listModels() method with and without specifying a remote Ollama server to ensure that it retrieves the correct list of available models. This was done both in native Windows and WSL.

@xssdoctor how does this look? Will this break anything?

@danielmiessler I tested it on my Linux Ubuntu and MacOS laptop too.

I just merged the latest commits and re-tested. All is working correctly in Windows (native), Windows WSL, Linux, and MacOS. @danielmiessler @xssdoctor

@xssdoctor how does this look? Will this break anything?

@xssdoctor @danielmiessler I've tested this in Linux, MacOS, and Windows (native), and Windows WSL.

Hi @xssdoctor @danielmiessler - Updated the branch again with the latest from upstream. All my testing still works. This is a safe change that has to happen to make OLLAMA local models work on Windows.

done

Still same error. I've done a clean install with latest commits, both in WSL and native windows.
curl http://localhost:11434 Ollama is running
 fabric --remoteOllamaServer http://localhost:11434 --listmodels Error: Client error '401 Unauthorized' for url 'https://api.openai.com/v1/models' For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401
Is there any config file where I need to add something ?

Hey friend @ksylvan,
I am writing to inform you about an issue I am currently experiencing after following your instructions from pull #315.
Upon completing the steps you provided, I checked if everything was set as it should be and found that all the settings were correct (image attached for reference).
However, despite having properly implemented the suggested changes, I am still encountering issues. One such issue is the message:
Error: Error code: 404 - {'error': {'message': 'The model llama3does not exist or you do not have access to it.', 'type':'invalid_request_error', 'param': None, 'code': 'model_not_found'}} Error code: 404 - {'error': {'message': 'The modelllama3 does not exist or you do not have access to it.', 'type':'invalid_request_error', 'param': None, 'code': 'model_not_found'}}
I have double-checked my work and verified that the issue persists.
I am now reaching out to you for assistance in finding a solution.
Looking forward to your insights on this issue.

The OLLAMA models need to be accessed by their full name, so if you are trying to use a local llama3 model, it would likely be llama3:latest, not "llama3".
$ fabric --pattern ai --text 'Why is the sky blue?' -m llama3:latest
Here's an answer in 3-5 Markdown bullets of 10 words each:

* The sky appears blue because of a phenomenon called Rayleigh scattering.
* When sunlight enters Earth's atmosphere, it encounters tiny molecules of gases like nitrogen and oxygen.
* These molecules scatter the light in all directions, but they scatter shorter (blue) wavelengths more than longer (red) wavelengths.
* This is why our eyes perceive the sky as blue during the daytime.

Kayvan Sylvan
Technical Leadership, Software Architect, Full Stack Engineering.
https://www.linkedin.com/in/kayvansylvan/
On May 22, 2024 at 12:47 AM -0700, epeuu @.***>, wrote:

Hey friend @ksylvan,
I am writing to inform you about an issue I am currently experiencing after following your instructions from pull #315.
Upon completing the steps you provided, I checked if everything was set as it should be and found that all the settings were correct (image attached for reference).
However, despite having properly implemented the suggested changes, I am still encountering issues. One such issue is the message:
Error: Error code: 404 - {'error': {'message': 'The model llama3does not exist or you do not have access to it.', 'type':'invalid_request_error', 'param': None, 'code': 'model_not_found'}} Error code: 404 - {'error': {'message': 'The modelllama3 does not exist or you do not have access to it.', 'type':'invalid_request_error', 'param': None, 'code': 'model_not_found'}}
I have double-checked my work and verified that the issue persists.
I am now reaching out to you for assistance in finding a solution.
Looking forward to your insights on this issue.
fabric.png (view on web)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>


Improve description of how to use templates.

What did you want to improve about this? I did provide some info in #1 , though it doesn't have instructions per se yet.
BTW, do you know how to remove line numbers from the templates, @mrshirts ?

Specific changes to make:

[ ] Make clear in the documentation and templates they need to provide a representative image (e.g. see https://github.com/livecomsjournal/livecomsjournal.github.io/issues/51 )
[ ] Provide good examples of each article type

What else?

Anything else on this, @mrshirts ?

@mrshirts @dwsideriusNIST - thoughts on this? Should I do the above? Anything else which needs improving in terms of template documentation?

I haven't had time to think about that yet.  I have made the representative
image thing clear.
On Wed, Jun 20, 2018 at 5:10 PM, David L. Mobley<EMAIL_ADDRESS>wrote:

@mrshirts https://github.com/mrshirts @dwsideriusNIST
https://github.com/dwsideriusNIST - thoughts on this? Should I do the
above? Anything else which needs improving in terms of template
documentation?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/livecomsjournal/article_templates/issues/3#issuecomment-398925865,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEE31L0KcPjCqe8mbBmmEHs-ftl4yWuCks5t-tZ5gaJpZM4O4O9x
.

Consider combining this effort with livecomsjournal/article_templates#107


Enum has no buffer

Hi, I tested with enum with default value 0, the buffer stored is empty. v0.9.9
Repro
#include "SimpleBinStream/SimpleBinStream.h"
#include <iostream>
#include <sstream>
using namespace std;

enum TestEnum : unsigned char
{
	  EnumOne
	, EnumTwo
	, EnumThree

// If I use this, then the buffer shows out properly
// 	 EnumOne    = 1
// 	, EnumTwo   = 2
// 	, EnumThree = 3

	, End
};

int main (int argc, char * argv [])
{
	simple::mem_ostream <std::true_type>  out;

	// this is problem
	out << TestEnum::EnumOne;
	// this is fine
	//out << TestEnum::EnumOne;

	const char * buffer = reinterpret_cast <const char*> (out.get_internal_vec ().data ());
	int buffersize = out.get_internal_vec ().size ();

	// Output buffer here is nothing unless I assign values to the enum
 	cout << "out\nBufferSize:" << buffersize << " buffer:" << buffer << "*" << endl;
	return 0;
}

I do not have access to C++ compiler now. I'll test when I get home. Zero is NULL terminator in char array and strings. Possible that your string is terminated by NULL. You should try to compare the enum to the original enum and see if the values are the same.

the string terminating char shold be '\0', not 0.

You can run the code below in cpp.sh or other online C++ compiler.
#include <iostream>

int main()
{
  if('\0' == 0)
  {
    std::cout << "same" << std::endl;
  }
  else
  {
    std::cout << "diff" << std::endl;
  }
  return 0;
}

There are size differences between '\0' and 0.
'\0' is 1 byte zero while literal 0 in source code is usually translated to at least 4 bytes.

the value of '\0' is 0 so comparing it to 0 will be same ,but I think in case of enum as value 0, should be different.

But you cast it to const char*

yes, so that I can serialize it over network. I would expect the enum to be a 0, even if I changed the enum to be of type int, I think same result (I don't have compiler now)


Completion for imports

Currently modules will be completed (somewhat) but only from the modules currently present in the file. Is even everything loaded enough? Probably you might want to complete anything present in the project (which might not be imported in any file you visited this session), or more generally something that might need to be installed.

There is a more general problem here. Bower flattens all the dependency. So there is no way to differentiate a direct dependency of a project from a transient dependency. The only "solution" I currently see is parsing the bower.json file and then looking up the modules that belong to the dependencies.

I don't even know what I want in import completion, I imagine there might be different opinions (e.g. on transitive dependencies). More or less magic. Input welcome.

Currently there's an "add import" command, should take the same suggestion of modules to autocomplete import declarations. Right now it's useless.

Completion for import statements from installed packages now in the PureScript version


pluralization support

This is basic pluralization support.
Can be used like that:
i18n`You have ${counter}:u(1:{} event||2:{} events)`
where :u() is new suffix I've implemented. 1: signifies the variant for singular value and 2: for plural one. {} is replaced with the value itself. So the above will render to:
You have 1 event
for counter == 1 and to:
You have 172 events
for counter == 172.
I've also implemented more complex ruleset for Polish language:
{ i18n`Masz ${this.test3}:u(0:{} zdarzeń||1:{} zdarzenie||2:{} zdarzenia)` }
We have 3 noun variants and it's possible to properly use them thanks to my implementation.
I believe the syntax leaves it open for others to implement rules for their languages. Perhaps the flexing code should be extracted and made configurable, but I'll leave it to others to do so, if they deem it necessary.

Thanks for the pull request.
Pluralization is a good point. Haven't thought about this in detail yet but how about using nested templates like this:
i18n`You have ${counter} ${(counter === 1)?i18n`event`:i18n`events`}`

The translations will look like:
{
    "You have ${0} ${1}": "Sie haben ${0} ${1}",
    "event": "Ereignis",
    "events": "Ereignisse"
}

This is already possible but I'm not sure about the edge-cases.

I think it's better to extract this logic (counter === 1 or - if you look at my PR much more complex condition to choose one of three variants in Polish) so we don't have to repeat it with every i18n string.
Also, you're not always going to use the "${0} ${1}" format. For instance, you might want:
n=0 --> You have no messages.
n=1 --> You have one message.
n>1 --> You have {n} messages.
The syntax I've proposed makes it possible to put such logic away from i18n string itself and even use different "steps" for different languages. What I'm not sure is if it should be hardcoded in the library, or perhaps overrideable via options.

I really like the flexibility of of nested template literals because you can write even more complex logic in js like:
const pluralizedEvents = (counter) => {
    switch(counter === 1)
        case 1:
            return i18n`one event`
        case 2:
            return i18n`${i18n`two`} events`
        default:
            return i18n`${counter} events`
}
i18n`You have ${pluralizedEvents(counter)}`

{
    "You have ${0} ${1}": "Sie haben ${0} ${1}",
    "one event": "ein Ereignis",
    "${0} events": "${0} Ereignisse",
    "two": "zwei"
}

I also understand the requirement to write custom suffixes and like the idea. We should think about an api to add custom suffix functions. Proposals are welcome :+1:

Nested templates are probably the way to go, I've just noticed a silly thing about my PR -- I hardcoded part of the message :)

I will create an issue for customizable suffix functions and close this PR


Mis-titled quiz

The second question on https://classroom.udacity.com/courses/ud891/lessons/8019995517/concepts/83106124892589030923 is incorrectly titled. It should be:
Which temporalities does the impairment concussion fit into? (check all that apply)

Thanks for the report - fixed!


How to sign a SBOM which is in xml format facing this issue

C:\Users\INMAS34\Downloads>cyclonedx-win-x64.exe sign bom demoproject.xml
Loading private key...
Loading XML BOM...
Generating signature...
Unhandled exception: System.Security.Cryptography.CryptographicException: Could not create hash algorithm object.
at System.Security.Cryptography.Xml.Reference.CalculateHashValue(XmlDocument , CanonicalXmlNodeList )
at System.Security.Cryptography.Xml.SignedXml.BuildDigestedReferences()
at System.Security.Cryptography.Xml.SignedXml.ComputeSignature()
at CycloneDX.Cli.Commands.Sign.SignBomCommand.SignBom(SignBomCommandOptions options)
at System.CommandLine.Invocation.CommandHandler.GetExitCodeAsync(Object value, InvocationContext context)
at System.CommandLine.Invocation.ModelBindingCommandHandler.InvokeAsync(InvocationContext context)
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass23_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass16_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass27_0.<b__1>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass25_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__24_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass11_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__10_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass14_0.<b__0>d.MoveNext()

@itmanju Which version of cyclonedx-cli were you using?
There was an issue in the past https://github.com/CycloneDX/cyclonedx-cli/issues/251 (related to trimming of the application), but this should hopefully be fixed.


Release Google.Cloud.CertificateManager.V1 version 2.2.0

Changes in this release:
New features

Enable REST transport in C# (commit 0f8560c)

Created release for Google.Cloud.CertificateManager.V1-2.2.0


Home Page - Protecting your confidential information is our mission - Content Alignment

Protecting your confidential information is our mission content should be centered not left aligned.
https://main--shredit--stericycle.aem.page/en-us

FYI: The header can be centered by adding the centered headings style to the section styles. No code change required.

@kronnox using center styling for the section fixed the headings but it makes the spacing a little bit off. Is there anything we can do to make the stats with blue bars look a bit cleaner? There's to much spacing between the blue bar and the text on the left. Want it to look more like live site.
EDS

Live site

You are right. That's not how it's supposed to look. The styles of the blue border thingys probably needs to be adjusted here, so they are not influenced by the centered headings section style; that's a bug.

@bstopp @kronnox the spacing on the bars is fixed but the content needs be centered within the component

Live


Fix DecodedVector's wrap() and dictionaryWrapping() API

This fix addresses multiple inconsistencies in implementation of
wrap() and dictionaryWrapping() which has caused multiple bugs
over the past year that surfaced due to its use in FieldReference
and Cast Expressions. This primarily occurred due to the difference
between how DecodedVector combines indices and nulls and the
changing expectations from the aforementioned APIs. The class
comment for DecodedVector is also expanded to explain its inner
workings and clarify its expected behavior.
Test Plan:
Test cases are added for wrap that cover all possible cases
that can result in different outcomes.

Added changes to fix clang specific compilation errors


Warn when AHardwareBuffer read is skipped

When AHardwareBuffer does not have usage AHARDWAREBUFFER_USAGE_CPU_READ_MASK, reading from the buffer is skipped and memory is instead filled with 0. All the other paths print a warning, but here it was missing

CI gfxreconstruct build queued with queue ID 248742.

CI gfxreconstruct build # 4750 running.

CI gfxreconstruct build # 4750 aborted.

CI gfxreconstruct build queued with queue ID 248815.

CI gfxreconstruct build # 4752 running.

CI gfxreconstruct build # 4752 passed.


Adding a topic modeling operator that uses LDA-mallet underneath

This PR has two changes:

Add a mallet based topic modeling operator. This needs two parameters - 1) mallet path which is the path to the unzipped directory of mallet. 2) number of topics.
We have made number of topics as a required argument

closing this PR as it had conflicts and other issues


How can I invoke a callback from native code using ffi?

It looks like Dart_Invoke is conspicuously missing from dart_api_dl.h.
In my use case, I know that I am on the correct thread and would like to call back into Dart code from C code.

@bdero @chinmaygarde FYI

Since you know you're on the correct thread, you can use NativeCallable.isolateLocal. On older SDKs you can use Pointer.fromFunction.

In my use case, I know that I am on the correct thread and would like to call back into Dart code from C code.

@liamappelbe has answered this. You can create callback pointers in Dart (using Pointer.fromFunction or NativeCallable.isolateLocal), pass them to C where they can be invoked.

Yes, thanks for the context! One last question: Where can I find examples of its usage including passing parameters and return values?

https://api.dart.dev/stable/3.2.3/dart-ffi/NativeCallable/NativeCallable.isolateLocal.html does not have an example in the documentation. cc @liamappelbe
https://api.dart.dev/stable/3.2.3/dart-ffi/NativeCallable/NativeCallable.listener.html has an example without return (as it's async).
Our tests contain examples: https://github.com/dart-lang/sdk/blob/main/tests/ffi/isolate_local_function_callbacks_test.dart


New max-positional-arguments in new pylint version - failing CI-linter

The nightly CI-Linter run failed due to a pylint update with a new rule on max-positional-arguments (see here and here).
What do we do?
Simplest solution: move to newest version and add
# Maximum number of positional arguments for function / method (default=5.)
max-positional-arguments = 15

to the pypproject.toml file? This means we have to update everywhere pylint (otherwise you will get errors with an older version of pylint like E0015: Unrecognized option found: max-positional-arguments (unrecognized-option)).
Although I am not convinced that this rule should be so stringent, my suggestion would be to fix this and restrict the number of positional arguments to 5. In the long term it is easier when we follow default values.

If I understand this requirement correctly, there is no limit for named arguments, right?
That is, if we have
func(
        arg1=arg1,
        arg2=arg2,
        arg3=arg3,
        arg4=arg4,
        arg5=arg5,
        arg6=arg6,
        arg7=arg7,
    )

That's allowed, right?
If so, I would vote for fixing all occurrences and just provide named arguments everywhere (which we generally try to do anyway).

There is a limit on the maximum number of arguments, which we have increased a lot in pyproject.toml (I think 15 is excessive):
# Maximum number of arguments for function / method (default=5).
max-args = 15

But isn't the way we are using it the right way to indicate which arguments are required and which are optional?

But positional arguments are not necessarily related to required or optional, no?
You can provide required arguments out of order, as long as they are named.
I agree 15 is excessive, but 5 is too low. We can reduce the limit to 10 perhaps, but take this opportunity to also avoid using positional arguments in general (unless it is just 1-2 arguments).

I think I don’t know how to indicate requirement arguments which do not appear as positional arguments. How would one do that?

Not at the definition side, only when calling the function. If at the definition side we have functions with more than 5 positional arguments, then I agree it is too much. When calling the function we can avoid it though and then I don't think it's a problem.

The issue is that I don’t exactly understand the pylint complaint. E.g. in https://github.com/gammasim/simtools/blob/f9b4808b73a27561d7d98b3648f80dbf6a5bc33c/simtools/layout/array_layout.py#L55 It looks to me like 3 positional arguments and 6 others. Pylint are complaining about 9 positional arguments.

Yes, it probably doesn't like the fact we listed the arguments. But I wouldn't really call them positional ones if they have a default value and I much prefer that to *args, **kargs. I therefore vote to just increase the limit to 15.


Window title in bar only goes to 50% of the screen

Notice that at the end it clips

this is fixed, prob part of 0.7
left and right aligned widgets can now extend the entire length of the bar, if they intersect, left will win


VSTest hangs for over 45 minutes before running a few unit tests.

Description

IMPORTANT: if the defect is reproduced only in a workflow from within the Visual Studio IDE then do not report the issue here - instead, please report it using Visual Studio's "Send Feedback" option that can be accessed from the Help menu OR using this link https://developercommunity.visualstudio.com.
For a defect reproducable from the vstest command line, describe the issue you've observed.

I have a .Net Core 3.1 code which has a few unit tests using NUnit. The tests have a global OneTimeSetUp phase and then there are about 2 dozens unit tests.
dotnet test --no-build runs for 45 minutes on average. The setup phase takes about 30 seconds. The tests in total take about the same.
I ran dotnet test --no-build -p:VSTestVerbosity=diag -p:VSTestDiag=c:\temp\test.log. I got two files:

test.log
test.host.20-11-24_21-25-00_45838_6.log

The logs show the same pattern. One second later, the first log starts showing
TpTrace Verbose: 0 : 66568, 10, 2020/11/24, 21:25:01.363,<PHONE_NUMBER>2700, vstest.console.dll, TcpClientExtensions.MessageLoopAsync: Polling on remoteEndPoint: <IP_ADDRESS>:20496 localEndPoint: <IP_ADDRESS>:20495

And will show these messages for the next 44 minutes before successfully completing.
Around the same time the second log starts showing
TpTrace Verbose: 0 : 59460, 10, 2020/11/24, 21:25:02.029,<PHONE_NUMBER>0605, testhost.dll, TcpClientExtensions.MessageLoopAsync: Polling on remoteEndPoint: [::ffff:<IP_ADDRESS>]:20495 localEndPoint: [::ffff:<IP_ADDRESS>]:20496

And will be showing such messages for the next 45 minutes as well. After that something clicks and the test completes.
All the tests have SingleThreaded attribute on their fixture.
Steps to reproduce
Unfortunately I cannot share the project. I will have to come up with a minimal reproduction.
I can reproduce it easily - dotnet test --no-build does it every time.
OS: Windows 10
.Net: .Net Core 3.1
Expected behavior
Tests complete in less than 2 minutes.
Actual behavior
Takes about 45 mins to complete. Successfully.
Diagnostic logs
test.log
test.host.20-11-24_21-25-00_45838_6.log

@MarkKharitonov Which version of vstest.console do you use? Is it 16.5.0? You can see it console output.
Do you face this issue only with this test project or some others too?

Here is the output of the command:
Test run for C:\Dayforce\DevOps\GenerateBindingRedirects\src\GenerateBindingRedirectsTests\bin\Debug\netcoreapp3.1\GenerateBindingRedirectsTests.dll(.NETCoreApp,Version=v3.1)
Microsoft (R) Test Execution Command Line Tool Version 16.7.0-release-20200703-01
Copyright (c) Microsoft Corporation.  All rights reserved.

Starting test execution, please wait...
Logging Vstest Diagnostics in file: c:\temp\test2.log

A total of 1 test files matched the specified pattern.

Total tests: 22
     Passed: 22
 Total time: 45.4361 Minutes

So, it is 16.7.0-release-20200703-01
I face it with this particular solution only. No other solution exhibits this behaviour.

That seems like there is some long setup somewhere. I would dump the testhost process while it is waiting (e.g. open Task Manager, find the testhost process, right click and select Create Dump File). Then you can open it in Visual Studio, and look at the different call stacks to see where it is hanging. Or share it with us.

I can do that. To make sure I am doing the right thing, could you give me procdump.exe command line? This way I will capture it exactly the way you wish.

IDK I just do it via the right click in Task Manager. 😁 It's actually better if you inspect it in your VS because you have all the symbols for your project, it will ask you to navigate to them imho. So you will see more info than me. I usually do Debug > Windows > Parallel callstacks, and look at all the call stacks to see if it's waiting in some user code. The one running user code is usually the tallest one. But in this case I am not sure how it will look like if it is stuck in Setup.

I found the root cause. Your advice to attach the debugger to testhost.exe was the most fruitful. I have a global setup that runs a process using the following code:
            var p = new Process
            {
                StartInfo = new ProcessStartInfo
                {
                    Arguments = arguments,
                    FileName = exe,
                    CreateNoWindow = true,
                    LoadUserProfile = false,
                    UseShellExecute = false,
                    WindowStyle = ProcessWindowStyle.Hidden,
                    RedirectStandardError = true,
                    RedirectStandardOutput = true
                },
            };
            var sbStdErr = new StringBuilder();
            p.ErrorDataReceived += (sender, e) =>
            {
                sbStdErr.Append(e.Data);
            };
            p.Start();
            p.BeginErrorReadLine();
            string output = p.StandardOutput.ReadToEnd();
            p.WaitForExit();

            TestContext.WriteLine(output);
            Trace.WriteLine(output);

            if (sbStdErr.Length > 0)
            {
                output += "\r\n" + sbStdErr.ToString();
            }
            Assert.AreEqual(0, p.ExitCode, output);
            return output;

I copied this pattern from https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.processstartinfo.redirectstandardoutput?view=netframework-4.7.2
As it turns out, the test apparently deadlocks on p.StandardOutput.ReadToEnd();, but only for about 45 minutes and only when running on the console. Now I need to figure out how to code it correctly.

Posted here - https://stackoverflow.com/questions/65044945/how-to-collect-redirected-standard-output-and-error-in-net-core-correctly

Thanks for the follow up.


A11y - Update footer semantics, add aria-label

Describe the task
The current footer could use a semantic update & the nav element it uses needs an aria-label to differentiate it from the other navs on the page.
Acceptance Criteria

[ ] Change the structure of the footer from

to

[ ] Give the nav item a descriptive aria-label since on some pages there will be up to 3 nav items. TBD on whatever you want ot call it. Currently for screenreader users it just reads as "nav" and will be hard to differentiate.

Additional context
Example structure (ignore the bit about skip links) https://www.magentaa11y.com/checklist-web/footer/#example-footer

@all-contributors please add @bacitracin for a11y! :)


Curling for files should verify what was downloaded

I set the bootstrap script into motion. When the time came to curl for pkgsrc, my connection timed out and left behind an incomplete /tmp/bootstrap.tar.gz. However, the bootstrap script merely checks for the existence of /tmp/bootstrap.tar.gz, which isn't sufficient.
It would be pretty cool to also get a hold of, say, the SHA256 of the pkgsrc tarball, at least. That way we don't leave behind stale files, and it's more secure this way, too.
Or maybe the real problem is that saferun() is just too aggressive -- it exits immediately and doesn't do any cleanup.

Certainly agree. I'll be happy to implement a sum check. The saferun function is not supposed to be smart, and exit upon anything other than exit 0.
I'll take a look at this tomorrow

@christiank I've implemented this in 7d20e11. Mind testing? :)

Well, I've testing this quite a bit, and all seems well.
I'll consider this fixed, but please let me know right away if you run into any trouble.
Thanks for the contribution and your interest in the project! :)


EarlyStoppingShapRFECV with LightGBM - Error after all categorical features have been removed

The following error occurs once all categorical features have been removed:
AttributeError: 'TreeEnsemble' object has no attribute 'values'
This is due to a known issue with SHAP and LightGBM (https://github.com/slundberg/shap/issues/480). Check on line 98 of shap_helpers.py usually deals with this issue by calling SHAP explainer differently when categoricals are present. However when all categorical features have been dropped the error still presents itself. Quick solution is to set a flag in the beginning if any categorical features are present and then use that flag instead of the check on line 98. Would be good to understand why this happens though.
Environment:

probatus 1.8.5
Shap 0.38.1
LightGBM 3.2.1
python 3.8.2
OS: linux

To Reproduce
from probatus import feature_elimination
from sklearn.model_selection import StratifiedKFold
import lightgbm as lgb
import pandas as pd

X = pd.DataFrame(
    [
        [1,2,3,4,5,101,102,103,104,105],
        [-1,-2,2,-5,-7,1,2,5,-1,3],
        ["a", "b"] * 5, # noisy categorical will dropped first
    ]
).transpose()
X[2] = X[2].astype("category")
X[1] = X[1].astype("float")
X[0] = X[0].astype("float")
y = [0] * 5 + [1] * 5

model = lgb.LGBMClassifier()

n_iter = 2

n_folds = 3

for i in range(n_iter):
    skf = StratifiedKFold(n_folds, shuffle=True, random_state=42)
    shap_elimination = feature_elimination.EarlyStoppingShapRFECV(
        clf=model,
        step=1 / (n_iter + 1),
        cv=skf,
        scoring="accuracy",
        eval_metric="logloss",
        early_stopping_rounds=5,
    )
    report = shap_elimination.fit_compute(
        X,
        y,
    )

Error traceback
If applicable please provide full traceback of the error.
Traceback (most recent call last):
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/joblib/externals/loky/process_executor.py", line 431, in _process_worker
    r = call_item()
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/joblib/externals/loky/process_executor.py", line 285, in __call__
    return self.fn(*self.args, **self.kwargs)
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/joblib/_parallel_backends.py", line 595, in __call__
    return self.func(*args, **kwargs)
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/joblib/parallel.py", line 262, in __call__
    return [func(*args, **kwargs)
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/joblib/parallel.py", line 262, in <listcomp>
    return [func(*args, **kwargs)
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/probatus/feature_elimination/feature_elimination.py", line 1079, in _get_feature_shap_values_per_fold
    shap_values = shap_calc(
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/probatus/utils/shap_helpers.py", line 108, in shap_calc
    explainer = Explainer(model, masker=mask, **shap_kwargs)
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/shap/explainers/_explainer.py", line 161, in __init__
    explainers.Tree.__init__(self, self.model, self.masker, link=self.link, feature_names=self.feature_names, **kwargs)
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/shap/explainers/_tree.py", line 177, in __init__
    self.expected_value = self.model.predict(self.data).mean(0)
  File "/home/luke/.virtualenvs/af/lib/python3.8/site-packages/shap/explainers/_tree.py", line 1091, in predict
    tree_limit = self.values.shape[0]
AttributeError: 'TreeEnsemble' object has no attribute 'values'

Expected behavior
Should run fine even once all categorical features are dropped.

Thanks for making the issue, i have managed to reproduce it, i also managed to fix it, by simply setting the column names in X to string like:
["1", "2", "3"]

I think shap for some reason does not handle well dataframes with int as column names, same as index values.
In order to mitigate the issue, one needs to modify probatus/utils/arrayfuncs/assure_pandas_df function to check if the passed X as any of the following DF, Series, list of lists, np.array, ends up as pandas DF, with column names as strings. It would be also good to make a small unit test for that function the case when someone passes DF with int column names, and to check whether they get transformed to strings.
Who would like to pick that up? That would be an important addition to the package :)

That doesn't fix it for me. The below dataframe still gives the error:
`X = pd.DataFrame(
{
"num1": [1,2,3,4,5] + [101,102,103,104,105],
"num2": [-1,-2,2,-5,-7] + [1,2,5,-1,3],
"cat": ["a", "b"] * 5, # noisy so dropped first
}
)
X["cat"] = X["cat"].astype("category")
X["num1"] = X["num1"].astype("float")
X["num2"] = X["num2"].astype("float")
y = [0] * 5 + [1] * 5
`

I was trying to investigate this issue today and it seems more serious that what I thought. Given our tests setup:
def complex_data():
    """
    Fixture.
    """

    feature_names = ["f1_categorical", "f2_missing", "f3_static", "f4", "f5"]

    # Prepare two samples
    X, y = make_classification(
        n_samples=50,
        class_sep=0.05,
        n_informative=2,
        n_features=5,
        random_state=0,
        n_redundant=2,
        n_clusters_per_class=1,
    )
    X = pd.DataFrame(X, columns=feature_names)
    X["f1_categorical"] = X["f1_categorical"].astype("category")
    X.loc[0:10, "f2_missing"] = np.nan
    return X, y

The following test passes:
    from lightgbm import LGBMClassifier

    model = LGBMClassifier(n_estimators=50, max_depth=3, num_leaves=3)
    shap_elimination = EarlyStoppingShapRFECV(
        clf=model,
        step=0.33,
        cv=10,
        scoring="accuracy",
        eval_metric="logloss",
        early_stopping_rounds=5,
    )
    X, y = complex_data()

    report = shap_elimination.fit_compute(
        X,
        y,
    )

but changing the cv value to 5 fails with the error
AttributeError: 'TreeEnsemble' object has no attribute 'values'

I have tried the following things without success:

dropping the categorical feature
adding the shap_kwarg feature_perturbation="tree_path_dependent" as suggested in the issue of shap

I still did not figure out when this issue happen and why.


Checkerboard corner estimation

Hi,
thank you for the amazing work you provided!
I have a following question: Is it really important that the target is rotated for 45 degrees (like in the demo data you provided) and why?
I am trying to use this calibration on my own data. In the data, the checkerboard target is parallel to the ground (not rotated for 45 degrees) and in 80-90% cases I get wrong checkerboard estimation like this:

How could I mitigate this problem?

If some one else is struggling with this issue try to exchange pattern_size width and height. For my example, try both 'pattern_size': (10,6) and 'pattern_size': (6,10). In my case latter worked.


Replace logo + favicons

replaced logos + favicons with the new color of red instead of purple
new images should be optimized
should be merged in after #6

This looks great, @FrancesCoronel! Gracias!


Redirect user to first domain in RUMORS_SITE_CORS_ORIGIN to fix login issue

This PR fixes #250
Current situation
On Mac & iOS safari, users cannot login when they visit https://cofacts.org.
This is because the current login mechanism will write cookie to https://cofacts-api.g0v.tw.
Even though https://cofacts-api.g0v.tw have CORS enabled and also uses sames-site: lax, it is possibly that browsers are blocking all third-party cookies anyway.
What this PR do
We redirect users to a fixed domain.
After we apply corresponding changes in rumors-deploy (TBA), we can always redirect users to https://cofacts.tw, and the website always connects to https://api.cofacts.tw.
Since https://cofacts.tw and https://api.cofacts.tw are considered same-site, the browser can pickup the login session cookie and shows as logged-in.

Coverage decreased (-0.2%) to 86.468% when pulling 468040cef6406be0a1f5a3eaa4f0f8fbc2474208 on redirect into b887a4fb3ae968e0b1e248cc32099f80ad812353 on master.


feature:#17 argument default value

Hey @funivan, thanks for taking care of #17!
I'm happy about the way you implemented it, and before merging it I was wondering about what you thought about making the removal of a default value more explicit: instead of $argument->setDefaultValue(null), we could have $argument->removeDefaultValue().

Sorry for this. I add removeDefaultValue method. Now you can review

That's great! Cheers!


Introduction of maximal frequency for ThermalDisplacements class

I would like to introduce a maximal frequency for the calculation of the thermal displacements. This would be handy for some analysis of the thermal displacements.  I hope this is okay.

I will think.

I made max-freq-for-td branch. In it, --fmin and --fmax are used to specify them. The tag names are FMIN and FMAX, respectively. Now --cutoff-freq (CUTOFF_FREQUENCY) is inactive for this calculation. If it works, I will release this.

Thank you very much for your effort. I have tested it. So far, it works very well.
Some small suggestions: Maybe you could keep "--cutoff-freq" (CUTOFF_FREQUENCY) in the parser as an alternative to FMIN. It might take some time until everyone has adjusted. Also, FMAX is not printed to the output file so far.

I don't want to put more effort for this since I think this feature is not very popular. So I want users to realize it by themselves reading the document.

Okay, I see. Keeping "--cutoff-freq" (CUTOFF_FREQUENCY) as an alternative to FMIN still might be a good idea.

I think it's not a good design. It will be a possible source of bugs. I will just show an error message when a user using --cutoff-freq together with thermal displacements.

Okay. Thanks a lot.

I will write document and then release it. I will close this pull request.


Firefox Support 🔥🦊

Hello again,
I've now moved to Firefox and requesting a port of this.
Most of it should work as is.
See:
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webNavigation#browser_compatibility
Maybe you'll just need to tweak the manifest a little and access the APIs via browser. instead of chrome..
This will help with that:
https://github.com/mozilla/webextension-polyfill

Hi @olfek

background.scripts not supported by Chrome in Manifest V3 🤔🤔🤔

The reason is, Chrome no longer supports background scripts in Manifest V3. More at: https://developer.chrome.com/docs/extensions/migrating/to-service-workers/
The situation between Firefox and Chrome is as follows:

Firefox has incomplete support for Manifest V3 and expects background scripts, it doesn't support service workers (in extensions) nor module service workers (in extensions). More at: https://stackoverflow.com/questions/75043889/manifest-v3-background-scripts-service-worker-on-firefox

Chrome on contrary no longer supports background scripts (Manifest V2) and expects service workers instead (Manifest V3), Chrome store doesn't allow to publish Manifest V2 extension any more. More also at: https://stackoverflow.com/questions/75043889/manifest-v3-background-scripts-service-worker-on-firefox

Firefox supports chrome.* to assist with porting, polyfill is not needed. More at: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Build_a_cross_browser_extension

Polyfill might not be the right solution as it assumes both browser.* and chrome.* are the same. It exports browser.* by default, or proxies any call to chrome.*. I would stick to separate type declarations, as we are using typescript.

Firefox has one neat API option under tabs.update() which Chrome doesn't have, and that is loadReplace option, which I would use. More at: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/tabs/update

Summary:

We need separate manifest.json files for Firefox and Chrome as there is no compatible common manifest. Chrome will be using service workers and Firefox will be using background scripts, both of which can stay module.
Build step will be split into two: one for Firefox, one for Chrome, to accompany for different manifest.json files and slightly different use of tabs.update() where I would use loadReplace option in Firefox.
Some CSS (font size) or JS adjustments (Options page) to look/work the same in both Firefox and Chrome.

Current state:
I have Firefox version working already. I will create a separate build step for Firefox and during this week post it here for you to try.

@olfek
Firefox support is ready. Feel free to try it out: https://github.com/penge/block-site/pull/55

Cool

Thank you, I will

Hi, wasn't able to publish it, it requires some id.

Extension ID. Which for some reason isn't generated automatically like on Google Store. Overall that publishing process on Firefox wasn't pleasing as it ended up with some warnings and errors which didn't occur during the development and loading the extension locally. On contrary, Google Chrome local development and Chrome Store, follow the same validations, and it's very seamless.

Thanks, I'll be on pc in 30 minutes or so and give it a try. I'll let you know.

@olfek
I have just submitted Block Site for review to Firefox ADD-ONS. It says it should be available within 24 hours.
I used this ID in the end:
{5D2A6F66-7AC0-6750-AFBA-1DA7C98A3086}

yes, those curly braces had to be part of the ID also.
It is quite messy to submit an extension to Firefox I have to say. You have to specify an unique slug also. See https://addons.mozilla.org/en-US/firefox/search/?q=block site where extensions of same name Block Site have these slugs: block-website, block-site-2, block-site, which is terrible for search.
So I had to chose something else. I chose penge-block-site.
ID doesn't appear anywhere in the extensions' URL as it does on Chrome Store, so I don't understand why it's needed.
Once the extension will be available, I share the link here and update repository with the ID used.

Pros for Firefox ADD-ONS:

you can edit while in review
you can have more than 5 screenshots
screenshots can be in higher resolution
screenshots are not limited to a certain aspect ratio if within resolution limit

Screenshots
Light mode

Dark mode

@olfek
Just letting you know it's still in "Awaiting Review".

Hi @olfek
Block Site is now available on Firefox:
https://addons.mozilla.org/en-US/android/addon/penge-block-site
Sorry for the waiting. Review was very thorough. I had to go back and forth to it, submit source code, and explain build step. The idea was them to compare the submitted build with their own build so they match.
But overall, I think the review process on Firefox addons was great.
Please, check out the extension, enjoy.
Cheers!

happened to me too :D (with that android link)
dk, Try it :)
On Mon, Jul 24, 2023 at 11:05 AM riz @.***> wrote:

waittt, is this extension available in mobile Firefox too?! 🫢🫢🫢
—
Reply to this email directly, view it on GitHub
https://github.com/penge/block-site/issues/54#issuecomment-1647511026,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAG5P5YW47VQ24IY47CG6O3XRY3D7ANCNFSM6AAAAAAZRO6Z7E
.
You are receiving this because you were mentioned.Message ID:
@.***>


Script fails due to Node.js deprecated version

The CFN script receives an CREATE_FAILED du to Nodejs 6..10 deprectation for lambda:
The runtime parameter of nodejs6.10 is no longer supported for creating or updating AWS Lambda functions. We recommend you use the new runtime (nodejs8.10) while creating or updating functions. (Service: AWSLambdaInternal; Status Code: 400; Error Code: InvalidParameterValueException; Request ID: 219305e6-762d-11e9-876c-156d067a48cc)
  | 11:46:21 UTC+0200 | CREATE_FAILED | AWS::Lambda::Function | FailLambda

Therefore npm run up fails with the following:
SageBuild-test-1
Waiting on stack:SageBuild-test-1
✖ SageBuild-test-1:CREATE_FAILED
(node:50395) UnhandledPromiseRejectionWarning: CREATE_FAILED
(node:50395) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:50395) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

working on the fix right now

there is a fix in the dev branch, need to finish up some testing before pushing to master

While working with the dev branch, the end points at lambdas are not getting created.
We are getting the following error
`
Error occurred while GetObject. S3 Error Code: InvalidArgument. S3 Error Message: Invalid version id specified (Service: AWSLambdaInternal; Status Code: 400; Error Code: InvalidParameterValueException;
`

fixed in latest master branch


refactor(transformer/react-refresh): small refactor

Follow-on after #6937. Refactor 2 small blocks of code.

Replace 2 if statements with 1.
Obey the mighty clippy!

#6973  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite

Merge activity

Oct 27, 10:57 PM EDT: The merge label '0-merge' was detected. This PR will be added to the Graphite merge queue once it meets the requirements.


How to set multi-agent for DDPG?

I'm noob, and wanna set multi-agent
but in the DRLAgent class, couldn't find where can set multi-agent neither multi-worker.
how can i set multi-agent and watch the result?

Do you want to try this one: https://github.com/AI4Finance-Foundation/ElegantRL/blob/master/elegantrl/agents/AgentMADDPG.py

Please share your result, I am working on it any  discussion and comment appreciated.


Speed up pytest

Brief Description

When I do local tests, I find there only use single core to test.
That causes so low.
To speed up we could patch some commands such as -n.
Example API

Please modify the example API below to illustrate your proposed API, and then delete this sentence.
From
https://github.com/pyjanitor-devs/pyjanitor/blob/53c86113b62d3245937c5596332f262172d916bc/Makefile#L21-L23
to
 test:
 	@echo "Running test suite..."
 	pytest -v -n auto --color=yes

I like the idea, thank you for raising it, @Zeroto521! Would you like to do a PR for this one?


The function name should be strlen and not strlne

Interesting.  I'm wondering how this compiled previously (and the tests passed).

Haha! I was wondering the same thing. BTW, I'm reading the book know and using your solutions and others here on github as a way to test my own.


add options for exception bots from google, bing, yandex and other search engine

Do you have any suggestions about how this might be implemented?

@JayBizzle array of whitelist bots


PUT to https://smba.trafficmanager.net/amer/v3/conversations/ failed with [405] Method Not Allowed

We are using bot builder to send messages and after user's action we need to update the card.
This call to update the card fails, because the event object doesn't have the replyToId property.
function sendCard(session: builder.Session, event:builder.IEvent, card: teams.O365ConnectorCard) {
-----
event.address["id"] = event.replyToId; // undefined
const msg = new builder.Message(session).address(event.address).addAttachment(card);
session.connector.update(msg.toMessage(), (err) => {
//logging here
})
}
Here is the error:
message: PUT to 'https://smba.trafficmanager.net/amer/v3/conversations/{someID}/activities' failed: [405] Method Not Allowed
stack:
Error: PUT to 'https://smba.trafficmanager.net/amer/v3/conversations/{someID}/activities' failed: [405] Method Not Allowed
at Request._callback (/usr/src/app/node_modules/botbuilder/lib/bots/ChatConnector.js:722:46)
at Request.self.callback (/usr/src/app/node_modules/request/request.js:185:22)
at Request.emit (events.js:400:28)
at Request. (/usr/src/app/node_modules/request/request.js:1154:10)
at Request.emit (events.js:400:28)
at IncomingMessage. (/usr/src/app/node_modules/request/request.js:1076:12)
at /usr/src/app/node_modules/dd-trace/packages/dd-trace/src/scope/base.js:54:19
at Scope._activate (/usr/src/app/node_modules/dd-trace/packages/dd-trace/src/scope/async_resource.js:47:14)
at Scope.activate (/usr/src/app/node_modules/dd-trace/packages/dd-trace/src/scope/base.js:12:19)
Here are the botbuilder versions that we use:
"botbuilder": "^3.30.0",
"botbuilder-teams": "^0.2.9",
To Reproduce
Steps to reproduce the behavior:
Successfully creating a card
Submit card in MS Teams
Call session.connector.update
See the error 405 not allowed
Expected behavior
To update the card without error

When you first send the card with a call to POST /v3/conversations/{conversationId}/activities, the response object contains the ID the channel assigned to the message. Use that as the activity ID when making the call to PUT /v3/conversations/{conversationId}/activities/{activityId} to update the card in the original message.
If you need more assistance, I can try to get you in touch with support, or you can post a question on Stack Overflow.

Hi Jonathan, thanks for the answer.
Do you have any idea why the event object does not have the replyToId property as before?

@vhayrapetyan - The send activity method has not changed, but the replyTo field is optional on any activity, see Basic activity structure in the Activity schema. Something on the channel side might have changed, or if you're using Adaptive Cards, something in your card design might have changed and affected whether the generated message contains a reply to ID. Sorry that I don't have something more concrete.


use nightly link checker

I have added a nightly release for lychee.

https://github.com/lycheeverse/lychee/pull/1212

Let's wait for the v2.0 release.


Scheduling option: :greedy

Maybe we want to add something similar to https://github.com/JuliaLang/julia/pull/52096 (@threads :greedy).

Yeah that'd be nice to have. I think we could pretty much just wrap Threads.foreach to do this if I understand correctly.

Implemented in #17


Could support lower version of firefox?Such as firefox 52.0

Bug Report
when open the webui on low version of firefox, it could not show the right login page but stop on the logo page. It seems could not run on lower version of firefox such as 52.0 due to the js issue. Can anyone help me because in my working environment there is limited to use higher version of firefox or chrome. Please!
Installation Method
I installed it by pip and by source code.
Environment
Open WebUI Version:** [e.g., v0.3.32]
Operating System: [Windows 10,  Ubuntu 20.04]
Browser :** [Firefox 52.0]
Confirmation:

[ ] I have read and followed all the instructions provided in the README.md.
[ ] I am on the latest version of both Open WebUI and Ollama.
[ ] I have included the browser console logs.
[ ] I have included the Docker container logs.
[ ] I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below.

Expected Behavior:
Could use lower version of firefox such as 52.0
Actual Behavior:
stop at logo page and there is js error
Logs and Screenshots

Browser Console Logs:
SyntaxError: expected expression, got '.'
SyntaxError: expected expression, got keyword 'import'
Screenshots/Screen Recordings (if applicable):

Won't be officially supported, but if there is a quick fix, PR welcome.


Line fill colour

Hi!
In this issue you referenced line.setFillColor: https://github.com/lecho/hellocharts-android/issues/137#issuecomment-104165068
However it seems that no such function exists. How would one set the fill colour of a line?
Thanks!

As I found it is only alpha value for the fill color for now.


Builder properties should be copied

Describe the Bug
The following code will fail with the error Property text can only be assigned once.
const commonParams = {}
Elements.Button(commonParams).text('foo')
Elements.Button(commonParams).text('foo')

The problem is that Builder assigns the props argument to its internal properties instead of copying, so the second chained text call is trying to write to the same object.
Expected Behavior
This probably isn't very common and perhaps there's a practical consideration for how it's done now, but from a usage perspective the outcome is surprising and cryptic.

Hi @nlwillia! Thanks for reporting this! If you'd like, feel free to send over a pull request. Otherwise, I'll get this out in the next release, which I plan to do by next Monday, with the new features added by Slack. Thanks!

Thanks for the PR! I've just released this, together with some new features


Consider offering a dual license MIT and CC0

Is there any way you could dual license your project as MIT and CC0? The MIT is a fair license and allows for the broadest usage. I propose this because for businesses, the idea of the Public Domain isn't a legal framework that applies globally. Larger organizations cannot consume components licensed in this way because they present unique problems around the globe.
Allowing for the dual licensing of the project as either MIT or CC0 would satisfy you projects goals of being open an unencumbered by those who wish to use it that way, but still legally acceptable to businesses.

@bfattori Thanks for raising this question, Brett. My initial reaction is: Is this really a problem? I say this because this code is in the JDK: https://docs.oracle.com/javase/9/docs/api/java/util/concurrent/Flow.html and basically all of JSR166 is Public Domain: http://gee.cs.oswego.edu/dl/concurrency-interest/
Fundamentally, the TCK wouldn't be packaged with any application code, so it is a test-time dependency, so it wouldn't be a problem. I guess it could be an issue if you want to take the example code and paste verbatim?
Do you have any pointers to material which I could read up on w.r.t. this topic?
Thanks!
√

@viktorklang I was unaware that reactive-streams is included in the JDK. You also say that it is a testing-time only component? If this is so, then it's not necessarily a problem.
Thanks for the quick response.

@bfattori The interfaces is in the JDK (as well), the TCK is a test-time component. What remains is the examples, and those are CC0. So I guess those would only pose a problem in your case if you included them in production code? (I am not a lawyer, doctor, etc)

@viktorklang If we did start with the examples, that are licensed CC0, and modified them, then the code would need to remain CC0, in my understanding. That could pose a problem if the Public Domain is not easily recognized in another region. A dual license wouldn't change or hurt your examples in any way, but would offer companies a "safer" path to derive from the examples.

Also, I suppose a good way to see how "Public Domain" is defined around the world (and why it's complicated) is to view the many different regional sites on Wikipedia regarding the Public Domain:
https://en.wikipedia.org/wiki/Public_domain

open an unencumbered by those who wish to use it that way, but still legally acceptable to businesses.

Do you have a specific company in mind that has trouble with CC0 or is this a hypotetical scenario?
This FAQ indicates CC0 is pretty reasonable and unless your company wants to reinvent it, it should not be of a problem (see this short comparison).
Most users don't interact with Reactive Streams directly but through other libraries, licensed typically under Apache 2.0, where including CC0 is fine. (Fun fact, Doug Lea comes up too.)
In summary, I don't consider this to be a problem and recommend not dual licensing Reactive Streams, which I've contributed to as well under the CC0 premise.

I have a sector of companies that might consider this a problem: those that are regulated by government organizations, and not just by the U.S. government, in their field of endeavour.
Because the Public Domain isn't a consistent legal framework, a company that is using the software must comply with the license terms as best they can. In a country where the Public Domain does not exist, and the fallback to a "free license" doesn't satisfy, that would limit the usability of the component. Just because it is used with the Apache 2.0, does not change its terms though. The Apache component uses the CC0 component, with the two licenses being compatible in the U.S.
If a company does work abroad, and they are regulated, their could be a potential problem with using the CC0 license. It hasn't been tested and just assuming it's okay won't fly when there is a multi-million dollar budget resting on its merits.

Disclaimer: I am not a lawyer, expert on IP legislation, etc. YMMV.
@bfattori So given that the interfaces is in the JDK and under the JDK license, the TCK is a test-time dependency your remaining concern is if someone possibly derives code from the examples-jar?
Dual-licensing the examples seems—to me—to be unnecessary for end-users since end-users should be using an RS implementation (such as Akka Streams, Reactor, RxJava etc) and for RS implementors the examples only serve as educational material rather than a basis for their own implementation work.
@reactive-streams/contributors Anyone have any thoughts here?

I agree with Viktor that there is no issue here. The interfaces are available under OpenJDK license as well as the original CC0. (Not especially relevant, but similarly for the OpenJDK TCK that primarily tests SubmissionPublisher).

Thanks @bfattori, I'll close this issue.


[WIP] custom_check: Added a lint rule to prevent msgid from being used as a var name

https://github.com/zulip/zulip/issues/12952
Testing Plan:

Hi @okmanl, thanks for working on this.  If you check the details of the failed tests on CircleCI you'll notice the new rule you added caught a handful of occurrences of msgid.  It would be a good idea to make a preparatory commit addressing those before the custom_check commits you have (which should be squashed into a single commit).  We have great git resources in our docs for how to accomplish those things.
It also looks like you have some pep8 infractions you need to address as well.

@whoodes thank you for your advice and help. I am in the process of squashing the commits now, and then refactoring msgid.
I will then insert the "refactoring msgid" commit before the changes to custom_check.

https://github.com/zulip/zulip/pull/12995
So I've solved the issue, however after I've committed to my PR, I get this error in the CI tests:
Aug 15 07:10:09 ERROR: zerver/views/realm_export.py no longer has complete backend test coverage Aug 15 07:10:09   Lines missing coverage: [47] Aug 15 07:10:09  Aug 15 07:10:09 It looks like your changes lost 100% test coverage in one or more files Aug 15 07:10:09 Usually, the right fix for this is to add some tests. Aug 15 07:10:09 But also check out the include/exclude lists in tools/test-backend. Aug 15 07:10:09 If this line intentionally is not tested, you can use a # nocoverage comment. Aug 15 07:10:09 To run this check locally, usetest-backend --coverage.
Which doesn't relate to any of the files I've changed for solving the issue.
What should I do to solve this? Do I add the #nocoverage comment?  Thank you.

As for the coverage error, just rebase on master, where it’s already been fixed.

I tweaked this and merged it as 2a1305de9f10db81bc9721ff1bd9a9f67ddae91f.

Your push raced with my merging the Python stuff; just do a new PR.


cmd/outdated: group specs of same formula

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[x] Have you successfully run brew tests with your changes locally?

Suppose you have devel and stable versions of foo installed.
Their versions should be grouped together regardless their specs.
Output before the change:
$ brew outdated foo
foo (2.4), foo (3.28-01) < 5.1

Output after the change:
$ brew outdated foo
foo (2.4, 3.28-01) < 5.1

Nice cleanup 👍