gnuradio: add soapysdr plugin dependencies

This PR adds the missing dependency on the soapysdr plugins, which made the blocks based on the different sdr plugins fail when running a gnuradio flowgraph containing them.
Also the gnuradio-companion wrapper was missing the path to the gnuradio core blocks and failed with the following error message:
RuntimeError: Failed to find built-in GRC blocks (specifically, the 'options' block). Ensure your GRC block paths are correct and at least one points to your prefix installation:
/home/wirew0rm/.grc_gnuradio

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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
[x] 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.

However, @wirew0rm , it seems that the Darwin build fails with this change, according to ofborg... I also think that on Hydra it doesn't fail, according to this evaluation for instance:
https://hydra.nixos.org/eval/1799088?filter=gnuradio&compare=1799078&full=#tabs-still-succeed

Thanks, I actually did something similar to this pr in my configuration:
(gnuradio.override { extraMakeWrapperArgs = [ "--prefix" "SOAPY_SDR_PLUGIN_PATH" ":" (soapyrtlsdr + "/lib/SoapySDR/modules0.8/") ]; })

Now I also observed the expression for soapysdr-with-plugins which is the same as soapysdr's expression, only with different arguments, and it's just a matter of putting extra files in the wrapper derivation's $out... @jiegec's solution seems even more elegant. I'd prefer not to trigger a rebuild of all Gnuradio's dependents if possible.

@jiegec  oh, this actually looks like what I wanted to do first. I did a quick grep over nixpkgs on soapysdr usages, but basically every other package just uses soapysdr-with-plugins, so I went with that to get things running quickly, but I can look into incorporating your way into the wrapper or if you beat me to, just replace this one.
To build this right, gr components machinery would probably have to be made aware of adding additional wrapper args if it doesn't already?
I'd also vote for including all the available soapysdr plugins by default, since gnuradio will show the blocks no matter what and the error message if you use the blocks without the plugins included is not really obvious.
On the darwin failure, I don't really see what the problem might be, it looks like the build is just timing out after 1h?
I'm actually at GRCon at the moment, so I'll probably only have tme for more in-depth nixpkging after that, I just tried to get it working quickly to show people here some of the challanges and oportunities that nix provides for gnuradio and vice versa. If anyone of you is also there, let me know, but probably most nix folks are at Nixcon probably, it's ab bit of an unfortunate timing this year :)

Thanks for sharing your experiences @wirew0rm :) its nice to hear!
We can add support for soapysdr's plugins in the wrapper by default, like what @jiegec did. I started a small cleanup in #253847 that wasn't related to this PR initially, but it is now an alternative to this PR.
I really don't like the closure increase that this PR adds by default without a way to decrease it without rebuilding GR. Also, this closure increase affects packages that use gnuradioMinimal - packages that use gnuradio as a dependency, and need not soapysdr plugins support, or search for soapysdr plugins in a different way.

Closing this as the problem was already fixed in #253847.
On my desktop computer it also starts without needing to add the core blocks to gnuradio's GRC_BLOCKS_PATH so that seems to have been a problem of my local environment.
Thanks @doronbehar & @jiegec for the reviews and inputs!


Add biannually frequency

At the moment the frequencies managed are:

hourly
daily
monthly
quarterly
yearly
It would also be useful to add the biannually frequency

It will be wonderful if you add weekly frequency🫰


Song crashes at start

Describe your bug here.
So, I was charting an Angry Munci song I made for a mod, I tested it out but for some reason, it crashed at the second verse. There weren't any scripts in the data folder yet and I don't know what caused it. I didn't get a crash popup or anything it just froze and closed. Can anyone help? I'm on 0.6.3 and I don't know what to do.
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
No, I didn't edit anything in the build

stop spamming

k


Cursor is upside down in QEMU, even with WLR_NO_HARDWARE_CURSORS

Bug or Regression?
Bug
System Info and Version
 System/Version info
Hyprland, built from branch  at commit ea2501d4556f84d3de86a4ae2f4b22a474555b9f  (props: bump version to 0.41.0).
Date: Mon Jun 10 14:23:06 2024
Tag: v0.41.0, commits: 4794

flags: (if any)

System Information:
System name: Linux
Node name: vm
Release: 6.9.3-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Fri, 31 May 2024 15:14:45 +0000

GPU information:
00:02.0 VGA compatible controller [0300]: Red Hat, Inc. Virtio 1.0 GPU [1af4:1050] (rev 01) (prog-if 00 [VGA controller])

os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo

Description
The cursor is upside down when running Hyprland in QEMU. Previously
export WLR_NO_HARDWARE_CURSORS=1 fixed this issue. After the update to 0.41.0 this fix is no longer working. Removing the export doesn't fix the problem either. Only a downgrade to 0.40.0 helps to resolve it.
Command used to run QEMU:
qemu-system-x86_64 -drive file=$HOME/vms/gui.cow,format=qcow2 \
-m 4048 -enable-kvm -machine q35 -device intel-iommu -cpu host \
-device virtio-vga-gl \
-vga none \
-display gtk,gl=on,grab-on-hover=on \
-device ich9-intel-hda \
-device hda-output

How to reproduce

Install Hyprland in QEMU
Cursor is upside down

Crash reports, logs, images, videos
No response

https://wiki.hyprland.org/Configuring/Variables/#cursor : cursor:no_hardware_cursors ?

https://wiki.hyprland.org/Configuring/Variables/#cursor : cursor:no_hardware_cursors ?

This fixed the problem. Thank you!


WIP on issue #67

Issue:
Previously, the Indeterminacy Locus dropdown tab of the filters section was not functional and had no input boxes to add filters, specifically it was missing a dimension filter.
Code changes:
Updated ExploreSystems.js in the frontend to collect an input from a number type textbox labeled "Dimension"
Added a field for indeterminacy locus dimension to the collected and returned filters json objects in ExploreSystems.js
Updated buildWhereText method in the backend file PostgresConnector.py to handle new filter
Steps to replicate changes:
Clone issue branch
Run setup file or start servers by method of your choosing
Select Indeterminacy Locus dropdown from filters
Input integers into the dimension field
-1 should return all results, as all current systems in the test data have a -1 dimension.
Any other value should return no results.
Screenshots:
No results shown when dimension =/= -1:

Results shown when degree = -1:

Works in combination with other filters:

changes are implemented via https://github.com/oss-slu/dads/pull/71. Hence closing this.


Upcoming

As soon as I'm sure there are no more bugs and flaws this will be completed;

[ ] Code size reduction. 45% of the existing code size

[ ] Plugin system

[ ] Implement Flow and Ts parsing as plugin

Closing this for now.


Update dev release to 6.0.0rc1

Trying out a build of the 6.0 release candidate. Once tarballs are published, will update to use them instead of Github.
Checklist

[x] Used a fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

For some reason, the path to the GMT SHAREDIR started getting hard-coded in this branch. From the Azure log:
gmt [DEBUG]: GMT: 4. gmt_getsharepath trying SHAREDIR subdir D:/bld/gmt_1560896377606/_h_env/Library/share/gmt/postscriptlight

whereas on master we get:
gmt: GMT: 4. gmt_getsharepath trying SHAREDIR subdir D:/bld/gmt_1559986067825/_test_env/Library/share/gmt/postscriptlight

I don't know why this started happening on Windows since it doesn't impact linux/osx.
@seisman, any insights?

I think this is also related to https://github.com/GenericMappingTools/gmt/issues/962#issuecomment-503333867, https://github.com/GenericMappingTools/gmt/issues/962#issuecomment-503334387.
Actually now i'm confused why the mac/linux build works.

I'm guessing this is the reason why it works on mac and linux: https://dev.azure.com/conda-forge/feedstock-builds/_build/results?buildId=43080&view=logs&jobId=ce7cbaa7-582c-5570-40f4-267b3d85fc9f&taskId=4a56039b-7269-50ae-de7a-538e91e6de06&lineStart=1377&lineEnd=1378&colStart=1&colEnd=1
Seems like the hardcoded link is being changed.

I'm guessing this is the reason why it works on mac and linux: https://dev.azure.com/conda-forge/feedstock-builds/_build/results?buildId=43080&view=logs&jobId=ce7cbaa7-582c-5570-40f4-267b3d85fc9f&taskId=4a56039b-7269-50ae-de7a-538e91e6de06&lineStart=1377&lineEnd=1378&colStart=1&colEnd=1
Seems like the hardcoded link is being changed.

I can see many messages like:
Detected hard-coded path in text file bin/gmt-config
Detected hard-coded path in text file include/gmt/config.h
Detected hard-coded path in binary file bin/gmt
Detected hard-coded path in binary file lib/gmt/plugins/supplements.so
Detected hard-coded path in binary file lib/libgmt.6.0.0.dylib
Detected hard-coded path in binary file lib/libgmt.6.dylib
Detected hard-coded path in binary file lib/libgmt.dylib
Detected hard-coded path in binary file lib/libpostscriptlight.6.0.0.dylib
Detected hard-coded path in binary file lib/libpostscriptlight.6.dylib
Detected hard-coded path in binary file lib/libpostscriptlight.dylib

hard-coded paths are detected, but I don't see where the paths are changed.

