[Build Issue]: cmake install fails with disabled crashpad

Have you read through the build instructions before reading this?

[X] I have read the build instructions

What operating system are you seeing the problem on?
Linux (any distro)
Describe the build issue
CMake arguments:
-DCMAKE_BUILD_TYPE=Release
-DWITH_CRASHPAD=OFF
-G "Unix Makefiles"

Relevant log output
CMake Error at cmake_install.cmake:87 (file):
file INSTALL cannot find "/var/tmp/portage/games-vsrg/etterna-9999/work/etterna-9999_build/gn_crashpad/crashpad_handler":
No such file or directory.CMake Error at cmake_install.cmake:87 (file):
  file INSTALL cannot find
  "/var/tmp/portage/games-vsrg/etterna-9999/work/etterna-9999_build/gn_crashpad/crashpad_handler":
  No such file or directory.

Anything else?
No response

Are you still having this issue? Would you be able to provide any more logs? Are you running with crashpad disabled from a clean build directory?

Please reopen this issue if you are still having this problem. I'm unable to reproduce it, and I'll need more information from your side.

git clone https://github.com/etternagame/etterna
cd etterna
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DWITH_CRASHPAD=OFF -G "Unix Makefiles" ..
-- Looking for posix_fadvise - found
-- cppcheck not found. cppcheck target will not be created.
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Doxygen not found. Documentation target will not be created.
-- LDoc not found. Documentation target will not be created.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/etterna/build

make
make install
[  1%] Built target ogg
[  4%] Built target vorbis
[ 28%] Built target libcurl
[ 29%] Built target sqlite3
[ 30%] Built target SQLiteCpp
[ 31%] Built target discord-rpc
[ 31%] Built target minilua
[ 31%] Built target buildvm_arch_h
[ 32%] Built target buildvm
[ 32%] Built target lj_gen_vm_s
[ 32%] Built target lj_gen_headers
[ 32%] Built target lj_gen_folddef
[ 42%] Built target libluajit
[ 42%] Built target muFFT-avx
[ 42%] Built target muFFT-sse
[ 42%] Built target muFFT-sse3
[ 43%] Built target muFFT
[ 43%] Built target glfw
[ 43%] Built target pcre
[ 46%] Built target zlib
[ 48%] Built target libmad
[ 49%] Built target fmt
[ 50%] Built target nowide
[100%] Built target Etterna
Install the project...
-- Install configuration: "Release"
CMake Error at cmake_install.cmake:77 (file):
  file cannot create directory: /usr/local/Etterna.  Maybe need
  administrative privileges.

make: *** [Makefile:120: install] Error 1

doas make install
[  1%] Built target ogg
[  4%] Built target vorbis
[ 28%] Built target libcurl
[ 29%] Built target sqlite3
[ 30%] Built target SQLiteCpp
[ 31%] Built target discord-rpc
[ 31%] Built target minilua
[ 31%] Built target buildvm_arch_h
[ 32%] Built target buildvm
[ 32%] Built target lj_gen_vm_s
[ 32%] Built target lj_gen_headers
[ 32%] Built target lj_gen_folddef
[ 42%] Built target libluajit
[ 42%] Built target muFFT-avx
[ 42%] Built target muFFT-sse
[ 42%] Built target muFFT-sse3
[ 43%] Built target muFFT
[ 43%] Built target glfw
[ 43%] Built target pcre
[ 46%] Built target zlib
[ 48%] Built target libmad
[ 49%] Built target fmt
[ 50%] Built target nowide
[100%] Built target Etterna
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/Etterna/Etterna
CMake Error at cmake_install.cmake:87 (file):
  file INSTALL cannot find
  "/home/user/etterna/build/gn_crashpad/crashpad_handler": No such file or
  directory.

make: *** [Makefile:120: install] Error 1

Currently, we don't support installing into the system via make install.
It's attempting to use "install" the crashpad_handler because that is a part of how we distribute the game on GitHub Actions.
If you want to build the game, I recommend building, then running the game right in that directory, or moving the binary and game folders, into a separate folder (similar to how our release Linux binary looks).


Handle attempted caching of failed network image better

If either image or image.info is null, treat it as an image of size zero.
Fixes https://github.com/flutter/flutter/issues/19766

I don't really have a good way to test for this right now


A 'Delete' dialog pops up when pressing 'Delete' against one blob in one Public connected ADLS Gen2 blob container

Storage Explorer Version: 1.24.0
Build Number: 20220424.1
Branch: rel/1.24.0
Platform/OS: Windows 10/Linux Ubuntu 20.04/MacOS Monterey 12.3 (Apple M1 Pro)
Architecture ia32\x64
How Found: From running test cases
Regression From: Previous release (1.23.1)
Steps to Reproduce

Expand one ADLS Gen2 storage account -> Blob Containers.
Create a blob container -> Upload one blob.
Right click the blob container -> Set the container public access level to 'Public read access for container and blobs'.
Copy the URL of the blob container -> Connect the blob container by selecting 'Anonymously (my blob container allows public access)'.
Go to the connected blob container -> Select the blob -> Press 'Delete'.
Check no dialog pops up.

Expected Experience
No dialog pops up.
Actual Experience
A 'Delete' dialog pops up.

Verified this issue on the rel/1.24.0 build 20220426.1. Fixed.


Closes: #1 @hemantishere

Updated validations.py python script.
Fixed the behavior of validate_user function in validations.py.
Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

@googlebot I signed it!


Documentation culture settings are ignored in the stylecop.json

I use next settings in the stylecop.json with StyleCop Analyzers 1.1.118
{
    "documentationRules": {
        "documentationCulture": "ru-RU"
    }
}

StyleCop warns me [SA1623] The property's documentation summary text should begin with: 'Gets or sets', but I use "documentationCulture": "ru-RU" and it should not warn me because my code is correct for this culture
/// <summary>
/// Получает или задает что-то.
/// </summary>
public string Foo { get; set; }

"Gets or sets" is "Получает или задает" in ru-RU (it always worked in Visual Studio with Settings.StyleCop file for .Net Framework projects)
My csproj
<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <TargetFramework>netstandard2.0</TargetFramework>
        <CodeAnalysisRuleSet>../main.ruleset</CodeAnalysisRuleSet>
        <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
    </PropertyGroup>

    <ItemGroup>
      <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" />
    </ItemGroup>

    <ItemGroup>
        <AdditionalFiles Include="../stylecop.json" />
    </ItemGroup>

</Project>

I't a copy of #2958. Why do yo close it? It's not solved.

