Please add a section on install dependencies

Please add a section on install dependencies needed for bundle install to work.
Debian dependencies:   ruby-bundler ruby-dev libsqlite3-dev

Bundler itself is for managing (listing and installing) dependencies. If you run bundle install the first time you will get a new "Gemfile.lock" file with all dependencies (recursive all the way down) but this file depends on the platform(os) and ruby version itself. bundle install if working prints...
$ bundle install
The latest bundler is 1.16.2, but you are currently running 1.15.3.
To update, run `gem install bundler`
Fetching gem metadata from https://rubygems.org/...........
Fetching version metadata from https://rubygems.org/..
Resolving dependencies...
Using concurrent-ruby 1.1.6
Using minitest 5.14.0
Using thread_safe 0.3.6
Using arel 9.0.0
Using logutils 0.6.1
Using bundler 1.15.3
Using iniparser 0.1.0
Using rubyzip 1.3.0
Using gli 2.19.0
Using liquid 4.0.3
Using sqlite3 1.3.13 (x86-mingw32)
Using i18n 1.8.2
Using tzinfo 1.2.6
Using activityutils 0.1.2
Using fetcher 0.4.5
Using props 1.2.0
Using activesupport <IP_ADDRESS>
Using pakman 1.1.0
Using activemodel <IP_ADDRESS>
Using textutils 1.4.0
Using activerecord <IP_ADDRESS>
Using feedfilter 1.1.1
Using feedparser 2.1.2
Using activerecord-utils 0.4.1
Using logutils-activerecord 0.2.1
Using props-activerecord 0.2.0
Using pluto-models 1.5.6
Using pluto-merge 1.1.0
Using pluto-feedfetcher 0.1.4
Using pluto-update 1.6.3
Using pluto-tasks 1.5.3
Using pluto 1.3.4
Bundle complete! 4 Gemfile dependencies, 32 gems now installed.

and the Gemfile.lock reads:
GEM
  remote: https://rubygems.org/
  specs:
    activemodel (<IP_ADDRESS>)
      activesupport (= <IP_ADDRESS>)
    activerecord (<IP_ADDRESS>)
      activemodel (= <IP_ADDRESS>)
      activesupport (= <IP_ADDRESS>)
      arel (>= 9.0)
    activerecord-utils (0.4.1)
      activerecord
      logutils
    activesupport (<IP_ADDRESS>)
      concurrent-ruby (~> 1.0, >= 1.0.2)
      i18n (>= 0.7, < 2)
      minitest (~> 5.1)
      tzinfo (~> 1.1)
    activityutils (0.1.2)
      logutils (>= 0.6.1)
    arel (9.0.0)
    concurrent-ruby (1.1.6)
    feedfilter (1.1.1)
      textutils (>= 1.0.1)
    feedparser (2.1.2)
      logutils (>= 0.6.1)
      textutils (>= 1.0.0)
    fetcher (0.4.5)
      logutils (>= 0.6)
    gli (2.19.0)
    i18n (1.8.2)
      concurrent-ruby (~> 1.0)
    iniparser (0.1.0)
    liquid (4.0.3)
    logutils (0.6.1)
    logutils-activerecord (0.2.1)
      activerecord
      logutils (>= 0.6.1)
    minitest (5.14.0)
    pakman (1.1.0)
      fetcher (>= 0.4.5)
      liquid (>= 4.0.0)
      logutils (>= 0.6.1)
    pluto (1.3.4)
      gli (>= 2.12.2)
      pluto-merge (>= 1.1.0)
      pluto-models (>= 1.5.4)
      pluto-tasks (>= 1.5.3)
      pluto-update (>= 1.6.3)
      sqlite3
    pluto-feedfetcher (0.1.4)
      fetcher (>= 0.4.5)
      pluto-models (>= 1.5.4)
    pluto-merge (1.1.0)
      fetcher (>= 0.4.4)
      pakman (>= 0.5.0)
      pluto-models (>= 1.2.2)
    pluto-models (1.5.6)
      activerecord
      activerecord-utils (>= 0.4.0)
      activityutils (>= 0.1.1)
      feedfilter (>= 1.1.1)
      feedparser (>= 2.1.2)
      logutils (>= 0.6.1)
      logutils-activerecord (>= 0.2.1)
      props (>= 1.2.0)
      props-activerecord (>= 0.2.0)
      textutils (>= 1.4.0)
    pluto-tasks (1.5.3)
      pluto-models (>= 1.4.0)
      pluto-update (>= 1.6.0)
    pluto-update (1.6.3)
      pluto-feedfetcher (>= 0.1.4)
      pluto-models (>= 1.5.4)
    props (1.2.0)
      iniparser (>= 0.1.0)
    props-activerecord (0.2.0)
      activerecord
      props (>= 1.2.0)
    rubyzip (1.3.0)
    sqlite3 (1.3.13-x86-mingw32)
    textutils (1.4.0)
      activesupport
      logutils (>= 0.6.1)
      props (>= 1.1.2)
      rubyzip (>= 1.0.0)
    thread_safe (0.3.6)
    tzinfo (1.2.6)
      thread_safe (~> 0.1)

PLATFORMS
  x86-mingw32

DEPENDENCIES
  activerecord (= <IP_ADDRESS>)
  pluto
  rubyzip (= 1.3.0)
  sqlite3 (= 1.3.13)

BUNDLED WITH
   1.15.3

Is that what you're looking for? What bundle install output / errors do you get?