@leouieda Please update the PR. Maybe we can use the tarballs from github releases (https://github.com/GenericMappingTools/gmt/releases/tag/6.0.0rc1).

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [50]

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@leouieda I remember we have to set COPY_GSHHG and COPY_DCW to true on Windows. Maybe you can check if it's still necessary.

@seisman good point :+1:

It's still needed. The data path is still being hard coded.

@seisman all tests pass now. Can you think anything else that needs to be done before merging?

I think it's good to merge.

@seisman I'm trying to install the package on my machine in a blank environment and keep getting
UnsatisfiableError: The following specifications were found to be in conflict:
  - gmt=6.0.0rc1

Same happens with 6.0.0a19 but not with 5.4.5. Could you please try it out and see if you get the same error?

I don't see any problem. This is what I did:
$ conda create --name myenv-test python=3.7
$ conda activate myenv-test
$ which python
/Users/seisman/.anaconda/envs/myenv-test/bin/python
$ conda install -c conda-forge/label/dev gmt
... install many packages ...

$ which gmt
/Users/seisman/.anaconda/envs/myenv-test/bin/gmt

$ gmt --version
6.0.0rc1

$ conda list
# packages in environment at /Users/seisman/.anaconda/envs/myenv-test:
#
# Name                    Version                   Build  Channel
boost-cpp                 1.70.0               hd59e818_0    conda-forge
bzip2                     1.0.6             h1de35cc_1002    conda-forge
ca-certificates           2019.6.16            hecc5488_0    conda-forge
cairo                     1.16.0            h0ab9d94_1001    conda-forge
certifi                   2019.3.9                 py37_0    conda-forge
cfitsio                   3.430             h50cca31_1002    conda-forge
curl                      7.64.1               h22ea746_0    conda-forge
dcw-gmt                   1.1.4                      1001    conda-forge
expat                     2.2.5             h0a44026_1002    conda-forge
fftw                      3.3.8           nompi_h5c49c53_1105    conda-forge
fontconfig                2.13.1            h1027ab8_1000    conda-forge
freetype                  2.10.0               h24853df_0    conda-forge
freexl                    1.0.5             h1de35cc_1002    conda-forge
gdal                      2.4.1            py37h39889d8_4    conda-forge
geos                      3.7.1             h0a44026_1000    conda-forge
geotiff                   1.5.1                h83de174_2    conda-forge
gettext                   <IP_ADDRESS>          h46ab8bc_1002    conda-forge
ghostscript               9.22              h0a44026_1001    conda-forge
giflib                    5.1.7                h01d97ff_1    conda-forge
glib                      2.58.3            h9d45998_1001    conda-forge
gmt                       6.0.0rc1             hc6df392_0    conda-forge/label/dev
gshhg-gmt                 2.3.7                      1002    conda-forge
hdf4                      4.2.13            hf3c6af0_1002    conda-forge
hdf5                      1.10.5          nompi_h0cbb7df_1100    conda-forge
icu                       58.2              h0a44026_1000    conda-forge
jpeg                      9c                h1de35cc_1001    conda-forge
json-c                    0.13.1            h1de35cc_1001    conda-forge
kealib                    1.4.10            h6659575_1005    conda-forge
krb5                      1.16.3            hcfa6398_1001    conda-forge
libblas                   3.8.0                7_openblas    conda-forge
libcblas                  3.8.0                7_openblas    conda-forge
libcurl                   7.64.1               h16faf7d_0    conda-forge
libcxx                    8.0.0                         2    conda-forge
libcxxabi                 8.0.0                         2    conda-forge
libdap4                   3.19.1            hae55d67_1000    conda-forge
libedit                   3.1.20170329      hcfe32e1_1001    conda-forge
libffi                    3.2.1             h6de7cb9_1006    conda-forge
libgdal                   2.4.1                hbed8f18_4    conda-forge
libgfortran               3.0.1                         0    conda-forge
libiconv                  1.15              h01d97ff_1005    conda-forge
libkml                    1.3.0             hed7d534_1010    conda-forge
liblapack                 3.8.0                7_openblas    conda-forge
libnetcdf                 4.6.2             h1a02027_1002    conda-forge
libpng                    1.6.37               h2573ce8_0    conda-forge
libpq                     11.3                 h56406e1_0    conda-forge
libspatialite             4.3.0a            he900ada_1028    conda-forge
libssh2                   1.8.2                hcdc9a53_2    conda-forge
libtiff                   4.0.10            hd08fb8f_1003    conda-forge
libxml2                   2.9.9                hd80cff7_0    conda-forge
llvm-openmp               8.0.0                h770b8ee_0    conda-forge
lz4-c                     1.8.3             h6de7cb9_1001    conda-forge
ncurses                   6.1               h0a44026_1002    conda-forge
numpy                     1.16.4           py37h6b0580a_0    conda-forge
openblas                  0.3.5             h436c29b_1001    conda-forge
openjpeg                  2.3.1                hc1feee7_0    conda-forge
openssl                   1.1.1b               h01d97ff_2    conda-forge
pcre                      8.41              h0a44026_1003    conda-forge
pip                       19.1.1                   py37_0    conda-forge
pixman                    0.38.0            h01d97ff_1003    conda-forge
poppler                   0.67.0               hb974355_6    conda-forge
poppler-data              0.4.9                         1    conda-forge
postgresql                11.3                 hf10c77c_0    conda-forge
proj4                     6.1.0                h2cc77ee_2    conda-forge
python                    3.7.3                h0d93f26_0    conda-forge
readline                  7.0               hcfe32e1_1001    conda-forge
setuptools                41.0.1                   py37_0    conda-forge
sqlite                    3.28.0               h9721f7c_0    conda-forge
tk                        8.6.9             h2573ce8_1002    conda-forge
tzcode                    2019a             h01d97ff_1002    conda-forge
wheel                     0.33.4                   py37_0    conda-forge
xerces-c                  3.2.2             h44e365a_1001    conda-forge
xz                        5.2.4             h1de35cc_1001    conda-forge
zlib                      1.2.11            h1de35cc_1004    conda-forge
zstd                      1.4.0                ha9f0a20_0    conda-forge

gmt pscoast also works for me.

Yep, just figured it out. I had channel_priority_strict in my setup and that broke things.


Make Staking link more prominent

There have been several requests to make the staking link more prominent, rather than being hidden in the hamburger menu. This would necessitate a refactor of the header, possibly including moving the dark mode toggle to the hamburger menu.
We should also consider updating the search bar presentation as a part of this--we ought to have a header with good RWD after issue completion

Duplicated, migrated your comment to https://github.com/telosnetwork/teloscan/issues/175


Is there a list of prompts used in training that we can use when creating videos?

I'm curious what prompts DynamiCrafter responds to? I see some in the examples, but I was wondering if there was a resource that had more info on what type of prompts it responds best to?

During training, we use BLIP-2 for captioning, so you can try to cap your image using online BLIP-2.


Gg lensing

Just removed galsim dependence from image_simulation.py.

@nkhadka21 there are some conflicts to be solved. Best is to solve them on your end

@nkhadka21 there are some conflicts to be solved. Best is to solve them on your end

Resolved!


Fix incorrect featured variables ordering

Fixes https://github.com/VEuPathDB/web-eda/issues/544
First pass fix; kind of a roundabout solution that seems a bit inefficient. I might try to improve it a bit. Will also clean code up

Note to reviewers: the latest commit has two solutions to fix this problem. The result of the first is sortedFeaturedFields and the second is featuredFieldsFromTree. They should be identical. What isn't identical is the algorithms, and I'd appreciate feedback on which is best.
Solution 1 (sortedFeaturedFields) (inefficient):

(existing code) Get incorrectly ordered featuredFields from useFeaturedFields, which processes entities
(existing code) Get fieldTree from useFieldTree that processes flattenedFields (which is derived from entities). fieldTree is correctly ordered but does not know which fields are featured (fields are missing isFeatured prop)
Get correctly ordered featured field terms from fieldTree by cross-referencing with featuredFields to know which fields are featured
Correctly sort featuredFields by cross-referencing order from featured field terms obtained from fieldTree

Solution 2 (featuredFieldsFromTree) (not type safe):

Retain isFeatured prop for fields in fieldTree
Use as typecasting to silence TypeScript complaining about this
Get correctly ordered featured fields directly from fieldTree

I will add a new commit with only the solution that's best from these two after getting feedback. Also open to a better solution than either of these!

@Dave that sounds good. I'm trying to figure out the details. I have a PR (https://github.com/VEuPathDB/WDKClient/pull/174) on wdk-client that isn't quite working. I'd appreciate your eyes on it over there!

Requires https://github.com/VEuPathDB/WDKClient/pull/174


[tool_crash] FileSystemException: Cannot copy file to 'C:\Users\User 1\Desktop\flutter\sampleproject\android\app\src\main\res\mipmap-hdpi\ic_launcher.png', path = 'C:\src\flutter\flutter\packages\flutter_tools\templates\app\android.tmpl\app\src\main\res\mipmap-hdpi\ic_launcher.png' (OS Error: Access is denied., errno = 5)

Command
flutter create sampleproject

Steps to Reproduce

...
...
...

Logs
FileSystemException: FileSystemException: Cannot copy file to 'C:\Users\User 1\Desktop\flutter\sampleproject\android\app\src\main\res\mipmap-hdpi\ic_launcher.png', path = 'C:\src\flutter\flutter\packages\flutter_tools\templates\app\android.tmpl\app\src\main\res\mipmap-hdpi\ic_launcher.png' (OS Error: Access is denied.
, errno = 5)
#0      _File.throwIfError (dart:io/file_impl.dart:645:7)
#1      _File.copySync (dart:io/file_impl.dart:350:5)
#2      ForwardingFile.copySync (package:file/src/forwarding/forwarding_file.dart:30:50)
#3      ForwardingFile.copySync (package:file/src/forwarding/forwarding_file.dart:30:50)
#4      Template.render.<anonymous closure> (package:flutter_tools/src/template.dart:227:18)
#5      _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:379:8)
#6      Template.render (package:flutter_tools/src/template.dart:153:24)
#7      CreateCommand._renderTemplate (package:flutter_tools/src/commands/create.dart:630:21)
#8      _rootRunUnary (dart:async/zone.dart:1192:38)
#9      _CustomZone.runUnary (dart:async/zone.dart:1085:19)
#10     _FutureListener.handleValue (dart:async/future_impl.dart:141:18)
#11     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:682:45)
#12     Future._propagateToListeners (dart:async/future_impl.dart:711:32)
#13     Future._completeWithValue (dart:async/future_impl.dart:526:5)
#14     _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:36:15)
#15     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:298:13)
#16     Template.fromName (package:flutter_tools/src/template.dart)
#17     _rootRunUnary (dart:async/zone.dart:1192:38)
#18     _CustomZone.runUnary (dart:async/zone.dart:1085:19)
#19     _FutureListener.handleValue (dart:async/future_impl.dart:141:18)

[✓] Flutter (Channel stable, v1.17.0, on Microsoft Windows [Version 10.0.18363.959], locale
    en-GB)
    • Flutter version 1.17.0 at C:\src\flutter\flutter
    • Framework revision e6b34c2b5c (3 months ago), 2020-05-02 11:39:18 -0700
    • Engine revision 540786dd51
    • Dart version 2.8.1

[!] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Users\User 1\AppData\Local\Android\sdk
    • Platform android-29, build-tools 29.0.3
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    ✗ Android license status unknown.
      Try re-installing or updating your Android SDK Manager.
      See https://developer.android.com/studio/#downloads or visit visit
      https://flutter.dev/docs/get-started/install/windows#android-setup for detailed
      instructions.

[✓] Android Studio (version 4.0)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 48.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.47.3)
    • VS Code at C:\Users\User 1\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.13.1