@artem-voropaev The issue is a bug in an external project (dotnet/roslyn#29014). We cannot resolve it here.

but my sdk version is not 2.1.300

@artem-voropaev You'll need to ask in dotnet/coreclr#20979 which specific version of the SDK first contains the fix

Bug is still alive in  3.0.100 and Micrsoft closed and merged https://github.com/dotnet/coreclr/issues/20979. May be problem on your side?

It works for me in VS (with locale de-DE), but I get the same error when I use JetBrains Rider.

@fubar-coder You'll want to file that bug with JetBrains Rider to get it fixed.

Duplicate of #2958


"Show tooltip on buttons" has disappeared

I disabled Show tooltip on buttons in Firefox and i then logged in from Chrome. Now the tooltip is enabled again and i can't find the Show tooltip on buttons settings any more in Firefox or Chrome.
In the picture you can see that Show tooltip on buttons is there and below it is not there. That is two different Webmin's but both are running the same version of Webmin and Authentic theme. How can an option disappear like that?

Yes, now this option is always enabled!

Are you kidding me? I can't turn off the tooltips?

Why would you want to turn off the tooltips? Besdies, it's shown with 800ms delay, meaning you would only see it if you hold on the button.
You can easily remove it by adding this code to your extensions:
$(document).on('ready pjax:end', function() {
    setTimeout(function() {
    	$('[data-toggle="tooltip"]').tooltip('disable');
    }, 1000);
})

They get stuck and it look likes this,  that is one reason...

And now i have this stuck on the page and it won't go away until i refresh or change page:

Because, having to many little features just clogging configuration page and terrifies the user.
I can not reproduce it. Nothing should get stuck really. If so it's a bug.
How do I reproduce it?

I only keep the mouse pointer on the button to the page is loaded.


How I make multiple ping and how I setup the time of ping like 1 ping per 10 second

how I make multiple ping I see on config.json only 1 can I add more?

To ping multiple websites, set up your config.json like this:
{
  "links": ["LINK 1", "LINK 2"]
}

To modify the interval in between pings, try this:
pinger.ping([links], 10); // the second arg is the interval

This may not work as I haven't messed around with this package and repo for a while lol.

Please tell me if my solution works so I can close this issue!!

{
"links": ["https://nexus.5xi.repl.co", "https://pingr.dcn0.repl.co"]
}
like this? I try its say Successfully Pinged https://nexus.5xi.repl.co,https://pingr.dcn0.repl.co with status 404 found
but the ping interval is work

I ask chatgpt to but its still same its say like above

Fork the updated version of the repo and see if that works.
Also, I wouldn't recommend asking Chat GPT for coding advice, instead use something like Github Copilot.

Did that fix the issue or not?

Ok Thanks That Works I Will Close The Comment


Feature/cli sp37 iteraction

@noandrea the failing test(test_name_validation_fails) on jenkins is passing on my local deployment.


[question/suggestion] Support for extension (+ settings)

I have just found this interesting project.
Background for the issue
Currently, I use disposables based on whonix-ws-dvm. I customize the DVM:
http://www.dds6qkxpwdeubwucdiaord2xgbbeyds25rbsgr73tbfpqpt4a6vjwsyd.onion/wiki/Tor_Browser/Advanced_Users#DVM_Template_Customization
because there is no other way to both persist extensions and user.js. uBlock Origin and uMatrix are very good for additional privacy protection. However, the block lists they support need regular updating to keep them fresh. This requires regular starting of the DVM to update them. Additionally, this whole "discouraged" procedure of running torbrowser in the DVM makes it challenging to re-apply all the settings upon each update of Tor Browser (through Tor Browser downloader ran in the DVM).
Question / Suggestion
Is it possible to also install/configure/update extensions in such split-configuration?
Example usage:

Have the software (torbrowser) in the whonix-ws-dvm, as usual, without customizing that DVM
Then, have extensions (uBlock Origin, uMatrix) installed in another DVM with a mechanism to auto-refresh their block lists in the DVM. That same DVM can be used also for other browser customizations.
Have as many DVMs, similar to that from 2, as necessary.
Use the browser by starting disposables based on a DVM from 3.
Ideally, somehow combine that with firewall restrictions (which I am still researching for). I am mentioning that because in Qubes it might be possible to have such firewall rules for each disposable (and/or DVM).

Note: I am aware that installing random extensions can compromise anonymity etc. if one doesn't know what one is doing. In the described scenario, I am rather envisioning usage with so called "hard blocking" rules for uBO/uM without JS, even with blocked (or limited to 1st party) CSS/Images, so "leaking" to other parties is extremely limited (much more than with default "stock" Tor Browser browser).

Note: I am aware that installing random extensions can compromise anonymity etc.

This warning is not just about malicious extensions spying on you though. It's much bleaker: Any changes you make to how Tor Browser operates (as far as the website can observe) will generally decrease the size of your anonymity set, i.e. make you more fingerprintable.
An individually installed ad blocker is pretty much the worst case, because it changes what resources a website can request over the network, how the website is rendered, and how you interact with the website, all of which are observable and they're specific to the ad blocker, its version, the configured filter lists, and their version.
Of course I hate ads as much as anyone, and would love to block them. In a Tor Browser context, the only viable approach I can see is to try and blend in with the Tails crowd, by somehow replicating their exact Tor Browser setup (which ships an ad blocker). The extension and filter list versions should then simply be frozen to whatever they are in the latest Tails release. It's a lot of work... But it's orthogonal to Split Browser.

I don't quite see how a website can fingerprint better a user who simply blocks 3rd party requests, unless the 1st party also owns the 3rd party and deliberately correlates all HTTP requests between the two hosts.

There's a lot stuff. You could look into what Tor Browser does and/or https://www.whonix.org/wiki/Data_Collection_Techniques

To my mind, if blending in the crowd should be considered, the crowd should be the biggest one (Android).

I don't see how blending in with the Android crowd would be technically possible. Technically it's not even a crowd. It's just a huge number of easily trackable individuals. I assume that most don't use any anti-fingerprinting which is consistent with real life surveys. The Android crowd isn't 1 shared identifier. So it's hard to blend in unless somehow simulating always being a unique, new, different fingerprinting. I don't know any project that works on that. Tor Browser is the biggest project working towards a shared fingerprint.

emanruse:

There's a lot stuff. You could look into what Tor Browser does and/or https://www.whonix.org/wiki/Data_Collection_Techniques

Unfortunately, that general information does not answer the actual question. So far, for many years, I have not been able to find a single actual research or even a simple proof that having:

JS disabled
3rd party resources blocked
tracking hosts blocked

increases the fingerprint. I have only found proof of the opposite.

Oops. I misread the original. I missed reading "better". My answer was
for "fingerprint without JavaScript", which is obviously possible:
cookies don't require JS.
But you asked about "better fingerprint". No, I didn't say one gets a
more fingerprintable when disabling JS.
https://support.torproject.org/tbb/tbb-34/

I don't see how blending in with the Android crowd would be technically possible.

Perhaps through sophisticated mimicry.
Noise.
Biggest != perfection reached.

In theory, yes. In practice, (HTTP) web browsers are complex beasts,
mimicking operating systems. Millions of lines of code, constantly
changing and privacy isn't a top priority for upstream.
It's hard to tame browsers. Librefox, arkenfox, Mullvad Browser, Tor
Browser... All with tons of open issues even trying to reduce
fingerprinting / having a shared fingerprint. Mimicry would be even
harder than a shared fingerprint.
So I am afraid I find it unlikely. But happy to be wrong should such a
project emerge.
It might be slightly more likely that an alternative Internet that is
not based on modern web standard, HTTP emerges. Perhaps Gopher or
something similar to it.
https://en.wikipedia.org/wiki/Gopher_(protocol)
Since the protocol is "1000 times" simpler, it seems much easier to have
a shared fingerprint or maybe no fingerprint at all because all users
using that look alike.

Technically it's not even a crowd. It's just a huge number of easily trackable individuals. I assume that most don't use any anti-fingerprinting which is consistent with real life surveys.

What is the evidence that most Tor/Whonix users are all educated in how not to be tracked easily?

Not sure how that topic came up but I don't have data on that.
Additionally it's hard to prove a negative "not easily tracked". If it
was the case then it would probably be more likely that some research
paper "Tor Browser users are easily tracked" exited.
By comparison, a normal Android user using a stock ROM as far most users
do is "100%" trackable even with simple cookies. Even worse if browser
is logged into Google account. Not even supercookies. Not even JS based
fingerprinting needed. Tracking default Tor Browser is harder due to
disabling lots of tracking.

I am not saying it's worse. It would require research to compare that.
Reason why Whonix only sets environment variables, doesn't customize Tor
Browser files / recompile, are documented here:
https://www.whonix.org/wiki/Tor_Browser#You_should_Disable_JavaScript_by_Default!
(Updated just now.)

When I say research, I mean something like https://www.freehaven.net/anonbib/ - high quality, comprehensive, a structured approach, defined methods, mostly group effort, group consensus, discussed with other researchers, ideally peer reviewed.
Since this is complex stuff, I am not touching it but referring to The Tor Project (TPO) because they're working with researchers.
If that interests you, I suggest to get in touch with other researchers. Good research could actually result in TPO to changing the browser defaults.


KernelDensity

Hello,
When we use 2 times the function KernelDensity, we don't have the same results.
When you use tree function, you have max_features=sqrt, but we must have max_features = max for this function.
The other problem is that this funtion create 2 models and 1 table, not juste 1 model. For "name" parameter, if we enter schema + ".kerneld_iris", we have :
schema + ".kerneld_iris" model
schema + ".kerneld_iris_KernelDensity_Tree" model
schema + ".kerneld_iris_KernelDensity_Map" table
I think the last 2 shoud be drop.
Regards,
Alexandre

Due to the complexity of KDE, we found a way to compute it using different relations. At the end 2 elements are created:

a KDE table using multiple steps to compute as many points as possible
a RF model to learn on the table the distribution
The table can be dropped but it is used by some specific functions.
In the next PR, we change the value max_features to set it to max and close the issue.


Enable PDF Generation & PR Preview

Docs Build status updates of commit 6d637d2:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.publish.config.json
:white_check_mark:Succeeded

xamarin-communitytoolkit/docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Through model saves are not supported

When using a ManyToManyField with a through model, the tenant_id is not applied to the through model when the parent instance is saved.
Consider the following:
  class Store(TenantModel):
    tenant_id = 'id'
    name =  models.CharField(max_length=50)
    address = models.CharField(max_length=255)
    email = models.CharField(max_length=50)

  class Product(TenantModel):
    store = models.ForeignKey(Store)
    tenant_id='store_id'
    name = models.CharField(max_length=255)
    description = models.TextField()
    class Meta(object):
      unique_together = ["id", "store"]

  class Purchase(TenantModel):
    store = models.ForeignKey(Store)
    tenant_id='store_id'
    product_purchased = models.ManyToManyField(Product, through=Transaction)

 class Transaction(TenantModel):
    store = models.ForeignKey(Store)
    tenant_id='store_id'
    purchase = TenantForeignKey(Purchase)
    product = TenantForeignKey(Product)
    date = models.DateField()

When a Purchase instance is created and/or the product_purchased field is updated, the tenant_id is not set for the Transaction.
This appears to be because the tenant_value is set in the model save function:
    def save(self, *args, **kwargs):
        tenant_value = get_current_tenant_value()
        if not self.pk and tenant_value and not isinstance(tenant_value, list):
            setattr(self, self.tenant_field, tenant_value)

        return super(TenantModelMixin, self).save(*args, **kwargs)

This means it is not called.

Hi @rob101,
could you give an example around this? I would assume that you create a Transaction objects and then do purchase. product_purchased.add(transaction). In which case the save would be called.

Hi @louiseGrandjonc,
I ran into this issue myself today. So, I did a little digging in Django 3.0 source code

I would assume that you create a Transaction objects and then do purchase. product_purchased.add(transaction). In which case the save would be called.

seems to be not true. Instead, django calls the manager queryset's bulk_create method.
add(...) calls _add_items()
https://github.com/django/django/blob/3.0.10/django/db/models/fields/related_descriptors.py#L944
_add_items() calls bulk_create(..)
https://github.com/django/django/blob/3.0.10/django/db/models/fields/related_descriptors.py#L1144
I noticed TenantManager does overwrite bulk_create to set the tenant attribute. However, Django is using _default_manager.using(..).bulk_create(..) instead of _default_manager.bulk_create(..) so it wasn't applied, below is my finding using pdb.
(Pdb) self.through._default_manager.using(db).bulk_create
<bound method QuerySet.bulk_create of <QuerySet []>>
(Pdb) self.through._default_manager.bulk_create
<bound method TenantManagerMixin.bulk_create of <django_multitenant.models.TenantManager object at 0x7fc149b57ee0>>

My current workaround is to set the through_defaults (using @rob101 's example):
purchase.product_purchased.add(transaction, through_defaults={transaction.tenant_field: get_current_tenant_value()}


support New TileSet Editor zooming use CTRL/CMD + MouseWheel

issue #22976 , i have implement the zooming action use CTRL/CMD + MouseWheel

Why is CTRL required? The viewport and texture region editor lets you zoom in/out with just mouse wheel.

Why is CTRL required? The viewport and texture region editor lets you zoom in/out with just mouse wheel.

In my opinion , some operations such as drawing a polygon sometime need to scroll the view, the default mousewheel handle is to scroll the view, so add CTRL when zoom in/out

Please squash the commits together, see PR workflow.

thanks , i have squashed the commits

Thanks!


Change issues status "waiting" when needed

I'll take care of changing statuses to issues ;-)

Can we close the ticket? I see you created a "waiting" category.
@supervxn


make test and nile setup <pkey_alias> error

both make test and nile setup <pkey_alias> throw
File "<path>/starknet-graph/env/lib/python3.9/site-packages/marshmallow_dataclass/__init__.py", line 358, in class_schema
    _RECURSION_GUARD.seen_classes.clear()
AttributeError: '_thread._local' object has no attribute 'seen_classes'

on my intel macbook air 2020 with a newly installed nile

Hey @lucadonnoh, thanks for posting this issue! The dataclass issue should be resolved with pip install marshmallow-dataclass==8.5.3. #110 also aims to integrate the fix automatically.


Test metadata files: bump expiration date and resign

Description of the changes being introduced by the pull request:
Our newly added metadata files in the
tests/repository_data/fishy_rolenames/metadata directory have an expiry
date until "2021-10-22T11:21:56Z" and today while running the tests on
develop branch I recived this error:
ExpiredMetadataError("Metadata X expired on Fri Oct 22 11:21:56 2021")
when running the tests in tests/test_updater.py file and more precisly
the TestUpdaterRolenames.test_unusual_rolenames() test.
That's why I decided to bump the expiration date to a random time in
the future (October 22-nd 2050) and I had to resign all of the metadata
files.
Signed-off-by: Martin Vrachev<EMAIL_ADDRESS>Please verify and check that the pull request fulfills the following
requirements:

[ ] The code follows the Code Style Guidelines
[ ] Tests have been added for the bug fix or new feature
[ ] Docs have been added for the bug fix or new feature

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.1%) to 98.477%

Totals

Change from base Build<PHONE_NUMBER>:
1.1%

Covered Lines:
3782

Relevant Lines:
3808

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.1%) to 98.477%

Totals

Change from base Build<PHONE_NUMBER>:
1.1%

Covered Lines:
3782

Relevant Lines:
3808

💛  - Coveralls


[camera] 3D camera not working correctly (maths)

So I have my camera at 0,0,0 pointing to  a unit cube at 0,0,10 and the cube doesn't render on my mac. Ive found weirder versions of this bug, but this is the simplest I can replicate.
https://pastebin.com/FTRGTAQR

Issue is related to camera matrix maths, probably hitting some division by 0...
Using camera.position = (Vector3){0.001f, 0.0f, 0.0f};, it works ok.

So how do I fix this without checking that values are non zero every frame?

@yummydev I don't know, that module should be reviewed. Contributors are welcome!

@raysan5
Hi, I also curious about the issue.
So I create the fix.
https://github.com/raysan5/raylib/pull/1013

@Ushio thank you very much for the fix!


1069 plant layer should be default

Basics

[x] I added a line to changelog.md
[x] The PR is rebased with current master.

[ ] References to issues, e.g. close #X, are in the commit messages and changelog.
[ ] The buildserver is happy.

Checklist

[ ] I have installed and I am using pre-commit hooks
[ ] I fully described what my PR does in the documentation
[ ] I fixed all affected documentation
[ ] I fixed the introduction tour
[ ] I wrote migrations in a way that they are compatible with already present data
[ ] I fixed all affected decisions
[ ] I added automated tests or a manual test protocol
[ ] I added code comments, logging, and assertions as appropriate
[ ] I translated all strings visible to the user
[ ] I mentioned every code or binary not directly written or done by me in reuse syntax
[ ] I created left-over issues for things that are still to be done
[ ] Code is conforming to our Architecture
[ ] Code is conforming to our Guidelines
[ ] Code is consistent to our Design Decisions
[ ] Exceptions to any guidelines are documented

Review

[ ] I've tested the code
[ ] I've read through the whole code
[ ] I've read through the whole documentation
[ ] I've checked conformity to guidelines

@4ydan Can you fix the end-to-end tests as discussed in the meeting today? :)


