Feat: optional indexing of site.pages

Currently, every page has the access to site.pages which provides a list of pages on the site.  This indexing leads to considerable performance hits on pages that do not use site.pages. Based on some initial testing, just making the indexing optional leads to considerable performance gains on pages that do not index it.
Two potential options to enable indexing

A new field index_site_pages is added to the page head and must be set in documents for pages that would need access to the site.pages list.
Use site.toml in configs to list templates that would require the site.pages list. This option would potentially be easier for the user as they just need to set it once per template.

Without indexing
Bombarding http://localhost:3000/ with 1000 request(s) using 1 connection(s)
 1000 / 1000 [========================================================================================================================================================] 100.00% 293/s 3s
Done!
Statistics        Avg      Stdev        Max
  Reqs/sec       300.64      22.59     360.33
  Latency        3.33ms   296.84us     8.22ms
  HTTP codes:
    1xx - 0, 2xx - 1000, 3xx - 0, 4xx - 0, 5xx - 0
    others - 0
  Throughput:     6.79MB/s

With indexing
Bombarding http://localhost:3000/ with 1000 request(s) using 1 connection(s)
 1000 / 1000 [========================================================================================================================================================] 100.00% 199/s 5s
Done!
Statistics        Avg      Stdev        Max
  Reqs/sec       206.64      27.21     263.35
  Latency        4.84ms   752.72us     9.33ms
  HTTP codes:
    1xx - 0, 2xx - 1000, 3xx - 0, 4xx - 0, 5xx - 0
    others - 0
  Throughput:     4.66MB/s

This would again cause a breaking change but is easily addressable by just adding a tag on either site.toml or the content files.
Any thoughts?

closed by #104


The python app created in visual studio cannot be published?

just want to confirm, when use visual studio to create a python web app -> then publish it(not iis, just web app), then the web does not work? I published a python web app, and get the page "Your App Service app is up and running".

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

ID: 90a03cb3-5472-d3bc-3b4b-7eda41f2e22e
Version Independent ID: dd54b123-53a5-e328-ea74-54fab50a6e6c
Content: Publish a Python app to Azure App Service - Visual Studio
Content Source: docs/python/publishing-python-web-applications-to-azure-from-visual-studio.md
Product: visual-studio-windows
GitHub Login: @kraigb
Microsoft Alias: kraigb

Hi @imeya. Currently, Python is officially supported only on Azure App Service for Linux. However, publishing from Visual Studio directly to Azure App Service on Linux using the "Publish" command is not presently supported. That's why the doc page here instructs you to use Git deploy or Containers instead, which are the necessary routes
Python does still work on Azure App Service on Windows, and you can publish from Visual Studio in that case. However, you must do some configuration on App Service first, however, and create the appropriate web.config file. Instructions are on https://docs.microsoft.com/en-us/visualstudio/python/publish-to-app-service-windows?view=vs-2017. (This link is given at in a callout at the top of the article you refer to here.)
The message you're seeing on App Service is the default page that indicates you haven't actually deployed any custom code. Again, more work is necessary to publish from VS to App Service on Windows, or you need to publish using a different mechanism for App Service on Linux.


Writing own adapter for responsive-loader

I really liked custom adapters in responsive-loader. I think I would be happy with tools like this in the HTML Bundler Plugin.

Writing own adapter for responsive-loader
It's not correct. I don't have issue with the responsive-loader and its adapters)

It's not correct. I don't have any issues for the responsive-loader and its adapters)

it was new question ;-)
You can create new discussion or issue for a question, no problem :-)

@vralle
did you know that the plugin can work with this responsive-loader?
Here is an example: How to resize and generate responsive images
Here are many test cases:

responsive-images-html-css
responsive-images-html-css-js
and many other...

What exactly is stopping you from writing an adapter for the loader?

Ok. I stopped using this plugin. Responsive Images and Imagemin Webpack have compatibility issues. I settled on the latter, so it covers 100% of the necessary operations with images.
Here is last adapter I used
// @ts-check

const sharp = require('sharp');

const args = require('../../args');

class SharpAdapter {
  /** @type {sharp.Sharp} */
  image;

  /** @param {string} imagePath */
  constructor(imagePath) {
    this.image = sharp(imagePath);
  }

  /** @returns {Promise<sharp.Metadata>} */
  metadata() {
    return this.image.metadata();
  }

  /**
   * @param {ResizeProps}
   * @returns {Promise<{ data: Buffer; width: number; height: number }>}
   */
  resize({ width, mime, options }) {
    console.log('load Sharp adapter with options:', options);
    return new Promise((resolve, reject) => {
      let resized = this.image.clone().resize(width, null);
      if (!options.rotate) {
        // .toBuffer() strips EXIF metadata like orientation, so portrait
        // images will become landscape. This updates the image to reflect
        // the EXIF metadata (if an EXIF orientation is set; otherwise unchanged).
        resized.rotate();
      }
      if (options.background) {
        resized = resized.flatten({
          background: options.background,
        });
      }

      if (mime === 'image/jpeg') {
        resized = resized.jpeg(args.sharpConfig.jpeg);
      }

      if (mime === 'image/png') {
        resized = resized.png(args.sharpConfig.png);
      }

      if (mime === 'image/webp') {
        resized = resized.webp(args.sharpConfig.webp);
      }

      // rotate
      if (options.rotate && options.rotate !== 0) {
        resized = resized.rotate(options.rotate);
      }

      resized.toBuffer((err, data, { height }) => {
        if (err) {
          reject(err);
        } else {
          resolve({
            data,
            width,
            height,
          });
        }
      });
    });
  }
}

/**
 * @param {string} imagePath
 * @returns {SharpAdapter}
 */
module.exports = (imagePath) => new SharpAdapter(imagePath);

Ok. I stopped using this plugin.
Ok.

@vralle
here is the usage example image-minimizer of the image-minimizer-webpack-plugin
It works with images in HTML, CSS and in JS.
With Bundler Plugin can be used every loaders.
The plugin works with the Webpack standard module types:

asset/resource
asset/inline
asset


doc: add commit message format to CONTRIBUTING.md and PR template

Description of changes:
add commit message format to CONTRIBUTING.md and PR template
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

AWS CodeBuild CI Report

Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


Power on TV doesn't work

Hi,
I don't know if it's a limitation or if it's a bug, but I can't power on m TV. Did I miss something?

It's in the TV specifications.

Sorry.I was wrong.
Check that the "TV Remote" of VIERA TV is set to "On". (Network > TV Remote App Settings > TV Remote)


Load breadcrumbs asynchronously

          I think we should move breadcrumb loading to the very end as it may be costly (usually breadcrumb is loaded first and has to fetch index and placeholder JSONs and ends up eating LCP budget).

I think we discussed this once @jindaliiita that breadcrumbs would occupy a placeholder initially and then get loaded later with content.
Originally posted by @sdmcraft in https://github.com/hlxsites/sunstar/pull/461#pullrequestreview-1754581329

Trying to understand the context here.

Trying to understand the context here.

In a nutshell, can we have the breadcrumb block load asych? Basically a fixed size placeholder  should appear till it loads inside it. The placeholder is to avoid CLS due to content shifting down when the breadcrumb appears.
For a more detailed context please see this slack conversation.


app: Avatar direction in first person

avatar usually faces backward(Towards the camera) while walking running backwards('S' key). While as we move into first person the avatars direction changes towards front.(Still towards the camera) I am not sure if this is an issue and what could be the alternate solution. Maybe We should sync the directions in both first person and distant view.
https://user-images.githubusercontent.com/35926530/147589232-602e3cff-25a8-4764-a58d-039d315d135f.mp4
.

Looks correct to me. In first person mode it is assumes to avatar's head should be pointing where you are looking. This is a feature, not a bug.


Android fixes

Hi! I fixed a couple of problems on android.
chat_addContact:

chat_stickersHintPanel:

dialogRadioBackgroundChecked:

Not sure about the chosen colors, so better check :D

Awesome, thanks for your new contribution! Give me some time to check out the fixes.


Adding sidecar annotations to configure iptables.

Also had to change the default istioctl flag defaults for
includeInboundPorts/includeIPRanges to be "", since "" is a valid
value (meaning re-direct nothing) and can't be considered the same
as "".
Fixes: #4703

@ayj I didn't see a way to test the configmap changes ... any ideas?

@nmittler: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test e2e-bookInfo

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@costinm, mind taking a look at the new annotations?

@nmittler: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test e2e-bookInfo

prow/istio-pilot-e2e.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test istio-pilot-e2e

prow/istio-presubmit.sh
a281adeb3c05896de134470c6cdb398759d7bf2a
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ayj I didn't see a way to test the configmap changes ... any ideas?

We don't have great e2e test coverage for all of the end-user sidecar injection config maps variants. You could copy the idea behind inject_test.go but applied at the webhook inject function using the configmap as configuration input. This could also help increase test coverage of the config reload watcher as well. cc @yusuoh

@nmittler: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test e2e-bookInfo

prow/istio-pilot-e2e.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test istio-pilot-e2e

prow/istio-presubmit.sh
a281adeb3c05896de134470c6cdb398759d7bf2a
link
/test istio-presubmit

prow/istio-unit-tests.sh
2e630485981a5a27a48d108f7aba45b311fa580d
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test e2e-bookInfo

prow/istio-pilot-e2e.sh
bd7626d0604936b27ea6deec10cc81bcf7cd6a7f
link
/test istio-pilot-e2e

prow/istio-unit-tests.sh
2e630485981a5a27a48d108f7aba45b311fa580d
link
/test istio-unit-tests

prow/e2e-simpleTests.sh
2e630485981a5a27a48d108f7aba45b311fa580d
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
734cad8d8558ddaf9577681f1f18afca550d3392
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: yusuoh
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: costinm
Assign the PR to them by writing /assign @costinm in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

install/OWNERS
istioctl/OWNERS
pilot/OWNERS
tests/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
Approval requirements bypassed by manually added approval.
This pull-request has been approved by: yusuoh
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

install/OWNERS
istioctl/OWNERS
pilot/OWNERS
tests/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@nmittler: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests.sh
b9801e8be7adf947f6c59e136a3a0b690a16c7e1
link
/test e2e-bookInfo

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests.sh
b9801e8be7adf947f6c59e136a3a0b690a16c7e1
link
/test e2e-bookInfo