[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

Flutter Application Metadata
No pubspec in working directory.

Hi @OkekeS,
There's similar open issue describing your case, 50880.
Please follow-up there for updates.
Closing this as duplicate.


Enable email notifications for the Jenkins Deploy App

I want to be notified as soon as possible if any of my changes mean that
an app can't be deployed to integration.
A recent change to manuals-publisher caused the deployment to
integration to fail. We only became aware of this problem when we tried
to deploy to production and were informed by 2ndline. We (Go Free Range)
recall having a similar problem when working on smart-answers.
NOTE. Although my use case is for deployments to integration the change
in this commit will mean that we're notified of deployment failures for
all environments.
I've looked through the history of this file to see whether we've
previously removed these notifications (i.e. whether this commit is
reverting a previous commit) but that doesn't seem to be the case.
I copied the email configuration from the
integration_app_deployment.yaml.erb file as I know I've seen email
notifications from that Job in Jenkins.
I haven't added a test for this change as we don't appear to have added
tests for similar changes in the past.

I think we should notify the #2nd line slack channel as well. People deploying stuff are likely to be in that channel, and we already notify about the progress of a deployment.
Personally, I avoid checking my email in the middle of the day if I can avoid it - it's a massive distraction for me. Can understand some people feel the same way about slack, but it's easy to mute/leave channels and come back them to when you need them.

Looks good to me 👍

Thanks for the reviews/feedback @floehopper, @boffbowsh and @MatMoore. I've merged it to master.

I think we should notify the 2nd line slack channel as well. People deploying stuff are likely to be in that channel, and we already notify about the progress of a deployment.

@MatMoore: Out of interest, do you imagine notifying Slack for deploys to integration? Or would you restrict it to staging and integration?

@chrisroos ah that's a good point. We currently get notified on slack for staging and production deploys, but integration is silent. So it would probably be more noisy than I was imagining it being.


Gadfly tests are broken due to deprecations in DataFrames

Gadfly's tests depend on RDatasets, which was broken by the latest release of DataFrames.

Waiting on a new DataFrames tag to go through (JuliaLang/METADATA.jl#6274) that should fix this problem.

Still not fixed. See https://github.com/johnmyleswhite/RDatasets.jl/pull/43#issuecomment-245340409

Looks like they are passing now.


More consistently backport type system fixes

Search Terms
backport, fixes, type system

Suggestion
When a type system bug is introduced in version X, and later fixed in version X+n,
the fix should be backported all the way to X (or at least a reasonable number of past releases).
Use Cases
This feature request is mostly for library authors with source code in native TypeScript.
When a new version of TypeScript is released, library authors have to scramble to check that it doesn't break their .d.ts files (handwritten or tsc-generated). If it is broken, they have to somehow fix it so that it works on existing versions of TS, and also the new version.
Over time, the result is a lot of duplicated .d.ts files that may go out of sync, and are prone to mistakes.
Surprisingly, JS library authors will have an easier time with this problem, since they will probably already be writing their own .d.ts files and use typesVersions.
Examples

export type AnyExtendedMapper =
    ExtendedMapper<any, any, any[]>
;
export type ExtendedMapper<HandledInputT, OutputT, ArgsT extends any[]> =
    (name : string, mixed : HandledInputT, ...args : ArgsT) => OutputT
;

declare function extraParamsOfImpl<F extends AnyExtendedMapper> (f : F) : F;

declare const mixed_1: ExtendedMapper<unknown, never, []>;

export const test_1 = extraParamsOfImpl(mixed_1);
//                                      ~~~~~~~
//                                      3.3.3 works
//                                      3.5.1 does not work
//                                      3.6.3 does not work
//                                      3.7.4 does not work
//                                      3.8.3 works

type ExtraParamsOfImpl<F extends AnyExtendedMapper> = F

type Test = ExtraParamsOfImpl<ExtendedMapper<unknown, never, []>>
//                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//                            3.3.3 works
//                            3.5.1 does not work
//                            3.6.3 does not work
//                            3.7.4 does not work
//                            3.8.3 works

Playground
Since the fix in 3.8.3 was not backported to 3.5.1, 3.6.3, 3.7.4, my options are the following,

Only support 3.3.3
This is bad because over time, the library will just become more and more irrelevant

Only support 3.8.3
This is bad because it alienates old users, or extra effort has to be put in to backport new features

Find a way to write the type such that it works on all versions of TS
This is bad because it is not always possible, or may require significant effort to shuffle types around.
And you also have to write compile-time (type-level) tests for each TS version you want to support, to make sure the fix works for all versions of TS.

Write a custom .d.ts file for 3.5.1, 3.6.3, 3.7.5 and use typesVersions
This is bad because you now have to write one set of .d.ts per TS version.
Requires compile-time tests for each handwritten set of .d.ts files, and tsc-generated files.
Very error-prone.

Use downlevel-dts, hope it does not produce broken emit for older TS versions, and use typesVersions
Also bad because "generate output that does not break on older releases due to introduced compiler bugs" is probably not a use case downlevel-dts was intended to solve.
Generated output still needs to be fixed by humans.
Requires compile-time tests for each set of downlevel-dts .d.ts files, and tsc-generated files.
Very error-prone.

In some cases, it's possible that an entire library becomes completely useless because type system fixes were not backported, and new bugs were introduced.

TS 3.3.3 is OK
TS 3.5.1 introduces type system bug A
TS 3.6.3 fixes type system bug A (not backported)
TS 3.6.3 introduces type system bug B

The library is stuck on TS 3.3.3 because 3.5.1 has bug A, and 3.6.3 has bug B.
The library author has to somehow find a workaround for both bugs to support 3.5.1 and 3.6.3.
The problem gets worse as new versions are added.

I'm actually running into such a problem, at this point.
Exhibit A: Playground
Exhibit B: https://github.com/microsoft/TypeScript/issues/38235
Bugs with each TS version,

3.3.3: -NA-
3.5.1: A
3.6.3: A
3.7.5: A
3.8.3: B

So, I'm stuck on TS 3.3.3 because any later version gives me some kind of bug I have to work around.

In other cases, a project may find it impossible to update their TS version.

TS 3.3.3 is OK
TS 3.5.1 introduces type system bug A
TS 3.6.3 fixes type system bug A (not backported)
TS 3.6.3 introduces type system bug B

The project is stuck on TS 3.3.3 if library L triggers bug A, and library M triggers bug B.

Upgrading to TS 3.5.1 breaks L.
Upgrading to TS 3.6.3 breaks K.

The project now needs to wait for a new TS version that fixes both A and B in the same release, or wait for L and M to find workarounds... Or find other libraries that support the new TS version.
The more libraries the project uses, the greater the chance of being unable to update their TS version.

Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

I understand that asking for type system fixes to be backported many versions increases the burden on the TS team, but it makes life easier for library authors.
And also makes life easier for library consumers, I suppose.
Imagine filing a bug report like,
"Your library does not work for TS version X",
and then being told,
"Downgrade TS to X-k".
And then downgrading causes errors for 10 other libraries due to other compiler bugs with fixes that were not backported.

I appreciate the problems here, but this would be an incredibly large amount of work; we simply are not staffed to do this for anything but the most critical fixes. Often these "fixes" end up breaking other things as both intentional and unintentional side effects; we'd have to have some kind of epicyclic versioning scheme like "This is 3.6 plus the 3.9 fixes that we know cause certain other breaks", which is somehow neither a strict 3.6.x nor a 3.9.x release.

That's fair.
I knew it would be a massive amount of extra work but wanted to try bringing it up, anyway.
Thanks for looking at it!


Added COD special request  to the FedEx carrier shipment.

Allows shipment to be created with COD special service type for FedEx.

I'm not quite sure what your intention is with this PR, but I'm going to close it for now.
If you have a feature to add, please read our contribution guidelines, then submit a PR with a full description, tests, and a green build.


Little API Changes & Player Capabilities

Changes to names and such, including Player sneaking & sprinting booleans.

Essentially, we have our naming conventions for a reason. Can you elaborate on why you made the change from foo() to getFoo()?

@MazenMC I wasn't sure if it was a mistake or not. I haven't seen anyone use naming like that before. :P

Java's Collections interface uses this naming convention.

Java 8's Stream API uses this convention, not forgetting Objective-C's conventions state getters must have the same name as the property. "Unless specified otherwise, a getter method should use the same name as the property. For a property called firstName, the accessor method should also be called firstName. The exception to this rule is for Boolean properties, for which the getter method should start with is. For a property called paused, for example, the getter method should be called isPaused."

@mythbusterma Hrm... Here's how I see it:
It's like a sentence. Your object is the subject, and your method is the predicate.
Phase.getPizza(); -> Phase gets pizza.
Phase.pizza(); -> Phase pizza.
I'm not here to argue about that though, the main point was the Player changes. I'll change it back since Travis is yelling at me about it.

@Phasesaber It's worth noting that by what you are saying here, getPizza should invoke Phase to get a pizza, not return a property.

@MazenMC But it's returning the pizza value from the object, aka getting it.

And is there any reason to have the override in LivingEntity?

Closing this because the one commit changed into ten. :P

@Phasesaber Didn't anyone ever tell you about rebasing? : -^ )

@rowtn No, I'll have to look into that later! :hurtrealbad:


Jitter should be unconditional

In RetrySettings
public abstract boolean isJittered()
Jitter determines if the delay time should be randomized. In most cases, if jitter is set to true the actual delay time is calculated in the following way:
 actualDelay = rand_between(0, min(maxRetryDelay, delay))
The default value is true.

This method is way overspecified. We should deprecate it and always jitter.

When we do a major release, we'll have to go over all deprecated APIs and remove them. This should be covered by that.


Performance

Nice project :-)
Look forward to test it out.
Just need a .Net std. version....I'll see if I'm lucky to just change target output in the project.
Any idea of the performance difference between native 7z?

It's a greate and simple framwork with tools.!!


Fixed issue of writing 13 bytes sendSerialMessage with causes error Received message of unknown type 0x0001

I came across an issue where the Bean with become unresponsive after writing 13 bytes. I also get the logcat message Received message of unknown type 0x0001 when that happens. Googling seems to show a similar instance of this reported, but with scratch data ( http://beantalk.punchthrough.com/t/is-bean-still-supported-by-punchthrough/4056/2 ).
This only happens with 13 bytes, 12 bytes and 14 bytes are fine, indicating that this is possibly a boundary issue. I looked through the code, and found an issue in GattSerialTransportProfile.sendMessage
https://github.com/PunchThrough/bean-sdk-android/blob/dc33e8cc9258d6e028e0788d74735c75b54d1133/sdk/src/main/java/com/punchthrough/bean/sdk/internal/serial/GattSerialTransportProfile.java#L207
int packets = (int) (message.size() / PACKET_TX_MAX_PAYLOAD_LENGTH);
PACKET_TX_MAX_PAYLOAD_LENGTH is 19

when message.size() is 18, packets is 0
when message.size() is 19, packets is 1, when it should be 0.
when message.size() is 20, packets is 1.

I've refactored packets to indicate the number of total packets, such that:

when message.size() is 18, packets is 1
when message.size() is 19, packets is 1
when message.size() is 20, packets is 2

and changed the following new GattSerialPacket logic to use pre-decrement on packets
I've also added a test case to illustrate the issue.

Nice find loune. We had have been hitting issues with sendSerial and my intuition tells me that this what we have been hitting. In general, I have found the Bean Android SDK to be buggy and lacking in so many ways.


Store min gene cutoff and prob compromised in metadata of processed SCE object

In order to create the table being added in https://github.com/AlexsLemonade/scpcaTools/pull/131 we will want to have any parameters used for filtering low quality cells in the metadata of the processed SCE object. Right now we just store the filtering method but not the cutoffs used. We should also add the gene_cutoff argument and the prob_compromised_cutoff to the metadata of the processed SCE object in post_process_sce.R.

Closed by #228


DS-296 Image Element

Jira
https://pegadigitalit.atlassian.net/browse/DS-296
Summary
Adds an Image element that handles responsive images.
Details

Image element is created with minimal CSS.
fill prop allows an image to always stretching to 100% width.
background prop transform the image into an absolute positioned background image. This removes the need to use the Background component.
Two CSS custom props are available to further adjust the background image fit and position.

How to test
Run the branch locally and read through all the Image docs and demos under Elements. Make sure all props work as expected.

This work is in a draft state until we start the Bolt Image sprint.

Approved, just have a quick question


[#155040882] set accessibility to false on outer touchable components…

… of drop down library

Thanks for PR! Per-item customisation is implemented in 0.9.0 via propsExtractor prop. Now it's possible to override default item props and in particular toggle accessibility status.


Build from source?

So sorry - not an issue, but how do I build this (on linux) from the git source?

Just go build or go install it like other Go applications.


ModelRoleMember Exception Error

When clicking the 'X' to close the ModelRoleMember Collection Editor, an unhandled exception error comes up.

Interestingly, this only happens the first time you close out this window for each role. Second time for each role and on there is no error.

Fixed in 2.8.4. Thanks for reporting!


Empty tags

I am using the default theme antimatter, and I am experiencing that tags in blog_item.html.twig, is rendering the anchor tag even if there are no tags.
This is my first experience with twig, but maybe it should check the length of the page.taxonomy.tag, or the backend method could return false if length === 0.

Can you check the blog item page does not contain the taxonomy: tag: header? If it's present and set as [''] then it shows the tags container.
Saving from the admin (latest version at least) should always remove the empty tag header.

Hey @flaviocopes
I'm not sure where you wanted me to look for the taxonomy: tag:, but it's not in the blog_item.html.twig template. And I re-opened the blog item with the empty tag, saved it, and it's gone :)
This was done via the admin plugin.
Thanks for the info.

Yes sorry I meant in the page md file (e.g. pages/blog/blog2/item.md file). Glad you sorted it out!


removed all quotes from extracted webpage to solve issue 10455

Regarding issue #10455
I had the same issue, hence here's one possible fix:
webpage = webpage.replace('\\"', "") (added to the file youtube_dl/extractor/bandcamp.py)
Note: possibly this could be done right before any extraction is performed on the webpage.
Cause of the problem is the \" on the extracted webpage (see below)

... makes the regex exit immediately (see below)

Alternative Fix: use the regex itself to jump the quotes
Details:
Tested in Mac OSX
Last pull from git (as of Tue Aug 30 02:56:46 CEST 2016)
Cloned into: https://github.com/PedroLopes/youtube-dl
P.s.: @bryc I think your text command should have quotes too (at least I needed those to replicate your issue), hence:
youtube-dl -v -a urls.txt -i -o "%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s"

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests

What is the purpose of your pull request?

[x] Bug fix
[ ] New extractor
[ ] New feature

This is just another hack. Instead regex should be fixed and inner quotes should be extracted as part of title.

Hey @dstftw , here's a (possible) regex solution (there might be a nicer formulation out there):
album_title\s*:\s*"((\\\")*(.*)?|(.*)?)" that seems to work for both the standard case and the new case (added this to my fork (at: https://github.com/PedroLopes/youtube-dl). Works for:

normal case (no "):

special case with quotes

However, when tested, although it matched correctly, when it produces an incorrect folder name:
'Entropy_' EP (I'm not sure where the _ is coming from)
I don't think this is a better output than with the other solution, but we can also explore where the _ is coming from and find a better/nicer fix.


receiver: minimized allocations in Base.PlainParseLine and one-pass escape

Some perfomance optimizations for receiver:

One pass escape with direct write

BenchmarkGraphite-6   	  861072	      1325 ns/op	     288 B/op	       3 allocs/op
BenchmarkGraphiteEscaped-6   	  781430	      1446 ns/op	     592 B/op	       4 allocs/op

Original version
BenchmarkGraphite-6   	  750898	      1505 ns/op	     544 B/op	       6 allocs/op
BenchmarkGraphiteEscaped-6   	  631176	      1697 ns/op	     613 B/op	       8 allocs/op

Convert string to []bytes with unsafe method (no allocation)

BenchmarkPlainParseBuffer-6   	 7500656	       157 ns/op	       0 B/op	       0 allocs/op

Original version
BenchmarkPlainParseBuffer-6   	 5230838	       200 ns/op	      48 B/op	       1 allocs/op

As far as I got, here instead of strings now something like a memory-efficient buffer is used. Am I right?
Unfortunately, we don't use the tags, so I can't check if it works. Would be nice to get some approves if somebody uses it.

As far as I got, here instead of strings now something like a memory-efficient buffer is used. Am I right?
Unfortunately, we don't use the tags, so I can't check if it works. Would be nice to get some approves if somebody uses it.

As far as I got, here instead of strings now something like a memory-efficient buffer is used. Am I right?
Unfortunately, we don't use the tags, so I can't check if it works. Would be nice to get some approves if somebody uses it.

Yes. And reduce allocation during string to bytes conversion.
I'll use this in our production environment.


Formally verify Expression and ISI strict typing

Strict typing := no implicit conversions and operations without any overloads.
Example:
StandardML is a strictly-typed language, meaning no implicit conversions.
> 1 + 2
3
> 1.0 + 2
Elaboration failed: Type clash. Functions of type "int * int → int" cannot take an argument of type "real * int": Cannot merge "real" and "int".

Corollary
Add<u64, u128>

Is not implemented, the u64 needs to be manually converted into u128. While this can cause some inconvenience for the developers, given that what we're dealing with are financial calculations, this is actually a benefit.
What this leads to is also a simplification of some of the underlying code. All binary operations have strictly two branches, which are reduced to one thanks to EvaluatesTo<u64>.
Relation to #1568
Code that resolves this issue also resolves #1568, but not the other way around.

Added benefit, this is how rust does things.

we don't have expressions in the core anymore


Android - Update Image.getSize to use encoded image

Regarding issue #14357
Manually tested it on remote URLs of png, jpeg and bmp formats.
Additional notes:

It is possible to add support for static images in the future.
parseMetaData function is also extracting image format which is unnecessary - thus, it can be replaced with the code from parseMetaData that only gets width & height.

(Might be low-level breaking change (?) - Changing from fetchDecodedImage to fetchEncodedImage probably means that the decoded image will not be cached as it used to be [apparently, regarding fresco documentation, the encoded image will be cached])

cc @foghina, could you help review this? :)

@foghina I pushed a commit to fix that error :)

@bood You should open a new PR and reference this one.

@orenklein PR #15887 created


Make the MultiPart Form parser Sans-IO

This PR addresses #1788 and lays groundwork to make form parser Sans-IO in order to support ASGI.
Relevant PR and issues:

PR: #1330

fixes #1788

Checklist:

[ ] Add tests that demonstrate the correct behavior of the change. Tests should fail without the change.
[x] Add or update relevant docs, in the docs folder and in code.
[x] Add an entry in CHANGES.rst summarizing the change and linking to the issue.
[x] Add .. versionchanged:: entries in any relevant code docs.
[x] Run pre-commit hooks and fix any issues.
[x] Run pytest and tox, no tests failed.

You'll want to rebase, I just merged something to address the Windows CI failure.

Hi, how is this going?

Hey Cory, just need to incorporate your requested changes and we are good for review! Will ping you on #pallets.

Please change the PR's description. I don't think the parser is fully Sans-IO yet, but you are definitely laying the groundwork for that.
Please add @davidism as a reviewer.

Thanks for working on this. Unfortunately, it never got to the point that I was looking for as described in #1788. I'm worried that the way it's organized and the lack of documentation, will make it hard to maintain, and no tests were added to demonstrate the sans-io behavior. I'm going to close this and use it as another reference when writing an implementation at a later date.

Thanks for working on this. Unfortunately, it never got to the point that I was looking for as described in #1788. I'm worried that the way it's organized and the lack of documentation, will make it hard to maintain, and no tests were added to demonstrate the sans-io behavior. I'm going to close this and use it as another reference when writing an implementation at a later date.


Fix #3: Add necessary parameters to DeleteResourceRecordSet

This PR fixes #3. Allows callers to make valid DeleteResourceRecordSet requests.
Without the TTL and backend value for a record, DELETE requests are not valid.
I didn't change the package version in SolutionInfo, but let me know if you'd like me to do that pre-merge

Merged and published in v0.0.7 👍


[19.09] [security] exim: 4.92.2 -> 4.92.3

Motivation for this change
Backport of https://github.com/NixOS/nixpkgs/pull/70071 for 19.09
security update: CVE-2019-16928
Related to https://github.com/NixOS/nixpkgs/issues/69811
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Notify maintainers
cc @4z3

@ofborg build exim

Please use git cherry-pick -x to backport commits. Doing the backport myself. Thanks!


run heroku tests on detection from title OR schedule

@madhur-tandon could use your help here to understand this ^ :)

@madhur-tandon could use your help here to understand this ^ :)

Earlier, I was using something known as a workflow dispatch -- i.e. you need to trigger an action manually.
But now, I have switched to detection of the keyword heroku in title of the PR

The PRs https://github.com/iterative/mlem/pull/457 and https://github.com/iterative/mlem/pull/458 confirm that this works 😄

Looking good! Thanks @madhur-tandon!
I remember we had a discussion about doing the same for k8s/sagemaker. Don't remember the resolution. Should we do this for them also?

I remember we had a discussion about doing the same for k8s/sagemaker. Don't remember the resolution. Should we do this for them also?

K8s test are self contained, won't be necessary.
@mike0sv can comment on Sagemaker maybe

K8s test are self contained, won't be necessary.

how much time do they take? Speeding up CI would be a good thing also.

how much time do they take? Speeding up CI would be a good thing also.

The point of this PR was not to speed up CI, it was to control flaky behaviour of heroku so we don't get unnecessary failures.


New Harbor UI requested for your comments

Below are overall UI designs, please feel free to your comment.

User Login

Dashboard View

Admin Dashboard View

My Projects List

Add New Project

Public Project List

Repositories List

Change Repository List View

Confirmation of Deleting Repository or Tag

Show Image Details

Select a Repository

Project Members

Add a Project Member

Project Member Management

Audit Logs

Advanced Search for Audit Logs

Sign Up

After Login, Select Account Settings

Show Account Info

Change Password

Change Languages

Admin Options, Add User

Admin Options, Add User Successfully

Admin Options, Something Wrong When Adding User

Admin Options, Make User As Admin

Admin Options, Make User As Normal.

Admin Options, System Configuration and Management

We are redesigning the UI of Harbor, and would like to request for your comments. Please let us know how you like / don't like the new UI. Thanks!

The detail pages look good, but not the dashboard view page.
It seems to me that the dashboard view has too much details on it. Is it possible to simplify log info on dashboard? There is already a detailed page for audit log.

despite the design, the html and javascript should be strictly seperated using angular.js

@senk Thank you for the suggestion. We are using angular.js in the new design.

@hmwenchen Great suggestion! How do you think we can simplify the log info in the dashboard view page? Or shall we simply remove it, if you think it is irrelevant.

It can be removed. Or, it may be integrated into summary section.

It might be a good idea to put user's dropdown menu to the top right corner and also make it a bit bigger + add profile picture.

Please open new issue as the new UI has released in 0.3.0


Games crashing idk man

latest.log

Looks like treechop doesn’t like a new Project MMO update. If you want to keep both mods, switching to an earlier PMMO version should fix this. I can’t say which version though
@Caltinor can the class come back, or should I update things on my end?

@hammertater that class hasn't changed, ever.  Do we know what version this is for?  I suspect they are using the legacy pmmo that dawncraft uses when the compat is with the reworked version of pmmo

@Caltinor Ahhh yeah, you're right! Thanks for the info. I'll add a check for the legacy version


Create PackageStructure to centralize regex and logic on the package conventions

Create an ArchitecturePackage type based on sonar-devon4j-plugin's: DevonPackageImpl
Three methods to create:

[X] given a JavaClass as input
[X] given a Package name as input
[X] given a fully classified class name

Return a DevonPackage on which methods like:

get Component
get Layer
get scope
etc.

can be called to simplify task  #19.

Had been done with PR #34. Hence closing.


Feature/add pathfactory fieldgroups v3

Added Pathfactory custom fieldgroups for below 5 structures,
1] Pathfactory Session
2] Pathfactory Visitor
3] Pathfactory PageView
4] Pathfactory Content
5] Pathfactory Content Track
Fixes issue #1865