fix: fixed number of colors to teams, not random anymore

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

did something weird when pushing, it wanted me to pull before pushing because of some conflicts, not 100% what happened. Could be that my previous commits where with the wrong line endings


G4cout, G4cerr, G4endl

It's recommended to use the Geant4 versions of iostream methods, and I noticed a few instances where the std library versions were used. So I used grepped search/replace to:

Swap the remaining instances of cout, cerr, endl for G4cout, G4cerr, G4endl
Remove the iostream includes

Great, thanks for the clean up!


Add calligraphic and fraktur font variants

I noticed these were not recognized when testing out the classifier. Detexify detects them.
I noticed that these are not technically "symbols", since they require a function call (cal(F)), so I don't know if this works in the current system. If not, feel free to close the PR

Functions are not currently supported. But it shouldn't be hard to implement. I'll leave this PR open until I have spare time to implement it.

I just attempted to support frak/bb/cal, then I found that Detexify's dataset of mathfrak/mathds/mathbb/mathcal isn't complete. Besides, adding these symbols lowers the overall accuracy. So I prefer to not support them for now.


Load first slide, then others?

First off, fantastic plugin! Thank you for your hard work.
I'd like to display the first slide in the sequence while the others load behind it, as I have a client with many slides (of relatively large size). Is this possible?
The site: http://photokona.worksprod.com/
Thanks again!

I have the same issue, i have huge pictures to load, have you found anything @wjwhelan ?

@acidjames Nope, not yet.

How about now? have you found anything @wjwhelan ?


Remove bootstrap and agent docs

Bootstrap removed here: https://github.com/MainfluxLabs/docs/pull/19

Fix agent and export services docs.


Feature: Public mdbook to comtrya.dev

Description
Create an action or step in release action to public mdbook documentation to comtrya.dev.

Completed with PR #443
Live at github pages: https://comtrya.github.io/comtrya/


performance testing for Avro Serialization/Deserialization ?

Description
i am doing one Performance Testing comparing serialization and deserialization of   Avro record using Confluent Avro serializer, vs our in house manual serializer.
i found that with large size objects avro serializer takes more time.
but i have a doubt about how i am using it.
what i am using is:
var  _avroserde = new AvroSerializer(schemaRegistry);
and then benchmarking the method:
**public byte[] SerializeDummy(string Topic,DummyMsgAvro record)
{
        return _avroserde.Serialize(Topic, record);
    }**

while we produce the message,it is supposed to cache the schema and so serialization should be faster. But here with large object its slower so i have two questions:

am i serializing it right for the purpose of performance benchmark? should we only test it with producer producing to the topic?
in that(producer) case serialization happens on client using cached schema or how that happens? will that be actual test for the comparison? because ultimate goal is to compare that more number of messages are pushed/second ?

it will be helpful if you could respond quickly.
Confluent Kafka version 1.0.0 beta
How to reproduce
Checklist
Please provide the following information:

[ ] Confluent.Kafka nuget version:
[ ] Apache Kafka version:
[ ] Client configuration:
[ ] Operating system:
[ ] Provide logs (with "debug" : "..." as necessary in configuration)
[ ] Provide broker log excerpts
[ ] Critical issue

what you're doing looks correct.
in my own testing, I've found the .net avro serializers to be relatively slow. the primary argument for using avro is it's a good match for the requirements of a streaming platform (and Confluent supports it throughout all components, e.g. Schema Registry, KSQL, Connect). Note: in the future, Confluent may support additional formats, even though they are not the best match for the streaming use-case. There are pros/cons for all of them.

what you're doing looks correct.
in my own testing, I've found the .net avro serializers to be relatively slow. the primary argument for using avro is it's a good match for the requirements of a streaming platform (and Confluent supports it throughout all components, e.g. Schema Registry, KSQL, Connect). Note: in the future, Confluent may support additional formats, even though they are not the best match for the streaming use-case. There are pros/cons for all of them.

Hello,
Your testing has been done on large size records/objects ?
I haven't found big difference in terms of timing/performance. Using an AVRO with Registry against a custom serialized on small records like : (Datetime,int,string,int,float,float,int,float,int,int). What on my test makes the difference, is moving across the messages as strings, which is faster and keep less storage size but you will need to add the consumer parsing time.

thanks for the input @smeana
i've only tested relatively small message sizes (100 bytes or so). I was comparing performance specifically against protobuf (and newtonsoft json)
if you're passing data as a string, of course you need to include the time to deserialize the string in the cost of deserialization :-)

Many thanks @mhowlett
Do you have any kafka example using protobuf? :)

the repo has a protobuf example:
https://github.com/confluentinc/confluent-kafka-dotnet/tree/master/examples/Protobuf


How to test plugins commands

thinking of another script sending a message to irc and sees if message from bot corresponds to expected message. feel free to discuss

That seems like the easiest way, but the only trouble would be figuring out two IRC bots. Otherwise, this looks the most viable way.


fastify integration tests

it also highlights that subscriptions are broken on node.js versions where stuff is polyfilled.
Moving tests to supertest so we are testing the actual thing

Are we sure supertest is working fine with SSE?

@ardatan 17 passes: https://github.com/dotansimha/graphql-yoga/runs/4780584799?check_suite_focus=true
14 fails: https://github.com/dotansimha/graphql-yoga/runs/4780584741?check_suite_focus=true


Bump rich log

Replaces TextLog with RichLog and bumps Rich version

This this somehow escape into the wild? https://pypi.org/project/textual-dev/1.1.0/
See also this conversation on Discord.


Not able to start retronas in the docker container

Hi,
first of all thanks for the good job!
I'm trying to setup RetroNAS on a docker container but I'm facing some issues. Did you manage to get it properly working?
I'm not able to start the setup using
docker exec -it retronas retronas

Here is the output that I get:
/opt/retronas/retronas.sh: line 7: /opt/retronas/config/retronas.cfg: No such file or directory
/opt/retronas/retronas.sh: line 8: /common.sh: No such file or directory
/opt/retronas/retronas.sh: line 16: CHECK_ROOT: command not found
bash: /disclaimer.sh: No such file or directory
User did not accept terms of use, exiting
/opt/retronas/retronas.sh: line 54: EXIT_CANCEL: command not found
Config file missing, creating it
cp: cannot stat '.default': No such file or directory
/opt/retronas/retronas.sh: line 66: /opt/retronas/config/retronas.cfg: No such file or directory
/opt/retronas/retronas.sh: line 77: ${ANCFG}: ambiguous redirect
/opt/retronas/retronas.sh: line 96: /opt/retronas/config/retronas.cfg: No such file or directory
Fetching latest RetroNAS scripts...
fatal: not in a git directory
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
/opt/retronas/retronas.sh: line 138: CLEAR: command not found

I have not touched this for over 2 years now and I'm not sure I ever had it working, to be honest. It was a quick one-off thing to see if it worked.
You'd want to do docker compose for this, not docker exec.

Yes I used the docker compose, the container starts properly (also building the image locally).
Ok don't worry, I will try to do some experiments ;)


add ability to hide gutter

I have implemented functionality to hide gutter: config.show_gutter = false. I have left it visible by default. Please merge.

@rxi  This pull request is still open after two years. Any comment on that?

This project mostly abandoned. Or completed. Depends on point of view. Try https://github.com/lite-xl/lite-xl


please add mode - code included - debugged

in src\properties-view-provider.ts
// rwx rwx rwx by kris kaczmarczyk
function modeToPermission(inbMode: string) : string {
	inbMode = '000' + inbMode;
	inbMode = inbMode.substring(inbMode.length - 3);

	var out = '';
	var inbMode1 = inbMode.substring(0,1);
	if (inbMode1 === '1') {
		out += 'r';
	} else {
		out += '-';
	}
	var inbMode2 = inbMode.substring(1,2);
	if (inbMode2 === '1') {
		out += 'w';
	} else {
		out += '-';
	}
	var inbMode3 = inbMode.substring(2,3);
	if (inbMode3 === '1') {
		out += 'x';
	} else {
		out += '-';
	}
	return out;
}

// rwx rwx rwx
function displayMode(inMode: number) : string {
	var oMode = '0000' + (inMode & 0o07777).toString(8);
	oMode = oMode.substring(oMode.length - 3);
	var oMode1 = parseInt(oMode.substring(0,1)).toString(2);
	var oMode2 = parseInt(oMode.substring(1,2)).toString(2);
	var oMode3 = parseInt(oMode.substring(2,3)).toString(2);
	return inMode + ' -> o' + oMode + ' [' + modeToPermission(oMode1)+ ' ' + modeToPermission(oMode2)+ ' ' + modeToPermission(oMode3) + ']';
}

	const rows: TableRow[] = [
		new PropertyRow('NameKK', cellWithButtons(name, editButton(uri), copyButton(name))),
		directory != null ? new PropertyRow('Directory', cellWithButtons(externalLink(directory), copyButton(directory))) : null,
		new PropertyRow('Full Path', cellWithButtons(externalLink(uri), copyButton(uri))),
		new PropertyRow('Size', prettyBytes(stats.size) + exactSize),
		stats.created ? new PropertyRow('Created', formatDate(stats.created)) : null,
		stats.changed ? new PropertyRow('Changed', formatDate(stats.changed)): null,
		stats.modified ? new PropertyRow('Modified', formatDate(stats.modified)): null,
		stats.accessed ? new PropertyRow('Accessed', formatDate(stats.accessed)): null,
		**stats.accessed ? new PropertyRow('Mode', displayMode(stats.mode)): null,**
	].filter(r => r != null) as TableRow[];