prow/e2e-simpleTests.sh
b9801e8be7adf947f6c59e136a3a0b690a16c7e1
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test e2e-bookInfo
/test e2e-simple

@nmittler: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests.sh
b9801e8be7adf947f6c59e136a3a0b690a16c7e1
link
/test e2e-bookInfo

prow/e2e-simpleTests.sh
b9801e8be7adf947f6c59e136a3a0b690a16c7e1
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
b9801e8be7adf947f6c59e136a3a0b690a16c7e1
link
/test e2e-simple

prow/e2e-bookInfoTests.sh
b9801e8be7adf947f6c59e136a3a0b690a16c7e1
link
/test e2e-bookInfo

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@sebastienvas looks like prow is having trouble creating the clusters ... any ideas?

/test e2e-bookInfo

Opened https://github.com/istio/istio/issues/4862 to track "failed to acquire resource" issue.

/test e2e-simple

is using this documented somewhere?

I don't believe it is currently.  I had created https://github.com/istio/istio/issues/4920 a while back as a tracking issue for documenting all annotations.


Plans to transition away from using @apply?

Regarding this warning that PostCSS currently emits when processing the source files...
You are using @apply rule and custom property sets.
This feature won't be included in next the major release of postcss-cssnext.
This most likely won't get any more support from browser vendors as the spec
is yet considered deprecated and alternative solutions are being discussed.
Read more about the reason here https://github.com/pascalduez/postcss-apply

Are there any plans to deprecate the _mixins in favor of something else? If future versions of cssnext are going to omit the postcss-apply plugin, then it seems that plugin would become a separate dependency in order to use the --foo {} and @apply syntax.

Yep, this will be the focus of v5.0.0, to migrate to the latest PostCSS, postcss-next version dependancies.
Not sure the best route here. I was contemplating PostCSS-mixins for extended functionality. But this adds an opinionated dependancy which forces compilation for the CSS to be usable.
The other option is to remove the mixins altogether, in favour of the styles being applied via classes alone.
Open to ideas and feedback on what would be the best way forward here.

@scottdejonge any ETA on v5?

@vilav I've written some initial thoughts and ideas for v5.0.0 in #21 to help identify a roadmap of features, additions, and refactoring that needs to be completed in order to make turretcss simpler and more configurable.

For those wanting to play around with v5.0.0 the first alpha is on the v5.0.0 branch, also available on npm with the version being v5.0.0-alpha1

Resolved in v5.0.0


Fix whitespaces Bug

Hello,
I've tried on VSCode - Insiders, Clang V14.0.3
This is working to me, but I'm quite new to developing so I don't know if it's just this.

I will check this the next days

On Windows GCC and MSVC it still failes with whitespace in file name.

Okay i figured out how to solve it with MSVC.
I already took your code change, thanks.


Project Motivation/Features

Taken from an email sent by @royerloic

The project, in a nutshell, would be to build a minimal — but well built —
proof of concept image processing and visualisation tool that would
bring the power of python to the masses (of Biologists) who are
generally (unfortunately) scared by terminals, coding, and complex installations.
We see this as complementary and distinct in use case to other efforts such as
Jupyter, and tailored to a large untapped community (Microscopy and Biology).
The tool would consist in:

stand-alone ’single-file’ app ‘batteries-included’ for easy installation
and running (biologists!=hacker). We want a true performant desktop app,
so web-based tech is excluded for now.

PyQT5 based 1D, 2D, and 3D viewers for numpy arrays
We already have a library for 3D volumetric rendering available with Spimagine,
first very basic prototype of OpenGL+Qt5 2D viewer available too,
1D will just be classic plotting… useful for line-plots in microscopy…

Semi-automatic population of menus with most existing image processing/analysis
algorithms present in numpy, scikit-image, etc …

Possibility to add additional ‘functions’ as plugins.
Idea: plugins are just github repos and can be installed by just giving a github url.
versioning, branches, etc is for free through github…

Automatic script generation based on the sequence of menu calls with
undo and redo - similarly of how it is done in Illustrator and Photoshop.

Usage of the Dask infrastructure for out-of-core images.

etc…

I'd like to ask about the longer-term vision of this project.
My goal for ImageJ & Fiji is to broaden their scope beyond Java, to include also Python and JavaScript, so that we can have a plugin-driven image analysis tool that ships plugins from all three ecosystems. At a CZI hackathon earlier this year, we started a proof-of-concept Electron version of ImageJ that could—with additional effort—offer something like that. I was thinking we'd probably need a JavaScript-centric plugin framework, but one capable of shipping also Python and/or Java code as appropriate.
How do you see Napari fitting in with something like that, if at all?

@ctrueden I was initially pushing for a browser-based (electron) version but we identified a few major issues with a javascript-based app:

electron is too slow and prone to crashing
we don’t think that it will properly be able to handle the large amounts of data that we will throw at it; it’s not designed for that
browser-based apps limit usage of keybindings as there are special reserved combinations
javascript is just a terrible language

I think if you wanted a true cross-language platform you would just write it all in C, which most languages are based on, and is fast enough to accomodate high-dimensional data. Plugins could be written in a C-derived language and interfaced appropriately.
However, to answer your question, Napari is, at its core, just a Python plugin system. While we plan to provide an official GUI for users, the core can be shipped separately from our GUI and interface with any other process that can communicate with Python, including ImageJ.

@kne42 Do you think Napari + its GUI could drive the distribution of JS-based and Java-based plugins, in addition to only Python plugins? If so, it could be a solution worth converging upon by the broader community, including ImageJ and Fiji, as well as the various JavaScript viewer efforts in the works (e.g. imaging-tools, vtk.js, ipyvolume).

we don’t think that it will properly be able to handle the large amounts of data

The main idea would be that data is hosted in shared memory, perhaps primarily on the Python side as numpy arrays, since Java (and I believe JavaScript; see chanzuckerberg/pyrepl; @bkmartinjr would you care to comment?) can access it from there without copying.

electron is too slow and prone to crashing

I think performance-wise, it would come down to the environment for which the plugin was scripted. The crashiness is more concerning to me—but I have used a few Electron apps in recent years and it did not seem particularly egregious to me. Is this a well-accepted phenomenon in the Electron community? Do you expect that it won't be addressed in coming years?

I think if you wanted a true cross-language platform you would just write it all in C

Another promising solution is GraalVM (see here for a nice breakdown of what it can do). If the Python support gets good enough, it might be a candidate for a unifying technology here. Definitely worth keeping an eye on it.

javascript is just a terrible language

The answer I keep hearing to that (very true! 😛) claim is "TypeScript".

Napari is, at its core, just a Python plugin system. While we plan to provide an official GUI for users, the core can be shipped separately from our GUI and interface with any other process that can communicate with Python, including ImageJ.

Awesome! So Napari is really the framework, and napari-gui is the interface? Sounds good. Let me know when you feel the Napari framework is far enough along to attempt integrating into ImageJ. I'd be happy to give it a shot then!

@ctrueden

Do you think Napari + its GUI could drive the distribution of JS-based and Java-based plugins, in addition to only Python plugins?

We have plans for this, but our primary focus right now is getting the Python side up and running.

Java (and I believe JavaScript; see chanzuckerberg/pyrepl; [...]) can access [numpy arrays] without copying

Very cool! This would make interprocess communication and data-passing a lot easier.

Another promising solution is GraalVM

This looks interesting! However, I am hesitant to use non-standard implementations of Python as they are difficult to maintain and may not behave as expected. For this reason, projects such as numba and cython have largely replaced PyPy.

The answer I keep hearing to that (very true! 😛) claim is "TypeScript".

I honestly don't like TypeScript either and I think that one of the major hinderances to the development of Jupyter plugins is how difficult and unintuitive it is to write.

So Napari is really the framework, and napari-gui is the UI?

Yes. While we will ship them together on our end, we want them separable so that any application or other GUI can easily interface with Napari plugins.

@ctrueden 👋 ! =)
I feel like @kne42 is projecting a little too much certainty. Napari is an evolving vision. I am excited to keep hacking at it with your input. But I want to second most her comments. Electron in particular I find a leaky abstraction — it's rare to see an Electron app that doesn't have that web-app "smell". And they also tend to be processor hogs without due care.
There's two angles to my interpretation of Napari:

make scikit-image functions accessible to a non-coding crowd (this is the plugin side)
provide a Python-native viewer/annotator for >2D ndarrays, which is sorely lacking currently

We are indeed trying to keep the two sides as uncoupled as possible, so that e.g.
Regarding interoperability with other frameworks, I'm not the most qualified to comment on this, but seeing e.g. how hard packaging bioformats with CellProfiler is, I'm not optimistic about a perfectly seamless solution, and am instead inclined to think that efforts in this direction would quickly end up in dependency hell. I would very much like to start with a simple "Open image/array in Fiji" / "Open image/array in IPython kernel ", and so forth. The former is probably just a packaging problem at this point with imglyb, right?
But perhaps I am just being unambitious. =)

I second both Kira and Juan,
right now Napari is aimed at
filling a clear gap in the python
ecosystem. I am now learning
more and more python and numpy
for offline processing, and a viewer
could really be helpfull. exciting stuff.
Sent from my iPhone

On Sep 25, 2018, at 17:41, Juan Nunez-Iglesias<EMAIL_ADDRESS>wrote:
@ctrueden 👋 ! =)
I feel like @kne42 is projecting a little too much certainty. Napari is an evolving vision. I am excited to keep hacking at it with your input. But I want to second most her comments. Electron in particular I find a leaky abstraction — it's rare to see an Electron app that doesn't have that web-app "smell". And they also tend to be processor hogs without due care.
There's two angles to my interpretation of Napari:
make scikit-image functions accessible to a non-coding crowd (this is the plugin side)
provide a Python-native viewer/annotator for >2D ndarrays, which is sorely lacking currently
We are indeed trying to keep the two sides as uncoupled as possible, so that e.g.
Regarding interoperability with other frameworks, I'm not the most qualified to comment on this, but seeing e.g. how hard packaging bioformats with CellProfiler is, I'm not optimistic about a perfectly seamless solution, and am instead inclined to think that efforts in this direction would quickly end up in dependency hell. I would very much like to start with a simple "Open image/array in Fiji" / "Open image/array in IPython kernel ", and so forth. The former is probably just a packaging problem at this point with imglyb, right?
But perhaps I am just being unambitious. =)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