A tip - I personally do NOT use bundler - all dependencies are list in the pluto gem itself (see https://rubygems.org/gems/pluto).
As a simpler alternative for installation try:
  $ gem install pluto

and than for testing:
  $ pluto about

Does this work for you?   If that's working (better) I will remove the bundle machinery from the setup / readme doc.

Sorry, I meant requirements below the level handled by bundle. The approach using bundle was quite quick and easy other than the need to determine dependencies to install to get the build to work. I was missing some header files needed.
I did not record the original error messages, but could recreate them by testing an install in a very minimal Docker container based on Debian I made with very few packages installed ahead of time. Details on the Docker image at the bottom.
Bottom line: The following seems to be a sufficient set of packages for Debian (above a slim base image) to allow the bundle install to succeed:

git ruby-bundler sqlite3 sudo gcc make libsqlite3-dev ruby-dev

docker run --rm -it debian-ruby-bundle  bash

developer@d4e810b832fd:~$ cd pluto.starter/
developer@d4e810b832fd:~/pluto.starter$ bundle install
Fetching gem metadata from https://rubygems.org/..........
Resolving dependencies...
Following files may not be writable, so sudo is needed:
  /usr/local/bin
  /var/lib/gems/2.5.0
Fetching concurrent-ruby 1.1.6
Installing concurrent-ruby 1.1.6
Fetching i18n 1.8.2
Installing i18n 1.8.2
Fetching minitest 5.14.0
Installing minitest 5.14.0
Fetching thread_safe 0.3.6
Installing thread_safe 0.3.6
Fetching tzinfo 1.2.6
Installing tzinfo 1.2.6
Fetching zeitwerk 2.2.2
Installing zeitwerk 2.2.2
Fetching activesupport <IP_ADDRESS>
Installing activesupport <IP_ADDRESS>
Fetching activemodel <IP_ADDRESS>
Installing activemodel <IP_ADDRESS>
Fetching activerecord <IP_ADDRESS>
Installing activerecord <IP_ADDRESS>
Fetching logutils 0.6.1
Installing logutils 0.6.1
Fetching activerecord-utils 0.4.1
Installing activerecord-utils 0.4.1
Fetching activityutils 0.1.2
Installing activityutils 0.1.2
Using bundler 1.17.3
Fetching iniparser 0.1.0
Installing iniparser 0.1.0
Fetching props 1.2.0
Installing props 1.2.0
Fetching rubyzip 2.2.0
Installing rubyzip 2.2.0
Fetching textutils 1.4.0
Installing textutils 1.4.0
Fetching feedfilter 1.1.1
Installing feedfilter 1.1.1
Fetching feedparser 2.1.2
Installing feedparser 2.1.2
Fetching fetcher 0.4.5
Installing fetcher 0.4.5
Fetching gli 2.19.0
Installing gli 2.19.0
Fetching liquid 4.0.3
Installing liquid 4.0.3
Fetching logutils-activerecord 0.2.1
Installing logutils-activerecord 0.2.1
Fetching pakman 1.1.0
Installing pakman 1.1.0
Fetching props-activerecord 0.2.0
Installing props-activerecord 0.2.0
Fetching pluto-models 1.5.6
Installing pluto-models 1.5.6
Fetching pluto-merge 1.1.0
Installing pluto-merge 1.1.0
Fetching pluto-feedfetcher 0.1.4
Installing pluto-feedfetcher 0.1.4
Fetching pluto-update 1.6.3
Installing pluto-update 1.6.3
Fetching pluto-tasks 1.5.3
Installing pluto-tasks 1.5.3
Fetching sqlite3 1.4.2
Installing sqlite3 1.4.2 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /tmp/bundler20200213-6-tlwpxosqlite3-1.4.2/gems/sqlite3-1.4.2/ext/sqlite3
/usr/bin/ruby2.5 -r ./siteconf20200213-6-15c4e1p.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /tmp/bundler20200213-6-tlwpxosqlite3-1.4.2/gems/sqlite3-1.4.2 for inspection.
Results logged to /tmp/bundler20200213-6-tlwpxosqlite3-1.4.2/extensions/x86_64-linux/2.5.0/sqlite3-1.4.2/gem_make.out

An error occurred while installing sqlite3 (1.4.2), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.4.2' --source 'https://rubygems.org/'` succeeds before bundling.

In Gemfile:
  pluto was resolved to 1.3.4, which depends on
    sqlite3

Next install the libsqlite3-dev package and try again:
developer@d4e810b832fd:~/pluto.starter$ sudo apt-get install -y --no-install-recommends --no-install-suggests libsqlite3-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  libc-dev-bin libc6-dev linux-libc-dev
Suggested packages:
  glibc-doc manpages-dev sqlite3-doc
Recommended packages:
  manpages manpages-dev
The following NEW packages will be installed:
  libc-dev-bin libc6-dev libsqlite3-dev linux-libc-dev
0 upgraded, 4 newly installed, 0 to remove and 9 not upgraded.
Need to get 5068 kB of archives.
After this operation, 27.3 MB of additional disk space will be used.
Get:1 http://deb.debian.org/debian buster/main amd64 libc-dev-bin amd64 2.28-10 [275 kB]
Get:2 http://deb.debian.org/debian buster/main amd64 linux-libc-dev amd64 4.19.98-1 [1314 kB]
Get:3 http://deb.debian.org/debian buster/main amd64 libc6-dev amd64 2.28-10 [2691 kB]
Get:4 http://deb.debian.org/debian buster/main amd64 libsqlite3-dev amd64 3.27.2-3 [787 kB]
Fetched 5068 kB in 1s (5156 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libc-dev-bin.
(Reading database ... 12403 files and directories currently installed.)
Preparing to unpack .../libc-dev-bin_2.28-10_amd64.deb ...
Unpacking libc-dev-bin (2.28-10) ...
Selecting previously unselected package linux-libc-dev:amd64.
Preparing to unpack .../linux-libc-dev_4.19.98-1_amd64.deb ...
Unpacking linux-libc-dev:amd64 (4.19.98-1) ...
Selecting previously unselected package libc6-dev:amd64.
Preparing to unpack .../libc6-dev_2.28-10_amd64.deb ...
Unpacking libc6-dev:amd64 (2.28-10) ...
Selecting previously unselected package libsqlite3-dev:amd64.
Preparing to unpack .../libsqlite3-dev_3.27.2-3_amd64.deb ...
Unpacking libsqlite3-dev:amd64 (3.27.2-3) ...
Setting up linux-libc-dev:amd64 (4.19.98-1) ...
Setting up libc-dev-bin (2.28-10) ...
Setting up libc6-dev:amd64 (2.28-10) ...
Setting up libsqlite3-dev:amd64 (3.27.2-3) ...
developer@d4e810b832fd:~/pluto.starter$
developer@d4e810b832fd:~/pluto.starter$
developer@d4e810b832fd:~/pluto.starter$
developer@d4e810b832fd:~/pluto.starter$ bundle install
Fetching gem metadata from https://rubygems.org/..........
Resolving dependencies...
Using concurrent-ruby 1.1.6
Following files may not be writable, so sudo is needed:
  /usr/local/bin
  /var/lib/gems/2.5.0
  /var/lib/gems/2.5.0/build_info
  /var/lib/gems/2.5.0/cache
  /var/lib/gems/2.5.0/doc
  /var/lib/gems/2.5.0/extensions
  /var/lib/gems/2.5.0/gems
  /var/lib/gems/2.5.0/specifications
Using i18n 1.8.2
Using minitest 5.14.0
Using thread_safe 0.3.6
Using tzinfo 1.2.6
Using zeitwerk 2.2.2
Using activesupport <IP_ADDRESS>
Using activemodel <IP_ADDRESS>
Using activerecord <IP_ADDRESS>
Using logutils 0.6.1
Using activerecord-utils 0.4.1
Using activityutils 0.1.2
Using bundler 1.17.3
Using iniparser 0.1.0
Using props 1.2.0
Using rubyzip 2.2.0
Using textutils 1.4.0
Using feedfilter 1.1.1
Using feedparser 2.1.2
Using fetcher 0.4.5
Using gli 2.19.0
Using liquid 4.0.3
Using logutils-activerecord 0.2.1
Using pakman 1.1.0
Using props-activerecord 0.2.0
Using pluto-models 1.5.6
Using pluto-merge 1.1.0
Using pluto-feedfetcher 0.1.4
Using pluto-update 1.6.3
Using pluto-tasks 1.5.3
Fetching sqlite3 1.4.2
Installing sqlite3 1.4.2 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /tmp/bundler20200213-527-16x4gbpsqlite3-1.4.2/gems/sqlite3-1.4.2/ext/sqlite3
/usr/bin/ruby2.5 -r ./siteconf20200213-527-n2bnz2.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /tmp/bundler20200213-527-16x4gbpsqlite3-1.4.2/gems/sqlite3-1.4.2 for inspection.
Results logged to /tmp/bundler20200213-527-16x4gbpsqlite3-1.4.2/extensions/x86_64-linux/2.5.0/sqlite3-1.4.2/gem_make.out

An error occurred while installing sqlite3 (1.4.2), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.4.2' --source 'https://rubygems.org/'` succeeds before bundling.

In Gemfile:
  pluto was resolved to 1.3.4, which depends on
    sqlite3

Next install the ruby-dev package and try again:
developer@d4e810b832fd:~/pluto.starter$ sudo apt-get install -y --no-install-recommends --no-install-suggests ruby-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  libgmp-dev libgmpxx4ldbl ruby2.5-dev
Suggested packages:
  gmp-doc libgmp10-doc libmpfr-dev
Recommended packages:
  ruby2.5-doc
The following NEW packages will be installed:
  libgmp-dev libgmpxx4ldbl ruby-dev ruby2.5-dev
0 upgraded, 4 newly installed, 0 to remove and 9 not upgraded.
Need to get 1076 kB of archives.
After this operation, 2665 kB of additional disk space will be used.
Get:1 http://deb.debian.org/debian buster/main amd64 libgmpxx4ldbl amd64 2:6.1.2+dfsg-4 [22.9 kB]
Get:2 http://deb.debian.org/debian buster/main amd64 libgmp-dev amd64 2:6.1.2+dfsg-4 [628 kB]
Get:3 http://deb.debian.org/debian buster/main amd64 ruby2.5-dev amd64 2.5.5-3+deb10u1 [415 kB]
Get:4 http://deb.debian.org/debian buster/main amd64 ruby-dev amd64 1:2.5.1 [10.2 kB]
Fetched 1076 kB in 1s (1121 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libgmpxx4ldbl:amd64.
(Reading database ... 13877 files and directories currently installed.)
Preparing to unpack .../libgmpxx4ldbl_2%3a6.1.2+dfsg-4_amd64.deb ...
Unpacking libgmpxx4ldbl:amd64 (2:6.1.2+dfsg-4) ...
Selecting previously unselected package libgmp-dev:amd64.
Preparing to unpack .../libgmp-dev_2%3a6.1.2+dfsg-4_amd64.deb ...
Unpacking libgmp-dev:amd64 (2:6.1.2+dfsg-4) ...
Selecting previously unselected package ruby2.5-dev:amd64.
Preparing to unpack .../ruby2.5-dev_2.5.5-3+deb10u1_amd64.deb ...
Unpacking ruby2.5-dev:amd64 (2.5.5-3+deb10u1) ...
Selecting previously unselected package ruby-dev:amd64.
Preparing to unpack .../ruby-dev_1%3a2.5.1_amd64.deb ...
Unpacking ruby-dev:amd64 (1:2.5.1) ...
Setting up libgmpxx4ldbl:amd64 (2:6.1.2+dfsg-4) ...
Setting up libgmp-dev:amd64 (2:6.1.2+dfsg-4) ...
Setting up ruby2.5-dev:amd64 (2.5.5-3+deb10u1) ...
Setting up ruby-dev:amd64 (1:2.5.1) ...
Processing triggers for libc-bin (2.28-10) ...
developer@d4e810b832fd:~/pluto.starter$ bundle install
Fetching gem metadata from https://rubygems.org/..........
Resolving dependencies...
Using concurrent-ruby 1.1.6
Following files may not be writable, so sudo is needed:
  /usr/local/bin
  /var/lib/gems/2.5.0
  /var/lib/gems/2.5.0/build_info
  /var/lib/gems/2.5.0/cache
  /var/lib/gems/2.5.0/doc
  /var/lib/gems/2.5.0/extensions
  /var/lib/gems/2.5.0/gems
  /var/lib/gems/2.5.0/specifications
Using i18n 1.8.2
Using minitest 5.14.0
Using thread_safe 0.3.6
Using tzinfo 1.2.6
Using zeitwerk 2.2.2
Using activesupport <IP_ADDRESS>
Using activemodel <IP_ADDRESS>
Using activerecord <IP_ADDRESS>
Using logutils 0.6.1
Using activerecord-utils 0.4.1
Using activityutils 0.1.2
Using bundler 1.17.3
Using iniparser 0.1.0
Using props 1.2.0
Using rubyzip 2.2.0
Using textutils 1.4.0
Using feedfilter 1.1.1
Using feedparser 2.1.2
Using fetcher 0.4.5
Using gli 2.19.0
Using liquid 4.0.3
Using logutils-activerecord 0.2.1
Using pakman 1.1.0
Using props-activerecord 0.2.0
Using pluto-models 1.5.6
Using pluto-merge 1.1.0
Using pluto-feedfetcher 0.1.4
Using pluto-update 1.6.3
Using pluto-tasks 1.5.3
Fetching sqlite3 1.4.2
Installing sqlite3 1.4.2 with native extensions
Fetching pluto 1.3.4
Installing pluto 1.3.4
Bundle complete! 2 Gemfile dependencies, 32 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.

Success so run a test:
developer@d4e810b832fd:~/pluto.starter$ bundle exec pluto help
NAME
    pluto - another planet generator (lets you build web pages from published web feeds)

SYNOPSIS
    pluto [global options] command [command options] [arguments...]

VERSION
    1.3.4

GLOBAL OPTIONS
    -c, --config=PATH         - Configuration Path (default: /home/developer/.pluto)
    --help                    - Show this message
    -q, --quiet, -w, --warn   - Only show warnings, errors and fatal messages
    --quieter, --err, --error - Only show errors and fatal messages
    --verbose, --debug        - (Debug) Show debug messages
    --version                 - Display the program version

COMMANDS
    about, a      - (Debug) Show more version info
    build, b      - Build planet
    fetch, f      - Fetch feeds
    help          - Shows a list of commands or help for one command
    install, i    - Install template pack
    list, ls, l   - List installed template packs
    merge, m      - Merge planet template pack
    test          - (Debug) Show global options, options, arguments for test command
    update, up, u - Update planet feeds

The minimal Docker image was created using
Dockerfile:
FROM debian:buster-slim

RUN apt-get update \
    && apt-get install -y --no-install-recommends --no-install-suggests \
	git ruby-bundler sqlite3 sudo gcc make

RUN export uid=1000 gid=1000 && \
    mkdir -p /home/developer && \
    echo "developer:x:${uid}:${gid}:Developer,,,:/home/developer:/bin/bash" >> /etc/passwd && \
    /usr/bin/passwd -d developer && \
    echo "developer:x:${uid}:" >> /etc/group && \
    echo "developer ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers  && \
    chown -R developer:1000 /home/developer/

USER developer
ENV HOME /home/developer

WORKDIR /home/developer

RUN git clone https://github.com/feedreader/pluto.starter.git ; chown -R developer pluto.starter

CMD ["/bin/bash"]

docker-compose.yml:
version: '3.5'
services:
  app:
    image: debian-ruby-bundle
    build: .

and then running docker-compose build

I see. Wow thanks for all the detailed examples. I will try to work it all into the readme / docs in the next days.

Hello, if you scroll down on the readme to the Q&A there's now a new entry "Q: What packages for Debian (above a slim base image) allow the bundle install to succeed?".  I added all info as far as I understand (along with credit). Thanks. Cheers.


ClassCastException seen during query

Describe the bug
At times we are seeing following exception getting logged in our query flow. Unfortunately due to the way logging is done stack trace is not present
[2019-03-11T21:43:19.781Z] [ERROR] [#tid_33EsHVlP1DvswJiZO4asmuVXG9evto0g] [StoreUtils] [QUERY] 'activations' internal error, failure: 'com.microsoft.azure.cosmosdb.PartitionKeyRange cannot be cast to org.apache.commons.lang3.tuple.ImmutablePair' [ClassCastException] [marker:database_queryView_error:154:152]

To Reproduce
Not know
Environment summary
SDK Version: 2.3.0
Java JDK version: 1.8
OS Version (e.g. Windows, Linux, MacOSX)

Looking at the code it appears to me that this is probably fixed with current master via this commit where earlier code was passing ranges of type List<PartitionKeyRange> to CollectionRoutingMap.tryCombine(List<ImmutablePair<PartitionKeyRange, IServerIdentity>> ranges) and post fix it now passes rangesTuples which is of expected type List<ImmutablePair<PartitionKeyRange, IServerIdentity>>.
We are switching to 2.4.2 version so would observe. But wanted to check if above reasoning makes sense and thus 2.4.2 should not show such issue!

@chetanmeh this has been fixed in 2.4.0 onward.
BTW, the latest version in 2.4.x is 2.4.4

Thanks for confirming.

BTW, the latest version in 2.4.x is 2.4.4

Yeah realized now. Its a moving target! Would get to that version soon


[JSON] Show title/description in Completion

Feature Request
I am using monaco with the great JSON plugin an a JSON schema.
Using the following schema...
{
    "oneOf": [
        {
            "title": "Title1",
            "enum": ["value1"],
            "default": "value1",
            "readOnly": true
        },
        {
            "title": "Title2",
            "enum": ["value2"],
            "default": "value2",
            "readOnly": true
        },
        {
            "title": "Title3",
            "enum": ["value3"],
            "default": "value3",
            "readOnly": true
        }
    ]
}

... monaco offers the following completion options:
value1
value2
value2

Is it possible to show title/description beside it, like...
value1    Title1
value2    Title2
value3    Title3

...?
Thanks in advance.

Related code:
CompletionAdapter
(Note: It's already implemented for HoverAdapter, but I don't know how)

Related issues:
#727
#1798

BTW: I found an easy hack to manipulate the completion:
var completion = Array.from(document.getElementsByClassName("monaco-highlighted-label"));
completion.forEach(function (element) {
    if (element.children.length < 2) {
        var span = document.createElement("span");
        span.innerText = "XXX";
        element.appendChild(span);
    }
});

If there is a way to know the current schema path, this would be applicable.
Please help me :)

Thanks a lot.
I am not too lazy, so I cloned the repo. It was easy to build and run. Great!
Afterwards I created the following test page (based on test/index.html):
<!DOCTYPE html>

    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <link
      rel="stylesheet"
      data-name="vs/editor/editor.main"
      href="../node_modules/monaco-editor-core/dev/vs/editor/editor.main.css"
    />

Monaco Editor JSON test page

But I get the following error message:
TypeError: factory.create is not a function

at file:///C:/Alex/src/vscode-stable/out-editor-src/vs/editor/common/model/textModel.ts ...
export function createTextBuffer(value: string | model.ITextBufferFactory, defaultEOL: model.DefaultEndOfLine): model.ITextBuffer {
    const factory = (typeof value === 'string' ? createTextBufferFactory(value) : value);
    return factory.create(defaultEOL);
//         ~~~~~~~~~~~~~~
}

Any ideas?
Thanks!

I'm sorry for the noisy thread.
I added ...
{
    name: 'vscode-textbufffer',
    location: path.join(REPO_ROOT, 'node_modules/vscode-textbuffer/lib'),
    main: 'index'
}

... to bundle.js which seems to be required to use the model API, but the error still remains.

Note: You can already do that:
        {
            "description": "Use it for foo",
            "const": "value1",
            "readOnly": true
        },

The description shows as a extra tooltip when the proposal is selected (press ctrl+space while the suggesion widget is up to always see the tooltip)

Thank you very much. It seems to work with description. I thought I would be possible to show this label for all items at once (right-justified). Maybe it's unsupported by vscode.

Thank you, I think it's unsupported by vscode to show all descriptions at once.
Please let me know if I'm wrong.
I'm sorry for the noisy thread.


Publish new version (0.4.0?)

Hey there,
It would be nice if you could cut a new version of redux-raven-middleware that represents the current state of the repo:

breadcrumb collection
latest version of Raven.js (which introduces breadcrumbs, POST requests so more data can be sent, etc)

Right now the latest version on npm is 0.3.0, which is 11 months old.
If you need a hand maintaining this library, I'd be glad to come on as a contributor (I maintain raven-js on behalf of Sentry).

Hi, thanks for the help! Added you as a collaborator.
If you think there's a lot of work to be done on this project, we can transfer this project to you. You'd definitely be a better maintainer since you maintain raven :)

I bumped to 1.0.0

If you think there's a lot of work to be done on this project, we can transfer this project to you. You'd definitely be a better maintainer since you maintain raven :)

I think for the meantime we're cool as it is. I am thinking about refactoring all of the raven-js plugins into some kind of big multi-project Lerna monorepo – if we get to that point I'd explore pulling this behavior into an official plugin.


Roaming data not working for ApplicationData sample.

Which sample are you reporting a bug in?
ApplicationData
Describe the bug
I am executing the ApplicationDataSample and the Roaming does not seem to be working between two machines.  Will this work in Debug mode in Visual Studio?  Do I have to publish the app via the store for the OS to sync?  Maybe I am impatient, but what is the rough expectation for timing between syncs?
To Reproduce
Steps to reproduce the behavior:

Download sample repos to two machines
Open the ApplicationData (C# version) solution
Open in Visual Studio 2022 on Machine A
Debug solution
Select "6) Roaming: HighPriority"
Increment value to "3"
Open in Visual Studio 2002 on Machine B
Debug solution
Select "6) Roaming: HighPriority"
I expect to see "3", but I see another "0"

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Configuration

Language/architecture/flavor: c#
Windows platform and build number: Machine A 22000 & Machine B 1904.  Signed in both with a Microsoft Account

Visual Studio version: VS 2022 - Signed in with an O365 account on both IDEs.  I also tried a standard Microsoft Account.

Additional context
Add any other context about the problem here.

In November 2019, Microsoft announced that the RoamingFolder API will be removed in the future, That removal finally occurred in 22000. I will update the documentation and remove the scenario from the sample.

Guess the future is upon us.  Too bad, it was an intriguing idea without needing to put the plumbing together with API's, security, and our own databases.


报错求解答

/home/bmi_yile/.local/lib/python3.7/site-packages/librosa/core/audio.py:165: UserWarning: PySoundFile failed. Trying audioread instead.
warnings.warn("PySoundFile failed. Trying audioread instead.")
(3779919,)
/home/bmi_yile/.local/lib/python3.7/site-packages/librosa/core/spectrum.py:224: UserWarning: n_fft=2048 is too small for input signal of length=1200
n_fft, y.shape[-1]
1566
/home/bmi_yile/.local/lib/python3.7/site-packages/torch/serialization.py:671: SourceChangeWarning: source code of class 'torch.nn.modules.rnn.GRU' has changed. you can retrieve the original source code by accessing the object's source attribute or set torch.nn.Module.dump_patches = True and use the patch tool to revert the changes.
warnings.warn(msg, SourceChangeWarning)
Traceback (most recent call last):
File "gen_beatmaps.py", line 128, in
encoder_ln1 = torch.load("checkpoints/encoder_ln1.pth").to(device)
File "/home/bmi_yile/.local/lib/python3.7/site-packages/torch/nn/modules/module.py", line 899, in to
return self._apply(convert)
File "/home/bmi_yile/.local/lib/python3.7/site-packages/torch/nn/modules/module.py", line 570, in _apply
module._apply(fn)
File "/home/bmi_yile/.local/lib/python3.7/site-packages/torch/nn/modules/rnn.py", line 187, in _apply
self._flat_weights = [(lambda wn: getattr(self, wn) if hasattr(self, wn) else None)(wn) for wn in self._flat_weights_names]
File "/home/bmi_yile/.local/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1178, in getattr
type(self).name, name))
AttributeError: 'GRU' object has no attribute '_flat_weights_names'