async function baseData(uri: Uri): Promise<BaseData>
{
	if (uri.scheme == 'file')
	{
		const path = uri.fsPath;
		const name = basename(path);
		const directory = Uri.file(dirname(path));
		// bigint throws on format later
		**const { size, birthtime, ctime, mtime, atime, mode } = await promisify(fs.stat)(path);**

		return {
			path, name, directory,
			stats: {
				size,
				created: birthtime,
				changed: ctime,
				modified: mtime,
				accessed: atime,
				mode: mode,
			},
		};
	}
	else // Virtual
	{
		const path = uri.toString();
		const name = basename(uri.toString());
		const directory = null;
		const { size, ctime, mtime } = await vscode.workspace.fs.stat(uri);

		return {
			path, name, directory,
			stats: {
				size,
				created: ctime <= 0 ? null : new Date(ctime),
				changed: null,
				modified: mtime <= 0 ? null : new Date(mtime),
				accessed: null,
				mode: 0,
			},
		};
	}
}

I am not allowed to branch , so here I am
it will display something like this:
Mode 33206 -> o666 [rw- rw- rw-]

above works on widows and Linux - it will be very helpful to see permissions on the files? Don't you agree, I was trying to create PR but was not able too.

To create a PR in a repository you cannot write to, you have to fork it first, then you can branch in your own fork and create a PR for that.
I'll have to look at that in more detail first and clean it up before integrating, no guarantees though...

thank you, i did forking and trying to create decent PR for you as soon as possible

would be great if i could see the mode for Linux/Unix (did not tested Mac but it is unix underneath so should work) anyway thank you I have learn a lot a specially how to debug Run VSCode, so much magic lol

One more: I could get Run Debug on windows only, so most I could see is Iron Maiden number o666 , who would thought that !


if zoomed in gitblit completely hides the "repository url" and git menus

I couldn't see a link to clone Wikimedia Foundation's MediaWiki code.
It turns out if you're zoomed in in Firefox, gitblit's Summary window simply hides "repository url" and the [Git v] dropdown underneath it. They don't seem to be moved to an overflow menu or hamburger icon, they vanish from the UI. You can reproduce with https://dev.gitblit.com/summary/gitblit.git , just zoom in a few times until:

This happens in Firefox and chromium-browser.
Workaround: zoom out, but you don't know what you're missing. "Guess I'll skip this project and join another that will let me clone it."

Interesting.  That is a side-effect of using a Bootstrap responsive class.
-J

@skierpage This is a conflict between Bootstrap responsiveness and browser accessibility functions.  I don't know of a great way to resolve this.
I could disable the responsive behavior here to resolve your issue on a desktop browser but that will cause misleading rendering on tablets and phones.  So effectively this would only shift the problem, not solve it.
The good news for you (or maybe not so good news) is that WMF has made it clear over the last 12 months that their Gitblit install is deprecated in favor of an integrated Phabricator stack.  Perhaps your experience in that app will be better.
If you can submit a PR that resolves your issue while not shifting the problem, I'll be delighted to merge it.  For now, I'm afraid, I am closing this issue.  Sorry to disappoint.


Add --sbt-launch-jar command line arg to client

This will allows tools that bundle their own instance of the launch jar to run sbt server with  --sbt-launch-jar=$BUNDLE_LUANCHER -bsp so that the command works even when there is no sbt script on the tool's path.
See #6176

How would this expected to be used? Would the .bsp/sbt.json be generated with this argument passed to the launch jar? Since it's already using the launch jar, why can't it use the classpath available in the launched process already?


docs: readme

Changing the name and link of a social network
Please read contributing guidelines and remove this line.

The devrel change is plain wrong
Meh @ twitter


jenkinsfiles: use quay.io images in Jenkins

1.9 pipelines were still building images on the spot and storing them in a local Docker instance on the nodes. This was working fine up until the GKE node decided not to cooperate with certificate issues resulting in all 1.9 GKE tests failing due to ImagePullBackOff errors.
Trying to fix the certificate issues eventually turned out to be a mess, with issues such as x509: cannot validate certificate for <IP_ADDRESS> because it doesn't contain any IP SANs and x509: certificate signed by unknown authority, even though manual testing was confirming the certificate to be valid and contain the proper SANs.
To work around the issue, we change 1.9 Jenkins pipelines to use quay.io images as we do since 1.10, removing the need for local image builds and as a bonus should speed up the pipelines a little bit.

test-backport-1.9

/test-gke

/test-gke

/test-1.19-4.9

/test-backport-1.9

@nbusseneau I assume the tests shouldn't have failed that much? :thinking:

@aanm I don't know why they failed here specifically on the upgrade/downgrade tests, and of course now the jobs are gone. I will retrigger the CI.

/test-backport-1.9

/test-backport-1.9

So there is definitely an issue with K8sUpdates Tests upgrade and downgrade from a Cilium stable image to master, and we also hit K8sChaosTest Restart with long lived connections TCP connection is not dropped when cilium restarts on both GKE retries.
For GKE / K8sChaosTest, it seems the netperf-server loses connectivity:
Warning  Unhealthy  26s (x21 over 3m46s)  kubelet            Readiness probe errored: command "netperf -H <IP_ADDRESS> -l 1" timed out

However I fail to see how this is related to the PR.
For upgrade/downgrade tests, I think we are hitting something similar to #15059. Investigating.

I have issues reproducing this locally, but while debugging I'm not quite sure the images used are the same. I think this comes from the way Ginkgo arguments are passed down in our CI. Will continue tomorrow.


Ionic changes to WKWebView (For Code Review only)

As of August 16th, 2016, this is not ready to be merged.  I am just creating this PR to facilitate dialogue and chat about the changes.
Thanks,
Dan
Platforms affected
iOS
What does this PR do?
Resolves some DOM exceptions and XHR challenges with WKWebView
What testing has been done on this change?
We have tested it manually on iOS 9 and iOS 10 across several different Cordova apps.
Checklist

[x] ICLA has been signed and submitted to<EMAIL_ADDRESS>[x] Reported an issue in the JIRA database
[x] Commit message follows the format: "CB-3232: (android) Fix bug with resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform affected.
[x] Added automated test coverage as appropriate for this change.

Thanks for this! I just merged #13, so can you rebase? I'll review after that is done.
Note that the CI auto builds your PR, and it has jshint errors: https://travis-ci.org/apache/cordova-plugin-wkwebview-engine/builds/152735998

Hi @shazron  sure thing! I take care of this :)

Hi,
Some issues I've encountered, pre-testing:

Can you prefix the issue with CB-10109 so it can be automatically tracked by the apache bots to https://issues.apache.org/jira/browse/CB-10109
All traces of "Ionic" have to be removed, in the docs or the code -- you'll have to rework the docs so that they are Cordova centric. All the contributors to this project (indeed any Apache project) are treated as if they are independent of any company and their contributions should reflect as such. Attribution is through the "Author" of the commit.
jshint errors that need to be resolved:

src/ios/xhr.js: line 55, col 8, Creating global 'for' variable. Should be 'for (var property ...'.
src/ios/xhr.js: line 58, col 8, Creating global 'for' variable. Should be 'for (var property ...'.
src/ios/xhr.js: line 55, col 8, 'property' is not defined.
src/ios/xhr.js: line 56, col 20, 'property' is not defined.
src/ios/xhr.js: line 58, col 8, 'property' is not defined.
src/ios/xhr.js: line 59, col 9, 'property' is not defined.
src/ios/xhr.js: line 59, col 64, 'property' is not defined.
src/ios/xhr.js: line 60, col 16, 'property' is not defined.
src/ios/xhr.js: line 60, col 40, 'property' is not defined.

The contributor, in this case, @manucorporat, must file an iCLA since this is a non-trivial contribution. This is required. I did not find one that was filed already.
The contributor's employer, in this case @driftyco, should file a CCLA. Note that this is not required, but see this FAQ item on why its a good idea (particularly for the committer).

I'll proceed with reviewing the actual functionality of the code next week, unless there are any blockers to  issues 2, 4 and 5 that I have raised.

Nice work! Due to some problems with WKWebView in iOS9 namely https://issues.apache.org/jira/browse/CB-10732?jql=project %3D CB AND labels %3D wkwebview-known-issues could it be considered to make the fallback customizable.. like if we wanted iOS9 to be able to fallback to UIWebView but iOS10 to use WKWebView?

@briananderson1222 this is a separate feature. currently we don't offer granularity for the fallback. could you file an issue at issues.cordova.io ? Thanks!

Definitely ++1 for this one.
https://github.com/kidoju/Kidoju-Mobile:

Loads a script library as text from a local file using $.ajax.
Executes a series of functions in web workers using this library.

(1) would fail with latest https://github.com/apache/cordova-plugin-wkwebview-engine but would succeed with latest https://github.com/driftyco/cordova-plugin-wkwebview-engine.git as of today.
What is the roadmap / ETA for merging Ionic's PR?

@jlchereau This PR cannot be merged as is, since there are issues to be resolved. Furthermore, this PR has been set up as a discussion PR to discuss changes and is not ready for contribution. Contribution to Apache in a cleaned up PR is up to the PR submitter.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Please disregard this test result. I was just testing a job and it went rogue.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Cordova CI Build has one or more failures.
Commit     - Link
Dashboard - Link
0 tests run, 0 skipped, 0 failed.

Please close this PR, I consider it abandoned and it does not seem to serve any purpose for Cordova currently.

Sorry for the revive/bump but has there been any dialogue recently to merge the Ionic changes back into the upstream Apache project? They are drifting more and more apart...


BUG: Wrong indent when using tabs

As you can see in the picture above, when I insert a new line it only inserts 1 tab (not 2)

That's weird, could you tell me the output of :set expandtab? tabstop? softtabstop? shiftwidth? in the context in which this bug happens?
When does this bug happen? Is it limited to Lua files? Is it only after you type keywords like return or break?
Some IDEs like to assume that there should be one less tab after some of these keywords so it might be a Lua plugin doing that

Also sorry for the late answer but your issue didn't appear in my iOS Github app notifications for some reason :/

The output

When does this bug happen? Is it limited to Lua files? Is it only after you type keywords like return or break?