The main idea would be that data is hosted in shared memory, perhaps primarily on the Python side as numpy arrays, since Java (and I believe JavaScript; see chanzuckerberg/pyrepl; @bkmartinjr would you care to comment?) can access it from there without copying.

Curtis, thanks for the ping.   I'm struggling a bit to understand the Napari vision, so my comments should be taken with a grain of salt...
I originally wrote pyrepl as part of an experiment in creating a notebook-like UI that could do interactive speed image transformations based on user inputs (eg, a slider controls a user-defined image filter).    It had two goals:

execute user-defined Python image processing code (or really any code that was suspect) in an isolated Python sandbox, so as to not destabilize the app if the user's code does bad things (I didn't use ipython, but it was a REPL like system).
move imaging data from the sandbox to the viewer quickly enough to do 30+fps view updates

As I think of the problem, sandboxing is a critical requirement (both to protect the app from the user code, and to isolate hardware resources where the OS doesn't help -- eg, GPU state).   To hit both sandboxing and interactive speed goals, I elected to use a shared memory transport (with all the pluses and minuses that implies).
I did base my viewer on electron.   While I agree it is a big old battleship, it comes with a lot of capabilities ...which depending your perspective, can be helpful or simply overhead.   In my case, it had zero impact on overall performance, and I like the web environment...
@jni @kne42 realize it's early, but is there any thinking yet on how napari would sandbox the python execution?   Happy to contribute to the discussion if it is helpful...

@bkmartinjr We have been considering executing all plugin and user-defined code in an IPython kernel. See #22

@kne42 - that definitely solves for the isolation issue.  Wondering about performance - Jupyter (in my experience) has poor round-trip performance when rendering images of any size, largely due to the way they marshal data in/out of the REPL.   Is interactive perf a non-goal for Napari, or do you have an alternative solution?   (this was the second of my two goals in the pyrepl experiment)

@bkmartinjr performance is definitely a goal for Napari. We just don't have experience with this. There are certainly ways to get interactive (rendering) performance out of Jupyter-based workflows — see e.g. IPyVolume, bqplot, etc. However they do result in duplication of data. This might be a worthwhile tradeoff for us, if it avoids us having to build a whole new set of infrastructure (such as PyREPL).
Personally I know exactly 0 units about sandboxing, which I agree with you is necessary, and perhaps as a corollary I don't know what "shared memory transport" means, so I would be hesitant not to outsource all of this to the IPython kernel. Unless you have both the time and inclination to handle all of this for us. =P

I agree with what has been said.
A few points:
i) Performance is paramount indeed, that means both UI performance, image processing speed and memory efficiency. First, we want a very fast and smooth GUI which means QT5, VisPy, OpenGL, shaders, etc... Second, we will ship optimised numpy and scipy libraries as default in the app. Third, for local execution we don't want to have memory duplication, unless we gain something by for example running a kernel on another machine or on the cloud (idea: modularity of backend execution).
ii) Sandboxing should not degrade performance in the case of local execution. Also, security is the responsibility of the user that adds a non-built-in plugin, or of the plugin author. We can't possibly be hacker proof here. Having plugins be git repos in plain readable python code would help greatly. @kne42 knows how to possibly intercept imports to libraries that may be dangerous. We might want to have a warning if a plugin seems to import suspicious packages... But there is no way to prevent counter-measures and we should probably rely mostly on a web of trust among Napari devs and plugin authors, and users -- not very different from other ecosystems...
iii) We hope that ipython kernels can be spawned from within the Napari python process and share memory with it seamlessly. remote kernels incur a cost but in exchange of a feature (remote execution on potentially more powerful system)
Hope this clarifies some aspects of the project.

@royerloic small point:

security is the responsibility of the user that adds a non-built-in plugin, or of the plugin author. We can't possibly be hacker proof here.

I don't think we are concerned about security here, but about stability: we don't want plugins to bring down the toolbar/viewer.

Ok, I see. The biggest problem in that case is that computation must happen in a separate thread from the UI event loop. But since python is not a true multi-threaded programming language (GIL), we might have slowdowns, unless we actively mitigate this with noGIL or even Numba to reduce potential interference between the UI thread and the compute thread...

Large portions of NumPy and scikit-image are nogil already, so I wouldn't worry too much about threads being a bottleneck.


Fix simple typo from SDK to ARCH

Trivial typo fix.

Thank you!
@swift-ci please smoke test and merge


narrow: Fix incorrect method of querying for operands.