同样的报错，求解答

怎么办的最后 哭死 一直报错


Plank data plot

Coverage: 99.533%. Remained the same when pulling 9511f10ed6d6b9e01fb1eea78aece10744c88672 on plank into 83ba81fd0f067fe67a49d965f5f694db9bf264ae on master.


MuJoCo ROS Integration - segmentation faults in model instance (from version 3.1.1 -> ^3.1.2)

Hi,
I'm a PhD student and I'm trying to use MuJoCo with ROS 2 to prototype robot workspaces and ROS 2 application software. I have created the following ROS package to accomplish this and it seems to work for MuJoCo version 3.1.1 and earlier. I recently have been looking to include meshes in my scenes which resulted in errors in 3.1.1 relating to inconsistent normals as seen here. As part of resolving this issue I looked to upgrade my MuJoCo version while in the process of doing so I have encountered segmentation faults when when interfacing with the model instance for all versions greater than or equal to 3.1.2.
I'm looking for some help with understanding changes between 3.1.1 -> 3.1.2 that may be causing my issue. I have started looking at the changelog and performing a diff to understand better what is causing my integration package to always produce a segfault on more recent versions of MuJoCo "^3.1.2".  I am posting this issue in case anyone has a quick answer to what might be causing this issue in latest MuJoCo versions. I also believe this is relevant for anyone looking to cast model/data instances from python to C++ in a manner similar to the below:
std::uintptr_t m_raw = model.attr("_address").cast<std::uintptr_t>();
std::uintptr_t d_raw = data.attr("_address").cast<std::uintptr_t>();
m = reinterpret_cast<mjModel *>(m_raw);
d = reinterpret_cast<mjData *>(d_raw);

I instantiate my python binding from the referenced package in a Python script as below, where I read in the latest scene.xml from mujoco_menagerie for the Franka Emika Panda model:
import os
import time

import mujoco
import mujoco.viewer

import mujoco_ros
from mujoco_ros.franka_env import FrankaEnv

model_filepath = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'models', 'franka_emika_panda', 'scene.xml')
print(model_filepath)

if __name__=="__main__":
    m = mujoco.MjModel.from_xml_path(model_filepath)
    d = mujoco.MjData(m)

    with mujoco.viewer.launch_passive(
        model=m,
        data=d,
        show_left_ui=False,
        show_right_ui=False,
        ) as viewer:

        env = FrankaEnv(
        m,
        d,
        command_interface="effort",
        control_steps=5,
        control_timer_freq=1e-2,
        )

        # run interactive viewer application
        while viewer.is_running():
            time.sleep(0.05)
            env.is_syncing = True
            viewer.sync()
            env.is_syncing = False

This results in the following backtrace for the segfault:
(gdb) bt
#0  mj_kinematics (m=0x555555d63680, d=0x555555db2180) at /home/peter/Code/temp/ros2_robotics_research_toolkit/build/mujoco_ros_py/_deps/mujoco-src/src/engine/engine_core_smooth.c:82
#1  0x00007fffb84712a6 in mj_fwdPosition (m=0x555555d63680, d=0x555555db2180) at /home/peter/Code/temp/ros2_robotics_research_toolkit/build/mujoco_ros_py/_deps/mujoco-src/src/engine/engine_forward.c:127
#2  0x00007fffb847514a in mj_forwardSkip (m=0x555555d63680, d=0x555555db2180, skipstage=0, skipsensor=0)
    at /home/peter/Code/temp/ros2_robotics_research_toolkit/build/mujoco_ros_py/_deps/mujoco-src/src/engine/engine_forward.c:996
#3  0x00007fffb8475302 in mj_forward (m=0x555555d63680, d=0x555555db2180) at /home/peter/Code/temp/ros2_robotics_research_toolkit/build/mujoco_ros_py/_deps/mujoco-src/src/engine/engine_forward.c:1035
#4  0x00007fffb8a9311a in franka_table::FrankaTableEnv::init_scene (this=0x555555e723e0) at /home/peter/Code/temp/ros2_robotics_research_toolkit/src/mujoco/mujoco_ros/src/franka_table.cpp:208
#5  0x00007fffb8a91bac in franka_table::FrankaTableEnv::FrankaTableEnv (this=0x555555e723e0, model=..., data=..., command_interface="effort", control_steps=5, control_timer_freq=0.01)
    at /home/peter/Code/temp/ros2_robotics_research_toolkit/src/mujoco/mujoco_ros/src/franka_table.cpp:52
#6  0x00007fffb8a942dc in operator() (__closure=0x555555d61ce8, model=..., data=..., command_interface="effort", control_steps=5, control_timer_freq=0.01)
    at /home/peter/Code/temp/ros2_robotics_research_toolkit/src/mujoco/mujoco_ros/src/franka_table.cpp:353
