PHP 7.4.2 build errors on Windows

Hi guys,
I did a lot of generations for different PHP versions but for 7.4.2 I am unable to solve this.
Could someone help me out?
It is really important for me to have the windows dll for 7.4.2
c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>configure --disable-all --enable-cli --with-sapnwrfc=shared
PHP Version: 7.4.2

Saving configure options to config.nice.bat
Checking for cl.exe ...  <in default path>
  Detected compiler Visual C++ 2019
  Detected 64-bit compiler
Checking for link.exe ...  <in default path>
Checking for nmake.exe ...  <in default path>
Checking for lib.exe ...  <in default path>
Checking for bison.exe ...  <in default path>
  Detected bison version 3.3.2
Checking for sed.exe ...  <in default path>
Checking for re2c.exe ...  <in default path>
  Detected re2c version 1.1.1
Checking for zip.exe ...  <in default path>
Checking for lemon.exe ...  <in default path>
Checking for 7za.exe ...  <in default path>
Checking for mc.exe ...  C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64
Checking for mt.exe ...  C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64
Enabling multi process build

Build dir: C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS
PHP Core:  php7ts.dll and php7ts.lib

Checking for wspiapi.h ...  <in default path>
Enabling IPv6 support
Enabling SAPI sapi\cli
Checking for library edit_a.lib;edit.lib ... <not found>
Enabling extension ext\date
Enabling extension ext\hash
Checking for KeccakHash.h ...  ext/hash/sha3/generic64lc
Enabling extension ext\pcre
Enabling extension ext\reflection
Checking for sapnwrfc.h ...  <in deps path> \include
Checking for library libsapucum.lib ... <in deps path> \lib\libsapucum.lib
Checking for library sapnwrfc.lib ... <in deps path> \lib\sapnwrfc.lib
Enabling extension ext\sapnwrfc [shared]
Enabling extension ext\spl
Checking for timelib_config.h ...  ext/date/lib
Enabling extension ext\standard

Creating build dirs...
Generating files...
Generating Makefile
Generating main/internal_functions.c
        [content unchanged; skipping]
Generating main/config.w32.h
Generating phpize
Done.

Enabled extensions:
-----------------------
| Extension  | Mode   |
-----------------------
| date       | static |
| hash       | static |
| pcre       | static |
| reflection | static |
| sapnwrfc   | shared |
| spl        | static |
| standard   | static |
-----------------------

Enabled SAPI:
-------------
| Sapi Name |
-------------
| cli       |
-------------

---------------------------------------
|                   |                 |
---------------------------------------
| Build type        | Release         |
| Thread Safety     | Yes             |
| Compiler          | Visual C++ 2019 |
| Architecture      | x64             |
| Optimization      | PGO disabled    |
| Native intrinsics | SSE2            |
| Static analyzer   | disabled        |
---------------------------------------

Type 'nmake' to build PHP

c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>

Then it fails on me ...
c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>nmake

Microsoft (R) Program Maintenance Utility Version 14.24.28316.0
Copyright (C) Microsoft Corporation.  All rights reserved.

exceptions.obj : error LNK2019: unresolved external symbol zend_string_init_interned referenced in function sapnwrfc_register_exceptions
sapnwrfc.obj : error LNK2001: unresolved external symbol zend_string_init_interned
exceptions.obj : error LNK2019: unresolved external symbol spl_ce_RuntimeException referenced in function sapnwrfc_register_exceptions
sapnwrfc.obj : error LNK2019: unresolved external symbol std_object_handlers referenced in function register_sapnwrfc_connection_object
C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php_sapnwrfc.dll : fatal error LNK1120: 3 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64\link.exe"' : return code '0x460'
Stop.

c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>

If I try to build the unshared version another problem at nmake snap
c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>nmake

Microsoft (R) Program Maintenance Utility Version 14.24.28316.0
Copyright (C) Microsoft Corporation.  All rights reserved.

SAPI.c
fopen_wrappers.c
getopt.c
internal_functions.c
main.c
mergesort.c
network.c
output.c
php_content_types.c
php_ini.c
main\main.c(416): warning C4133: 'function': incompatible types - from 'char *' to 'LPWSTR'
php_open_temporary_file.c
main\main.c(1727): warning C4133: 'function': incompatible types - from 'char [4096]' to 'LPCWSTR'
php_scandir.c
php_syslog.c
php_ticks.c
php_variables.c
reentrancy.c
main\php_ini.c(543): warning C4133: 'function': incompatible types - from 'char *' to 'LPWSTR'
main\php_ini.c(553): warning C4133: 'function': incompatible types - from 'char *' to 'LPWSTR'
rfc1867.c
snprintf.c
spprintf.c
strlcat.c
strlcpy.c
   Creating library C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php7ts.lib and object C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php7ts.exp
   Creating library C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php.lib and object C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php.exp
SAPI sapi\cli build complete

c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>

And the nmake snap log
c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>nmake snap

Microsoft (R) Program Maintenance Utility Version 14.24.28316.0
Copyright (C) Microsoft Corporation.  All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.24.28316.0
Copyright (C) Microsoft Corporation.  All rights reserved.

'C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php7ts.dll' is up-to-date
        for %T in (php.exe) do "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64\nmake.exe" /I /nologo "%T"

c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64\nmake.exe" /I /nologo "php.exe"
SAPI sapi\cli build complete
        for %T in () do "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64\nmake.exe" /I /nologo "%T"
        for %T in () do "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64\nmake.exe" /I /nologo "%T"
        rd /s /q C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php-7.4.2
        rd /s /q C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\pecl-7.4.2
        del /f /q C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php-7.4.2-Win32-vs16-x64.zip
        del /f /q C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php-debug-pack-7.4.2-Win32-vs16-x64.zip
        del /f /q C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\pecl-7.4.2-Win32-vs16-x64.zip
        c:\php-sdk\bin\php\do_php.bat -d date.timezone=UTC -n -dphar.readonly=0 win32/build/mkdist.php "7.4.2" "C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS" "C:\php-sdk\phpdev\vc15\x64\deps" "php7ts.dll" "php.exe" " " " " "no"
Making dist for C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS
Copying php7ts.dll from C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS to C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS/php-7.4.2
Copying php.exe from C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS to C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS/php-7.4.2

Warning: copy(C:\php-sdk\phpdev\vc15\x64\deps/bin/glib-2.dll): failed to open stream: No such file or directory in C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\win32\build\mkdist.php on line 351
WARNING: couldn't copy glib-2.dll into the dist dir
Warning: copy(C:\php-sdk\phpdev\vc15\x64\deps/bin/gmodule-2.dll): failed to open stream: No such file or directory in C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\win32\build\mkdist.php on line 351
WARNING: couldn't copy gmodule-2.dll into the dist dir
Warning: copy(C:\php-sdk\phpdev\vc15\x64\deps/bin/libenchant_myspell.dll): failed to open stream: No such file or directory in C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\win32\build\mkdist.php on line 351
WARNING: couldn't copy libenchant_myspell.dll into the dist dir
Warning: copy(C:\php-sdk\phpdev\vc15\x64\deps/bin/libenchant_ispell.dll): failed to open stream: No such file or directory in C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\win32\build\mkdist.php on line 351
WARNING: couldn't copy libenchant_ispell.dll into the dist dirWARNING: you don't have a snapshot template, your dist will not be complete
Generating pharcommand.phar
adding clicommand.inc
adding directorygraphiterator.inc
adding directorytreeiterator.inc
adding invertedregexiterator.inc
adding phar.inc
adding pharcommand.inc
Creating phar.phar.bat
        cd C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php-7.4.2
        7za.exe a ..\php-7.4.2-Win32-vs16-x64.zip .