@anandphatak @diganttyagi1 Will this be part of next XDM release ? or when will this PR be merged, can you please let us know ?


Add a transformation function as parameter while building types

https://github.com/data-tools/case-class-to-database-types/blob/bb47f0a0f4e419360bb102801770429f683a0a46/src/main/scala/org/datatools/cc2db/types/BigQueryTypes.scala#L34

https://github.com/data-tools/big-data-types/pull/11


[#119177161] Turn off V3 API tests, which don't currently work

What
The acceptance-tests suite for v233 includes a test for the v3 api which fetches a go buildpack from github. Within the last 48 hours, the go buildpack has been changed in github in a manner which appears to make it incompatible with the version of the tests we're running. Later versions of the acceptance tests have been swtiched to use a ruby buildpack instead of the go buildpack - We need to disable the v3 acceptance tests (which are disabled already in the PR for upgrading to CF 235) to unblock the pipelines.
How to review
If you have an existing environment deployed from our current master branch, you will find that the acceptance tests are already failing. Deploying from this branch should fix that problem.
Who can review
Anyone on the team excecpt for myself or @saliceti .

Waiting for tests to run..

https://github.com/alphagov/paas-cf/pull/259 also disables this here: https://github.com/alphagov/paas-cf/pull/259/files#diff-657ec4d8555241f88c182201d568500cR13

Uh, I just noticed that this is probably cherry picked commit :)