#7  0x00007fffb8a94f47 in operator() (__closure=0x555555d61ce8, v_h=..., args#0=..., args#1=..., args#2="", args#3=5, args#4=0.01) at /usr/include/pybind11/detail/init.h:242
#8  0x00007fffb8a96efb in pybind11::detail::argument_loader<pybind11::detail::value_and_holder&, pybind11::object, pybind11::object, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, double>::call_impl<void, pybind11::detail::initimpl::factory<pybind11_init_franka_env(pybind11::module_&)::<lambda(pybind11::object, pybind11::object, std::string, int, double)>, pybind11::detail::void_type (*)(), std::shared_ptr<franka_table::FrankaTableEnv>(pybind11::object, pybind11::object, std::__cxx11::basic_string<char>, int, double), pybind11::detail::void_type()>::execute<pybind11::class_<franka_table::FrankaTableEnv, std::shared_ptr<franka_table::FrankaTableEnv> >, pybind11::arg, pybind11::arg, pybind11::arg_v, pybind11::arg_v, pybind11::arg_v, pybind11::return_value_policy, char [49]>(pybind11::class_<franka_table::FrankaTableEnv, std::shared_ptr<franka_table::FrankaTableEnv> >&, const pybind11::arg&, const pybind11::arg&, const pybind11::arg_v&, const pybind11::arg_v&, const pybind11::arg_v&, const pybind11::return_value_policy&, char const (&)[49]) &&::<lambda(pybind11::detail::value_and_holder&, pybind11::object, pybind11::object, std::__cxx11::basic_string<char>, int, double)>&, 0, 1, 2, 3, 4, 5, pybind11::detail::void_type>(struct {...} &, std::index_sequence, pybind11::detail::void_type &&) (this=0x7fffffff5630, f=...) at /usr/include/pybind11/cast.h:1207
#9  0x00007fffb8a96c8c in pybind11::detail::argument_loader<pybind11::detail::value_and_holder&, pybind11::object, pybind11::object, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, double>::call<void, pybind11::detail::void_type, pybind11::detail::initimpl::factory<pybind11_init_franka_env(pybind11::module_&)::<lambda(pybind11::object, pybind11::object, std::string, int, double)>, pybind11::detail::void_type (*)(), std::shared_ptr<franka_table::FrankaTableEnv>(pybind11::object, pybind11::object, std::__cxx11::basic_string<char>, int, double), pybind11::detail::void_type()>::execute<pybind11::class_<franka_table::FrankaTableEnv, std::shared_ptr<franka_table::FrankaTableEnv> >, pybind11::arg, pybind11::arg, pybind11::arg_v, pybind11::arg_v, pybind11::arg_v, pybind11::return_value_policy, char [49]>(pybind11::class_<franka_table::FrankaTableEnv, std::shared_ptr<franka_table::FrankaTableEnv> >&, const pybind11::arg&, const pybind11::arg&, const pybind11::arg_v&, const pybind11::arg_v&, const pybind11::arg_v&, const pybind11::return_value_policy&, char const (&)[49]) &&::<lambda(pybind11::detail::value_and_holder&, pybind11::object, pybind11::object, std::__cxx11::basic_string<char>, int, double)>&>(struct {...} &) (this=0x7fffffff5630, f=...) at /usr/include/pybind11/cast.h:1184
#10 0x00007fffb8a96347 in operator() (__closure=0x0, call=...) at /usr/include/pybind11/pybind11.h:233
#11 0x00007fffb8a963e8 in _FUN () at /usr/include/pybind11/pybind11.h:210
#12 0x00007fffb8aab20c in pybind11::cpp_function::dispatcher (self=0x7fffb8f2d470, args_in=0x7fffb8f26bc0, kwargs_in=0x7ffff37d2c40) at /usr/include/pybind11/pybind11.h:835
#13 0x00007ffff7b12713 in cfunction_call (func=0x7fffb8f32cf0, args=<optimised out>, kwargs=<optimised out>) at Objects/methodobject.c:543
#14 0x00007ffff7ac935c in _PyObject_MakeTpCall (tstate=0x55555557e350, callable=0x7fffb8f32cf0, args=<optimised out>, nargs=3, keywords=0x7fffb8f26a00) at Objects/call.c:215
#15 0x00007ffff7acc172 in _PyObject_VectorcallTstate (kwnames=0x7fffb8f26a00, nargsf=3, args=0x7fffb8f2dda0, callable=0x7fffb8f32cf0, tstate=0x55555557e350) at ./Include/cpython/abstract.h:112
#16 _PyObject_VectorcallTstate (kwnames=0x7fffb8f26a00, nargsf=3, args=0x7fffb8f2dda0, callable=0x7fffb8f32cf0, tstate=0x55555557e350) at ./Include/cpython/abstract.h:99
--Type <RET> for more, q to quit, c to continue without paging--
#17 method_vectorcall (method=<optimised out>, args=0x7fffb8f2dda8, nargsf=<optimised out>, kwnames=0x7fffb8f26a00) at Objects/classobject.c:53
#18 0x00007ffff7ac8fe8 in PyVectorcall_Call (callable=0x7ffff7391bc0, tuple=<optimised out>, kwargs=<optimised out>) at Objects/call.c:267
#19 0x00007ffff7b37202 in slot_tp_init (self=0x7ffff73e9830, args=0x7fffb63f9a00, kwds=0x7ffff7376980) at Objects/typeobject.c:7737
#20 0x00007ffff7b2ed3e in type_call (type=<optimised out>, args=0x7fffb63f9a00, kwds=0x7ffff7376980) at Objects/typeobject.c:1135
#21 0x00007fffb8aa5495 in pybind11::detail::pybind11_meta_call (type=0x555555d61db0, args=0x7fffb63f9a00, kwargs=0x7ffff7376980) at /usr/include/pybind11/detail/class.h:174
#22 0x00007ffff7ac935c in _PyObject_MakeTpCall (tstate=0x55555557e350, callable=0x555555d61db0, args=<optimised out>, nargs=2, keywords=0x7ffff75c4dc0) at Objects/call.c:215
#23 0x00007ffff7a72966 in _PyObject_VectorcallTstate (kwnames=0x7ffff75c4dc0, nargsf=9223372036854775810, args=0x7ffff7929bb0, callable=0x555555d61db0, tstate=<optimised out>)
    at ./Include/cpython/abstract.h:112
#24 _PyObject_VectorcallTstate (kwnames=0x7ffff75c4dc0, nargsf=9223372036854775810, args=0x7ffff7929bb0, callable=0x555555d61db0, tstate=<optimised out>) at ./Include/cpython/abstract.h:99
#25 PyObject_Vectorcall (kwnames=0x7ffff75c4dc0, nargsf=9223372036854775810, args=0x7ffff7929bb0, callable=0x555555d61db0) at ./Include/cpython/abstract.h:123
#26 call_function (kwnames=0x7ffff75c4dc0, oparg=<optimised out>, pp_stack=<synthetic pointer>, trace_info=0x7fffffff5e40, tstate=0x55555557e350) at Python/ceval.c:5891
#27 _PyEval_EvalFrameDefault (tstate=<optimised out>, f=<optimised out>, throwflag=<optimised out>) at Python/ceval.c:4231
#28 0x00007ffff7bbbaa0 in _PyEval_EvalFrame (throwflag=0, f=0x7ffff7929a40, tstate=0x55555557e350) at ./Include/internal/pycore_ceval.h:46
#29 _PyEval_Vector (kwnames=0x0, argcount=0, args=0x0, locals=0x7ffff754b900, con=0x7fffffff5f20, tstate=0x55555557e350) at Python/ceval.c:5065
#30 PyEval_EvalCode (co=co@entry=0x7ffff75c8b30, globals=globals@entry=0x7ffff754b900, locals=locals@entry=0x7ffff754b900) at Python/ceval.c:1134
#31 0x00007ffff7c022ad in run_eval_code_obj (locals=0x7ffff754b900, globals=0x7ffff754b900, co=0x7ffff75c8b30, tstate=0x55555557e350) at Python/pythonrun.c:1291
#32 run_mod (mod=<optimised out>, filename=filename@entry=0x7ffff75c90b0, globals=globals@entry=0x7ffff754b900, locals=locals@entry=0x7ffff754b900, flags=flags@entry=0x7fffffff6098,
    arena=arena@entry=0x7ffff79feb70) at Python/pythonrun.c:1312
#33 0x00007ffff7c03476 in pyrun_file (flags=0x7fffffff6098, closeit=<optimised out>, locals=0x7ffff754b900, globals=0x7ffff754b900, start=257, filename=0x7ffff75c90b0, fp=0x555555559390)
    at Python/pythonrun.c:1208
#34 _PyRun_SimpleFileObject (fp=fp@entry=0x555555559390, filename=filename@entry=0x7ffff75c90b0, closeit=closeit@entry=1, flags=flags@entry=0x7fffffff6098) at Python/pythonrun.c:456
#35 0x00007ffff7c03a0f in _PyRun_AnyFileObject (fp=0x555555559390, filename=filename@entry=0x7ffff75c90b0, closeit=closeit@entry=1, flags=flags@entry=0x7fffffff6098) at Python/pythonrun.c:90
#36 0x00007ffff7c236e3 in pymain_run_file_obj (skip_source_first_line=0, filename=0x7ffff75c90b0, program_name=0x7ffff7939ae0) at Modules/main.c:353
#37 pymain_run_file (config=0x55555555f520) at Modules/main.c:372
#38 pymain_run_python (exitcode=0x7fffffff6090) at Modules/main.c:587
#39 Py_RunMain () at Modules/main.c:666
#40 0x00007ffff7c23fbe in pymain_main (args=0x7fffffff6190) at Modules/main.c:696
#41 Py_BytesMain (argc=<optimised out>, argv=<optimised out>) at Modules/main.c:720
#42 0x00007ffff7629d90 in __libc_start_call_main (main=main@entry=0x555555555060 <main>, argc=argc@entry=2, argv=argv@entry=0x7fffffff6318) at ../sysdeps/nptl/libc_start_call_main.h:58
#43 0x00007ffff7629e40 in __libc_start_main_impl (main=0x555555555060 <main>, argc=2, argv=0x7fffffff6318, init=<optimised out>, fini=<optimised out>, rtld_fini=<optimised out>, stack_end=0x7fffffff6308)
    at ../csu/libc-start.c:392
#44 0x0000555555555095 in _start ()

For now I am going to pin my version to 3.1.1 as this seems like it will take me sometime to read the diff and understand exactly what change caused the segfault (presumably changes to passive viewer).
In general, I am motivated to keep my package up to date with the latest releases as I intend to leverage this workflow throughout the remainder of my research studies.


[Event Request] Report 99001021 - Refresh Planning Demand - OnBeforeModifyReqLineRefreshPlannDemand