That's even weirder because indent-o-matic does not override tabstop, softtabstop nor shiftwidth when it detect tabs (aka. when detected == 0) which seems to be your issue: https://github.com/Darazaki/indent-o-matic/blob/bf37c6e4ccd17197d32dee69cffab4f5bbe4cbf2/lua/indent-o-matic.lua#L156-L163
I'm guessing vim-sleuth override these which is fixing your issue even if it's hack-ish
Does this still happen when both indent-o-matic and vim-sleuth are disabled? Do you have anything in your config which sets softtabstop and shiftwidth independently from tabstop?

I think u right, I can remove softtabstop and shiftwidth settings, but I need to keep the tab size at 4 instead of 8; One more issue after a remove those 2 options:

now it adds 4 tabs

Oh I think this issue doesn't relate to indent-o-matic, must be something wrong with the latest tree-sitter-lua. Thank you for helping me.

 :)
If you still have trouble with that, you can always attempt to ask for help at r/neovim (although I've seen a lot of questions being downvoted, most of them end up being answered)
I'm sorry that I can't help much since I'm still a bit noob-ish with Neovim but feel free to comment anything here if there's anything I can help with :)
I'll close this issue as "invalid" for now since it's not really an indent-o-matic bug


Cortana and Outlook

"Support for using Cortana with Outlook on the desktop is planned for a later release" - this has been supported for some time. Please update the doc.

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

ID: 6e53cb7b-1559-f607-7027-44a1b6435dff
Version Independent ID: 14eb4989-1955-cdb3-e716-4f221ab23c38
Content: Cortana integration with Office 365
Content Source: Office365-Admin/misc/cortana-integration.md
Service: o365-administration
GitHub Login: @KwekuA
Microsoft Alias: kwekua

@officedocsbot assign @mypil

@pyoungberg - Thank you for submitting feedback.
I will get this issue over to the O365ITPro writing team for investigation.
Thank you for reporting and making the docs better. Much appreciated.
I made a note to request the team to update this when the work is complete.

@pyoungberg - From our understanding, the issue has been resolved but it may take a few days for the merged content to appear in the article. If you feel it hasn't been resolved, please re-open this issue.
Thank you for your contribution to make the docs better! Much appreciated!

@officedocsbot close


Issues with some projects after maven toolchains update

See build job at https://github.com/exasol/virtual-schema-common-jdbc/actions/runs/7298827705/job/19890505996
Needs to be investigated

Taking a look to see if I can solve it

Okay so after a bit of a deep dive and git blame I found I had to create a toolchains.xml file and change the JAVA_HOME path to a v17 jdk.
The Usage in a Nutshell for Maven section on the readme.md page should probably be updated as well (or removed?)

TBD: Usage in a Nutshell for Maven section on the readme.md page should probably be updated as well (or removed?)


Making the link use an absolute target so it will actually work.

Fixing a link in the contributor onboard slides.
Resolves #446

/check-cla

/assign @jeefy

/lgtm

/retitle Fix broken Slack server invitation link in "New Contributor Course" slides

/approve


Export has empty final slide

Describe the bug
From v0.36.7 the export has an empty final slide.
To Reproduce
Steps to reproduce the behavior:

Install v0.36.7 or later
npm run export exemplary slides.md

---
theme: seriph
---

See empty final slide.

See empty final slide in pdf

Desktop:

OS: Ubuntu 22.04.1
Browser: Chromium Version 108.0.5359.124
Slidev version: v0.36.7 - v0.38.2

Same issue

I tried to reproduce with slidev version 0.36.7 or 0.38.2 but I don't have any empty final slide in the pdf.
By using the exact same markdown you used I only have one slide in the export (I'm also on ubuntu 22.04.1).
Do you have a reproduction repository ?

I tried to reproduce with slidev version 0.36.7 or 0.38.2 but I don't have any empty final slide in the pdf. By using the exact same markdown you used I only have one slide in the export (I'm also on ubuntu 22.04.1). Do you have a reproduction repository ?

Here's the reproduction repository. I've also added the PDF as slidev exports it on my system.

Your repository doesn't contain a package.json file.
That's strange.
Do you have all dependencies installed globally ?

Thanks for the update.
But I still can't reproduce.
I used npm ci to install exactly the same packages you have.
Then ran npm run export and got a pdf with only one page.
Maybe it can be related to some playwright browser version.
Playwright browsers are installed in ~/.cache/ms-playwright/ (for linux).
Can you check the installed version of chromium ?
(you can start the browser by launching ~/.cache/ms-playwright/chromium-1041/chrome-linux/chrome)

Maybe it can be related to some playwright browser version. Playwright browsers are installed in ~/.cache/ms-playwright/ (for linux).

This is the content of this directory on my system:
$ ls ~/.cache/ms-playwright/
chromium-1033  chromium-1041    chromium-965416  ffmpeg-1007  firefox-1304
chromium-1040  chromium-939194  ffmpeg-1006      ffmpeg-1008  webkit-1578

Can you check the installed version of chromium ? (you can start the browser by launching ~/.cache/ms-playwright/chromium-1041/chrome-linux/chrome)

It's version 109.0.5414.46 (Developer Build) (64-bit). The version stated along the issue template is my system's chromium, just to be clear.
I've assumed it could be linked to the playwright-chromium package and fiddled with its version but wasn't successful.

Ok that's the version associated to folder chromium-1041.
But I also see strange folders chromium-939194  and chromium-965416.
I was not sure the version you provided was your browser or the playwright version.
Are you sure version 109.* is the version of chromium used by playwright durgin the export ?

Ok that's the version associated to folder chromium-1041. But I also see strange folders chromium-939194 and chromium-965416. I was not sure the version you provided was your browser or the vesion used by playwright. Are you sure version 109 is the version of chromium used by playwright durgin the export ? (My chromium is also 109)

I mean the chromium version used during the export is dependent on the playwright-chromium package, isn't it? In view of that, the version is in line with the release notes of playwright-chromium v1.29.2 that is used in my reproduction repository (see package-lock.json).

Just to be sure, can you create a file test.mjs in your slidev project with:
import { chromium } from 'playwright-chromium'
const browser = await chromium.launch({
  headless: false
})
const context = await browser.newContext()
const page = await context.newPage()

You can then run node test.mjs, it will open a chromium not in headless mode.
You can then direcly check the chromium version inside the launched browser.

Just to be sure, can you create a file test.mjs in your slidev project with:
import { chromium } from 'playwright-chromium'
const browser = await chromium.launch({
  headless: false
})
const context = await browser.newContext()
const page = await context.newPage()

You can then run node test.mjs, it will open a chromium not in headless mode. You can then direcly check the chromium version inside the launched browser.

Thanks! I was able to confirm that it's the expected version 109.0.5414.46 (Developer Build) (64-bit).

I recently reproduced the case of having an empty final blank slide.
I created a PR for that: https://github.com/slidevjs/slidev/pull/879
It should be available in the next release.
Hope it will fix your issu.


SR-5576: Calendar.dateComponents(_:from:) crashing on Darwin if includes .nanosecond or .quarter

.nanosecond is implemented so re-enable tests.

.quarter doesnt crash but always returns 0 for now so also re-enable
in tests.

@swift-ci test linux


can SGC handle directed graph?

GCN can handle directed graph when adjacency matrix is allowed to be asymmetric and normalized with D^-1 * A. Is it possible to have SGC handle directed graph as well? Thanks

hi, thank you for your interest for SGC.
-- Is is possible?
Yes! I believe if you just change your adjacency matrix and follow the code in this repo, it should work.
-- will it work well?
I don't really know. I think it is very difficult to know before actually trying it out and personally I havn't tried it. It will probably, just like many other machine learning problems, depend on the dataset you are working with.
But I encourage to try SGC out! If you are starting to work on something new, why not try this simple and fast baseline? Good luck!


Added support for configuring Java exec path for instances.

Would like to add an IT with a non-standard java exec path, but will need to figure out perms for gce-jenkins project first.

Addresses: https://github.com/jenkinsci/google-compute-engine-plugin/issues/91


Question about label functionality

Thanks so much for creating this app! Works flawleesly for me so far. Wanted to ask how are labels used... can I had multiple lables with their own conf file for various servers as needed?

Yes! You can list as many interfaces as you need with the labels list. One label = one interface.


Update XPipe page

I updated the page with more recent information and screenshots

Did I mess up somewhere with the failing tests?


With c_str(...) the string length information is lost.

I pass a string_view to map_source instead of a null-terminated string.
detail::open_file() or win::open_file_helper() use c_str(...) and c_str(...) is
casting std::string.data() to a char*.
This way the string length is no longer taken into account and an incorrect file name is used.
Obviously I can work around this problem,
but think that this is at least an API-Bug.

Ah! Most likely the pull request
"Adding support of UTF8 file name processing in mio on windows" (https://github.com/mandreyel/mio/pull/64)
of shivendra14 will solve this issue too.

Interesting! Mio was not written with string_view in support, that came after it was written.
Let me know if #64 fixes it for you, it should be merged soon.

I am having several issues getting the patch to compile:
a) I am missing an '#include '.
and when I fix this I get
b) 'std::wstring mio::detail::win::s2ws(const std::string &)': cannot convert argument 1 from 'const String' to 'const std::string &'
To escape this problem I changed
'
std::wstring s2ws(const std::string& s)
'
to
'
template<
typename String,
typename = typename std::enable_if<
std::is_same<typename char_type::type, char>::value
>::type

std::wstring s2ws(const String& s)
'
but then I get
c) 'c_str': is not a member of 'std::basic_string_view<char,std::char_traits>' for the line
'const auto wideCharCount = MultiByteToWideChar(CP_UTF8, 0, s.c_str(), sLength, buf.data(), sLength);'
which can be cured by
'const auto wideCharCount = MultiByteToWideChar(CP_UTF8, 0, c_str(s), sLength, buf.data(), sLength);'

This does the job, but I'am totally uncomfotable with the way it does.
The original issue is, that the string length was lost. Now that new s2ws() is using Length() before that happens, which is fine.
The rest of this string dance just doesn't feel straight to me and IMHO this needs to be reworked again by someone who likes string types more than I do.

Unfortunatly, I still have two issues with the your last commit https://github.com/mandreyel/mio/commit/3f86a95c0784d73ce6815237ec33ed25f233b643
Issue a)
Error C2039: 'vector': is not a member of 'std' in line 802 of mio.hpp
Which means, that an #include <vector> is missing.
Issue b) (after curing a))
Error C2664: 'std::wstring mio::detail::win::s_2_ws(const std::string &)': cannot convert argument 1 from 'const String' to 'const std::string &' in line 814 of mio.hpp.
I think it's irrelevant, but for the sake of completeness:
Microsoft Visual Studio, Version 16.9.0 Preview 2.0, compiler flags /permissive-, /std:c++latest and /W4.

I'm really sorry, it looks like the latest PR that I accepted doesn't compile then. I don't have a windows machine nearby so I couldn't test it, but it seems this was a mistake.
There are two options at the moment:

