Remove unused packages for 1GB SD-Card

I've managed to reduce the size of the latest musicbox_v0.7.0RC4 image so that it fits on a 1 GB sd card. The new image is roughly 860 MB and when loaded onto the sd card and resized to the full size 160 MB free space are available.
These are the steps to remove the unused packages (mainly command line and development packages)
apt-get --purge remove mc mc-data xserver-common x11-xkb-utils xkb-data libxkbfile1 dpkg-dev groff-base
apt-get --purge remove libaspell15 libhunspell-1.3-0
apt-get --purge remove man-db debian-reference-en debian-reference-common
apt-get --purge remove libicu48
apt-get --purge remove binutils cpp cpp-4.6 gcc-4.6-base gcc-4.7-base libc-dev-bin libc6-dev
apt-get --purge remove make m4 autotools-dev
rm -R /usr/share/man/*
rm -R /usr/share/doc
Maybe its possible to integrate this into the build script so that the new images can be directly loaded onto smaller sd cards.

Yes this sounds good in theory.
However, I have been toying with spotify-connect-web and it seems that relies on a rather large (150mb+) chroot environment in order to provide rpi1 support. That would put a pretty big nail in the 1GB SD card coffin. Personally, I think people would prefer connect support, you don't see sd cards in shops anymore and I've had no other comments about shrinking it back down. Im not sure what's best here.

I know that as development continues, it might not be possible to put everything on a 1 GB SD card anymore.
I still have a few 1GB SD cards in my drawer that cannot be used for any other purposes as they are so small... With this patch I don't need to get another bigger card for the current distribution of pimusicbox. Maybe others are in the same situation, so I thought I share my approach.

@kingosticks has there been any thought into librespot as opposed to spotify-connect-web? If so, does it suffer from the same chroot env problem?
I've seen a fair few people pulling down pre-compiled binaries for librespot from: https://github.com/herrernst/librespot and installing alongside the current version of musicbox for spotify-connect support.

You would have to install old versions of librespot as the latest ones
require a newer version of libc than what is available in wheezy. And older
versions are getting less and less likely to work since there have been a
few Spotify changes that have required librespot updates/fixes in the last
few weeks in particular.
So, 0.7 will probably get spotify-connect-web, but it'll have to be
downloaded and installed at runtime (rather than shipped) since the chroot
is massive. They already have a script to automate that.
But going forward it'll be librespot.
On 23 Jun 2017 3:14 a.m., "Amir Zarrinkafsh"<EMAIL_ADDRESS>wrote:

@kingosticks https://github.com/kingosticks has there been any thought
into librespot as opposed to spotify-connect-web? If so, does it suffer
from the same chroot env problem?
I've seen a fair few people pulling down pre-compiled binaries for
librespot from: https://github.com/herrernst/librespot and installing
alongside the current version of musicbox for spotify-connect support.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/pimusicbox/pimusicbox/issues/426#issuecomment-310551947,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA5DqA9Zq0XhYycSFAckvhF0_dkfK0t_ks5sGx-ZgaJpZM4NshyB
.

And your answer there shows my info is very outdated. No reason to not use librespot now. I knew there was a good reason I hadn't released 0.7final yet!


[AGPUSH-2159] Create Push Notification Sender Kafka Producer.

where is the consumer for that ? :)

@matzew  we wont have a consumer, Dimitra is working on streams [AGPUSH-2163] that work on this topic.

ah
ok
we than should not yet merge this ;-) since that guy now stipps all push :)

@matzew @polinankoleva that relies on this to have a topic to read from, which is why I haven't done the PR yet. But if we want to merge that first I can go ahead.

@matzew  What's the problem exactly with the merge? I also do not understand.

What's the problem exactly with the merge? I also do not understand.

@polinankoleva when this is merged, it stops sending push notifications to the 3rd party, since that happens in the EJB

@polinankoleva can you pleaes rebase this ?

Added to another pull request


Can’t activate the low bandwidth mode on Linux

Describe the bug
When I try to enable the low bandwidth mode during streaming with the upper menu, it goes directly to the step "disable low bandwidth mode"
System

OS: Fedora
OS Version: 32
Environment: gnome
Application: app image extracted
Application Version: 5.0.709

Configuration

The user is in input group ? Don't know yet
The environment uses Xorg ? Xorg
VA API detects H264 ? And H265 ?

VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG4Simple            : VAEntrypointVLD
      VAProfileMPEG4AdvancedSimple    : VAEntrypointVLD
      <unknown profile>               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointVLD
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD

To Reproduce
Steps to reproduce the behavior:
No specific thing
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

Hi! I let you check our tutorial here which explains how to understand the vainfo.
With what you gave us, your GPU does not support the H265/HEVC protocole. The low bandwitch option is actually using the H265 against the H264 which give better results (understand less artefacts) for the low bitrates. Since your GPU does not support it, you can't use it.
Feel free to open this issue again if you have any question. Cheers!


Discuss what path to take for app development: Vallejo fork or separate deal?

Vallejo is a django tool that Mollie found out about at CFA which solves a similar problem (managing a variety of contacts and cases, logging touches with them, and then marking them complete):  https://github.com/codeforamerica/vallejo-css-toolkit
(The alternative is whipping up something from scratch, most likely.)
I think this requires a conversation with some django-comfy folks about adapting this to our needs and how much of the core engine and wiring we'd have to replace.
If it IS adaptable to our needs, it's a great head start!

Or is the District Housing something worth forking? Agree that this should be a priority.

After chatter with @cmgiven @stvnrlly @drownedout @chieflotsadoe we've decided to go with a fork of districthousing -- our reasoning is that code for dc sees slightly more rails people than django people, and it would be cool to have a successful code for dc project beget another project.

So you're not going to fork, you'll start from scratch?

Right now I think I'm leaning slightly toward rolling our own -- Charles pointed out that districthousing is capital b big, and so there might be a lot we would need to shave off and it might wind up being a heavier lift in the long run.
I don't think we should make a final call on this yet though -- interested in what @stvnrlly @cmgiven Charles and Marcus from districthousing think.

Spoiler alert, we're rolling our own. Closing since we're well into rails-ing now.


Bugs in the conda commands

While running the conda virtual environment https://uatg.readthedocs.io/en/latest/installation.html#using-conda-virtualenv-for-python, I came across small typos
"conda create --name  --python=3.7 --yes" should be " conda create --name  python=3.7 --yes"
"conda set --activate-base false" doesn't work. Alternatively, "conda config --set auto_activate_base false" worked

Thank you for pointing out the errors. Sorry about that.
I have already made the corrections and it will be merged to the main branch shortly.
I will close this issue once the merge gets through.

The issue has been fixed in this merge. I am closing the issue.


python311Packages.identify: 2.5.31 -> 2.5.32

Diff: https://github.com/pre-commit/identify/compare/refs/tags/v2.5.31...v2.5.32
Description of changes

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 268823 run on x86_64-linux 1

34 packages built:

pre-commit
pre-commit.dist
python310Packages.fastai
python310Packages.fastai.dist
python310Packages.identify
python310Packages.identify.dist
python310Packages.spacy
python310Packages.spacy-lookups-data
python310Packages.spacy-lookups-data.dist
python310Packages.spacy-transformers
python310Packages.spacy-transformers.dist
python310Packages.spacy.dist
python310Packages.textacy
python310Packages.textacy.dist
python310Packages.textnets
python310Packages.textnets.dist
python310Packages.weasel
python310Packages.weasel.dist
python311Packages.fastai
python311Packages.fastai.dist
python311Packages.identify
python311Packages.identify.dist
python311Packages.spacy
python311Packages.spacy-lookups-data
python311Packages.spacy-lookups-data.dist
python311Packages.spacy-transformers
python311Packages.spacy-transformers.dist
python311Packages.spacy.dist
python311Packages.textacy
python311Packages.textacy.dist
python311Packages.textnets
python311Packages.textnets.dist
python311Packages.weasel
python311Packages.weasel.dist


Support for minSdkVersion 17?

I need to be able to support older devices with sdk version 17. Is it a nonstarter, or is it worth trying?
Using implementation "com.datadoghq:dd-sdk-android:1.3.1"
	Suggestion: use a compatible library with a minSdk of at most 17,
		or increase this project's minSdk version to at least 19,
		or use tools:overrideLibrary="com.datadog.android" to force usage (may lead to runtime failures)

Hi @ehrlichja, our target compatibility was set to API 19 (released 7 years ago, and compatible with more than 98% of all the devices out there).
After a really quick test, it appears that indeed using the library as is will indeed crash on a device running Android 17. We'll check if lowering our SDK compatibility is possible, and we'll get back to you.

Fingers crossed

Hi @ehrlichja , I'm really sorry, but unfortunately, we don't have the resources and time to support such an old version of Android for our SDK right now, and so we won't be lowering our support to version 17.
But since all our code is open sourced, you can make your own fork to add the support to old versions of Android.

Thanks for checking! Do you forsee any problems with using <uses-sdk tools:overrideLibrary="com.datadog.android"/>? I ran it and didn't get any runtime errors, but also didn't see any log messages in datadog.

When I tried doing that, I got a couple of crashes, so I wouldn't advise on doing that blindly in your application. The safest way would be to fork the project and compile it with minSdk=17 and make sure the Android Lint detect all potential issues.
Also try using the Datadog.setVerbosity() method to get information about any potential issue in the logcat.


Changing time_profile and spectral, adding ThreeMLEventModel, add time_dependent

Quick change

It looks like there are currently these errors from static analysis:

you need to add the pylon ignore comments after all Union[] and Optional[] lines in analysis.py and injectors.py.
you still have _window in a bunch of places in CustomProfile
and you have some errors with time_SoB in ThreeMLPsAnalysis

2020-12-12 20:06:29 [INFO]   File:[mla/analysis.py]
2020-12-12 20:06:31 [ERROR]   Found errors in [pylint] linter!
2020-12-12 20:06:31 [ERROR]   Error code: 2. Command output:[************* Module mla.analysis
mla/analysis.py:578:20: E0602: Undefined variable 'time_SoB' (undefined-variable)
mla/analysis.py:578:38: E1101: Instance of 'ThreeMLPsAnalysis' has no 'time_SoB' member (no-member)]
2020-12-12 20:06:31 [INFO]   ---------------------------
2020-12-12 20:06:31 [INFO]   File:[mla/injectors.py]
2020-12-12 20:06:33 [INFO]    - File:[injectors.py] was linted with [pylint] successfully
2020-12-12 20:06:33 [INFO]   ---------------------------
2020-12-12 20:06:33 [INFO]   File:[mla/models.py]
2020-12-12 20:06:34 [ERROR]   Found errors in [pylint] linter!
2020-12-12 20:06:34 [ERROR]   Error code: 2. Command output:[************* Module mla.models
mla/models.py:303:42: E1136: Value 'Union' is unsubscriptable (unsubscriptable-object)
mla/models.py:304:38: E1136: Value 'Union' is unsubscriptable (unsubscriptable-object)
mla/models.py:305:34: E1136: Value 'Union' is unsubscriptable (unsubscriptable-object)]
2020-12-12 20:06:34 [INFO]   ---------------------------
2020-12-12 20:06:34 [INFO]   File:[mla/time_profiles.py]
2020-12-12 20:06:36 [ERROR]   Found errors in [pylint] linter!
2020-12-12 20:06:36 [ERROR]   Error code: 2. Command output:[************* Module mla.time_profiles
mla/time_profiles.py:416:22: E0602: Undefined variable 'time_range' (undefined-variable)]


TS adds unexpected reference to outDir in d.ts

TypeScript Version:  3.6.4
When ts compiles code it adds unexpected reference to outDir which configured in tsconfig.json. E.g. if outDir is set to dist
Code
tsconfig:
{
  // ...
  "outDir": "dist",
}

/// <reference types="dist" />

Expected behavior:
No outDir reference.
Actual behavior:
outDir reference is present in compiled file

Possibly related issues:
https://github.com/Microsoft/TypeScript/issues/30021

How do we reproduce this behavior?

@RyanCavanaugh you can use this repo: https://github.com/SkeLLLa/fastify-metrics.

Pretty sure this is fixed now; we no longer synthesize referenced directives


Integrate changes from the WorldWind Server Kit (WWSK) Explorer

The WorldWind Server Kit is using a modified version of the WorldWind Explorer.  Several improvements were made to the Explorer's functionality.  These include:

Sortable layer list
Layer list sort order persists between sessions
Layer state persists between sessions
The ability to share bookmarks containing the layers and location being viewed
Bug fixes

@zglueck and @Beak-man, thanks for your help and contributions to the Explorer.


Move the general PointSource and ExtendedSource classes to sources.point and sources.extended respectively

Do the same for their sample equivalents.
It was a nice idea structurally to keep them separate, but users expect them to be in the sections with the same name as them and I can hardly blame them.
It is remotely possible that this will break some codes, so this should only be released in a major version change, though the general behaviour of importing ExtendedSource from xga.sources that I normally use will not change.

This gap in the user experience was made apparent by @letokotleto


Cannot auth to registry

I made this docker-compose.yml
db:
  image: mariadb
  environment:
    MYSQL_ROOT_PASSWORD: portus
web:
  build: .
  command: bundle exec rails s -p 3000 -b '<IP_ADDRESS>'
  ports:
    - "3000:3000"
  links:
    - db
    - reg

reg:
  image: distribution/registry
  ports:
    - "5000:5000"

The database is created and migrated, the web server is available on port 3000, the registry is available on port 5000. I added an admin user and added the registry as reg. I added a team and namespace.
docker login localhost:5000 returns:
Username: admin
Password:
Email<EMAIL_ADDRESS>Error response from daemon: no successful auth challenge for http://portus_reg_1:5000/v2/ - errors: []

It appears that there is zero traffic passing between the registry and portus containers. I can exec a shell in portus_web_1 and ping reg just fine, so I don't see where the issue is.
Logs from portus_reg_1 container:
time="2015-07-30T00:54:59.912793031Z" level=info msg="endpoint local-8082 disabled, skipping" environment=development instance.id=a05afaff-52b5-4464-a8c2-39928cdb4469 service=registry version=v2.0.1
time="2015-07-30T00:54:59.912989277Z" level=info msg="endpoint local-8083 disabled, skipping" environment=development instance.id=a05afaff-52b5-4464-a8c2-39928cdb4469 service=registry version=v2.0.1
time="2015-07-30T00:54:59.913092613Z" level=info msg="using inmemory layerinfo cache" environment=development instance.id=a05afaff-52b5-4464-a8c2-39928cdb4469 service=registry version=v2.0.1
time="2015-07-30T00:54:59.913131996Z" level=info msg="listening on :5000" environment=development instance.id=a05afaff-52b5-4464-a8c2-39928cdb4469 service=registry version=v2.0.1
time="2015-07-30T00:54:59.913289812Z" level=info msg="debug server listening localhost:5001"
time="2015-07-30T01:03:37.039504866Z" level=debug msg="authorizing request" environment=development http.request.host="localhost:5000" http.request.id=3e623529-492f-4dd2-8e94-7208e3902527 http.request.method=GET http.request.remoteaddr="<IP_ADDRESS>:43022" http.request.uri="/v2/" http.request.useragent="docker/1.7.1 go/go1.4.2 git-commit/786b29d kernel/3.19.0-25-generic os/linux arch/amd64" instance.id=a05afaff-52b5-4464-a8c2-39928cdb4469 service=registry version=v2.0.1
time="2015-07-30T01:03:37.03969024Z" level=info msg="response completed" environment=development http.request.host="localhost:5000" http.request.id=3e623529-492f-4dd2-8e94-7208e3902527 http.request.method=GET http.request.remoteaddr="<IP_ADDRESS>:43022" http.request.uri="/v2/" http.request.useragent="docker/1.7.1 go/go1.4.2 git-commit/786b29d kernel/3.19.0-25-generic os/linux arch/amd64" http.response.contenttype="application/json; charset=utf-8" http.response.duration=4.704501ms http.response.status=200 http.response.written=2 instance.id=a05afaff-52b5-4464-a8c2-39928cdb4469 service=registry version=v2.0.1
<IP_ADDRESS> - - [30/Jul/2015:01:03:37 +0000] "GET /v2/ HTTP/1.1" 200 2 "" "docker/1.7.1 go/go1.4.2 git-commit/786b29d kernel/3.19.0-25-generic os/linux arch/amd64"

Logs from portus_web_1 container:
=> Booting Thin
=> Rails 4.2.2 application starting in development on http://<IP_ADDRESS>:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
Thin web server (v1.6.3 codename Protein Powder)
Maximum connections set to 1024
Listening on <IP_ADDRESS>:3000, CTRL+C to stop

Started GET "/namespaces" for <IP_ADDRESS> at 2015-07-30 00:57:38 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
  ActiveRecord::SchemaMigration Load (8.3ms)  SELECT `schema_migrations`.* FROM `schema_migrations`
Processing by NamespacesController#index as HTML
  User Load (0.7ms)  SELECT  `users`.*  FROM `namespaces` WHERE (global = 1 OR namespaces.name = 'admin')
  Registry Load (0.7ms)  SELECT  `registries`.*  FROM `namespaces` INNER JOIN `teams` ON `teams`.`id` = `namespaces`.`team_id` INNER JOIN `team_users` ON `team_users`.`team_id` = `teams`.`id` WHERE ((namespaces.public = 1 OR team_users.user_id = 1) AND namespaces.global = 0 AND namespaces.name != 'admin') LIMIT 25 OFFSET 0
   (1.2ms)  SELECT DISTINCT COUNT(DISTINCT `namespaces`.`id`) FROM `namespaces` INNER JOIN `teams` ON `teams`.`id` = `namespaces`.`team_id` INNER JOIN `team_users` ON `team_users`.`team_id` = `teams`.`id` WHERE ((namespaces.public = 1 OR team_users.user_id = 1) AND namespaces.global = 0 AND namespaces.name != 'admin')
  Rendered namespaces/index.html.slim within layouts/application (260.7ms)
  Rendered shared/_header.html.slim (21.0ms)
  Rendered shared/_aside.html.slim (15.9ms)
  CACHE (0.1ms)  SELECT COUNT(*) FROM `registries`
  Rendered shared/_notification.html.slim (16.4ms)
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notifications.html.slim (40.7ms)
Completed 200 OK in 9855ms (Views: 9740.4ms | ActiveRecord: 28.8ms)

Started GET "/namespaces/1" for <IP_ADDRESS> at 2015-07-30 01:02:34 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by NamespacesController#show as HTML
  Parameters: {"id"=>"1"}
  User Load (0.3ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1  ORDER BY `users`.`id` ASC LIMIT 1
  Namespace Load (0.6ms)  SELECT  `namespaces`.* FROM `namespaces` WHERE `namespaces`.`id` = 1 LIMIT 1
  Registry Load (0.5ms)  SELECT  `registries`.* FROM `registries` WHERE `registries`.`id` = 1 LIMIT 1
  Repository Load (0.7ms)  SELECT  `repositories`.* FROM `repositories` WHERE `repositories`.`namespace_id` = 1 LIMIT 25 OFFSET 0
   (0.6ms)  SELECT COUNT(*) FROM `repositories` WHERE `repositories`.`namespace_id` = 1
  Rendered namespaces/show.html.slim within layouts/application (22.8ms)
  Rendered shared/_header.html.slim (1.8ms)
  Rendered shared/_aside.html.slim (1.3ms)
   (0.4ms)  SELECT COUNT(*) FROM `registries`
  Rendered shared/_notification.html.slim (0.2ms)
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notifications.html.slim (5.1ms)
Completed 200 OK in 271ms (Views: 260.1ms | ActiveRecord: 3.0ms)

Started GET "/namespaces" for <IP_ADDRESS> at 2015-07-30 01:02:40 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by NamespacesController#index as HTML
  User Load (0.6ms)  SELECT  `users`.*  FROM `namespaces` WHERE (global = 1 OR namespaces.name = 'admin')
  Registry Load (0.4ms)  SELECT  `registries`.*  FROM `namespaces` INNER JOIN `teams` ON `teams`.`id` = `namespaces`.`team_id` INNER JOIN `team_users` ON `team_users`.`team_id` = `teams`.`id` WHERE ((namespaces.public = 1 OR team_users.user_id = 1) AND namespaces.global = 0 AND namespaces.name != 'admin') LIMIT 25 OFFSET 0
   (0.7ms)  SELECT DISTINCT COUNT(DISTINCT `namespaces`.`id`) FROM `namespaces` INNER JOIN `teams` ON `teams`.`id` = `namespaces`.`team_id` INNER JOIN `team_users` ON `team_users`.`team_id` = `teams`.`id` WHERE ((namespaces.public = 1 OR team_users.user_id = 1) AND namespaces.global = 0 AND namespaces.name != 'admin')
  Rendered namespaces/index.html.slim within layouts/application (30.5ms)
  Rendered shared/_header.html.slim (1.3ms)
  Rendered shared/_aside.html.slim (0.9ms)
  CACHE (0.0ms)  SELECT COUNT(*) FROM `registries`
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notification.html.slim (1.1ms)
  Rendered shared/_notifications.html.slim (5.5ms)
Completed 200 OK in 345ms (Views: 333.5ms | ActiveRecord: 3.9ms)

Started POST "/namespaces" for <IP_ADDRESS> at 2015-07-30 01:02:49 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by NamespacesController#create as JS
  Parameters: {"utf8"=>"✓", "namespace"=>{"namespace"=>"demo", "team"=>"demo"}, "commit"=>"Create"}
  User Load (0.4ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1  ORDER BY `users`.`id` ASC LIMIT 1
  Team Load (6.9ms)  SELECT  `teams`.* FROM `teams` WHERE `teams`.`name` = 'demo' AND `teams`.`hidden` = 0 LIMIT 1
  Rendered namespaces/create.js.erb (1.9ms)
Filter chain halted as :check_team rendered or redirected
Completed 404 Not Found in 32ms (Views: 10.5ms | ActiveRecord: 10.4ms)

Started GET "/teams" for <IP_ADDRESS> at 2015-07-30 01:02:50 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by TeamsController#index as HTML
  User Load (0.4ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1  ORDER BY `users`.`id` ASC LIMIT 1
  Team Load (7.5ms)  SELECT  `teams`.* FROM `teams` INNER JOIN `team_users` ON `teams`.`id` = `team_users`.`team_id` WHERE `team_users`.`user_id` = 1 AND `teams`.`hidden` = 0 LIMIT 25 OFFSET 0
   (0.9ms)  SELECT COUNT(*) FROM `teams` INNER JOIN `team_users` ON `teams`.`id` = `team_users`.`team_id` WHERE `team_users`.`user_id` = 1 AND `teams`.`hidden` = 0
  Rendered teams/index.html.slim within layouts/application (34.7ms)
  Rendered shared/_header.html.slim (1.5ms)
  Rendered shared/_aside.html.slim (1.1ms)
   (0.3ms)  SELECT COUNT(*) FROM `registries`
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notifications.html.slim (3.9ms)
Completed 200 OK in 298ms (Views: 261.2ms | ActiveRecord: 10.9ms)

Started POST "/teams" for <IP_ADDRESS> at 2015-07-30 01:02:54 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by TeamsController#create as JS
  Parameters: {"utf8"=>"✓", "team"=>{"name"=>"demo"}, "commit"=>"Add"}
  User Load (0.4ms)  SELECT  `users`.*  FROM `team_users` WHERE `team_users`.`team_id` = 3 AND `team_users`.`user_id` = 1 LIMIT 1
   (1.1ms)  SELECT COUNT(*) FROM `users` INNER JOIN `team_users` ON `users`.`id` = `team_users`.`user_id` WHERE `team_users`.`team_id` = 3
   (1.5ms)  SELECT COUNT(*) FROM `namespaces` WHERE `namespaces`.`team_id` = 3
  Rendered teams/_team.html.slim (29.9ms)
  Rendered teams/create.js.erb (32.8ms)
Completed 200 OK in 193ms (Views: 36.1ms | ActiveRecord: 40.8ms)

Started GET "/teams/3" for <IP_ADDRESS> at 2015-07-30 01:02:58 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by TeamsController#show as HTML
  Parameters: {"id"=>"3"}
  User Load (0.4ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1  ORDER BY `users`.`id` ASC LIMIT 1
  Team Load (0.7ms)  SELECT  `teams`.* FROM `teams` WHERE `teams`.`id` = 3 LIMIT 1
  TeamUser Load (0.7ms)  SELECT  `team_users`.* FROM `team_users` WHERE `team_users`.`team_id` = 3 LIMIT 10 OFFSET 0
  User Load (0.7ms)  SELECT  `users`.*  FROM `namespaces` WHERE `namespaces`.`team_id` = 3 LIMIT 15 OFFSET 0
   (0.3ms)  SELECT COUNT(*) FROM `namespaces` WHERE `namespaces`.`team_id` = 3
  Rendered teams/show.html.slim within layouts/application (94.5ms)
  Rendered shared/_header.html.slim (10.0ms)
  Rendered shared/_aside.html.slim (10.2ms)
  CACHE (0.0ms)  SELECT COUNT(*) FROM `registries`
  Rendered shared/_notification.html.slim (15.0ms)
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notifications.html.slim (31.7ms)
Completed 200 OK in 365ms (Views: 349.2ms | ActiveRecord: 5.0ms)

Started POST "/namespaces" for <IP_ADDRESS> at 2015-07-30 01:03:03 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by NamespacesController#create as JS
  Parameters: {"utf8"=>"✓", "namespace"=>{"team"=>"demo", "namespace"=>"dedmo"}, "commit"=>"Add"}
  User Load (0.3ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1  ORDER BY `users`.`id` ASC LIMIT 1
  Team Load (0.6ms)  SELECT  `teams`.* FROM `teams` WHERE `teams`.`name` = 'demo' AND `teams`.`hidden` = 0 LIMIT 1
  Registry Load (0.6ms)  SELECT  `registries`.*  FROM `namespaces` INNER JOIN `teams` ON `teams`.`id` = `namespaces`.`team_id` INNER JOIN `team_users` ON `team_users`.`team_id` = `teams`.`id` WHERE ((namespaces.public = 1 OR team_users.user_id = 1) AND namespaces.global = 0 AND namespaces.name != 'admin')
  CACHE (0.1ms)  SELECT COUNT(*) FROM `repositories` WHERE `repositories`.`namespace_id` = 3  [["namespace_id", 3]]
  Rendered namespaces/_namespace.html.slim (4.2ms)
  Rendered namespaces/create.js.erb (24.8ms)
Completed 200 OK in 88ms (Views: 30.2ms | ActiveRecord: 29.7ms)

Started POST "/namespaces" for <IP_ADDRESS> at 2015-07-30 01:03:10 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by NamespacesController#create as JS
  Parameters: {"utf8"=>"✓", "namespace"=>{"team"=>"demo", "namespace"=>"demo"}, "commit"=>"Add"}
  User Load (0.3ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1  ORDER BY `users`.`id` ASC LIMIT 1
  Team Load (0.3ms)  SELECT  `teams`.* FROM `teams` WHERE `teams`.`name` = 'demo' AND `teams`.`hidden` = 0 LIMIT 1
  Registry Load (0.3ms)  SELECT  `registries`.*  FROM `namespaces` INNER JOIN `teams` ON `teams`.`id` = `namespaces`.`team_id` INNER JOIN `team_users` ON `team_users`.`team_id` = `teams`.`id` WHERE ((namespaces.public = 1 OR team_users.user_id = 1) AND namespaces.global = 0 AND namespaces.name != 'admin')
  CACHE (0.0ms)  SELECT COUNT(*) FROM `repositories` WHERE `repositories`.`namespace_id` = 4  [["namespace_id", 4]]
  Rendered namespaces/_namespace.html.slim (2.1ms)
  Rendered namespaces/create.js.erb (13.9ms)
Completed 200 OK in 62ms (Views: 17.6ms | ActiveRecord: 27.2ms)

Started GET "/admin/dashboard" for <IP_ADDRESS> at 2015-07-30 01:04:10 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by Admin::DashboardController#index as HTML
  User Load (0.4ms)  SELECT  `users`.*  FROM `activities`  ORDER BY created_at DESC LIMIT 20
  User Load (0.3ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1
  Namespace Load (0.6ms)  SELECT  `namespaces`.* FROM `namespaces` WHERE `namespaces`.`id` = 4 LIMIT 1
  Team Load (0.3ms)  SELECT  `teams`.* FROM `teams` WHERE `teams`.`id` = 3 LIMIT 1
  Rendered public_activity/namespace/_create.html.slim (17.0ms)
  CACHE (0.0ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1  [["id", 1]]
  Namespace Load (0.7ms)  SELECT  `namespaces`.* FROM `namespaces` WHERE `namespaces`.`id` = 3 LIMIT 1
  CACHE (0.0ms)  SELECT  `teams`.* FROM `teams` WHERE `teams`.`id` = 3 LIMIT 1  [["id", 3]]
  Rendered public_activity/namespace/_create.html.slim (7.4ms)
  CACHE (0.0ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1  [["id", 1]]
  CACHE (0.0ms)  SELECT  `teams`.* FROM `teams` WHERE `teams`.`id` = 3 LIMIT 1  [["id", 3]]
  Rendered public_activity/team/_create.html.slim (10.2ms)
  Rendered admin/dashboard/index.html.slim within layouts/application (68.7ms)
  Rendered shared/_header.html.slim (1.5ms)
  Rendered shared/_aside.html.slim (1.5ms)
  CACHE (0.0ms)  SELECT COUNT(*) FROM `registries`
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notifications.html.slim (4.1ms)
Completed 200 OK in 312ms (Views: 302.7ms | ActiveRecord: 5.6ms)

Started GET "/admin/registries" for <IP_ADDRESS> at 2015-07-30 01:04:15 +0000
Cannot render console from <IP_ADDRESS>! Allowed networks: <IP_ADDRESS>, ::1, <IP_ADDRESS>/<IP_ADDRESS>
Processing by Admin::RegistriesController#index as HTML
  User Load (0.3ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1  ORDER BY `users`.`id` ASC LIMIT 1
   (0.3ms)  SELECT COUNT(*) FROM `registries`
  Registry Load (0.5ms)  SELECT `registries`.* FROM `registries`
  Rendered admin/registries/index.html.slim within layouts/application (14.2ms)
  Rendered shared/_header.html.slim (1.9ms)
  Rendered shared/_aside.html.slim (1.1ms)
  CACHE (0.0ms)  SELECT COUNT(*) FROM `registries`
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notification.html.slim (0.1ms)
  Rendered shared/_notifications.html.slim (4.5ms)
Completed 200 OK in 301ms (Views: 296.3ms | ActiveRecord: 1.1ms)

See #217 for some questions I had regarding adding a registry to the docker-compose setup
I think there is a little bit of direction needed from @flavio and the team

I can push to the registry container just fine. I just want to play with Portus. I don't need a prod env right now.

@huslage correct me if I am wrong but the daemon also talks to the authentication service directly that is why it will not be able to find the portus_reg_1 since it is not inside your /etc/hosts but inside the container's

@lsamayoa yes this is correct. I'm currently working a solution for that

@flavio I don't think that there is any other solution than manually modify the file in the host machine

Closing as duplicate of https://github.com/SUSE/Portus/issues/217

For @huslage: take a look at this PR: https://github.com/SUSE/Portus/pull/239


Detect PWA when in fullscreen

The isStandalone() method used to determine if the app is running as a PWA doesn't work when the PWA is full screen (on Mac OS at least).
This is because, when the PWA is full screen, the display mode is full screen rather than standalone.
Unfortunately, we can't just also check for display-mode: full screen because this is also true when vscode is running in a regular browser tab but full screen.

Status
Window state
Display mode

PWA
fullscreen
fullscreen

PWA
windowed
standalone

Chromew Tab
fullscreen
fullscreen

Chromew Tab
windowed
browser

One possible solution could be to use both full screen and standalone initially but only trigger on a change to standalone or browser, not on a change from them.

display-mode before
display-mode after
display mode changed to standalone or browser?
value of isStandalone()

browser
fullscreen
no
false

browser
standalone
yes
true

standalone
fullscreen
no
true

standalone
browser
yes
false

fullscreen
standalone
yes
true

fullscreen
browser
yes
false

Eg, something like:
	const standaloneMatchMedia = window.matchMedia('(display-mode: standalone)');
	const browserMatchMedia = window.matchMedia('(display-mode: browser)');
	standalone = !browserMatchMedia.matches;       // Consider a full screen window on start a PWA
	// standalone = standaloneMatchMedia.matches;  // Don't consider a full screen window on start a PWA
	addMatchMediaChangeListener(standaloneMatchMedia, ({ matches }) => {
		standalone ||= matches;
	});
	addMatchMediaChangeListener(browserMatchMedia, ({ matches }) => {
		standalone &&= !matches;
	});

The downsides of this are.

Starting a browser tab whilst in full screen would incorrectly be considered as a PWA
Switching between browser and PWA whilst full screen would not work (though it doesn't at the moment either so no regression here)

We could shift the impact of 1 a bit, by not considering an instance as a PWA on startup if it is full screen.
So if you open standalone and go full screen it remains a PWA, but if you start in full screen (is that even possible) then it would think it is a browser tab.
Another option, would be to consider display-mode: full screen the same as display-mode: standalone. This would always result in the desired effect for a PWA, but would mean that when running in a chrome tab, actions like "New Window" would instead open in a new window (or the PWA if it exists), rather than a new tab in the current browser instance.
The ideal solution would be to distinguish between full screen in a browser tab and full screen in a PWA somehow, but I have not found a way in which that can be done yet.

Open for help via PR. Thanks for the analysis.

@a-stewart as original author of https://github.com/microsoft/vscode/pull/143287 would you have a look at the suggested solution in https://github.com/microsoft/vscode/pull/156424 ?

Yep, that solution looks good to me, in practice it works exactly the same as what is described above.

This bug has been fixed in the latest release of VS Code Insiders!
@a-stewart, you can help us out by commenting /verified if things are now working as expected.
If things still don't seem right, please ensure you're on version 73fd3f11032e7b83c2ae011b5516e6ddd19e3db2 of Insiders (today's or later - you can use Help: About in the command palette to check), and leave a comment letting us know what isn't working as expected.
Happy Coding!

Hm, it didn't seem to resolve the issue for me.

Go to insiders.vscode.dev (confirm it is using https://github.com/microsoft/vscode/commit/73fd3f11032e7b83c2ae011b5516e6ddd19e3db2)
Install the app
File > New Window - opens a new window in a PWA as expected
Go full screen
File > New Window - opens as a browser tab, not a new PWA

I need to call it a night tonight, but I'll investigate a bit more next week.
(There are no regressions in this work that I can tell, I expect that isStandalone is returning the correct value from what the code says, so I think there may be a second issue somewhere else.)
As an aside, is there a way to get source maps on insiders.vscode.dev - would be good to see if I can put some breakpoints in. If not I can fast forward this patch onto our fork and debug it there.

Reopening and again, help wanted, so feel free to open a PR to fix this that is meaningfully small.

I expect that isStandalone is returning the correct value from what the code says, so I think there may be a second issue somewhere else.

It seems that window.open won't open a new standalone window if the PWA is in macOS full-screen mode.
https://github.com/microsoft/vscode/blob/cb79d015557d546d0d48cea97d7fc3ac0d3dc590/src/vs/code/browser/workbench/workbench.ts#L381-L382

Update
While window.open won't work for full-screen, using command + N or clicking through macOS menu bar will work. So maybe we can to fix the issue with using macOS shortcut. Though it is out of the original issue scope. Shall I open another issue to address it?

Can we not just immediately on startup run window.matchMedia('(display-mode: standalone)') and if that evaluates to true, keep it and never change it because you cannot really go back from PWA to not-PWA right?
And in the other case where you transition from a tab into a PWA, only there do the dynamic approach?
I feel this is a regression from https://github.com/microsoft/vscode/pull/143287/files#diff-43a30e8aea5c247b550412be5530c9fdda1e9b3010f229761507b6be6ef914a7 ?

Can we not just immediately on startup run window.matchMedia('(display-mode: standalone)') and if that evaluates to true, keep it and never change it because you cannot really go back from PWA to not-PWA right?

User COULD switch PWA to non-PWA:

window.open API (no matter using what parameters) in full-screen PWA will open a tab in the browser. Does it works for full-screen PWA before?

Yeah I see, but then again: if we cannot fix it properly for PWA, I would rather have "Open in Chrome" behave with a bug, than loosing the PWA mode when opening a new window. So I would tolerate this issue more over the current one.

@bpasero Let me clarify and forgive me if am too wordy:

#143287 introduced dynamic isStandalone(), but it doesn't consider when PWA enters full-screen mode.

#156424 have already fixed dynamic isStandalone() issue introduced.

@a-stewart tested the full-screen PWA still open new tab in the browser. It is caused by window.open does not work when PWA full-screen. It has nothing to do with #143287, and it is very likely NEVER WORKING.

So the only thing we need to do is fixing this line to make it open another 'standalone' window.
https://github.com/microsoft/vscode/blob/cb79d015557d546d0d48cea97d7fc3ac0d3dc590/src/vs/code/browser/workbench/workbench.ts#L382

I am having a hard time to debug this, somehow devtools does not work in PWA for me. I am still not fully understanding if the isStandalone check is failing when in fullscreen or if really that code you mention fails. My gut feeling is that isStandalone is false and thus we call this instead:
https://github.com/microsoft/vscode/blob/5cf4a848f9d297f6708e6dbd27b2a48f03ac6595/src/vs/code/browser/workbench/workbench.ts#L384

You cloud install this demo and try: https://pwa-new-window.glitch.me/
Source code: https://glitch.com/edit/#!/pwa-new-window

Yeah you are right, that code opens a new tab for me when in fullscreen mode, so maybe that is actually a Chrome bug?

Hi,
Sorry for being a bit slow getting back onto this. Yeah, from my testing a well, I agree with what pingren is saying - this is not a regression, but likely something that never worked.
I think with the example the pingren posted, raising this as a bug with the Chromium is probably be the best bet?
The two PRs that have already been mentioned:

https://github.com/microsoft/vscode/pull/143287
https://github.com/microsoft/vscode/pull/156424

Are both still required as they are what ensure that window.open is called "correctly"

👍 feel free to report, some related issues:

https://bugs.chromium.org/p/chromium/issues/detail?id=1281676&q=pwa fullscreen&can=2
https://bugs.chromium.org/p/chromium/issues/detail?id=1273386&q=pwa fullscreen&can=2
https://bugs.chromium.org/p/chromium/issues/detail?id=850465&q=pwa fullscreen&can=2

The second one looks close to the initial issue reported here that the second PR is working around - I'll follow that one.
For the specific issue we are now seeing, I have created https://bugs.chromium.org/p/chromium/issues/detail?id=1351346

Update on this - This should now be resolved in upstream Chromium, and will hopefully make its way to the Chrome auto-updated version soon.
https://chromiumdash.appspot.com/commits?commit=fbf5696bd186276df7b37f852592bd48efd5c606&platform=Mac
Looks like it should be included in 107.0.5290.0 with a stable release of October 27th (https://chromiumdash.appspot.com/schedule).
It looks like the dev branch of Chrome is on 107.0.5286.0 so hopefully, the fix should pull through on that soon as I can verify it.
I am not sure what the release schedule is for Edge, and how quickly that will pick up this fix.


Rotatable blocks

How do I Add rotateable blocks? Can you please explain?

Also How About interactable

I cant Get It to work

Hello, I updated the wiki to include the information of how to create a directional block.
https://github.com/MMonkeyKiller/CustomBlocks/wiki/EN_UsingTheAPI


modularize yDocToProsemirrorJSON to Y.XmlText and Y.XmlElement

Motivation for this PR is to separate out Y.XmlFragment from Y.XmlElement in the scenario of using a custom top-level document with type, attrs, and marks defined.
Related:
https://discuss.yjs.dev/t/y-prosemirror-ydoctoprosemirrorjson-root-node-type-is-always-doc/642
#48
sync-plugin still needs to be refactored to allow for XmlElement to be a top-level document, and #63 is related because the new YXmlElementToProsemirrorJSON method assumes node-level marks are stored as an array in type.getAttribute('marks). Also in #63, node-level marks are serialized using toJSON() which is pretty convenient for this PR as well.

@BrianHung, @dmonad, I don't think yDocToProsemirrorJSON is the correct signature to convert a Y.XmlFragment to JSON. In my mind, a Y.XmlFragment is an array of Nodes, not a Node with type 'doc'.
See my PR here: https://github.com/yjs/y-prosemirror/pull/53

I don't think yDocToProsemirrorJSON is the correct signature to convert a Y.XmlFragment to JSON. In my mind, a Y.XmlFragment is an array of Nodes, not a Node with type 'doc'.

@SamDuvall I agree with both of your points about separating yDoc from Y.XmlFragment. YXmlFragmentToProsemirrorJSON is pretty simple with the newly modularized functions -- just needed that serialize function to be outside of it -- so I've added that as well.

Thanks to @BrianHung  and @SamDuvall  we now have two competing implementations :thinking:
https://github.com/yjs/y-prosemirror/pull/53
https://github.com/yjs/y-prosemirror/pull/64
After reviewing this I think you are right that we should change the signature. I would be fine with making another major release for this feature. Could you both please communicate and come up with a solution that works for both of you. I'll merge the version that you both reviewed and agree with. Thanks!

This PR has everything I need for converting Y.Xml* to JSON. I am happy to abandon https://github.com/yjs/y-prosemirror/pull/53 and then create a new PR that focuses on JSON to X.XmlFragment.

we should change the signature

To clarify, this would mean in essence deprecating yDocToProsemirrorJSON in favor of the other two utility methods YXmlFragmentToProsemirrorJSON and YXmlElementToProsemirrorJSON?
Because if we change the signature of yDocToProsemirrorJSON to return "an array of Nodes" as Sam suggested, that would be equivalent to YXmlFragmentToProsemirrorJSON.
In my view, deprecating yDocToProsemirrorJSON would be good because it'd force the end user to explicitly work with YXMLFragment or YXMLElement instead of that being abstracted behind Y.Doc and a field.
Those using the new API but want the old abstraction of yDocToProsemirrorJSON can easily migrate by:
// Previously
let json = yDocToProsemirrorJSON(ydoc)

// Now
let xmlFragment = ydoc.getXmlFragment('prosemirror')
let json = {type: 'doc', content: YXmlFragmentToProsemirrorJSON(xmlFragment)}

If we're doing a major version bump, then I agree with @BrianHung's proposal to just delete yDocToProsemirrorJSON, so long as there is a clear explanation in the release notes.
@dmonad, if we did a major version bump, would you be okay with taking https://github.com/yjs/y-prosemirror/issues/34 as-is or would you still like a PR that is backwards-compatible? I'm coming across some issues with annotations/comment/suggestions that would benefit greatly from marks of the same type (e.g. comment) being allowed.

Any updates here? Having the same issue needing overlapping nodes with different attributes


TS-13 fix unsigned compare for warning escalation

Cast ECL string parameter lengths to int from unsigned to use in a for loop with int.
Signed-off-by: johnholt<EMAIL_ADDRESS>

Based on the records of the original errors as show below, I think the cost is correct and can be merged.

Error:  comparison between signed and unsigned integer expressions [-Werror=sign-compare] (42, 25 - C:\Users\Lily\Documents\GitHub\TextSearch\TextSearch\Common\NumericCollationFormat.ecl)
Error:  comparison between signed and unsigned integer expressions [-Werror=sign-compare] (39, 22 - C:\Users\Lily\Documents\GitHub\TextSearch\TextSearch\Resolved\Dict_Lookup.ecl)


Fix viewer search path on MacOS

Fix #1292
Add in module path as part of search path to module path.
Fixes setup in build area, and should also fix install as well.
This is with Ventura, using clang build setup.

@kwokcb This might deserve some deeper investigation, as it's not an issue that's been reported on MacOS before.  Does this only apply to developer builds, or does it apply to the shipping builds of the viewer in releases?  If we can narrow this down further, then we should be able to implement a more targeted solution.

Hi @jstone-lucasfilm,
This does not occur with the installed folder as MaterialXView is in a subfolder below libraries.  For builds,
with my current configuration MaterialXView is at the same level as libraries so always fails.
If anyone sets up MaterialXView at the same level as libraries then it will fail, so I think this is a suitable patch.
It also feels strange to always only look for libraries in the parent folder of the binary.

Hi @kwokcb
What does the output layout look like on Ventura? Are you creating application bundle?

For builds which only create one build area, there is no subfolder for the build type (e.g. Release/RelWithDebugInfo/Debug).
Thus the executable is in the same folder as libraries. I was using -GXcode which created the separate build areas and am no longer doing so (I'm basically trying to build exactly as CI does as the multiple build case does not create Python executables with the correct architecture for M1/M2 etc.).
@ashwinbhat, neither the build area or installs create bundles so it's always possible to move files around and have libraries not found. I guess this would be the best way to handle this, but it's not currently being done.

@jstone-lucasfilm , this sounds like simple logic to add. As the Graph Editor also follows the same logic it will also need to be updated as it is also failing when in the same folder as libraries. I have created a utility which starts from any root to do the searching.


Landing Page UI

Design UI for viewing and posting job listings.
Create job listing cards with relevant information.
Implement filtering and sorting options.
Build forms for adding new job listings.

I have corrected the homepage and edited to the brand kit guidelines (colours, logos etc.). @Tinaika19 @Cbeattie97 mobile responsiveness needs work.


Merge README improvement issue #60 PR

Arranged README in well manner so that reader would not face any difficulty  and you can also close this issue after that because I don't think anything else can be written there, whatever written is enough.

resolve conflicts

fork again to do your changes

I resolved conflict

Hey Komal , tha current readme is already updated , contents have been changed , please delete the repo and then fork to do your changes


feat: structured trace in client ivc

Please read contributing guidelines and remove this line.

Benchmark results
Metrics with a significant change:

circuit_simulation_time_in_ms (merge-rollup): 6,481 (+21%)
tx_pxe_processing_time_ms (0): 1,397 (-21%)
batch_insert_into_append_only_tree_32_depth_ms (512): 261 (-25%)
tx_sequencer_processing_time_ms (2): 800 (-22%)
tx_sequencer_processing_time_ms (4): 940 (-24%)
tx_sequencer_processing_time_ms (5): 2,205 (-17%)
tx_sequencer_processing_time_ms (8): 1,120 (-27%)
node_history_sync_time_in_ms (10): 31,445 (+16%)
l2_block_public_tx_process_time_in_ms (8): 8,877 (-19%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
64 txs

l1_rollup_calldata_size_in_bytes
740
740
740

l1_rollup_calldata_gas
6,680
6,680
6,668

l1_rollup_execution_gas
586,812
586,812
586,800

l2_block_processing_time_in_ms
1,571 (-6%)
5,573 (+6%)
10,624 (+8%)

l2_block_building_time_in_ms
22,442 (-14%)
88,337 (-2%)
176,769 (+5%)

l2_block_rollup_simulation_time_in_ms
22,240 (-13%)
87,601 (-2%)
175,315 (+5%)

l2_block_public_tx_process_time_in_ms
:warning: 8,877 (-19%)
34,625 (-9%)
69,489 (-1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
16,780 (+13%)
:warning: 31,445 (+16%)

node_database_size_in_bytes
20,701,264
37,363,792

pxe_database_size_in_bytes
29,868
59,425

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
176 (-7%)
46,819
28,822

private-kernel-inner
207 (-9%)
76,734
28,822

private-kernel-ordering
231 (-8%)
53,040
42,751

base-parity
71.2 (-12%)
128
64.0

base-rollup
16,511 (+13%)
111,062
925

root-parity
1,559 (-7%)
27,064
64.0

root-rollup
64.8 (-15%)
11,454
789

public-kernel-app-logic
1,991 (-2%)
54,321
22,677

public-kernel-tail
4,865 (-2%)
159,770
3,898

merge-rollup
:warning: 6,481 (+21%)
2,696
925

public-kernel-teardown
162 (-6%)
54,321
30,042

public-kernel-setup
222 (-3%)
54,321
30,042

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
512 leaves
1024 leaves
2048 leaves
4096 leaves
32 leaves

batch_insert_into_append_only_tree_16_depth_ms
10.9 (-5%)
17.8 (-9%)
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.7
31.8
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.638 (-5%)
0.547 (-9%)
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
51.6 (-5%)
79.9 (-3%)
:warning: 261 (-25%)
503 (+3%)
980 (-1%)
1,946 (+1%)
N/A

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
543
1,055
2,079
4,127
N/A

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.528 (-5%)
0.493 (-3%)
0.475 (-25%)
0.469 (+3%)
0.465 (-1%)
0.465 (+1%)
N/A

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
60.7 (-4%)
120 (-6%)
375 (-14%)
742 (+4%)
1,465 (-5%)
2,911
N/A

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
105
208
692
1,363
2,707
5,395
N/A

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.534 (-4%)
0.538 (-5%)
0.510 (-14%)
0.509 (+3%)
0.506 (-5%)
0.506
N/A

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
66.9 (-1%)

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
108

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
0.587 (-1%)

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
44,613
535,433

Transaction size based on fee payment method

Metric
native fee payment method
fpc_public fee payment method
fpc_private fee payment method

tx_with_fee_size_in_bytes
897
1,145
1,345

Transaction processing duration by data writes.

Metric
0 new note hashes
1 new note hashes
2 new note hashes

tx_pxe_processing_time_ms
:warning: 1,397 (-21%)
1,017 (-7%)
3,685 (-12%)

Metric
1 public data writes
2 public data writes
3 public data writes
4 public data writes
5 public data writes
8 public data writes

tx_sequencer_processing_time_ms
884 (-3%)
:warning: 800 (-22%)
1,432 (-10%)
:warning: 940 (-24%)
:warning: 2,205 (-17%)
:warning: 1,120 (-27%)


Load staggered variables fast

Load staggered variables and shift up or down in any direction. Must be able to slice variables in all axes without loading entire variable for efiiciency

See ad59598. Function get_staggered_variable can be improved in the future. For now the entire variable is loaded when a slice is given, but interpolation function only loops over relevant slices. Can possibly implement function that only loads the slices that are needed to interpolate the variable (e.g. for 5th order interpolation, only load 5 points)


Update logic for changeView function for onClick to change views

##changeView
Changing views by expand/collapse button, or changing views by clicking main image from any of the three view states now behaves as expected.

d.
Magnify view WIP.
Ticket
https://trello.com/c/cG7Yw5L0

@mutton808 @yxxy666 Small PR for expanding/collapsing functionality. Review when you can, please and thank you!


Manage packages to make install easier

Doing some package management.

I went through a process of removing all the stuff that dvc installs when you run pip install dvc[all] that isn't used for pip install dvc[gs] and it's not a lot but it might cut down fractionally on install time.


How to write xls file synchronously

I want to write xlsx file synchronously, Is there any method to write below in synchronous way
From this to ,
workbook.xlsx.writeFile(fileName).then(function(){
    console.log("Writing completed..");
});

Like this
workbook.xlsx.writeFileSync(fileName);
or some other method ?

mark


Cookie value from request header is not getting sanitized

Hi,
The APM python agent is silently throwing error when trying to sanitize the cookie value from request header. On debugging, I found that we are reading the cookie value incorrectly from context.
Instead of  reading the cookie value using event["context"]["request"]["headers"]["Cookie"], we read it as event["context"]["request"]["headers"]["cookie"].
https://github.com/elastic/apm-agent-python/blob/31c858595db709c766226e5cddb826d27e377d9d/elasticapm/processors.py#L116

Thanks for the report! Should be an easy fix.


Compartment model develop

stochastic compartment model

In fs/params/compartmental-model-stochastic_profile_params.csv, could we have parameter profiles similar to the CM please? Thanks.

Fixed

@icemachined could you take a look at the code check please?


[Bug] MissingMethodException is thrown (IDX20803)

Which version of Microsoft.IdentityModel are you using?
Microsoft.IdentityModel.Tokens 6.20.0
Where is the issue?

[x] M.IM.Logging
[x] M.IM.Tokens

Is this a new or an existing app?
The app is in production and I have upgraded to a new version of Microsoft.IdentityModel.Tokens (from 6.11.1 to 6.20.0)
Repro
Everything worked without any issues until I have upgraded Microsoft.IdentityModel.Tokens from 6.11.1 to 6.20.0. Now when I am trying to log in I am getting this exception:
System.InvalidOperationException: IDX20803: Unable to obtain configuration from: 'https://localhost:5001/.well-known/openid-configuration'.
---> System.MissingMethodException: Method not found: 'Void Microsoft.IdentityModel.Logging.IdentityModelTelemetryUtil.SetTelemetryData(System.Net.Http.HttpRequestMessage)'.
Expected behavior
It should work as before without changing any settings or adding new NuGet Package. I tried to install Microsoft.IdentityModel.Logging package (before I had just Microsoft.IdentityModel.Tokens installed in my project) but it didn't helped. I can't find any breaking changes between versions 6.11.1 and 6.20.0 but maybe something has changed and needs to be changed?
Actual behavior
An exception in thrown, before upgrading to latest package version everything worked properly:
System.InvalidOperationException: IDX20803: Unable to obtain configuration from: 'https://localhost:5001/.well-known/openid-configuration'.
---> System.MissingMethodException: Method not found: 'Void Microsoft.IdentityModel.Logging.IdentityModelTelemetryUtil.SetTelemetryData(System.Net.Http.HttpRequestMessage)'.
at Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(String address, CancellationToken cancel)
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine)
at Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(String address, CancellationToken cancel)
at Microsoft.IdentityModel.Protocols.OpenIdConnect.OpenIdConnectConfigurationRetriever.GetAsync(String address, IDocumentRetriever retriever, CancellationToken cancel)
at Microsoft.IdentityModel.Protocols.ConfigurationManager1.GetConfigurationAsync(CancellationToken cancel)    --- End of inner exception stack trace ---    at Microsoft.IdentityModel.Protocols.ConfigurationManager1.GetConfigurationAsync(CancellationToken cancel)
at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationHandler1.AuthenticateAsync()    at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)    at Microsoft.AspNetCore.Authentication.AuthenticationHandler1.AuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.g__Awaited|6_0(ExceptionHandlerMiddleware middleware, HttpContext context, Task task)
at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.HandleException(HttpContext context, ExceptionDispatchInfo edi)
at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.g__Awaited|6_0(ExceptionHandlerMiddleware middleware, HttpContext context, Task task)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)

@tomaszzmudzinski did you upgrade just M.IM.Tokens or all of the assemblies? They must all be at the same version.

Only Microsoft.IdentityModel.Tokens package was installed in my solution (version 6.11.1). Everything worked perfectly and suddenly it started to throw given exception after upgrading this package to the latest version (6.20.0).

@tomaszzmudzinski do you have any other packages installed, if so what are the versions.

@tomaszzmudzinski it appears that the version of M.IM.Protocols is still 6.11.1, we changed the internal api post 6.11.1
6.11.1 we have: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blob/c408c65256d1171ec685485b0a52129abb5cf407/src/Microsoft.IdentityModel.Protocols/Configuration/HttpDocumentRetriever.cs#L111
6.20.0 we have: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blob/053d0a4b721ccae97ad041c84af9316f00a53678/src/Microsoft.IdentityModel.Protocols/Configuration/HttpDocumentRetriever.cs#L150

@tomaszzmudzinski it appears that the version of M.IM.Protocols is still 6.11.1. Make sure all IdentityModel packages are the same version.
We changed the internal api post 6.11.1 6.11.1 we have:
https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blob/c408c65256d1171ec685485b0a52129abb5cf407/src/Microsoft.IdentityModel.Protocols/Configuration/HttpDocumentRetriever.cs#L111
6.20.0 we have:
https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blob/053d0a4b721ccae97ad041c84af9316f00a53678/src/Microsoft.IdentityModel.Protocols/Configuration/HttpDocumentRetriever.cs#L150

As I wrote before my solution had only one package installed: Microsoft.IdentityModel.Tokens so this is something else 😢

We have the same issue, upgraded from 6.10.0, issue starts in 6.14 to 6.16


Services training plan

Changed func to arrow, refactored data, deleted components like Button, Image, etc; added dynamic with mapping through arrays of data

чуть доработать.


Upgrade to Vue 3.x

Vue 3.x has been released, upgrade the project's visual components to use Vue 3.x.
Refer to this PR to see the affected components; https://github.com/bcgov/vc-authn-oidc/pull/157.

@WadeBarnes if you're okay with it, given the current direction in rewriting this service I would close this and leave the technology upgrade (which may or may not be Vue) to the next implementation.


Package 'crul' also needed, 'nneo' not available for R3.5.1

Hi.  Two issues both related to packages installs (My set up OS: Mac 10.13.6,  R Version: 3.5.1).

Following the installation instructions in the README, I also needed to install 'crul' to get the app to run.  You may want to add that into the instructions.

I received an error that the package 'nneo' was needed but 'nneo' is not available for R 3.5.1.  As far as I know, 'nneo' is not being maintained as many of the features are available with 'neonUtilities'.  It was removed from CRAN in November 2018.  An archive version is available.
-- due to this second issue, I'm unable to run the app.

Hey Megan,
Thanks for telling me about these issues. Today was my first time opening up the application in a while, so I ran into the exact same problems. I'll dig into them, and get back to you when I fix the issue!

All fixed!

@Danielslee51 I went to update and run the code to try out your app but I see no recent changes to this repo.  Am I missing something?  Thanks.

Ah, I forgot to commit. My bad!
Daniel Lee
University of Arizona
On Mon, Sep 9, 2019 at 4:10 PM Megan A. Jones<EMAIL_ADDRESS>wrote:

@Danielslee51 https://github.com/Danielslee51 I went to update and run
the code to try out your app but I see no recent changes to this repo. Am I
missing something? Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/cyverse-gis/NEON-Shiny-Browser/issues/1?email_source=notifications&email_token=AJS2AJ4CEG2RXO6YYAMLBBTQI3JV7A5CNFSM4ITJUFRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6JJWCI#issuecomment-529701641,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJS2AJ3UWGV2QMDJYDEJVD3QI3JV7ANCNFSM4ITJUFRA
.


Add email notification verification procedure

People are having issues getting SMTP to work properly, and we need an end-to-end procedure to confirm SMTP and notifications are properly working as part of setup, something closer to this: https://docs.mattermost.com/deployment/push.html#setting-up-hpns-push-notifications-in-enterprise-edition

Existing SMTP troubleshooting is sparse: https://docs.mattermost.com/install/smtp-email-setup.html#troubleshooting-smtp

We should include the need to make sure that the Notification From Address field is filled out and has a valid email that an SMTP server can verify. My understanding is that SMTP servers verify that the domain part of an email exists (or maybe exists and has an active email server? MX record?) as part of anti-spam measures.
Also should add it to the help text in the UI.

Hi @JeffSchering! I've taken a look at the docs and wanted to follow up on this to find out whether you'd be open to updating the docs as they would definitely benefit from the suggested changes. Let me know if you have any questions - happy to assist!

Hi @justinegeffen
Sorry for the late response. I'm not in a position to help out with this right now. Thanks!

I've taken a look at the docs and they provide more details about troubleshooting. I couldn't find the UI section in the provided screenshot though (looked under push notifications and SMTP in System Console). Closing based on age of the issue.


[ADAM-1365] Apply validation stringency to reads on missing contigs when MD tagging

Resolves #1365. If a read is mapped to a contig that is missing from the broadcasted fragment map, we look at the user's provided validation stringency before throwing an exception.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/1750/
Test PASSed.

Thank you, @fnothaft!


webgui 0.1

Hi thanks on your binary..So I downloaded 0.2.3 linux version , but on wg ui webpage , still I have 0.1 version.I dont have a preshared key option on config

The version shown on the UI doesn't reflect the actual binary version. I'll fix it in the next release.
The preshared key is auto-generated for your config. You don't need to customize it from UI.

ok got it  ty. I have existing keys working now ,if I want to reuse them on wireguard ui ,,but the keys box are not configurable paste your existing keys..any work around??

also this:
`
root@dns:/etc/systemd/system# cat wgui.path
[Unit]
Description=Watch /etc/wireguard/wg0.conf for changes
[Path]
PathModified=/etc/wireguard/wg0.conf
[Install]
WantedBy=multi-user.target
root@dns:/etc/systemd/system# cat wgui.service
[Unit]
Description=Restart WireGuard
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl restart<EMAIL_ADDRESS>root@dns:/etc/systemd/system# systemctl enable wgui.{path,service}
The unit files have no installation config (WantedBy, RequiredBy, Also, Alias
settings in the [Install] section, and DefaultInstance for template units).
This means they are not meant to be enabled using systemctl.
Possible reasons for having this kind of units are:

A unit may be statically enabled by being symlinked from another unit's
.wants/ or .requires/ directory.
A unit's purpose may be to act as a helper for some other unit which has
a requirement dependency on it.
A unit may be started when needed via activation (socket, path, timer,
D-Bus, udev, scripted systemctl call, ...).
In case of template units, the unit is meant to be enabled with some
instance name specified.
root@dns:/etc/systemd/system# systemctl start wgui.{path,service}
Job for wgui.service failed because the control process exited with error code.
See "systemctl status wgui.service" and "journalctl -xe" for details.
`

@jly26
For this wg0.service not being available, a quick search indicated might be due to older kernels where it is not in systemd.
My workaround was to call a script performing wg-quick down & wg-quick up on the interface instead of the<EMAIL_ADDRESS>Works fine so far.

also this:
`
root@dns:/etc/systemd/system# cat wgui.path
[Unit]
Description=Watch /etc/wireguard/wg0.conf for changes


SwiftOCR direction mode

SwiftOCR works like a charm when recognizing single line numbers with a trained model.
Here comes my question:
When I have a two lines of numbers, like this:
12345
67890

SwiftOCR give me a result<PHONE_NUMBER> instead of<PHONE_NUMBER>, so I'm wondering if SwiftOCR can have some direction mode that can be configured.
And currently I split the image into two smaller image each contains only one line of number which works fine but from the result it seems SwiftOCR do have the ability to recognize multiple lines. So, guys, any idea?

You can modify the sorting function outputImages.sort(by: {return $0.0.1.origin.x < $0.1.1.origin.x}) at Line 460 in the extractBlobs function so that the first line of numbers is sorted before the second line.


[SPARK-22971][ML] OneVsRestModel should use temporary RawPredictionCol

What changes were proposed in this pull request?
use temporary RawPredictionCol in OneVsRestModel#transform
How was this patch tested?
existing tests and added tests

@srowen  Different from the base model (like LoR),  OVR and OVRModel do not have param rawPredictionCol.
So if the input dataframe contains a column which has the same name as base model's getRawPredictionCol, then OVRModel can not transform the input.

OK, the code in question uses the rawPredictionCol from the models it is given. Yes they'd have to be unique for this to make sense, because it adds those raw prediction columns to the output. Isn't this always true though? You can't have a pipeline where elements add a column that exist, or were previously added by the pipeline.
I'm missing why it's not a problem to alter the output's raw prediction column from what the user had specified in models?

Sorry, I haven't understood where is the issue in current master code. The models here should be ClassificationModel and will always have rawPrediction param and have default value "rawPrediction". So what's the case current master code encounter error ?

Oh, do you mean if input df including a column named "rawPrediction", then it will be overwritten when it transformed by OVSModel ? Looks like reasonable.

Sure but isn't this the case with any column that any model adds that already exists -- why is this different?

@srowen yeah, all models exist this issue. Although, a little difference, for other models, it is very straightforward for user to call setRawPrediction to avoid overwrite the same name column. But for OVSModel, it is a little tricky (user have to call the wrapped classification model 's setRawPrediction method), user is hard to aware the root cause why existing column be overwritten. So change it to use temporary column name seems to be a better way.

@WeichenXu123 Yes, my concern is that it is confusing if the transform failure is caused by column conflict by a ‘invisible’ column.
@srowen Agree that it is not perfect if we alter the output's raw prediction column. I think it maybe better to revert rawPrediction of base models after transform, and I will have a try.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution/582/
Test PASSed.

Test build #87058 has started for PR 20164 at commit f9a922f.

Test build #87058 has finished for PR 20164 at commit f9a922f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/87058/
Test PASSed.

Merged build finished. Test PASSed.

This pr is out of date. So I will close it.


Change Loan Comparison credit score ranges

Changes

Use same credit score ranges in loan-comparison and check-rates so that rates returned are consistent.

:+1: Getting the same rates as Rate Checker now

awesome!!


Add ACME support for server certificate

@monstermunchkin when you're ready for a review please can you ping me on here or use the request review feature? Thanks

@tomponline feel free to take a first look. I haven't marked it Ready for review yet as the PR is still missing documentation.

Testsuite passed

What happens if the certificate is successfully applied to some cluster members, but fails on others (perhaps one member is down or unreachable)?
Should the certificate be reverted on the others?

This is an excellent question and valid concern. We could do the following if the certificate cannot be distributed to all cluster members:

Store newly created certificate as server.crt.new or cluster.crt.new
Revert the certificate on all online cluster members
When running the auto renewal, check for server.crt.new or cluster.crt.new first before issuing a new certificate, and try distributing again

What do you think? We cannot just have the online members use the new certificate as they won't be able to communicate with the previously offline members due to certificate mismatch.

Testsuite passed

@tomponline I've updated the PR, and it now reverts the cluster certificate if some cluster members are offline.

@ru-fu I requested your review on this as I wondered where you would like the documentation for this feature to be added? Under operation perhaps?

@ru-fu I requested your review on this as I wondered where you would like the documentation for this feature to be added? Under operation perhaps?

Do I understand it correctly that this is about automatic creation of the server/cluster certificate?
Is that certificate used for anything else except for remote API authentication?
If that is the only use (or the main use), it should probably be a new "TLS server certificate" section in https://linuxcontainers.org/lxd/docs/master/authentication/

@ru-fu I requested your review on this as I wondered where you would like the documentation for this feature to be added? Under operation perhaps?

Do I understand it correctly that this is about automatic creation of the server/cluster certificate? Is that certificate used for anything else except for remote API authentication?
If that is the only use (or the main use), it should probably be a new "TLS server certificate" section in https://linuxcontainers.org/lxd/docs/master/authentication/

Yep that would make sense, thanks.

@tomponline I've updated the PR, and it now reverts the cluster certificate if some cluster members are offline.

The certificate update reversion looks good.
Do we have tests for doing a manual cluster certificate update?
Can we add them if not, and add a check for deploying a certificate update when one member is down so that we can be confident the reversion is working.

We do have such tests. I'll extend them to test the reversion.

@monstermunchkin thanks, please let me know when you would like this reviewed again.

Testsuite passed

@monstermunchkin are you sending a follow-up PR to add the warning logic?

@monstermunchkin are you sending a follow-up PR to add the warning logic?

Yes.

A bit late to the party, but what was the reason to choose v2 of github.com/go-acme/lego, rather than the current v4 for this new feature? I ask because I'm working on proactively getting LXD's new dependencies into Debian (even if they won't be needed with the current 5.0 LTS releases), and packaging a three year old version of a library gave me a little pause.

Yes that seems odd. Can we change this @monstermunchkin ?

A bit late to the party, but what was the reason to choose v2 of github.com/go-acme/lego, rather than the current v4 for this new feature? I ask because I'm working on proactively getting LXD's new dependencies into Debian (even if they won't be needed with the current 5.0 LTS releases), and packaging a three year old version of a library gave me a little pause.

https://github.com/lxc/lxd/pull/11119 has been opened to fix this.


Remove usages of override government feature flag

This feature is now in production use, so no need to keep the feature flag around. Will follow up with a separate PR to remove the flag itself and the database record of the flag.
Trello: https://trello.com/c/Q7tCtSXy

Converting to draft so that we're not nudged to merge this until mid-October, as we want to keep it open for a few weeks as per the Trello card.


Deprecate / remove old_mbar

Only used in testing right now. Consider if we need those tests and move to the tests namespace if needed, but it shouldn't be part of the main package.

Oops, duplicate of https://github.com/choderalab/pymbar/issues/338


Calling TargetGuidByName with name='Unity-iPhone' is deprecated.

Unity 2019.3.0b9  iOS
The issue occurs in PostProcessor.cs :24

This can be fixed by replacing that line with string targetGuid = proj.GetUnityMainTargetGuid(); - Tested in Unity 2019.3.0f6

@leoncvlt where can i find PostProcessor.cs file? I've tried to find it in a few place but could not find unfortunately.

Fixed in later versions of Unity

Fixed in later versions of Unity

Which version? I am using 2019.3.3f1 released yesterday and i am facing this issue

I had the same problem as you @AbrarAmin1 . It turnes out that one of my plugins was using this outdated script. I did a global code search for TargetGuidByName that led me to the culprit line so that I could update it.

This can be fixed by replacing that line with string targetGuid = proj.GetUnityMainTargetGuid(); - Tested in Unity 2019.3.0f6

This solution helped me!
Unity Version: 2019.3.9f1
Just added this code:
proj.AddFrameworkToProject(proj.GetUnityMainTargetGuid(), "ARKit.framework", false); string target = proj.GetUnityMainTargetGuid();

where is the file .cs to change? i cant find in my unity proyect


UVLO: add PCB solder jumper for disconnecting the latch circuit's output from the gate of the load switch

Done!


Add no-padding-top styles and class

for use with topic page breadcrumbs

Superseded by https://github.com/alphagov/govuk_publishing_components/pull/260


scheduler restarts when rebalance is invoked or status call for rebalance is invoked

Seen multiple instances of this happening. I had increased scheduler memory from 1024 to 2048 and still this issue persists. I don't see any kill message in scheduler logs when this happens.
Rebalance is triggered and I see 504 bad gateway(since I have a proxy before the curl) in my curl and I see scheduler restarting. Even rebalance status calls restarts the scheduler.
I run other operations like broker add/topic add using curl and I don't see this happening.

Hi @vidhyaarvind
Suppose, that this issue is not actual anymore. Please comment on this, if the problem still happens.
If not, will close this ticket in 10 days.

Closing the ticket as outdated. I haven't seen the problem any more.


Search issues on OsmAnd web

Description
There are 3 issues with web search:

search for brands doesn't show results on map
hover over search results doesn't highlight small POIs (represented on the map as a small circles)
click on search result doesn't open POI context menu

Steps to reproduce
First issue (brands)

go to https://osmand.net/map/search/#13/52.2506/21.0005
search for Starbucks
tap the first line in the search results (with "i" icon)

Second issue (hover doesn't highlight POI-circles)

go to https://osmand.net/map/search/#13/52.2506/21.0005
search for Starbucks
hover over various search results

Actual result
https://github.com/user-attachments/assets/0aeaf9c0-ecce-4314-9ef6-9d05a8206dce
https://github.com/user-attachments/assets/87ee20d0-5b4b-4ffb-8b5f-df3031dfdffa
ToDo

[x] fix brand search (results should be displayed on map)
[x] hover over all search results should highlight them on map
[x] click on search result should open POI context menu

Review

Screenshot

Web
Android

[ ] No Brand

Brand Okko probably related to Starbucks issue - https://overpass-turbo.eu/s/1VoP

[ ] Zoom shouldn't change but map should move if search object is not on the map (extreme cases investigate - 1000 km without animation)

Testing 1
Fixed

Review

Screenshot

Results for `ОККО`
Click on brand

[ ] Tap on brand ОККО show no result


[IOTDB-6064] Pipe: Fix deadlock in rolling back procedures concurrently

Fix:

Add a case in executeProcedure, referring to https://github.com/apache/hbase
Modify lock control of pipe procedures to avoid deadlock in failed procedures

Please cherry-pick it to rel/1.2


Deployment 2016.05

Deployment 2016.05
Status: Planning.
Planned production date: February 24, 2016
Focus: Post-validation of uploaded packages.
Services to Deploy:

V2 Gallery
Post-validation jobs

Related blog posts/docs:

None

Deployed commit: tba
Deployment Process

[ ] Deploy services
[ ] Deploy jobs
[ ] Update deployments overview

Test Plan:

[ ] Run all functional tests
[ ] Smoke testing

Changes

Functional

Post-validation feature

Technical

None

@Xavier and I were working on this issue:
https://github.com/NuGet/NuGetGallery/issues/2927
And had no logs to investigate what happened to the job. Just emphasizing how important to get the new jobs code out, so we will have ES logging.


sendMessageToPeer offline message

Hello,
Using sendMessageToPeer(peerid, msg, false) method to send message to an offline peer throws error code 3 which means "3: The user is offline and has not received the peer-to-peer message.".
I also tried making the last argument to true but same error thrown. Looking at the API there's an option:

'boolean io.agora.rtm.SendMessageOptions.enableOfflineMessaging = false'

By default the value is false. Is this already implemented and if so how can I enable it in Flutter SDK?
Thanks

added 0.9.14


Trailing comment # suppresses result in REPL

Trailing comment # unexpectedly suppress result in REPL:
» puts "string" + "string"
stringstring
#=> nil
» puts "string" + "string" #
#=> nil

FYI: Ruby's pry has a hidden feature that trailing ; can be used for suppressing echo back like:
[38] pry(main)> puts "string" + "string" #
stringstring
=> nil
[39] pry(main)> puts "string" + "string";
stringstring

@hachi8833 I think you should be able to fix this, so I assign it to you first.

I got it.
Now I found that the following works:
puts("string" + "string") #
The issue may affect when arguments are not surrounded by parens.

In addition, puts "string" + "string" # causes unexpected suppression on normal execution as well.
Looks like the issue comes from parser.

@hachi8833 This seems to be fixed, please help me confirm that

Now works fine!
Thank you @st0012


docs: Added Dremio to superset home page

SUMMARY

Added Dremio to superset home page

Codecov Report

Merging #11231 into master will decrease coverage by 4.84%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #11231      +/-   ##
==========================================
- Coverage   65.52%   60.67%   -4.85%
==========================================
  Files         831      831
  Lines       39295    39281      -14
  Branches     3592     3592
==========================================
- Hits        25747    23835    -1912
- Misses      13439    15265    +1826
- Partials      109      181      +72

Flag
Coverage Δ

#cypress
?

#javascript
62.40% <ø> (ø)

#python
59.64% <ø> (-1.06%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

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

Can you share a screenshot to make sure everything looks square?

@mistercrunch


[5.7] Add thenReturn method to Pipeline

Often when using a pipeline there is additional work to be done to the object passed through. A good example of this is using the Pipeline to apply additional filters to a query builder, perhaps based off a request's query parameters. Current you could do the following...
$users = app(Pipeline::class)
    ->send(User::query())
    ->through($pipes)
    ->then(function ($query) {
        return $query
            ->whereConfirmedEmail()
            ->whereAccountActive()
            ->get();
    });

or...
app(Pipeline::class)
    ->send($query = User::query())
    ->through($pipes)
    ->then(function () {});

$users = $query->whereConfirmedEmail()->whereAccountActive()->get();

or...
$query = User::whereConfirmedEmail()->whereAccountActive();

app(Pipeline::class)
    ->send($query)
    ->through($pipes)
    ->then(function ($query) {
        return $query->get();
    });

or you could merge in a closure based pipe, and so on.
Adding a helper method to return the $passable allows for continued chaining in the same scope, so the above examples become...
$users = app(Pipeline::class)
    ->send(User::query())
    ->through($pipes)
    ->thenReturn()
    ->whereConfirmedEmail()
    ->whereAccountActive()
    ->get();

which I personally think feels nice when simple running the pipeline does not complete the preparation/manipulation of the $passable.
There are also scenarios where you just wanna run something through a pipeline and you don't need to do any additional work to it...
return app(Pipeline::class)
    ->send($thing)
    ->through($pipes)
    // ->then(function ($thing) {
    //     return $thing;
    // });
    ->thenReturn();

Although I have named the method thenReturn, it may not be the best name for this. I thought run might also be an option, as you are running the passable through the pipeline.
app(Pipeline::class)
    ->send($thing)
    ->through($pipes)
    ->run()
    ...

@timacdonald Nice addition! I would be interested in seeing how you use pipeline to build a query. More of a full example if you can? Always found this part tedious and I am currently looking for alternatives to my "IndexQueryBuilder" solution, which I am not happy with.

Hey @torkiljohnsen I am using a variation of what @davidhemphill introduced me to during his LaraconAU talk last year. You should check it out because his way of handling it a lot simpler than mine, and it is a really nice pattern (plus it is just a really good talk): https://www.youtube.com/watch?v=dd-iHhmSi2k
I've altered my approach slightly so that instead of passing the request through the stack, I pass the query through. Hoping to get a chance to write it up in more detail, but here is what I end up with. Hopefully it makes sense with just this code dump haha...
Controller
class TeamsController extends ApiController
{
    public function index(TeamsRequest $request, TeamsTransformer $transformer)
    {
        $teams = pipe(Team::query())
            ->through($request->queryFilters())
            ->thenReturn()
            ->orderBy('name')
            ->withCount('members')
            ->simplePaginate(50);

        $teams->transform(function ($team) use ($transformer) {
            return $transformer->transform($team);
        });

        return $this->response($teams);
    }
}

Request
class TeamsRequest extends Request
{
    protected $queryFilters = [
        'is_public' => \App\Http\Filters\TeamIsPublicFilter::class,
        'is_full' => \App\Http\Filters\TeamIsFullFilter::class,
    ];
}

Query filters
class TeamIsPublicFilter
{
    private $queryParameter;

    public function __construct($queryParameter)
    {
        $this->queryParameter = $queryParameter;
    }

    public function handle($query, $next)
    {
        if ($this->queryParameter->exists()) {
            $query->wherePublic($this->queryParameter->toBoolean());
        }

        return $next($query);
    }
}

class TeamIsFullFilter
{
    private $queryParameter;

    public function __construct($queryParameter)
    {
        $this->queryParameter = $queryParameter;
    }

    public function handle($query, $next)
    {
        if ($this->queryParameter->exists()) {
            $query->whereHasSpaceForNewMember(! $this->queryParameter->toBoolean());
        }

        return $next($query);
    }
}

Global pipe helper
function pipe($passable)
{
    return (new Pipeline)->send($passable);
}

Base request
abstract class Request extends FormRequest
{
    protected $queryFilters = [];

    public function queryFilters()
    {
        return collect($this->queryFilters)->mapWithKeys(function ($class, $input) {
            return [$class => new QueryParameter($this->has($key), $this->input($key))];
        })->map(function ($parameter, $class) {
            return new $class($parameter);
        })->all();
    }

    public function authorize()
    {
        return true;
    }

    public function rules()
    {
        return [];
    }
}

Query parameter (just a wrapper around a url query existing and value)
class QueryParameter
{
    private const BOOLEAN_MAP = [
        'true' => true,
        'false' => false,
    ];

    private $exists;

    private $value;

    public function __construct($exists, $value)
    {
        $this->exists = $exists;

        $this->value = $value;
    }

    public function value()
    {
        return $this->value;
    }

    public function toBoolean()
    {
        return static::BOOLEAN_MAP[$this->value] ?? (bool) $this->value;
    }

    public function exists()
    {
        return $this->exists;
    }

    public function doesntExist()
    {
        return ! $this->exists();
    }
}

If ya have any question - feel free to hit me up 👍

I should mention that if you want a package to throw at the problem you could check out https://github.com/spatie/laravel-query-builder

Awesome stuff, will look into those things! Thanks a lot 👍


Increment version for eventhub releases

Increment package version after release of azure-eventhub

/azp run python - eventhub - ci


numeric inputs break .transliterate() method

See issue https://github.com/digitallinguistics/tools/issues/47 in the tools repo.

Possible solutions:

escape numeric input
use something other than a random number for temporary substitutions
create a second temporary substitution step

Add numeric inputs to your test cases when you fix this.

It looks like the emoji approach doesn't work either. Occasionally the low block of the 2-point emoji will be the same as another character, and cause that other character to be replaced as well.
Going to try code points from the geometric shapes block instead.


Seeding the database

Support projects with a directory of JSON files whose names should match the Postgres table they're intended to seed. The JSON data is only used when an empty table is encountered. Later on, we may add a command for resetting a table with data from the seed directory.
Maybe use something like pgloader?

File types
The following file types will be supported out of the box:

SQL

CREATE statements are not allowed

JSON

Expected to be an array of objects or an array of arrays

CSV
TypeScript/JavaScript

Default export should be a function that receives a PluginContext['seed'] object and a ResolvedConfig object

File discovery
These files are automatically discovered via the seed.include config option, which defaults to ["./seed"]. These paths are relative to the directory where your pg-nano.config.ts file is found.
Table association
If you're using CSV or JSON files, you need a way to tell pg-nano which table your data is intended for. You have three available options:

Set the seed.inferTableFromFilename config option to true.

 For example, if you have a table named "product", you may add a product.json or product/data.json file to your ./seed folder. The parent folder's name takes precedence over the file name.
Data within that file is assumed to be intended for the "product" table, since it matches a table name.
If the table is not in your default namespace ("public" by default), you might need another subfolder (e.g. v2/product/data.json).

Write a script in TypeScript or JavaScript that loads your CSV/JSON files manually.

Use a plugin that handles the process for you.

Plugins
New plugin hooks will allow plugins to seed the database or extend the seeding process.
seed: (ctx: PluginContext['seed'], config: ResolvedConfig) => Awaitable<void>
This is the lowest level of seeding hook. Its purpose is to insert data into the database, using the given Client instance.
The ctx argument has these properties and methods:

client: Client Allows direct, superuser access to the local Postgres instance
loadSeedFile(file: string): AsyncGenerator<Dataset> Load a seed file by its name. This may be an absolute path or a path relative to a seed folder (as specified in the seed.include config option). This method works with any file type supported by default, as well as any file supported by plugins.
glob: typeof import('fast-glob').glob Crawl the file system using glob patterns. If no cwd option is provided, the globs will be used to filter the file paths matched by the project's seed.include config option.

The built-in seeding behavior of pg-nano is implemented using this hook. You may disable it with seed.skipDefaultSeeding set to true in your config file. When true, the seed.inferTableFromFilename option does nothing and any script files in your seed folders won't be executed without the aid of a plugin.
Note: Misuse of this hook may lead to double-loading of seed files if you're not careful. For example, if two plugins implement the seed hook, they may both load data from the same file (no checks exist to stop them).
loadSeedFile: (ctx: PluginContext['loadSeedFile'], config: ResolvedConfig) => Awaitable<Dataset[] | AsyncGenerator<Dataset> | null>
This hook allows pg-nano to load a new file type. It can also override the default loading behavior (on a per-file basis) for built-in file types.
The ctx argument has these properties:

file: URL The absolute path to the discovered seed file, parsed as a file: URL

If the hook resolves to a non-nullish value, it must be an array of "dataset" objects of the following shape:

schema?: string The namespace where the table is found (default: "public")
table: string The name of the table where the data is inserted
rows: object[] The data to be inserted, each a record with column->value properties

Amendments

Skip JSON file support for first version
Implement CSV file support using psql -c '\copy <table-name> FROM '/path/to/file.csv' DELIMITER ',' CSV
Generate a seed file from existing data, using the pg-nano seed new <path> command. It runs pg_dump --column-inserts --data-only and saves it to the given path.


Use of magic set optimization?

From a look at the implementation and accompanying scientific papers it seems as if ascent does not make use of the popular magic sets optimization for semi-naïve bottom-up implementations. At least I couldn't find any code that looks like it, nor find any mention of magic or adorn in the actual source code or the accompanying scientific papers.
The lack of explicit input/output relation declarations makes me further assume it doesn't use magic sets (as these would define the wells/sinks of the program implicit dependency graph and could thus guide the optimization)?
@s-arash @kmicinski Is this optimization something that's planned/feasible for ascent with its lattices?
Either way it would probably make sense to discoverably document whether or not it currently uses said optimization.

Thanks for the opening the issue. Ascent doesn't currently do magic set transformations.

I agree with this decision. Magic sets is more relevant in the case where you’re using Datalog  in a querying-based setting. If you plan to materialize everything and inspect the result of a fixed point, it’s less relevant since you’d end up materializing everything anyway..


cmake: add OPAE_MINIMAL_BUILD (rev2)

OPAE_MINIMAL_BUILD controls all of the OPAE_WITH_* options.
When -DOPAE_MINIMAL_BUILD=ON, each of the OPAE_WITH_* options
is set to off.
Adds OPAE_WITH_LIBEDIT, OPAE_WITH_HWLOC, and OPAE_WITH_TBB options,
each of which defaults to ON. Guard fpgabist with OPAE_WITH_HWLOC and
OPAE_WITH_TBB. Guard opae.io additionally with OPAE_WITH_LIBEDIT.
Signed-off-by: Tim Whisonant<EMAIL_ADDRESS>

Coverage remained the same at 62.211% when pulling 84858f296baf09d8b7197919a8b293066fefdaa7 on tswhison/min_build into d395c601497293cf295b743a5d0dfac61ca0c701 on master.


Getting unbound values

Hi, i'm trying to support the following syntaxes using CommandLine:
keyword -f -h variable and  keyword -f variable
with -h, text, required and -f boolean, optional.
In my scenario, this is equivocal, as h is the only text argument.
Supporting the first is native using Commandline so no problem.
Supporting the second one as well I find challenging as, as far as I know, the default parser fails without giving me a partial response or giving me the unbound values.
Would you have any idea how to use the tool in this manner ?

So, in the second command, you want some way to know "required option -h was not provided"?

So, in the second command, you want some way to know "required option -h was not provided"?

My optimal would be:

keeping the argument -h required
allowing to prefix my required text variable with -h or not, as it is the only text variable in this scenario and is equivocal that it is the -h variable in this specific scenario

My suboptimal would be:

keeping the argument -h required
let the parser fail with indications of why (namely, required option -h was not provided), and keep the partial response (namely with the correct -f value)
manually retrive the unbound value and manually allocating it to the -h parameter of the partial response

So I guess my response is yes.
My workaround so far:

mark -h as optional
let the parser succeed
parse the text manually if the text is empty.
This approach seems unsafe.

Is the problem solved? Can this issue be closed?
If not, post your options class and we continue the discussion.

Well, I'm afraid I don't have an answer yet. I really do not like my workaround, which basically short-circuit the whole library.

The core issue here is that the below are two entirely different things:

keyword -f -h variable
keyword -f variable

The first has a -h text option, the second has a ValueList with one entry. The correct thing to do here is choose one and go with it. Unless you have a really, really good reason for wanting this I would advise against it.
But it's not something the library should support.
If you still want help, maybe describe what your program actually does or rather what options it has. Maybe we can figure out the commandline design together.


Add links to check-state-pension and move to original dir

This PR moves check-state-pension.html to the original directory, and adds missing hyperlinks.

👍 LGTM


Use absolute path for Result

Was giving an "unexpected type argument" error when trying to use it in
a module that defined its own Result type.

Looks good, thanks.

Published as 0.3.2.


Angles Base Test for Testng and JUnit5

@snevesbarros
Below is a screenshot of example test runs for JUnit5 (Left) and Testng (right)

Looks good. 👍