Hi,
Would it be possible to get an OnBeforeModifyReqLineRefreshPlannDemand event in Report 99001021 (Refresh Planning Demand), like this:
dataitem("Requisition Line"; "Requisition Line")
        {
            DataItemTableView = SORTING("Worksheet Template Name", "Journal Batch Name", "Line No.") WHERE("Planning Level" = CONST(0));
            RequestFilterFields = "Worksheet Template Name", "Journal Batch Name", "Line No.";

            trigger OnAfterGetRecord()
            begin
                Window.Update(1, "No.");
                Window.Update(2, "Starting Date");

                PlngLnMgt.Calculate("Requisition Line", Direction, CalcRoutings, CalcComponents, 0);
                //*****START
                OnBeforeModifyReqLineRefreshPlannDemand("Requisition Line");
                //*****END
                Modify;
            end;

[IntegrationEvent(false, false)]
    local procedure OnBeforeModifyReqLineRefreshPlannDemand(var ReqLine: Record "Requisition Line")
    begin

    end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Make DefaultTypeInspector.CanBeHandled virtual

This one-liner enables custom type inspectors to automatically handle members that return System.Object as the GraphQL Any scalar. Currently DefaultTypeInspector.CanBeHandled, as well as every other method it relies on, is private, and cannot be reimplemented by a custom type inspector without copying large chunks of HC code.
This change is sort of an inverse to #4306.

That is not needed as you can ask the type inspector to give you objects in specific cases.
We will keep this method private as I do not want to deal with the effects this can have.

I missed last week's changes 🤦

no worries


tf.Data Pipeline using interleave starts fast then becomes extremely slow

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Windows 7
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): Binary
TensorFlow version (use command below): 1.13
Python version: 3.7
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: 9
GPU model and memory: GTX 980 4GB
Exact command to reproduce:

Describe the problem
I am building a pipeline to feed a DNNRegressor model and the issue is that the input pipeline becomes extremely slow after the first few 100's steps.
I have thousands of TFRecord files of varying size (from 10MB to 3GB in size). Each input has 1038 columns.
I am trying to create batches of size 512 with 1 "row" from each TFRecord file (each file has correlated data so I need 1 line from each of the 512 files being interleaved to have a "shuffled" batch). To do this,
I am using the Data.interleave method which seems perfect for my case.
Problem is the input is super fast at the start but gets painfully slow after the first 100's of steps.
CPU usage goes quickly from 100% at the start to near 0% as the pipeline becomes slower. However the disk read speed remains always at  > 60 MBps. What is the issue ? Are the smaller files straggling the pipeline in someway ?
I have tried using parralel interleave but that was even slower
Source code / logs
def parse_tf(example):
    with tf.device('/cpu:0'):
        parsed_features = tf.parse_example(example, feature)
        feats = parsed_features
        labels = parsed_features.pop('labels')
        return feats, labels

def tf_input_fn(batch_size):
    with tf.device('/cpu:0'):
        files = os.listdir('D:/data/data')
        files = ['D:/data/data/' + file for file in files]

        dataset = (tf.data.Dataset.from_tensor_slices(files)
                   .interleave(lambda x:
                               tf.data.TFRecordDataset(x),
                               cycle_length=batch_size, block_length=1, num_parallel_calls=8)).batch(batch_size).map(
            parse_tf, num_parallel_calls=1)

        dataset = dataset.prefetch(100)
        return dataset

if __name__ == "__main__":

    batch_size_ = 512

    data = tf_input_fn(batch_size_)
    data_next = data.make_one_shot_iterator().get_next()
    ctr = 0
    with tf.Session() as data_sess:
        data_sess.run(tf.global_variables_initializer())
        tld_start = dt.datetime.now()
        try:
            while True:
                tld_out = data_sess.run(data_next)
                ctr += 1
                if ctr % 100 == 0:
                    tld_end = dt.datetime.now()
                    print("Time for 100 steps: " + str(tld_end - tld_start))
                    tld_start = dt.datetime.now()
                    ctr = 0
        except tf.errors.OutOfRangeError:
            print("Done")

Logs:
Time for 100 steps: 0:00:04.547647
Time for 100 steps: 0:00:03.132636
Time for 100 steps: 0:00:02.839416
Time for 100 steps: 0:00:02.639220
Time for 100 steps: 0:00:02.492228
Time for 100 steps: 0:00:01.991023
Time for 100 steps: 0:00:12.380473
Time for 100 steps: 0:00:29.162056
Time for 100 steps: 0:00:23.747592
Time for 100 steps: 0:00:28.041797
Time for 100 steps: 0:00:28.309055
Time for 100 steps: 0:00:26.240207
Time for 100 steps: 0:00:27.894402
Time for 100 steps: 0:00:25.832465
Time for 100 steps: 0:00:27.795538
Time for 100 steps: 0:00:28.219248
Time for 100 steps: 0:00:26.962029
Time for 100 steps: 0:00:24.568246
Time for 100 steps: 0:00:29.052262
Time for 100 steps: 0:00:27.003928
Time for 100 steps: 0:00:27.839937
Time for 100 steps: 0:00:28.380154
Time for 100 steps: 0:00:27.109850
Time for 100 steps: 0:00:28.234840

facing the same issue on distributed set up in r1.12 @mehdi-beng. CPU utilization and Global Steps/sec drop after some initial steps in my case.

facing the same issue in my distributed implementation

@sahilbadyal Hope we can get some help. I have 750 Million inputs I want to train on. At this speed it will take months for 1 epoch.

@rohan100jain can you check this out if you have the time please. Thank you !!

I am doubtful this is a bug.
        data_sess.run(tf.global_variables_initializer())

You are creating a new op into the graph at every iteration, that must be why it slows down. Store the initializer as init_op, for instance, and just execute it without re-creating new ops.

@sahilbadyal I got it fixed. For me it was the HDD read speed not keeping up and becoming bottleneck.
The TFRecord format is pretty big on volume, try using : tf.io.TFRecordCompressionType.GZIP) when creating your TFRecords.
The file will be 1/5th of the size once compressed making it easier for the HDD. The CPU will take the additional load to decompress each line. But CPU is harder to bottleneck than the HDD read speed. Good luck !

Closing this issue since its resolved. Feel free to reopen if have further problems. Thanks!


Conveting svg to png takes very long

Hi,
There are SVGs that take very long to convert to PNG using Sharp.
In this example is takes about 21 seconds.
I know it's a longshot - but is there anything that can be done to speed it up?
Today I use Puppeteer on the server that uses canvas to render the PNGs. It takes about 7 seconds to render about 40 svgs in parallel 😃  - But I really want to replace puppeteer (it has it's own issues...)

The underlying librsvg library takes about 11 seconds to render this SVG:
$ time rsvg-convert test.svg -o out.png

real	0m10.725s
user	0m27.048s
sys	0m2.335s

Did you see the compressionLevel option of png()? Perhaps try a lower value than the default of 9 to speed up the PNG compression part of this scenario.
https://sharp.pixelplumbing.com/api-output#png

Thanks for the suggestion!
I just tried all compressionLevels from 0-9. Unfortunately it makes no difference

To cap memory usage, libvips renders SVG images via librsvg in 2000px high partial strips.
This test case is 7500px high, so will result in four calls to librsvg to render the whole image. The SVG contains five 5000px Gaussian blurs, which will probably be the slowest part, and due to their size will span multiple strips so pretty much the whole SVG has to be rasterised each of those four times.
If you're able to reduce the size of the blur then if should be possible to make this sample input SVG faster in both librsvg and Chrome.

Took me a while to make the modifications, but your comment was very helpful!
I found out that I can reduce the size of the filters to exactly mathc the size of the relevant elements (which are much much smaller than 5000px)
By doing so it reduced the time to about 2-3 seconds!!!
Seems like it's bye bye puppeteer after all 😄
Thanks a lot for the help!


Portfolio Website

Responsive portfolio website using HTML, CSS and JavaScript.

i want to work on it

i want to work on it

sure:)


Add goto def for enum variant field

Closes #4764. I'm not familiar with ra codebase, there might be better ways to do that :smile:

The test looks right to me!
However, the implementation I think should have a slightly different semantics. BindPats like Foo { field } have two meanings:

First, they introduce a new "local' name
Second, they refer to an existing field.

So, I think we should add FieldShorthand { local: Local, field: Definition }, variant to NameClass (the same as in NameRefClass).

Thanks for the help @matklad, i've added FieldShorthand variant as you suggest but i have doubt about into_definition and definition methods. definition returns local definition like NameRefClass and into_definition returns referenced field definiton is this semantically correct?

bors r+
Thanks!


Ionic: App can't find GoogleService-info.plist

