added colormaps, figure size control and facets to support subquestio…

Fixes #29

text labels on either side of the x-axis for ‘above-threshold’ and below-threshold’, regardless of whether bar plot is showing all outcomes

This is going to be tricky with plotly express. So currently just showing the labels inside the bar.

Add thicker line to differentiate above-threshold from below-threshold, for both the binarized and non-binarized version of the stacked bar plot

Changing single border doesn't seem to be easy either... currently added an option to control all the line widths of the bar plot.

Hi @nikhil153, thanks a lot for your work on this.
To make reviewing this easier, would you mind incorporating your changes into the make_stacked_bar_plots.py script you created last time? https://github.com/neurodatascience/us_climate_emotions_map/blob/main/climate_emotions_map/make_stacked_bar_plots.py
I think in your last PR I refactored this script a little bit, but you can replace the contents directly with the contents of your Jupyter notebook if that's easier, and I can help refactor again as needed.
Also, for this:

Changing single border doesn't seem to be easy either... currently added an option to control all the line widths of the bar plot

I think our best bet might be to just plot a vertical line at that the right x value, separate from the bars themselves. Can help w/ trying to implement this if needed

@alyssadai - updated the python script!

New changes added:

Subquestions have a fixed custom order = descending endorsement of the 3+ outcome
Stacked bars now display outcome labels (e.g. "Moderately agree") with text wrapping for <50% bars + custom hover boxes
Facet titles display full text for subquestion and are hidden when there is only one subquestion
Minor adjustments to figure/facet layout to work in app when all bars are visible
data_loader.py updated to not interpret NaNs in data dictionaries to preserve "None"


Error occurred while executing open colab file

Hello.
I'm incredibly happy with what you've been working on.
First of all I am constantly failing to run the provided colab file to understand your work.
Should I use only 1.7.1 and 0.8.2 for torch and torchvision versions?
If I want to use it on a local PC, is there a guide document for this?

Hi, I am glad you enjoyed our work.
PyTorch versions 1.5 or newer, up until 1.7.x should work. You should use the torchvision version compatible with the PyTorch version you choose. Refer to the compatibility chart here to choose versions.
For running on a local PC, I suggest you refer to the README.MD file we have included. For local PCs, we don't provide a notebook. You can directly run the python scripts we provide.
We will check on the Google Colab notebook and let you know.

@madhawav
Thanks... I will try to follow your opinion.

No further activities

@madhawav
What is the result of checking Google Colab notebook?
In Google Colab notebook I checked the following way, but without success.

python==3.7.13 torch==1.7.1+cu110 torchvision==0.8.2+cu110
--> Failed building wheel for torch-scatter, torch-sparse, but  Successfully built torch-geometric
--> I can't proceed any further.

python==3.6.9 torch==1.8.0+cu111 torchvision==0.9.0+cu111
--> Successfully installed torch-scatter-2.0.9,Successfully installed torch-sparse-0.6.13,Successfully installed torch-geometric-2.0.4
--> Fail to import torch_sparse,torch_geometric
--> I can't proceed any further.

python==3.7.13 torch==1.11.0+cu113 torchvision==0.12.0+cu113
-->Successfully installed torch-scatter,torch_geometric,torch_sparse
-->No module named 'torchvision.models.utils' in /plan2scene/code/src/plan2scene/texture_gen/nets/vgg.py.  I got this error and fixed it  with torch.hub because  'torchvision.models.utils'  is deprecated in torch 1.11.0.
-->  When data is uploaded in"Task:Upload rectified surface crops extracted from photos." step, the photo_file_name directory is created under rectified_crops and copied. After moving the data to rectified_crops, you can see the texture in the step of "Task: Let's preview the data you have provided."
--> "# Compute texture embeddings for observed surfaces (Code adapted from ./code/scripts/preprocessing/fill_room_embeddigs.py)" step have error below like.
--> I can't proceed any further.

