Make android solutions(face detection) working with 'minifyEnabled true' build option.

Have I written custom code (as opposed to using a stock example script provided in MediaPipe)
No
OS Platform and Distribution
Android 13
Mobile device if the issue happens on mobile device
All devices
Browser and version if the issue happens on browser
No response
Programming Language and version
Kotlin 1.9.23
MediaPipe version
0.10.14
Bazel version
No response
Solution
Face Detector
Android Studio, NDK, SDK versions (if issue is related to building in Android environment)
No response
Xcode & Tulsi version (if issue is related to building for iOS)
No response
Describe the actual behavior
Project builds with minifyEnable true but Face detector fails to load model.
Describe the expected behaviour
Builds, loads and uses model with minifyEnable = true
Standalone code/steps you may have used to try to get what you need
The project I use is under NDA and in production and unfortunately I cannot share a link.
Steps are easy. Using FaceDetector simply change minifyEnable of the release version to true.
Solutions like this one:
https://github.com/google-ai-edge/mediapipe/issues/3509
do not work anymore. As a matter of fact the issue is not building but making it work.
Placing some logs I see that the initialization procedure fails as a runtimeexception here:
try {
            val optionsBuilder =
                FaceDetector.FaceDetectorOptions.builder()
                    .setBaseOptions(baseOptionsBuilder.build())
                    .setMinDetectionConfidence(threshold)
                    .setRunningMode(runningMode)

            when (runningMode) {
                RunningMode.IMAGE,
                RunningMode.VIDEO -> optionsBuilder.setRunningMode(runningMode)

                RunningMode.LIVE_STREAM ->
                    optionsBuilder.setRunningMode(runningMode)
                        .setResultListener(this::returnLivestreamResult)
                        .setErrorListener(this::returnLivestreamError)
            }

            val options = optionsBuilder.build()
            detector = FaceDetector.createFromOptions(context, options)
            Log.v(TAG, "Detector initialized.")
        } catch (e: IllegalStateException) {
            detectorListener?.onError(
                "Face detector failed to initialize. See error logs for details"
            )
            Log.v(TAG, "TFLite failed to load model with error1: " + e.message)
        } catch (e: RuntimeException) {
            detectorListener?.onError(
                "Face detector failed to initialize. See error logs for " +
                        "details", GPU_ERROR
            )
            Log.v(
                TAG,
                "Face detector failed to load model with error2: " + e.message
            )
        }

the proguard rules I use are:
-keep class javax.lang.model.** { *; }
-keep class autovalue.shaded.com.squareup.javapoet.** { *; }
-keep class okhttp3.internal.platform.** { *; }

-keep class com.google.mediapipe.solutioncore.** { *; }
-keep class com.google.protobuf.** { *; }

-dontwarn com.google.protobuf.**
-dontwarn javax.lang.model.**
-dontwarn okhttp3.internal.platform.**

Other info / Complete Logs
The logs are:
Face detector failed to load model with error2: Field platform_ for w4.K not found. Known fields are [public static final w4.K w4.K.W, public static volatile com.google.protobuf.GeneratedMessageLite$DefaultInstanceBasedParser w4.K.X]

These three rules worked for me:
-keep class com.google.mediapipe.proto.** { *; }
-keepclassmembers class * extends com.google.protobuf.GeneratedMessageLite { *; }
-keep class com.google.common.flogger.** { *; }

I can verify that the solution @erfansn provided also works in my project but I think this is a workaround rather than a solution for MediaPipe Facedetector task. I hope this issue stays open until they have a version that we do not have to apply rules in proguard file.

Hi @farmaker47,
We will keep the issue open until it is resolved. Additionally, we are sharing this with our team to ensure it remains on our radar. However, we cannot provide an exact timeline for the fix.
Thank you!!

I have this issue too :-/


Formatting with multiple Services

As of #59, post formatting .ridl files using -fmt=true with multiple Services does not work anymore.
How to reproduce
Create a example.ridl file with the following contents:
webrpc = v1

name = example-api
version = v0.1.0

service ExampleService
  - Ping()
  - Status() => (status: bool)

service DummyService
  - Ping()
  - Status() => (status: bool)

Running the following command:
webrpc-gen -schema=./example.ridl -pkg=webrpc -server -out=./gen/webrpc/example.gen.go -target=golang

Will result in:
 format error       : failed to format generated Go source: 57:2: expected ';', found 'type'