Commit 02413f9a1be8554744141138f3629c197cd88e91 introduced a bug
where any code reaching if(operators('search') would be executed,
which caused inputs where we didn't have the search operator to
throw an error when we do not find a search operan later.
At least one affected cases was narrowing to an empty topic.
Testing Plan:
Manual testing.

Merged, thanks @aero31aero!  @YashRE42 FYI.


@l2succes: add tracking label for local signup/login

Minor: this adds the tracking label for local signup/login. This was overlooked the last bit of analytics work.

merge on green


German Language Support

Is your feature request related to a problem? Please describe.
I would like to have a german localized cairoshell
Describe the solution you'd like
A solution could be to create some language files. If you could explain, how to do this, i can maybe help out to translate the strings.

Fell free to fork the repository and contribute!
The code you want to look at is in this area
https://github.com/cairoshell/cairoshell/tree/master/Cairo Desktop/CairoDesktop.Localization
Language.cs
Find the locale code for the specific German you want to add, I.e de-DE.  Cope and paste one of the other languages, change the variable name to the locale and start translating.
Sent from my iPhone
On Sep 21, 2018, at 9:48 AM, Sascha Manns <notifications<EMAIL_ADDRESS>wrote:
Is your feature request related to a problem? Please describe.
I would like to have a german localized cairoshell
Describe the solution you'd like
A solution could be to create some language files. If you could explain, how to do this, i can maybe help out to translate the strings.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcairoshell%2Fcairoshell%2Fissues%2F204&data=02|01||2363ad75300945c8bde808d61fc8ebfe|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636731345141314800&sdata=anAW686fQeWdr8tqZzRoEjw7A1eFvWm31tvNRC8A6jc%3D&reserved=0, or mute the threadhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAGxXAWCSKeL2DkBImOkjvyHMXgc-tKfIks5udO4wgaJpZM4W0MND&data=02|01||2363ad75300945c8bde808d61fc8ebfe|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636731345141314800&sdata=BTTeUsP5%2Bx3WVOooADdOXtQd1%2BW9JZ8fR99ofyKwMcc%3D&reserved=0.

This has already been done - in a previous pull request.
Should already have been integrated into master but has yet to be built into a release.

This will be included in the next release 😃


Adding dtmfAnswer example

@AlexLakatos - any reason why we can't merge in this PR?

No reason. I think I just inherited it when I joined and didn't know if it was done.


Add an acl class that doesn't require an owner

For incoming ACL replacement, replacing owner is not allowed

For some reason coveralls is saying that SampleACLsOwnerless.hash is not covered, but my local coverage is saying it is


Create labeller

This pr has been submitted to test the labeller workflow on hocon. Will be cancelled.

The labeller workflow is testing the PR labels successfully. If missing, an error is correctly generated. Closing the PR as testing is complete.


Improve documentation

Resolves #327, #328
#317: Remove mention about list removing additional params
#295: Refine Getting Help in DG
#313: en event -> an event in UG
#315: Person -> Vendor / Event in UI component
#316: MSS in new line
#255: Removed empty space from find command (or are we standardising with space?)
#263: Removed vendor rating from glossary
Mention that same matching string for name would not be allowed in UG
#257: Add that delete would fail for associated entities under manual testing
#306: Give example for cumulative tagging
#293: Refine launching jar instructions
#291: not done yet, don't really agree with the bug

standardize with spacing


Run Lynis on production servers

Run the automated security assement tool Lynis on the servers to get an overview of how the state of the server security is

With the commands:
root@MonitoringServer:~# history
apt-cache search lynis
apt install lynis
lynis --help
lynis audit system

did we get the following output:
root@MonitoringServer:~# lynis audit system

[ Lynis 2.6.2 ]

################################################################################
  Lynis comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
  welcome to redistribute it under the terms of the GNU General Public License.
  See the LICENSE file for details about using this software.

  2007-2018, CISOfy - https://cisofy.com/lynis/
  Enterprise support available (compliance, plugins, interface and tools)
################################################################################

[+] Initializing program
------------------------------------
  - Detecting OS...                                           [ DONE ]
  - Checking profiles...                                      [ DONE ]

  ---------------------------------------------------
  Program version:           2.6.2
  Operating system:          Linux
  Operating system name:     Ubuntu Linux
  Operating system version:  20.04
  Kernel version:            5.4.0
  Hardware platform:         x86_64
  Hostname:                  MonitoringServer
  ---------------------------------------------------
  Profiles:                  /etc/lynis/default.prf
  Log file:                  /var/log/lynis.log
  Report file:               /var/log/lynis-report.dat
  Report version:            1.0
  Plugin directory:          /etc/lynis/plugins
  ---------------------------------------------------
  Auditor:                   [Not Specified]
  Language:                  en
  Test category:             all
  Test group:                all
  ---------------------------------------------------
  - Program update status...                                  [ WARNING ]

      ===============================================================================
        Lynis update available
      ===============================================================================

        Current version is more than 4 months old

        Current version : 262   Latest version : 307

        Please update to the latest version.
        New releases include additional features, bug fixes, tests, and baselines.

        Download the latest version:

        Packages (DEB/RPM) -  https://packages.cisofy.com
        Website (TAR)      -  https://cisofy.com/downloads/
        GitHub (source)    -  https://github.com/CISOfy/lynis

      ===============================================================================

[+] System Tools
------------------------------------
  - Scanning available tools...
  - Checking system binaries...

[+] Plugins (phase 1)
------------------------------------
 Note: plugins have more extensive tests and may take several minutes to complete

  - Plugin: debian
    [
[+] Debian Tests
------------------------------------
  - Checking for system binaries that are required by Debian Tests...
    - Checking /bin...                                        [ FOUND ]
    - Checking /sbin...                                       [ FOUND ]
    - Checking /usr/bin...                                    [ FOUND ]
    - Checking /usr/sbin...                                   [ FOUND ]
    - Checking /usr/local/bin...                              [ FOUND ]
    - Checking /usr/local/sbin...                             [ FOUND ]
  - Authentication:
    - PAM (Pluggable Authentication Modules):
      - libpam-tmpdir                                         [ Not Installed ]
      - libpam-usb                                            [ Not Installed ]
  - File System Checks:
    - DM-Crypt, Cryptsetup & Cryptmount:
      - Checking / on /dev/vda1                               [ NOT ENCRYPTED ]
      - Checking /boot/efi on /dev/vda15                      [ NOT ENCRYPTED ]
      - Checking /snap/core20/1361 on /var/lib/snapd/snaps/core20_1361.snap  [ NOT ENCRYPTED ]
      - Checking /snap/snapd/14978 on /var/lib/snapd/snaps/snapd_14978.snap  [ NOT ENCRYPTED ]
      - Checking /snap/lxd/22526 on /var/lib/snapd/snaps/lxd_22526.snap  [ NOT ENCRYPTED ]
      - Checking /snap/core20/1376 on /var/lib/snapd/snaps/core20_1376.snap  [ NOT ENCRYPTED ]
      - Checking /snap/core/12725 on /var/lib/snapd/snaps/core_12725.snap  [ NOT ENCRYPTED ]
      - Checking /snap/certbot/1842 on /var/lib/snapd/snaps/certbot_1842.snap  [ NOT ENCRYPTED ]
      - Checking /snap/core/12821 on /var/lib/snapd/snaps/core_12821.snap  [ NOT ENCRYPTED ]
      - Checking /snap/snapd/15177 on /var/lib/snapd/snaps/snapd_15177.snap  [ NOT ENCRYPTED ]
      - Checking /snap/certbot/1888 on /var/lib/snapd/snaps/certbot_1888.snap  [ NOT ENCRYPTED ]
      - Checking /snap/lxd/22753 on /var/lib/snapd/snaps/lxd_22753.snap  [ NOT ENCRYPTED ]
  - Software:
    - apt-listbugs                                            [ Not Installed ]
    - apt-listchanges                                         [ Not Installed ]
    - checkrestart                                            [ Not Installed ]
    - needrestart                                             [ Not Installed ]
    - debsecan                                                [ Not Installed ]
    - debsums                                                 [ Not Installed ]
    - fail2ban                                                [ Not Installed ]
]

[+] Boot and services
------------------------------------
  - Service Manager                                           [ systemd ]
  - Checking UEFI boot                                        [ DISABLED ]
  - Checking presence GRUB2                                   [ FOUND ]
    - Checking for password protection                        [ WARNING ]
  - Check running services (systemctl)                        [ DONE ]
        Result: found 29 running services
  - Check enabled services at boot (systemctl)                [ DONE ]
        Result: found 66 enabled services
  - Check startup files (permissions)                         [ OK ]
  - Checking sulogin in rescue.service                        [ NOT FOUND ]

[+] Kernel
------------------------------------
  - Checking default run level                                [ RUNLEVEL 5 ]
  - Checking CPU support (NX/PAE)
    CPU support: PAE and/or NoeXecute supported               [ FOUND ]
  - Checking kernel version and release                       [ DONE ]
  - Checking kernel type                                      [ DONE ]
  - Checking loaded kernel modules                            [ DONE ]
      Found 75 active modules
  - Checking Linux kernel configuration file                  [ FOUND ]
  - Checking default I/O kernel scheduler                     [ NOT FOUND ]
  - Checking for available kernel update                      [ UNKNOWN ]
  - Checking core dumps configuration                         [ DISABLED ]
    - Checking setuid core dumps configuration                [ PROTECTED ]
  - Check if reboot is needed                                 [ YES ]

[+] Memory and Processes
------------------------------------
  - Checking /proc/meminfo                                    [ FOUND ]
  - Searching for dead/zombie processes                       [ OK ]
  - Searching for IO waiting processes                        [ OK ]

[+] Users, Groups and Authentication
------------------------------------
  - Administrator accounts                                    [ OK ]
  - Unique UIDs                                               [ OK ]
  - Consistency of group files (grpck)                        [ OK ]
  - Unique group IDs                                          [ OK ]
  - Unique group names                                        [ OK ]
  - Password file consistency                                 [ OK ]
  - Query system users (non daemons)                          [ DONE ]
  - NIS+ authentication support                               [ NOT ENABLED ]
  - NIS authentication support                                [ NOT ENABLED ]
  - sudoers file                                              [ FOUND ]
    - Check sudoers file permissions                          [ OK ]
  - PAM password strength tools                               [ SUGGESTION ]
  - PAM configuration files (pam.conf)                        [ FOUND ]
  - PAM configuration files (pam.d)                           [ FOUND ]
  - PAM modules                                               [ FOUND ]
  - LDAP module in PAM                                        [ NOT FOUND ]
  - Accounts without expire date                              [ OK ]
  - Accounts without password                                 [ OK ]
  - Checking user password aging (minimum)                    [ DISABLED ]
  - User password aging (maximum)                             [ DISABLED ]
  - Checking expired passwords                                [ OK ]
  - Checking Linux single user mode authentication            [ WARNING ]
  - Determining default umask
    - umask (/etc/profile)                                    [ NOT FOUND ]
    - umask (/etc/login.defs)                                 [ SUGGESTION ]
  - LDAP authentication support                               [ NOT ENABLED ]
  - Logging failed login attempts                             [ ENABLED ]

[+] Shells
------------------------------------
  - Checking shells from /etc/shells
    Result: found 9 shells (valid shells: 9).
    - Session timeout settings/tools                          [ NONE ]
  - Checking default umask values
    - Checking default umask in /etc/bash.bashrc              [ NONE ]
    - Checking default umask in /etc/profile                  [ NONE ]

[+] File systems
------------------------------------
  - Checking mount points
    - Checking /home mount point                              [ SUGGESTION ]
    - Checking /tmp mount point                               [ SUGGESTION ]
    - Checking /var mount point                               [ SUGGESTION ]
  - Query swap partitions (fstab)                             [ NONE ]
  - Testing swap partitions                                   [ OK ]
  - Testing /proc mount (hidepid)                             [ SUGGESTION ]
  - Checking for old files in /tmp                            [ OK ]
  - Checking /tmp sticky bit                                  [ OK ]
  - Checking /var/tmp sticky bit                              [ OK ]
  - ACL support root file system                              [ ENABLED ]
  - Mount options of /                                        [ OK ]
  - Disable kernel support of some filesystems
    - Discovered kernel modules: udf

[+] USB Devices
------------------------------------
  - Checking usb-storage driver (modprobe config)             [ NOT DISABLED ]
  - Checking USB devices authorization                        [ ENABLED ]
  - Checking USBGuard                                         [ NOT FOUND ]

[+] Storage
------------------------------------
  - Checking firewire ohci driver (modprobe config)           [ DISABLED ]

[+] NFS
------------------------------------
  - Check running NFS daemon                                  [ NOT FOUND ]

[+] Name services
------------------------------------
  - Checking /etc/resolv.conf options                         [ FOUND ]
  - Searching DNS domain name                                 [ UNKNOWN ]
  - Checking /etc/hosts
    - Checking /etc/hosts (duplicates)                        [ OK ]
    - Checking /etc/hosts (hostname)                          [ OK ]
    - Checking /etc/hosts (localhost)                         [ OK ]
    - Checking /etc/hosts (localhost to IP)                   [ OK ]

[+] Ports and packages
------------------------------------
  - Searching package managers
    - Searching dpkg package manager                          [ FOUND ]
      - Querying package manager
    - Query unpurged packages                                 [ NONE ]
  - Checking security repository in sources.list file         [ OK ]
  - Checking APT package database                             [ OK ]
  - Checking vulnerable packages                              [ OK ]
  - Checking upgradeable packages                             [ SKIPPED ]
  - Checking package audit tool                               [ INSTALLED ]
    Found: apt-check

[+] Networking
------------------------------------
  - Checking IPv6 configuration                               [ ENABLED ]
      Configuration method                                    [ AUTO ]
      IPv6 only                                               [ NO ]
  - Checking configured nameservers
    - Testing nameservers
        Nameserver: <IP_ADDRESS>                                [ OK ]
    - Minimal of 2 responsive nameservers                     [ WARNING ]
  - Getting listening ports (TCP/UDP)                         [ DONE ]
      * Found 24 ports
  - Checking status DHCP client                               [ NOT ACTIVE ]
  - Checking for ARP monitoring software                      [ NOT FOUND ]

[+] Printers and Spools
------------------------------------
  - Checking cups daemon                                      [ NOT FOUND ]
  - Checking lp daemon                                        [ NOT RUNNING ]

[+] Software: e-mail and messaging
------------------------------------

[+] Software: firewalls
------------------------------------
  - Checking iptables kernel module                           [ FOUND ]
    - Checking iptables policies of chains                    [ FOUND ]
    - Checking for empty ruleset                              [ OK ]
    - Checking for unused rules                               [ FOUND ]
  - Checking host based firewall                              [ ACTIVE ]

[+] Software: webserver
------------------------------------
  - Checking Apache                                           [ NOT FOUND ]
  - Checking nginx                                            [ FOUND ]
    - Searching nginx configuration file                      [ FOUND ]
      - Found nginx includes                                  [ 6 FOUND ]
    - Parsing configuration options
        - /etc/nginx/nginx.conf
        - /etc/nginx/modules-enabled/50-mod-http-image-filter.conf
        - /etc/nginx/modules-enabled/50-mod-http-xslt-filter.conf
        - /etc/nginx/modules-enabled/50-mod-mail.conf
        - /etc/nginx/modules-enabled/50-mod-stream.conf
        - /etc/nginx/sites-enabled/default
      - SSL configured                                        [ YES ]
        - Ciphers configured                                  [ NO ]
        - Prefer server ciphers                               [ YES ]
        - Protocols configured                                [ YES ]
          - Insecure protocols found                          [ NO ]
      - Checking log file configuration
        - Missing log files (access_log)                      [ NO ]
        - Disabled access logging                             [ NO ]
        - Missing log files (error_log)                       [ NO ]
        - Debugging mode on error_log                         [ NO ]

[+] SSH Support
------------------------------------
  - Checking running SSH daemon                               [ FOUND ]
    - Searching SSH configuration                             [ FOUND ]
    - SSH option: AllowTcpForwarding                          [ SUGGESTION ]
    - SSH option: ClientAliveCountMax                         [ SUGGESTION ]
    - SSH option: ClientAliveInterval                         [ OK ]
    - SSH option: Compression                                 [ SUGGESTION ]
    - SSH option: FingerprintHash                             [ OK ]
    - SSH option: GatewayPorts                                [ OK ]
    - SSH option: IgnoreRhosts                                [ OK ]
    - SSH option: LoginGraceTime                              [ OK ]
    - SSH option: LogLevel                                    [ SUGGESTION ]
    - SSH option: MaxAuthTries                                [ SUGGESTION ]
    - SSH option: MaxSessions                                 [ SUGGESTION ]
    - SSH option: PermitRootLogin                             [ SUGGESTION ]
    - SSH option: PermitUserEnvironment                       [ OK ]
    - SSH option: PermitTunnel                                [ OK ]
    - SSH option: Port                                        [ SUGGESTION ]
    - SSH option: PrintLastLog                                [ OK ]
    - SSH option: Protocol                                    [ NOT FOUND ]
    - SSH option: StrictModes                                 [ OK ]
    - SSH option: TCPKeepAlive                                [ SUGGESTION ]
    - SSH option: UseDNS                                      [ OK ]
    - SSH option: UsePrivilegeSeparation                      [ NOT FOUND ]
    - SSH option: VerifyReverseMapping                        [ NOT FOUND ]
    - SSH option: X11Forwarding                               [ SUGGESTION ]
    - SSH option: AllowAgentForwarding                        [ SUGGESTION ]
    - SSH option: AllowUsers                                  [ NOT FOUND ]
    - SSH option: AllowGroups                                 [ NOT FOUND ]

[+] SNMP Support
------------------------------------
  - Checking running SNMP daemon                              [ NOT FOUND ]

[+] Databases
------------------------------------
    No database engines found

[+] LDAP Services
------------------------------------
  - Checking OpenLDAP instance                                [ NOT FOUND ]

[+] PHP
------------------------------------
  - Checking PHP                                              [ NOT FOUND ]

[+] Squid Support
------------------------------------
  - Checking running Squid daemon                             [ NOT FOUND ]

[+] Logging and files
------------------------------------
  - Checking for a running log daemon                         [ OK ]
    - Checking Syslog-NG status                               [ NOT FOUND ]
    - Checking systemd journal status                         [ FOUND ]
    - Checking Metalog status                                 [ NOT FOUND ]
    - Checking RSyslog status                                 [ FOUND ]
    - Checking RFC 3195 daemon status                         [ NOT FOUND ]
    - Checking minilogd instances                             [ NOT FOUND ]
  - Checking logrotate presence                               [ OK ]
  - Checking log directories (static list)                    [ DONE ]
  - Checking open log files                                   [ DONE ]
  - Checking deleted files in use                             [ FILES FOUND ]

[+] Insecure services
------------------------------------
  - Checking inetd status                                     [ NOT ACTIVE ]

[+] Banners and identification
------------------------------------
  - /etc/issue                                                [ FOUND ]
    - /etc/issue contents                                     [ WEAK ]
  - /etc/issue.net                                            [ FOUND ]
    - /etc/issue.net contents                                 [ WEAK ]

[+] Scheduled tasks
------------------------------------
  - Checking crontab/cronjob                                  [ DONE ]
  - Checking atd status                                       [ RUNNING ]
    - Checking at users                                       [ DONE ]
    - Checking at jobs                                        [ NONE ]

[+] Accounting
------------------------------------
  - Checking accounting information                           [ NOT FOUND ]
  - Checking sysstat accounting data                          [ NOT FOUND ]
  - Checking auditd                                           [ NOT FOUND ]

[+] Time and Synchronization
------------------------------------
  - NTP daemon found: systemd (timesyncd)                     [ FOUND ]
  - Checking for a running NTP daemon or client               [ OK ]

[+] Cryptography
------------------------------------
  - Checking for expired SSL certificates [0/28]              [ NONE ]

[+] Virtualization
------------------------------------

[+] Containers
------------------------------------
    - Docker
      - Docker daemon                                         [ RUNNING ]
        - Docker info output (warnings)                       [ 1 ]
      - Containers
        - Total containers                                    [ UNKNOWN ]
          - Running containers                                [ 6 ]
    - File permissions                                        [ OK ]

[+] Security frameworks
------------------------------------
  - Checking presence AppArmor                                [ FOUND ]
    - Checking AppArmor status                                [ ENABLED ]
  - Checking presence SELinux                                 [ NOT FOUND ]
  - Checking presence grsecurity                              [ NOT FOUND ]
  - Checking for implemented MAC framework                    [ OK ]

[+] Software: file integrity
------------------------------------
  - Checking file integrity tools
  - Checking presence integrity tool                          [ NOT FOUND ]

[+] Software: System tooling
------------------------------------
  - Checking automation tooling
  - Automation tooling                                        [ NOT FOUND ]
  - Checking for IDS/IPS tooling                              [ NONE ]

[+] Software: Malware
------------------------------------

[+] File Permissions
------------------------------------
  - Starting file permissions check
    /root/.ssh                                                [ OK ]

[+] Home directories
------------------------------------
  - Checking shell history files                              [ OK ]

[+] Kernel Hardening
------------------------------------
  - Comparing sysctl key pairs with scan profile
    - fs.protected_hardlinks (exp: 1)                         [ OK ]
    - fs.protected_symlinks (exp: 1)                          [ OK ]
    - fs.suid_dumpable (exp: 0)                               [ DIFFERENT ]
    - kernel.core_uses_pid (exp: 1)                           [ DIFFERENT ]
    - kernel.ctrl-alt-del (exp: 0)                            [ OK ]
    - kernel.dmesg_restrict (exp: 1)                          [ DIFFERENT ]
    - kernel.kptr_restrict (exp: 2)                           [ DIFFERENT ]
    - kernel.randomize_va_space (exp: 2)                      [ OK ]
    - kernel.sysrq (exp: 0)                                   [ DIFFERENT ]
    - kernel.yama.ptrace_scope (exp: 1 2 3)                   [ OK ]
    - net.ipv4.conf.all.accept_redirects (exp: 0)             [ OK ]
    - net.ipv4.conf.all.accept_source_route (exp: 0)          [ OK ]
    - net.ipv4.conf.all.bootp_relay (exp: 0)                  [ OK ]
    - net.ipv4.conf.all.forwarding (exp: 0)                   [ DIFFERENT ]
    - net.ipv4.conf.all.log_martians (exp: 1)                 [ DIFFERENT ]
    - net.ipv4.conf.all.mc_forwarding (exp: 0)                [ OK ]
    - net.ipv4.conf.all.proxy_arp (exp: 0)                    [ OK ]
    - net.ipv4.conf.all.rp_filter (exp: 1)                    [ DIFFERENT ]
    - net.ipv4.conf.all.send_redirects (exp: 0)               [ DIFFERENT ]
    - net.ipv4.conf.default.accept_redirects (exp: 0)         [ DIFFERENT ]
    - net.ipv4.conf.default.accept_source_route (exp: 0)      [ DIFFERENT ]
    - net.ipv4.conf.default.log_martians (exp: 1)             [ DIFFERENT ]
    - net.ipv4.icmp_echo_ignore_broadcasts (exp: 1)           [ OK ]
    - net.ipv4.icmp_ignore_bogus_error_responses (exp: 1)     [ OK ]
    - net.ipv4.tcp_syncookies (exp: 1)                        [ OK ]
    - net.ipv4.tcp_timestamps (exp: 0 1)                      [ OK ]
    - net.ipv6.conf.all.accept_redirects (exp: 0)             [ DIFFERENT ]
    - net.ipv6.conf.all.accept_source_route (exp: 0)          [ OK ]
    - net.ipv6.conf.default.accept_redirects (exp: 0)         [ DIFFERENT ]
    - net.ipv6.conf.default.accept_source_route (exp: 0)      [ OK ]

[+] Hardening
------------------------------------
    - Installed compiler(s)                                   [ NOT FOUND ]
    - Installed malware scanner                               [ NOT FOUND ]

[+] Custom Tests
------------------------------------
  - Running custom tests...                                   [ NONE ]

[+] Plugins (phase 2)
------------------------------------

================================================================================

  -[ Lynis 2.6.2 Results ]-

  Warnings (4):
  ----------------------------
  ! Version of Lynis is very old and should be updated [LYNIS]
      https://cisofy.com/controls/LYNIS/

  ! Reboot of system is most likely needed [KRNL-5830]
    - Solution : reboot
      https://cisofy.com/controls/KRNL-5830/

  ! No password set for single mode [AUTH-9308]
      https://cisofy.com/controls/AUTH-9308/

  ! Couldn't find 2 responsive nameservers [NETW-2705]
      https://cisofy.com/controls/NETW-2705/

  Suggestions (52):
  ----------------------------
  * Install libpam-tmpdir to set $TMP and $TMPDIR for PAM sessions [CUST-0280]
      https://your-domain.example.org/controls/CUST-0280/

  * Install libpam-usb to enable multi-factor authentication for PAM sessions [CUST-0285]
      https://your-domain.example.org/controls/CUST-0285/

  * Install apt-listbugs to display a list of critical bugs prior to each APT installation. [CUST-0810]
      https://your-domain.example.org/controls/CUST-0810/

  * Install apt-listchanges to display any significant changes prior to any upgrade via APT. [CUST-0811]
      https://your-domain.example.org/controls/CUST-0811/

  * Install debian-goodies so that you can run checkrestart after upgrades to determine which services are using old versions of libraries and need restarting. [CUST-0830]
      https://your-domain.example.org/controls/CUST-0830/

  * Install needrestart, alternatively to debian-goodies, so that you can run needrestart after upgrades to determine which daemons are using old versions of libraries and need restarting. [CUST-0831]
      https://your-domain.example.org/controls/CUST-0831/

  * Install debsecan to generate lists of vulnerabilities which affect this installation. [CUST-0870]
      https://your-domain.example.org/controls/CUST-0870/

  * Install debsums for the verification of installed package files against MD5 checksums. [CUST-0875]
      https://your-domain.example.org/controls/CUST-0875/

  * Install fail2ban to automatically ban hosts that commit multiple authentication errors. [DEB-0880]
      https://cisofy.com/controls/DEB-0880/

  * Set a password on GRUB bootloader to prevent altering boot configuration (e.g. boot in single user mode without password) [BOOT-5122]
      https://cisofy.com/controls/BOOT-5122/

  * Protect rescue.service by using sulogin [BOOT-5260]
      https://cisofy.com/controls/BOOT-5260/

  * Determine why /vmlinuz is missing on this Debian/Ubuntu system. [KRNL-5788]
    - Details  : /vmlinuz
      https://cisofy.com/controls/KRNL-5788/

  * Check the output of apt-cache policy manually to determine why output is empty [KRNL-5788]
      https://cisofy.com/controls/KRNL-5788/

  * Install a PAM module for password strength testing like pam_cracklib or pam_passwdqc [AUTH-9262]
      https://cisofy.com/controls/AUTH-9262/

  * Configure minimum password age in /etc/login.defs [AUTH-9286]
      https://cisofy.com/controls/AUTH-9286/

  * Configure maximum password age in /etc/login.defs [AUTH-9286]
      https://cisofy.com/controls/AUTH-9286/

  * Set password for single user mode to minimize physical access attack surface [AUTH-9308]
      https://cisofy.com/controls/AUTH-9308/

  * Default umask in /etc/login.defs could be more strict like 027 [AUTH-9328]
      https://cisofy.com/controls/AUTH-9328/

  * To decrease the impact of a full /home file system, place /home on a separated partition [FILE-6310]
      https://cisofy.com/controls/FILE-6310/

  * To decrease the impact of a full /tmp file system, place /tmp on a separated partition [FILE-6310]
      https://cisofy.com/controls/FILE-6310/

  * To decrease the impact of a full /var file system, place /var on a separated partition [FILE-6310]
      https://cisofy.com/controls/FILE-6310/

  * Disable drivers like USB storage when not used, to prevent unauthorized storage or data theft [STRG-1840]
      https://cisofy.com/controls/STRG-1840/

  * Check DNS configuration for the dns domain name [NAME-4028]
      https://cisofy.com/controls/NAME-4028/

  * Install debsums utility for the verification of packages with known good database. [PKGS-7370]
      https://cisofy.com/controls/PKGS-7370/

  * Install package apt-show-versions for patch management purposes [PKGS-7394]
      https://cisofy.com/controls/PKGS-7394/

  * Check your resolv.conf file and fill in a backup nameserver if possible [NETW-2705]
      https://cisofy.com/controls/NETW-2705/

  * Consider running ARP monitoring software (arpwatch,arpon) [NETW-3032]
      https://cisofy.com/controls/NETW-3032/

  * Check iptables rules to see which rules are currently not used [FIRE-4513]
      https://cisofy.com/controls/FIRE-4513/

  * Change the HTTPS and SSL settings for enhanced protection of sensitive data and privacy [HTTP-6710]
      https://cisofy.com/controls/HTTP-6710/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : AllowTcpForwarding (YES --> NO)
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : ClientAliveCountMax (3 --> 2)
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : Compression (YES --> (DELAYED|NO))
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : LogLevel (INFO --> VERBOSE)
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : MaxAuthTries (6 --> 2)
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : MaxSessions (10 --> 2)
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : PermitRootLogin (YES --> NO)
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : Port (22 --> )
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : TCPKeepAlive (YES --> NO)
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : X11Forwarding (YES --> NO)
      https://cisofy.com/controls/SSH-7408/

  * Consider hardening SSH configuration [SSH-7408]
    - Details  : AllowAgentForwarding (YES --> NO)
      https://cisofy.com/controls/SSH-7408/

  * Check what deleted files are still in use and why. [LOGG-2190]
      https://cisofy.com/controls/LOGG-2190/

  * Add a legal banner to /etc/issue, to warn unauthorized users [BANN-7126]
      https://cisofy.com/controls/BANN-7126/

  * Add legal banner to /etc/issue.net, to warn unauthorized users [BANN-7130]
      https://cisofy.com/controls/BANN-7130/

  * Enable process accounting [ACCT-9622]
      https://cisofy.com/controls/ACCT-9622/

  * Enable sysstat to collect accounting (no results) [ACCT-9626]
      https://cisofy.com/controls/ACCT-9626/

  * Enable auditd to collect audit information [ACCT-9628]
      https://cisofy.com/controls/ACCT-9628/

  * Run 'docker info' to see warnings applicable to Docker daemon [CONT-8104]
      https://cisofy.com/controls/CONT-8104/

  * Test output of both 'docker ps -a' and 'docker info', to determine why they report a different amount of containers [CONT-8106]
      https://cisofy.com/controls/CONT-8106/

  * Install a file integrity tool to monitor changes to critical and sensitive files [FINT-4350]
      https://cisofy.com/controls/FINT-4350/

  * Determine if automation tools are present for system management [TOOL-5002]
      https://cisofy.com/controls/TOOL-5002/

  * One or more sysctl values differ from the scan profile and could be tweaked [KRNL-6000]
    - Solution : Change sysctl value or disable test (skip-test=KRNL-6000:<sysctl-key>)
      https://cisofy.com/controls/KRNL-6000/

  * Harden the system by installing at least one malware scanner, to perform periodic file system scans [HRDN-7230]
    - Solution : Install a tool like rkhunter, chkrootkit, OSSEC
      https://cisofy.com/controls/HRDN-7230/

  Follow-up:
  ----------------------------
  - Show details of a test (lynis show details TEST-ID)
  - Check the logfile for all details (less /var/log/lynis.log)
  - Read security controls texts (https://cisofy.com)
  - Use --upload to upload data to central system (Lynis Enterprise users)

================================================================================

  Lynis security scan details:

  Hardening index : 56 [###########         ]
  Tests performed : 230
  Plugins enabled : 1

  Components:
  - Firewall               [V]
  - Malware scanner        [X]

  Lynis Modules:
  - Compliance Status      [?]
  - Security Audit         [V]
  - Vulnerability Scan     [V]

  Files:
  - Test and debug information      : /var/log/lynis.log
  - Report data                     : /var/log/lynis-report.dat

================================================================================
  Notice: Lynis update available
  Current version : 262    Latest version : 307
================================================================================

  Lynis 2.6.2

  Auditing, system hardening, and compliance for UNIX-based systems
  (Linux, macOS, BSD, and others)

  2007-2018, CISOfy - https://cisofy.com/lynis/
  Enterprise support available (compliance, plugins, interface and tools)

================================================================================

  [TIP]: Enhance Lynis audits by adding your settings to custom.prf (see /etc/lynis/default.prf for all settings)

root@MonitoringServer:~#
```

This run on the server gives some great insights to basic server configuration that we have missed or not gotten around to yet.
Tools or settings that could be looked at in the future is:

Install needrestart, alternatively to debian-goodies, so that you can run needrestart after upgrades to determine which daemons are using old versions of libraries and need restarting.
Install debsecan to generate lists of vulnerabilities which affect this installation.
Install debsums for the verification of installed package files against MD5 checksums.
Install Fail2ban
Set a password on GRUB bootloader to prevent altering boot configuration
Set password for single user mode to minimize physical access attack surface
Disable drivers like USB storage when not used, to prevent unauthorized storage or data theft
Consider running ARP monitoring software (arpwatch,arpon)
Consider hardening SSH configuration (Many good sugestions)
Add a legal banner to /etc/issue, to warn unauthorized users
Enable auditd to collect audit information
Install a file integrity tool to monitor changes to critical and sensitive files
One or more sysctl values differ from the scan profile and could be tweaked (Good info on their link)
Harden the system by installing at least one malware scanner, to perform periodic file system scans


this value not preserved when implicitly emitting anonymous functions

For example when an anonymous function is emitted for a let form.
The fix is to just bind the anonymous function to this; I currently haven't dug into the code to see how easy this change is to make; it seems the only time we don't want to bind the function is when we emit a function for DEFUN or LAMBDA.  Am I wrong?

Could you perhaps provide an example (with desired vs. actual behaviour)?

(ps
 (let ((obj (create x 3
                    foo (lambda ()
                          (chain console (log (@ this x)))
                          (1+
                          (loop for item in '(1 2 3)
                               for i from 1
                               do (chain console (log (@ this x)))
                               sum (+ i item (@ this x))))))))
   (chain obj (foo)))))

outputs:
(function () {
    var obj = { x : 3, foo : function () {
        console.log(this.x);
        return (function () {
            var _js92 = [1, 2, 3];
            var _js94 = _js92.length;
            var sum95 = 0;
            var FIRST96 = true;
            for (var _js93 = 0; _js93 < _js94; _js93 += 1) {
                var item = _js92[_js93];
                var i = FIRST96 ? 1 : i + 1;
                console.log(this.x);
                sum95 += i + item + this.x;
                FIRST96 = null;
            };
            return sum95;
        })() + 1;
    } };
    return obj.foo();
})();

When it should output:
(function () {
    var obj = { x : 3, foo : function () {
        console.log(this.x);
        return (function () {
            var _js92 = [1, 2, 3];
            var _js94 = _js92.length;
            var sum95 = 0;
            var FIRST96 = true;
            for (var _js93 = 0; _js93 < _js94; _js93 += 1) {
                var item = _js92[_js93];
                var i = FIRST96 ? 1 : i + 1;
                console.log(this.x);
                sum95 += i + item + this.x;
                FIRST96 = null;
            };
            return sum95;
        }).bind(this)() + 1;
    } };
    return obj.foo();
})();

If you run the two JS snippets, you'll see the first one logs "3" once then "undefined" 3 times and returns NaN while the second logs "3" four times and returns 22.  The latter is clearly what is expected.

Note I've seen the same behavior when let emits an anonymous function; it's just a lot harder to get let to do that in a small test-casel

After 116f9ca and b51f35a, we have:
(ps
  (let ((obj (create x 3
                     foo (lambda ()
                           (chain console (log (@ this x)))
                           (1+
                             (loop for item in '(1 2 3)
                                   for i from 1
                                   do (chain console (log (@ this x)))
                                   sum (+ i item (@ this x))))))))
    (chain obj (foo))))

⇒ "(function () {
        var obj = { x : 3, foo : function () {
            console.log(this.x);
            return (function () {
                var _js42 = [1, 2, 3];
                var _js44 = _js42.length;
                var sum45 = 0;
                var FIRST46 = true;
                for (var _js43 = 0; _js43 < _js44; _js43 += 1) {
                    var item = _js42[_js43];
                    var i = FIRST46 ? 1 : i + 1;
                    console.log(this.x);
                    sum45 += i + item + this.x;
                    FIRST46 = null;
                };
                return sum45;
            }).call(this) + 1;
        } };
        return obj.foo();
    }).call(this);"

There's a bit of overgeneration here: the outer function doesn't need to preserve this at all, it does so because the respective invocation of lambda-wrap finds a this within the wrapped code, while descending into explicit functions as well as into implicit ones. This can be fixed, but at the price of adding another level of complexity to the compiler, while the advantage is marginal.


Support additional options for broker and backend

This PR adds support for more flexible options to the broker and backend.
I needed to use TLS connection to Redis, which this PR makes possible. I tried my best to support all the existing options, to make it backwards compatible.
This also contains a bit of cleanup, and removes some duplication and makes it more consistent.
In addition this should also better handle most changes done in https://github.com/mher/node-celery/pull/82, except the changes to durability at https://github.com/mher/node-celery/pull/82/files#diff-fdee2594199f6ae99c831f6bf51c5c5fR182.
It also contains the changes in https://github.com/mher/node-celery/pull/81.

Would be great to get a release out with these changes


Fixer check on factory

@keradus review fixed.

Implementation is buggy.
$factory->registerBuiltInFixers();
$factory->hasRule('return'); // true
$factory->useRuleSet(new RuleSet(['@PSR1' => true]));
$factory->hasRule('return'); // true, MUST be false

@keradus Fixed. Also added related test.

Tests are failing though, because of the usage of short array syntax (the tool supports PHP 5.3)

yeah, my snippet was more a pseudocode than testcase ready to use ;)

@keradus @stof fixed.

Review corrected.

Looks great @Soullivaneuh !
I hope I wasn't been picky

I hope I wasn't been picky

I'm also quite picky on PR where I am repository contributor so I understand. ;-)

@keradus When this PR should be merged?

Relax, I simply wasn't online ;)

Thank you @Soullivaneuh.

Relax, I simply wasn't online ;)

I was relax, simple question. ;-)
Thank you.


Weather?

Also, any chance there is basic weather information for the games?

Not sure if there is any weather information but I will look.

Unfortunately I have not been able to find any information on the weather for games.
However, I think that there could be a little workaround: Since mlbgame provides the date, time, and location of the game, you could use a different weather api to retrieve weather information at that time.


Code preview failing for Default Theme color example

Link to the page where something isn't quite right
https://www.svelteui.org/theming/default-theme
Exact quote of what is wrong

Are you willing to create pull request with the fix?
No

Thank you for reporting this bug! Fixed in the latest commits, it will be deployed when the next release comes out


Maintenance: rustc update 1.28

I finally found some free time to update rustc on docs.rs and currently rebuilding every crate that have failed to build in the old compiler.
This is a long process and may take 10 to 20 hours (there are more than 3700 crates in build queue).
After docs.rs finishes building old crates it will start building new releases. Because of this reason new packages may appear a little bit late.

Maintenance is finished. We have rustc 1.28 operating now.


[declarations] does not work

TLDR: [declarations] section behavior does not work as expected from the description in the documentation.
The issue
After each upgrade of flow, I found myself having errors appearing for some of my dependencies. Taking the example of react-select, I have now 47 errors from it (with flow 0.90).
This is outside of the scope of my code, and will eventually get fixed, so I looked into how to put those into warnings or to suppress them.
I found https://flow.org/en/docs/config/declarations/ :

The [declarations] section in a .flowconfig file tells Flow to parse files matching the specified regular expressions in declaration mode. In declaration mode the code is not typechecked. However, the signatures of functions, classes, etc are extracted and used by the typechecker when checking other code.

Perfect, that exactly what I want: ignoring the errors and having the types used in my app.
And I don't want to ignore them (in the [ignore] section, i.e. having in the end all types transformed into any).
But, adding this:
[declarations]
<PROJECT_ROOT>/node_modules/.*

does not silence the errors.
And in fact increases the number of errors reported. I have now more than 75 errors for react-select (new errors appearing seems to be errors being suppressed in the source code of react-select with some $FlowFixMe comments).
Flow version: 0.90
(Do note that this is not an issue about the naming of "declarations". Please, refrain from polluting this report.)

Closing as duplicate of #6717


one user one session , is it possible?

I'd like to use xrdp with Xvnc backend from multiple machine with the same account.

I have a user abc
I want to use sesman to create a vnc screen
I login into abc from mac
then I login into abc from pc
now, there are two sessions.
one user one session, possible?

Is there any configs could  help me to achieve this goal?

Change session policy in sesman.ini.

Is there any sample settings, sesman.ini seems simple but I cannot find a valid path to my need.

I think you can change below section, the path is /etc/ssh/sesman.ini
;; Policy - session allocation policy ; Type: enum [ "Default" | "UBD" | "UBI" | "UBC" | "UBDI" | "UBDC" ] ; Default: Xrdp:<User,BitPerPixel> and Xvnc:<User,BitPerPixel,DisplaySize> ; "UBD" session per <User,BitPerPixel,DisplaySize> ; "UBI" session per <User,BitPerPixel,IPAddr> ; "UBC" session per <User,BitPerPixel,Connection> ; "UBDI" session per <User,BitPerPixel,DisplaySize,IPAddr> ; "UBDC" session per <User,BitPerPixel,DisplaySize,Connection> Policy=Default

I don't see a policy which covers
Xrdp:<User> and Xvnc:<User>
i guess thats a feature request then?!

Currently, Xvnc session doesn't support session resizing. Thus DisplaySize cannot be removed.

idk if xrdp supports to run Real VNC server, but with it it seems possible:
https://stackoverflow.com/questions/15816/changing-the-resolution-of-a-vnc-session-in-linux
vnc4server seems to support it, too.
can the policy changed, so it can be configured by the type of session?

maybe this needs to be rephrased a bit:
the problem is, that sometimes users connecting with the same username and password get a new session. they should always get the same session, regardingless of the BitPerPixel / DisplaySize.
Most clients can handle when the rdp/vnc resolution is different to the screen resolution, i.e. by stretching the view.

I don't mean VNC doesn't support resizing but xrdp's Xvnc session doesn't use that VNC's resizing functionality. xrdp doesn't have a feature to tell VNC to resize that session right now.
Do you understand that? Some VNC supports resizing, yes, that's true. However, xrdp doesn't support resizing VNC session.

the problem is, that sometimes users connecting with the same username and password get a new session.

To avoid getting a new session, use xorgxrdp instead of VNC. That's the easiest solution.

We don't work much on the vnc client(libvnc) built into xrdp.  It was used heavily in the beginning before the X11rdp and not the Xorg xrdp back end were done.
But I'm not opposed to taking libvnc patches.  It's pretty amazing how many are still using it.
Possible fixes would be to
1 resize the vnc server if it possible(not sure if any can).
2 resize the rdp client to match the server.
But either way would take some coding.

I think one reason why many folks still use the libvnc client is that it performs better (lower latency). This is a very noticeable difference for our users. So we'd like to be able to use the same session policy as xorg <User,BitPerPixel> with libvnc.
I'd be interested in patching libvnc to support resizing. Would this code be in vnc.c? Thanks for any tips.

Hi @mtoupsUNO
Support for resizeable VNC sessions (together with multiple screens) is a work in progress. See #259, #287 and #1343.
From what you're saying above, I think the functionality proposed in #1343 includes what you're after.
I'd suggest you look at the code for #1343 to decide whether or not it will work for you. If not, it will at least give you a good idea of the files you'll need to edit.
The code can be found either in the extended-vnc branch in the main repo, or from the branch of the same name in https://github.com/matt335672/xrdp.git. It's currently based on v0.9.10 rather than 0.9.12. I'll pull the latest devel changes in to my own branch sometime this week, which may help.
You'll need to be using an Xvnc server which supports the ExtendedDesktopSize extension. Tiger VNC certainly does.
I hope that's useful. Let me know if you have any questions.

No feedback from the reporter, closing.

Change session policy in sesman.ini.

to what?
(using xorgxrdp here)
If I disconnect then change mstsc.exe resolution I am logged again twice. I want to be able to disconnect at any resolution and reconnect at any other resolution without creating two sessions.

also, what does Connection mean in "; "UBC" session per <User,BitPerPixel,Connection>" ? what effect does it have?

@mailinglists35,
The 'Connection' is badly named in xrdp v0.9.x. See #2239. It doesn't do anything obvious.
For xorgxrdp, just set the Policy to Default and you should get single sessions per user. For Xvnc bckends this only works for xrdp v0.9.14 and later.


fix: temporarily disable no unsafe rules

Description

Temporarily disables two eslint rules which seem to be causing lots of false positives
Adds a rulesToDecideOn section in the eslint config:

"@typescript-eslint/no-unsafe-assignment": "off"
 "@typescript-eslint/no-unsafe-call": "off"

:tada: This PR is included in version 1.18.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Option to call clearStaleState automatically

I would like to have an option to let the client call clearStaleState automatically.

Hi, just wanted to let you know that this was confusing for me as I thought that by setting staleStateAge this would work out of the box and be handled by the client.


Problem with 2.5.1 version

Hi,
After building my project and running it on a device I get the following exception:
Thread 1: "Could not find a storyboard named 'Picker' in bundle NSBundle Frameworks/Filestack.framework> (loaded)"
This happens when I try to pick a photo.
I'm using cocoapods.
I noticed that the files UI/Storyboards/PhotoPicker.storyboard and UI/Storyboards/Picker.storyboard are missing from the Pod installation folder:
/Pods/Filestack/Filestack
The last working version that I used was 2.3.2

@jerzykiler Thanks for reporting. I'll release an update fixing this issue today.

Problem fixed in 2.5.2.


[Ionic-React]  doesn't have property 'animated'. Cannot set animation to ion-skeleton-text.

Bug Report
Ionic version:
[x] 4.x
Current behavior:
Cannot set animated={true} to <IonSkeletonText />. The property width works fine though.
Expected behavior:
IonSkeletonText should become animated.
Steps to reproduce:
Add  animated={true} to <IonSkeletonText />.
Related code:
<IonSkeletonText width={"100%"} animated={true} />
Other information:
"dependencies" : {
    "@ionic/core": "^4.4.2",
    "@ionic/pwa-elements": "^1.2.7",
    "@ionic/react": "0.0.5",
}

Ionic info:

Ionic:

   ionic (Ionic CLI) : 4.12.0 (/home/[REDACTED]/.nvm/versions/node/v12.2.0/lib/node_modules/ionic)

Capacitor:

   capacitor (Capacitor CLI) : 1.0.0-beta.24
   @capacitor/core           : 1.0.0-beta.24

System:

   NodeJS : v12.2.0 (/home/[REDACTED]/.nvm/versions/node/v12.2.0/bin/node)
   npm    : 6.9.0
   OS     : Linux 4.4

This is fixed in the upcoming beta release of ionic/react, check for it soon.


crashes while/due searching for a custom modification

Hi,
please see the search files in the link below:
https://owncloud.incpm.weizmann.ac.il/index.php/s/fxLKFAK1TKQvhED
Thanks!
David.

Thanks for the crash report! Seems like it might be straightforward. I'll check it out.


Parsing fails

I have a few cases which fail to parse with the latest git. This is not my calculation however, so I have actually no idea what is special about this specific
vasprun.zip
case.
"root":{
"errors":string"parser failed with exception"
"event":string"task failed"
"task":string"parsing"
"proc":string"Calc"
"process":string"process_calc"
"tasks_status":string"FAILURE"
"error":string"invalid literal for int() with base 10: '32537************'"
"parser":string"parsers/vasp"
"step":string"parsers/vasp"
"logger":string"nomad.processing"
"exception":string"Traceback (most recent call last): File "/app/nomad/processing/data.py", line 460, in parsing self._parser_results, logger=logger) File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 1142, in parse self.parse_method() File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 903, in parse_method incar_parameters = self.parser.get_incar() File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 334, in get_incar incar.update(self._get_key_values('incar/v')) File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 312, in _get_key_values value = convert(value, dtype) File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 284, in convert return [convert(v, dtype) for v in val] File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 284, in <listcomp> return [convert(v, dtype) for v in val] File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 286, in convert return dtype(val) ValueError: invalid literal for int() with base 10: '32537************'"
"timestamp":string"2021-03-25 17:37.29"
"level":string"ERROR"
}

Traceback (most recent call last):
  File "/app/nomad/processing/data.py", line 460, in parsing
    self._parser_results, logger=logger)
  File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 1142, in parse
    self.parse_method()
  File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 903, in parse_method
    incar_parameters = self.parser.get_incar()
  File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 334, in get_incar
    incar.update(self._get_key_values('incar/v'))
  File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 312, in _get_key_values
    value = convert(value, dtype)
  File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 284, in convert
    return [convert(v, dtype) for v in val]
  File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 284, in <listcomp>
    return [convert(v, dtype) for v in val]
  File "/usr/local/lib/python3.7/site-packages/vaspparser/vasp_parser.py", line 286, in convert
    return dtype(val)
ValueError: invalid literal for int() with base 10: '32537************'

vasprun.xml attached

This is the INCAR
System = VAlN
NPAR = 8
LDAU = .TRUE.
LDAUL =<PHONE_NUMBER>
LDAUU = 362.8 720 1080
LDAUJ = 361.8 720 108*0
ISTART = 0
ISMEAR = 0
VOSKOWN = 1
SIGMA = 0.2
ICHARG = 2
#NSW = 100
IBRION = 2
#ISIF = 2
PREC = high
LWAVE = .FALSE.
LCHARG = .FALSE.`
the problematic part is probably the LDAUL, but why is the xml so strange I have no idea:
<v type="int" name="LDAUL"> 2 2 2 32537************ 82 0 48 0 49 0 1 2 2 3 3 3 4 4 4****** 49 0 0 0 1 0 1 2 0 1 3 0 33 0 36 72 108 0 0 0 33 0****** 8270****** 32537 0 0 33 0 0****** 0****** 0****** 33 0 0 0 0 0 0 0 33 0************************************ 33 0 0****** 0****** 0****** 1521 0****** -1****** -1****** -1****** -1****** -1****** -1****** -1****** -1 ****** -1****** -1****** -1****** -1****** -1****** -1****** -1****** -1****** -1****** -1 ****** -1****** -1****** -1****** -1****** -1****** -1****** -1****** -1****** -1****** -1 ****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0 ****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0 ****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0 ****** 0****** 0****** 0****** 0****** 0****** 0****** 0****** 0 </v>

Thanks for the report. The XML looks strange, but the parser should handle it more gracefully.

@ladinesa please take it from here. Ideally, you would introduce a general mechanism that handles exceptions while converting quantities and turns them into warnings.
In this specific instance, maybe the XML has a meaning, maybe its vasp problem. However, falling back to the INCAR is probably overkill.

There is a new release, the docker image tag stable (gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-fair:stable) points towards it. The parser in this release should have  the fix.

Confirming fixed


Steelseries optimizations and improvements

This pull request proposes the following changes:

All requests for Steelseries device lighting changes are consolidated into one event, significantly reducing the CPU usage of Steelseries Engine, especially in comparison to the first implementation of QcK Prism support.
Adds a 12-zone layout for QcK Prism.
Adds support for two-zone QcK mousepads like the XL and Cloth, along with a layout to support it.

Known issues/To do:

This build relies on SteelSeries Engine 3.13.8.  This version adds a show-on-zones: API that allows mousepad support to not destroy latency and also fixes the Arctis 5 lighting bug (#1395).

should not be merged until the public release of SteelSeries Engine 3.13.7 or later.

sad
On a serious note though, thanks for this.

should not be merged until the public release of SteelSeries Engine 3.13.7 or later.

sad
On a serious note though, thanks for this.

The update should be released sometime this week, as I am told.  Stay tuned.

How does this run if someone is using an outdated version of SSE3? Will it just not work as expected?

How does this run if someone is using an outdated version of SSE3? Will it just not work as expected for the extra support with most features that were working before working?

Existing features will work fine, except for 12-zone mousepad support. I did not switch over other devices to the show-on-zones: command, so they'll all work as before.


Set up RBS::Inline

This contains 4 types of changes to set up RBS::Inline.

gem: Set up rbs-inline
vscode: Install RBS helper
gem: Update Steep to 1.8.2
Run "rails rbs:setup" manually

Please read each commit message if you'd like to know the changes in details.

@tk0miya Then...How do we treat the sig/prototype dir?


Platformio: 3.5.2 -> 3.5.3 and fix for click dependency

Motivation for this change
The normal click package now applies a patch that doesn't work with the
older version used for platformio.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

click-5 doesn't try to execute the locale binary (and platformio-core itself requires click>=5,<6, so no way to use click-6). As platformio seems to be the only package overriding click, LGMT simply dropping that patch in the override.

@GrahamcOfBorg build platformio

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: platformio
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

Success on aarch64-linux (full log)
Attempted: platformio
Partial log (click to expand)
collision between `/nix/store/raplxfhaj9p6ak7bch67yi62dxg88vl8-gcc-7.3.0-lib/lib64/libgcc_s.so' and `/nix/store/d5djbvna6ffvviqnkpy29p0798zprchr-glibc-2.27/lib64/libgcc_s.so'
collision between `/nix/store/raplxfhaj9p6ak7bch67yi62dxg88vl8-gcc-7.3.0-lib/lib/libgcc_s.so.1' and `/nix/store/d5djbvna6ffvviqnkpy29p0798zprchr-glibc-2.27/lib/libgcc_s.so.1'
collision between `/nix/store/raplxfhaj9p6ak7bch67yi62dxg88vl8-gcc-7.3.0-lib/lib/libgcc_s.so' and `/nix/store/d5djbvna6ffvviqnkpy29p0798zprchr-glibc-2.27/lib/libgcc_s.so'
collision between `/nix/store/5cy2prhvl7hdz2k9kkdvjj36kqsbrpyc-shadow-4.5/etc/pam.d' and `/nix/store/pkklh34shifmab9v6syc4hcy8x2iq8wg-platformio-chrootenv-etc/etc/pam.d'
collision between `/nix/store/5cy2prhvl7hdz2k9kkdvjj36kqsbrpyc-shadow-4.5/etc/login.defs' and `/nix/store/pkklh34shifmab9v6syc4hcy8x2iq8wg-platformio-chrootenv-etc/etc/login.defs'
created 1968 symlinks in user environment
building '/nix/store/i568d5q5y8xrbvdvzahv86zqrjwf3sv3-platformio-fhs.drv'...
building '/nix/store/8frklarhivx8p97d3ndxxr9zxs34xqfg-platformio-init.drv'...
building '/nix/store/s4niqjsvvfqbx21dv5kmbf8riqkzjsmk-platformio.drv'...
/nix/store/svzqfmrm2x859kq0bbf0sjqiyy1isjvr-platformio

Success on x86_64-linux (full log)
Attempted: platformio
Partial log (click to expand)
----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK
building '/nix/store/scwsavig4w0x63ca87myl8inlzgy4vqh-platformio-usr-multi.drv'...
created 933 symlinks in user environment
building '/nix/store/7v73qvr29m8akfm40wds88f80frkihjd-platformio-fhs.drv'...
building '/nix/store/b6mx6bj0frhfw9b4a3vqcmrd04laqiqm-platformio-init.drv'...
building '/nix/store/ly1v1f0v62s912fj41zwlqmcb1q2z5hw-platformio.drv'...
/nix/store/gs07j3180fvhahz49i0hr8ygh2c1574v-platformio


dialog autoScrollBodyContent has issue

The dialog content height in this line should minus the height of title and action
https://github.com/callemall/material-ui/blob/master/src/dialog.jsx#L346

Fixed with #1153