I roll back the commit and accept there is a bug in the windows execution path until fixed.
If you have time, you could send a patch to apply your suggested fixes, either on top of current master, or after I have rolled back.

What do you think?

I am willing and have time to create a proposal/patch.
I don't care,  but probably it's better to restore the old, compilable state first.
Unfortunately I have not fully understand template< typename String ... and fear to create strange or inappropriate code for this. A few explanatory words would probably help me.
I suggest I create a patch to the best of my knowledge and we'll see from there.

Sorry I don't know GitHub working style.
I finally made up a patch on the latest version.
I try not to commit this patch for several reasons:

it only affects the single header (I don't use CMake...).
it is not clear to me what should really happen in case of path=="".
It is unclear to me whether one should really waive s_2_ws(). But the code does not seem better/clearer to me.
my compiler still throws some warnings for other places in mio.hpp.

Subject: [PATCH] a) add missing '#include <vector>' b) rework
 open_file_helper() to silence MSVC Error C2664:    'std::wstring
 mio::detail::win::s_2_ws(const std::string &)': cannot convert argument 1
 from 'const String' to 'const std::string &'

---
 single_include/mio/mio.hpp | 32 ++++++++++++++------------------
 1 file changed, 14 insertions(+), 18 deletions(-)

diff --git a/single_include/mio/mio.hpp b/single_include/mio/mio.hpp
index c568a46..b49ebb5 100644
--- a/single_include/mio/mio.hpp
+++ b/single_include/mio/mio.hpp
@@ -104,6 +104,7 @@ inline size_t make_offset_page_aligned(size_t offset) noexcept

 #include <iterator>
 #include <string>
+#include <vector>
 #include <system_error>
 #include <cstdint>

@@ -794,30 +795,25 @@ inline DWORD int64_low(int64_t n) noexcept
     return n & 0xffffffff;
 }

-std::wstring s_2_ws(const std::string& s)
-{
-    if (s.empty())
-        return{};
-    const auto s_length = static_cast<int>(s.length());
-    auto buf = std::vector<wchar_t>(s_length);
-    const auto wide_char_count = MultiByteToWideChar(CP_UTF8, 0, s.c_str(), s_length, buf.data(), s_length);
-    return std::wstring(buf.data(), wide_char_count);
-}
-
 template<
     typename String,
     typename = typename std::enable_if<
-        std::is_same<typename char_type<String>::type, char>::value
+    std::is_same<typename char_type<String>::type, char>::value
     >::type
 > file_handle_type open_file_helper(const String& path, const access_mode mode)
 {
-    return ::CreateFileW(s_2_ws(path).c_str(),
-            mode == access_mode::read ? GENERIC_READ : GENERIC_READ | GENERIC_WRITE,
-            FILE_SHARE_READ | FILE_SHARE_WRITE,
-            0,
-            OPEN_EXISTING,
-            FILE_ATTRIBUTE_NORMAL,
-            0);
+    const auto path_length = path.length();
+    if (path_length == 0)
+        return{};
+    std::vector<wchar_t> buf(path_length);
+    const auto wide_char_count = MultiByteToWideChar(CP_UTF8, 0, c_str(path), path_length, buf.data(), path_length);
+    return ::CreateFileW(buf.data(),
+        mode == access_mode::read ? GENERIC_READ : GENERIC_READ | GENERIC_WRITE,
+        FILE_SHARE_READ | FILE_SHARE_WRITE,
+        0,
+        OPEN_EXISTING,
+        FILE_ATTRIBUTE_NORMAL,
+        0);
 }

 template<typename String>
--
2.27.0.windows.1

Off Topic: The warnings, my compiler throws are:
...\mio.hpp(885,39): warning C4244: 'return': conversion from 'int64_t' to 'size_t', possible loss of data
...\mio.hpp(910,61): warning C4244: 'argument': conversion from 'const int64_t' to 'size_t', possible loss of data
...\mio.hpp(931,13): warning C4244: 'argument': conversion from 'const int64_t' to 'SIZE_T', possible loss of data
...\mio.hpp(1097,22): warning C4244: '=': conversion from 'const int64_t' to 'mio::basic_mmap<mio::access_mode::read,char>::size_type', possible loss of data
...\mio.hpp(1063): message : while compiling class template member function 'void mio::basic_mmap<mio::access_mode::read,char>::map(const mio::basic_mmap<mio::access_mode::read,char>::handle_type,const mio::basic_mmap<mio::access_mode::read,char>::size_type,const mio::basic_mmap<mio::access_mode::read,char>::size_type,std::error_code &)'
...\mio.hpp(1052): message : see reference to function template instantiation 'void mio::basic_mmap<mio::access_mode::read,char>::map(const mio::basic_mmap<mio::access_mode::read,char>::handle_type,const mio::basic_mmap<mio::access_mode::read,char>::size_type,const mio::basic_mmap<mio::access_mode::read,char>::size_type,std::error_code &)' being compiled
...\mio.hpp(1140): message : while compiling class template member function 'void mio::basic_mmap<mio::access_mode::read,char>::unmap(void)'
...\mio.hpp(971): message : see reference to function template instantiation 'void mio::basic_mmap<mio::access_mode::read,char>::unmap(void)' being compiled
...\mio.hpp(969): message : while compiling class template member function 'mio::basic_mmap<mio::access_mode::read,char>::~basic_mmap(void)'
...\mio.hpp(536): message : see reference to class template instantiation 'mio::basic_mmap<mio::access_mode::read,char>' being compiled
...\mio.hpp(1098,29): warning C4244: '=': conversion from 'const int64_t' to 'mio::basic_mmap<mio::access_mode::read,char>::size_type', possible loss of data

Hi @Spammed, thanks for all your work on this so far. I had a patchy start to the year and didn't have time to work on open source. Just wanted to give a life sign, I'll hopefully be able to get back on this in the next weeks.

Hello,
I just stumbled across this little essay and thought it fit the topic:
https://blogs.msmvps.com/gdicanio/2021/03/26/the-case-of-string_view-and-the-magic-string/


Linear value calculations, Filter by required properties, optimizatio…

Added features:

Ability to use linear properties values compare (if set in config) by using formula:

sim * (high - low) + low;

Also if this feature is turned on overrall similarity is calculated by formula:
retVal = prob / sumOfHighPropertyProbability;

where prob is sum of all similaritu values for each property, and sumOfHighPropertyProbability is sum of all high values for each property. Do that with setting property:
<linearMode on="true" />

Ability to set in config possibility to avoid calculation item2 -> item1 if item1 -> item2 is already calculated (Instead n^2 calculations , to have (n * (n-1)) / 2 (binomial of n and 2) calculations, with setting property:

<reverseOptimization on="true" />

Different behaviour for properties which lookup value is set to "required'. So if in config there is:

<treatRequiredPropertiesAsFilter on="true" />

candidates found by properties which lookup cvalue is true, will be filtered and will only remain those candidates which required properties has same value as requirde properties of original item.

In config file these flags should be set at begining.

There are a few problems with this pull request. The first is all the automated changes your IDE has made. There are so many of them that I'm having difficulties finding the actual changes. If you can get rid of this I may be able to review this pull request properly.
What is the benefit of the linear mode? Why would someone use it instead of the naive Bayes mode?
The reverse optimization sounds like it could be useful, but I couldn't find the actual code in the PR because of all the noise.
The same goes for treatRequiredPropertiesAsFilter.
If you could redo the PR I'd be interested to see this.

Hi larsga,
thanks on your comments. I've fixed mess with automatic code indent.
Idea with linear mode is based on that that I am using Duke not just for deduplication purposses but also for general simialrity between items. In linear mode I can tweak my data model in easier manner, keeping my comparators as simple as it is possible.
Best,
Marko.


Enhance support for local SMTP servers

A common way for sending emails is to use a local SMTP server, most often not requiring
authentication and TLS and providing TLS only with a self-signed certificate (this is, for example,
the default configuration for Postfix on Debian/Ubuntu). Thus, skip authentication if no SMTP
credentials are set and disable TLS if the SMTP address is set to localhost. Along the way remove
the obsolete mail initializer.

Dear everyone, thanks for your awesome work on Helpy, I really like it so far. Here is a small patch that makes it easier to set up Helpy on a standard Linux box. I'm not a Ruby dev, and this my first attempt at writing some Ruby, just so you know ;) .

Looks Good @NoyaInRain!
However I think it would be better to use the newer symbol_key: value hash syntax, rather than. the older :symbol_key => value

Yeah I agree @CGA1123


Fix: Suggested stub body to_return should be valid JSON when request header contains 'Accept'=>'application/json'. It now suggests a return body with '{}'.

RE: https://github.com/bblimke/webmock/issues/688

All tests ran green locally. Not sure why the Travis CI build failed.
› bundle exec rake test
Loaded suite /Users/Magne/.rvm/gems/ruby-2.3.1/gems/rake-12.0.0/lib/rake/rake_test_loader
Started
............
Finished in 0.030351 seconds.
12 tests, 14 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
100% passed
395.37 tests/s, 461.27 assertions/s

@redbar0n bundle exec rake
rake test only runs test unit tests.

Ok. Anything I need to do?

@redbar0n the code is broken as tests show, so it needs to be fixed before merging :)
Then I'd fix the duplication I mentioned it the comment, unless you have a different opinion?

Ok. I'm not sure how to fix Travis CI test failures.
Duplication? I can't find the comment you're referring to.

https://github.com/bblimke/webmock/pull/691#discussion_r105141327

Done. :)

@redbar0n sorry, perhaps I wasn't clear.
When I asked 'is the first & necessary?', I referred to semantics not to the syntax.
Why do you need to check if request_pattern is present?
I don't think you have addressed my comment regarding duplication yet :)

I see. I don't know if request_pattern can ever be nil, so I just check just in case. But if it cannot then that check can just be removed.
Was you comment regarding duplication the #691 (comment) link you gave? I can't access it for some reason. It just takes me to this same page.

You have to click on Show outdated to see the comment.
If there was a need for request_pattern checking then specs would fail if it was missing.

Where do I find Show outdated on github? I can't see it anywhere on this page.

Since the tests are passing now can we merge this PR?

Also, I think it would be a good idea to squash all these commits into a single one :)

@oliakremmyda we can, indeed 👍 thanks for reminding about this. feel free to merge it.


🐛 useNamingConvention triggering on objects passed to external library function

Environment information
Server:
  Version:                      1.1.2
  Name:                         biome_lsp
  CPU Architecture:             aarch64
  OS:                           macos

Workspace:
  Open Documents:               0

Other Active Server Workspaces:

Workspace:
  Open Documents:               4
  Client Name:                  Visual Studio Code
  Client Version:               1.82.0

What happened?
When a function is provided by an external library, types may dictate property names that break the naming convention rule. They should be ignored to allow for that