v3 was skipped. Tests passed.


1.16 compatibility

Minecraft 1.16 is upon us, and it comes with several new blocks.
I'm not sure which information is needed, but I'd be happy to help digging it out, to get MinedMap compatible as soon as possible.

Wow, that's a lot of new block types... Thanks for the reminder, I should be able to take care of it on the weekend.
A quick diff on assets/minecraft/blockstates in the Minecraft .jar gives me 83 new block IDs:
ancient_debris
basalt
blackstone
blackstone_slab
blackstone_stairs
blackstone_wall
chain
chiseled_nether_bricks
chiseled_polished_blackstone
cracked_nether_bricks
cracked_polished_blackstone_bricks
crimson_button
crimson_door
crimson_fence
crimson_fence_gate
crimson_fungus
crimson_hyphae
crimson_nylium
crimson_planks
crimson_pressure_plate
crimson_roots
crimson_sign
crimson_slab
crimson_stairs
crimson_stem
crimson_trapdoor
crimson_wall_sign
crying_obsidian
gilded_blackstone
lodestone
netherite_block
nether_gold_ore
nether_sprouts
polished_basalt
polished_blackstone
polished_blackstone_bricks
polished_blackstone_brick_slab
polished_blackstone_brick_stairs
polished_blackstone_brick_wall
polished_blackstone_button
polished_blackstone_pressure_plate
polished_blackstone_slab
polished_blackstone_stairs
polished_blackstone_wall
potted_crimson_fungus
potted_crimson_roots
potted_warped_fungus
potted_warped_roots
quartz_bricks
respawn_anchor
shroomlight
soul_campfire
soul_fire
soul_lantern
soul_soil
soul_torch
soul_wall_torch
stripped_crimson_hyphae
stripped_crimson_stem
stripped_warped_hyphae
stripped_warped_stem
target
twisting_vines
twisting_vines_plant
warped_button
warped_door
warped_fence
warped_fence_gate
warped_fungus
warped_hyphae
warped_nylium
warped_planks
warped_pressure_plate
warped_roots
warped_sign
warped_slab
warped_stairs
warped_stem
warped_trapdoor
warped_wall_sign
warped_wart_block
weeping_vines
weeping_vines_plant