Running the same command with version v0.14.1 works fine:
webrpc-gen -schema=./example.ridl -pkg=webrpc -server -out=./gen/webrpc/example.gen.go<EMAIL_ADDRESS>
Fix
The issue is in line 60 of types.go.tmpl. Changing this:
{{- range $_, $method := $service.Methods -}}
{{ if eq $method.StreamOutput true }}

To this:
{{- range $_, $method := $service.Methods }}
{{ if eq $method.StreamOutput true -}}

Seems to fix the issue.

thx for the PR. I tagged v0.14.3


Column should support function form of header/cellClass config

Ag-Grid supports passing a function to the header/cellClass configs for column definitions: https://www.ag-grid.com/javascript-grid-cell-styles/#cell-class. Apps need to use this to generate dynamic classes based on the data.
We currently use these class configs to set our column alignment. We support the app pre-configuring a string or string[], but not a function.
https://github.com/exhi/hoist-react/blob/6a247b7a4171089fc713e55d5be71e1b565cf178/cmp/grid/columns/Column.js#L226
We could refactor this code to produce a function to get our alignment classes, which could embed within it a call to a provided custom fn if present.

PR: https://github.com/exhi/hoist-react/pull/1076


Bug fix mod list not updated

Steps to reproduce: First click on a student who has mods, then delete this student. Then add a new student with a different mod. The mod list will then display the mods of the deleted student.

Codecov Report

Merging #249 (aae3230) into master (2904f50) will increase coverage by 0.03%.
The diff coverage is 50.00%.

@@             Coverage Diff              @@
##             master     #249      +/-   ##
============================================
+ Coverage     69.74%   69.78%   +0.03%
  Complexity      638      638
============================================
  Files            94       94
  Lines          1980     1979       -1
  Branches        269      269
============================================
  Hits           1381     1381
+ Misses          496      495       -1
  Partials        103      103

Impacted Files
Coverage Δ