Expected result
I shouldn't need to suppress it, it should just know
Code of Conduct

[X] I agree to follow Biome's Code of Conduct

Could you please post a playground link?

https://biomejs.dev/playground/?lintRules=all&code=aQBtAHAAbwByAHQAIAB3AGgAYQB0AGUAdgBlAHIAIABmAHIAbwBtACAAJwB3AGgAYQB0AGUAdgBlAHIAJwA7AAoACgAvAC8AIAB3AGgAYQB0AGUAdgBlAHIAIABoAGEAcwAgAGEAIABmAHUAbgBjAHQAaQBvAG4AIABjAGEAbABsAGUAZAAgAEIATABBAEgAIAB3AGgAaQBjAGgAIAB0AGEAawBlAHMAIABhAG4AIABvAGIAagBlAGMAdAAgAHcAaQB0AGgAIABwAHIAbwBwAGUAcgB0AHkAIABzAG8AbQBlAF8AcAByAG8AcABlAHIAdAB5AAoACgB3AGgAYQB0AGUAdgBlAHIALgBCAEwAQQBIACgAewAKACAAIABzAG8AbQBlAF8AcAByAG8AcABlAHIAdAB5ADoAIAAnAHcAYQB0ACcACgB9ACkA

This code also fails in ESlint.
Supporting your example could result in the naming convention for object properties being completely disabled. This could also be extended to class properties. This looks like a case for biome-ignore comments?


Timesheet - 20/04/2021 - TristanS

Task 1
Edited the upcoming newsletter
Proof of Work

https://docs.google.com/document/d/1Ra9ZtjDc8IbX_7KQZhevCf3eflaZ34azeXNiCz2KOeY/edit#

Time Spent
1 hour

Task 2
Worked on 4th video
Proof of Work

https://docs.google.com/presentation/d/14Hyma10lJzGJWLYtmUz1PfZADLD66y2xlRM3hDa7Rjo/edit#slide=id.p

Time Spent
1.5 hours

Total Time Spent
2.5 hours
Account Number
6d4e7ec412472b5cfabb234555bc37f9a5a1a75a4926f9fee2a54d3e070f4b3f

Approved


Clicking on playlist jumps playlist slider to top, impossible to double-click to play

Installation Method: Marketplace
Spotify Version: Spotify for Windows <IP_ADDRESS>6.g3ae3b4f3
Spicetify Version: Latest

Scroll down to play playlist lower down on your playlist bar list
Click playlist icon
Try to click it again to play the playlist
You cannot, because the scrollbar jumps up, so you cannot doubleclick to play
Now you must scroll down and then press it again to play

Issue does not seem to occur when installing via cli, only via Marketplace - however the cli version has its own issues like duplicate dots.
Screenshots Below with descriptions:

^ Default on app open

^ After Scrolling down

^After pressing a playlist on the bottom

@DoctorAnon It only happens if you install bloom via marketplace right?

fixed in latest versions
if the issue still presents uninstall playlist icon extension from marketplace


marun (marmara university) file added

Marmara University domain address that marun.edu.tr is added.

@emreakdemir I am sorry, the domain marun.edu.tr is removed from our trusted domains list because it was abused in the past. If you are the student of this school, please enroll to GitHub Student Developer Program. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).

@philipto thank you for your answer. I will follow this guide.


zsa-udev-rules: fix compatibility with new Oryx

Description of changes

ZSA changed the firmware of their keyboards. It now requires different udev rules to work properly.
They updated their wiki: https://github.com/zsa/wally/wiki/Linux-install#2-create-a-udev-rule-file
On top of that update, we can't use their udev rules as-is because browsers are not running under active user. So we need to change the permissions in udev rules to allow access to everyone (not just the current user).
ZSA asked me to create this PR with 0666 mode.
Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

I'm not able to verify that this works.
I used this:
sudo nixos-rebuild switch -I "nixpkgs$HOME/Projects/nixpkgs"

But then the keyboard doesn't work. But when I added the same udev rules in udev.extraRules it worked.
Do you know what might be wrong @davidak?

Lol, I forgot to enable the option hardware.keyboard.zsa. My change works now.
cc @davidak

i am not really sure about this. there is a quite recent PR on the repo which points out that the wiki is not up2date and referencing old plugdev (which this PR also introduces). The wiki updates you are mentioning are older than the commit.
You are writing that zsa asked you to follow the wiki and create a PR here, is that conversation shareable or was it within an private support ticket/mail conversation? Likely it helps a bit more about the context.
Would be in general more nice to get the rules then "correct" upstream if they deliver a rule-set, that should be correct.
Tho i can confirm that these udev rules do fix zsa training on chrome. With the old rules it was just stuck after pressing the oryx key.
Flashing (via wally-cli) does work for me with all options, having no rules, having the old ones and having the PR ones.

quite https://github.com/zsa/wally/pull/113
That PR is from 2021. This breaking change that I'm trying to fix was introduced 2 months ago.

Their wiki was changed changed 2 months ago in this commit: https://github.com/zsa/wally/wiki/Linux-install/_compare/d017fc0c8c3694251413a5be11a244bb9c11aa55...95af406b898e730579def0e95922521ec4f484e3
And this is my conversation with ZSA: (sorry for formatting just dumped copied text from gmail)
+1 Makes sense, I will update the system option with my current udev rules.

Jan

On Wed, Sep 28, 2022 at 1:35 PM Florian Didron <[contact@ergodox-ez.com](mailto:contact@ergodox-ez.com)> wrote:
It's preferable to update your system options. I'm going to update the repo but will probably set the permission to 0664 which works on most traditional distros.