Expected behaviour
The app should build normally and can find the GoogleService-info.plist.
Actual Behaviour
The app does not build and the GoogleService-info.plist could not be found.
Reproduce Scenario (including but not limited to)
When I try "ionic build ios". I get this error:
CopyPlistFile /Users/gio/app/Project/platforms/ios/build/emulator/Project.app/GoogleService-Info.plist /Users/gio/App/App/Project/platforms/ios/Project/Resources/GoogleService-Info.plist(1 failure)Error:
Error code 65 for command: xcodebuild with args: -xcconfig,/Users/gio/app/Project/platforms/ios/cordova/build-debug.xcconfig,-workspace,Project.xcworkspace,-scheme,Project,-configuration,Debug,-sdk,iphonesimulator,-destination,platform=iOS Simulator, name = iPhone SE,build,CONFIGURATION_BUILD_DIR=/Users/gio/app/Project/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Users/gio/app/Project/platforms/ios/build/sharedpch
Note that CopyPlistFile /Users/gio/app/Project/platforms/ios/build/emulator/Project.app/GoogleService-Info.plist /Users/gio/**App/App/**Project/platforms/ios/Project/Resources/GoogleService-Info.plist(1 failure)
This path is not correct and I have no idea why it is calling that path.
Note that CopyPlistFile /Users/gio/app/Project/platforms/ios/build/emulator/Project.app/GoogleService-Info.plist /Users/gio/**App/**Project/platforms/ios/Project/Resources/GoogleService-Info.plist(1 failure)
The above is the correct path.
Platform and Version (eg. Android 5.0 or iOS 9.2.1)
IOS 10.x.x
(Android) What device vendor (e.g. Samsung, HTC, Sony...)
IPhone
Cordova CLI version and cordova platform version
Cordova: 7.0.1
Cordova iOS: 4.4.0
Plugin version
phonegap-push-plugin 2.0.0
Logs taken while reproducing problem
CopyPlistFile /Users/gio/app/Project/platforms/ios/build/emulator/Project.app/GoogleService-Info.plist /Users/gio/App/App/Project/platforms/ios/Project/Resources/GoogleService-Info.plist(1 failure)Error:
Error code 65 for command: xcodebuild with args: -xcconfig,/Users/gio/app/Project/platforms/ios/cordova/build-debug.xcconfig,-workspace,Project.xcworkspace,-scheme,Project,-configuration,Debug,-sdk,iphonesimulator,-destination,platform=iOS Simulator, name = iPhone SE,build,CONFIGURATION_BUILD_DIR=/Users/gio/app/Project/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Users/gio/app/Project/platforms/ios/build/sharedpch

Does this mean IOS app with phonegap-plugin-push wouldn't work till 4.4.1 is released? Or is there a temporary way around?

@shyamal890 it works with APNS just great and the workaround I'd suggest is wiping out the platforms/ios directory so the plist doesn't get copied multiple times.

@macdonst: First time when we add platform we get GoogleMacBox error which goes away when we do pod install inside the apple project.  Once that is fixed we need to run cordova ios build --prod which results into the above error.
If I clean and do everything from start I get GoogleMacBox error. Is there a smart way to tackle both issues and build prod version?


Fix the issue in latest which doesn't show line breaks between articles

@miltontony this is the PR for latest listing on HP that I spoke to you about on Friday https://github.com/praekelt/molo-tuneme/pull/21/files

I'm closing this issue as it's been solved in another PR


Host not showing Collective

https://opencollective.com/yofbrc_collective is hosted by https://opencollective.com/yofbrc but it's not showing on the host page.

I just realised this is affecting other hosts, like Gift Collective:

And OCNZ

However OSC and OCF do not appear to be affected.

I'm adding the P1 label because this is affecting multiple hosts and it's right on their front pages

OCEU

@jfdh The fix hasn't been deployed yet, I'll do it this morning

Fix deployed

The issue still appears on OCEU's homepage since yesterday (worked fine for one week) @Betree

@jfdh Thanks for the info, I'm currently investigating https://github.com/opencollective/opencollective/issues/5202. I think both issues come from the same place and are related.

This one is normally fixed with https://github.com/opencollective/opencollective-frontend/pull/7463 (I think this issue and https://github.com/opencollective/opencollective/issues/5202 are the same). Closing but feel free to re-open if you spot it again


re.sub method error during the evaluation

Hi,
While running the evaluate method (for #246), I get an error in my re.sub method for one of the tests --most likely due to a problem with the escape characters. I can replace it with string.replace to solve the problem. However, this branch is already merged. Do you suggest creating a new branch or to leave the corresponding eval columns empty?

Hi @pithysr: Please feel free to open a new PR for the fix.


street orientation selection

I'm working on selection of street orientation. The flow works like this:

allow location, user navigates to target street curb
map zooms to user puck, and orients to heading
user clicks road
road broadens and color changes to indicate selection
road symbology added to show arrows that flow in closest direction to user orientation
button revealed with "flip" icon; when pressed, reverses selected road symbology
user accepts and kicks to survey screen

design

Drawing arrows along a line is not a straightforward task in mapbox gl. I'm using the mapbox streets oneway symbology rendering as a reference, but working to make the arrows much more aggressive so they can be seen on a phone, without being confused for an actual oneway.

I'm experimenting with drawing a opaque circle symbol at the starting curb to indicate to the user where they should go to start, based on the selected orientation.

This shipped!


[5.2] Fixed Request::route() incompatibility with lumen

When using laravel/lumen, calling $request->router($param) causes error Call to a member function parameter() on array as the lumen routes are simple arrays instead of Illuminate\Routing\Route objects.

I guess I don't understand how this relates to Lumen? This is the main Laravel framework. They aren't necessarily totally compatible.


Local backend should expose a shutdown method that can be triggered from outside

Ref https://github.com/fractal-analytics-platform/fractal-server/issues/280
Quote:

Let's collect the different requirements for the local executor and implement the shutdown as part of a bigger local executor effort.

Some brainstorming:

We prepare a new executor based on ProcessPoolExecutor (either on the side of the current ThreadPoolExecutor one, or as a replacement). For each task execution, we write its process ID to a file whenever it starts (and clean it up when the function ends). When user requests the shutdown of a job, we read all PIDs and send a os.kill for each one of them. If everything works as expected, the standard exception handling kicks in and the job is marked as failed with an appropriate log.
We stick with the current threads-based local executor, and add an auxiliary thread as we already do for the SLURM executor. This thread would monitor the presence of a shutdown file (the same as for the SLURM executor), and execute a callback function when the file is there. Unclear for the moment: what would this callback function be? Ideally we'd call https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.Executor.shutdown, with the appropriate values of wait and cancel_futures.

Let's start with testing option 2 (an auxiliary thread, as in the SLURM executor)

cc @fdsteffen
Follow along at this issue for any developments on shutting down workflows in the local executor :)

Minimal working example on how to kill processes of a ProcessPoolExecutor:
import os
import signal
import time

from concurrent.futures import ProcessPoolExecutor
from concurrent.futures.process import BrokenProcessPool

def task(x):
    time.sleep(x)
    return x

class MyPoolExecutor(ProcessPoolExecutor):

    def terminate_processes(self):
        for pid in self._processes.keys():
            os.kill(pid, signal.SIGTERM)
        return

if __name__ == "__main__":
    with MyPoolExecutor() as executor:
        res = executor.map(task, range(5))
        time.sleep(1)  # make one task terminate correctly
        executor.terminate_processes()

        while True:
            try:
                next(res)
            except BrokenProcessPool:
                pass
            except StopIteration:
                break

An experimental version of the new backend is now available in the 2.2.0a0 fractal-server release (thanks @ychiucco!). You can try it out with the configuration variable FRACTAL_BACKEND_RUNNER=local_experimental.
The new backend is slightly different from the original local backend, in that it uses N processes (rather than N threads) when running a task in parallel over N images. This made it easier to implement the shutdown feature.
Because of this difference, the backend is currently considered experimental - and feedback is welcome! cc @jluethi, @fdsteffen
Useful information to include:

Do you observe anything unexpected when running a successful job?
Do you observe anything unexpected when running a job that fails due e.g. to some task error?
Can you successfully shutdown a job (e.g. from the fractal-web interface)?
What operating system and Python version are you using?

After a first round of tests, and if we hit no relevant issue, the goal is to replace the current local backend with this new one.

Awesome, thanks a lot @tcompa & @ychiucco ! Looking forward to testing it!

This is fantastic @tcompa & @ychiucco! Many thanks!
On some initial tests with the local_experimental backend I can confirm that:

My previous workflow still runs successfully
I did not notice anything special yet regarding task errors. The job fails as expected.
I can shutdown a job via the web interface with the following error log being posted:

JOB ERROR in Fractal job 10:
TRACEBACK:
JobExecutionError

ADDITIONAL INFO:
A process in the process pool was terminated abruptly while the future was running or pending.

Running on macOS 14.5 with python 3.11

That's great to hear, thanks for reporting back @fdsteffen !

cc @fdsteffen @jluethi
fractal-server version 2.2.0 (just released to PyPI), includes a couple of fixes by @ychiucco for the new local_experimental runner:

Not all children processes were being terminated correctly - see #1560. It's likely that in previous versions the shutdown operation was not killing all task processes.
We now made it clear that the local_experimental backend cannot be used for legacy projects (the ones marked as "V1", which were the default when using fractal-server versions before 2.0.0) - see #1568.

Any additional test with the new version would be appreciated.


Custom post/page for resource and events.

We also have an event and resource page. We need to store that related information on the backend, by default WordPress doesn't have that feature.
Acceptance criteria

[x] I can store event and resource  info on WordPress via admin UI

Tasks

[x] Do an analysis of how we can store data on WordPress for events and resources.
[x]  Implement and test.

@arjun-gautam  Closing since it was already implemented.


Website Guide: Adding Flutter to an app within a ListView or RecyclerView

Publish a website guide that explains how to use Flutter within a ListView and RecyclerView in Android.
This guide is essentially a specialization of the FlutterView guide (#21847).  You may choose to combine them, or draft them separately.  The fundamental integration of the FlutterView will be the same - the difference in the case of a ListView and RecyclerView is that developers must go one step further to place their FlutterView within a ListAdapter or RecyclerView.Adapter.
Please ensure that this guide is written against the newest version of the Android embedding.

I'm not as familiar with how this is on the Android size, but have we measured out performance (particularly memory usage) for this scenario?

No measurement as far as I'm aware.


Is the library compatible with AMD MI50 card that supports MxGPU feature？

MI50 card support MxGPU[1]. So I wonder is the library compatible with MI50 card.
If not[2]? Is that because of the opensource is the lite version, not pro.
[1]https://www.amd.com/system/files/documents/radeon-instinct-mi50-datasheet.pdf
[2]"Currently, only AMD S7150 series GPUs are supported."

I second this.
Is there any documentation on how to get MxGPU working on MI25, 50, or 60?
AMD's website seems to be void of relevant information for the above.


Integrate dependency listing with explorer navigation

Currently the Dependencies view does not provide any way of revealing or navigating to items in the list. This requires manual copy+paste of UUIDs into the Explorer tree.
It should be easier to locate items in the Explorer and therefore open them to manage orphans or just view them.

Relates to #2438


variant: fix inconsistent color variable naming

Hi I have noticed the following:
    --MENU-SECTION-ACTIVE-CATEGORY-color:
    --MENU-SECTION-ACTIVE-CATEGORY-BG-color:
    --MENU-SECTIONS-BG-color
    --MENU-SECTIONS-ACTIVE-BG-color:
    --MENU-SECTIONS-LINK-color:
    --MENU-SECTIONS-LINK-HOVER-color:

Some of those have the name SECTION while other are called SECTIONS. Is that on purpose? It seems like a typo to me.
Probably it should be called SECTION?
The above list might be incomplete, I did not check every variable :)
EDIT:
Also, shouldn't --MENU-SEARCH-BOX-color actually be called --MENU-SEARCH-BORDER-color? It modifies the border (that's even what it says in the comment description). I guess that would make more sense? Looks like an oversight to me.

As 3.0.0 is just a day old, I decided to change the name of --MENU-SEARCH-BOX-color to --MENU-SEARCH-BORDER-color

What about the SECTION(S) naming?

See my explaination above. Won't change.

Excuse me, but where, or what is the explanation?

Oh dear. I am messed up. Seems I wrote an explaination this morning but did not hit sent?!? Usually GitHub saves the text, but as I already answered here later, the text is now gone. Okay, let's explain - again - Note to myself: Hit the big green "Comment" at the end...
At first when I started with this theme I felt the same about the SECTIONS vars. Now that I am used to it, the naming makes sense as there can be only zero or one active sections, while you can usually have many sections been displayed.

No issues that happens sometimes! Ty for the explanation.


feat: <HeadCell /> as button

https://github.com/qlik-oss/sn-pivot-table/assets/29652890/a22b14dd-4f8b-4e3d-9a31-f7f8ee7837b8
it also works with custom theme as well, it's just the opacity is so low that you barely notice it
https://github.com/qlik-oss/sn-pivot-table/assets/29652890/eb1a8a1a-e6a8-44c4-9fa2-bb5b6ca27bd6

The hovering color will not work when the background color is dark. Worse case scenario being black. What we should do is identify if the color is a dark color, if so, make it brigther, if not, make it darker. By changing the alpha value.
But for this PR the current solution is good enough. The state logic is what we want.

Can you change the "default" theme in nebula.config.js so that both header.rowTitle.background and header.columnTitle.background is white?

:tada: This PR is included in version 2.2.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Remove recommendation to run old engine

Description
Now that we can deploy SI with SI, we can remove the recommendation to run the old engine. This PR also contains polishing outdated bits of documentation and converts the architecture documentation into something less confusing.

bors cancel


Is it planed to move the database helm chart to this repo?

The oracle docker images repo has a helm chart here for oracle db.
Is there any plan to move it to this repo?

That's a good idea. I'll ask the Database folks to consider it.


could you maybe consider using a lower but sufficient netstandard version instead of 2.0

first let me thank you for the terrific work, i cant imagine how much time you must have spent in making this library.
now to our issue:
some versions ago you switched to .netstandard 2.0 and this forces us to either lose compatibility with lots of devices, or we stick with an older version of the library, not getting access to all improvements and bugfixes that came afterwards.
to my understanding the idea behind .netstandard would be that every version is just an agreement on a set of APIs, where higher versions include a bigger API surface. it is not like with software-versions where higher versions are by design better or more advanced or more performant, its really just an API list that gets longer with each version. so idea would be that a library uses the lowest possible .netstandard-version that supports all APIs and features really used and required by that library.
as far as i can see your bluetooth-library should work fine without restrictions with .netstandard 1.1 or 1.2, making it a lot more backwards-compatible without any need to sacrifice anything. i certainly do not know if you plan to use APIs in the near future that only exist in .netstandard 2.0, but if you dont it would make sense and help us - and probably also others - if you could reduce the .netstandard-version to whatever it really needs to be.
issue we face is that on windows .netstandard 2.0 only exists from fall-creators-update upwards, meaning we immediately lose access to about at least two thirds of devices if we switch to .netstandard 2.0.
your library works impressively well with UWP, but it will take quite a while until all computers will be on that level to support .netstandard 2.0.
so as your library makes no use of the APIs and there is no obvious reason to require .netstandard 2.0 i would ask you to consider adjusting the version to what you really need, and not to whatever version is currently theoretically available.
thanks for your time :)

Sure - I can definitely bring back .net standard 1 in v6 of the library where I have multitargeting.

great! thx

i certainly do not know what future plans you have for the library, but i must admit i do not understand why multitargeting would be a requirement to pick a lower netstandard version. multitargeting for nuget-libraries was invented to enable support for different and not really matching framework-implementations like to support full .net-framework and UWP. ( https://docs.microsoft.com/en-us/nuget/create-packages/supporting-multiple-target-frameworks )
in contrast netstandard is not an implementation at all, but just an agreement on supported APIs, where by definition a lower netstandard-version is a well defined and fixed subset of each higher version. by picking a version, the compiler as well as visual studios intellisense takes care that a developer does not escape the self-imposed version-restriction by using an API thats not part of the contract. but picking a higher version than is required to have access to the APIs used in the code only reduces the number of machines it will run on.
so netstandard 2.0 is no different target to netstandard 1.1 in any way, by targeting 1.1 or 1.0 or 1.2, a library will by design also work perfectly as intended on any machine supporting netstandard 2.0 and above.
i would like to reference this microsoft-documentation-page: https://docs.microsoft.com/en-us/dotnet/standard/net-standard

regarding versioning and how to pick an adequate netstandard-version, the microsoft documentation referenced above says the following:
"In general, we recommend you to target the lowest version of .NET Standard possible. So, after you find the highest .NET Standard version you can target, follow these steps:
Target the next lower version of .NET Standard and build your project.
If your project builds successfully, repeat step 1. Otherwise, retarget to the next higher version and that's the version you should use."
maybe you have other reasons or future plans to really need netstandard 2.0, but if you dont it is really only preventing that great and useful library from running on perfectly capable platforms. netstandard is not like framework-versions where using the latest is a meaningful goal. the version of netstandard really only is meant to declare what set of APIs your code needs to run, and code that uses APIs that are completely covered in the definition of netstandard 1.1 should even in 15 years declare its needs with netstandard 1.1. by needlessly picking 2.0 you currently only demand that a platform supports and implements a ton of APIs that the code in reality does not use or need.

Trust me, I understand all of the points you are making since I've been doing the cross platform thing for a while now.  I have reasons for wanting to push netstandard 2.  Some are political, some are defects that popup through xamarin.

makes sense, thanks for the explanation and your patience!

While I appreciate that you would like to have netstandard 1.  I have to add an annoying little package called Microsoft.NETCore.UniversalWindowsPlatform to get anything to compile properly (netstandard isn't the problem - UWP is which is what you're looking).  The problem is that the difference in target versions also changes this library.  I'm looking into multitargeting with UWP versions as well, but it is likely going to come to the fact that it simply isn't worth it to me.  The fact is, UWP will likely never leave beta in this library due to the way MSFT implemented their crappy API and I've contacted them via several channels without any sort of response.
Sorry.


Examples

Is your feature request related to a problem? Please describe.
I'd like to consume libsqsh in a Qt based application to extract files from squashfs to files and/or memory.
For this reason, I'd like to have it wrapped in a C++ class.
Describe the solution you'd like
Something along those lines with a working .cpp implementation
#ifndef SQSH_FSEXTRACTOR_H
#define SQSH_FSEXTRACTOR_H

#include <QString>
#include <QByteArray>
#include <QList>
#include <QDir>

#include "SqshFSInfo.h" // Include the previously defined SqshFSInfo class

class SqshFSExtractor
{
public:
    SqshFSExtractor(const QString &imagePath);
    ~SqshFSExtractor();

    SqshFSInfo getFileInfo(const QString &filePath) const;
    QList<SqshFSInfo> listFilesRecursively() const; // Recursive listing; like find /
    QList<SqshFSInfo> listFiles() const; // Directory listing, like ls /

    bool extractToFile(const QString &filePath, const QString &outputFilePath);
    bool extractRecursively(const QString &sourceDir, const QString &targetDir);
    QByteArray extractToMemory(const QString &filePath);

private:
    // Add any private members or helper functions here as needed
};

#endif // SQSH_FSEXTRACTOR_H

#ifndef SQSH_FSINFO_H
#define SQSH_FSINFO_H

#include <QString>
#include <QVector>

enum class FileType {
    File,
    Directory,
    Symlink,
    Device,
    Other
};

class SqshFSInfo
{
public:
    SqshFSInfo(const QString &name, FileType type, qint64 size = 0);
    ~SqshFSInfo();

    QVector<SqshFSInfo> getChildren() const;
    QString getName() const;
    FileType getType() const;
    qint64 getSize() const;

private:
    QString name;
    FileType type;
    qint64 size;
    QVector<SqshFSInfo> children;
};

#endif // SQSH_FSINFO_H

Additional context
Unfortunately, I am not able to do this with the current documentation.
Do you think it can be done?
Would you be able to present a sample implementation?

Thanks for your quick response. You are right about extractRecursively, it should be done differently.
To get things started, could you point me at working C examples for how to:

Extract one (small-ish, think icon) known file to memory (following symlinks if needed)
List all files in the root directory

That would be a tremendous help to get me started. Thank you!

Thanks for the input. That's a great way to improve the documentation!

Extract one (small-ish, think icon) known file to memory (following symlinks if needed)

sqsh_file_content(archive, path) will do exactly that. It is one of the lesser tested areas in libsqsh, so if you find issues, I'm eager to fix them!

List all files in one defined directory (e.g., the root directory)

I just wrote an example for this use case. Have a look in examples in the main branch.

Thanks @Gottox. Very useful indeed!
I am having issues building it. Using this
cmake_minimum_required(VERSION 3.0)
project(libsqsh-examples)

# Set the C++ standard to C++11 or higher
set(CMAKE_CXX_STANDARD 11)

# Find libsqsh using pkg-config
find_package(PkgConfig REQUIRED)
pkg_check_modules(LIBSQSH REQUIRED libsqsh)

# Add the include directories for libsqsh
include_directories(${LIBSQSH_INCLUDE_DIRS})

# Build the 'list_files' executable
add_executable(list_files list_files.c)
target_link_libraries(list_files ${LIBSQSH_LIBRARIES})

# Build the 'list_files_ll' executable
add_executable(list_files_ll list_files_ll.c)
target_link_libraries(list_files_ll ${LIBSQSH_LIBRARIES})

I can get it configured, but then the build fails with
% make
[ 25%] Building C object CMakeFiles/list_files.dir/list_files.c.o
/tmp/libsqsh/examples/list_files.c:20:59: error: too many arguments to function call, expected single argument 'path', have 2 arguments
        struct SqshArchive *archive = sqsh_archive_open(argv[1], NULL);
                                      ~~~~~~~~~~~~~~~~~          ^~~~
/usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
#define NULL    ((void *)0)
                ^~~~~~~~~~~
/usr/local/include/sqsh/sqsh_chrome.h:62:21: note: 'sqsh_archive_open' declared here
struct SqshArchive *sqsh_archive_open(const char *path);
                    ^
1 error generated.
*** Error code 1

A few bits and pieces of the API are currently unstable, so if you run into problems, either wait for the 0.6.0 release or use the main branch for now.

Realized that I had an install from yesterday night; reinstalled the library and the example compiles.

I can confirm that the example works for me.
% mksquashfs squashfs-root test.sfs -comp zstd

% /tmp/libsqsh/examples/build/list_files test.sfs
.DirIcon
AppRun
appimagetool.desktop
appimagetool.png
usr

% /tmp/libsqsh/examples/build/list_files_ll test.sfs
.DirIcon
AppRun
appimagetool.desktop
appimagetool.png
usr

The only thing that does not work yet is extracting the data if the file is actually a symlink. Can you point me to a solution for this?
Thanks again for your help, which is tremendous.

I think that's an actual bug. At least that's a blind spot in the unit tests.

Should I open a new issue for it?

Yes please! - I created a unit test for following symlinks, but I cannot reproduce the issue at the moment.

At least the high level API (sqsh_file_contents, sqsh_directory_list) should work transparently on symlinks.


Request Always Unauthorized

I created a non-eloquent JSON API endpoint following the manual, and no matter what I get 403 Unauthorized back from it.  I've created Policies for both the resource and the classes being represented by the resource, but no matter what, 403 Unauthorized.

Hi. Sorry to hear you're having problems. There's nothing specific about non-Eloquent resources that affects authorization, so your problems are unrelated to this package.
Have you registered the policy?
https://laravel.com/docs/10.x/authorization#registering-policies
It would also be worth debugging the method on the policy to see if it is called.

Closing due to inactivity.


Should have ability to set default time zone for events

Describe the bug
Right now, each time you create an event, if you are not in the central time-zone, you must change the time zone.  Should either default to the time-zone of the organization or user or have the ability to put in a custom setting of the desired default time zone.
Screenshots

Hi @dwhitig, good issue to bring up.  I was able to update the default value on the Instance Time Zone field.

Sounds like this is resolved


Decimal doesn't support non-integer numbers

The decimal validation action will only pass on integers, and not on decimals that aren't integers.
import * as v from 'valibot';
const Schema = v.pipe(v.string(), v.decimal());
const result = v.safeParse(Schema, "2.2");
console.log(result); // success: false (I think it should be true)

I've seen issue #665 on here where someone raised the same thing, which had a explanation that valibot actually means "base ten integer" instead of decimal. I want to make a case that we should consider changing this for the following reasons:

It's really useful to be able to validate that a string is a base ten number including non-integers. We do it quite a lot in our codebase. For example we pass around certain number values (like currencies) as strings to avoid floating point issues, and then want to validate they are actually numbers on the other side.
There isn't another word I can think of for the above other than decimal, without having a baseTenNumberIncludingNonIntegers or something else really long.
I think most people would understand decimal to include non-integers and be confused that we are using it to mean something else. This is anecdotal but actually most of the time I hear the word decimal used it is referring to non-integers.
The documentation for the action links to the wikipedia article as it's only definition, but the wikipedia definition explicitly includes non-integers in it's opening line. This was confusing to me when I read the docs to try and understand why my validation was failing. "The decimal numeral system is the standard system for denoting integer and non-integer numbers."

If we want to keep the behaviour of decimal as it is (and backwards compatibility is a great reason) I think the documentation should be updated to be clear it only will validate base ten integers and remove the link to the wikipedia article. It would be nice to add a baseTenNumberIncludingNonIntegers action in this case, hopefully someone can think of a better name though.
Otherwise I propose that decimal is updated to pass on non-integers, and we add a new validation action for the old behaviour called something like baseTenInteger.
I'm happy to do the work and make a pull request for either if you agree with one of the above.

I agree that the current implementation of decimal can be confusing. Maybe we should rename decimal to digits and add a new decimal action that accepts any base ten number (even non-integer).

Was fixed by https://github.com/fabian-hiller/valibot/pull/823


feat: library upgrade

feat: library upgrade

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


Pass AuthHeaders from beholder config to to loop/Tracing

Pass AuthHeaders from beholder config to to loop/Tracing
This is needed to enable CSA based authentication for loop/Tracing

@patrickhuie19 @jmank88: thanks for the approval. Could you merge it as well? We don't seem to have the permissions.


Home page "Featured events" list can't be directly refreshed

Tested on Galaxy S8 (8.0) and iPhone 7+ (10.3.1)
It's not possible to refresh the Featured events list on the home page by dragging from top to bottom. even opening "View All" and attempting to refresh doesn't work.
To trigger a refresh, you need to go to the Events tab and refresh there.
To reproduce:

Open the app and take note of the featured events on the home page
Make a change to the Feature events list on Contentful (add/remove events, make sure the changes appear in the top 6 items in the list)
Drag down from the top of the page

It doesn't refresh

Open View All and drag down from the top of the page

It doesn't refresh

Hit Back, switch to the Events tab and refresh page
Switch back to Home tab

Featured events have been updated

It is possible to refresh, it's just a bit awkward so logging this an enhancement.

Makes sense to have pull to refresh on the home too if possible.

We will cover this as part of https://trello.com/c/VLDK9GUW/196-refreshing-content


Add semantic image search

Hello again,
one could add the "Semantic image search", because it's amazing. It let's user search for content in images (not limited to 1000 classes). See this nice video to show it's power.
Librephotos has it (Source) and I started working on it for Photoprism here. No other offers this feature so far (as far as I know).
Cheer
tknobi

Since it's an awesome (and complicated) feature, they will tell you in the docs 🙂  No need for code scan.

Haha nice. Are there other terms used for the same functionality?
Does fuzzy search convey the same meaning?

fuzzy search usually means that you can type 'rise' and get sunrise in your results too. It's a lot as complicated or hard to implement as semantic which needs ML libraries to convert your writings in something generic and search in indexed db.


How to testing react redux hook?

I can't write test for react redux hook, I use Jest and Enzyme

The issue tracker here on GitHub is reserved for bug reports and feature requests. For usage questions (which is what I believe this is), please use Stack Overflow or Reactiflux where there are a lot more people ready to help you out. Thanks!

Lack of documentation is not a question, but an issue. We can't start using hooks if we can't test them. So it's just a feature request - give us any kind of documentation about testing hooks.

@PinkaminaDianePie : testing React hooks is a React question, not a React-Redux question.  I'm not saying we shouldn't have docs for that at all, but if you have questions on how to test React hooks or components that use React hooks, there's plenty of other information available out there already.


Review scoring code & dataset setup

I retroactively looked through PR #618 and also made some edits to the dataset setup readme. Specifically,
Dataset

Changed all dataset sizes in the dataset setup readme to report apparent sizes via the --apparent-size option for du. This should make it more system-agnostic (e.g. ignore block sizes) when verifying whether the downloaded dataset is complete and consistent. @priyakasimbeg could you verify that the new sizes are consistent with your datasets?

Rules

Clarified in the scoring section of the rules that we are only using the held-out workloads "if they exist" for this base fixed workload.

Scoring code

Removed the workload flag in generating_held_out_workloads.py as it seemed irrelevant.
It seems that the current test_scoring_utils.py is broken:

The imports from scoring.scoring import NUM_TRIALS and from scoring.scoring import NUM_WORKLOADS are failing for me. I think we should instead import from scoring import performance_profile and modify the rest of the code accordingly.
I had to modify the scoring/test_data/ directory to get (some) tests to pass. E.g. I had to restructure them in a shared study folder.
Now 4/5 tests pass, but the performance profile fails, since there is no "base_workload" defined for the mnist workload (used in the test_data/ (see https://github.com/mlcommons/algorithmic-efficiency/blob/11b11ec8160b0ca5b1503d85125420247fc58d16/algorithmic_efficiency/workloads/workloads.py#L134-L149).
Maybe, since we plan to upload the logs of the prize_qualification_baselines, we can just use those as our test data instead?

Other

Other misc minor modifications, e.g. to the Getting Ready document.

I found 2 small discrepancies:

imagenet/jax has 1113 files  vs 1111 files  on mine and your system respectively
librispeech 388 GB vs 387 GB on mine and your system respectively (the number of file is the same).

At this stage we should just treat the output of the dataset up as the source of truth, so I will update the imagenet/jax and librispeech datasets on my VMs (unless I find some other bug in the process).

Regarding testing, thanks for looking at the test for the scoring utils. I will address remaining issues in a follow up PR for testing scoring code.

I found 2 small discrepancies:

imagenet/jax has 1113 files  vs 1111 files  on mine and your system respectively
librispeech 388 GB vs 387 GB on mine and your system respectively (the number of file is the same).

At this stage we should just treat the output of the dataset up as the source of truth, so I will update the imagenet/jax and librispeech datasets on my VMs (unless I find some other bug in the process).

Regarding librispeech: I forgot to add the --apparent-size option for the du command in the readme for librispeech (but used it), perhaps this is the confusion. With this option, I get 387 GB and it also exactly matches what you reported for each individual folder:
Yours:

Mine:

Regarding imagenet/jax: I am not sure where the difference is coming from. For both the imagenet2012 and the imagenet_v2 folders there are always 3 files (dataset_info.json, features.json, labels.labels.txt) plus the tfrecord fils (64 validation, 1024 training, and 16 test). This is a total of 1110. Then I also have a metadata.json file in the .config folder in imagenet_v2 making it a total of 1111 files.


chore(ci): run unit-tests in parallel with lint

Currently unit-tests ci is starting after lint succeeded. Given that both checks are required and  each of those steps takes around 3 min to pass, we can make them run in parallel to speed up ci time.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 45.37%. Comparing base (2469e7a) to head (4a3f874).
Report is 181 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3700      +/-   ##
==========================================
+ Coverage   44.83%   45.37%   +0.53%
==========================================
  Files         265      281      +16
  Lines       14620    16042    +1422
==========================================
+ Hits         6555     7279     +724
- Misses       7313     7914     +601
- Partials      752      849      +97

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Rustup

@bors r+

:pushpin: Commit 309133a01f842d9fb3b348ae3c7b283370d2c62e has been approved by RalfJung
It is now in the queue for this repository.

:hourglass: Testing commit 309133a01f842d9fb3b348ae3c7b283370d2c62e with merge f2f8b98bd12e4fd6ad1d9ec1a58b80216fab2ecb...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing f2f8b98bd12e4fd6ad1d9ec1a58b80216fab2ecb to master...


Update API doc with usage examples

Description
Update API doc with usage examples
Update README to include adding dependencies to Package.swift
Update README to reference the fact that logging is to stdout
Motivation and Context
To make it easier for users to use HeliumLogger.
How Has This Been Tested?
All usage examples which have been added to the API doc have been tested locally.
Checklist:

[x] I have submitted a CLA form
[x] If applicable, I have updated the documentation accordingly.
[x] If applicable, I have added tests to cover my changes.

Codecov Report

Merging #59 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #59   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           2      2
  Lines         149    149
=====================================
  Hits          149    149

Flag
Coverage Δ

#HeliumLogger
100% <100%> (ø)
:arrow_up:

Impacted Files
Coverage Δ

Sources/HeliumLogger/HeliumLogger.swift
100% <ø> (ø)
:arrow_up:

Sources/HeliumLogger/HeliumStreamLogger.swift
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


how to zoom out from camera preview

i don't want zoomed image.
please give some solution how to do zoom out in camera preview.
thanks in advance.

@aviontechnology hi! have you found a solution to your problem?


How to remove a particular class samples from training?

I have six classes in my dataset and is in VOC format. I want to use only 5 classes to train the network Faster RCNN. How do I specify this without changing the dataset?

You may set the classes from the config, by passing classes=() in data.train, data.test, and data.val

You may set the classes from the config, by passing classes=() in data.train, data.test, and data.val


"The invoked member is not supported in a dynamic assembly" error

(this really is #67 but I used 68 in the commit message)


chore(deps): bump https://github.com/zeebe-io/zeebe-tasklist-helm to 0.0.4

Update zeebe-io/zeebe-tasklist-helm to 0.0.4
Command run was jx step create pr chart --name zeebe-tasklist --version 0.0.4 --repo https://github.com/zeebe-io/zeebe-full-helm.git

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign salaboy
You can assign the PR to them by writing /assign @salaboy in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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


variant synchronisation delete and add image url, leading to image deleted on CDN

The synchronisation has deleted and added an image url. The side effect is that the image is deleted in the CDN and is lost.
The events:
{
    "_id" : [...]
    "topic" : "products",
    "events" : [
        {
            "event" : {
                "type" : "ProductAttributeChanged",
                "productId" : "<product-id>",
                "variantId" : 1,...
            }
        },
        {
            "event" : {
                "type" : "ProductAttributeAdded",
                "productId" : "<product-id>",
                "variantId" : 1,...
            }
        },
        {
            "event" : {
                "type" : "ProductAttributeAdded",
                "productId" : "<product-id>",
                "variantId" : 1,...
            }
        },
        {
            "event" : {
                "type" : "ProductImageRemoved",
                "productId" : "<product-id>",
                "variantId" : 1,
                "imageUrl" : "<image-url>",...
            }
        },
        {
            "event" : {
                "type" : "ProductImageAdded",
                "productId" : "<product-id>",
                "variantId" : 1,
                "image" : {
                    "url" : "<image-url>",
                    "dimensions" : {
                        "w" : 0,
                        "h" : 0
                    }
                },...
            }
        }
    ],...
}

@PhilippSpo It happened again that a live project lost images due to this issue.

The problem here is that the tool provides a default dimension of x:0 and y:0 when transforming from Csv to JSON. And this results in a difference why the image is deleted and readded.

@hajoeichler right, I thought it was something like that. What should we do then?

Has this been fixed along with https://github.com/sphereio/sphere-node-sdk/issues/114 ?

This has been fixed in the SDK, but the csv-sync needs to be updated to use the new SDK version yet.

now it is fixed with the v0.8.0 release

:trophy:


Add caller capability

This pull request adds the capability of adding file and line number to the logger. Use
ShowCaller(true/false) to enable/disable it.

closing due to inactivity and failed CI.

@aybabtme this failed due to travis. WE should consider reopening:
Cloning into '/home/travis/gopath/src/github.com/logrus/logrus'...
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/logrus/logrus/'
package github.com/logrus/logrus: exit status 128

@apriendeau travis failed because the code is incorrect.

Well the logs are very vague and not useful. @aybabtme are we okay with the implementation because I will fix the import paths if we are.

@apriendeau the proposed change in this PR breaks existing users and is larger than strictly necessary. I'm not personally in favor of merging it.


Add acknowledgement in README

This is to acknowledge the designer who made the icons used in this application.

Pull Request Test Coverage Report for Build 399

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 87.85%

Totals

Change from base Build 396:
0.0%

Covered Lines:
2885

Relevant Lines:
3284

💛  - Coveralls


3-update-dwcj-install-bbj-lib-jar

added current dwcj-install-bbj-lib-0.1.8.jar to lib directory.
added .idea folder to .gitignore

I cloned a copy of dwcj-install-bbj-lib, did a mvn clean install on it so my local repo had that version available.
I added this to the lib subdirectory.
I deleted the old version, since I forgot it in the first commit I did it in the second commit.
no code changes.

@MatthewHawkins could you please test this change and see if this is breaking anything for you ?