...a/seedu/masslinkers/logic/commands/AddCommand.java
92.30% <50.00%> (+6.59%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Changed Awesome Windows URL

As suggested by @egeerardyn, the Awesome Windows repository (for reference - #671) is shifted to an organization and all the necessary suggestions, changes has been made. It is ready to be included in the awesome list.

I fully support this new list, great work @rahulkapoor90 and @RiseLedger!
The only thing that has to change is the license: MIT is a code license, so not really appropriate for a list (sorry, I didn't spot that one earlier on).
I would suggest one of the following CC licenses:

CC0: most permissive (basically public domain, so you relinquish copyright)
CC-BY: requires others to cite your list

As far as I see, all other requirements (badge, contributing.md, age of the list (when taking both old lists into account), ...) are satisfied.

Looks good to me!
One slight thing I would change: In the Windows 8.1 Setup section, I would make that one link a bullet point even if it contains just a single item, just for the consistency sake. I was just scrolling through the list and that section kind of sticked out because of this.

@aleksandar-todorovic and @egeerardyn your suggestions have been added. thank you!


Job dependency bug in generate_annotated_data

If generate_clinvar_table() has been run successfully and generate_annotated_data() has not then the dependency logic starting here:L108 results in a failed annotation job.
I think the correct logic should be:
if vep_jobs:
        if dependency:
            for job in vep_jobs:
                job.depends_on(dependency)
        dependency = vep_jobs[-1]

Ahhh, so if dependency is None but vep_jobs are populated the current code isn't updating the DAG correctly. I thought I fixed this but might have missed this scenario


Endless update loop 🔄 to same version 1.44.0-insider to 1.44.0-insider

Symptoms I observe are like those in these existing, closed issues:

Insiders newest version update infinite loop bug important install-update verified vscode-build #70802 by B1indB1ink was closed on Mar 20, 2019
Infinite loop update to the same version *duplicate #70804 by KaoImin was closed on Mar 20, 2019

Version info

Property
Value

Version
1.44.0-insider (system setup)

Commit
073a24de05773f2261f89172987002dc0ae2f1cd

Date
2020-03-24T05:37:12.592Z

Electron
7.1.11

Chrome
78.0.3904.130

Node.js
12.8.1

V8
7.8.279.23-electron.0

OS
Windows_NT x64 10.0.19587

System info

Property
Value

CPUs
Intel(R) Core(TM) i7-3540M CPU @ 3.00GHz (4 x 2990)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_off_okwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
15.91GB (4.68GB free)

Process Argv
--disable-extensions

Screen Reader
no

VM
0%

Extensions enabled

Extension
Author (truncated)
Version

npm-intellisense
chr
1.3.0

vscode-markdownlint
Dav
0.34.0

vscode-eslint
dba
2.1.1

githistory
don
0.6.3

prettier-vscode
esb
3.20.0

code-runner
for
0.9.17

beautify
Hoo
1.5.0

vscode-codemetrics
kis
1.24.0

vscode-github
Kni
0.30.3

bash-ide-vscode
mad
1.8.0

vscode-azurefunctions
ms-
0.21.0

python
ms-
2020.3.69010

remote-wsl
ms-
0.44.2

azure-account
ms-
0.8.8

powershell-preview
ms-
2020.3.0

vsliveshare
ms-
1.0.1847

vsliveshare-audio
ms-
0.1.80

debugger-for-chrome
msj
4.12.6

vscode-for-node-js-development-pack
nod
2.0.1

java
red
0.58.0

vscode-xml
red
0.11.0

vscode-checkstyle
she
1.3.2

vscodeintellicode
Vis
1.2.6

vscode-java-debug
vsc
0.25.1

vscode-java-dependency
vsc
0.9.0

vscode-java-pack
vsc
0.8.1

vscode-java-test
vsc
0.22.2

vscode-maven
vsc
0.21.2

vscode-import-cost
wix
2.12.0

vscode-preview-server
yui
1.3.0

markdown-all-in-one
yzh
2.7.0

Steps to Reproduce:

Run Visual Studio Code 1.44.0-insider as user or admin
See ⚙update pending
Click gear ⚙to install update

Visual Studio Code - Insiders 1.44.0-insider is being installed in the background; we'll let you know when it's done.

Restart Visual Studio Code - Insiders to apply the latest update.

Start Visual Studio Code as user
Observe that extensions have errors loading due to permissions broken
Restart Visual Studio Code as admin to resolve extension broken permissions issue
Go to step 2. above, repeat 🔄

or

See ⚙update pending
Try uninstalling Visual Studio Code entirely and reinstalling it from scratch using latest Visual Studio Code insiders installer
Go to step 2. above, repeat 🔄

Does this issue occur when all extensions are disabled?: Yes ✅ (code-insiders --disable-extensions)

FYI an easy workaround would be to switch to the user setup which has been the recommended install type for a while.

FYI an easy workaround would be to switch to the user setup which has been the recommended install type for a while.

This did not work for me. I get the same problem whether I install as user or admin. I also get the same update issue in my portable (USB jump drive) Visual Studio Code Insiders: the evasive pending update that can never be resolved or satisfied.

I have to apologize: It seems as though running updates with the extensions disabled (code-insiders --disable-extensions and then click gear ⚙to install update) actually resolves the issue. I was wrong in stating that the problem persisted. 🤦🏽♂


Error while using post_comment

getting error:
Traceback (most recent call last):
  File "c:\Users\SHAMIL\OneDrive\Desktop\import scratchattach as scratch3.py", line 10, in <module>
    project.post_comment(content="...", commentee_id=122259700)
  File "C:\Users\SHAMIL\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\scratchattach\project.py", line 537, in post_comment
    raise(exceptions.Unauthenticated)
scratchattach.exceptions.Unauthenticated: You can't perform this action because you're not logged in. The object on which the method was called wasn't created with a session. More information: https://scratchattach.readthedocs.io/en/latest/scratchattach.html#scratchattach.exceptions.Unauthenticated

while using post_comment
my code:
import scratchattach as scratch3
session = scratch3.Session(username="DebugDungeon", session_id=os.environ["session_id"])
user = scratch3.get_user("DebugDungeon")
project = scratch3.get_project(907085556)
project.post_comment(content="...", commentee_id=122259700)

You need to login with password to make it work.

i did use password first then i changed to session id both doesnt work

You should use connect_project (or something similar), instead of get_project

run this code:
import scratchattach as scratch3 session = scratch3.login(username="DebugDungeon", password=os.environ["password"]) project = session.connect_project("project_id") project.post_comment(content="...", commentee_id=122259700)

use session.connect_project('project_id') to connect to projects rather than scratch3.get_project('project_id')
project.post_comment doesn't need a commentee id, it only needs content (project.post_comment(content='...'))

user session.get_user instead of scratch3.get_user and use session.get_project instead of scratch3.get_project
If Project / Studio / User objects are created using scratch3.get_project() / scratch3.get_studio() / scratch3.get_user(), they can’t be used to perform action that require a session. Use scratch3.Session.connect_project() / scratch3.Session.connect_user() / scratch3.Session.connect_studio() instead. (https://scratchattach.readthedocs.io/en/latest/scratchattach.html#scratchattach.exceptions.Unauthenticated)

oh


TryGetMember returns different values for each call

For the V8 engine: I'm attempting to detect a whether my script object is self-referential (trying to avoid an infinite loop or stack overflow while processing the object). I've noticed that if I make two consecutive calls to TryGetMember with the same script object and the same member name, the objects I get don't equal one another.
For example:
                var res = scriptObject.TryGetMember(binder, out var result);
                var res2 = scriptObject.TryGetMember(binder, out var result2);

In this case, result != result2.
This makes it hard to detect if an object is being referred by its own property (or one of its descendant objects). Is there a way to determine if an object returned by a script object is self-referential, or if the same JavaScript objects appears in multiple places in an object tree?
(The type of situation I'm trying to detect is an example like this: var node = { value: 5 }; node.next = node; ... The node object has a property which refers to itself.)

Hi @BrianHanechak,
Consider implementing your cycle detection algorithm in JavaScript.
As you've noticed, script objects and their managed proxies aren't 1:1, but that's not an issue on the script side. A JavaScript implementation would not only be simpler, but it would also perform much better without expensive per-node hops across the .NET-script boundary.
Here's an example that works for the simple list you described above:
engine.Execute(@"
    var node = { value: 5 }; node.next = node;
");
dynamic cycleExists = engine.Evaluate(@"(
    function (node) {
        for (var set = new Set(); node; node = node.next) {
            if (set.has(node)) {
                return true;
            }
            set.add(node)
        }
        return false;
    }
)");
if (cycleExists(engine.Script.node))
{
    Console.WriteLine("Cycle found");
}

Good luck!

Thanks! Switching my method to the JavaScript side solved my problem.


perf: check selector for better dom-selector in plugin registration

1. Why is this change necessary?
The current JS-plugin-registration in storefront uses querySelectorAll which is the slowest in any case.
With this change, we could promote add and using id- or classes-selectors for better performance.
Additional note: In our project we are using related elements directly in plugin-registration instead of string, but this doesn't work for re-initializing plugin, if complete element has been replaced by ajax.
2. What does this change do, exactly?
Added checks for the selector given as string and decide a better selector.
Due to performance and common usages, I'm just considering \w- (= a-zA-Z1-9_-) for regex. Others like umlauts and other special chars will fail over to the querySelectorAll.
3. Describe each step to reproduce the issue or behaviour.
Regex-test for id: https://regex101.com/r/ydYKjX/4
It's hard to describe... let pictures show it:

Please note: these tests with firefox (chrome is similar) are based on a shop, not just a small dom-collection.

Selector by data-attribute (sure, a LITTLE bit slower):

Selector by ID (existing element):

selector by class (existing element):

4. Please link to the relevant issues (if any).
5. Checklist

[ ] I have written tests and verified that they fail without my change
[x] I have squashed any insignificant commits
[x] I have created a changelog file with all necessary information about my changes
[x] I have written or adjusted the documentation according to my changes
[ ] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

I'd really like to see a regex that just excludes the separating characters like whitespace, tilde, dot, hash/pound, opening brackets, ... It will just be annoying not having your performance improvement just due to me having an camelCase written id or using lodashes/underscores.

It would be also interesting how much ms this approach improves to have an good indicator is it worth to make that code so complicated for such a improvment

I'd really like to see a regex that just excludes the separating characters like whitespace, tilde, dot, hash/pound, opening brackets, ... It will just be annoying not having your performance improvement just due to me having an camelCase written id or using lodashes/underscores.

I think, I don't get the point. The regex catches underscore and camelCase, too. https://regex101.com/r/VbI2D0/1
Is it worth to check for the characters making it incompatible instead of having one just catching related one? 🤔

I can't go #fööBär :(

I can't go #fööBär :(

You really don't use this in the real world 😝
And if you do, it fails to the old and slow queryselectorall.
I'll ask some international persons, what they are really using.

this really needs some tests which explain the code and the used regEx :slightly_smiling_face:

this really needs some tests which explain the code and the used regEx 🙂

Sounds good. Where would you add the test? There is no test for the plugin.manager? 🤔

maybe @tobiasberge or @jleifeld can answer this :slightly_smiling_face:

Summary: as expected, just a-z 1-9 _ - is used.
Findologic is using umlauts for information for JS to determine the name of a filter for example.

@tobiasberge ping

Hi @shyim @tinect,
sorry for my late response I did not see the GitHub notification.
I would add the test here:
platform/src/Storefront/Resources/app/storefront/test/plugin-system/plugin.manager.test.js

In the test, you could add a couple of test plugins and different HTML selectors to check if the init works for every case:
// platform/src/Storefront/Resources/app/storefront/test/plugin-system/plugin.manager.test.js

/**
 * @jest-environment jsdom
 */
import PluginManager from '../../src/plugin-system/plugin.manager';
import Plugin from '../../src/plugin-system/plugin.class';

class FooPlugin extends Plugin {
    static options = {
        doesStuff: true,
    };

    init() {}
}

beforeEach(() => {
    // This could also be an external template file or changed for every test
    document.body.innerHTML = '

';
});

describe('Plugin manager', () => {
    it('should initialize plugin with class selector', () => {
        // Register plugin with desired selector
        PluginManager.register('Foo', FooPlugin, '.test-selector');

        // Init all plugins
        PluginManager.initializePlugins();

        // Check if plugin was initialized properly
        // Could also use getPluginInstanceFromElement etc. (just an example)
        expect(PluginManager.getPluginInstances('Foo')[0]._initialized).toBe(true);
    });

    it('should initialize plugin with id selector', () => {
        // ... etc.
    });
});

Hey,
I will close this as it is inactive. Feel free to create a new PR when you have added the incomplete parts


Max Players

Allow a dev to set max number of players, and for end users making servers to restrict that number further.

Completed with https://github.com/ac-arcana/cogito-arcana/commit/1641cbfab84d316a65c8eb877ddf3db7d8c7990b


add unknown check for genome sequence details

Otherwise we'd get
TypeError: Cannot read property 'map' of undefined
    at (ViewCase.tsx:365)
...

 Page to display a full case details


Emc link voids items when no export item is assigned (1.19.2)

Title, if you feed items into an EMC link without a set export item, it does not give you EMC, just eats the items. Is that a programming limitation? Or an error that can be fixed?

Those two things have nothing to do with each other. I've just tried it, and it worked as expected both with and without an export item.


Problema na geração do pubspec.yaml

Na ultima versão do slidy ele está adicionando as tags scripts:
vars:      clean: flutter clean     get: flutter pub get     runner: flutter pub run build_runner scripts:      mobx_build: $clean & $get & $runner build --delete-conflicting-outputs     mobx_watch: $clean & $get & $runner watch --delete-conflicting-outputs
logo abaixo da tag:
`flutter:
The following line ensures that the Material Icons font is
included with your application, so that you can use the icons in
the material Icons class.
uses-material-design: true`
Porem se eu descomentar os assets ele vai gerar erro de não encontrar os assets a parte comentada está logo abaixo a tag script.
Acredito que ele deveria gerar acima da tag flutter evitando assim um problema de entendimento. Principalmente para os usuários iniciantes.
Veja abaixo o pubspec.yaml gerado pelo slidy:
`
name: teste_tabbar
description: A new Flutter project.
The following line prevents the package from being accidentally published to
pub.dev using pub publish. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
The following defines the version and build number for your application.
A version number is three numbers separated by dots, like 1.2.43
followed by an optional build number separated by a +.
Both the version and the builder number may be overridden in flutter
build by specifying --build-name and --build-number, respectively.
In Android, build-name is used as versionName while build-number used as versionCode.
Read more about Android versioning at https://developer.android.com/studio/publish/versioning
In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
Read more about iOS versioning at
https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1
environment:
sdk: ">=2.7.0 <3.0.0"
dependencies:
dio: ^3.0.10
flutter_mobx: ^1.1.0+2
mobx: ^1.2.1+2
flutter_modular: ^1.3.2
flutter:
sdk: flutter
The following adds the Cupertino Icons font to your application.
Use with the CupertinoIcons class for iOS style icons.
dev_dependencies:
mockito: ^4.1.1
mobx_codegen: ^1.1.0+1
build_runner: ^1.10.1
flutter_test:
sdk: flutter
For information on the generic Dart part of this file, see the
following page: https://dart.dev/tools/pub/pubspec
The following section is specific to Flutter.
flutter:
The following line ensures that the Material Icons font is
included with your application, so that you can use the icons in
the material Icons class.
uses-material-design: true
vars:
clean: flutter clean
get: flutter pub get
runner: flutter pub run build_runner
scripts:
mobx_build: $clean & $get & $runner build --delete-conflicting-outputs
mobx_watch: $clean & $get & $runner watch --delete-conflicting-outputs
To add assets to your application, add an assets section, like this:
assets:
- images/a_dot_burr.jpeg
- images/a_dot_ham.jpeg
An image asset can refer to one or more resolution-specific "variants", see
https://flutter.dev/assets-and-images/#resolution-aware.
For details regarding adding assets from package dependencies, see
https://flutter.dev/assets-and-images/#from-packages
To add custom fonts to your application, add a fonts section here,
in this "flutter" section. Each entry in this list should have a
"family" key with the font family name, and a "fonts" key with a
list giving the asset and other descriptors for the font. For
example:
fonts:
- family: Schyler
fonts:
- asset: fonts/Schyler-Regular.ttf
- asset: fonts/Schyler-Italic.ttf
style: italic
- family: Trajan Pro
fonts:
- asset: fonts/TrajanPro.ttf
- asset: fonts/TrajanPro_Bold.ttf
weight: 700

For details regarding fonts from package dependencies,
see https://flutter.dev/custom-fonts/#from-packages
`
Problema:

Criei um pull request para solucionar o problema:
https://github.com/Flutterando/slidy/pull/201


Enhancement: Flask Admin like can_edit, can_create, can_delete and can_view_details features

Is your feature request related to a problem? Please describe.
I couldn't find a way to configure editing, creating, deleting and viewing details.
Describe the solution you'd like
If can_edit is set to False, we should remove the Edit button. I'm not sure if we should contrcut the endpoint for that progress or not.
Describe alternatives you've considered
Flask Admin has this feature, which probably would be a great reference.

This is already supported, take a look at -> https://jowilf.github.io/starlette-admin/tutorial/authentication/#for-modelview & https://github.com/jowilf/starlette-admin/tree/main/examples/auth

This is already supported, take a look at -> https://jowilf.github.io/starlette-admin/tutorial/authentication/#for-modelview & https://github.com/jowilf/starlette-admin/tree/main/examples/auth

Ah geeze, my bad, thank you.


Add ReactorKit example project

Codecov Report

Merging #95 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #95   +/-   ##
=======================================
  Coverage   92.03%   92.03%
=======================================
  Files           7        7
  Lines         113      113
=======================================
  Hits          104      104
  Misses          9        9

Continue to review full report at Codecov.

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

I cherry-picked only b33f3a66d9a0c3bcfea47c13c01e2e1aa2282ade because there are unrelated commits and diffs :)


Conform Quaternion to Elementary Functions

This extends https://github.com/apple/swift-numerics/pull/206 and adds the remaining quaternionic elementary functions; making Quaternion fully conform to ElementaryFunctions. 🎉
Most of the functions draw inspiration from the implementation details of the corresponding elementary function on complex numbers. Nonetheless, I greatly appreciate every comment, feedback or suggestions!
Links to new elementary functions:

log
log1p
acos
asin
atan
acosh
asinh
atanh
pow of Quaternion
pow of Int
sqrt
root

The implementation is still functional, but I am trying to improve the error bounds on log and maybe add an executable to validate the worst-case error (much like the ComplexLog tests), and so I would like to leave it as a draft for now.


Using kite for haircut-seq

Dear Pachter Lab members,
There is a single-cell method named haircut-seq which I'm trying to reimplement their pipeline using kallisto | bustools. I found kite the right tool for this purpose. They’ve introduced hairpin sequences. According to my understanding from the paper context and the Snakemake pipeline to count functional data, I was exploring to make this work.
Firstly, I have converted the above-mentioned fasta file to csv and then, I could basically run featuremap.py as you explained. Then, you described:

Build the kallisto index using the mismatch fasta and a k-mer length -k equal to the length of the Feature Barcodes
So, I must set -k to 63 while hairpins sequence lengths are 63. But, I got an error and I'm not sure what is the right way to overcome this problem.

Error: invalid k-mer length 63, minimum is 3 and  maximum is 31
I appreciate it if you can give me some hints on this matter.
Thanks

@mandylr recently helped me by having access to the hairpin sequences (when I opened this issue. She might be able to participate in this conversation that could, at least, help me understand the concepts here. I could not follow the main commands for processing bam files while she wrote them in C++ and tbh, I don't have enough knowledge to understand that.


Fix Lobby Integration

<=0.5.0

[ ] #77 Find new home for fixup code in chat send
[x] #94 Implement sort property during initial home page loading
Default to lobby
Ability to join first room (ref issue from /join implement chat room commands as they are related but this is a first task to get a single room working)
Show users list of rooms in lobby

Refactor lobby to be more welcoming (note overlap with re-architecting ui)
Current view makes little sense
Show list of who is online
10000 currently online
6 friends (see friends)
Filtering options up top
Currently closed
Support private (rooms only you have access to)
There is a private room flag already, needs UI?

Is #77 ready to be closed? If so we can check off this last checkbox and close this issue.


Fixing codebase to reproduce basic experiments

Hi,
Thank you for putting up the current existing code associated with the MACHIAVELLI benchmark. I am trying to reproduce some of the described functionality (e.g. being able to generate and plot trajectories as described in the agent directory README), but it appears there might have been a recent refactoring of the code when it was open sourced, which makes some of the existing paths obsolete (e.g. machiavelli.game.agent should now be machiavelli.agent).
Is there a plan to clean up the code and fix some of the bugs (or at least fix the documentation such that it supports the existing structure of the codebase)? Thanks!

Thank you for bringing this to our attention! We will get around to this soon, although hopefully there's not too many refactoring changes? If there are specific questions with running scripts feel free to open another issue

@aypan17 I have tried to fix this, and have a pull request here: https://github.com/aypan17/machiavelli/pull/13

Thanks Taylor!


Swedish language is not working

<datepicker language="sv"></datepicker> It seems that "es" works but not swedish

I expected it to be sv but it was se


Implement streaming Server Function calls

See the Design Doc

This is very neat! I think actual gains kind of hinges on if you are using http/1.1 or 2 though, since http/2 does everything over a single connection by default and the 6 concurrent request limit doesn't apply there?
https://stackoverflow.com/questions/36835972/is-the-per-host-connection-limit-raised-with-http-2

@Ephem thanks for taking a look. That is very valuable feedback. As you can imagine, this PR introduces quite a bit of code, each line of which is adding fragility. It is hard to say whether this is being too clever (and complex) or is actually going to be a net win.
I think it will be helpful to put together a sort of degenerate case example app with lots of data fetching and run it in both http/2 and http/1.1. At the same time, such an example will be useful to demonstrate / test the Server Functions features (and meet your podcast challenge 🤣) as the framework evolves.


Fix translate_legacy

translate_legacy was broken, so there was no possibility to fallback when issues like #257 happens. This fixes the said issue.

Coverage remained the same at 54.667% when pulling 168981d9cd5027538c410f82f08647cf628bd897 on fushinari:patch-1 into 28b85a807ddbb919df09fa4a8e7cef2fdde9f30c on ssut:feature/rpc.

Any progress here? It's urgent for us since it does  not work right now


Home screen

Hi, thanks for your work! No issues so far for me, but I think that a home screen would improve the app usability. The home screen would have only the search bar and maybe the sidebar too. An option to go back to the home screen after a certain amount of time would be also useful for cleaning out any previously opened account.

Hello,
Could you please explain in more details, what do you mean? I use a bit different terminology for app parts, so I'm not sure whether I understand you right.

homescreen - you mean this:

or this:

?
search bar - what is it?
account - ???
go back after amount of time - where to go? how? do you mean locking after amount of time? we already have this option.

Hi,
thanks for your quick reply. We certainly need to define some common terminology :)

with home screen I mean something that is visually very similar to the first screenshot, but that serves as the second screenshot. After the user unlocks the database, he could see the same big input text that now serves to search for a record.
With "search bar" I mean the text box at the top-center of your second screenshot with the magnifier in it.
With account I mean a record of the database. Since this app stores records made of username/password plus some notes, any record wold normally correspond to a user account somewhere.
With "go back" I mean a mechanism similar to the one you implemented for locking the database. The difference is that after a certain amount of time you are brought back to the "search bar".

The basic principle is that an user might want to keep the database unlocked during a work day, but he doesn't want his records to be visible on the screen all the time.

So, let me paraphrase to check if I got it correctly:

from the home screen (which is on my pic.1), you select the db and open it
then everything you see is a search box and menu, with no option to see entries list
when you search, list appears
then you select an entry and go to entry details screen
entry details screen will auto-close to screen from (2.)

Is it what you mean?

Exactly!
Entry details screen might close by pressing something like Esc or automatically, just as with locking.
This is somewhat how it works with operating systems: you can have a timeout after which the pc locks out, or another just for the screen saver.

This will break almost all app design concepts and the implementation will be almost equal to creating another app. One of the mockups I made at start was looking something like this, and I had a lot of concerns about such design, so it will not be implemented.


Support [prefix].[type] as input source

Support the format messages.properties with the assumption that the contents are in English. This is for https://hub.jazz.net/ccm08/resource/itemName/com.ibm.team.workitem.WorkItem/96068  (IBM Globalization Delivery stage doesn't support properties files that are named in accordance to Java naming conventions)

For example, this would support myapp.properties or myapp.json instead of requiring myapp_en.*


A lot of disconnect/connect requests issued by DBeaver

System information:

Operating system (distribution) and version
Windows 10
DBeaver version
6.0.0
Java version
included jre
Additional extensions
Office, SVG

Connection specification:

Database name and version
Exasol 6.0.14
DB2 V11

Driver name
com.exasol.jdbc.exa and
com.ibm.db2.jcc.DB2Driver

Do you use tunnels or proxies (SSH, SOCKS, etc)?
no

Describe the problem you're observing:
Basically after each statement the database connection is disconnected and reestablished when executing another statment
Steps to reproduce, if exist:
open editor window
execute dummy statement
wait a couple of seconds
execute another statment
The database connection is disconnected an reestablished

Include any warning/errors/backtraces from the logs
dbeaver-debug.log
dbeaver_sql_20190327.log

Forgot to include a screenshot for DB2:

Same for Oracle:

I can't reproduce this and I don't see this in the log (there is just one succesfull connection to Exasol logged).
Maybe you reopening SQL editor after each query? IF you have option "Open separate connection for each editor" on then this is expected behavior.

I'm just executing the same statement over and over again in the same editor window.
I'm not using seperate connection for every tab either (was suspecting that).

Ok. This looks very odd.
Anyhow then there should be something in the debug/error log.
Could you post another one? With Oracle connects/disconnects/

Logs.zip

Ok, thanks.
I see a lot of Exasol connection failures. Most of them happens during table properties reading, during extra editors opening or during SQL auto-completion metadata reading.
Can this be related to a driver version?
Unfortunately I still can't reproduce this as I don't have Exasol testing server..

We distribute the org.jkiss.dbeaver.core.prefs from a central server to all clients and at some point someone added statement.invalidate.before.execute=true which causes disconnects on every execution.
I seriously didn't know such an option exists.


Fixed bug in the SSL_TLS1_3_KEY_SCHEDULE_MAX_HKDF_LABEL_LEN macro

This bug lead to a seg-fault when the code was compiled with MBEDTLS_SHA512_C uncommented in config.h because the hkdf_label variable overflows in mbedtls_ssl_tls1_3_hkdf_expand_label().

Thanks @hannestschofenig for spotting this! I fixed this in the upstream PR https://github.com/ARMmbed/mbedtls/pull/3568/, too.


Error showing df after dropping column.

This exhibits an issue I'm having working with the df after manipulating it. Perhaps 'firstColumn' is not being removed from a data structure after being dropped.
require 'Dataframe'
df = Dataframe()
df:load_table{data=Df_Dict{firstColumn={1,2,3}, secondColumn={4,5,6}}}
df:show() --Shows table as expected.
df:drop('firstColumn')
df:show() --Error case.

The error:
/Users/tu/torch/install/bin/luajit: ...ch/install/share/lua/5.1/Dataframe/Extensions/column.lua:191: Could not find column: firstColumn
stack traceback:
        [C]: in function 'assert'
        ...ch/install/share/lua/5.1/Dataframe/Extensions/column.lua:191: in function 'get_column'
        ...ch/install/share/lua/5.1/Dataframe/Extensions/output.lua:145: in function '__tostring__'
        ...ch/install/share/lua/5.1/Dataframe/Extensions/output.lua:43: in function 'output'
        ...ch/install/share/lua/5.1/Dataframe/Extensions/output.lua:66: in function 'show'
        run.lua:7: in main chunk
        [C]: in function 'dofile'
        ...s/tu/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:145: in main chunk
        [C]: at 0x01005f5d20

Thank you for your report :) The error was already fixed in the next release but not on the master branch. It is now ;)


[WIP] Assimp bindings

Summary of the PR
Does what it says on the tin. Using our brand new clang backend for the bindings generator, with only a few modifications successfully creates bindings to the open asset importer library (assimp).
Related issues, Discord discussions, or proposals
#48
Further Comments
This also adds a NativeNameAttribute which will display native symbol names alongside fields.
DO NOT SQUASH as this PR merges master into 2.0. If you squash, more merge conflicts will be introduced on 2.0 meaning the problem is worse off than when I started. Please merge this using a local git client instead.

Tomorrow's TODOs:

[ ] Review the bindings
[ ] Write a lab application
[ ] Prepare for preview 1 release