Great, thank you!

I have just pushed a large update that adds 1.16 block support, as well as many other improvements (fixed spruce and birch leaf colors, fixed default and swamp water colors, warm/lukewarm ocean colors, as well as smooth transitions between biomes, similar to the way Minecraft renders this.)
Full release notes will follow soon.

Smooth transitions look great! And so do the ocean colors. The swamp water is very green, maybe it could lean more toward a blue-green tint?
I haven't tried rendering a 1.16 world yet, but I'll do it in the next days. Thanks for the update!

Swamp water color is chosen according to: https://minecraft.gamepedia.com/Water#Java_Edition

It is the correct color, yes, but it's still a bit confusing on a map, since it's very close to some kinds of terrain. I suppose I can always change it before I compile MinedMap 🙂

I have not tried all the new blocks, but rendering seems to work fine with 1.16 worlds. Thank you!


chore(main): release megaparse 0.0.51

:robot: I have created a release beep boop
0.0.51 (2024-12-16)
Features

updating langchain version (#187) (0f1f597)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/QuivrHQ/MegaParse/releases/tag/megaparse-v0.0.51 :sunflower:


No content is showing

After installing the plugin no content is showing

Hi, please supply the info requested here:
http://emby.media/community/index.php?/topic/739-how-to-report-a-problem/
Thanks.


In-place command module

Example:
.sub {rainbow test} {tango blah}
Would execute commands and insert the response text in place of the command in the input message.
Would allow for much simpler aliases, and more utility commands to build new commands on the fly.
Nested commands might be cool, too! Would need to do proper brace matching and build a 'command tree' for that.
Example:
.sub Test: {rainbow {tango foo} {flip bar}}
Might even replace the need for Chain? Although I'm sure it would still have some uses.

Implemented as of d203142c4143ef904a1cfbd24feeae19ab554e93 and bb1fcb006d5e4bde91cdbb5e2833688f198ee397


Support for AIX

These changes add support for the AIX platform.
In our AIX 7 environment, the SubprocessTest.InterruptChild test does not pass due to the /bin/sh shell being a really old version of ksh. I'll address the issue of using a different shell in a separate pull request.

Can you investigate a bit why the segfault happens?

Sorry for the lack of response here. I investigated the "segfault" a bit more, and it turns out that that was a bad description. In our AIX environment, I see different behaviors depending on the filesystem where the executable file runs. On NFS, I get Illegal instruction (core dumped) when I overwrite an executable file that's running. On non-NFS (SAN), AIX stops me from overwriting the file:
$ cp looper.cpp /tmp/looper
cp: try to overwrite '/tmp/looper', overriding mode 0755 (rwxr-xr-x)? y
cp: cannot create regular file '/tmp/looper': Text file busy

Hi @nico and @martine, I'd appreciate if you could take another look here. I'm still pretty certain that most of these changes are good.
Per my last comment in the unlink subthread, are you okay with that approach, and should I add an os.unlink(bootstrap_exe) line?

Force-pushed an update to the last commit to avoid the extra ninja.bootstrap where not needed.

Thanks for sticking with us, very sorry about the delay, and thanks for tirelessly iterating on this.

Thanks for merging! :smile:


api: Export some stake address functionality

bors merge

Going to ignore the Window ghc-8.10.2 build error.


Performance Optimizations w/ Recursive Endpoints for On-Chain Ordinals Games

Hi,
We have developed on on-chain Ordinals game where the main Inscriptions allows the user to inscribe an arbitrary number of children (potentially hundreds), that, depending on how they play the game, will determine whether their inscription "dies" or "lives and evolves." The problem is with the current endpoints this requires a massive number of requests. The number of requests can be modeled by (Number of Inscriptions (say 10k) * 2) * Number of Children * 2.
So for a 10k collection with an average of 50 children, this means we need: 20,000 * 50 * 2 = 2,000,000 requests to determine the state of the game fully on-chain. In addition, on marketplaces and explorers where the collection is displayed, each iframe will need to do 100 requests to display the state of the Inscription.
Because the logic for the game requires us to get BOTH the block height AND content for each child, we are basically having to make calls to /r/children/<INSCRIPTION_ID>/<PAGE> and then for each page, make 2n number of api calls because we have to fetch both /r/inscription/<child-id> AND /content/<child-id> for EACH child inscription id.  It would be great if the bulk children endpoint took an optional list of fields so that specific data could be returned in one batch.  Something like: /r/children/abc123i0/0?fields=height,content,sat,etc... and then get back those attributes for each child..
Thank you for your time, we believe on-chain Ordinals games can be very exciting and open up use cases that show Bitcoin's strengths as a platform. We understand there are other considerations and tradeoffs in expanding the recursive endpoints to facilitate this, but we would like to discuss what ways could potentially reduce the number of requests by 10-100x

gm, would love to get some feedback on this!
Been working with Patrick and the Mega Punks artist on this for the past 3 months as an "MVP" for something much bigger we hope to do in the future, and now that we're at the final mile we're actually testing this in production and seeing that it is an absolute monster that will break browsers/servers 🤣
I think there is so much potential here to show what Bitcoin Ordinals can do that Ethereum NFTs can't; at least with the same level of simplicity. Would love to see a meta of on-chain games leveraging parent-child to do crazy things.

I imagine @casey wouldn't want to implement returning multiple inscription contents from a single request because of the DoS potential it opens up.
He's previously argued against fully supporting brotli compression because uncompressing small files can make them much bigger, making DoS attacks easier, and I guess the same would be the case here.

Why do you need to get all 10k states for the game at once? Can you not design the game to be localized with the state around one or a few inscription? I think /r/parent which I think is on the roadmap could help do the tree search up to the parent. Think of it like a SPV proof that Casey talked about for runes. You don't need to compute the entire state of all the runes just the state updates of that specific rune.

@elocremarc no, that would open the door for players to change their actual state (cheat).
We don't need to get all the states for everyting at once-- just would be ideal and a performance boost if all content + block heights of child inscriptions could be done at once (batches of 100).  The larger number 10k+ would be from aggregation to get the entire state of EVERYTHING, and that would not need to or expected to be done in one bulk call.

@gmart7t2 yeah, I can certainly understand that.  Maybe a restriction on response content size, 422 if the serialized data exceeds a certain limit?

Here are some remarks off the top of my head:

It would be great if the bulk children endpoint took an optional list of fields so that specific data could be returned in one batch. Something like: /r/children/abc123i0/0?fields=height,content,sat,etc... and then get back those attributes for each child

A bulk response for child inscription metadata probably makes sense (if tests confirm this). I see a big problem with returning the content in that bulk request though. The content will almost always represent the largest part of the data transferred and therefore requires extensive caching at the edges. Right now we only serve content at /content/<INSCRIPTION_ID>, which makes cache design inside a CDN quite easy because it's a fixed route that serves static content. With batched content responses this would circumvent the whole edge cache and make requests to the origin server, creating a whole new bottleneck altogether.

Been working with Patrick and the Mega Punks artist on this for the past 3 months as an "MVP" for something much bigger we hope to do in the future, and now that we're at the final mile we're actually testing this in production and seeing that it is an absolute monster that will break browsers/servers 🤣

Do you have more details about what you were testing exactly? Some rough numbers and identified bottlenecks would be great. I could imagine that the number of requests sent is not the only problem but also the sheer amount of data transferred, memory usage of the browser, etc.

With batched content responses this would circumvent the whole edge cache and make requests to the origin server, creating a whole new bottleneck altogether.

I see.  Yeah, that does sound problematic.  Well, it would at least be an improvement if the child endpoint could accept an arbitrary list of fields that are in the response of /r/inscription ..  Because as of now, we have to 1) fetch the children, 2) call /r/inscription for each child to get the child's blockheight, and then call /content to get the chid content.  If we could at the very least be able make a call to /r/children/<parent>/0?fields=id,height and get back a response like:
{
    "more": false,
    "page": 0,
    "fields": [
       {
          "height": <child-1-height>,
          "id": <child-1-id>
       },
       {
          "height":  <child-2-height>,
          "id": <child-2-id>
       },
       ...etc
    ]
}