Best,
Florian Didron,
Lead Developer,
ZSA Technology Labs Inc. / [mem.dev](https://mem.dev/)
Sent from Front
On September 28, 2022 at 8:15 PM GMT+9 [jan<EMAIL_ADDRESS>wrote:

Thanks for the explanation.
So I will just copy my current udev rules into the system option or do you plan to make the updated files in wally repo nix compatible?

Cheers,
Jan

On Wed, Sep 28, 2022 at 1:06 PM Florian Didron <[contact@ergodox-ez.com](mailto:contact@ergodox-ez.com)> wrote:
Great, on your previous log screenshot chrome complained about not having write permission to the device, and from what I understand nixOS apps are ran into a separate context from the current logged in user.
Setting the mode to 666 gives write access to everyone.

Best,
Florian Didron,
Lead Developer,
ZSA Technology Labs Inc. / [mem.dev](https://mem.dev/)
Sent from Front
On September 28, 2022 at 8:00 PM GMT+9 [jan<EMAIL_ADDRESS>wrote:

Thank you, it works now.

Here is new chrome log if that helps:
image.png

Jan

On Wed, Sep 28, 2022 at 12:43 PM Florian Didron <[contact@ergodox-ez.com](mailto:contact@ergodox-ez.com)> wrote:
In your udev rules can you change the line

KERNEL=="hidraw*", ATTRS{idVendor}=="3297", MODE="0664", GROUP="plugdev"
to
KERNEL=="hidraw*", ATTRS{idVendor}=="3297", MODE="0666", GROUP="plugdev"

Basically change the MODE value from 0664 to 0666, and a reboot for good measure.

Best,
Florian Didron,
Lead Developer,
ZSA Technology Labs Inc. / [mem.dev](https://mem.dev/)
Sent from Front
On September 28, 2022 at 6:29 PM GMT+9 [jan<EMAIL_ADDRESS>wrote:

Here it is
image.png

On Wed, Sep 28, 2022 at 11:23 AM Florian Didron <[contact@ergodox-ez.com](mailto:contact@ergodox-ez.com)> wrote:
Can you try to connect again using chrome, then after the connection failure got to chrome://device-log/ and take a screenshot of the logs ?

Best,
Florian Didron,
Lead Developer,
ZSA Technology Labs Inc. / [mem.dev](https://mem.dev/)
Sent from Front
On September 28, 2022 at 6:04 PM GMT+9 [jan<EMAIL_ADDRESS>wrote:

Hi,

NixOS is basically just a distro with a declarative configuration.
It doesn't follow FHS (this is sometimes problematic) but that shouldn't be the case here.

Cool thing is that you can fully reproduce my system on your machine with my config:
https://gitlab.com/JanKaifer/nixos/-/blob/main/nixos/configuration.nix

It will take you a few hours if you don't know NixOS so I don't recommend trying it.
But just looking into the config might be a quick way to give you some info about my system.

The browser console is empty (that was the first thing I checked).
I was testing it with a new chrome installation without extensions.

Removing the Oryx key didn't work.

Thanks,
Jan

On Wed, Sep 28, 2022 at 10:36 AM Florian Didron <[contact@ergodox-ez.com](mailto:contact@ergodox-ez.com)> wrote:
Hi Jan,

I'm still reading about nixOS, but in the meantime. can you take a screenshot of the browser's console after trying to connect to live training ?

Also can you try to remove the Oryx Key on your layout https://configure.zsa.io/moonlander/layouts/QBDVg/latest/0/0/

Recompile and flash again then retry a training session.

Best,
Florian Didron,
Lead Developer,
ZSA Technology Labs Inc. / [mem.dev](https://mem.dev/)
Sent from Front
On September 27, 2022 at 8:11 PM GMT+9 [jan<EMAIL_ADDRESS>wrote:

Hi,

my layout is here: https://configure.zsa.io/moonlander/layouts/QBDVg/latest/1
I rebooted my computer after applying the changes.

Cheers,
Jan

On Tue, Sep 27, 2022 at 1:06 PM Florian Didron <[contact@ergodox-ez.com](mailto:contact@ergodox-ez.com)> wrote:
Hi Jan,

Thanks for pointing to the outdated udev rules. Before I change them I would like to make sure things are working properly on your env.

Can you point me to your layout's url ? Also just to make sure you did go through a logout or reboot after updating the rules ?

Best,
Florian Didron,
Lead Developer,
ZSA Technology Labs Inc. / [mem.dev](https://mem.dev/)
Sent from Front
On September 27, 2022 at 6:25 PM GMT+9 [jan<EMAIL_ADDRESS>wrote:

Hi,

I just tried fixing the issue with local override and I have the following udev rule file:

❯ cat /etc/udev/rules.d/99-local.rules
# Rules for Oryx web flashing and live training
KERNEL=="hidraw*", ATTRS{idVendor}=="16c0", MODE="0664", GROUP="plugdev"
KERNEL=="hidraw*", ATTRS{idVendor}=="3297", MODE="0664", GROUP="plugdev"

# Legacy rules for live training over webusb (Not needed for firmware v21+)
# Rule for all ZSA keyboards
SUBSYSTEM=="usb", ATTR{idVendor}=="3297", GROUP="plugdev"
# Rule for the Moonlander
SUBSYSTEM=="usb", ATTR{idVendor}=="3297", ATTR{idProduct}=="1969", GROUP="plugdev"
# Rule for the Ergodox EZ
SUBSYSTEM=="usb", ATTR{idVendor}=="feed", ATTR{idProduct}=="1307", GROUP="plugdev"
# Rule for the Planck EZ
SUBSYSTEM=="usb", ATTR{idVendor}=="feed", ATTR{idProduct}=="6060", GROUP="plugdev"

# Wally Flashing rules for the Ergodox EZ
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", MODE:="0666"

# Wally Flashing rules for the Moonlander and Planck EZ
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE:="0666", SYMLINK+="stm32_dfu"

# Don't manage interfaces created by nixos-container.
ENV{INTERFACE}=="v[eb]-*", ENV{NM_UNMANAGED}="1"

KERNEL=="tun", TAG+="systemd"

# Miscellaneous devices.
KERNEL=="kvm",                  MODE="0666"

# Needed for gpm.
SUBSYSTEM=="input", KERNEL=="mice", TAG+="systemd"

SUBSYSTEM=="misc", KERNEL=="sgx_enclave",   SYMLINK+="sgx/enclave"
SUBSYSTEM=="misc", KERNEL=="sgx_provision", SYMLINK+="sgx/provision"

But the behaviour is still the same. Flashing works and train doesn't.
I rebooted my machine after aplying these changes.

Cheers,
Jan

On Mon, Sep 26, 2022 at 9:44 PM Jan Kaifer <[jan@kaifer.cz](mailto:jan@kaifer.cz)> wrote:
The option is indeed outdated.
The reason is that it loads the udev rule from the repo.
https://github.com/zsa/wally/tree/master/dist/linux64
These files were not updated with the new setup. Would that be possible?
That would make future updates easier.

Thanks.

On Fri, Sep 23, 2022 at 9:51 PM Robin Leinonen <[contact@zsa.io](mailto:contact@zsa.io)> wrote:
Sounds good! Yeah, I hope this can be fixed quickly. :) Let me know if this doesn't work, or anything else comes up!

—
Robin Leinonen,
Customer Service,
ZSA Technology Labs Inc.

Sent from Front
On September 23, 2022 at 2:29 PM CDT [jan<EMAIL_ADDRESS>wrote:

Cool, thanks for the tip. That seems very likely.
These options in NixOs are usually getting patched pretty quickly. Maybe the original author doesn't need training mode anymore.
I will double-check and open a PR if there is one needed (against NixOs).

Thanks for your help,
Jan

On Fri, Sep 23, 2022, 19:35 Robin Leinonen <[contact@zsa.io](mailto:contact@zsa.io)> wrote:
Got it! I do think it's somewhat likely that the system option is not up to date. We changed the guide a little bit a few months ago with the new firmware revision, so it's similar, but not quite the same. That would also be consistent with flashing working but Live Training not working.

Let me know what you find!

—
Robin Leinonen,
Customer Service,
ZSA Technology Labs Inc.

Sent from Front
On September 23, 2022 at 12:12 PM CDT [jan<EMAIL_ADDRESS>wrote:

Hi, I'm.

I'm using NixOs (Linux) and enabled the flag hardware.keyboard.zsa.enable = true;
That should do all the things mentioned in the guide that you linked.

Flashing worked and even training worked fine on this system. It broke after I flashed new layout from Linux.

I also had similar issues on my Mac, but it was never persistent (restarting browser helped on Mac).

I can double check that the NixOs system option is up to date with the tutorial. I will have time to do that next weekend.

Cheers,
Jan

On Fri, Sep 23, 2022, 17:26 Robin Leinonen <[contact@zsa.io](mailto:contact@zsa.io)> wrote:
Hi Jan! It looks like you're on Linux there, right? Have you gone through our [new Linux setup for Live Training](https://github.com/zsa/wally/wiki/Live-training-on-Linux)?

Let me know!

—
Robin Leinonen,
Customer Service,
ZSA Technology Labs Inc.

Sent from Front
On September 23, 2022 at 6:59 AM CDT [jan<EMAIL_ADDRESS>wrote:

Hi ZSA,

thanks for a great keyboard.
I have issues with the training mode. Selecting the keyboard in the Chrome UI doesn't work.

Jan

:+1: for doing it like onlykey, but I'm new here so I'll leave that decision to someone else.

That PR is from 2021. This breaking change that I'm trying to fix was introduced 2 months ago.

Sorry thats my bad. I was following the link in my mentiond PR, as the url looked similar on the first view for me. But there i was to fast... :)
From the email conversation (if i read it right) it sounds like, that Robin (so the person from ZSA) will update the rules upstream, but likely will set it to 0664. We should double check if thats working then and if yes we should check if thats also enough for our setup and update the wally package then to an unstable version. That would prevent that we have to maintain our own udev rules.
If we do add the plugdev group users.groups.plugdev = { }; (some other modules are doing the same) and the enduser adds themself to the plugdev group, we could use the upstream udev rules as soon as they are updated, or we then could just substitute the MODE from 0664 to 0666.

The solution with the plugdev group would be great. Thanks for checking it.
If that works, we can just wait for the update if the wally repository.
And I'm not very familiar with nix, would you mind adding a PR that adds the user to the plugdev group when this option is enabled?

Hey, can we merge this? I don't have time to refactor this and at least it will be working.
Right now that option is straight broken so anything is better than that.
cc @Shawn8901

Hi, could you check if the udev rules from this PR https://github.com/zsa/wally/pull/129 also fixes the issue for you? If yes i would personally prefer to update the zsa package to an unstable version.
For me the training works with
services = {
    udev = {
      extraRules = ''
        SUBSYSTEM=="hidraw", ATTRS{idVendor}=="16c0", TAG+="uaccess"
        SUBSYSTEM=="hidraw", ATTRS{idVendor}=="3297", TAG+="uaccess"
      '';
    };
};
hardware.keyboard.zsa.enable = false;

The used rules are basically what the PR does.
I can do the update PR if you say that you dont have time or dont want to do it.
Also the upstream code uses the uaccess stuff, which is the new way to do those accesses in systemd/udev, as far as i understand the docs.

Thanks for the effort. I just tried training mode again with use rules in this PR and it's not working.
I have noticed that they updated the udev rules in zda/wally so your version might fix this. I will try it tomorrow.

It's weird. Both your config and this PR are broken on my machine.
I will try a different machine and report here.

It works on another machine. The only difference is that it has steam installed.

fyi i also had to do a clean reboot do make it work. just doing a nixos-rebuild switch did not do the trick, maybe replugging would have helped.

:+1: I'm rebooting after every change - that's why it takes so long.

Do you have 60-steam-* rules in your /etc/udev/rules.d?
I will try to copy those rules to my other machine tomorrow and bisect the correct rule.

Yes i have installed steam, but sadly it does also work after disabling steam and doing a reboot, so it must be something else that either on the one machine of you breaks it, or fixes it on my other machine if steam is disabled.
idk if it helps to do further analyses, here is a log attacked of udevadm test for the moonlander on my current installed rules (with having no steam).
[root@pointalpha:~]# ls /etc/udev/rules.d/
00-path.rules               60-zvol.rules                         77-mm-broadmobi-port-types.rules  77-mm-huawei-net-port-types.rules  77-mm-telit-port-types.rules     85-nm-unmanaged.rules            98-ipv6-privacy-extensions.rules
01-md-raid-creating.rules   63-md-raid-arrays.rules               77-mm-cinterion-port-types.rules  77-mm-linktop-port-types.rules     77-mm-tplink-port-types.rules    90-libinput-fuzz-override.rules  99-ipv6-privacy-extensions.rules
10-dm.rules                 64-md-raid-assembly.rules             77-mm-dell-port-types.rules       77-mm-longcheer-port-types.rules   77-mm-ublox-port-types.rules     90-nm-thunderbolt.rules          99-local.rules
11-dm-lvm.rules             69-bcache.rules                       77-mm-dlink-port-types.rules      77-mm-mtk-port-types.rules         77-mm-x22x-port-types.rules      90-pipewire-alsa.rules
13-dm-disk.rules            69-dm-lvm.rules                       77-mm-ericsson-mbm.rules          77-mm-nokia-port-types.rules       77-mm-zte-port-types.rules       90-zfs.rules
40-usb-media-players.rules  69-libmtp.rules                       77-mm-fibocom-port-types.rules    77-mm-qcom-soc.rules               80-libinput-device-groups.rules  95-dm-notify.rules
49-libsane.rules            69-md-clustered-confirm-device.rules  77-mm-foxconn-port-types.rules    77-mm-quectel-port-types.rules     80-mm-candidate.rules            95-upower-hid.rules
50-oryx.rules               69-vdev.rules                         77-mm-gosuncn-port-types.rules    77-mm-sierra.rules                 80-udisks2.rules                 95-upower-wup.rules
50-wally.rules              70-printers.rules                     77-mm-haier-port-types.rules      77-mm-simtech-port-types.rules     84-nm-drivers.rules              97-hid2hci.rules

[root@pointalpha:~]# udevadm test $(udevadm info --query=path --name=/dev/hidraw1)
This program is for debugging only, it does not run any program
specified by a RUN key. It may show incorrect results, because
some values may be different, or not available at a simulation run.

Trying to open "/etc/udev/hwdb.bin"...
=== trie on-disk ===
tool version:          251
file size:         9986126 bytes
header size             80 bytes
strings            2444414 bytes
nodes              7541632 bytes
Load module index
Found cgroup2 on /sys/fs/cgroup/, full unified hierarchy
Found container virtualization none.
Using default interface naming scheme 'v251'.
Parsed configuration file "/nix/store/q11j05nqg829dkvgc8851mscbzi2iq8n-systemd-251.7/lib/systemd/network/99-default.link"
Created link configuration context.
Loaded timestamp for '/etc/udev/rules.d'.

Should i prepare a package update pr after the updated upstream udev rules anyways in the meantime or do you want to update this PR?

Weird even when I use the same config on both machines it's not working on one.
And it's the same hardware.
@Shawn8901 Could you please prepare the package update?

Flashing the keyboard from the broken machine fixed the training mode, I will check if it still works on the other machine later today.

Closing as @Shawn8901 fixed this in new PR

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/how-to-create-files-in-the-etc-udev-rules-d-directory/11929/16


Validator: check OpTypeBool inside Blocks (#1405)

OpTypeBool can only be used with logical addressing operations, not
physical. Thus, it cannot be a member of buffer block i.e., struct
type. This commit lets Validator check it.
Note that it fails in validate decorations even without this commit when
Validator checks decorations of members in struct type. In that case,
it kills itself without any message i.e. assert(0).

Rebased and pushed into master as 2c2fee7


after creation of auto scaling im not getting php page by using my public ip adress??

I suppose you have not created a PHP file in the directory(/var/www/html)
Please follow these steps
sudo nano /var/www/html/info.php
Inside the file, type in the valid PHP code:

By now you will access the default php page in the browser using your host machine URL/info.php
For further info Refer here (https://phoenixnap.com/kb/how-to-install-lamp-stack-on-ubuntu)