7-Zip (a) 18.05 (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2018-04-30

Scanning the drive:
5 folders, 19 files, 15091106 bytes (15 MiB)

Creating archive: ..\php-7.4.2-Win32-vs16-x64.zip

Add new data to archive: 5 folders, 19 files, 15091106 bytes (15 MiB)

Files read from disk: 19
Archive size: 5329198 bytes (5205 KiB)
Everything is Ok
        cd C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\pecl-7.4.2
        7za.exe a ..\pecl-7.4.2-Win32-vs16-x64.zip .

7-Zip (a) 18.05 (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2018-04-30

Scanning the drive:
0 files, 0 bytes

Creating archive: ..\pecl-7.4.2-Win32-vs16-x64.zip

Add new data to archive: 0 files, 0 bytes

Files read from disk: 0
Archive size: 22 bytes (1 KiB)
Everything is Ok
        cd C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS\php-test-pack-7.4.2
        7za.exe a ..\php-test-pack-7.4.2.zip .

7-Zip (a) 18.05 (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2018-04-30

Open archive: ..\php-test-pack-7.4.2.zip
--
Path = ..\php-test-pack-7.4.2.zip
Type = zip
Physical Size = 13996208

Scanning the drive:
315 folders, 16742 files, 33501349 bytes (32 MiB)

Updating archive: ..\php-test-pack-7.4.2.zip

Add new data to archive: 315 folders, 16742 files, 33501349 bytes (32 MiB)

Files read from disk: 16742
Archive size: 13996208 bytes (14 MiB)
Everything is Ok
        cd C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS
        7za.exe a php-debug-pack-7.4.2-Win32-vs16-x64.zip *.pdb

7-Zip (a) 18.05 (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2018-04-30

Scanning the drive:
0 files, 0 bytes

Creating archive: php-debug-pack-7.4.2-Win32-vs16-x64.zip

Add new data to archive: 0 files, 0 bytes

Files read from disk: 0
Archive size: 22 bytes (1 KiB)
Everything is Ok
        7za.exe a php-devel-pack-7.4.2-Win32-vs16-x64.zip php-7.4.2-devel-vs16-x64

7-Zip (a) 18.05 (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2018-04-30

Open archive: php-devel-pack-7.4.2-Win32-vs16-x64.zip
--
Path = php-devel-pack-7.4.2-Win32-vs16-x64.zip
Type = zip
Physical Size = 869892

Scanning the drive:
19 folders, 252 files, 4867477 bytes (4754 KiB)

Updating archive: php-devel-pack-7.4.2-Win32-vs16-x64.zip

Add new data to archive: 19 folders, 252 files, 4867477 bytes (4754 KiB)

Files read from disk: 252
Archive size: 869892 bytes (850 KiB)
Everything is Ok
        cd C:\php-sdk\phpdev\vc15\x64\php-7.4.2-src\x64\Release_TS

c:\php-sdk\phpdev\vc15\x64\php-7.4.2-src>

Here is the resulting folder

Using https://wiki.php.net/internals/windows/stepbystepbuild_sdk_2 the extension builds just fine with PHP 7.4.2.

Using https://wiki.php.net/internals/windows/stepbystepbuild_sdk_2 the extension builds just fine with PHP 7.4.2.

I will definitely try this out, i tried with the initial build tools, not the sdk 2.
I’ll be back with the results.

I did compile it but now in WAMP i do receive the following error.
Warning: PHP Startup: Can't load module 'C:/ownprograms/wamp/bin/php/php7.4.2/ext/php_sapnwrfc.dll' as it's linked with 14.24, but the core is linked with 14.16 in Unknown on line 0

I've never tried WAMP. I guess you need the same compiler/linker/VC++ versions.

I've never tried WAMP. I guess you need the same compiler/linker/VC++ versions used to build the PHP core in WAMP to build the extension.

I guess so since i built it now with VS2015 x64 Native Tools i got this specific error.
[17-Feb-2020 10:48:43 UTC] PHP Warning:  PHP Startup: sapnwrfc: Unable to initialize module
Module compiled with build ID=API20190902,TS,VS16
PHP    compiled with build ID=API20190902,TS,VC15
These options need to match

@szabizs Try with the attached extensions. I've built for both 7.4.2 and 7.4.3 with extension version 1.3.0, vc15, ts and x64. It should work.
php_sapnwrfc.zip

@szabizs Try with the attached DLLs. I've built it for both 7.4.2 and 7.4.3 with extension version 1.3.0, vc15, ts and x64. It should work.
php_sapnwrfc.zip
For any PHP version > 7.2 except master branch you need to use VC15(Visual Studio 2017). I saw in your trace that you were using VC16 (Visual Studio 2019).

Thank you for making me understand the issue.
I've tried both DLL's and they work as expected.
Best of all!

I have attached the pre-built DLLs for 7.4.2 and 7.4.3 to the 1.3.0 release page.
Thanks @avadaneidanut for providing them.

Hello, I am currently trying to implement the library in php 8.2 but I find the following error "sapnwrfc.dll' as it's linked with 12.0, but the core is linked with 14.29 in Unknown", I already tried to compile it but still no success, anyone have you managed to compile the dll for php 8.2?


Cell Normals

Hello amazing vedo devs,
i need to access the normals of a cell. I looked for any documentation and examples, but only can find the "computeNormals(points=True, cells=True..)" call.
But how can I access the cell normals? Mesh.normals() only shows the normals at points, but not cells.
Thank you very much!

Thanks! Try this:
pip install -U git+https://github.com/marcomusy/vedo.git
then
from vedo import *
s = Sphere([.25,0,0])
m = Mesh([s.points(), s.faces()]) # lets remake it so it has no normals
m.computeNormals(cells=True, points=False).print() # print() shows available arrays
print(m.celldata["Normals"])

Thanks for the fast answer! This helped me a lot.


[feature-request] Add a way to use a table/class (?) as globals

I'd like only certain lua files to have certain globals (but it's the same globals every time) so i think it'd be nice...
... maybe a new annotation:
global/globals is used in e.g. eslint but it's used to specify a list of globals, not a single object containing all the globals
@globals_table is a bit clunky but at least it isn't confusing...

ok so what i'm actually doing is trying to use lua as syntax for js... which is a terrible idea
what this means though is that along with declaring globals it'd be nice if you could also remove builtin libraries for a specific file, for example:
--- @nobuiltin
--- @globals_class js_globals
local test = ("x"):byte() -- should be invalid

I think an achieveable solution would be to allow the overriding of pre-defined globals, such as when a component is hooked to do something other than what was originally intended, or in your case to delete the definition of a global altogether. I doubt that the system can be taught to ignore the string metatable, however.

@BribeFromTheHive

re: overriding pre-defined globals - iirc this is already possible on a workspace level; same with declaring new globals
re: ignoring the string metatable, i think it'd be quite easy to change, see the relevant code below. that said, it make it sound like you can achieve basically the same effect by just overriding stringlib with an empty table
https://github.com/sumneko/lua-language-server/blob/bf65753f457634d27f2cc4cc60ac68838ca0f9b5/script/vm/compiler.lua#L165-L173

Sorry if I didn't get something in your description, but when you declare a type, using the @class or @alias annotation, that type is available from everywhere in your project. There are no scopes in annotations and I don't understand the reason to make them global. They are already global by default. For this reason I usually name all my types according to their require path, such as "lib.somelib-sometype", so as not to clutter up the namespace.
In order to lsp server know that the variable is global and not produce errors, it must be added to the settings.json in your workspace: Lua.diagnostics.globals.

@lua-rocks i mean declaring global variables in one file (but not the rest of the files).
which is exactly why Lua.diagnostics.globals wouldn't work for me

@somebody1234 I see what you mean now. Personally, I have never encountered the need to use multiple global scopes in the same project.

yeah... i don't think anyone sane would have a need for that - i'd just like something like that just because of laziness honestly - it's easier to not have to change workspace

alternatively it'd be good enough if the extension could be disabled for certain subdirectories

You can ignore a directory with workspace.ignoreDir.

I recommend you to use multi-workspaces

multi-workspaces?

Different workspaces have an independent global environment and settings.
So you can set one of the workspace to disable all builtins.


-10V after nidaqmx AO channel stopped generation from buffer

Problem :
We observed that the AO channels could display large -10V drops from the last value of the buffer, when the generation stopped.
Such "bad generation stop" was observed :

inbetween counter triggered re-generations (after the end of a buffer, -10V until the next counter clock triggered PFI0 pulse, that restarts buffer AO voltage generation from the start of the buffer)
At the end of the generation once the counter clock is stopped.

What should happend :
With our card, model PCIe-6738, the default mode of AO task property AOIdleOutputBehavior after generation should be MAINTAIN_EXISTING_VALUE. Not fall back to -10V
Solution :
The fix is done only with point 1. However, until further experimented, i note my strange observations with the behaviour of nidaqmx.Task().write with various data types, in point 2.

1- The main change that solved the error in our case, was resetting the buffer and the clock setup at each assignation of a new waveform (i.e. resetting everything that is waveform data length specific).
This meant :

removing the conditionnal buffer unreservation (such reset only occurs in scout mode in original code)
adding a clock setup reset between the buffer unreservation, and the setting the buffer length to new length of voltages + task commiting.
Then proceed to normal task.write with the data for the channels

2- Changing the data type fed to nidaqmx.Task().write affected the output. I noticed supplying a 2D np array ( data containing square pulses of 0 to 5V, encoded over np.float dtype) or converting the same 2D array to a list of lists, and the item type to built in float, affected the AO output to either be "corrupted" and finishing at -10V (np array) or valid (built in types). This behaviour was reproducible with a given input data (same 2D array = reproducible corrupted vs non corrupted output depending in dtype), but for some arrays, it didn't occur. It's really weird. This seemed to be unrelated to the exaspim code as i tested this in a stand alone py file using the same ni card config as the one in https://github.com/AllenNeuralDynamics/exa-spim-control/blob/main/exaspim/devices/ni.py
As this issue was pretty unclear, i added the option to convert the waveforms to built-in dtypes (using new_v) but after resolving issue 1 described above, this proved un-necessary, so i kept using the original voltages_t to write to ni Task object.

Fixed code :
def assign_waveforms(self, voltages_t, scout_mode: bool = False):

     #if scout_mode:
     self.ao_task.control(TaskMode.TASK_UNRESERVE)   # Unreserve buffer
     self.ao_task.timing.cfg_samp_clk_timing(
         rate=self.samples_per_sec,
         active_edge=Edge.RISING,
         sample_mode=AcqType.FINITE,
         samps_per_chan=len(voltages_t[0]))
     self.ao_task.out_stream.output_buf_size = len(voltages_t[0])  # Sets buffer to length of voltages
     self.ao_task.control(TaskMode.TASK_COMMIT)

     new_v = [] # create a list of list in place of the original voltages_t data format, wich may be 2D array
     for (channel_name, channel_id), data in zip(self.ao_names_to_channels.items(), voltages_t) :
         self.log.debug(f"Writing channel ao{channel_id}-{channel_name} with :\n"
                        f"{len(data)} samples, "
                        f"max={max(data)}, min={min(data)}, "
                        f"element dtype ={type(data[0])}, sequence dtype = {type(data)}")
         new_v.append([float(item) for item in data]) # fill with built in floats instead of np.float

     # note that new_v, the built-in data fromat for voltages_t is unused. This proced un-necessary with
     # the ao_task.out_stream and ao_task.timing.cfg_samp_clk_timing unconditionnal resets above.

     self.ao_task.write(voltages_t, auto_start=False)

Solved in da8364d


Allow to override the users table to log in [multi auth setup]

This PR will allow using other table instead of being tightly-coupled to the users table.
It would be very useful for multi-auth setup where the admins and the users are separated on different table.

I used this version in my project. The default Laravel Auth will be affected.
Below is my voyager setup.
`'auth' => [
/*
* Set the table name that you want to authenticate against
*/
'table' => 'admins',
    /*
     * Set the guard you wish to use. Use null for default laravel guard
     */
    'guard' => 'admin',
],`

All Auth::user will use table Admins not Users.
Can I set only Voyager use this config?
Thanks.

According to http://mattallan.org/posts/setting-the-guard-per-route-in-laravel/ in should be possible since 5.3 to simply write
Route::group(['as' => 'voyager.', 'guard' => config('voyager.auth.guard')], function () {

But then users also would need to add this in there own web.php file:
Route::group(['prefix' => 'admin', 'guard' => config('voyager.auth.guard')], function () {
    // ...
});

@iwasherefirst2  Thanks your information.
After the setup, the default Auth will be set to 'Admin', not 'Web'.
I tried the link solution.
Route::group(['guard' => 'admin'], function () {     Route::get('/admin/test', function () {         return Auth::user()->toJson();     }); });
Route::group(['guard' => 'web'], function () {     Route::get('/web/test', function () {         return Auth::user()->toJson();     }); });
I login Admin user via Voyager login page, above 2 functions return same user.
I can solve the issue via below code to get default auth user like the helper.php
Auth::guard('web')->user()
If possible, I think set Auth::user() is represent Auth::guard('web')->user(), that will be better.
Thanks.

I suggest to remove below change in VoyagerServiceProvider.php
Auth::shouldUse(config('voyager.auth.guard'));
Because above code will change the default Auth guard as config('voyager.auth.guard').
It is not necessary, because we are using helper method voyager_auth() to get the voyager auth.
Route::get('/admin/test2', function () { return voyager_auth()->user()->toJson(); });
But Voyager auth and Laravel Auth (created by "php artisan make: auth" command) still have conflict.
When login Voyager, it will redirect to root url (http://project/) not Voyager dashboard.

@plutojw sorry for the confusion, but my last post was not directed at you (should have mentioned it, whoups)! I just posted an alternative way of how to change this plugin, to avoid having voyager_auth() everywhere.. But for your question: Did you create a specific Admin Model & Table? This version only allows you to use a different guard then the default one in Voyager. You have to set up the other things by yourself. See https://github.com/the-control-group/voyager/issues/2568

Closing as using a route based guard might be a better option to go for this.

@askaoru do you mean you prefer the workaround at #2568, or do you want a different pull request for that?


Use polars.scan_csv() and/or dialect detector combined with separator to read CSV files without the for loop

Detect the dialect and use that detection directly in the read_csv(separator = ). There's also a function called scan_csv() which might be useful for our purposes of only looking to get the metadata.
See https://github.com/seedcase-project/seedcase-sprout/pull/154#discussion_r1492878137_

I already tried this approach (using the separator and eol_char) but there are more aspects to a CSV dialect.
For instance, polars.read_csv (or polars.scan_csv) is not able to parse this dialect:
first_name,    second_name,    age
Philip,           Christiansen,       36

Okay... I may have found a solution. If we use pyarrow it seems to solve the issue. I though I already tried, but some combination of arguments may have disabled it.
read_csv(csv_file, use_pyarrow=True, separator=';')
use_pyarrow: Try to use pyarrow’s native CSV parser. This will always parse dates, even if try_parse_dates=False. This is not always possible. The set of arguments given to this function determines if it is possible to use pyarrow’s native parser. Note that pyarrow and polars may have a different strategy regarding type inference.
However, it is not possible to use pyarrow for polars.scan_csv. But I don't think it would add a lot of benefits to this particular case: Reading 1000/500 rows is very quick and we need to read everything in this chunk anyways

Another issue though... It is unable to handle initial whitespace for booleans (it might be okay, because we are already have custom logic for handling these). I the example below the column 'b1' is derived as strings:
`
        "i1;    f1;     b1;     s1\n"
        "10;    5.3;    True;   Hi\n"
        "11;    1.0;    False;  Hello\n"
        "12;    1;      False;  Man"

`

So... We should not enable use_pyarrow (it doesn't work when n_rows is specified and it is unable to handle initial whitespace for booleans).
But we could rely on polars to read and strip the values as csv.reader is slow (the for-loop is not slow, but together with 'csv.reader' it is). I have tried to read a CSV file with 6 mio rows:

csv.reader takes 2.5 seconds to read the file. And 10 seconds to read and write to a new file
polars.csv_read takes 0.25 seconds to read the file. And 1.5 seconds to to read and write to a new file with trimmed values

NOTE The performance is not a problem when reading 1000 rows to derive the schema, but we need a solution when we need to validate the entire dataset.

This has mostly been resolved in #154


Speed Up Inference

I had successfully trained TTS for Indonesia. Here I also attached the result of mine compared to original utterance. It's trained on 23400 audio (about 17 hours) using modified parameters as attached.
The result is impressive and very natural thanks to your great implementation. Yet I still don't satisfied with the time needed to infer the model. I believe it can be faster. Using GPU or half precision don't help.
Can you give me hints to speed up this? Thank you.
Appendixes
Hyperparameters
"""Hyper parameters."""
__author__ = 'Erdene-Ochir Tuguldur'

class HParams:
    """Hyper parameters"""

    disable_progress_bar = False  # set True if you don't want the progress bar in the console

    logdir = "logdir"  # log dir where the checkpoints and tensorboard files are saved

    # audio.py options, these values are from https://github.com/Kyubyong/dc_tts/blob/master/hyperparams.py
    reduction_rate = 4  # melspectrogram reduction rate, don't change because SSRN is using this rate
    n_fft = 2048 # fft points (samples)
    n_mels = 80  # Number of Mel banks to generate
    power = 1.5  # Exponent for amplifying the predicted magnitude
    n_iter = 50  # Number of inversion iterations
    preemphasis = .97
    max_db = 100
    ref_db = 20
    sr = 16000  # Sampling rate
    frame_shift = 0.05  # seconds
    frame_length = 0.75  # seconds
    hop_length = int(sr * frame_shift)  # samples. =276.
    win_length = int(sr * frame_length)  # samples. =1102.
    max_N = 180  # Maximum number of characters.
    max_T = 210  # Maximum number of mel frames.

    e = 128  # embedding dimension
    d = 256  # Text2Mel hidden unit dimension
    c = 512+128  # SSRN hidden unit dimension

    dropout_rate = 0.05  # dropout

    # Text2Mel network options
    text2mel_lr = 0.005  # learning rate
    text2mel_max_iteration = 300000  # max train step
    text2mel_weight_init = 'none'  # 'kaiming', 'xavier' or 'none'
    text2mel_normalization = 'layer'  # 'layer', 'weight' or 'none'
    text2mel_basic_block = 'gated_conv'  # 'highway', 'gated_conv' or 'residual'
    text2mel_batchsize = 64

    # SSRN network options
    ssrn_lr = 0.0005  # learning rate
    ssrn_max_iteration = 150000  # max train step
    ssrn_weight_init = 'kaiming'  # 'kaiming', 'xavier' or 'none'
    ssrn_normalization = 'weight'  # 'layer', 'weight' or 'none'
    ssrn_basic_block = 'residual'  # 'highway', 'gated_conv' or 'residual'
    ssrn_batchsize = 24

Sample audio
result.zip
Inference Time

Character Count
Average Duration (seconds)
CPU Utilization (%)

15 < c ≤20
9
55.1

20 < c ≤ 25
9
38.1

25 < c ≤ 30
12
70.9

30 < c ≤ 35
12
71.9

35 < c ≤ 40
12
72.7

40 < c ≤ 45
12
72.7

45 < c ≤ 50
12
72.2

50 < c ≤ 55
15
72.4

55 < c ≤ 60
15
71.6

60 < c ≤ 65
15
71.4

65 < c ≤ 70
18
71.3

70 < c ≤ 75
21
70.7

75 < c ≤ 80
27
90.2

80 < c ≤ 85
18
70.6

85 < c ≤ 90
24
70

90 < c ≤ 95
24
70.1

95 < c ≤ 100
24
70.2

100 < c ≤ 105
24
69.9

105 < c ≤ 110
24
69.1

110 < c ≤ 115
27
69.2

115 < c ≤ 120
33
69.3

120 < c ≤ 125
33
77.4

125 < c ≤ 130
42
81.7

130 < c ≤ 135
48
81.2

135 < c ≤ 140
48
80.7

140 < c ≤ 145
63
84.1

145 < c ≤ 150
63
84

150 < c ≤ 155
81
82.7

155 < c ≤ 160
75
82.9

160 < c ≤ 165
72
81.6

165 < c ≤ 170
81
82.3

170 < c ≤ 175
87
83.1

175 < c ≤ 180
87
82.7

This repo is not actively maintained. Try NVidia Tacotron https://github.com/NVIDIA/tacotron2 which is much faster.


Android - How to write to SD Card

Related to #636
I'm trying to write a file on Android, and it sounds like I need to write to the external SD card for this (which is fine because this is for a game that I'm setting up on a single device). Some sources are saying I should just be able to write to the sd card at "/sdcard/" but it's not succeeding. Any idea how I can do this? I imagine if I want to get the folder, I'll need to access the internal data of utils.c, which I'm not sure I can do with editing source code..

I haven't tried it myself but it seems the answer is here and here.
It could just be a matter of permissions when generating the .APK. You should add the following line in AndroidManifest.xml:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

That is automatically generated here. And proposed line should be added right after this one.
After that, just use the regular fopen() and fclose(), NOT the android_fopen() equivalent!
Please, let me know if it works! :)

Cool, I did this, but it was still not working.  I decided to pop into adb shell found that the folder was indeed /sdcard/, and I manually created the file that I was trying to create. After I did that, everything worked! So maybe it was some kind of permission issue regarding file creation?
Thanks!

@SethArchambault Thanks for the feedback! Mmmh...
Actually, the AndroidManifest.xml proposed line is supposed give the required permission... ok, not really...
Here some more relevant info. I'll keep investigating...


Unsplash.com images no longer available

Describe the bug
Images used for several area tiles sourced from unsplash.com no longer work.

https://source.unsplash.com/500x230/weekly?Continent
https://source.unsplash.com/500x230/weekly?France Region
https://source.unsplash.com/500x230/weekly?France County
etc..

Only Tunisia governate still functions.
To Reproduce
No specific need, fails on every install. Can also be seen on the demo.
Expected behavior
Expected images to load.
Describe alternatives you've considered
Would probably be best to include these images with one of the project repo's instead of 3rd party locations.
Screenshots
See demo.geoguess.games
What is your OS ?
Windows
What browsers are you seeing the problem on?
Microsoft Edge
Version
latest geoguess:master image
Additional context
No response
Code of Conduct

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

When imageUrl is not set in the catalogue of https://github.com/GeoGuess/GeoGuess-Maps, GeoGuess will generate an image with Source API unsplash.
But Source API from unsplash.com was deprecated (https://changelog.unsplash.com/deprecations/2021/11/25/source-deprecation.html) and today down ...
I add imageUrl in https://github.com/GeoGuess/GeoGuess-Maps/pull/39
Thanks for report


when i run this command on education office 365 , it doesnt delete the team from team client application

[Enter feedback here]

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

ID: afbc44a5-3c1b-f4b6-f01c-59c3533ea357
Version Independent ID: 3bea8b08-ff9a-a7c3-bfbf-1e482982b09e
Content: Remove-Team (MicrosoftTeamsPowerShell)
Content Source: teams/teams-ps/teams/Remove-Team.md
Service: teams-powershell
GitHub Login: @SerdarSoysal
Microsoft Alias: serdars

Hello @jeffangama Jeff, how are you?
It could take a while to reflect the team removal, please can you check if you are running the latest GA PowerShell module, currently on 1.1.4 version.
If you still face issues please open a support ticket directly from your tenant. Thank you!

@get-itips Thank you very much for the contribution and sharing this explanation. @jeffangama Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

indeed it took some time to remove. It works as expected removing the class / group. For some users the teams are still visible. I've a ticket on going with microsoft. Thank you for your answer


DeprecationWarning: The transaction.commit() method is deprecated

Running:
Name: py2neo
Version: 2021.2.3
Summary: Python client library and toolkit for Neo4j
Home-page: https://py2neo.org/
Author: Nigel Small
Author-email<EMAIL_ADDRESS>License: Apache License, Version 2.0
Location: /opt/conda/lib/python3.9/site-packages
Requires: certifi, packaging, six, urllib3, pansi, monotonic, interchange, pygments
Required-by:

In the example pages:

from py2neo import Graph, Node, Relationship
g = Graph()
tx = g.begin()
a = Node("Person", name="Alice")
tx.create(a)
b = Node("Person", name="Bob")
ab = Relationship(a, "KNOWS", b)
tx.create(ab)
tx.commit()
g.exists(ab)

But I get:
DeprecationWarning: The transaction.commit() method is deprecated, use graph.commit(transaction) instead   tx.commit().
What's the new way of doing transactions?

It seems like this should be instead the example:

graph.delete_all()
tx = graph.begin()
a = Node("Person", name="Alice")
tx.create(a)
b = Node("Person", name="Bob")
ab = Relationship(a, "KNOWS", b)
tx.create(ab)
graph.commit(tx)
graph.exists(ab)

Which returns True.

This is correct. As the warning states, the commit and rollback methods were moved to the Graph object. This was so that they sat alongside the begin method, keeping all transaction management operations in the same place.


CLS compliancy

I am getting "Argument type IConfiguration is not CLS-compliant" then I try to pass it as an argument in a assembly, which is marked as CLS compliant.
"Microsoft.Framework.ConfigurationModel": "1.0.0-beta4"

I wonder what isn't CLS compliant about that type? Granted, it's been a loooooong time since beta4...

@Eilon Thing is that none of the assemblies are marked as CLS compliant. So, you are getting that warning also with the latest versions (e.g. RC1).
Question is, should all aspnet assemblies be marked CLS compliant if possible? And how would I do that with project.json without an AssemblyInfo.cs?

Question is, should all aspnet assemblies be marked CLS compliant if possible?

Is that still a thing :smile: ?

And how would I do that with project.json without an AssemblyInfo.cs?

You don't. You use an AssemblyInfo

@davidfowl

Is that still a thing :smile: ?

Well, tbh, I don't know, is it? :smiley:
I'm getting asked why my nugets are not CLS compliant by users which use the old style csproj with CLS compliant set to true (which was the default for a long time).
I stumbled upon this issue while finding out what you guys are doing with it and if there is any general coding guideline; but couldn't really find any.
Would you say we can ignore it now?

@davidfowl unless you think we need to fix anything, this looks like a non issue.

I'm running into this issue now can we get these marked as cls compliant so my build passes.

@divega ?

Also should configuration be moved to a dotnet specific org as it's net standard 1.0 and would be useful in .net core apps as well :)

I'm running into this issue now can we get these marked as cls compliant so my build passes.

Trying to figure out if there is any other recommendation besides suppressing the corresponding warnings.

Also should configuration be moved to a dotnet specific org as it's net standard 1.0 and would be useful in .net core apps as well :) Should I file this under a different issue?

I don't think that is specific to configuration but in general all the Microsoft.Extensions.* packages can be used outside ASP.NET. They currently live here and I am not aware of any plans to move them, but yes, feel free to create a new issue e.g. in http://github.com/aspnet/home and explain why it matters to you.

I could add an excluded warning for this, but I'd rather not... It would be nice if developers didn't have to worry about this esp, with existing libs.


Avoid iterator invalidation without effective insert

There's an issue with accessing an existing value with operator[] when
hashtable size reaches a certain value: iterator is sometimes being
invalidated leading to broken iterators invalidation contract:

insert, emplace, emplace_hint, operator[]: if there is an effective
insert, invalidate the iterators.

or use-after-free from calling code if user is unaware of such behaviour.
Fix this issue by actually issuing a rehash in effective erase and insert
routines.

Thank you, we effectively should avoid rehashing when no actual insert is done.
I added some comments to the PR.

Thanks for the feedback. I have pushed fixes for review and additionally reverted + 1 in load threshold check to preserve original behaviour

Thank you for the change, looks good. Just a small comment left.
Note that the map doesn't guarantee that erase is noexcept per the commit message. The problem is more that an exception could be thrown during the rehash after an element was successfully erased which goes against the strong exception guarantee (see https://en.cppreference.com/w/cpp/language/exceptions).
I also would like to limit the rehash to insertions as done in std::unordered_map

I think I have addressed all of your comments in the last revision and it is safe to merge. Also, I have squashed all the commits into a single one (since they no longer make sense on their own).
Sorry for the rather long delay, been busy with other things.

Thank you, I merged the change.


[WIP] Adding VelocyStream Support over ArangoDB

VelocyStream support has been integrated into ArangoDB with release version 3.1.
The changes in this PR have been manually merged, and this PR is now obsolete.
Closing this issue now.


Encapsulate default configuration in a config model

Addresses #29

This may need a rebase if #36 is merged first. Let me know and I'll take care of it.

This looks great! Rebase would be great!

Rebased!

Awesome! Thx a lot!


Option to disable multicast route

Fixes #1741.

I am not convinced you'd really want to set this on a per container basis in the proxy. All other aspects of container configuration performed by the proxy are controlled by global options, with WEAVE_CIDR the only exception.
I don't see how this is conceptually any different from --no-rewrite-hosts and --without-dns, both of which disable aspects of weave-specific container munging. And both of which have equivalent weave run options; not control via env vars.

I am not convinced you'd really want to set this on a per container basis

I disagree. For example, you might want to run one set of Elasticsearch containers that discover each other via multicast over the weave network in conjunction with another set that multicast video traffic over the docker bridge.

I don't see how this is conceptually any different from --no-rewrite-hosts

They're completely different - the host file rewriting is there to correct a behaviour most people consider to be broken; being able to turn it off is an escape hatch in case there was some unforeseen problem with the mechanism.

and --without-dns

You're much more likely to want to control the routing of subsets of your hosts (containers in this case) than you are to vary the DNS server.

You're much more likely to want to control the routing of subsets of your hosts (containers in this case) than you are to vary the DNS server.

We have had exactly one user half-ask for the former.
A few other data points:

Env vars are a very obscure way of configuring things. Options are generally much better. They show up in 'usage', for starters.

weave run is configured by options, not env vars. If we really want configurability per-container then we should follow the WEAVE_CIDR example - options/params to weave run and an env var when starting containers via the proxy.

Overall I am concerned about the cognitive burden we are inflicting on all our users here, for a feature that approximately nobody needs.

weave run is configured by options, not env vars

WEAVE_MTU? WEAVE_DOCKER_ARGS? WEAVE_PASSWORD?

Overall I am concerned about the cognitive burden we are inflicting on all our users here, for a feature that approximately nobody needs.

This is hyperbole. The cognitive burden of not supplying an option you don't know about is zero.

My mistake, you said weave run specifically, to which those env vars do not apply.

WEAVE_MTU

undocumented.

WEAVE_DOCKER_ARGS

undocumented. and only affects the router, not container configuration.

WEAVE_PASSWORD

only affects the router, not container configuration.

The cognitive burden of not supplying an option you don't know about is zero.

The cognitive burden of reading about an option you don't care about is non-zero. And it is considerably greater than zero when that option works differently to any other option.

Did you have any thoughts on this @bboreham ?

We have had exactly one user half-ask for the former.

I'm not sure if that meant me but if so, I apologise for not formulating the request well enough @rade :)
I don't have a personal need for multicast route control on a per-container basis. However, I would still appreciate if weave didn't force me into its own way of thinking either. So I would indeed expect that multicast routing is a feature I can globally disable. Unless, it is critical to weave to function properly. If not, why so much magic?

I think, since it inconvenienced one person enough to speak up, that means it will inconvenience more, so we should have an option to turn it off.
I am swayed by the argument that our general pattern is "options/params to weave run and an env var when starting containers via the proxy.".
On the other side, each option doubles the size of the space we should test, and we are already somewhat lacking in coverage.

I am swayed by the argument that our general pattern is "options/params to weave run and an env var when starting containers via the proxy.".

...or options/params for the proxy, for a "global" switch. As our user says..."I would indeed expect that multicast routing is a feature I can globally disable."

On the other side, each option doubles the size of the space we should test, and we are already somewhat lacking in coverage.

The same is true of env vars, right?

Yes, it was "on the other side" of the argument for having any option at all.

I have a feeling you guys are having a discussion which is larger than this issue. You are discussing the way to configure weave in general, mayb not the right place for this?
Anyhow, as I said, I prefer that, if weave makes a default decision for me, it provides a mechanism to revert/prevent this decision if I need to, in particular for multicasting. Unless, having this route is a mandatory feature for weave to function properly (if so, this ought to be documented).

As our user says..."I would indeed expect that multicast routing is a feature I can globally disable."

I'm fine with a global option indeed. However, I don't represent all users out there, neither do I claim to make decision for your design. If the option is on a container basis, it will suit me too. Whatever works for you will be fine by me. I just assumed a global option is simpler.
If you guys prefer not to add more clutter to your options set, that's fine. It's less pratical for me but I'll manage something out of band.

Reworked to use --no-multicast-route instead of an environment variable:

weave run --no-multicast-route ...
weave launch-proxy --no-multicast-route ...

Hey @awh, I was testing this and I ran into a problem. Was there a reason you didn't pass that parameter to weave launch too? This is what I've been using in my systemd unit as documented here: http://docs.weave.works/weave/latest_release/systemd.html
Anyhow, passing --no-multicast-route to weave launch makes it crash in a loop.

Was there a reason you didn't pass that parameter to weave launch too?

It's a parameter to the proxy and to weave run, just like --no-rewrite-hosts and --without-dns.


UNTIL value in localtime (without 'Z') throws exception, fix?

When using rrule.js (through InfCloud), my browser throws an exception

Error: Invalid UNTIL value: 20160731T150000

This happens because my calendar (imported from Zarafa) contains a number of
RRULE: entries containing UNTIL values in localtime, yet rrule.js expects a
until-date to always end in 'Z' and be UTC. The appended PR fixes that
behaviour. Please note however, that your current implementation is strictly
adherent to RFC2445 which prescribes UTC time in the UNTIL part, my PR will
loosen that. Therefore I do not really know if one would want to accept this PR.
As suggested by the InfCloud developers, I will also report this bug to Davical, since that is the software currently supplying the described broken data to InfCloud.

I have the same issue when using an iCloud url the rrule code throws the following:
Error: Invalid UNTIL value: 20160730T115959


Automatically detect glslang-tools package

Since Ubuntu 19.04 and Debian Buster, the glslang-tools package can be installed from the official PPAs. This package contains the glslangValidator executable.
It would be nice to add this to the documentation, as it makes installation simpler.
Moreover, the extension could automatically look for the executable in the Linux binaries folder (standard installation path of the glslandValidator executable), similar to what other VS Code extensions do.

It does not work in Windows see https://github.com/cadenasgmbh/vscode-glsllint/issues/15#issuecomment-613097788


Update dependencies

:arrow_up<EMAIL_ADDRESS>:arrow_up<EMAIL_ADDRESS>:arrow_up<EMAIL_ADDRESS>

@rauchg might I recommend greenkeeper.io to take care of your dependencies automatically? It sends PR's automatically to update your package.json dependencies ☺

We'll enable Greenkeeper very soon! Probably this week, I think.

@rauchg Looks like this is failing because app/package.json is missing some fields.

Greenkeeper is enabled now, btw!


Build test suite for the Microservice controller.

We want more confidence when refactoring and building new features. This starts
by adding a bunch of tests for the existing behaviour.
This patch adds tests for the current behaviour of the Microservice controller.
It checks that the output for a given CRD results in a specific
VersionedMicroservice.
This also moves the APIs back into the public domain for this repository so
other users can reference our API objects.

@jbowes I've looked at several other packages (contour, cert-manager, external-dns) and they all seem to put it in apis rather than api. Some of them put this under pkg, others don't.

I've looked at several other packages

ok, wfm!


ApiError Unable To Process

I am receiving ApiError 904 when completing payment with 3ds1 - https://docs.adyen.com/checkout/3d-secure/redirect-3ds2-3ds1/web-component#post-paymentdetails3ds
ApiException{error=class ApiError {     status: 500     errorCode: 904     message: Unable To Process     errorType: internal     pspReference:<PHONE_NUMBER>11826A     invalidFields: null }
Test card:
American Express | 3451 7792 5488 348 | International | 03 | 2030 | 7373
What is the issue?
Thanks

Hello, this was a temporary issue with our TEST environment APIs which was resolved shortly after.
Attempting the same payment again should result in a successful auth.

Hello, this was a temporary issue with our TEST environment APIs which was resolved shortly after.
Attempting the same payment again should result in a successful auth.


[CI] Check semver compatibility with all target platforms, not just the host platform

We use cargo-semver-checks-action in CI to ensure we do not accidentally break semver compatibility:
https://github.com/google/zerocopy/blob/0ff2dd15c958ab615b8094cf273f6b37d113c8fa/.github/workflows/ci.yml#L244-L264
This check occurs within our build matrix, so it's re-run for each target:
https://github.com/google/zerocopy/blob/0ff2dd15c958ab615b8094cf273f6b37d113c8fa/.github/workflows/ci.yml#L41-L53
However, we aren't actually making use of target, meaning we are re-running the exact same check 11 times on the Github Actions host target (x86_64-unknown-linux-gnu).
We need to modify this CI job to respect the value of target.  To do this, see here: https://github.com/obi1kenobi/cargo-semver-checks-action/issues/54#issuecomment-1711833826

Hello, @joshlf @jswrenn . Can you please assign me this issue. I am interested in working on this.

I've started looking into this. I made some additional comments in the linked issue https://github.com/obi1kenobi/cargo-semver-checks-action/issues/54
I basically see three ways forward here:

get cargo-semver-checks-action to add a pass-thru property in the form of target
not use the action; install, build and run cargo semver-checks --target ourselves
add a .cargo/config file with [build] target = ... to the downloaded repo before running the action (I only tried this briefly, but the file at least appears to be respected.)

Based on https://github.com/obi1kenobi/cargo-semver-checks-action/issues/54#issuecomment-2200279212, I think that a PR to cargo-semver-checks-action is the way to go. If that turns out to be unexpectedly difficult, it wouldn't be a huge deal for us to just use cargo semver-checks --target directly. Thanks for investigating this!

Update:
My PR in that repo was merged today. I'll have a look at the associated cache key bug as well, and then I'll come back to finally solve this issue.

Amazing, thank you for that!! It turned out to be a one-line change on our side, so I went ahead and implemented it: #1523
Thanks for unblocking this!

Glad I could help!
(As mentioned, there is still a chance that we're running into a caching issue here with different targets, but I'll get that resolved shortly.)

(As mentioned, there is still a chance that we're running into a caching issue in that action with different targets, but I'll get to that shortly.)

Sounds good! For performance reasons, we only run a subset of tests when a PR is pending (we run the full set of tests in the merge queue), so it's possible that when we try to merge https://github.com/google/zerocopy/pull/1523, that bug will crop up. Fingers crossed...


Only load the locales that are enabled on the channel

Bug report
Issue Description
In admin all locales are always being displayed in the dropdown menu when for example adding products.
Instead the dropdown should only output the locales that are enabled for the specific channel.
Preconditions
Please provide as detailed information about your environment as possible.
1. master branch.

Steps to reproduce
It is important to provide a set of clear steps to reproduce this bug.If relevant please include code samples.
1. Only enable one locale for channel default
2. Create a new product and check the channel locales above,  check below screenshot.

Actual result
The dropdown is populated with all locales instead of only one.

Hi @ghermans
Admin panel is not channel based so all the locale will be visible to admin added in locales table.
Locales enabled in channels used for the storefront only.

Hi @ghermans
Admin panel is not channel based so all the locale will be visible to admin added in locales table.
Locales enabled in channels used for the storefront only.

@vaishaliwebkul i send you a DM on Slack that provides more details regarding this.

@vaishaliwebkul i send you a DM on Slack that provides more details regarding this.

Hi @ghermans
please verify this issue again if this is fixed as expected.

Hi @ghermans
please verify this issue again if this is fixed as expected.

@vaishaliwebkul sure, i will verify this during the day

@vaishaliwebkul sure, i will verify this during the day

@ghermans
this is working fine, so closing this issue.
Feel free to reopen anytime if issue still exist.

@rahulshukla-webkul
channel-based locale filter for the configuration section also need to be added https://prnt.sc/yyh77q

fixed in this PR https://github.com/bagisto/bagisto/pull/4595


404 Result for Algorithms` links

@DmitriyBolgarov commented on Sat Apr 06 2019
Good Day. Is it ok, that most of the links for Algorighms redirect me to 404 page? Could anybody please make them innactive if not exists yet.

Сведения о документе
⚠ Не вносите правки в этот раздел. Это необходимо для связывания страницы сайта docs.microsoft.com с вопросом на GitHub.

ID: bd15175c-5b7d-4310-ecf5-32ffc7bc588b
Version Independent ID: 38adc676-934e-0ff9-c868-527f075c96df
Content: Задачи машинного обучения. Использование ML.NET
Content Source: docs/machine-learning/resources/tasks.md
Product: dotnet-ml
GitHub Login: @JRAlexander
Microsoft Alias: johalex

Hi team,
the user is reporting these links lead to 404 pages.

Since it also repros in the en-us page I'm moving it here
Kind regards

On that same page the link to the RandomTrainer in the Binary classification Learners section may be removed, since that class was removed with Pull Request #2849 (https://github.com/dotnet/machinelearning/pull/2849).


MSI Installer adds JDK to beginning of System's PATH variable

Upon installation of the JDK with the MSI installer, the installer configures the JDK directory right at the beginning of the System's PATH environment variable. According to some Windows experts, the JDK path should be appended to the end of System's PATH, or as a User's PATH variable.
Secondary bug: when JAVA_HOME feature is selected in the MSI installer, it will configure this variable in the System's variables table, but it will not reference it in the PATH environment variable. Meaning: the full path of the JDK is in the PATH and in the JAVA_HOME.
As for clarity, this is how Path is evaluated on Windows terminals:
Path = %Path% (System) ; %Path% (User)
Here are the changes I believe are adequate for the MSI installer, but most importantly, to initiate the discussion:

Add a way to allow the user to choose whether to configure the JDK in the User variables or System variables. The default selection should be User.
If the user selects System, it should be appended (end). If user selects User variable, it should be prepended (start).
If the user selects JAVA_HOME to be configured, the PATH variable should reference it - %JAVA_HOME%\bin.

For comparison, the Windows Installers from Oracle no longer configure the JDK ./bin path in PATH. They also don't set JAVA_HOME either.
Oracle's approach is simple: it has shim binaries for java.exe, javac.exe, javaw.exe, and jshell.exe on a separate folder. That folder is then prepended into the System variable PATH.
Once a user installs a newer JDK, the installer updates the shim binaries. If the user uninstalls a newer Oracle JDK, while still having an older Oracle JDK available, the shim rollback automatically. I have not looked into the details, but most likely this shim map is done in the Windows registry.
This prevents any conflict with Windows tools such as klist.exe, which exists both on Windows and on the JDK. For almost all scenarios, and especially for students, this approach is very adequate.
Issue with klist.exe
Currently with Temurin (and MS Build of OpenJDK), once the MSI installer is complete, klist no longer points to the Windows program, but to the JDK one.

CC @douph1 would be good to get your thoughts on this

Hi,

According to some Windows experts, the JDK path should be appended to the end of System's PATH,

Source ?

or as a User's PATH variable.

By default the jdk is installed per machine(admin right required) and not per user.
If msi install is forced per user, it make sense

Secondary bug: when JAVA_HOME feature is selected in the MSI installer, it will configure this variable in the System's variables table, but it will not reference it in the PATH environment variable. Meaning: the full path of the JDK is in the PATH and in the JAVA_HOME.

Yes actually JAVA_HOME is not reused in PATH, this is two different things.
(I don't know if expended variable works)

Add a way to allow the user to choose whether to configure the JDK in the User variables or System variables. The default selection should be User.

For default install this is not a good choice as it is installed per machine, so configure it in "user variable" from admin account will not reflect it for users account.
For user installed msi it is probably already the case :
Note that per-user-install is a edge case note properly documented in Website
https://github.com/adoptium/installer/tree/master/wix#per-user-install

If the user selects System, it should be appended (end). If user selects User variable, it should be prepended (start).
It is preprended since the beginning I think so the new installed one take precedence on the older one.
For many end-user it is the way to go and the exepected way.
If you installed a new java and put it at then end it will not be used until another action like, uninstall all previous JDK or specifing the full path.  I think many user expect it will be taken into account on next reboot without more work.

If the user selects JAVA_HOME to be configured, the PATH variable should reference it - %JAVA_HOME%\bin.

What the pro and cons for this ?
I fully understand the long known issue about klist.exe.
shim binaries is a good alternative who permit to get new jdk for services without restart and already proposed in https://github.com/adoptium/installer/issues/133
You can add you contribution here.

The main problem here is probably that the default PATH update (prepend) is always done
FeatureMain | Core AdoptOpenJDK installation (DEFAULT)
FeatureEnvironment | Update the PATH environment variable (DEFAULT)
If PATH is not needed maybe zip is a better option to handle JAVA_HOME and PATH by yourself.
I think we must continue to set the PATH in default setup and do it like before ( prepend ).
Maybe it is possible to add a feature to change the default behaviour from "FeatureEnvironment" so JDK will be appended. I don't know. Help wanted.
If possible it will probably be simpler than shim binaries to fix klist.

According to some Windows experts, the JDK path should be appended to the end of System's PATH,

Source ?

The Windows team at Microsoft, they let us know internally :-).

or as a User's PATH variable.

By default the jdk is installed per machine(admin right required) and not per user. If MSI install is forced per user, it make sense

Secondary bug: when JAVA_HOME feature is selected in the MSI installer, it will configure this variable in the System's variables table, but it will not reference it in the PATH environment variable. Meaning: the full path of the JDK is in the PATH and in the JAVA_HOME.

Yes actually JAVA_HOME is not reused in PATH, this is two different things. (I don't know if expended variable works) And into Wix Setup it is probably not easy to change a "feature" if another "feature" is selected. I probably don't want that changing my JAVA_HOME var will change my PATH. Is it hot or cold change only ?

Add a way to allow the user to choose whether to configure the JDK in the User variables or System variables. The default selection should be User.

For default install this is not a good choice as it is installed per machine, so configure it in "user variable" from admin account will not reflect it for users account.
For user installed MSI it is probably already the case : Note that per-user-install is a edge case note properly documented in Website https://github.com/adoptium/installer/tree/master/wix#per-user-install

If the user selects System, it should be appended (end). If user selects User variable, it should be prepended (start).

It is preprended since the beginning I think so the new installed one take precedence on the older one. For many end-user it is the way to go and the expected way. If you installed a new java and put it at then end it will not be used until another action like, uninstall all previous JDK or specifying the full path. I think many user expect it will be taken into account on next reboot without more work.

If the user selects JAVA_HOME to be configured, the PATH variable should reference it - %JAVA_HOME%\bin.

Pros are the java, javac and other tools can be immediately used from the Command Line.

I fully understand the long known issue about klist.exe.
shim binaries is a good alternative who permit to get new jdk for services without restart and already proposed in #133 You can add you contribution here.

the JDK path should be appended to the end of System's PATH
The Windows team at Microsoft, they let us know internally :-).

There is usage for both prepend and append. I think, it depends.
If we wanted to continue that a new JDK installed take precedence on older, this is the only solution at this time as we don't have shim binaries.
Shim binaries is probably a good idea but not easy to do well... but maybe Microsoft will dev this feature :)

If the user selects JAVA_HOME to be configured, the PATH variable should reference it - %JAVA_HOME%\bin.

Pros are the java, javac and other tools can be immediately used from the Command Line.

It is the same as now with full path .. use JAVA_HOME in path don't allow more than now.
You can already use java/javac immediately with the current path set.

https://github.com/adoptium/installer/issues/319

(Re-posting my comment from Slack here, as requested)
As far as I know, it is not recommended to prepend anything before C:\Windows\system32;C:\Windows; ... - these should always go first.

I suspect the behaviour of the ‘last thing I installed takes over’ is the principal of least surprise and so users are happy enough?

As an end-user, I would expect that Adoptium would be either added after C:\Windows; ... or at the end of the PATH.
Ideally, there should be a 'Take over' checkbox, which would control that behaviour.
(With 'Take over' set the JDK/JRE should be the first entry after C:\Windows\system32;C:\Windows; ..., without it - the last entry, i.e. APPEND method. Also an average end-user may expect this to set JAVA_HOME and Javasoft Registry keys as well, but this is is out of the scope of this question:) )

An hour of debugging why kinit and klist didn't behave properly led me to this thread here. Is there any traction on this?

Breaking from the expected behaviour of every other Vendor of OpenJDK is probably ill advised in this case.  One option could be to add a flag to the installer to allow the user to override the default behaviour.  We would happily consider a PR on this from the community.


Allow negative floats and integers fix #397

THIS IS MY FIRST COMMIT EVER {help please}
Usage:
      mystuff <x> <y>
now accepts mystuff -22 -3.141592

One consequence is that it bans the use of :
Usage:
        mystuff -1
Options:
        -1      This is totally a valid option but what is the use case ?

I added some tests for it

Merged at https://github.com/bazaar-projects/docopt/commit/9637d18e67823d2fc7bad6f9f7e214f4436f66f8 - thanks!

After thinking about this, I think there should be an option like:
docopt(__doc__, allow_negatives=True)

If someone wants to do it it looks quite easy.


Feature: Implemented Firebase Analytics and GTM events tracking

@zr-faisal I have fixed the build issue. Can you please check again if the events are getting triggered?
I deleted the event trigger for Connect flow as well since there are new changes on master. If you want you can add those back.

@zr-faisal did you manage to verify this PR again?

@subhransu I resolved the merge conflicts. Please verify again if we're good to merge it now.

The rebase seems to have gone wrong and also there are a lot of commits unrelated to this PR. I am closing this. Let's create a new PR from the latest master.


Bump rke2 v1.25.9+rke2r1

Problem:

Bump RKE2 v1.25.x.
Solution:

Bump RKE2 v1.25.x.
Related Issue:
https://github.com/harvester/harvester/issues/3747
Test plan:

Depends on https://github.com/harvester/harvester/pull/3910
device plugin registration order needs to be changed in Kubernetes v1.25 (ref1, ref2).

Seeing this error when creating a snapshot or backup.

Upgrade issues:

bundle issue (PSP)
fleet-local   mcc-local-managed-system-upgrade-controller   0/1                       ErrApplied(1) [Cluster fleet-local/local: unable to build kubernetes objects from current release manifest: resource mapping not found for name: "system-upgrade-controller" namespace: "" from "": no matches for kind "PodSecurityPolicy" in version "policy/v1beta1"...

mcc-rancher-monitoring-crd                    0/1                       ErrApplied(1) [Cluster fleet-local/local: unable to build kubernetes objects from release manifest: resource mapping not found for name: "rancher-monitoring-crd-manager" namespace: "cattle-monitoring-system" from "": no matches for kind "PodSecurityPolicy" in version "policy/v1beta1".

helm-install-rke2-snapshot-controller-crd keeps crashloopbackoff
helm_v3 install --set-string global.clusterCIDR=<IP_ADDRESS>/16 --set-string global.clusterCIDRv4=<IP_ADDRESS>/16 --set-string global.clusterDNS=<IP_ADDRESS> --set-string global.clusterDomain=cluster.local --set-string global.rke2DataDir=/var/lib/rancher/rke2 --set-string global.serviceCIDR=<IP_ADDRESS>/16 rke2-snapshot-controller-crd /tmp/rke2-snapshot-controller-crd.tgz
Error: INSTALLATION FAILED: rendered manifests contain a resource that already exists. Unable to continue with install: CustomResourceDefinition "volumesnapshotclasses.snapshot.storage.k8s.io" in namespace "" exists and cannot be imported into the current release: invalid ownership metadata; label validation error: missing key "app.kubernetes.io/managed-by": must be set to "Helm"; annotation validation error: missing key "meta.helm.sh/release-name": must be set to "rke2-snapshot-controller-crd"; annotation validation error: missing key "meta.helm.sh/release-namespace": must be set to "kube-system"

harvester-load-balancer-webhook pods keep crashing with OOM.

Disable the RKE2 charts in ec8ad09760186768ec7df37c63da80e83758f647
Note need to test with https://github.com/harvester/harvester/pull/3963 for promotion and upgrade situation.

PR #492 is a must after this PR #491 , the rancher-monitoring is not usable as of 20230603.
https://github.com/harvester/harvester-installer/pull/492


PPD Generator for driverless printing: Workaround if printer reports faulty resolution

There are some IPP Everywhere/PWG Raster printers with a firmware bug which report a wrong resolution as pwg-raster-document-resolution-supported IPP attribute. If this happens (horizontal and/or vertical resolution is < 75 dpi) the attached patch tries the printer-resolution-supported attribute and if this is also wrong (< 75 dpi) it falls back to 300 dpi.
The problem was reported on the Brother MFC-9340CDW (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=868360) which reports that it support PWG Raster but has the pwg-raster-document-resolution-supported IPP attribute reporting a resolution of 600x2dpi which the PPD generator of CUPS uses and then the filters of CUPS and cups-filters generate a wrong bitmap for the pages. Note that the poster of the Debian bug has returned the printer to the store before he could finally test the fix, so he cannot give further input.
I have applied the fix already to cups-filters, therefore the problem now only occurs when it is actually CUPS generating the PPD file (CUPS creates driverless queue fully automatically on-demand or "lpadmin -m everywhere").
Patch for CUPS:
pwg-raster-resolution-fallback.patch.txt
IPP attributes of Brother MFC-9340CDW:
Brother-MFC-9340CDW-ipp-attrs.txt

Also the patch of Issue #5091 solves this.

We are not going to add infinite workarounds for buggy printers. This is an obvious bug that the printer vendor needs to fix - we are not going to add a workaround.


Extra event's popups

Is there any way to add my own  "event popup"? For Example:
I do tasks on hive and I want to show notify while complete some task.
In this time does apear Server message:

"That was the last antenna to be blinded." / "You have blinded enough of them."

" That was the last pore that you had to disable." / "You have done enough."

I think That not everyone would like to use this think but would be very helpfull

There is currently no easy way of adding events using the client. You can add them to the database by opening database.db with a SQLite client program and firing some SQL queries at the database.
First, you need to get the id of a creature (used for the image shown).
SELECT id,name FROM Creatures WHERE LOWER(name) LIKE "%insect%";

You will get something like this. Take the id of the creature you want to have as image for your event (e.g. Insectoid Scout).
498|insect swarm
603|insectoid scout
654|Insectoid Worker

You can then add a new event to the database using the creature id, the event message and a location.
INSERT INTO Events (title,location,creatureid) VALUES ('That was the last antenna to be blinded.', 'Gray Beach', 603);

Commit your event to the database and reload Tibialyzer. It should then recognize the new event.

Thakns for quick answer. I'll try to find way to edit database. I just have to get editor. Any idea witch could be best?

You can use SQLite Browser if you want a GUI tool; if you want a command line tool you can download the tools from the official SQLite website.

I made it in that way:

I opened Data Structure

Underline Event Messages and Browse Table

set Event ID (example 64)
set Message (witch appear in Server Log) That did it! You have hit the last necessary digestion bubble.

Underline Events and  Browse Table
-set same Event ID (in this way 64)
-Title similar as message
-location set as Gray Beach
-creature set on 658 (Floor Bloob)

After that I wrote changes and turned on Tibialyzer. Everything is work properly
Thanks for helping and I hope that this posts will helt to someone


302 undefined in adapter-node

If redirection logic put in hooks.ts files Handle method, after building with adapter-node it displays, for example;
> Using @sveltejs/adapter-node
  302 /about -> undefined
  ✔ done

To reproduce

With default install, (in my example with TypeScript), in hooks.ts file, add this code.
Then add adapter-node package.
Then run npm run build

export const handle: Handle = async ({ request, render }) => {
  if (request.path.startsWith("/about")) {
    return {
      status: 302,
      headers: {
        Location: `/login?r=${encodeURIComponent(request.path)}`
      }
    };
  }
  // Rest of the code...

Note: It works fine with npm run preview

Running into same issue...

All adapters will always prerender pages by default while building per its contract, you'll need to guard the redirection with the prerendering flag from $app/env, or turn them off completely in the config.


exitOnIssue flag

Should resolve #88 and enable the CLI to exit with code 1 for CI build tools, etc
Includes documentation/usage updates
Let me know what you think @GertjanReynaert  🙂

Codecov Report

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

@@           Coverage Diff           @@
##           master      #97   +/-   ##
=======================================
  Coverage   96.77%   96.77%
=======================================
  Files           2        2
  Lines          31       31
  Branches        7        7
=======================================
  Hits           30       30
  Misses          1        1

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6ae625d...f70f325. Read the comment docs.

Please merge this, the package becomes very useful now.

@GertjanReynaert do you have some time to review this PR? Would love to see this feature released.

What are the blocking points for the PR atm ? That would be a great feature for me !


Error generating tiles

I wanted to quickly test Kartotherian and your images saved us days! Everything runs well till I run the tile-generation command:
docker exec -it kartotheriandocker_tilerator_1 /gen_tiles.sh
info Loading variables from /etc/tilerator/variables.yaml
info Loading sources from /etc/tilerator/sources.yaml
trace Updating layer water
trace Updating layer waterway
trace Updating layer landcover
trace Updating layer landuse
trace Updating layer mountain_peak
trace Updating layer park
trace Updating layer boundary
trace Updating layer aeroway
trace Updating layer transportation
trace Updating layer transportation_name
trace Updating layer place
trace Updating layer housenumber
trace Updating layer aerodrome_label
trace Updating layer water
trace Updating layer waterway
trace Updating layer landcover
trace Updating layer landuse
trace Updating layer mountain_peak
trace Updating layer park
trace Updating layer boundary
trace Updating layer aeroway
trace Updating layer transportation
trace Updating layer building
trace Updating layer transportation_name
trace Updating layer place
trace Updating layer housenumber
trace Updating layer aerodrome_label
trace Updating layer poi
{ Err: Invalid zoom param type boolean given, was expecting an integer
    at checkType (/opt/tilerator/node_modules/@kartotherian/input-validator/validator.js:98:23)
    at Job.<anonymous> (/opt/tilerator/node_modules/@kartotherian/jobprocessor/lib/Job.js:122:17)
    at /opt/tilerator/node_modules/underscore/underscore.js:73:21
    at Function._.each._.forEach (/opt/tilerator/node_modules/underscore/underscore.js:153:9)
    at new Job (/opt/tilerator/node_modules/@kartotherian/jobprocessor/lib/Job.js:117:11)
    at addJobAsync (/opt/tilerator/lib/common.js:100:48)
    at Object.enqueJob (/opt/tilerator/lib/common.js:109:16)
    at /opt/tilerator/scripts/tileshell.js:204:23
    at tryCatcher (/opt/tilerator/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/opt/tilerator/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/opt/tilerator/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/opt/tilerator/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/opt/tilerator/node_modules/bluebird/js/release/promise.js:693:18)
    at Async._drainQueue (/opt/tilerator/node_modules/bluebird/js/release/async.js:133:16)
    at Async._drainQueues (/opt/tilerator/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/opt/tilerator/node_modules/bluebird/js/release/async.js:17:14)
  name: 'Err',
  message: 'Invalid zoom param type boolean given, was expecting an integer' }
Err: Invalid zoom param type boolean given, was expecting an integer
    at checkType (/opt/tilerator/node_modules/@kartotherian/input-validator/validator.js:98:23)
    at Job.<anonymous> (/opt/tilerator/node_modules/@kartotherian/jobprocessor/lib/Job.js:122:17)
    at /opt/tilerator/node_modules/underscore/underscore.js:73:21
    at Function._.each._.forEach (/opt/tilerator/node_modules/underscore/underscore.js:153:9)
    at new Job (/opt/tilerator/node_modules/@kartotherian/jobprocessor/lib/Job.js:117:11)
    at addJobAsync (/opt/tilerator/lib/common.js:100:48)
    at Object.enqueJob (/opt/tilerator/lib/common.js:109:16)
    at /opt/tilerator/scripts/tileshell.js:204:23
    at tryCatcher (/opt/tilerator/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/opt/tilerator/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/opt/tilerator/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/opt/tilerator/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/opt/tilerator/node_modules/bluebird/js/release/promise.js:693:18)
    at Async._drainQueue (/opt/tilerator/node_modules/bluebird/js/release/async.js:133:16)
    at Async._drainQueues (/opt/tilerator/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/opt/tilerator/node_modules/bluebird/js/release/async.js:17:14)

This is on Ubuntu 16.04.
Am I missing a step? I wanted to run this manually but couldn't figure out tilerator's X/Y config for Luxembourg. Since metroextracts shutdown, we only have geofabrik which means we can't import Koln to make your example work (whole of Germany is necessary instead!). And it's a bit difficult to understand tilerator's X/Y index scheme.
Could you perhaps shift the example to Luxembourg or a similar country that's available easily for tests?
Thanks!

Hi,
Thanks for reporting this issue. As you can see, this repository is strongly dependent on our development setup, and is far from being correctly tested yet, unfortunately.
The issues with gen_tiles.sh seem to be caused by a wrong value for checkZoom.
Even if negative values are accepted, it does not make sense here, as the jobs start from zoom 0. And for some reason, the value is parsed as a boolean, possibly because of the quotes. We need to look at it more closely.
So you may want to simply remove the checkZoom option, at least to generate the first zoom levels.
The tiles coordinates (X/Y) used by Tilerator follow the "Slippy map tilenames".
Geofabrik provides a nice online tool to find these coordinates : http://tools.geofabrik.de/calc/#type=geofabrik_standard&grid=1
For example, to create a job generating vector tiles in Luxembourg (covered by the tile x=66, y=43, z=7), from zoom 7 to zoom 15 (non-included), you could do:
curl -XPOST "http://localhost:16534/add?generatorId=substbasemap&storageId=basemap&zoom=7&x=66&y=43&fromZoom=7&beforeZoom=15&keepJob=true&parts=8&deleteEmpty=true"

Note that I am directly using here the API provided by Tilerator. That may be more convenient than the tileshell script.
We definitely need to make this docker composition easier to run. And including an option in the scripts to download and import a sample dataset such as Luxembourg, is a good idea.
In the meantime, I hope that helps !

That fixed the command! The tiles generate successfully, and tiles from 0 to about 5 work well (whole world) however the map shows Luxembourg only in 'x-ray' (small on on the bottom right) mode but not in normal map mode.. I ran gen_tiles.sh after removing checkZoom and even then no luxembourg or names / fonts..
I suspect newer, incompatible versions of various dependencies could be the issue. If you know which ones you built your last successful build with, perhaps we can force those git-versions of the repos while building the docker images?
Also, would you like me to send a PR updating the docs to use Luxembourg and mentioning the tile format for Tilerator?

hum I don't really understand what you mean by 'x-ray' :confused:
What do you display the tiles with ? do you use the tileview docker which can be queries through http://localhost:8585 ?
Yes we'll happily accept a PR for the doc and to depreciate the gen_tiles.sh script over the tilerator API, thanks!

Created PR here #28
By x-ray I meant the 'vector-map' view :smiley:.
Had to do 1 more step to make this work. Edit qwant_style.json and add a key for tilehosting.com. I'm new to docker so if that step could somehow be added for other users as part of the build process, it'll make things easier. Or we can ask them to do the edit before docker-compose up
Everything works at z14 onwards but I suspect this has to do with tile generation more than anything else.
Should we keep the issue open till the dependencies are built reliably & checkzoom is removed?

thanks for the PR!
we block the tile generation for z > 14, but with the overzoom it should be create any problems.
Everything works fine for you now ?

Ah makes sense to overzoom! All works great now.
A follow up question: there's a mention of auto-conversion to 'raster' in the flow chart but I didn't find anything in kartotherian's sources that allow a PNG endpoint.. Is the sources file incomplete according to the flow chart?

We don't use raster tiles at the moment. But kartotherian handles them directly via tilelive-vector.
You can see an example in upstream kartotherian sources.
For our use case, we plan to use tileserver-gl to render raster using our custom mapbox-gl style, instead of a mapnik-specific .xml. But that would require a specific integration: see issue #10


Update libraries and migrations in ApplyUpdates. Fixes #1759

This is running into an error when the plugin runs. It seems like it is a bug in webgme-engine but I am not certain.

This is blocked by https://github.com/webgme/webgme-engine/issues/222


don't downgrade text2speech on macos arm64

Any reason? Just for future reference

just to match what mojang ships
I don't think there is any guarantee that an older library will continue to work on current versions of minecraft forever.

Did you or someone else confirm that this works? Maybe someone on macOS can test this for us

I mentioned this in the discord months ago and though it was fixed here already. Nobody knew why the downgrades were being used.
manymc didn't downgrade it either. only upgraded the old versions to 1.11.3


HTML in build description

Jenkins version: 1.557
Plugin version: 1.11.2

:+1: for @Dinoshauer solution.

Unfortunately @Dinoshauer 's solution cannot be used on cloud bees

Thanks! the Safe HTML option fixed it for me on the latest 1.34.4 version.


Default sorting doesn't work

Hi! In your Overview example you have a default ascending sorting for the (arrow down is on building column)
To expect is that it would go down from A999...A998 etc. But the row is Ascending from A1...A2 etc..
I reproduced it by following code for a column
{
title: "updatedAt",
key: "updatedAt",
type: "date",
dateType: "datetime",
format: "dd-MM-yyyy HH:mm",
align: "center",
resizable: "true",
sortable: "true",
sortType: "desc"
}
Would be great to enable default sorting if sortType is set!
Great work by the way :)

please update to v1.4.0


Updates for Calico v3.8.7

Description

Related issues/PRs

Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

None required

Deploy preview for calico ready!
Built with commit 83bcaac696366867d48c3243a198d0808b975bbf
https://deploy-preview-3363--calico.netlify.com


How to import RSA private key through pcap?

i'm going to use node_pcap analysis http traffic which include https, i know something like wireshark have  way to import the RSA key, is there any way i can use node_pcap+libpcap to do the samething?

 Or use a tool like ssldump to do the decryption first, though this will not result in a file usable by node_pcap.

If you want to contribute an implementation of decryption, I think that'd be great. :)

^this

will try to see what i can do

I have also looked into this, and unless there is someone who is already familiar with (or has a lot of time for learning) the basics of SSL, this is a rather daunting task.
For starters, Node's own ssl and tls modules both rely on openssl and these SecureContext native bindings.
SSL programming with openssl is explained here. On the client side, it boils down to a connection being managed by openssl itself (established through SSL_connect). Not sure, if one can easily detach the transport from the security layer. Maybe a sort of piping mechanism from pcap to openssl would make things easier. Also note that whatever the mechanism, decryption must be handled before filtering.


Rangy is very slow in some circumstances

I have a DOM structure where each individual word in the DOM is tagged with a tracking span (so each space is it's own individual text node). Once the number of words becomes even moderate, like 100, the TextRange functionality of Rangy is particularly slow- hundreds of milliseconds to do things like convert to character ranges.

Yes. It cannot be denied. It does a lot of DOM calls, some of which are expensive.
If you're not changing the DOM at all, you could try wrapping a bunch of TextRange calls inside rangy.noMutation as follows:
rangy.noMutation(function() {
    // Put your TextRange-related calls in here
});

I'd be interested to know if that helps. In theory it might do because it caches computed styles and other things. However, this is not a documented feature; what to do about it is on my list of things to think about, although probably not until after 1.3 is released.

noMutation had absolutely no effect. In this case we're talking about the context of a single call to Rangy, so it's impossible for the DOM to be mutated uness you mutate it.
The problem seems to be that getCharacter() recurses into itself nearly indefinitely and hardly ever makes progress, so the DOM calls just keep stacking up and up.

I have seen that kind of thing in some tests but thought I'd fixed it. Do you have an example document?

Let me see if I can make a reproduction for you.

Found the issue.
We render our scripts into the body of the document, and then the range work is being done in a temporary div at the bottom. When Rangy tries to find the previous visible character, that would require iterating through 577 script tags to find the actual content of the document to find the previous visible character. They're bundled in production but not for development. This also explains why I had problems reproducing- because obviously the first thing I did to make the example minimal was delete the script tags and add the relevant scripts to the bottom.
I succeeded in working around this issue by rendering the script tags inside a display:none div.
I guess that in general, it surprises me that to operate on an element, Rangy even looks at the surrounding DOM. I would have expected that a div with given contents always behaves the same no matter where it is.

It looks ahead/behind to decide whether the start or end of a block element or a <br> element should imply a line break, which can only be inferred from context. However, it sounds as though it is looking ahead/behind a little too eagerly in some cases.

I think also what I would really appreciate is the ability to filter some DOM nodes from these expensive DOM calls. In the original case that caused me to open this ticket, none of those spans could possibly have invisible content or newlines in them, for example, so a lot of time would have been wasted looking at them.

I have also noticed that when using range.selectCharacters() as you can see in this fiddle:
https://jsfiddle.net/axdu5898/1/
It gets slower as nesting of elements becomes deeper.


How to the Start the Powershell??

Hello, how do I start the powershell? Unfortunately, this is not possible with termux

You're way too pure for this cruel world


What do you use to run code?

Do you run the code in your private server or do you use some other website through an API that runs the code and sends you the result?

I have hosted this on openshift online. You can run it anywhere with a python environment . The python-telegram-bot library takes care of getting the data from telegram's server to you.

for the /compiler command I use hackerranks api. And for /upcoming , /ongoing I use clists api

My main question is regarding the /compile command since Hackerrank says that they've discontinued the API.

Yeah It does say so on the website but the api is still working.
On Wed, 5 Sep 2018, 00:40 Somnath Rakshit<EMAIL_ADDRESS>wrote:

My main question is regarding the /compile command since Hackerrank says
https://www.hackerrank.com/api/docs that they've discontinued the API.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Gotham13121997/superCodingBot/issues/3#issuecomment-418483922,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AZNjHBUCVVu7ZLHR5c9Ujop0CQ8PPNasks5uXtA1gaJpZM4WYZQ6
.

You can use the Hackerearth API maybe. Overall, a nice project.

Yeah I was thinking of shifting to it when Hackerrank api stops working.
But it still works apparently.
On Wed, 5 Sep 2018, 00:45 Somnath Rakshit<EMAIL_ADDRESS>wrote:

You can use the Hackerearth API
https://www.hackerearth.com/docs/wiki/developers/v3/ maybe. Overall, a
nice project.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Gotham13121997/superCodingBot/issues/3#issuecomment-418485552,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AZNjHPBUExL3o8fIhlLQkS7pp08K44AFks5uXtFrgaJpZM4WYZQ6
.

They even have a Python SDK for it to make things easy.


Add ignored-jsx-elements option to ignore straight quotes in element contents

This PR is similar in concept to #16. It adds a new ignored-jsx-elements option which allows customizing of JSX elements for which the rule should be ignored. By default, straight quotes found in the contents of <script> and <style> will be ignored.

Thank you, I will take a deeper look into it once I have a bit more free time later this week!

I see, the issue is a bit more complicated: currently the parser thinks anything in

I'm not sure there's any easy way to do so, but even if it's possible I'm not sure this plugin should change the behavior of how ESLint parses a JSX/TSX file.


Maven Central and javadoc badges have a status of unknown

This is because we've moved the package from javasdk to sdk. When we make a release, it should be fixed.

Confirmed the above, after 0.3.0, this looks good, closing.


Fixes migration controller null pointer dereference

If a migration object transistions to "Failed" before being handed off to virt-controller, it's possible that we'll attempt to access the vmi.Status.MigrationState when it's an uninitialized null pointer.  This can happen for example if the target pod fails during execution before the handoff, or if the target pod is somehow deleted before the handoff.
The result is that virt-controller can get into a situation where it crash loops until the effected migration object is removed from the cluster.
Fixes null pointer dereference in migration controller

/lgtm

@davidvossel Great catch!
There is some issue with the migration unit tests(I've reproduced the fails locally using this PR as a rebase). Trying to find out the root cause. Can you please take a look?

@davidvossel OK I think that we probably should not expect the VMI to be patched while VMI.status.MigrationState is nil, in the unit tests.

/hold
looking into unit tests

/hold cancel
Thanks @enp0s3, the unit test were indeed failing. Odd that CI didn't catch this  though. I've fixed the tests and improved how we validate the patch contents in the tests as well.

/cherry-pick release-0.41

/cherry-pick release-0.36

/cherry-pick release-0.34

This PR seems to cause goveralls to fail


Select specific workspace package in --git overrides

Problem
When creating a git override with cargo-overrides --git <uri> flag, a URL is provided for the git repository. If that git repository happens to contain a workspace, cargo-override will use the default package in that workspace.
For example, since sqlx defines a default package at its root, it'll be that crate that gets patched when cargo override --git https://github.com/launchbadge/sqlx is used. It is not currently possible to patch an of the other sqlx crates with --git, such as sqlx-core.
Crates like tokio and tracing, don't contain any default package in their workspace root, so aren't possible to patch at all. cargo override --git currently always fails for those.
Suggested solution
First we need to ensure that git patches of crates, without a default package, are possible with Cargo. I have not tested this so am not 100% certain it works.
Once that is done, we can add a -p <pkgid> flag that can be used with --git to specify the package we wish to use in the patch.

It could also make sense to generalise this change to work with --path also, since the path could also contain multiple packages in a workspace.
This is also a nice opportunity to have improved error/help messages, where we print out package IDs of the potential packages that can be passed into -p <pkgid>


Update codebase

Update code base to dotnet 6
Updated test dependencies
Restructured unit tests

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

434 of 434 (100.0%)  changed or added relevant lines in 55 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.5%) to 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
1.5%

Covered Lines:
1494

Relevant Lines:
1494

💛  - Coveralls


fix: Allowing multi form to json switching and eliminating json to form sw…

This PR fixes the following issues:

Makes the operation of the JS Toggles in the Query editor pages to be consistent with the ones in the property pane.
Disables one way form to json switching. This allows users to convert from a form to json as many times as they want to.

Fixes #15029
Fixes #16967

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

Manual Test

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/ok-to-test sha=b048a0d

/ok-to-test sha=d1d9196

/ok-to-test sha=c8ea16b

Hi @Irongade @rohan-arthur

We have deviated from the original functionality of JS component ie. User is unable to toggle back to Dropdown option upon entiring the correct value.
Expectation : @btsgh
The data entered/ selected from the dropdown must be retained in JS mode and vice versa
JS toggle must be disabled upon entering wrong value/ sheetname however the JS toggle must be kept open to switch back when the entry of data is correct
Note : This is a set expectation of JS toggle in the canvas.

#15029

This was intended. Kindly follow this thread. https://theappsmith.slack.com/archives/CNQ9Q91C0/p1664795369902699 for more information on why this was done.

Closing the issue based on the above conversation


Add server filters

ie the ability to hide TF servers or brazilian servers or servers with only bots (Dusty)

Finally I can unsee
/ tincan
/ goldenboy
/ bro


Documentation: The .data folder on Glitch

When setting this up on Glitch, it took me a minute to realize that the .data folder was hidden and only accessible through the Glitch Terminal. Also, editors (such as nano, vi, emacs) get weird if they're not loaded in Glitch's Full Page Terminal.
Would be a good idea to call this out in the documentation. Happy to submit a PR if need be.

Good point!


win-16 is dead.

Is there an existing issue for this?

[X] I have searched the existing infra issues

Type of Request
bug
Infrastructure Environment
LUCI, Github, Cocoon scheduler, Autosubmit, etc...
What is happening?
win-16 is dead.

Steps to reproduce
Step 1:
Step 2:
..
Step n:
Expected results
I expect to see X when Y is finished.

Machine was hung, rebooting machine to refresh the hardware.


Using Maps

Hi, I'm getting an error similar to https://github.com/springfox/springfox/issues/815
I have the following field in my response class:
private Map<String, Boolean> permissions;
I'm using springfox-swagger2 version 2.0.3 and generates the json as follows:
"permissions": {
"type": "object",
"additionalProperties": {
"type": "boolean"
}
}
And swagger-ui version 2.1.0 shows this:

I'm expecting something like this:
permissions: {
"key": boolean
}
Am I missing something? Is there a bug?

I think this is a bug in the swagger-ui.

@rcruzper what does your definition in your pojo look like?   I was able to get the additional properties to expand, however it's appears to be more of an ArrayList as opposed to a Map.  I was satisfied with this for the moment, but it's not really accurate since I would rather have clients reading documentation on my service to know they are getting back a Map.
I don't think Swagger UI can handle Maps yet, but I know many people have been asking for this and there are open issues on the Swagger UI GitHub site.  Until that gets fixed I don't believe the Spring Fox guys can resolve it.
@dilipkrish do you agree?  I also I saw you added this to the 2.0.4 milestone is there a SpringFox fix you have in mind for this?

@cabbonizio this is the definition of the attribute in my pojo:
private Map<String, Boolean> permissions;

@cabbonizio I just added the milestone so that there is a notion of when this question was asked. But yeah like you said, we just need to wait for swagger-ui to implement support for maps.

@rcruzper I have some use of Maps also was just curious what you were using, but really a Map is a Map i guess :)
@dilipkrish thanks for adding this to the milestone so we can track it.   This is documentation feature many of us are looking for.

Closing this question in preparation for 2.1.0


[Testing] Setting the hdfs driver type

This PR fix the issue https://github.com/BlazingDB/blazingdb-ral/issues/198
Thanks @felipeblazing