That would be helpful and a step in the right direction.

Do you have more details about what you were testing exactly? Some rough numbers and identified bottlenecks would be great. I could imagine that the number of requests sent is not the only problem but also the sheer amount of data transferred, memory usage of the browser, etc.

No, not particularly..  We just have metrics code which is aggregates the entire collection (100k+ parent inscriptions), and buckets them based on the state of each parent.  So I just was anticipating that this is going to be disasterous and incredibly slow because every parent has to get a list of its child ids, then get the blockheight for each child, then get the content for each child.


Docker/Kubernetes memory limits not respected? OOMKilled when deployed to GCP

== check python ===================================================
python version: 3.5.6
python branch:
python build version: ('default', 'Aug 26 2018 21:41:56')
python compiler version: GCC 7.3.0
python implementation: CPython

== check os platform ===============================================
os: Linux
os kernel version: #1 SMP Tue Jul 2 22:58:16 UTC 2019
os release version: 4.9.184-linuxkit
os platform: Linux-4.9.184-linuxkit-x86_64-with-debian-buster-sid
linux distribution: ('debian', 'buster/sid', '')
linux os distribution: ('debian', 'buster/sid', '')
mac version: ('', ('', '', ''), '')
uname: uname_result(system='Linux', node='413655a3a81f', release='4.9.184-linuxkit', version='#1 SMP Tue Jul 2 22:58:16 UTC 2019', machine='x86_64', processor='x86_64')
architecture: ('64bit', '')
machine: x86_64

== are we in docker =============================================
Yes

== compiler =====================================================
c++ (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

== check pips ===================================================
numpy                              1.15.2
numpydoc                           0.9.1
protobuf                           3.9.1
tensorflow                         1.14.0
tensorflow-estimator               1.14.0
tensorflow-hub                     0.6.0
tensorflow-serving-api             1.14.0

== check for virtualenv =========================================
False

== tensorflow import ============================================
tf.version.VERSION = 1.14.0
tf.version.GIT_VERSION = v1.14.0-0-g87989f6
tf.version.COMPILER_VERSION = 4.8.4
Sanity check: array([1], dtype=int32)
        65:	find library=libpthread.so.0 [0]; searching
   (hundreds of lines follow here)
== env ==========================================================
LD_LIBRARY_PATH is unset
DYLD_LIBRARY_PATH is unset

== nvidia-smi ===================================================
./tf_env_collect.sh.1: line 147: nvidia-smi: command not found

== cuda libs  ===================================================

== tensorflow installed from info ==================
Name: tensorflow
Version: 1.14.0
Summary: TensorFlow is an open source machine learning framework for everyone.
Home-page: https://www.tensorflow.org/
Author-email<EMAIL_ADDRESS>License: Apache 2.0
Location: /root/miniconda3/lib/python3.5/site-packages
Required-by: witwidget, tensorflow-serving-api, seldon-core

== python version  ==============================================
(major, minor, micro, releaselevel, serial)
(3, 5, 6, 'final', 0)

== bazel version  ===============================================
Build label: 0.19.0
Build time: Mon Oct 29 14:35:30 2018<PHONE_NUMBER>)
Build timestamp:<PHONE_NUMBER>
Build timestamp as int:<PHONE_NUMBER>

Describe the current behavior
I'm using Kubeflow to deploy a simple Keras/TF model training job (two LSTM layers, 28000x150x27 input from CSV). The Dockerfile it produces is:
FROM gcr.io/deeplearning-platform-release/tf-cpu.1-14
WORKDIR /python_env
COPY requirements.txt .
RUN python3 -m pip install -r requirements.txt
COPY . .

...and the output at the top of this issue is from within the resulting container.
The container has a CPU limit of 7 cores and a memory limit of 26Gi (the host node has 8 cores and 30Gi).
By the 3rd of 20 epochs, after about 50 minutes, the container is killed by Kubernetes with OOMKilled. Looking at a graph of memory use, it increases linearly over the 50 minutes, and evidently ignores the limits.
I have previously trained this model on my laptop (8 cores / 16GB RAM), 20 epochs, without issue, so this looks to be related to the Docker or Kubernetes environment.
Describe the expected behavior
Memory limits are respected.
Code to reproduce the issue
The above Dockerfile, plus:
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Dropout, LSTM
from urllib.request import urlopen
import numpy as np
import importlib
import os

# here's how data is loaded
dataset = np.loadtxt(raw_data, delimiter=",")

# build model
model = Sequential()
model.add(LSTM(32, return_sequences=True))
model.add(LSTM(32))
model.add(Dense(32, activation='softmax'))
opt = tf.keras.optimizers.Adam(lr=1e-3, decay=1e-5)
model.compile(loss='sparse_categorical_crossentropy',
              optimizer=opt, metrics=['accuracy'])

# training (data has been loaded via np.loadtxt)
model.fit(
    training_dataset,
    training_labels,
    epochs=20,
    shuffle=True,
    validation_data=(validation_dataset, validation_labels)
)

Additionally, running the same image locally on my MBP (default Docker setup: 2GiB RAM allocated), the process exited with a Killed message.  Via dmesg after that:
[ 2045.760028] Out of memory: Kill process 2439 (python3) score 888 or sacrifice child
[ 2045.761277] Killed process 2439 (python3) total-vm:5014356kB, anon-rss:1879228kB, file-rss:0kB, shmem-rss:0kB
[ 2046.137806] oom_reaper: reaped process 2439 (python3), now anon-rss:0kB, file-rss:0kB, shmem-rss:0kB

A quick note, when I use tensorflow/tensorflow:latest-py3, I do not experience the bug. Let me know if there's somewhere else I should raise this (it's gcr.io/deeplearning-platform-release/tf-cpu.1-14, GCP's purpose-built-for-GCP image, which doesn't work).

@kierenj What file are you using i.e., 'raw_data' in your code?

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

I'm very sorry, my time for this whole project was very limited, and I've worked around using tensorflow/tensorflow:latest-py3. I haven't managed to find even an hour to share more detail, though I know that is not helpful.

I am gonna close this issue as it has been resolved. Please add additional comments and we can open this issue again. Thanks!


[Feature]: enforce natural alignment

Is there an existing issue for this?

[X] I have searched the existing issues

Description

Acceptance Criteria

Suggestions for a technical implementation

This will be sorted by new_complement(ledger) which will return a complement of a ledger.


[BUG] fugue_sql intermittently throwing segmentation fault errors