/usr/local/lib/python3.7/dist-packages/torch/functional.py:568: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at  ../aten/src/ATen/native/TensorShape.cpp:2228.)
  return _VF.meshgrid(tensors, **kwargs)  # type: ignore[attr-defined]
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
[<ipython-input-31-42fcee0d7001>](https://localhost:8080/#) in <module>()
      4       for candidate_key, image_description in room.surface_textures[surface].items():
      5         image = image_description.image
----> 6         emb, loss = tg_predictor.predict_embs([image])
      7         room.surface_embeddings[surface][candidate_key] = emb
      8         room.surface_losses[surface][candidate_key] = loss

10 frames
[/content/plan2scene/code/src/plan2scene/texture_gen/predictor.py](https://localhost:8080/#) in predict_embs(self, sample_image_crops)
     81             predictor_result = self.predict(unsigned_images.to(self.conf.device),
     82                                             unsigned_hsv_images.to(self.conf.device),
---> 83                                             self.get_position(), combined_emb=None, train=False)
     84
     85             # Compute loss between synthesized texture and conditioned image

[/content/plan2scene/code/src/plan2scene/texture_gen/predictor.py](https://localhost:8080/#) in predict(self, unsigned_images, unsigned_hsv_images, sample_pos, train, combined_emb)
    272             network_input, base_color = self._compute_network_input(unsigned_images, unsigned_hsv_images, additional_params)
    273             network_out, network_emb, substance_out = self.net(network_input, sample_pos.to(self.conf.device),
--> 274                                                                self.seed)
    275         else:
    276             # Predict using the combined_emb. Skip encoder.

[/usr/local/lib/python3.7/dist-packages/torch/nn/modules/module.py](https://localhost:8080/#) in _call_impl(self, *input, **kwargs)
   1108         if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
   1109                 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1110             return forward_call(*input, **kwargs)
   1111         # Do not call functions when jit is used
   1112         full_backward_hooks, non_full_backward_hooks = [], []

[/content/plan2scene/code/src/plan2scene/texture_gen/nets/neural_texture/texture_gen.py](https://localhost:8080/#) in forward(self, image_gt, position, seed, weights_bottleneck)
     87
     88         input_mlp = torch.cat([z_encoding, noise], dim=1)
---> 89         image_out = self.decoder(input_mlp)
     90         image_out = torch.tanh(image_out)
     91

[/usr/local/lib/python3.7/dist-packages/torch/nn/modules/module.py](https://localhost:8080/#) in _call_impl(self, *input, **kwargs)
   1108         if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
   1109                 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1110             return forward_call(*input, **kwargs)
   1111         # Do not call functions when jit is used
   1112         full_backward_hooks, non_full_backward_hooks = [], []

[/content/plan2scene/code/src/plan2scene/texture_gen/nets/neural_texture/mlp.py](https://localhost:8080/#) in forward(self, input)
     32     def forward(self, input):
     33
---> 34         input_z = self.first_conv(input)
     35         output = input_z
     36         for idx, block in enumerate(self.res_blocks):

[/usr/local/lib/python3.7/dist-packages/torch/nn/modules/module.py](https://localhost:8080/#) in _call_impl(self, *input, **kwargs)
   1108         if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
   1109                 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1110             return forward_call(*input, **kwargs)
   1111         # Do not call functions when jit is used
   1112         full_backward_hooks, non_full_backward_hooks = [], []

[/content/plan2scene/code/src/plan2scene/texture_gen/nets/core_modules/standard_block.py](https://localhost:8080/#) in forward(self, input, style)
     67             output = self.norm(output, style)
     68         else:
---> 69             output = self.layer(input)
     70
     71             # output = self.norm(output)

[/usr/local/lib/python3.7/dist-packages/torch/nn/modules/module.py](https://localhost:8080/#) in _call_impl(self, *input, **kwargs)
   1108         if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
   1109                 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1110             return forward_call(*input, **kwargs)
   1111         # Do not call functions when jit is used
   1112         full_backward_hooks, non_full_backward_hooks = [], []

[/usr/local/lib/python3.7/dist-packages/torch/nn/modules/conv.py](https://localhost:8080/#) in forward(self, input)
    445
    446     def forward(self, input: Tensor) -> Tensor:
--> 447         return self._conv_forward(input, self.weight, self.bias)
    448
    449 class Conv3d(_ConvNd):

[/usr/local/lib/python3.7/dist-packages/torch/nn/modules/conv.py](https://localhost:8080/#) in _conv_forward(self, input, weight, bias)
    442                             _pair(0), self.dilation, self.groups)
    443         return F.conv2d(input, weight, bias, self.stride,
--> 444                         self.padding, self.dilation, self.groups)
    445
    446     def forward(self, input: Tensor) -> Tensor:

TypeError: conv2d() received an invalid combination of arguments - got (Tensor, Parameter, Parameter, tuple, tuple, tuple, int), but expected one of:
 * (Tensor input, Tensor weight, Tensor bias, tuple of ints stride, tuple of ints padding, tuple of ints dilation, int groups)
      didn't match because some of the arguments have invalid types: (Tensor, !Parameter!, !Parameter!, !tuple!, !tuple!, !tuple!, int)
 * (Tensor input, Tensor weight, Tensor bias, tuple of ints stride, str padding, tuple of ints dilation, int groups)
      didn't match because some of the arguments have invalid types: (Tensor, !Parameter!, !Parameter!, !tuple!, !tuple!, !tuple!, int)

Could you recheck colab notebook?


Default to balances tab instead of activity

The wallet defaults to the balances tab upon onboarding instead of the activity tab which is expected and perhaps more useful because we show a prompt to "get STX" there:

Note that this appears to happen only if I had signed out of a previous wallet with the same installation having last selected "Activity". It does not happen if I signed out of a previous wallet having last selected "Balances".


Development testtool

[x] create j.tools.tester tool
[x] create specs (define the class)
[ ] create tests dir in there, to test e.g the scheduler

[ ] check working of the scheduler

[ ] create a class with all tests we want to run for base JSX 10.2

[x] method per test
[ ] use j.servers.myjobs.schedule if something blocking or needs to be pushed to backend

[ ] then call the methods using the scheduler so we get parallelisation
[ ] use self._log methods
[ ] create log handler which will capture the logs onto a readable file

j.tools.tester
tester = j.tools.tester.get()
tester.start()

some scenario's

use containers (JSX), can have more than 1

requirements

easy to adjust
< 30 min on OSX machine

you can now run tests separate like that j.tools.tester.start_017_j_clients_etcd()
it's generated method
TODO:

[ ] use j.servers.myjobs.schedule if something blocking or needs to be pushed to backend
[ ] use self._log methods
[ ] run all tests uisng one method


Proposing we change the name of this article

Since this is the overview of telemetry and the first page we send people to, I'm proposing we give it a better title.

@npherson Thank you for the suggestion! Unfortunately, we can't change the name right now as major changes to this topic have to go through a legal review.


update vox cask name

Makes changes discussed in https://github.com/caskroom/homebrew-versions/pull/1472

Merged as 1b98acf85589c5bf133a56f8959317e771a89307.


Spaceship: Exception in v0.24 when calling candidate_builds

Given a valid app fetched from iTunes,
Calling puts app.edit_version.candidate_builds.first
Raises the exception below.
This was working in v0.23
Fix:
When trying to inspect the apple_id for to_s in build.rb:128 self.build_train is null
This fixed it for me by just checking if self.build_train is set
      def apple_id
        return @apple_id if @apple_id
        return self.build_train.application.apple_id if self.build_train
      end

NoMethodError: undefined method application' for nil:NilClass /spaceship-0.24.0/lib/spaceship/tunes/build.rb:130:in apple_id'

Is it your own spaceship script? If so please share the complete script and output when running it

@KrauseFx updated the issue above and tracked down the cause. when trying to print the build with a puts was causing the issue for me.

Can confirm this in 0.24.0, using the following simple code:

    Spaceship::Tunes.login(@params['itc_account'], @params['itc_password'])
    app = Spaceship::Tunes::Application.find(@params['bundle_id'])
    version = app.edit_version
    builds = version.candidate_builds
    puts builds

Reproduced locally - thanks for the report, and thanks for the code! :+1: I'm looking into it.

Hi folks - we've released spaceship 0.24.1 with a fix for this. Please update and let us know if that fixes things for you! :+1: :rocket:

Seems to work now. Thanks for the quick fix!


Incorrect behavior of ..$ quasiquotes

val q"($q, y: Y, ..$e)" = q"(x: X, y: Y, z: Z)"
q: scala.meta.Term.Param = x: X
e: scala.collection.immutable.Seq[scala.meta.Term.Param] = List(y: Y, z: Z)

Here e should have been List(z: Z), but it is not.

Looks fixed in v2.0.


esp-mqtt folder is empty in V5.0, V5.1, and master brances. (IDFGH-9735)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
esp-idf-release-v5.0.zip esp-idf-release-v5.1.zip esp-idf-master.zip
Operating System used.
Linux
How did you build your project?
Other (please specify in More Information)
If you are using Windows, please specify command line type.
None
What is the expected behavior?
sourcing export.sh in the target folder, then running idf.py set-target esp32 I expect the target to be set.   running idf.py menuconfig we expect to get a menu to appear.
What is the actual behavior?
In master and V5.1 branches we get an error that /home/me/esp-idf-release-v5.1/components/msqtt/esp-msqtt MakeLists.txt is not found.   For V5.0, V5.1, and Master branches the zip file does not contain any files here.
In V5.0 running idf.py menuconfig or idf.py set-target esp32  we get /home/me/esp-idf-release-v5.0/components/mbedtls/mbedtls/include is not a directory.
Steps to reproduce.

Download Master, V5.1, or V5.0 zip file.
Exract files to home directory
change to esp-idf-xxx folder
execute ./install.sh
cd to workspace folder
execute the command source /home/me/esp-idf-xxx/export.sh
execute idf.py set-target esp32  or the command idf.py menuconfig
crash and burn.

Build or installation Logs.
For V5.0 we get...

more idf_py_stderr_output_13151
fatal: not a git repository (or any of the parent directories): .git
CMake Error at /home/kurt/esp-idf-release-v5.0/tools/cmake/component.cmake:312 (message):
  Include directory
  '/home/kurt/esp-idf-release-v5.0/components/mbedtls/mbedtls/include' is not
  a directory.
Call Stack (most recent call first):
  /home/kurt/esp-idf-release-v5.0/tools/cmake/component.cmake:486 (__component_add_include_dirs)
  /home/kurt/esp-idf-release-v5.0/components/mbedtls/CMakeLists.txt:18 (idf_component_register)

more idf_py_stdout_output_13151
-- Found Git: /usr/bin/git (found version "2.34.1")
-- Component directory /home/kurt/Workspace/esp32/pthread/components/components does not contain a CMakeLists.txt file. No component will be added
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /home/kurt/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /home/kurt/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /home/kurt/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Project is not inside a git repository, or git repository has no commits; will not use 'git describe' to determine PROJECT_VER.
-- Building ESP-IDF components for target esp32
-- Project sdkconfig file /home/kurt/Workspace/esp32/pthread/sdkconfig
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of time_t
-- Check size of time_t - done
-- Configuring incomplete, errors occurred!
See also "/home/kurt/Workspace/esp32/pthread/build/CMakeFiles/CMakeOutput.log".
kurt@pop-os:~/Workspace/esp32/pthread/build/log$

More Information.
V4 was working on linux.   Updated as I wanted my portable  Win 10 and heavy Linux laptops to be at the same level so that I could code outside of the home.   Also I'm using the CXX examples and was thinking that V5 may be more up to date with c++.

@ksanger3838 How have you downloaded ESP-IDF? If you have used the "download the .zip archive" feature on Github, it won't work because the project uses Git submodules. Github doesn't include the content of Git submodules when downloading the .zip archive of the repository.
Please try t follow the getting started instructions found here: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html to install IDF.

Thanks for reporting, will close due to short of feedback, feel free to reopen with more updates.


How do I configure tileSize?

I'm building a map using Rlayers and Maptiler and would like to pass the tileSize parameter.
Code in vanilla OL:
new TileLayer({
  source: new TileJSON({
    url: `https://api.maptiler.com/maps/${tileStyle}/tiles.json?key=${mapTilerKey}`,
    tileSize: 512
  })
});

Code in rlayers:
<RLayerVector>
      <RLayerTileJSON
        url={`https://api.maptiler.com/maps/${tileStyle}/tiles.json?key=${mapTilerKey}`}
      />
</RLayerVector>

This mainly works, but without supplying a tile size the labels (street and city names) in Maptiler are very small and hard to read.
Is there a way to provide this parameter?

No, it is currently absent from the options, I will merge it if you add it, it is a trivial PR


AttributeError during running the sample code

Environment
. Windows 10 + conda+ python3.9
. bdsim is installed by pip install git+https://github.com/petercorke/bdsim.git
. machinevision is installed by pip install git+https://github.com/petercorke/machinevision-toolbox-python.git
. roboticstoolbox is installed by pip install git+https://github.com/petercorke/robotics-toolbox-python.git
ISSUE
When i try to run the sample code, i got these returns
>>> import bdsim
>>> sim = bdsim.BDSim()
package bdsim not found
package roboticstoolbox not found
package machinevisiontoolbox not found

and then
>>> bd = sim.blockdiagram()
>>> sim.blocks()
0  blocks loaded
>>> demand = bd.STEP(T=1, name='demand')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'BlockDiagram' object has no attribute 'STEP'

any idea why this happens?

Sorry, no idea.  I'm not using Windows.
It'd help if you could debug load_blocks which is toward the end of bdsim.py and is invoked when you instantiate BDSim.

Were you able to resolve this? I have have only recently been able to test under windows, the current version on GH works with windows

@petercorke No, not yet. However, it would be very helpful if we had a working installation document

You've installed what needs to be installed.  If you get a chance please install the latest version from GH and let me know how it goes.


Design and write content for the home page

Currently the homepage is blank. We need to decide what should be displayed to unauthenticated users and design a way to display this information.

[ ] Decide of what should be displayed here. @tdudgeon
[ ] Decide how this content should be stored (e.g. markdown or inside react - depends on how rich/dynamic the content is)
[ ] Implement this in the app

How/where to handle user docs also needs consideration.


WebMap collection for testing L.esri.WebMap

Webmaps to reproduce a variety of case will support a lot in this project. :octocat:
Please share your map and describe what kind of case.
Thanks!
Reference

Web map specification

http://www.maps.arcgis.com/home/item.html?id=...

dash line symbol

f513043bcc30414eb35d1c9d128193bb

Feature Collection (Polygon) without featureSet in WebMap JSON

546e94ac62674154a11615250e9a9fb6

Feature Collection (Polyline) without featureSet in WebMap JSON

49e2793251a946ec9d146a9dd57ef0a0

Attachment

62e03c2a85b045e4b8823a361f739477


[Add] new links under UI Generator

Site URL
https://www.cssfilters.co/
Description of the above provided site
It is a site which gennerates image filter css for webpages
Category
Frontend
Sub Category
UI Generator
Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue (optional)
[X] I am a GSSoC'23 contributor

Hey @Swapnil-Singh-99! :) Just to confirm, you're in GSSOC right?

Hey @Swapnil-Singh-99! :) Just to confirm, you're in GSSOC right?

How could they reply in locked convo. 😅😅

@Swapnil-Singh-99 thanks for your patience, you can start working on the issue :)


Password Reset Not working

There seems to be an issue with password_reset.php. None of the display messages show up, such as success, or error and no emails are sent. Hopefully this can be fixed for the new season. It would be great if the admin page had a way to reset the passwords for users as well.

Fixed it:
change
if ($query->num_rows > 0) {
to
if ($query->num_rows == 0) {
and change
Submit
to
Submit

still not sure how to get/set $adminUser->email, so I hardcoded my own

Thanks for reporting this.  This has been fixed in the latest commit.


It will be possible to update the chef's avatar image

PR
https://github.com/fredsonchaves07/foodfy/pull/117


holoviews.util.Dynamic doesn't work without import

holoviews.util.Dynamic(hv.HoloMap({i: hv.Image(np.random.rand(10,10)) for i in range(10)}))
only works after
import holoviews.util

I noticed a similar import problem recently whereby util wasn't the union of core.util and the top level util. It is an annoying issue so I'll assign it to the 1.7 milestone.

I noticed a similar import problem recently whereby util wasn't the union of core.util and the top level util.

Isn't that exactly the issue described here?

I think so, yes.

@jlstevens and @philippjfr
I am on master now:
import holoviews as hv
hv.__version__
Version((1, 6, 2),'/opt/conda/lib/python3.5/site-packages/holoviews/__init__.py','c80f986')

And now hv.util.Dynamic is completely gone. Importing holoviews.util doesn't help.
Only from holoviews.util import Dynamic works.

Thanks @basnijholt, just double checked and I can reproduce it. I'm very confused now, but will look into it.


CORS enabled, still having 405 on POST endpoint

Hello Slim users. I'm using Slim 3.10 with PHP 7.0 on Ubuntu Apache 2.
When I call one of my endpoints with URI /proforma by POST method, I'm getting a 405 error telling me "Must be one of : GET". However when I look the response headers I have the following :
Access-Control-Allow-Headers →X-Requested-With, Content-Type, Accept, Origin, Authorization
Access-Control-Allow-Methods →POST
Access-Control-Allow-Origin →*
GET requests on the same path are working, with methods header returning only the current request method in authorized methods list.
I followed the Access-Control-Allow-Methods example in the docs : https://www.slimframework.com/docs/v3/cookbook/enable-cors.html
Even if I comment all code inside my endpoint callback and return an empty response, I have this 405 error, which makes me think the problem is either from my client (Postman 6.2) or a misconfiguration in Middlewares. Here is what I use at the beginning of my index.php where my callbacks live :
$app->add(function ($request, $response, $next) {
    $route = $request->getAttribute("route");

    $methods = [];

    if (!empty($route)) {
        $pattern = $route->getPattern();

        foreach ($this->router->getRoutes() as $route) {
            if ($pattern === $route->getPattern()) {
                $methods = array_merge_recursive($methods, $route->getMethods());
            }
        }
        //Methods holds all of the HTTP Verbs that a particular route handles.
    } else {
        $methods[] = $request->getMethod();
    }

//    die(print_r($methods));

    $response = $next($request, $response);

    return $response
        ->withHeader("Access-Control-Allow-Methods", implode(",", $methods))
        ->withHeader("Access-Control-Allow-Origin", '*')
        ->withHeader('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization');
});

Notice that the commented die() shows me Array ( [0] => POST ) 1. Since request method is found from Request object, I made a print_r of it but didn't even find the route attribute. Only routeInfo. Also I don't understand why my response header returns me POST as Access-Control-Allow-Methods.
In the 405 error's html I see "must be one of : GET".
Now here is the code of my endpoint itself, with an empty response that gives the same error.
$app->post(RESOURCE_PATH, '/proforma', function (\Slim\Http\Request $request, \Slim\Http\Response $response){

return $response->withJson(array())
                ->withHeader('Location', $oProforma->getUrl())
                ->withHeader('Content-Type', 'application/json')
                ->withStatus(201);

});

Here is a curl dump of what postman sends (except the payload). It's the same as for the working POST on /invoices, another path. It leads me to think it's not client's fault.
curl -X POST \
  http://slimapi.dev:81/invoices/proforma \
  -H 'Cache-Control: no-cache' \
  -H 'Content-Type: application/json' \
  -H 'Postman-Token: 93ce3a0c-d11c-4839-9746-44c868ee440f' \

Last point : when comparing request object between the working POST path and POST /proforma, I notice request for /proforma has extremely small attributes object, with only routeInfo in its data array. No route attribute :
[attributes:protected] => Slim\Collection Object
        (
            [data:protected] => Array
                (
                    [routeInfo] => Array
                        (
                            [0] => 2
                            [1] => Array
                                (
                                    [0] => GET
                                )
                            [request] => Array
                                (
                                    [0] => POST
                                    [1] => http://slimapi.dev:81/invoices/proforma
                                )
                        )
                )
        )

I'm confused about what happens between my client, the Request object, this middleware and my endpoint. Any help is welcome :) Let me know if I should post here or on https://discourse.slimframework.com/ in the future, thanks a lot :)
EDIT : I tried commenting every callback but the one I want to reach (POST /proforma) and... It gives a 404 error ! Note that POST /proforma is on the top of index.php, after init and middleware stuff.

Are you sure there really is a POST route defined for /invoices/proforma? Assuming value of RESOURCE_PATH is invoices then shouldn't this:
$app->post(RESOURCE_PATH, '/proforma', function (\Slim\Http\Request $request, \Slim\Http\Response $response){

be something like this instead:
$app->post(RESOURCE_PATH . '/proforma', function (\Slim\Http\Request $request, \Slim\Http\Response $response){

Thank you so much. I can't believe this was that trivial. Just typo inside post function parameters. I close the topic, have a nice day/night


Allowing stable channel rustc in Rust's style

rust-sgx-sdk author here. We are facing a problem when using xargo in production. In production, we want to use stable branch of rust to compile the sysroot to achieve stability. However, xargo doesn't allow us to do this. We found that Rust provides a switch RUSTC_BOOTSTRAP  which enables unstable features and allows stable branch rustc compiles latest libstd. And this option is enabled by default during bootstrap stage of building rust. So we believe that RUSTC_BOOTSTRAP is an acceptable solution for xargo and it's a desired feature.
Currently we have to maintain a branch of xargo for it. We wish it could be merged to mainstream. It's really helpful to us. Thanks!

Hello @dingelish
As you say RUSTC_BOOTSTRAP is used in the bootsrap process and it's meant to only be used there. No tool should rely on that because it's an implementation of the bootstrap process; that is RUSTC_BOOTSTRAP could disappear, or the mechanism could change at any time and that would cause your "stable" use of it to break.
For that reason I'm not going to merge this PR. If you want a stable way to build a sysroot I suggest you push for stable Xargo in Cargo functionality (cf. rust-lang/cargo#4959) and notify the Cargo team (cc @aturon), who's in charge of that feature, about your need for it.


[Bug] [SeaTunnel Engine] Don't know how to recover stream job

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
I'm trying use mysqlcdc source and write to doris, After I stop the job and want to continue the job again, I got error :
org.apache.seatunnel.connectors.doris.exception.DorisConnectorException: ErrorCode:[Doris-01], ErrorDescription:[stream load error] - Load status is Label Already Exists and load job finished, change you label prefix or restore from latest savepoint!
How can I restore from latest savepoint I can't find it from doc.
SeaTunnel Version
2.3.1
SeaTunnel Config
nothing special

Running Command
./bin/seatunnel.sh --config ./jobs/mycdc2doris.conf -e local

Error Exception
org.apache.seatunnel.connectors.doris.exception.DorisConnectorException: ErrorCode:[Doris-01], ErrorDescription:[stream load error] - Load status is Label Already Exists and load job finished, change you label prefix or restore from latest savepoint!

Flink or Spark Version
No response
Java or Scala Version
No response
Screenshots
No response
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

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

It seems that checkpoints can only be used in cluster mode?

I've tried cluster mode , and my checkpoint config is :
seatunnel:
  engine:
    backup-count: 1
    queue-type: blockingqueue
    print-execution-info-interval: 60
    print-job-metrics-info-interval: 60
    slot-service:
      dynamic-slot: true
    checkpoint:
      interval: 10000
      timeout: 60000
      max-concurrent: 5
      tolerable-failure: 2
      storage:
        type: hdfs
        max-retained: 3
        plugin-config:
          namespace: /tmp/seatunnel/checkpoint_snapshot
          storage.type: hdfs
          fs.defaultFS: hdfs://nsdev/tmp # Ensure that the directory has written permission

I can see the /tmp/seatunnel/checkpoint_snapshot dir on hdfs
but when I try to restore my job , from the server log I found :
2023-03-31 15:14:08,580 INFO  com.hazelcast.client.impl.protocol.task.AuthenticationMessageTask - [<IP_ADDRESS>]:5801 [seatunnel] [5.1] Received auth from Connection[id=5, /<IP_ADDRESS>:5801->/<IP_ADDRESS>:50522, qualifier=null, endpoint=[<IP_ADDRESS>]:50522, remoteUuid=47a60eba-f5a1-41e5-8d6e-a3b7a05aaaed, alive=true, connectionType=JVM, planeIndex=-1], successfully authenticated, clientUuid: 47a60eba-f5a1-41e5-8d6e-a3b7a05aaaed, client name: hz.client_1, client version: 5.1
2023-03-31 15:14:09,438 INFO  org.apache.seatunnel.engine.server.master.JobMaster - Init JobMaster for Job SeaTunnel_Job<PHONE_NUMBER>22191106)
2023-03-31 15:14:09,438 INFO  org.apache.seatunnel.engine.server.master.JobMaster - Job SeaTunnel_Job<PHONE_NUMBER>22191106) needed jar urls [file:/data/soft/seatunnel/seatunnel-2.3.1/connectors/seatunnel/connector-console-2.3.1.jar, file:/data/soft/seatunnel/seatunnel-2.3.1/connectors/seatunnel/connector-doris-2.3.1.jar, file:/data/soft/seatunnel/seatunnel-2.3.1/connectors/seatunnel/connector-cdc-mysql-2.3.1.jar]
2023-03-31 15:14:09,552 INFO  org.apache.seatunnel.engine.checkpoint.storage.hdfs.HdfsStorage - Path /tmp/seatunnel/checkpoint_snapshot/694077488422191106 is not a directory
2023-03-31 15:14:09,552 INFO  org.apache.seatunnel.engine.checkpoint.storage.hdfs.HdfsStorage - No checkpoint found for job, job id is:<PHONE_NUMBER>22191106
2023-03-31 15:14:09,562 INFO  org.apache.seatunnel.engine.checkpoint.storage.hdfs.HdfsStorage - Path /tmp/seatunnel/checkpoint_snapshot/694077488422191106 is not a directory
2023-03-31 15:14:09,562 INFO  org.apache.seatunnel.engine.checkpoint.storage.hdfs.HdfsStorage - No checkpoint found for job, job id is:<PHONE_NUMBER>22191106

It seems seatunnel still try to restore from localfile.

If you want start from a savepoint, you need use -r param like this:

If you want start from a savepoint, you need use -r param like this:

yes I use -r to restart from savepoint, but the seatunnel server still find savepoint from local, I had config to use hdfs to store savepoint.

I have the same problem ,could you tell me how to fix it ,thanks


Cancel a request when cached data is available

I would like to send a request and have Restangular intercept and resolve the request if cached data is available. This may be related to #589 but I came up with a jsfiddle which demos how I'm attempting to do this:
http://jsfiddle.net/astrism/q9qyox50/13/
The request is still made when the code runs. Any ideas?

Change
                var defer = $q.defer();
                defer.reject();
                httpConfig.timeout = defer;

to
                var defer = $q.defer();
                defer.resolve();
                httpConfig.timeout = defer.promise;

Example here http://jsfiddle.net/q9qyox50/14/

The request is cancelled but the cached data is not sent.
Any suggestions?

I wrote example, using decorator for $http, that caching request promise to prevent multiple request to the same url
Example here (http://jsfiddle.net/referee/hh30bh0q/)

To review & update docs.

Will update docs with referenced issue #1391


feat: media management

Management includes:

Page visibility changes (ie: user changes tab or device sleeps).
Viewport visibility changes (ie: user scrolls video in and out of view).
Shared playback (ie: user plays a video while another is already playing).
Shared volume (ie: user sets desired volume to 50% on one player and they expect it to be consistent across all players).

There’s different responsibilities being tackled here, so the best solution might be to build these out as controllers (eg: PageVisibilityController). These controllers could also be attached to a corresponding element such as vds-media-manager, or maybe vds-page-manager/vds-viewport-manager (if we want separate elements).

🗒  Lol of course Safari has to be special as usual. Seems like they don’t support the visibilitychange event, and according to this MDN doc, the next best alternative is pagehide but that’s apparently unreliable on mobile (they have an example). This is the state of the web in 2022!

📜  https://developers.google.com/web/updates/2018/07/page-lifecycle-api


templates: Remove unused openshift objects

The example ConfigMap wasn't used.

(restarted the ostree tests, looks like an infra failure, the test couldn't pull ubi)


Release the 3.0.9 version

Codecov Report

Merging #284 (687d9a8) into master (ed3508e) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #284   +/-   ##
=======================================
  Coverage   95.29%   95.29%
=======================================
  Files          12       12
  Lines         723      723
=======================================
  Hits          689      689
  Misses         34       34

Impacted Files
Coverage Δ

os_info/src/bitness.rs
95.00% <ø> (ø)

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 ed3508e...687d9a8. Read the comment docs.


Add 4 weeks of league_id, delete duplicate player

I added all the unknown players from ESL NA this week (even though a couple of them I haven't seen before and probably won't make the ro32 again)

Regarding this PR:

I rebased it
I squashed 3e8259d and c0878e4

And pushed the result on master.


[BUG] {OAK-D Pro POE with depthai_demo.py says No DepthAI device found!}

Describe the bug
I have followed the steps mentioned in the installation guide. When I try to run the depthai_demo.py it always says No DepthAI device found!, the gui opened but I am not able to see anything about the camera. I am using a PC with OS: Ubuntu 20-04 I have already made the same experiment with Ubuntu 18.04 with identical result. With the same set up I have ran the python code in Windows with any problem. I can ping the camera in the <IP_ADDRESS> and my IP is <IP_ADDRESS>. Have you hear before about it?
Expected behavior
The image should be visible as in the Windows case.
Screenshots

Attach system log
{
"architecture": "64bit ELF",
"machine": "x86_64",
"platform": "Linux-5.8.0-43-generic-x86_64-with-glibc2.29",
"processor": "x86_64",
"python_build": "default Jun 22 2022 20:18:18",
"python_compiler": "GCC 9.4.0",
"python_implementation": "CPython",
"python_version": "3.8.10",
"release": "5.8.0-43-generic",
"system": "Linux",
"version": "#49 ~ 20.04.1-Ubuntu SMP Fri Feb 5 09:57:56 UTC 2021",
"win32_ver": "",
"packages": [
"actionlib==1.13.2",
"angles==1.9.13",
"apturl==0.5.2",
"argon2-cffi==21.3.0",
"argon2-cffi-bindings==21.2.0",
"asttokens==2.0.8",
"attrs==22.1.0",
"backcall==0.2.0",
"bcrypt==3.1.7",
"beautifulsoup4==4.11.1",
"bleach==5.0.1",
"blinker==1.4",
"blobconverter==1.3.0",
"bondpy==1.8.6",
"boto3==1.24.63",
"botocore==1.27.63",
"breezy==3.0.2",
"Brlapi==0.7.0",
"camera-calibration-parsers==1.12.0",
"catkin==0.8.10",
"catkin-pkg==0.5.2",
"catkin-pkg-modules==0.5.2",
"catkin-tools==0.9.0",
"certifi==2019.11.28",
"cffi==1.15.1",
"chardet==3.0.4",
"charset-normalizer==2.0.12",
"Click==7.0",
"colorama==0.4.3",
"command-not-found==0.3",
"configobj==5.0.6",
"cryptography==2.8",
"cupshelpers==1.0",
"cv-bridge==1.16.0",
"cycler==0.11.0",
"dbus-python==1.2.16",
"debugpy==1.6.3",
"decorator==5.1.1",
"defer==1.0.6",
"defusedxml==0.7.1",
"Deprecated==1.2.7",
"depthai==<IP_ADDRESS>",
"-e git+https://github.com/luxonis/depthai.git@41b95a9e225562fcbb4f5815b0767afa2167d79d#egg=depthai_sdk&subdirectory=depthai_sdk",
"diagnostic-analysis==1.11.0",
"diagnostic-common-diagnostics==1.11.0",
"diagnostic-updater==1.11.0",
"distro==1.4.0",
"distro-info===0.23ubuntu1",
"docutils==0.16",
"dulwich==0.19.15",
"dynamic-reconfigure==1.7.3",
"empy==3.3.2",
"entrypoints==0.3",
"executing==1.0.0",
"fastimport==0.9.8",
"fastjsonschema==2.16.1",
"ffmpy3==0.2.4",
"fonttools==4.37.1",
"gencpp==0.6.5",
"geneus==3.0.0",
"genlisp==0.4.18",
"genmsg==0.5.16",
"gennodejs==2.0.2",
"genpy==0.6.15",
"gpg===1.13.1-unknown",
"httplib2==0.14.0",
"idna==2.8",
"importlib-metadata==4.12.0",
"importlib-resources==5.9.0",
"interactive-markers==1.12.0",
"ipykernel==6.15.2",
"ipython==8.4.0",
"ipython-genutils==0.2.0",
"ipywidgets==8.0.1",
"jedi==0.18.1",
"Jinja2==3.1.2",
"jmespath==1.0.1",
"joint-state-publisher==1.15.1",
"joint-state-publisher-gui==1.15.1",
"jsonschema==4.15.0",
"jupyter-core==4.11.1",
"jupyter_client==7.3.5",
"jupyterlab-pygments==0.2.2",
"jupyterlab-widgets==3.0.2",
"keyring==18.0.1",
"kiwisolver==1.4.4",
"language-selector==0.1",
"laser_geometry==1.6.7",
"launchpadlib==1.10.13",
"lazr.restfulclient==0.14.2",
"lazr.uri==1.0.3",
"louis==3.12.0",
"lxml==4.9.1",
"lz4==4.0.2",
"macaroonbakery==1.3.1",
"MarkupSafe==2.1.1",
"matplotlib==3.5.3",
"matplotlib-inline==0.1.6",
"mcap==0.0.14",
"mcap-ros1-support==0.0.8",
"message-filters==1.15.14",
"mistune==2.0.4",
"more-itertools==4.2.0",
"nbclient==0.6.7",
"nbconvert==7.0.0",
"nbformat==5.4.0",
"nest-asyncio==1.5.5",
"netifaces==0.10.4",
"nose==1.3.7",
"notebook==6.4.12",
"numpy==1.23.2",
"oauthlib==3.1.0",
"olefile==0.46",
"open3d==<IP_ADDRESS>",
"opencv-contrib-python==<IP_ADDRESS>",
"opencv-python==<IP_ADDRESS>",
"osrf-pycommon==2.0.2",
"packaging==21.3",
"pandocfilters==1.5.0",
"paramiko==2.6.0",
"parso==0.8.3",
"pexpect==4.6.0",
"pickleshare==0.7.5",
"Pillow==7.0.0",
"pip==22.2.2",
"pkgutil_resolve_name==1.3.10",
"prometheus-client==0.14.1",
"prompt-toolkit==3.0.30",
"protobuf==3.6.1",
"psutil==5.9.1",
"ptyprocess==0.7.0",
"pure-eval==0.2.2",
"pycairo==1.16.2",
"pycparser==2.21",
"pycryptodomex==3.6.1",
"pycups==1.9.73",
"pydot==1.4.1",
"PyGithub==1.43.7",
"Pygments==2.13.0",
"PyGObject==3.36.0",
"PyJWT==1.7.1",
"pymacaroons==0.13.0",
"PyNaCl==1.3.0",
"PyOpenGL==3.1.0",
"pyparsing==3.0.9",
"PyQt5==5.15.5",
"PyQt5-Qt5==5.15.2",
"PyQt5-sip==12.11.0",
"pyRFC3339==1.1",
"pyrsistent==0.18.1",
"PySimpleGUI==4.60.3",
"python-apt==2.0.0+ubuntu<IP_ADDRESS>",
"python-dateutil==2.8.2",
"python-debian===0.1.36ubuntu1",
"python-gitlab==2.0.1",
"python-gnupg==0.4.5",
"python-qt-binding==0.4.4",
"pytube==12.1.0",
"PyTurboJPEG==1.6.4",
"pytz==2019.3",
"pyusb==1.2.1",
"pyxdg==0.26",
"PyYAML==6.0",
"pyzmq==23.2.1",
"qt-dotgraph==0.4.2",
"qt-gui==0.4.2",
"qt-gui-cpp==0.4.2",
"qt-gui-py-common==0.4.2",
"reportlab==3.5.34",
"requests==2.26.0",
"requests-unixsocket==0.2.0",
"resource_retriever==1.12.7",
"roman==2.0.0",
"rosbag==1.15.14",
"rosbags==0.9.11",
"rosboost-cfg==1.15.8",
"rosclean==1.15.8",
"roscreate==1.15.8",
"rosdep==0.22.1",
"rosdep-modules==0.22.1",
"rosdistro==0.9.0",
"rosdistro-modules==0.9.0",
"rosgraph==1.15.14",
"rosinstall==0.7.8",
"rosinstall-generator==0.1.22",
"roslaunch==1.15.14",
"roslib==1.15.8",
"roslint==0.12.0",
"roslz4==1.15.14",
"rosmake==1.15.8",
"rosmaster==1.15.14",
"rosmsg==1.15.14",
"rosnode==1.15.14",
"rosparam==1.15.14",
"rospkg==1.4.0",
"rospkg-modules==1.4.0",
"rospy==1.15.14",
"rosservice==1.15.14",
"rostest==1.15.14",
"rostopic==1.15.14",
"rosunit==1.15.8",
"roswtf==1.15.14",
"rqt-moveit==0.5.10",
"rqt-reconfigure==0.5.5",
"rqt-robot-dashboard==0.5.8",
"rqt-robot-monitor==0.5.14",
"rqt-rviz==0.7.0",
"rqt_action==0.4.9",
"rqt_bag==0.5.1",
"rqt_bag_plugins==0.5.1",
"rqt_console==0.4.11",
"rqt_dep==0.4.12",
"rqt_graph==0.4.14",
"rqt_gui==0.5.3",
"rqt_gui_py==0.5.3",
"rqt_image_view==0.4.16",
"rqt_launch==0.4.9",
"rqt_logger_level==0.4.11",
"rqt_msg==0.4.10",
"rqt_nav_view==0.5.7",
"rqt_plot==0.4.13",
"rqt_pose_view==0.5.11",
"rqt_publisher==0.4.10",
"rqt_py_common==0.5.3",
"rqt_py_console==0.4.10",
"rqt_robot_steering==0.5.12",
"rqt_runtime_monitor==0.5.9",
"rqt_service_caller==0.4.10",
"rqt_shell==0.4.11",
"rqt_srv==0.4.9",
"rqt_tf_tree==0.6.3",
"rqt_top==0.4.10",
"rqt_topic==0.4.13",
"rqt_web==0.4.10",
"ruamel.yaml==0.17.21",
"ruamel.yaml.clib==0.2.6",
"rviz==1.14.19",
"s3transfer==0.6.0",
"SecretStorage==2.3.1",
"Send2Trash==1.8.0",
"sensor-msgs==1.13.1",
"sentry-sdk==1.5.1",
"setuptools==45.2.0",
"simplejson==3.16.0",
"sip==4.19.21",
"six==1.14.0",
"smach==2.5.0",
"smach-ros==2.5.0",
"smclib==1.8.6",
"soupsieve==2.3.2.post1",
"stack-data==0.5.0",
"systemd-python==234",
"terminado==0.15.0",
"tf==1.13.2",
"tf-conversions==1.13.2",
"tf2-geometry-msgs==0.7.5",
"tf2-kdl==0.7.5",
"tf2-py==0.7.5",
"tf2-ros==0.7.5",
"tinycss2==1.1.1",
"topic-tools==1.15.14",
"tornado==6.2",
"traitlets==5.3.0",
"ubuntu-advantage-tools==20.3",
"ubuntu-drivers-common==0.0.0",
"ufw==0.36",
"unattended-upgrades==0.1",
"urllib3==1.25.8",
"vcstools==0.1.42",
"wadllib==1.3.3",
"wcwidth==0.2.5",
"webencodings==0.5.1",
"wheel==0.34.2",
"widgetsnbextension==4.0.2",
"wrapt==1.11.2",
"wstool==0.1.18",
"xacro==1.14.13",
"xkit==0.0.0",
"zipp==3.8.1",
"zstandard==0.18.0"
],
"usb": [
{
"port": 0,
"vendor_id": "0x1d6b",
"product_id": "0x0003",
"speed": "SuperPlus"
},
{
"port": 3,
"vendor_id": "0x046d",
"product_id": "0xc52b",
"speed": "Full"
},
{
"port": 14,
"vendor_id": "0x8087",
"product_id": "0x0aaa",
"speed": "Full"
},
{
"port": 0,
"vendor_id": "0x1d6b",
"product_id": "0x0002",
"speed": "High"
},
{
"port": 0,
"vendor_id": "0x1d6b",
"product_id": "0x0003",
"speed": "SuperPlus"
},
{
"port": 0,
"vendor_id": "0x1d6b",
"product_id": "0x0002",
"speed": "High"
}
],
"uname": [
"Linux rjulia 5.8.0-43-generic #49~20.04.1-Ubuntu SMP Fri Feb 5 09:57:56 UTC 2021 x86_64 x86_64"
]
}
System info gathered successfully - saved as "log_system_information.json"
Additional context

Hi @rjuliaros ,
I apologize for the delay. Have you checked getting started with POE docs? Another option is to specify the IP using python depthai_demo.py -dev <IP_ADDRESS>.
Thanks, Erik

@Erol444
I have similar issue and I tried python depthai_demo.py -dev <IP_ADDRESS>.
I also success to ping to "<IP_ADDRESS>" by setting my laptop static address to "<IP_ADDRESS>".
But after running python depthai_demo.py -dev <IP_ADDRESS>. I got following error.
python depthai_demo.py -dev <IP_ADDRESS>
Using depthai module from:  /home/yi/.local/lib/python3.10/site-packages/depthai.cpython-310-x86_64-linux-gnu.so
Depthai version installed:  <IP_ADDRESS>
Setting up demo...
  File "/home/yi/repo/pg/camera_evaluation/depthai/depthai_demo.py", line 655, in run
    self.instance.run_all(self.conf)
  File "/home/yi/repo/pg/camera_evaluation/depthai/depthai_demo.py", line 131, in run_all
    self.setup(conf)
  File "/home/yi/repo/pg/camera_evaluation/depthai/depthai_demo.py", line 179, in setup
    self._deviceInfo = getDeviceInfo(self._conf.args.deviceId, args.debug)
  File "/home/yi/repo/pg/camera_evaluation/depthai/depthai_sdk/src/depthai_sdk/utils.py", line 220, in getDeviceInfo
    raise RuntimeError("No DepthAI device found!")
RuntimeError: No DepthAI device found!

What's going wrong?

Hi all,
I managed to make it work by using an old version of depthai, I'm not sure
about the origin of the issue. I will check it in a couple of weeks, I will
write again If I find something.
Kind regards,
On Wed, Nov 9, 2022 at 6:19 PM Yoshiyasu Izumi @.***>
wrote:

@Erol444 https://github.com/Erol444
I have similar issue and I tried python depthai_demo.py -dev <IP_ADDRESS>
.
I also success to ping to "<IP_ADDRESS>" by setting my laptop static
address to "<IP_ADDRESS>".
But after running python depthai_demo.py -dev <IP_ADDRESS>. I got
following error.
python depthai_demo.py -dev <IP_ADDRESS>
Using depthai module from:  /home/yi/.local/lib/python3.10/site-packages/depthai.cpython-310-x86_64-linux-gnu.so
Depthai version installed:  <IP_ADDRESS>
Setting up demo...
File "/home/yi/repo/pg/camera_evaluation/depthai/depthai_demo.py", line 655, in run
self.instance.run_all(self.conf)
File "/home/yi/repo/pg/camera_evaluation/depthai/depthai_demo.py", line 131, in run_all
self.setup(conf)
File "/home/yi/repo/pg/camera_evaluation/depthai/depthai_demo.py", line 179, in setup
self._deviceInfo = getDeviceInfo(self._conf.args.deviceId, args.debug)
File "/home/yi/repo/pg/camera_evaluation/depthai/depthai_sdk/src/depthai_sdk/utils.py", line 220, in getDeviceInfo
raise RuntimeError("No DepthAI device found!")
RuntimeError: No DepthAI device found!
What's going wrong?
—
Reply to this email directly, view it on GitHub
https://github.com/luxonis/depthai/issues/781#issuecomment-1309085400,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANR4RRLXI7EZS35VATVATP3WHPMI5ANCNFSM6AAAAAAQBRVTUE
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
https://www.robotnik.eu
Raquel Juliá
R&D DEPARTMENT
(+34) 96 147 54 00
@.*** | robotnik.eu https://www.robotnik.eu
https://www.facebook.com/Robotnik.Automation/?notif_t=page_admin&notif_id=1506077317259585
https://twitter.com/RobotnikRobots
https://www.linkedin.com/company/robotnik-automation-sll/?viewAsMember=true
https://www.instagram.com/robotnik.automation/
--
Please note that this message may contain confidential information. If you
have received this message by mistake,please inform the sender of the
mistake, then delete the message from your system without making,
distributing
or retaining any copies of it. Although we believe that the
message and any attachments are free from viruses and
other errors that
might affect the computer or IT system where it is received and read, the
recipient opens the
message at his or her own risk. We assume no
responsibility for any loss or damage arising from the receipt or use
of
this message.
If Robotnik Automation, SLL processes personal data relating
to physical persons, such processing will meet the
requirements of
applicable data protection legislation.Please see our Privacy Policy
https://robotnik.eu/privacy-policy/ and our Legal Notice
https://robotnik.eu/legal-notice/.

@YoshiyasuIzumi @rjuliaros
We've got a fix for this already in the works (fw_poe_startup_bugfix in core) - we are targeting 2.19.1 to release this bugfix.
Thanks for the report!


Adding JERS mosaic

The JERS mosaic (currently product "jers_mosaic", but maybe reindexed to be "jers_sar_mosaic") should be added to ows_cfg.py using information from the metadata catalog. Only one display style for hh is needed. Jers hh digital numbers have a scaling ~1.21 (10^0.083) times ALOS hh digital numbers. Therefore the alos_hh color ramp with all values x 1.21 will work.

jers_sar_tile                  JERS-1 SAR annual mosaic tiles generated for use in the Data Cube - 25m pixel spacing, WGS84. These tiles are derived from the orignal JAXA mosaics with conversion to GeoTIFF.

Is this it, this is the only on there

yes, that's the correct one


How to train llm for tool plugin?, i can not find the code, thanks

The training scripts can be found in https://github.com/OpenBMB/ToolBench

Thank you for your reply


net: ethernet: Set the ptype by the caller in send

Instead of setting the upper protocol type in ethernet_send() by checking the protocol type bits, use the ptype that is already set by the caller. This allows new protocol types to be supported and makes the system extensible.

Maybe in a next step custom bit-flags like net_pkt_set_lldp and similar could be removed.

Yes, absolutely. There needs to be a cleanup before this is ready for merge. This is currently a draft so people could try it without it getting merged accidentally.


Feature Request: use ollama to redo/improve the OCR

Hi,
I've been playing around with using ollama to generate OCR content and was wondering if you were planning on adding the ability to use vision LLM as OCR content for paperless.
I am following several projects that allow using LLM for paperless but none so far use vision LLMs. I recently made a post in an issue for doclytics here where I outline briefly what's currently possible.
As paperless-gpt seems to have the workflow that best fit my setup, I was wondering what you think of this. That's really the only missing aspect for me to take the jump!
Have a nice day.

Hi @thiswillbeyourgithub, I’m very interested to give it a try. I image a third checkbox in the UI saying “Enhance OCR” or similar. What do you think?

Glad you're interested!
Not bad idea. So the butons would be "refresh" "generate tags" and "enhance OCR"? Maybe sometime it would make sense to run both at the same time, so a fifthbutton "both" would make sense. Or rather instead of buttons use tick boxes and a single button "Execute"?
Btw an update just drop that might motivate you even further :) https://github.com/B-urb/doclytics/issues/97#issuecomment-2425299864

Nice! I guess, the first step is to get the images for each page from the paperless API. I don't know if there is a document-to-image API already or if we have to convert PDF to PNG or similar.

Converting PDF to images in go doesn't seem to be complicated. Additionally, go is very fast:
https://github.com/Mindinventory/Golang-PDF-to-Image-Converter

I just checked and indeed, my paperless is showing the edits made by paperless-gpt in the document history. That's neat!
Currently, the logs are pushed to stdout. With log files come a few challenges regarding log rotation and not spamming the disk of the users. But I do see the point of having a way to backtrack changes.

@thiswillbeyourgithub , if you are playful with go you can test around with an early prototype :)
https://github.com/icereed/paperless-gpt/pull/29/files#r1817924426

Hey thanks a bunch for giving this a try. Unfortunately the only thing I know about go is its name so I won't be of any help at this stage :/
I'm still keeping an eye on this project to know when I can give it a spin and I can't wait :) !

@thiswillbeyourgithub now you can try  an early prototype:
It can be used with docker tag icereed/paperless-gpt:unreleased.

Ah, sorry, the docker push did not work. The image is building now and should be available in a few minutes. Sorry 😅

Yes, you can mix. I personally use ollama for vision and openai for the other suggestions.

So usually, when VISION_LLM_PROVIDER and VISION_LLM_MODEL values are set, the UI will show this button:

The OCR screen looks like this:

You need to enter a document ID.
The result will look like this:

P.S: @mikekaldig be sure to run docker compose pull first, the image is hot and fresh :)

okay .) fixed for me. But there is a error msg:

http://<IP_ADDRESS>:8777/documents/325/details

This might only be a UI issue, sorry. Can you still click on the button? It should work.

P.S: You need to pull the specified ollama model first using ollama pull x/llama…

Yeah, its only a ui bug. i can click the button:
Great work :)

Kudos to @thiswillbeyourgithub for bringing in this idea. 💡
The next step is to integrate the OCR feature into a nice workflow. The OCR takes quite a time on my machine (60s per page minimum).
In the backend I already designed OCR as an asynchronous job/queue architecture. Maybe that’s something we can put into the background…

I just ran a page with completed forms through Ollama 3.2 Vision. The result is noticeably better than standard OCR, especially with the handwritten sections, which are almost perfectly recognized. I think the prompting needs a bit of fine-tuning, but the result is fantastic.

Nice work!

I just ran a page with completed forms through Ollama 3.2 Vision. The result is noticeably better than standard OCR, especially with the handwritten sections, which are almost perfectly recognized. I think the prompting needs a bit of fine-tuning, but the result is fantastic.

@mikekaldig how fast/slow was the OCR for you and what hardware do you use to run Ollama?

With my Nvidia Quadro P400  (only 2GB VRAM) it took about 3-4 minutes per page at 300 DPI.

okay .) fixed for me. But there is a error msg:

This bug is fixed now with #37 🙂

Great work it seems! Unfortunately the timing is as bad as can be for me so I don't wait for me to make a review :)
Have you figured out a way to periodically rerun the OCR as better models and prompts are rolled out? For example say I scan my entire collection with the model minicpm, how easy is it to cleanly re OCR my entire collection with llama 3.2 when it's out of beta?

I just ran a page with completed forms through Ollama 3.2 Vision. The result is noticeably better than standard OCR, especially with the handwritten sections, which are almost perfectly recognized. I think the prompting needs a bit of fine-tuning, but the result is fantastic.

@mikekaldig how fast/slow was the OCR for you and what hardware do you use to run Ollama?

Hey, i use a Nvidia P40 - Ollama 0.40r5 with Ollama 3.2 Vision, it needs ~ 60 sec for one page
`Every 2.0s: nvidia-smi                                                                                server1: Tue Oct 29 19:31:17 2024
Tue Oct 29 19:31:17 2024
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.161.08             Driver Version: 535.161.08   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  Tesla P40                      Off | 00000000:01:00.0 Off |                  Off |
| N/A   52C    P0              53W / 250W |  11350MiB / 24576MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A   3424810      C   ...unners/cuda_v12/ollama_llama_server    11348MiB |
+---------------------------------------------------------------------------------------+
WARNING: infoROM is corrupted at gpu 0000:01:00.0
`

I think every user probably has a different way of handling this. Personally, I prefer it to be processed sequentially in the background. But maybe you could alternatively implement a switch function that allows for personalization. I also think you're probably now getting into the topic of whether there should be a settings area. :)

Another thing I wonder: some documents have perfect contents already since they come in as digital documents (PDFs). We could theoretically let an LLM decide if it’s worth it to do an OCR again. But that could also be too much unexpected magic for the users…

Personally, my use case would be to run the entire collection into it sequentially in the background. and run the whole thing all over again when there is a new model

Personally, my use case would be to run the entire collection into it sequentially in the background. and run the whole thing all over again when there is a new model

This is my use case as well. I also don't really have a need for the web ui.

So basically, a tag would be sufficient then as an MVP. Just tag all documents that you wanna OCR and paperless-gpt will put them into the job queue.

So basically, a tag would be sufficient then as an MVP. Just tag all documents that you wanna OCR and paperless-gpt will put them into the job queue.

It should also add a custom tag when it is done, so another pipeline can be triggered after.

Interesting, tag chaining 😄
I will give it a thought.

So basically, a tag would be sufficient then as an MVP. Just tag all documents that you wanna OCR and paperless-gpt will put them into the job queue.

I agree ideally customizable because paperless-gpt is quite longe and can clutter some paperless UI I'd say

Also how is handled the fact that some documents have some fields manually edited already? Does it overwrite them? Ignore them?

Btw ollama 0.4 just dropped and has support for larger llama3.2 vision models

Hi, I just came looking for news of this feature

Hey @thiswillbeyourgithub,
what would your favorite use case be?
Is it an automatic OCR based on tags?

Basically a "smarter OCR and classification".
You see I take photos of many unexpected document (medical reports? Cards? Pictures of objects?) and having a vision model able to both do a more sane OCR as well as tag and choose a title seems like it would greatly helo my setup.

Hello everyone, thought I'd chime in with some questions.
I just set up paperless-gpt and find it to be very, very helpful and would love it to further develop into a really great companion to paperless-ngx.
Currently what I'd love to happen here is an automatic OCR mode, like the one we already have for tagging / titling. That'd really help. Plus, a nicer UI that doesn't require me to input a document ID would really be appreciated ;).
In addition to that, does anyone have experience with x/llama3.2-vision? I just ran it once yesterday, and it told me something along the lines of "I skipped transcribing since this section contained a handwritten signature". Especially this part would have been interesting to me, since i'm blind and OCRing handwritten text, although probably errorneous, is particularly important to me. Is there anything we can do about this, like changing the prompt to tell it to still transcribe this part?
Thanks, have a great time, we'll see us in 2025.


Don't access clipboard passively on iOS

Description
iOS 14 started showing a notification whenever an app accesses the clipboard.  Flutter does this in order to decide whether or not it can show the Paste button in the text selection menu (see https://github.com/flutter/flutter/pull/54902).  As a stopgap solution, this PR removes this functionality on iOS and always shows the Paste button in order to avoid the notification.

The long-term solution involves using a new API provided by Apple.  We can use this to detect a pasteable string in the clipboard without reading the text itself.  However, the notification will still show when a user presses the paste button.  Progress on this long term solution will continue to be tracked in the issue https://github.com/flutter/flutter/issues/60145.
Related Issues
https://github.com/flutter/flutter/issues/60145
Tests
I tested both cupertino and material on iOS to verify that the Paste button is shown despite there being nothing on the clipboard.
Breaking Change
None.

Started Google testing for this PR

Google testing passed!

Started Google testing for this PR

Google testing passed!

Started Google testing for this PR

Google testing passed!


downloading blockchain: clamd uses insane CPU power

Just tried to get started with clamd and have following issue.
Note that this is insofar a special case as this is on an IPv6 only node, and only has around 3 connections. (I guess this is not related but just to be complete.)
At first clamd was downloading blocks fine and I was estimating to be finished after 6-7 hours. But the longer the block chain gets, the more often (and longer) it stops adding blocks but still consumes CPU power. Sometimes the CPU is busy for over a minute, without progress. When this happes, something like the following is written into debug.log:
ERROR: ProcessBlock() : already have block (orphan) 3d503686d4cb2cab0cd72a43902d808d8b5f85d6d4e7c77dd5e1a02eaf81abef
ERROR: ProcessBlock() : already have block (orphan) cb06812b384f175d3cc476dffb5b5d56c771c860d68ceea79b2711e6954c9d7c
ERROR: ProcessBlock() : already have block (orphan) 58f848f762e1a65b3a6e7cce9da2a8af34c56e223a54cdd1c3151d158fcd5b80
ERROR: ProcessBlock() : already have block (orphan) 757a79e2604737d0c6aba65a9456499613c8c183306f7882c8738788d4c7d12f
ERROR: ProcessBlock() : already have block (orphan) 1ff41ce2c375aae4f41b6bc1c7239abb93f7c22cc44685d114a823139c065920
ERROR: ProcessBlock() : already have block (orphan) 7d4b596ec2905c1ff4fe2efa163054f26327f30ca6f493d6635bbf53e4ceba8f
ERROR: ProcessBlock() : already have block (orphan) a74c499847074278ebccb209d8368a8c979cbd993e63ded9eede997788647cd4
ERROR: ProcessBlock() : already have block (orphan) 01578e6fc8c9e8c85aa1c9b05489669b9b118f2229726b8c38702a83b4ba1ed6
ERROR: ProcessBlock() : already have block (orphan) cd02d1687f75ae446ec2a7744cd1921ba7444deccaf612e9c80962c7f0ff69bf
ERROR: ProcessBlock() : already have block (orphan) 6596b91ca1fdc7a2d463271f9f2796af4e568982ebc12a55aa47148c04e20e60
ERROR: ProcessBlock() : already have block (orphan) 77cd80fa0b132b0ace1e5939aff16bb2d07b7172d7fb3608660ed0dcb398e43c
ERROR: ProcessBlock() : already have block (orphan) 1b1d87803d38dd5e163b2579f49afbd664e89bdfeff123ed0a31ff90b16f2f72
ERROR: ProcessBlock() : already have block (orphan) 6e923f8e93264602ba80215d48d7e5e6eff04f14225b30c8c22615514d82e4e9
ERROR: ProcessBlock() : already have block (orphan) c35cbb5740a145eb6503e384274b05988fb02e7c72b7a4dbc409e81f256af92f
ERROR: ProcessBlock() : already have block (orphan) 6c8c5440886e1b1158e69c7e9585f2731cac90232bb6298c6f7cd08075170fe6
ERROR: ProcessBlock() : already have block (orphan) e950456a2a38cb39719bd709e6b5ce7b3138fa46e16ca33300b5ec52048789e6
ERROR: ProcessBlock() : already have block (orphan) ec6dcc833193fae27873c51c906dfa381f1e6eef4e48369132ed538b98736bc2
ERROR: ProcessBlock() : already have block (orphan) 381282e0ed2a682d3adf38074dd62d44838db33e171ddd4f9fde7102fe08b557
ERROR: ProcessBlock() : already have block (orphan) 1ec6ad0c212ebd6e20598931a2f57af6ba45b5e5c2580c6edfee5c8368f429fe
ERROR: ProcessBlock() : already have block (orphan) 202c5a9410f80ecb55ef86b8f21591aa4218e147170d814441e39a4ec6b319c9
$ clams-1.4.17/src/clamd -rpcconnect=::1 getinfo
{
"version" : "v<IP_ADDRESS>-unk",
"protocolversion" : 60014,
"walletversion" : 60000,
"balance" : 0.00000000,
"newmint" : 0.00000000,
"stake" : 0.00000000,
"blocks" : 607865,
"timeoffset" : -1,
"moneysupply" : 15277917.13048927,
"digsupply" :<PHONE_NUMBER>0040,
"stakesupply" :<PHONE_NUMBER>1731,
"activesupply" :<PHONE_NUMBER>1771,
"connections" : 3,
"proxy" : "",
"ip" : "2a01:4f8:160:20c1::10:115",
"difficulty" : {
"proof-of-stake" : 51845.12210137
},
"testnet" : false,
"keypoololdest" :<PHONE_NUMBER>,
"keypoolsize" : 101,
"paytxfee" : 0.00010000,
"mininput" : 0.00000000,
"errors" : ""
}

xploited is working on merging newer code from bitcoin that will hopefully solve this issue.
You can find it here if you want to help fix/test it:
https://github.com/l0rdicon/clams/tree/reindex

I'm afraid I'm not familiar enough with the code base to be of much help, but where/how is this work coordinated anyway?

I intended to stay away from CLAM till this issue is fixed, but now I stumbled upon
https://bitcointalk.org/index.php?topic=623147.msg13477544#msg13477544
which triggered my curiosity.
Can you point me to the commit, that triggered the problem?
Is there an old version of clamd, that is not slow, but stil works on the current block chain?
Is this a genuine problem of CLAM, or will other peercoin forks be affacted by the same problems once they reach the same block hight as the CLAM blockchain?

Closing issue, unrelated to client v2.1.0 and this is fixed in this version as well

insane cpu power lmao.


Opening URL from selected text on page ("Paste and Go" in v1.11)

It would be nice to have this feature.

Would be convenient, yes. I would also add here the ability to directly open a URL that has been selected anywhere on a page via the selection context menu.

Thanks!


Add tests for ShowProgressSort

Codecov Report

Merging #124 into master will increase coverage by 0.92%.
The diff coverage is 100%.

@@           Coverage Diff            @@
##           master   #124      +/-   ##
========================================
+ Coverage   86.08%    87%   +0.92%
========================================
  Files         153    154       +1
  Lines        5685   5826     +141
  Branches      211    218       +7
========================================
+ Hits         4894   5069     +175
+ Misses        790    756      -34
  Partials        1      1

Impacted Files
Coverage Δ

...kerTests/Shows/Progress/ShowProgressSortTest.swift
100% <100%> (ø)

CouchTracker/Shows/Progress/ShowProgressSort.swift
92.15% <100%> (+74.76%)
:arrow_up:

Continue to review full report at Codecov.

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


[enhancement|feature request] Add redirect option for access lists.

Currently, whenever someone wants to access a host and doesn't meet its' dedicated access list requirements they receive a 403 forbidden error message. This may be fine for many, but I'd like to redirect the user to my default page instead. I'd imagine it to be similar to the "Default Site" setting.

@TheRealVira I would say use the optional custom http_top.conf as described here
perhaps the below will work:
error_page  403   http://google.com;

Yup this works for me. Thanks for the quick reply @the1ts ! I guess if you really want different redirects depending on which access list you use you'd need to use a different configs. But I am okay with just my one default page.


Package.Spec.SyncPeriod should be respected when PackageInstall.Spec.SyncPeriod is nil

What steps did you take:
When applying a PackageInstall CR with Spec.SyncPeriod == nil.
What happened:
The generated App.Spec.SyncPeriod is 10min.
What did you expect:
Package.Spec.Template.Spec.SyncPeriod (if not nil) should be respected when PackageInstall.Spec.SyncPeriod is nil.
Because each Package knows its proper SyncPeriod and deploy.kapp.RawOptions.'--wait-timeout=30s', unless PackageInstall CR explicitly sets the SyncPeriod.
Anything else you would like to add:
Here is the code causing the issue: https://github.com/vmware-tanzu/carvel-kapp-controller/blob/v0.36.1/pkg/packageinstall/app.go#L46-L52
Environment:

kapp Controller version: v0.36.1 and develop branch

Vote on this request
This is an invitation to the community to vote on issues, to help us prioritize our backlog. Use the "smiley face" up to the right of this comment to vote.
👍 "I would like to see this addressed as soon as possible"
👎 "There are other more important things to focus on right now"
We are also happy to receive and review Pull Requests if you want to help working on this issue.

@jessehu this was done intentionally since this is a type of configuration that is controlled by the package consumer, not authors. would you mind elaborating why it would be useful for package author to "pitch in" with their value?

Thanks @cppforlife. My point is Package.Spec.Template.Spec.SyncPeriod (if not nil, defined by the package auther) should be used when PackageInstall.Spec.SyncPeriod is nil.
	desiredApp.Name = pkgInstall.Name
	desiredApp.Namespace = pkgInstall.Namespace
	desiredApp.Spec = *pkgVersion.Spec.Template.Spec
	desiredApp.Spec.ServiceAccountName = pkgInstall.Spec.ServiceAccountName
	if pkgInstall.Spec.SyncPeriod == nil {
		desiredApp.Spec.SyncPeriod = &metav1.Duration{Duration: time.Minute * 10}
	} else {
		desiredApp.Spec.SyncPeriod = pkgInstall.Spec.SyncPeriod
	}

The Package author knows the proper deployment options, such as SyncPeriod and deploy.kapp.RawOptions.'--wait-timeout=30s', but can be override by PackageInstall. If we think SyncPeriod should only be controlled by PackageInstall (the package consumer), should PackageInstall provides a default deploy.kapp.RawOptions as well?

The Package author knows the proper deployment options

syncPeriod of a package is not something that should "affect" the package itself. ie it should not matter at all if consumer decides to run reconciliation every 30s or every 10h. authors should have no opinion on how frequently consumers decide to reconcile their system.

should PackageInstall provides a default deploy.kapp.RawOptions as well?

that's an interesting question because there are definitely cases where wait timeout is more specific to package content, but there are also cases where some consumers may have particular opinion on the waiting logic. i think it would be good to see more requests around wait timeout from consumers to see why they are trying to configure it.

just recall a possible use case that the package author might want to set Package.Spec.Template.Spec.SyncPeriod of package A to a shorter time as this package A depends on other packages, and all packages are reconciled in parallel. As a result, package A can be reconciled again in shorter period and set its status to ReconcileSucceeded.
and I would prefer if pkgInstall.Spec.SyncPeriod == nil, it means the pacakge consumer has no option/idea on App.SyncPeriod, so in this case if Package.Spec.Template.Spec.SyncPeriod is set, why not use it?


NVME inventory fix.

Hi @Solvik,
I hope you are well.
The inventory crash with default nvme-cli version 1.8.1 on Centos7.
This fix it.
Best regards,

I think he's quite busy, thanks for the patch!


Remove sles/SUSE from robotest configs

Description
We not aware of any customers that use SLES, and this test is
currently broken because GCP removed the SLES disk image robotest
depends on, resulting in the following error:
Error: Error resolving image name 'suse-cloud/sles-15-sp2-v20201014': Could not find image or family suse-cloud/sles-15-sp2-v20201014
Type of change

Regression fix (non-breaking change which fixes a regression)
This change has a user-facing impact

Linked tickets and other PRs

Works around https://github.com/gravitational/robotest/issues/290

TODOs

[x] Self-review the change
[ ] Verify CI Passes
[ ] Address review feedback

Testing done
None.  If CI passes this is good to go.
Additional information
After a discussion with @knisbet in slack, we determined we weren't getting a good ROI running
SLES tests regularly.  I'll fix/remove this upstream in Robotest at some point (see https://github.com/gravitational/robotest/issues/290), but this at least will unblock gravity merges.
This needs backports to 8.0.x and 7.0.x, but no further, as we don't test against sles on 6.1/5.5.

Just leaving a note, we don't know for sure that no customers use SUSE at all. But the enterprise customer who requested SUSE support and had support tickets around SUSE is no longer a customer. The current set of customers do not use SUSE as far as we are aware, which is why we're removing this from our test matrix but could still investigate specific problems that may occur.

Just leaving a note, we don't know for sure that no customers use SUSE at all. But the enterprise customer who requested SUSE support and had support tickets around SUSE is no longer a customer. The current set of customers do not use SUSE as far as we are aware, which is why we're removing this from our test matrix but could still investigate specific problems that may occur.

I updated my description a bit to better reflect this.


Update redundancy-migration.md

Update the AZURE CLI command to monitoring customer-initiated conversion progress.

@SukanyaPandit26 @Court72 - Thanks for the update. I'd like to hold off on publishing this for the moment because we have this change and several others pending in another PR that will be launched in support of new DR-related features. I don't have a specific date yet, but I anticipate that it will be within the next week or two.

The new feature documentation is finally launching this week; I'm closing this PR as a duplicate of the private PR 263741.

#please-close


Updated<EMAIL_ADDRESS>

Updated to<EMAIL_ADDRESS>Only tested it with my projects. Everything works as before.

+1 for integration

+1 as well

+1

+1 please

+1 please

+1


Add code to check handler syntax

This PR fixes issue: https://github.com/PowerShell/Crescendo/issues/60
I've just added a validation function. I hope the logic is fine, else we can discuss and change it.

closing as this is well handled in #62 .


CAMEL-11977: MongoDB Tailable cursor consumer fails to stop on shutdown

cursor.hasNaxt() locks thread and waits for new object. Camel mongodb component uses loop to get new cursor objects, so we can just try if next is present without waiting for new object. tryNext() is what we need in this casre.
According to mongoBD documentation:
http://api.mongodb.com/java/current/com/mongodb/client/MongoCursor.html
tryNext() A special next() case that returns the next element in the iteration if available or null.
So after exit hook injection. when java will call MongoDbTailingProcess.stop(), there will be no lock at  MongoDbTailingProcess.run(). so MongoDbTailingProcess instance will be stopped.

Thanks do you mind look in camel-mongodb3 if it has the same bug?

Isn't this a problem if the while loop now with tryNext keeps returning false because there is no data, but its not being stopped, then the while loop keeps running, and calling tryNext again and again endlessly which could eat up CPU cycles. In other words is this code change not causing CPU burden when there is no data to retrieve but the while loop keeps running.
Ideally Mongodb should have had a next with timeout, so you can timeout every second or so and then check if you should shutdown or not.

If tryNext() will return null, execution will leave while loop. Does this answer your question?
Mongodb3 has the same issue, yes

Even so it leaves the method it goes back to run method, that then close the curors, and re-create it, which is expensive operations. eg in normal situation where you do NOT shutdown.
In other words we cannot do this because normal operation will suffer from CPU burning and endless cursors closing/re-creation

Lets add some timeout then, it will be better then deadlock.

I see that this bug had been found earlier https://issues.apache.org/jira/browse/CAMEL-9826 and fix was committed. But it has not fixed the issue. I will look into mongodb driver cursor logic.


Badge Server Refactor

only route to one badge
remove internal http calls
remove references to old sources of data (datastore, cache, bigquery, force check)
replace with new data source (compatibility store / cloud sql)

To do in future PRs:

new force check (?)
apply changes outlined in badge server PRD

@brianquinlan
It looks like the CLA is failing because I committed one of your suggested changes via github - are you at all able to verify your consent to author at this link?

Remove the cla:no tag and add the cla:yes tag manually on this PR should work.


Possibility of setting useful environment variables

Hello! This is more of an FYI. Sorry, I had to open it as an issue since I didn't know which forum to use.
It is now possible for this plugin endpoint to set environment variables to be used by the rest of the tasks in the job. See "Response body" in the documentation: https://plugin-api.gocd.org/current/artifacts/#fetch-artifact. I was thinking it could be done here: https://github.com/Diogomrol/gocd-s3-artifact-plugin/blob/2db42e0efb49dbbd7bdfc42d8a4a05a7de4474f6/src/main/java/diogomrol/gocd/s3/artifact/plugin/executors/FetchArtifactExecutor.java#L149
I thought I'd mention it since you have a section about environment variables in the README. Please close this "issue" once you've seen it. :)
/cc @Diogomrol @tomzo

Some more information:
https://github.com/gocd/gocd/pull/5188
https://github.com/gocd/docker-registry-artifact-plugin/pull/22

@arvindsv thanks. I've seen this possibility already, but I don't see a use for it actually. We are simply fetching some files to a local directory. But then what would we export and why? Do you have some particular use case in mind?
I can see how it makes sense for the docker image plugin.

Btw, the section about environment variable is about expanding them during artifact collection, not in the fetch.

@tomzo Yes, what you say makes sense. In this case, since it's a file, you probably don't have a need for adding extra information into the job's environment variables. I'll close this issue. Sorry! :/


Define connection, messaging etc. default limits for Remote Monitoring

Type of issue

[ ] Bug
[x] New feature
[ ] Enhancement

Description
See appsettings.ini, set the values we want to use for Remote Monitoring deployments

Suggest limiting to ~1/2 the available hub SKU/unit limit to allow for clients outside the simulator leeway - i.e. we should not always run the simulator @ capacity.

This makes sense - these look good.

done


Better filterable list form date validation

Entering invalid dates in filterable list form query strings produces a 500 error, e.g.
http://www.consumerfinance.gov/about-us/newsroom/?form-id=0&filter0_from_date=BAD
We have JS-based validation on the frontend that should prevent users from submitting bad dates, but crawlers or URL hacking could produce invalid formats. This PR properly catches invalid dates and displays a "You have entered an invalid date." message.
Additions

FilterableDateField and related FilterableFromDateField and FilterableToDateField fields for better handling of invalid dates.

Changes

Some flake8 cleanup.

Testing

Load a production database and experiment at http://localhost:8000/about-us/newsroom/. Try entering valid or invalid dates in the UI, then try adding something like ?form-id=0&filter0_from_date=x to see the error message.

Screenshots
After entering an invalid date:

Notes

@sebworks in your original code change it seems like you were trying to provide the field name by using a %s in the error string. I wasn't able to get this to work properly without significant hacking of the form class, and didn't think it was worth pursuing 100% synchronization with the frontend error. Does that seem okay to you?

Checklist

[X] Changes are limited to a single goal (no scope creep)
[X] Code can be automatically merged (no conflicts)
[X] Passes all existing automated tests
[X] New functions include new tests
[X] Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)
[X] Reviewers requested with the Assignee tool :arrow_right:

@sebworks in your original code change it seems like you were trying to provide the field name by using a %s in the error string. I wasn't able to get this to work properly without significant hacking of the form class, and didn't think it was worth pursuing 100% synchronization with the frontend error. Does that seem okay to you?

@chosak, yeah this is fine.

@chosak, will this all the date fields to except flexible date formats such at 10/15?

@sebworks so it would be easy to expand the backend validation options, although I haven't done that in this PR. Actually the default Django DateField validation already supports three options (2006-10-25, 10/25/2006, 10/25/06) and we explicitly limit it for some reason. If we wanted to add some flexibility, though, we'd have to also modify the frontend validation code, and I'm not quite sure where that lives.
If expanding date validation choices on the frontend is easy to do, we could collaborate on a separate PR that does that.

@chosak, I think 10/15 and 2016 are currently accepted by the front-end via the date filters. We were using https://github.com/cfpb/cfgov-refresh/pull/2629/files#diff-a20999810035f4df9b089b5ce85e66b6L18 to allow the backend to accept flexible date formats. This is the regex for the front-end: https://github.com/cfpb/cfgov-refresh/blob/master/cfgov/unprocessed/js/modules/util/validators.js#L24.

@sebworks thanks for the additional context. I don't think the backend logic as it stands right now handles those cases properly. Using that line you link to:
>>> from sheerlike.templates import get_date_obj
>>> get_date_obj('10/15').isoformat()
'2016-10-15T09:25:53.309628-04:00'
>>> get_date_obj('2016').isoformat()
'2016-12-01T09:24:05.003052-05:00'

So 10/15 is converted to 10/15/2016 at the local time, not 10/01/2015 at midnight as we'd like. Similarly, 2016 is converted to 12/01/2016 using the local month and time, not 01/01/2016. You can also verify this on the live site, e.g. at the Newsroom here.
In a457d01 I added backend support for these formats, which should match the frontend validation:
default_input_formats = (
    '%m/%d/%Y',     # 10/25/2016
    '%m/%Y',        # 10/2016
    '%m/%y',        # 10/16
    '%Y',           # 2016
)

💯, beautiful stuff.


Run command if receive one in an SNS event

Description

Run command if one is received in an SNS event (Used by async task using SNS)
I tried to keep the change as small as possible. The only thing I don't like is that it's gonna load the Json message twice in a python structure. But I don't think it's a big deal and it keeps the code clear
GitHub Issues

https://github.com/Miserlou/Zappa/issues/875

Coverage decreased (-0.01%) to 72.602% when pulling 12fb7eb87521f1437461a9f5fa3160079d56c35b on cscetbon:fix_async_sns_task into 34bc7a86b8833454b154e6199ebee13bf4d7cdc0 on Miserlou:master.

Coverage decreased (-0.01%) to 72.602% when pulling 5c0a9b330ab8240d8a0786154dfb1bd929dbb1ad on cscetbon:fix_async_sns_task into 34bc7a86b8833454b154e6199ebee13bf4d7cdc0 on Miserlou:master.

Coverage decreased (-23.8%) to 48.81% when pulling fcaa535af727d7c8a52f09e709e60d4a8019ade3 on cscetbon:fix_async_sns_task into 34bc7a86b8833454b154e6199ebee13bf4d7cdc0 on Miserlou:master.

Coverage increased (+0.2%) to 72.825% when pulling a7087fac34a989726fe8a77c3893fdf898794204 on cscetbon:fix_async_sns_task into 34bc7a86b8833454b154e6199ebee13bf4d7cdc0 on Miserlou:master.


feat: add zyedidia/eget

zyedidia/eget: Easily install prebuilt binaries from GitHub
$ aqua g -i zyedidia/eget

How to confirm if this package works well
Reviewers aren't necessarily familiar with this package, so please describe how to confirm if this package works well.
Please confirm if this package works well yourself as much as possible.
Command and output
$ eget --help
Usage:
  eget [OPTIONS] TARGET

Application Options:
  -t, --tag=           tagged release to use instead of latest
      --pre-release    include pre-releases when fetching the latest version
      --source         download the source code for the target repo instead of a release
      --to=            move to given location after extracting
  -s, --system=        target system to download for (use "all" for all choices)
  -f, --file=          glob to select files for extraction
      --all            extract all candidate files
  -q, --quiet          only print essential output
  -d, --download-only  stop after downloading the asset (no extraction)
      --upgrade-only   only download if release is more recent than current version
  -a, --asset=         download a specific asset containing the given string; can be specified multiple times for additional filtering; use ^ for anti-match
      --sha256         show the SHA-256 hash of the downloaded asset
      --verify-sha256= verify the downloaded asset checksum against the one provided
      --rate           show GitHub API rate limiting information
  -r, --remove         remove the given file from $EGET_BIN or the current directory
  -v, --version        show version information
  -h, --help           show this help message
  -D, --download-all   download all projects defined in the config file
  -k, --disable-ssl    disable SSL verification for download requests

Thanks!

Released. https://github.com/aquaproj/aqua-registry/releases/tag/v3.145.0


[VC] Add README.md for the experiment feature

The change adds basic readme information for the namespace scheduler feature.

This is great, thanks for writing this up!
/lgtm


Youtube download links expire

Is there a way to get a youtube download link that does not expire or is this a security feature by youtube?

Maybe the best way is when you need the url and avoid the url expire, you pull new url everytime likes :youtube-dl -gf 18 https://www.youtube.com/watch?v=dc66rRymXuQ

Hi there. I'm also annoyed by the expiration. My use case is too build playlist for VLC from youtube playlists. But I can listen for music maybe couple of hours, then I need to rebuild the playlist, reload on VLC...


ONNX from pytorch 0.4.1 has confusing error message.

Exported resnet50 from pytorch 0.4.1 and tried it with MIGraphX.  Error message doesn't give much clue on the underlying issue:
terminate called after throwing an instance of 'migraphx::version_1::exception'
what():  /home/mev/source/AMDMIGraphX/src/include/migraphx/operators.hpp:340: Non-axis dimensions should match
Aborted (core dumped)
In contrast to ngraph which gives the following error:
NotImplementedError: ("Reshape node (%s) doesn't support shape input of other type than Constant.", '')
Note also this is related to https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/issues/59 but just to improve error reporting.

Updated the description and symptoms since we are more concerned with latest pytorch (1.0) than an earlier version (0.4.1) with dynamic graph information.
Retried this using the torchvision resnet50 implementation and pytorch 1.0 and it still creates a core dump.  Also retagged this for release 1.0.

Close in favor of an explicit issue for pytorch 1.0 support


Rename clear_button_color_pressed to clear_button_pressed_color

This will rename the theme property clear_button_color_pressed to clear_button_pressed_color of LineEdit to match with all other color names.

While it's not great, I don't think this warrants breaking compatibility at this point. Before beta I evaluated most of the theme properties, and there were some possibilities for improvement, both in terms of clarity and in terms of consistency. But ultimately I settled on the worst offenders, and let the rest be as is. This is rather minor.

Closing based on the above comment.

According to the latest changes in the engine and stating

At this stage, we’re trying to avoid unnecessary compat breakage, and focus on issues which cause user confusion and which can be solved with better naming or behavior of the APIs.

you can probably revise your decision?

There is no confusion about this name. It's just not neat/not following the convention properly.

There is no confusion about this name. It's just not neat/not following the convention properly.

Which is confusing, especially if a theme gets generated automatically.

There is absolutely no way to generate the entire theme automatically, as our naming scheme for theme properties is not that consistent in general.
When I say it's not confusing, I mean it literally: there is no question about what this theme property relates to.


Update busybox shas due to upstream change

The images were overwritten in the docker registry.

/lgtm
/approve

/lgtm
/approve


Full Name Preview Not Updating til Blur

When entering the name text the last character doesn't appear on the card until the input field is unfocused.

Same here. In my case, not even .focus().blur() resolve for the name, just for the number.

This was fixed in 2.5.0


Shared lib link is dead

Need to be replaced. Doesn't work.

Unfortunately, I did not find a link to download x32 dll libraries ... Now all FFMPEG development for x64. I will look more, but hope is weak

This may no longer be relevant, however the Zeranoe downloads are available at https://archive.org/download/zeranoe , if that helps.


Suggestion: NPCs that will not require me to move to hit them with a range/mage attack

Is your feature request related to a problem? Please describe.
When safe spotting monsters while using magic or range, I stand on a tile and attack enemies. If the NPC is too far away, my character leaves the tile to run up to the NPC to hit them.
Describe the solution you'd like
I would like NPC that are within range of me hitting them from the tile I'm on to be highlighted or indicated in any way.
Describe alternatives you've considered
If I attack an enemy and my character runs to them, I mark the tile the enemy was on to know that enemies past that tile are too far.

The plugin "Attack Ranges" on the plugin hub has this


how to generate eval data?

How do I generate an eval dataset for my images? The provided data seems to be not compatible with https://github.com/deepinsight/insightface/blob/master/recognition/data/build_eval_pack.py?

How do I generate an eval dataset for my images? The provided data seems to be not compatible with https://github.com/deepinsight/insightface/blob/master/recognition/data/build_eval_pack.py?

Hi, this repo is actually different with InsightFace, pls refer our intro sec. To prepare your own data for evaluation, you can just follow the standard pytorch dataloader implementation.

@ZhaoJ9014 you answer was not really helpful, but I have found the answer myself. For other people who want to create a validation dataset:

create a validation dataset with: https://github.com/deepinsight/insightface/blob/master/recognition/data/build_eval_pack.py
convert to the bcolz format with https://github.com/TreB1eN/InsightFace_Pytorch/blob/master/prepare_data.py
now you can use the method get_pair/perform_val to validate your dataset

@tugstugi Hi, I'm trying to create a validation dataset on my own, can you please give more details on how you created your own validation dataset? I already created a face image folder with the structure as described in the info sec, I already found the build_eval_pack.py from insightface repo although they removed it recently, but I still don't know how to create the validation dataset with the build_eval_pack.py like your mentioned.
Please, any replies from you would be a big help!


Adding Set 31043 Chopper Transporter

My first pull request, i hope i did everything right ^^

Looks good... hate to say it but I just edit the LDR headers / labels in notepad!
Stud.io is fine and all but I have yet to find where to change the headers and it sets them as it likes so I then edit them before I move to the next step.
My workflow is:
Create LDR in Stud.io,
Edit LDR headers with notepad,
Import into Bricksperience,
Sort out everything but dependancies and save (remember to reset the view once the player position has been changed so that I can see the whole model!),
Sort out dependancies (using "Smart Cull" and "Centre on Block" and pressing "e" to switch to the next block without dependancies; it normally works from bottom to top measured from the bottom of a each block),
Save,
Double check I set which blocks are auto-created for the player and then redo the container auto-placement so it reduces the size of containers containing blocks that are auto-placed,
Save and create thumbnails,
Play the level to check it works at least faintly as expected and go edit things if there is a problem (though most dependancy problems are not obvious unless you do things like build only one colour until there are none of that colour left and then move onto another colour and other non-standard ways of building - it's why I have now changed how windows are added to buildings; they are now added in the same way as doors, i.e. once the entire window hole has been created then the window is inserted, not so lego accurate but more real-world accurate and it avoids quite a few obscure problems I've run into plus less down-building (placing new blocks under previous ones which are harder for the player to see), it also pressures the player into leaving themselves more entrances to a build which helps those (i.e. me) who prefer not to jump or fly to build builds - it's what I liked about Bricksperience in the first place, pretending to be a lego construction worker! :D
Add and commit the LDR and Bricksperience file to Github,
Push them into the main branch and hope there were no glaring errors!
[Fix errors or improve builds based on future experience! If I feel strongly enough about it! :)


Prompt before closing the app when a process is running (Fixes #684)

Currently works on macOS fully, and on linux when closing tabs. Doesn't work on linux when closing windows directly because we're overriding a different mechanism. Could use some guidance to know what events to prevent for that case.
On Windows it doesn't' work at all because the process we're running to check if the processes is unix based. Runs without any issues though.
Could use some feedback to improve the way we're obtaining the current sessions PID

Nice, that is definitely a good feature to be in the core!

Update on this: now works on Linux when closing tabs individually or the entire window

@albinekb what do you think about this fix/feature?

You could take a look here: https://github.com/weinand/vscode-processes/blob/master/src/ps.ts
Good exemple to list process on linux/mac but on Windows too

@antonioalmeida willing to pick this up again?

It's been a couple of years, I'm not sure if what I made is still valid

Alright, I'll close this now then, but if you feel this is still needed, please make a new PR :)


net/ntopng: Allow interface selection

Closes #3260
Long standing with just a couple of lines :)

@mimugmail thanks!

Thank so much @mimugmail !!!

Sorry for waiting that long for such an easy change.