Minimal Code To Reproduce
Describe the bug
I have a set of unit tests that check the functionality of code that uses the fugue_sql API with a DuckDB backend. When running these tests locally, they all pass without any issue. However, when I run these as part of a Github actions workflow, I frequently encounter a segmentation fault that occurs at the following location
Current thread 0x00007f4e615547[40](https://github.com/****/****/actions/runs/4555672657/jobs/8035039892#step:7:41) (most recent call first):
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue_duckdb/dataframe.py", line 101 in as_arrow
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue_duckdb/dataframe.py", line 110 in as_local_bounded
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue/dataframe/dataframe.py", line 90 in as_local
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue_duckdb/execution_engine.py", line 521 in convert_yield_dataframe
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue/workflow/_tasks.py", line 1[47](https://github.com/****/****/actions/runs/4555672657/jobs/8035039892#step:7:48) in set_result
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue/workflow/_tasks.py", line 293 in execute
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/adagio/instances.py", line 683 in run
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/adagio/instances.py", line 171 in run_single
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/adagio/instances.py", line 155 in run_tasks
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/adagio/instances.py", line 129 in run
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/adagio/instances.py", line 270 in run
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue/workflow/_workflow_context.py", line 54 in run
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue/workflow/workflow.py", line 1584 in run
  File "/home/runner/.cache/pypoetry/virtualenvs/****-CeyU5fzd-py3.10/lib/python3.10/site-packages/fugue/sql/api.py", line 107 in fugue_sql

The function that fails has the following form
def filter_df(
    df: pd.DataFrame,
    outlets: pd.DataFrame,
    adjustments: pd.DataFrame,
):
    query = """keys = SELECT DateId, ProductId, LocationId, AdjustmentFactor, AdjustmentType, id
    FROM adjustments INNER JOIN outlets USING (LocationId)
    fdt = SELECT * FROM keys INNER JOIN df USING (DateId, ProductId, LocationId)"""
    result = fa.fugue_sql(
        query,
        df=df,
        outlets=outlets,
        adjustments=adjustments,
        engine='duckdb',
        as_fugue=True,
    )
    return result.as_pandas()

And I have multiple unit tests that call this function. It's difficult to fully isolate the problem as I can't fully reproduce it locally.
In this instance, I have been able to refactor my function to use the fugue api, but it would be good to be able to use the fugue_sql API for more complex queries where the SQL syntax is more suitable.
from fugue import api as fa

df = fa.join(...)
df = fa.filter(...)

Expected behavior
I would expect these unit tests to run successfully.
Environment (please complete the following information):

Backend: pandas (duckdb)
Backend version: 0.8.2
Python version: 3.10
OS: linux

@jstammers thanks for reporting. What duckdb version are you using?
I remember in earlier Duckdb versions (<3), I often saw segment fault but in later versions I have never seen this happening.

One problem I saw in unit tests of duckdb is that it can have weird behaviors because the duckdb connection are not properly closed at certain step so the following steps are having issues.

Hi @goodwanghan, thanks for looking into this. I'm currently using 0.7.1 which I believe is the latest version.
It wouldn't surprise me if it's related to trying to a previous duckdb connection not being properly closed, but for now I will stick with the fugue API.


Game suddenly end with DRAW.

sometime game ends with DRAW sign.
player was playing Original with bot mode, and using v0.4.0 launcher.
he saw DRAW bug when before server v0.8.11, but after v0.8.11 is more occurs.

If the game is suddenly interrupted, the corresponding letter will appear on the console.
Wrench connected.
Loading from d:/þ/data/cstrike/models/player/attach/back/att_b_twback02_m.dx90.vtx.
Loading from d:/þ/data/cstrike/models/player/attach/back/att_b_twback02_m.mdl.
Loading from d:/þ/data/cstrike/models/player/attach/back/att_b_twback02_m.vvd.
Loading from d:/þ/data/cstrike/models/player/attach/glove/att_g_twglove_m.dx90.vtx.
Loading from d:/þ/data/cstrike/models/player/attach/glove/att_g_twglove_m.mdl.
Loading from d:/þ/data/cstrike/models/player/attach/glove/att_g_twglove_m.vvd.
InitLobbySoundRepeater()
Alonso connected.
InitLobbySoundRepeater()
Received host stop
Host Disconnect reason : Disconnect game from server by Disconnect command.
Clear client state
Set game shutdown 7
Clear client state
Host Disconnect reason : Disconnect game from server by Disconnect command.
Perhaps this is the problem.


NIFI-3832: Fixed AvroRecordSetWriter validation NPE.

Thank you for submitting a contribution to Apache NiFi.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit?

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[ ] Have you written or updated unit tests to verify your changes? No, tested it manually.
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

@ijokarumawak thanks for the PR, and for catching the bug. Verified that NiFi was exhibiting the behavior that you described before and that after the PR the behavior was as-expected. +1 merged to master!


Adding a currency column to the expected input transactions

Fixed #5
Now, we expect a currency to be added next to every transaction that specifies the currency used in the 'Price' and 'Commission' column.
The calculated values of the calc command will still be displayed in CAD though.
Breakdown of the changes:
1. capgains_calc.py:
a. First map currency to a tuple of (min_date, max_date) where min_date is the earliest date a transaction using this currency occured, and max_date is the latest.
So you might end up with something that looks like:
{
    "CAD" : (January 1st 2020, January 2nd 2020),
    "USD" : (January 1st 2020, February 1st 2020)
}

b. Go over all the currencies detected in step a, create an ExchangeRate object using the min_date and max_date from the tuples created in step b, and map each currency to this new ExchangeRate object.
This gives you something like looks like:
{
    "CAD" : (ExchangeRate object with rates from Jan-1-2020 -> Jan-2-2020),
    "USD" : (ExchangeRate object with rates from Jan-1-2020 -> Feb-1-2020)
}

2. exchange_rate.py:
a. The constructor will check if the currency_from variable is 'CAD', and initialize self._rates to just set every exchange rate to 1 for all the dates. This is because the API cannot do a get request for CAD->CAD, and the rate is just 1 since its the same currency. If the currency is not CAD, then it will proceed to do the original initialization which gets the values from the API call to Bank of Canada.

Can you make it so that we only accept USD and CAD at this point in time, and return an error if the user tries another currency?

Fixed


AAF 0 docker

chore: move client files to client directory, add corresponding server configs
chore: add docker compose and docker files

From project root:
docker-compose up will use default docker-compose.yaml for a local db only container
docker-compose -f docker-compose.prod.yaml up for full service container, db, server, and client

Will commit sample .env file in one sec


Implement air units running out of fuel

Air units can run out of fuel, not air, that would be silly!!


is possible add more than english keys?

I'm from Poland and use ąćłŃŹŻ etc.
Many people using Celsius degree char, phi, paragraph (on apple keyboard)  etc. French have many chars, Korean too.
I'm found only one https://klawiatura.wordpress.com/ but this is only concept

that's a good idea, thanks! although i wouldn't know how to. can you point me towards some sort of a description, what it looks/works like?

Pretty sure you're talking about some US international layout that is basically using a compose key for thing like â which is achieved by pressing ^ then a.
But it somehow depends on which OS you do use and the level of customization that you wish.
The best way will be to use a flashable mech board PCB and use QMK firmware on it to emulate that behavior with Unicode and some quick OS switching binding.
I may write a blog post for it in the next weeks/months, so stay tuned and I'll post it here when done.

Z+dot upper = Ż
z+coma = Ź
;)
in french You have 4 version of e, no modification keys are not a solution. Look at korean (hangul) or japanese with " and small circle , no us international are not international only irytational

@letarg0 not sure of:

why some macro compose key cannot be a solution
what various hiragana/hangul/cyrilic/other have to do here, like really
what is the issue with the US international mapping
who you may think will use that kind of keyboard (pro tip: there is no such layout on any custom PCB available, ever)
what are those damn knobs 🎛 doing there ? 😂
you ever typed in French 🇫🇷 before (let me doubt about it 🤔)

@kissu

why some macro compose key cannot be a solution

I give You answer, french E : You must have 4 modificators for e. Realy You would like using ctrl+E, alt+E, one Function + E , second Function key + E and meybe second two for AE and OE ;)
otherwise, the modifier is more difficult to use than a regular key

what various hiragana/hangul/cyrilic/other have to do here, like really
No everyone using latin/english.

what is the issue with the US international mapping

I wrote upper, this are not easy. Please change numbers and use modificator for letter. Simple 1=F+a, 2=F+s etc. And write for a week , You undestand.

who you may think will use that kind of keyboard (pro tip: there is no such layout on any custom PCB available, ever)
what are those damn knobs 🎛 doing there ? 😂
you ever typed in French 🇫🇷 before (let me doubt about it 🤔)

please write in google japanese keyboard and dont wrote fud. japanese keyboard are different than english, this is not only change char on keys, this keyboard have more keys. English are not for everyone.
knobs are for wolume control, manipulation of 3d objects in 3d program and etc. Tell me why using F1..10 (or 11.12) therefore are potenciometer in this keyboard.
Yes i wrote in french, esperanto, japanese, chinese (yes! old and new) etc.  ;)

@letarg0 a compose key have nothing to do with some basic modifiers. With QMK you can use lot of various input methods: compose key, tap dance, leader key without even talking about some basic layers that you may put diacritics on.
Reminder, compose key: take a dead key, bind it, then use ' + e and you will get é. Use ^ + e and you will get ê and so on. One compose key for all the available diacritics.
An example among others...
Not saying that US international is the most optimized mapping indeed but at least, it does support every available chars with their own diacritics.
Ofc, some 60% split vertical staggered custom keyboard with tilt adjustment and some homemade mapping, personnal switches, cool case (and so on) is better. By far better than some super exotic layout with a bizzilion of keys because the mapping is not optimized/layers/custom enough for the needs and requires your hands to travel too much distance for even the basic stuff.
Even an Ergodox Ez is better than the one in your shared link.
Yep, Japanese layout uses JIS (rather than ANSI for the American one or ISO for the European one).
Knobs are not bad but not really mandatory IMO. Still, there are far better (ergo + design) implementations than the one you are talking about.
3D may use a basic mouse or some trackpad (Wacom ?) if really needed.

Just realized that the linked website is Russian 🇷🇺 but writen in some weird Latin form. 😂

You're not considering that what's optimized for typing in English is definitely not optimized for typing in other languages, as the key pairings/trios don't appear in the same frequency, and for languages that heavily use accents, even if you do use a dead key to make the combined character, you have to take into account the frequency of usage of those keys as well to produce an optimized layout for that language.
That means training the algorithm with a different set of examples and a few extra parameters to be taken into account.

anyone wants to tackle this one? seems like a great idea, linux folks have made it as the ralt layout. would make sense to add it to others as well

I'm brazilian, so I'd like to write my characters every now and then even though I mostly write in english. Maybe training the AI to generate a whole new layout considering the new keys would be kind of a waste of time. However, it would be nice to be have some way to write á and ç for example without having to switch back to qwerty. I am thinking about getting a layout that has that feature built in and just swap the assigned keys to the halmak layout, preserving the ability to produce internacional characters.

It wouldn't be too difficult to adapt the keyboard-gentics repo to other languages, and use sample text in that language.


Update website docs

with regards to this https://github.com/open-telemetry/opentelemetry-js/pull/2051
after merging the docs needs to be updated to reflect all latest changes

I took this one because we had a user ask us to update and it has been a while since the last update. #2306


Stack overflow with circular dependencies when private flag is enabled

Here is an example of how to reproduce this issue:
// a.ts
import { B } from "./b.ts";
export interface A {
  method(b: B): void
}

// b.ts
import { A } from "./a.ts";
export interface B {
  method(a: A): void
}

Closing as i cannot reproduce this anymore


Adapt FallbackClassifier to new GraphComponent interface

Overview of the Solution:
Adapt the FallbackClassifier  to the new GraphComponent interface.
See the implementation proposal for further details.

adapt create and load functions to new signatures
implement required_packages and supported_languages
~adapt persistence~ (this component doesn't persist)
~split train and train process~ (this is not necessary for classifiers)
support multiple messages in process (make sure to handle empty messages)

Definition of Done:

[ ] FallbackClassifier adapted to the new GraphComponent interface
[ ] Unit tests are adapted to adapted component
[ ] Other tests (integration tests, etc.) don't break (because they'd (for now) still use the old component implementation)

@joejuzl Because this component doesn't persist, is it correct that I don't need to override the load class method?
It wasn't present in the component to start with.