Config profile not working with HelidonTest

Environment Details

Helidon Version: 2.6.3 3.2.3 4.0.0
Helidon MP

Problem Description
@HelidonTest
class ConfigProfileTest {

    @Inject
    @ConfigProperty(name = "mp.config.profile")
    private String profile;

    @Inject
    @ConfigProperty(name = "foo")
    private String foo;

    @Test
    void testProfile(){
        assertThat(profile, is("test"));
        assertThat(foo, is("not-bar"));
    }
}

src/main/resources/META-INF/microprofile-config.properties:
foo=bar

src/test/resources/META-INF/microprofile-config-test.properties:
foo=not-bar

Expected: is "not-bar"
     but: was "bar"
	at me.rgrecour.mp.quickstart.ConfigProfileTest.testProfile(ConfigProfileTest.java:28)

Note that it works if microprofile-config-test.properties is moved at src/main/resources/META-INF/microprofile-config-test.properties.

Problem is that compared base path in MpConfigSources is actually fs path, not classpath.
We are comparing:
file:/tmp/quickstart-mp/target/classes/META-INF == file:/tmp/quickstart-mp/target/test-classes/META-INF
instead of:
/META-INF == /META-INF

Workaround:
echo "config_ordinal = 110" > src/test/resources/META-INF/microprofile-config.properties

We should detect exactly 2 filebased entries and consider them as profiles

they MUST be paired based on location

As per the MicroProfile config specification, right ?
This is bad for user experience. Can we think of having a switch to bypass the compliance in favor of a better user experience ?


test: fix system locale override

Apparently setting LC_ALL in vitest.setup.ts doesn't work, as this is after the locale settings are read, but it does work in a globalSetup file.
This can be observed locally with the Workflows tests:
➜  wrangler git:(fix-test-locale) npx vitest run src/__tests__/workflows.test.ts >&/dev/null; echo $?
0
➜  wrangler git:(fix-test-locale) git checkout origin/main vitest.config.mts && LC_ALL=en_UK npx vitest run src/__tests__/workflows.test.ts >&/dev/null; echo $?
Updated 1 path from e1554242a
1

Tests

[ ] TODO (before merge)
[ ] Tests included
[x] Tests not necessary because: small improvements to tests, though I guess running with en_UK in CI would help verify this?

E2E Tests CI Job required? (Use "e2e" label or ask maintainer to run separately)

[ ] I don't know
[ ] Required
[x] Not required because: Small test improvement

Public documentation

[ ] TODO (before merge)
[ ] Cloudflare docs PR(s):
[x] Documentation not necessary because: Not public facing

I tried running npx vitest run src/__tests__/workflows.test.ts locally and it fails regardless of this change 🤔
@petebacondarwin does it work for you?

Oops only just saw your comment @edmundhung ...

Trying it locally. Hopefully this is not a CI cache hit false positive...

It passes locally for me...


Add mass update support

We would like to have a mutation where a query can be used to make many updates at once.
mutation updateManyProduct(productInput: ProductInput, query: String!) .

This is not possible because Realm is not a SQL-based database. Updating many objects is supported by using the createProducts mutation and providing the updated values for all objects. You can use it like:
mutation {
  createProducts(input: [
    { productId: 123, valueToUpdate: "something" }
    { productId: 456, valueToUpdate: "something" }
  ]
  updatePolicy: MODIFIED
}

Yes that works for updating products where you already know the id. Props for that, it resolved some issues but not all of them.

This is not possible because Realm is not a SQL-based database.

The issue is that we have to query all the products on our website before doing an update. The update can be done internally in the graphql service without requiring the client to pass loads of ids under the network which is way slower. SQL or not, that can be done.

I agree, it can be done, but it's not easy to handle all the various corner cases precisely because Realm doesn't offer string based modification capabilities (like SQL databases do). It's quite straightforward for top-level properties (strings, integers, dates), but it gets a little tricky when you go into links, especially links without primary keys. I'm not against providing some sort of a mass update functionality, but it will require some design considerations and may take some time before we can prioritize it.
Originally the GraphQL service was designed to enable web apps to connect to the Realm Object Server, so it lacks some of the powerful editing capabilities that you seem to need. If you're accessing the data from a server, perhaps it's worth taking a look at the node.js or .NET SDKs? Those are more mature than the GraphQL API and are probably better suited for administrative tasks.

This is not possible because Realm is not a SQL-based database. Updating many objects is supported by using the createProducts mutation and providing the updated values for all objects. You can use it like:
mutation {
  createProducts(input: [
    { productId: 123, valueToUpdate: "something" }
    { productId: 456, valueToUpdate: "something" }
  ]
  updatePolicy: MODIFIED
}

When trying to use the mutation createProducts as a many updater, it works for all the different types (string, int, objects) except for the boolean ones, if I try
mutation createProducts(input: [
     { id: 123, booleanValue: false },
     { id: 456, booleanValue: true }
    ],
    updatePolicy: MODIFIED
}

the value inside the object never gets updated, is there any way to fix this?

Can you please open a new issue with steps to reproduce and we'll look into that.


handle null and undefined in array - fixes #49

This PR fixes #49.
@sindresorhus I know you are not a big fan of Array.prototype.reduce, so I used a simple forEach instead (which actually looks cleaner as well).

😎👍


Add lint to CI include checking for cmake-format, clang-format and license header

Add lint to CI include checking for cmake-format, clang-format and license header, see https://github.com/substrait-io/substrait-cpp/issues/15

Hi @westonpace , please help to re-run and trigger the check again.

I'm not sure why the build is not running. Perhaps you need to rebase to get the latest github workflows?

https://github.com/substrait-io/substrait-cpp/actions/runs/4459109898/workflow

https://github.com/substrait-io/substrait-cpp/pull/37 should be merge first.

I've merged #37.  Do you want to rebase now?  If it's still failing or we need changes to those files that are checked in then let me know and I should have some time to work it out on Friday too.

I've rebased, seems the build is not running now

Rebased and finally passed

I'm looking forward to this one, it'll be nice to have something to catch when I forget the license headers!


border: ignore EINVAL, EACCES

Analogous to scionproto/scion#3448.
When forwarding an incoming packet, EINVAL and EACCESS can be caused by
trying to send the packet to a "blackhole" or "prohibit" route.
Although not mentioned in extracts from the manual below, EINVAL is also
returned for any "martian" addresses during routing; specifically this occurs
when trying to send on a non-loopback device with a localhost source address
(by default, anyway).
As the destination address is controlled by an end host outside the AS,
the router should not abort in this case.

Relevant snippets from man ip(7):
EINVAL
  Invalid argument passed.
  For send operations this can be caused by sending to a blackhole route.

EACCES
  The user tried to execute an operation without the necessary permissions.
  These include: sending a packet to a broadcast address without having the
  SO_BROADCAST  flag  set; sending a packet via a prohibit route;
  [...]

C.f also "Route types" under ip-route(8):
Route types:

  [...]

  unreachable - these destinations are unreachable. Packets are discarded
  and the ICMP message host unreachable is generated.  The local senders get an
  EHOSTUNREACH error.

  blackhole - these destinations are unreachable. Packets are discarded
  silently.  The local senders get an EINVAL error.

  prohibit - these destinations are unreachable. Packets are discarded and
  the ICMP message communication administratively prohibited is generated. The
  local senders get an EACCES error.

  [...]

This change is

/rebase

/rebase

/rebase


Failover behavior difference between 3 shards cluster and < 3 shards cluster

Hi there,
I have a strange issue when a failover occurs on my Redis Elasticache Cluster (aws managed) using ioredis.
I'm running on redis 6.0.5 and latest ioredis version.
I have been able to reproduce the issue with a test app, this test app initiates ioredis, then makes a read and a write each 0.5 seconds, so very simple and naïve setup.
When I have a cluster with 3 shards, and I trigger a failover on AWS console, everything goes smoothly, I can see in the logs the node leaving but read/writes are almost not impacted.
But, when I have a cluster with less than 3 shards, and I trigger a failover, I get a lot of read/write errors and have to wait about 1 minute for the read/writes to succeed, in the meantime there are a lot of error messages.
So I contacted AWS support and asked them about this issue, thinking it was maybe an infrastructure issue, but the AWS support is telling me that my issue is related with ioredis and my configuration.
Has someone experienced the same issue?
I'm attaching as source.zip my test application, it can be run with node index.js (node 14+) after the host variable is set.
source.zip
I'm also attaching two files:

3 shards-ok.log => A run with a failover that is working as expected.
3shards-ok.log

2shards-nok.log => A run with a filover that is not working as expected, generating lot of errors and making too much time to recover.

2shards-NOK.log
The cluster setup is simple (vpc, no auth, no encryption, default parameter group 'default.redis6.x.cluster.on'), the two test clusters are identical, I just removed one shard after the creation of the second  test cluster.
Thank you in advance :)

We were recently debugging a similar issue, and we found that Redis Clusters simply don't work correctly when they have less than 3 shards.
From https://redis.io/docs/manual/scaling/:

Note that the minimal cluster that works as expected must contain at least three master nodes. For deployment, we strongly recommend a six-node cluster, with three masters and three replicas.

This requirement seems to come from the algorithm for electing new masters when a master node fails, which simply needs at least 2 masters to remain functioning to work correctly:
https://github.com/redis/redis/blob/7d8911d22a588c78098e2df080d954cc889d5529/src/cluster.c#L1502
Not sure if it's still relevant to you, maybe it might help others who come across this issue in the future.


All - Improve log experience

Overview

[ ] Improve placing of log to help users to find it
[ ] Make easier to use it, maybe print: tail -f /path/log.file
[ ] Extra: Try to have a command for it
[ ] Extra: Maybe to explore side window for tail the logs

{"level":"info","time":"2022-12-22T12:20:13Z","message":"kubefirst started"}
Logging at: /app/logs/log_1671711613.log

...

Logging hint has already been implemented.
https://github.com/kubefirst/kubefirst/blob/ff76d11d5605c35b3a77b73bb123c57811da229a/internal/helpers/setup.go#L11


Fix building with non-default backends

Specifying a non-default (i.e. non-ncurses) backend currently fails
since the default features of cursive are still pulled in. Disable
default-features for cursive to fix this.

This is now on master as of 76a41b3f41e90dbb777b2849ea944e611facaca0.


Custom Client opens prior to MobiFlight Connector will crash the MSFS

The workaround is to defer Custom Client open timing.
I do believe there is potential race condition

This should not be the case anymore. MF Connector now itself is a Client and we have not experienced any such issues.

Good to know, Thank you DocMoebiuz 谢谢


add fillna bfill pad ffill function in groupby

Codecov Report

Merging #640 into master will decrease coverage by 2.11%.
The diff coverage is 97.43%.

@@            Coverage Diff             @@
##           master     #640      +/-   ##
==========================================
- Coverage   92.95%   90.83%   -2.12%
==========================================
  Files          31       31
  Lines        5093     5097       +4
==========================================
- Hits         4734     4630     -104
- Misses        359      467     +108

Impacted Files
Coverage Δ

databricks/koalas/missing/groupby.py
100% <ø> (ø)
:arrow_up:

databricks/koalas/series.py
93.34% <100%> (+0.61%)
:arrow_up:

databricks/koalas/groupby.py
82.6% <100%> (+1.05%)
:arrow_up:

databricks/koalas/frame.py
93.8% <90%> (-0.84%)
:arrow_down:

databricks/koalas/usage_logging/__init__.py
23.14% <0%> (-74.08%)
:arrow_down:

databricks/koalas/usage_logging/usage_logger.py
50% <0%> (-50%)
:arrow_down:

databricks/koalas/__init__.py
73.68% <0%> (-10.53%)
:arrow_down:

databricks/conftest.py
90.69% <0%> (-6.98%)
:arrow_down:

databricks/koalas/internal.py
98.63% <0%> (-0.69%)
:arrow_down:

... and 2 more

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 82e2e41...de6603f. Read the comment docs.

wait to be code reviewed.

Builds were failed.

The function is different between pandas 0.25 and 0.24. I pass the latest version but failed in older version. How do i solve the diffience?

Thanks for working on this, @RainFung


Use exponential instead of linear search for _findIntersection()

Completing TODO comment (on line #124) from @andrewosh add in 601c8fc.
I implemented the exponential search for both when finding an intersecting node above the first node and below. I did not see the below case fired in testing and so am not sure whether the exponential search was necessary in that case.
I implemented this because I encountered a scenario where the linear search was incredibly slow (taking minutes of time) even though the intersection being found was one / a few blocks back from the snapshot head. It also caused a read-only peer to download a large chunk of the remote outputs. With this fix, its fast and downloads only a few additional chunks to find the intersection.

Just remembered that the previous linear search made use of the batch property of the OutputNode which I failed to implement in the exponential search. This doesn't seem to matter though as after the search the sequence number is adjusted by the batch of the found node to find the end of the batch of nodes.
I don't fully understand how batching nodes works so maybe there is some nuance I'm missing.


[Ready for Review] [Feature] unified toolbar for Files and Project Organizer - 2

Purpose
Related to the issue in discussion #2282 and several other issues and requests. The goal is to create a unified look and logic for the way row specific actions happen in Treebeard variations. Specific Goals

Files page: Carry over action column to a toolbar
Project Organizer: Unite toolbar look and layout with Files
Add multiselect to Files page
Delete Multiple files within files page - #1220
Cancel All Uploads or individual uploads - #1688
Unify the color scheme to be consistent - #1693

Changes

Files page has action column removed, instead has a toolbar with contextual buttons showing up
Project organizer code is refactored to turn its toolbar from a mako/js to Treebeard toolbar
Delete multiselect feature is added
Cancel uploads feature is added.
Add folder is adapted for the new ui
treebeard Modals are unified to look and function the same

Side Effects

Potential side effects to Project Organizer functions resulting from button clicks; so PO needs to be tested. Multiselect should also not affect any single select behaviors, so that needs to be tested as well.
There are ui and event based changes so cross browser testing is needed.
This might be unintentionally fixing existing issues caused by action column or treebeard related things, so combing through issues for those would be useful after it goes to production.

Spinning COS logo while files are loading is cool.

Will the new look (seen below)

Use the new icons from Node Refactor (seen below) after both are merged?

Good point @Gary, I don't know how that merge is supposed to go. I think Sam or I need to do some merge conflict to make sure it works depending on whose PR is going later.
@samchrisinger

Yeah -- let's check in on this: Did you @caneruguz @samchrisinger and @brianjgeiger get together on approach to icon choices and review?

I'm making this ready for review so we can get some code review out of the way. Everything is looking fine, I'm checking final things.

We are agreed on component icons. The sticking point is the "Smart Collection" icon, which may cause us to change the collection and possibly project icons. I don't know of any resolution on that yet.

Should the action of expanding and/or collapsing a component/folder result in checking the checkbox?
(I realize that there may not be a way around that result)

Also, once a file/folder is selected and a checkmark appears, there is no way to remove that checkmark.... at least one is always checked.  I would expect that a second click on a checkmark would remove it.

Expanding/collapsing should not select, and should not check the checkbox. If we keep the checkboxes, clicking on the checkbox should deselect the row.

@brianjgeiger's suggestion has been added in this commit:
https://github.com/caneruguz/osf.io/commit/7935a328289112aa689c6b27946ae1291fc48712
based on this treebeard commit:
https://github.com/caneruguz/treebeard/commit/f93ac8883c5094f7b4bc13d574adb7ba2b46c43d

Add/Remove from Dashboard gone?

I'm seeing it in mine, although it does arrive late. There was this error though:
   applyBindings @ vendor.js:2365```

Also, not only does expanding/contracting not select checkbox anymore, neither does clicking the checkbox.

hmm.... my files never finish loading... perhaps that is why the add to dashboard is not showing

@GaryKriebel I can still select checkboxes, can you double check and let me know if this is still happening?

Unable to select checkboxes.
Get the following error:

You might need to redo npm install. tb.resetFilter is a function that was added relatively recently.

The checkboxes seem to disappear after selecting them, unselecting them, and hovering off of them.

Disregard previous comment. For some reason, I needed to uninstall and reinstall treebeard, even though you specified the commit in package.json. That fixed the checkbox issue.

Before updating this PR with develop, we'll need to make a decision on which icons to use. @GaryKriebel has sent an email to the Community for feedback.

Is the hgrid/load.gif used anywhere? If not, it can be removed.

Initial pass finished. :large_blue_circle:

@sloria this is ready for a second look, except where I noted above, which may require looking at things together. There are no longer checkbox toggles so that's not relevant anymore and icons have been decided on. This includes pull from recent develop (this morning) which has Sam's changes for icons.

Still need to update with the icons from this past release.

@Gary I pulled from Sam's changes, aren't the buttons there?

I beg your pardon, after rebuilding assets

, they are indeed there.

Pass finished. :moneybag:

@Gary the latest commit should allow the bug we were talking about. In other words If the user searches and finds an item buried inside closed folders and selects that item, the item parents will open and the item will be scrolled into view.

The search is only finding projects/components that are visible in the dashboard.

Both Collection icons are missing.

@Gary the finding items under closed folders should be fixed now, Project Organizer took a lot more time to figure out but I think both are good to go.

Also collection icons are fixed.

@sloria  the refactoring is done, did you want to take another look?

When clicking a row element in the file browser, it should appear selected (i.e. with the dark blue background) immediately. Currently, it only appears selected after you've clicked and dragged off of the row:

@sloria I do not see that behaviour.... it is dark blue after clicking... no moving required.

@GaryKriebel Have you updated your branch locally?

I did after we all spoke... let me try again just to be sure.

Re-pulled and still no issue.

Argh, it seems to have fixed itself. I can't reproduce the bug now either. Disregard for now.

The 'pointer cursor when hovering over the names of files is a bit misleading. 'pointer usually means clickable--but there is no indication that you actually have to double-click to get to the file.
Any reason not to make the names of files act like hyperlinks to their detail page, i.e. make them single-clickable?
FWIW, single-clicking filenames to view them is a common pattern across file storage--I just looked at the filebrowsers for Dropbox, Github, and Box.com.

re: my previous comment, same goes with project titles in the project organizer.

Can we make a decision about Steve's point with turning the file titles into actual href links? This would take away the need for some code. The title vs row would have different pointers so there wouldn't be any confusion.

@Steve this is ready for final review except for mithril in webpack, see my flowdock note. I'm looking for and fixing bugs here in the meantime.


Atom crashes on HiDPI Linux

Atom version:
Tested on 0.189.0 and git commit ffa6d4a
Environment:
Arch Linux x86_64 non-testing, all updates installed
GNOME Shell 3.14.3 (and 3.16.0) on xorg-server 1.17.1-4 and xf86-video-intel (although also reproducible on NVIDIA X server via primus)
Lenovo Y50-70 with 2160p display (HiDPI scaling is necessary for a usable UI in most applications)
Macbook 2,1 (found that Atom crashes when scaled, does not crash when interface is not scaled)
Steps:

Enable HiDPI scaling with

gsettings set org.gnome.desktop.interface scaling-factor 2

Run atom, either normally or in safe mode
Open two or more tabs
Attempt to switch two tabs by dragging
Wait for GNOME to restart

Behavior:
The GNOME Shell and Atom crash. GNOME restarts several seconds later
Extra information:
Terminal output
theo@smaug --- pacman/pkg » atom --safe
theo@smaug --- pacman/pkg » [24932:0403/100945:ERROR:browser_main_loop.cc(170)] Running without the SUID sandbox! See https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more information on developing with the sandbox on.
App load time: 70ms
ATTENTION: default value of option force_s3tc_enable overridden by environment.
[24967:0403/100946:INFO:renderer_main.cc(212)] Renderer process started
[24932:0403/100946:INFO:CONSOLE(57)] "Window load time: 533ms", source: file:///usr/share/atom/resources/app.asar/static/index.js (57)
[25017:0403/101007:INFO:renderer_main.cc(212)] Renderer process started
[24932:0403/101008:INFO:CONSOLE(57)] "Window load time: 690ms", source: file:///usr/share/atom/resources/app.asar/static/index.js (57)
[24932:0403/101015:INFO:CONSOLE(114)] "Error starting spell check task", source: /usr/share/atom/resources/app.asar/node_modules/spell-check/lib/spell-check-view.js (114)
[24932:0403/101015:INFO:CONSOLE(114)] "Error starting spell check task", source: /usr/share/atom/resources/app.asar/node_modules/spell-check/lib/spell-check-view.js (114)
[24932:0403/101016:INFO:CONSOLE(114)] "Error starting spell check task", source: /usr/share/atom/resources/app.asar/node_modules/spell-check/lib/spell-check-view.js (114)
[24932:0403/101016:INFO:CONSOLE(114)] "Error starting spell check task", source: /usr/share/atom/resources/app.asar/node_modules/spell-check/lib/spell-check-view.js (114)
[24932:0403/101016:INFO:CONSOLE(114)] "Error starting spell check task", source: /usr/share/atom/resources/app.asar/node_modules/spell-check/lib/spell-check-view.js (114)
[24932:0403/101016:INFO:CONSOLE(114)] "Error starting spell check task", source: /usr/share/atom/resources/app.asar/node_modules/spell-check/lib/spell-check-view.js (114)
[24932:0403/101017:INFO:CONSOLE(114)] "Error starting spell check task", source: /usr/share/atom/resources/app.asar/node_modules/spell-check/lib/spell-check-view.js (114)
The program 'atom' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadAlloc (insufficient resources for operation)'.
  (Details: serial 4722 error_code 11 request_code 12 minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

/cc @zcbenz

I have the same reproducible issue in v1.0.3 Ubuntu 15.04

Same issue on high DPI Linux Mint 17.2 with Atom 1.0.7. However, it only seemed to crash Gnome once on my system.

atom --safe .
Try to reorder tabs by dragging.

[18743:0831/105912:ERROR:browser_main_loop.cc(170)] Running without the SUID sandbox! See https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more information on developing with the sandbox on.
App load time: 119ms
[18791:0831/105913:INFO:renderer_main.cc(212)] Renderer process started
[18743:0831/105914:INFO:CONSOLE(175)] "Enabled theme 'soda-light-ui' is not installed.", source: /opt/atom/resources/app.asar/src/theme-manager.js (175)
[18743:0831/105914:INFO:CONSOLE(175)] "Enabled theme 'soda-light-ui' is not installed.", source: /opt/atom/resources/app.asar/src/theme-manager.js (175)
[18743:0831/105914:INFO:CONSOLE(175)] "Enabled theme 'soda-light-ui' is not installed.", source: /opt/atom/resources/app.asar/src/theme-manager.js (175)
[18743:0831/105914:INFO:CONSOLE(56)] "Window load time: 1022ms", source: file:///opt/atom/resources/app.asar/static/index.js (56)
The program 'atom' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadAlloc (insufficient resources for operation)'.
  (Details: serial 750 error_code 11 request_code 12 minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)


How to bind an activity view inside my adapter

This view is in the activity (bottom navigation view), but it isn't inside the adapter item layout.

This is a usage question which is generally more appropriate for StackOverflow. GitHub issues are reserved for bug reports with test cases or samples, or new feature requests. You can use the 'butterknife' tag which is monitored by us and many library users. Feel free to link the asked question back here on the issue.


Adding github actions for building snapshot and release

Will solve: https://github.com/NaluKit/iban4g/issues/35

and also #34


AVS SDK on android N

IMPORTANT: Before you create an issue, please take a look at our Issue Reporting Guide.
Briefly summarize your issue:

Hi Alexa AVS SDK  Team,
I am trying to run the AVS SDK on android N. I am able to compile all required component in including port audio and gstreamer but I see it giving following error when I run it.
What is the expected behavior?

It should run as like Linux platform.
What behavior are you observing?

WARNING: linker: /data/local/tmp/avs/lib/libAFML.so: unused DT entry: type 0xf arg 0x2058d
WARNING: linker: /data/local/tmp/avs/lib/libAVSCommon.so: unused DT entry: type 0xf arg 0x6da6c
WARNING: linker: /data/local/tmp/avs/lib/libAVSCommon.so: unused DT entry: type 0xf arg 0x6da6c
WARNING: linker: /data/local/tmp/avs/lib/libAVSCommon.so: unused DT entry: type 0xf arg 0x6da6c
2018-08-14 18:37:31.633 [  1] I sdkVersion: 1.8.1
configFile AlexaClientSDKConfig.json
Running app with log level: DEBUG9
2018-08-14 18:37:31.646 [  1] 0 ConfigurationNode:initializeSuccess
2018-08-14 18:37:31.649 [  1] 9 MediaPlayer:createCalled
2018-08-14 18:37:31.652 [  1] E MediaPlayer:setupPipelineFailed:reason=createConverterElementFailed
2018-08-14 18:37:31.653 [  1] E MediaPlayer:initPlayerFailed:reason=setupPipelineFailed
2018-08-14 18:37:31.653 [  1] 9 MediaPlayer:~MediaPlayerCalled
(SampleApp:2481): GStreamer-CRITICAL **: gst_object_unref: assertion 'object != NULL' failed
2018-08-14 18:37:31.653 [  1] 9 MediaPlayer:resetPipeline
(SampleApp:2481): GLib-CRITICAL **: g_main_context_find_source_by_id: assertion 'source_id > 0' failed
2018-08-14 18:37:31.653 [  1] E RequiresShutdown:~RequiresShutdownFailed:reason=notShutdown,name=SpeakMediaPlayer
2018-08-14 18:37:31.653 [  1] C SampleApplication:Failed to create media player for speech!
2018-08-14 18:37:31.653 [  1] C SampleApplication:Failed to initialize SampleApplication
Failed to create to SampleApplication!
Provide the steps to reproduce the issue, if applicable:

Tell us about your environment:

What version of the AVS Device SDK are you using?
sdkVersion: 1.8.1
Tell us what hardware you're using:

[ ] Desktop / Laptop
[ ] Raspberry Pi
[* ] Other - tell us more:
Android N

Tell us about your OS (Type & version):

[ ] Linux
[ ] MacOS
[ ] Raspbian Stretch
[ ] Raspbian Jessy
[ *] Other - tell us more:
Android N

Hi @hiteshkpatel,
In order to use the GStreamer based MediaPlayer, it is required to have the following packages installed (names may differ slightly depending on your package manager):

gstreamer
gst-plugins-base
gst-plugins-good
gst-plugins-bad
gst-libav

Also, could you provide the version of GStreamer you are using?

Hi Keith Huang,
I have all plugin and able to load it but now I am not sure that playback will work or not.
Right now I am trying to run port audio on android.
Regards,
Hitesh

Hi @hiteshkpatel,
As part of the recent 1.9 release, we've added Android support to the install script.
Please follow the instruction on the SDK Android-Quick-Start-Guide.
Thanks,
Benny

Hi Benny,
Thank you for reply.  This is really good news.
I used gstreamer and tested Alexa on my Android platform.
Regards,
Hitesh

Hi ,
I tried it but looks like this for arm32 not for arm64. I have platform which supports only arm64.
How can I compile AVS SDK for arm64 ?
Regards,
Hitesh

Hi @hiteshkpatel,
Although we do not have ARM64 support for Android yet, it is in our backlog.  We will update this ticket when it is released.
Thanks,
-SWH

HI,
Thank you for reply...
I am able to run your release on arm64. Now I am trying to integrate with
wake word.
Regards,
Hitesh
On Mon, Sep 24, 2018 at 10:34 AM swh<EMAIL_ADDRESS>wrote:

Hi @hiteshkpatel https://github.com/hiteshkpatel,
Although we do not have ARM64 support for Android yet, it is in our
backlog. We will update this ticket when it is released.
Thanks,
-SWH
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/alexa/avs-device-sdk/issues/901#issuecomment-424059301,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AfF0a2tv1ELdX69GRu1fpXfvkve5tU2Aks5ueReJgaJpZM4V9W8p
.

Hello Hitesh,
Can you provide procedure to run Alexa AVS SDK on android. I am trying this on Respeaker.
I am new to this android, if u can send me a procedure that would helps me a lot.
Regards
Vithal

Hi Vthal,
You can follow https://github.com/alexa/avs-device-sdk/wiki/Android-Quick-Start-Guide.
Regards,
Hitesh

Hi Hitesh,
I followed the same link but I could not able to deploy. Is there a way that I can call you once.
Mail ID<EMAIL_ADDRESS>Regards
Vithal
Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: hiteshkpatel<EMAIL_ADDRESS>Sent: Saturday, September 29, 2018 1:45:30 AM
To: alexa/avs-device-sdk
Cc: VK; Comment
Subject: Re: [alexa/avs-device-sdk] AVS SDK on android N (#901)
Hi Vthal,
You can follow https://github.com/alexa/avs-device-sdk/wiki/Android-Quick-Start-Guidehttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Falexa%2Favs-device-sdk%2Fwiki%2FAndroid-Quick-Start-Guide&data=02|01||78a49313dd1a413a589f08d6259c7a0b|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636737751320085047&sdata=oQu65ND3uRayr%2Fqzb8%2FmTBv5UWmUHeVc%2BGB%2FjiTgAuQ%3D&reserved=0.
Regards,
Hitesh
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Falexa%2Favs-device-sdk%2Fissues%2F901%23issuecomment-425595371&data=02|01||78a49313dd1a413a589f08d6259c7a0b|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636737751320085047&sdata=vU0HCAJoEsxRdUe5patOFm6nItlmUcgnS6JVYTk9qFI%3D&reserved=0, or mute the threadhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAo4-W9wNdcitq4vVTnLRur_KvKuozJcGks5ufrSagaJpZM4V9W8p&data=02|01||78a49313dd1a413a589f08d6259c7a0b|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636737751320085047&sdata=44XFEAooUeEq1duS%2FM340Vy7uMcTJVF%2FDtMbVKxsc24%3D&reserved=0.

Hi @hiteshkpatel, I was wondering if we could close this issue. Please let us know if there is anything else we can do to help.

Hello Val,
Problem is not solved.
Not sure how it need to perform. I tried all possiblity but could not able to success.
Regards
Vithal
From: Celina G. Val
Sent: Wednesday, 10 October, 20:59
Subject: Re: [alexa/avs-device-sdk] AVS SDK on android N (#901)
To: alexa/avs-device-sdk
Cc: VK, Comment
Hi @hiteshkpatelhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fhiteshkpatel&data=02|01||adb34e0f4b124d1fb5b608d62ee2834f|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636747947723408212&sdata=Ort3FGUfmb0BabKR2sOb5zR2Rc%2BPeLrWMV1siEhKpP8%3D&reserved=0, I was wondering if we could close this issue. Please let us know if there is anything else we can do to help.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Falexa%2Favs-device-sdk%2Fissues%2F901%23issuecomment-428691624&data=02|01||adb34e0f4b124d1fb5b608d62ee2834f|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636747947723408212&sdata=FXVU%2BuTRLtNDpaMZJAI6DNaWWck%2FjQJ2fCCw4wX9qyg%3D&reserved=0, or mute the threadhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAo4-W4XZPL5ZjXjzg32zZnT7Hysap0Qxks5ujkOTgaJpZM4V9W8p&data=02|01||adb34e0f4b124d1fb5b608d62ee2834f|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636747947723408212&sdata=Bym%2BUWkIbVN4WxHVWuat%2BRb%2BSHNAwq4UH9qQUrwMPsM%3D&reserved=0.

Sorry to hear that. What is the current error that you are facing?

Hello Val,
As per the article, I downloaded the setup and config file on my windows laptop. I connected my android devices via ADB.
When I run ADB bash setup config.txt , it says bash not found. I install bash on android after that it says setup not exists.
Regrads
Vithal

From: Celina G. Val<EMAIL_ADDRESS>Sent: Thursday, October 11, 2018 2:32 AM
To: alexa/avs-device-sdk
Cc: VK; Comment
Subject: Re: [alexa/avs-device-sdk] AVS SDK on android N (#901)
Sorry to hear that. What is the current error that you are facing?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Falexa%2Favs-device-sdk%2Fissues%2F901%23issuecomment-428797787&data=02|01||6189e43f112f4236076108d62f21d1ef|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636748219627310228&sdata=VghlfXoPVK2igvFzs8GEaImWgLhA9H9EwclwQJsJNTI%3D&reserved=0, or mute the threadhttps://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAo4-W4eFluxnWwdEm0quNo3sf1vhAVixks5ujq3JgaJpZM4V9W8p&data=02|01||6189e43f112f4236076108d62f21d1ef|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636748219627310228&sdata=98Vw35zR%2FiegZvXtcNh0%2BOkQSrPwXRSkCEMrc06zMg4%3D&reserved=0.

Hi @kameshkancherla , you need to execute the Android guide on a Mac or Linux machine. Let me know if that helps.

I tried from Linux too, no luck.
Regards
Vithal

From: visayamv<EMAIL_ADDRESS>Sent: Tuesday, October 16, 2018 5:30:18 AM
To: alexa/avs-device-sdk
Cc: VK; Mention
Subject: Re: [alexa/avs-device-sdk] AVS SDK on android N (#901)
Hi @kameshkancherlahttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fkameshkancherla&data=02|01||b7a8b2aae8f041af0a3a08d63317b29f|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636752574207363131&sdata=uGl3aXF3bPTzDFT%2F98QgYQPj%2FKxvyGYvWxNNYQAikws%3D&reserved=0 , you need to execute the Android guide on a Mac or Linux machine. Let me know if that helps.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Falexa%2Favs-device-sdk%2Fissues%2F901%23issuecomment-430088521&data=02|01||b7a8b2aae8f041af0a3a08d63317b29f|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636752574207363131&sdata=VMevNd2ih1szFx6zZeXV03CMRo4RJJ6NZ2K%2B2k54rwE%3D&reserved=0, or mute the threadhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAo4-W2AQS1ZLI5dnyjBwe3r1THoQe33sks5ulVLKgaJpZM4V9W8p&data=02|01||b7a8b2aae8f041af0a3a08d63317b29f|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636752574207363131&sdata=j33Qv0IlTtVJ55FlA8AqLwI%2BHCtbDjUio%2FPw%2F5d2jbY%3D&reserved=0.

@kameshkancherla , on your LINUX terminal:

cd to the directory where you downloaded the setup.sh, config.txt and android.sh. (Config.txt should have been updated with the right parameters).

For example, I put them in /some/directory
prompt> cd /some/directory

run bash setup.sh config.txt

prompt> bash setup.sh config.txt
If that doesn't work, please give me details of the exact procedure and commands you are executing.

Hi,
When I tried the below it was executing on Linux server not on my android device.
Regards
Vithal

From: visayamv<EMAIL_ADDRESS>Sent: Tuesday, October 16, 2018 2:44 PM
To: alexa/avs-device-sdk
Cc: VK; Mention
Subject: Re: [alexa/avs-device-sdk] AVS SDK on android N (#901)
@kameshkancherlahttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fkameshkancherla&data=02|01||aa4ab69fb2dd4cea4e7b08d63375d10d|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636752978434423229&sdata=g8mqUyWz0z%2FTw6kKYTxcylVK%2FdNq3fsTKOUsebpTR1s%3D&reserved=0 , on your LINUX terminal:

cd to the directory where you downloaded the setup.sh, config.txt and android.sh. (Config.txt should have been updated with the right parameters).

For example, I put them in /some/directory
prompt> cd /some/directory

run bash setup.sh config.txt

prompt> bash setup.sh config.txt
If that doesn't work, please give me details of the exact procedure and commands you are executing.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Falexa%2Favs-device-sdk%2Fissues%2F901%23issuecomment-430265199&data=02|01||aa4ab69fb2dd4cea4e7b08d63375d10d|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636752978434423229&sdata=3%2FdGeZrJNgOp6B5DzECmD1R7tzAeZPL9Tr8u882dtBo%3D&reserved=0, or mute the threadhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAo4-W7Qrc4l4Lwa2ehvbk18hFVaqHd4Oks5ulfCygaJpZM4V9W8p&data=02|01||aa4ab69fb2dd4cea4e7b08d63375d10d|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636752978434423229&sdata=B8brrKjKB7AHnhZvBFspeJT327q5OGaVQxBzTi88574%3D&reserved=0.

@hiteshkpatel , what linux version are you using? which command did you issue in the Linux prompt? Please provide a screenshot if possible

Hi,
As per the procedure, I downloaded setup.sh, config.txt and android.sh.
I updated all entries on config.txt
This is the procedure I followed.
ADB Tcpip 555
ADB connect 192.168.xxx
I executed shell it says there is no shell.
I executed this command
adb -s 192.168.xx.xx shell setup.sh config.txt
Error: no setup.sh file or directory
then I tried this adb -s 192.168.xx.xx shell bash setup.sh config.txt
no bash found
I installed bash on my android
then I tried this adb -s 192.168.xx.xx shell bash setup.sh config.txt
its giving script error.
\r
\t
Regards
Vithal

From: visayamv<EMAIL_ADDRESS>Sent: Tuesday, October 16, 2018 8:12 PM
To: alexa/avs-device-sdk
Cc: VK; Mention
Subject: Re: [alexa/avs-device-sdk] AVS SDK on android N (#901)
@hiteshkpatelhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fhiteshkpatel&data=02|01||dd5a06126efb424ced6f08d633a3af88|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636753175446347003&sdata=e60V%2FECXjd4wBl8h1tSL2799YAag2BfLZm2ju9%2FumEQ%3D&reserved=0 , what linux version are you using? which command did you issue in the Linux prompt? Please provide a screenshot if possible
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Falexa%2Favs-device-sdk%2Fissues%2F901%23issuecomment-430383436&data=02|01||dd5a06126efb424ced6f08d633a3af88|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636753175446347003&sdata=c6Ovn6qFfsPCplHWupe%2F5Cm99CFiL836y%2BIxUEchhK0%3D&reserved=0, or mute the threadhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAo4-WyPA65teMi96lj9uaWBEEVM-O7M7ks5ulj2mgaJpZM4V9W8p&data=02|01||dd5a06126efb424ced6f08d633a3af88|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636753175446347003&sdata=IZr1cdCEsbx9vC%2BEKCPUNd4CdzSM%2B8X4Mb7w23H%2B%2F8I%3D&reserved=0.

@kameshkancherla ,
In the Linux terminal, you should execute:
bash setup.sh config.txt
and NOT
adb -s 192.168.xx.xx shell setup.sh config.txt
Linux will cross-compile the SDK for your android device will copy the executables and its depedencies after it finishes to your device.

I am closing this issue due to inactivity. Please feel free to re-open it if it has been closed in error.

Thank you Kenneth.
Regards,
Hitesh
On Nov 10, 2018 9:48 AM, "Kenneth Chan"<EMAIL_ADDRESS>wrote:
Closed #901 https://github.com/alexa/avs-device-sdk/issues/901.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/alexa/avs-device-sdk/issues/901#event-1958237979, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AfF0ay17vfCOCSyTf0kgGauffHq37FRWks5utlOLgaJpZM4V9W8p
.

Dear @visayamv
I use Ubuntu 18.04 now. and it's now working.
Error message is like below.
"The installation script doesn't support current system."
Do I have to use older version of Ubuntu system?

Solved...!
I tried again like below. and it's working
Thanks :)
bash setup.sh config.json -a androidConfig.txt

Hi Benny,
Thank you for reply. This is really good news.
I used gstreamer and tested Alexa on my Android platform.
Regards,
Hitesh

Hi Hitesh,
I am trying to use GStreamer for android platform. But I am also getting same error. Can you please help me in solving this issue.
"(SampleApp:2481): GStreamer-CRITICAL **: gst_object_unref: assertion 'object != NULL' failed
2018-08-14 18:37:31.653 [ 1] 9 MediaPlayer:resetPipeline
(SampleApp:2481): GLib-CRITICAL **: g_main_context_find_source_by_id: assertion 'source_id > 0' failed"
Thanks in advance,
Ram


Gutter Color Changes for all buffers not just buffer with error

I'm currently using the following settings
let g:ale_sign_column_always=1
let g:ale_sign_error='E>'
let g:ale_sign_warning='W>'
let g:ale_change_sign_column_color=1

I noticed some strange behaviour that might be by design or might be a bug.
When I have multiple buffers open using split windows if there is a warning or error in one of the buffers, all of the gutters change colour. I figured the expected behaviour would be to make only the buffer that has a warning or error change.

It don't know if it's possible to change the colour of the sign column for only one buffer. I think the highlights apply everywhere. We might just have to document this.

Isn't necessary always to show the sign colon, so you can use:
let g:ale_sign_column_always=0

Also you can modify the sign colon color to some better. For example with https://github.com/rakr/vim-one I use this config:
set background=dark
colorscheme one
hi SignColumn guibg=#282c34

I'll document this behaviour. I don't think anything can be done about it.

Thanks for looking into it. Unfortunate that there isn't anything that can be done but c'est la vi.


Alternative dev flow

Description

Hopefully this is a positive contribution to development flow.
As an alternative to using dev containers, now it's possible to run all services in a python virtual environment with honcho start, by using the Procfile and existing .env file. This has code reloading enabled.
Related issues

Type of change

[x] New feature (non-breaking change which adds functionality)

Changes Made

Application factory should be async - allows running with gunicorn for easy code reloading
Procfile run with honcho start for an alternative way of running services locally during development
Often used packages for development were added to requirements-dev.txt
.dockerignore file prevents large and unnecessary files/folders to be passed to docker container, such as .tox during development.

Testing

[x] Tests do not apply

Mentions

Rebased and added dev instructions to README.


Packaging Request: Veloren

Project description
Veloren is a multiplayer voxel RPG written in Rust. Veloren takes inspiration from games such as Cube World, Minecraft and Dwarf Fortress. The game is currently under heavy development, but is playable.

homepage URL: veloren.net
source URL: github.com/veloren/veloren
license: GPL3
platforms: "Linux, Mac, and Windows"

Veloren actually already has embedded nix files: https://github.com/veloren/veloren/tree/master/nix. Hey @AngelOnFira! I guess you might not recognize me, but I remember you telling me about the nix build for Veloren when I was visiting Colorado last year. Is there a reason why this hasn't been submitted to nixpkgs yet?

@MetaDark Hey :wave: I haven't looked too much into nix for Veloren, I know we had a contributor that added nix configs, but I don't think we've looked at packaging it. I think we officially build for the AUR, flatpak, and maybe a few others, not 100% sure though. I don't think there are any issues with doing this, but I'm not sure if there is anything special this might entail. Also, is it possible to package from a Gitlab repo? Our Github mirror isn't doing too hot since we're running into LFS restrictions. Github currently shows that the last commit was over a month ago :grimacing:

I'll include @yusdacra on this thread as they were the one to get our Nix stuff set up :100:

@AngelOnFira Yep, there's a helper called fetchFromGitLab which can be used. I'm not really sure how it integrates with LFS though since I think the archive it grabs doesn't include files from LFS.

It looks like it might be better to just use fetchgit and run the git lfs commands as part of of the postFetch. See https://discourse.nixos.org/t/how-to-fetch-lfs-enabled-repo-with-fetchfromgithub/5890/8.

I tried to write a derivation to add to my flake-based system:
{
    veloren =
      let
        velorenSrc = pkgs.fetchgit {
          url = "https://gitlab.com/veloren/veloren";
          rev = "v0.8.0";
          sha256 = "sha256-Y/z9pLVknTJbz0QkZFsXtgBkMlaYAmKcGS4dqy9ApSQ=";
          leaveDotGit = true;
        };
        system = "x86_64-linux";
        sources = import "${velorenSrc}/nix/sources.nix" { inherit system pkgs; };
      in
        import "${velorenSrc}/nix" { inherit system sources; };
    #...
}

The git-lfs stuff is handled already in there, but I get stuck on this error:
error: --- Error -------------------------------------------------------------------------------- nix
in pure evaluation mode, 'fetchurl' requires a 'sha256' argument

which originates from /nix/store/fghm13lvj2l83bxradhxkjvn2x0h8n7k-nixpkgsMoz-src/rust-overlay.nix (meaning I don't know what I can do about this). This is getting pulled in from here: https://gitlab.com/veloren/veloren/-/blob/bce6e1c6e953c4531519ee4c4138ea0a7e34bb78/nix/nixpkgs.nix

Hello! That looks like an issue with nixpkgs-mozilla, which is what we use to pull in the Rust toolchain version we use (which is declared in the rust-toolchain file, in the root of the repo). I will try to reproduce that (i didn't try flakes much yet). For now you can try the yusdacra/fix-nix-build-tag-bug branch of the Veloren repository and see if it fixes it, or use nix-env to install it.

Hello! That looks like an issue with nixpkgs-mozilla, which is what we use to pull in the Rust toolchain version we use (which is declared in the rust-toolchain file, in the root of the repo). I will try to reproduce that (i didn't try flakes much yet). For now you can try the yusdacra/fix-nix-build-tag-bug branch of the Veloren repository and see if it fixes it, or use nix-env to install it.
EDIT: The branch is merged into master now, so you can use master branch :)

It seems to have fixed the issue. I'm now getting a failure from /nix/store/h42zql6d38gwglnb8q0dabsp3ypxkl5p-gitLfsCheck.drv: stderr.
Using same expression as before but with latest rev from master.

Hello! That looks like an issue with nixpkgs-mozilla, which is what we use to pull in the Rust toolchain version we use (which is declared in the rust-toolchain file, in the root of the repo). I will try to reproduce that (i didn't try flakes much yet). For now you can try the yusdacra/fix-nix-build-tag-bug branch of the Veloren repository and see if it fixes it, or use nix-env to install it.
EDIT: The branch is merged into master now, so you can use master branch :)

It seems to have fixed the issue. I'm now getting a failure from /nix/store/h42zql6d38gwglnb8q0dabsp3ypxkl5p-gitLfsCheck.drv: stderr.
Using same expression as before but with latest rev from master.

Yikes, that's my fault. It should've given you a message that says "git-lfs isn't setup, bla bla". fetchgit doesn't handle git-lfs so you'll need to setup git-lfs with the postFetch hook.

I'm not having any luck getting LFS to work.
I wrote this wrapper for fetchgit:
let
  fetchgitLFS = args:
    let
      args' = args // {
        fetchSubmodules = true;
        leaveDotGit = true;
        postFetch = ''
          git lfs install --local
          git lfs fetch
          git lfs checkout
        '';
      };

    in
      (pkgs.fetchgit args').overrideAttrs (oldAttrs: {
        nativeBuildInputs = oldAttrs.nativeBuildInputs or [] ++ [ pkgs.git-lfs ];
      });
in  # ...

and just substituted my usage of fetchgit for it, but when those git lfs ... commands are run, the current directory is /build, which neither is nor contains the repo. I figured this out by setting postFetch to
''
pwd
ls -A
exit 1
''

Aha, I had to cd $out before running the git lfs ... commands. Seems weird to me that it wouldn't put me in the repo in postFetch though.

Aha, I had to cd $out before running the git lfs ... commands. Seems weird to me that it wouldn't put me in the repo in postFetch though.

So does it work now? If so, nice!

I now another error:
[...]
Nothing new to pack.
Updated git hooks.
Git LFS initialized.
fetch: Fetching reference refs/heads/fetchgit
Downloading LFS objects:   0% (0/1), 0 B | 0 B/s^Mbatch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
batch request: missing protocol: ""
error: failed to fetch some objects from ''

but at least the commands are run.

Ok, so far I have this:
{ pkgs, ... }:

let
  fetchgitLFS = args:
    let
      args' = args // {
        fetchSubmodules = true;
        leaveDotGit = true;
        # deepClone = true;
        postFetch = ''
          cd $out
          git remote add origin ${args.url}
          git lfs install --local
          git lfs fetch
          git lfs checkout
        '';
      };

    in
      (pkgs.fetchgit args').overrideAttrs (oldAttrs: {
        nativeBuildInputs = oldAttrs.nativeBuildInputs or [] ++ [ pkgs.git-lfs ];
      });

  velorenSrc = fetchgitLFS {
    url = "https://gitlab.com/veloren/veloren";
    rev = "30563f59f3d09115b8b6a7d9fddb6cfb1f842e6a";
    sha256 = "sha256-vMl6FmpK7DLa7wtNh+n1H0MS0t6wcFqpDdqbjbFRj2Q=";
  };

  system = "x86_64-linux";

in
  import "${velorenSrc}/nix" { inherit system; }

but the problem is that every time I get a different hash, so there's always a mismatch.

I don't know what it means by error: assets/voxygen/audio/ambient/wind.ogg: cannot add to the index - missing --add option?
There's no --add flag for git lfs checkout, but that's the command producing the error. I don't really know how this works, tbh.
I went through the process manually with a local clone of the repo and it worked fine.

I don't know what it means by error: assets/voxygen/audio/ambient/wind.ogg: cannot add to the index - missing --add option?
There's no --add flag for git lfs checkout, but that's the command producing the error. I don't really know how this works, tbh.
I went through the process manually with a local clone of the repo and it worked fine.

That sounds like the index file is missing in the repo, which git-lfs can't operate without. Can you try putting git checkout ${args.rev} after adding the remote? TBH I don't see how it will help since fetchgit should already do that... But maybe that will work?
I can add a way to override the version & git-lfs command so that git and git-lfs commands won't run (we use git to determine what to put in the version string, both in game and in Nix derivation) and then you should be able to fetch it via fetchFromGitLab, which should have the assets too (downloading an archive from GitLab does at least). It would work, but I feel that's kinda dirty.

Progress! Sort of..
We're back to
error: --- Error --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- nix
builder for '/nix/store/h42zql6d38gwglnb8q0dabsp3ypxkl5p-gitLfsCheck.drv' failed with exit code 1
------------------------------------------------------------------------------------------------ show-trace ------------------------------------------------------------------------------------------------
trace: while evaluating the attribute 'DISABLE_GIT_LFS_CHECK' of the derivation 'rust_veloren-common-0.8.0'

Progress! In a narrow sense of the word..
Adding ${args.rev} helped. Now we're back to
error: --- Error --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- nix
builder for '/nix/store/h42zql6d38gwglnb8q0dabsp3ypxkl5p-gitLfsCheck.drv' failed with exit code 1
------------------------------------------------------------------------------------------------ show-trace ------------------------------------------------------------------------------------------------
trace: while evaluating the attribute 'DISABLE_GIT_LFS_CHECK' of the derivation 'rust_veloren-common-0.8.0'

Can you try with the latest commit on branch yusdacra/override-git-lfs, and adding disableGitLfsCheck = true; to last import "${velorenSrc}/nix" { ... }? That should disable the git-lfs check. I want to see if the assets are actually in place since the git-lfs check fails. If the game builds and can't load one of the assets it'll panic and abort.

When I tried to build my system flake I got this:
error: --- Error --- nix-daemon
builder for '/nix/store/dcq4i2vxf95p745k1g8rr8j14x6zn5k8-iced-f464316.drv' failed with exit code 1; last 5 log lines:
exporting https://github.com/hecrj/iced (rev f46431600cb61d4e83e0ded1ca79525478436be3) into /nix/store/qn43ka6287ih8932kc252wrap4ngmiw1-iced-f464316
Initialized empty Git repository in /nix/store/qn43ka6287ih8932kc252wrap4ngmiw1-iced-f464316/.git/
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: expected flush after ref listing
Unable to checkout f46431600cb61d4e83e0ded1ca79525478436be3 from https://github.com/hecrj/iced.
error: --- Error --- nix-daemon
1 dependencies of derivation '/nix/store/2phv70v90z0ja1zs2mn02ipaq4x6civk-rust_iced_core-0.2.1.drv' failed to build
error: --- Error --- nix-daemon
1 dependencies of derivation '/nix/store/cqvdfdz6lc6vb9mq8k12mbqx2xlcvmbq-veloren-voxygen_e7eb51ce-2020-12-04-18-28.drv' failed to build

I'm currently building it with nix-build --arg pkgs '(builtins.getFlake "nixpkgs").outputs.legacyPackages.x86_64-linux'. I'll let you know what comes out of it after it finished compiling. I have no idea how long it'll take.

The assets are indeed not where they should be.

The assets are indeed not where they should be.
Also, the error from my nixos-rebuild build was a fluke. At least after building it once with nix-build.

Hmm, then that means the git-lfs commands don't do anything? I'm quite confused here. Perhaps check if there are anything under the assets directory before running each git command in postFetch hook? Also what happens if you make deepClone true?

It's very strange. I appended postFetch with [ -f assets/voxygen/audio/ambient/wind.ogg ] || exit 1 just to make sure.
Then I did import (pkgs.lib.traceVal "${velorenSrc}/nix") # ... so that I can manually check the contents, which does indeed have assets (wind.ogg at least). Still the build panics with:
Panic Payload: "Failed loading essential asset: voxygen.texture.noise (error=ParseError(Unsupported(UnsupportedError { format: Unknown, kind: Format(Unknown) })))"
PanicInfo: panicked at 'Failed loading essential asset: voxygen.texture.noise (error=ParseError(Unsupported(UnsupportedError { format: Unknown, kind: Format(Unknown) })))', /source/src/assets/mod.rs:220:1
3
Game version: e7eb51ce [2020-12-04]

Backtrace:
0: veloren_voxygen::main::{{closure}}
1: std::panicking::rust_panic_with_hook
2: std::panicking::begin_panic_handler::{{closure}}
3: std::sys_common::backtrace::__rust_end_short_backtrace
4: rust_begin_unwind
5: std::panicking::begin_panic_fmt
6: veloren_common::assets::Asset::load_expect::{{closure}}
7: veloren_voxygen::render::renderer::Renderer::new
8: veloren_voxygen::window::Window::new
9: veloren_voxygen::main
10: std::sys_common::backtrace::__rust_begin_short_backtrace
11: std::rt::lang_start::{{closure}}
12: std::rt::lang_start_internal
13: main
14: __libc_start_main
15: _start

The contents of /nix/store/...-veloren-e7eb51c/assets/voxygen/texture/ (the fetched source) are these two files:

noise.png
waves.png

I'm trying with deepClone = true;. After that I'll insert recursive ls or something for the assets dir before each git command as you suggest.

Wait, where does the game look for the assets?

Wait, where does the game look for the assets?

If you check the default.nix file, you'll see a veloren-assets variable, which is basically created like this:
  veloren-assets = pkgs.runCommand "makeAssetsDir" { } ''
    mkdir $out
    ln -sf ${../assets} $out/assets
  '';

Then I wrap the binary and set VELOREN_ASSETS to veloren-assets, so that's where the game looks for the assets directory.

Updated my comment. I don't get the problem really.

Updated my comment. I don't get the problem really.

Those errors basically mean that git-lfs doesn't work properly. I'm at a loss here too.
I will add a "override version" option so that we can also skip the version checks and directly use fetchFromGitLab and see if it works.

Ohh..
$ file /nix/store/xwdgn945fjikr5d8hicz1wpn8l3l8w1h-makeAssetsDir/assets/voxygen/audio/ambient/wind.ogg
/nix/store/xwdgn945fjikr5d8hicz1wpn8l3l8w1h-makeAssetsDir/assets/voxygen/audio/ambient/wind.ogg: ASCII text

Ok, so I added a way to override the version. Try the latest commit of the same branch. Now instead of using fetchgit, try using fetchFromGitLab, without any postFetch hooks or whatever. Just make sure to pass the disableGitLfsCheck = true; and overrideVersion = <revision of commit used to fetch source> while importing.

I seem to be stuck on
trying https://gitlab.com/api/v4/projects/veloren%2Fveloren/repository/archive.tar.gz?sha=96d68d9e542735c2596b4fa7e0ef600a7359c839

There's no reported progress, but maybe it is progressing and it just takes a reeeaally long time. My network activity is mostly idle too, so I don't know what it's doing. I cancelled two or three times but I'll leave it for an hour or two this time.

It runs!
The window isn't actually displaying anything (it's just a frozen image of my screen), but no other bad things are happening.

The server does not run, however:
$ RUST_BACKTRACE=1 ./result/bin/veloren-server-cli                                                                                home  ✭ ✈ ✱
thread 'main' panicked at 'failed to retrieve git_datetime!', src/util/mod.rs:13:75
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::option::expect_failed
3: std::sync::once::Once::call_once::{{closure}}
4: std::sync::once::Once::call_inner
5: std::sync::once::Once::call_once::{{closure}}
6: std::sync::once::Once::call_inner
7: std::sync::once::Once::call_once::{{closure}}
8: std::sync::once::Once::call_inner
9: std::sync::once::Once::call_once::{{closure}}
10: std::sync::once::Once::call_inner
11: <veloren_common::util::DISPLAY_VERSION_LONG as core::ops::deref::Deref>::deref
12: veloren_server_cli::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

The server does not run, however:
$ RUST_BACKTRACE=1 ./result/bin/veloren-server-cli                                                                                home  ✭ ✈ ✱
thread 'main' panicked at 'failed to retrieve git_datetime!', src/util/mod.rs:13:75
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::option::expect_failed
3: std::sync::once::Once::call_once::{{closure}}
4: std::sync::once::Once::call_inner
5: std::sync::once::Once::call_once::{{closure}}
6: std::sync::once::Once::call_inner
7: std::sync::once::Once::call_once::{{closure}}
8: std::sync::once::Once::call_inner
9: std::sync::once::Once::call_once::{{closure}}
10: std::sync::once::Once::call_inner
11: <veloren_common::util::DISPLAY_VERSION_LONG as core::ops::deref::Deref>::deref
12: veloren_server_cli::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Both freeze and crash is caused since the game expects a proper formatted gitHash, which we aren't giving here. So I want to fix the git-lfs issue, but in the mean time I will upstream an assets argument, which will point to assets of the game. This will fix the issue, but you'll need to use fetchgit (for version detection) and fetchFromGitLab (to get the assets), which is a dirty workaround.
Thanks for your time :)

I too would really like to get fetchgit to work with git-lfs. Anything else would be too embarrassing for a PR, hehe.
Thanks for being accommodating on the other end :)

@lboklin can you try the branch yusdacra/nix-assets? You need to pass in the assets using the assets argument as I explained above but use the fetchgit source for importing default.nix.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/how-to-fetch-lfs-enabled-repo-with-fetchfromgithub/5890/9

It works perfectly.
This is cleaned up from what worked for me just now. I'll update in a bit with the real hash when I've confirmed it works verbatim.
{ pkgs, ... }:

let
  rev = "a5c285a13d8a0d174a2bb397dededdc94b40f544";

  velorenAssets = pkgs.fetchFromGitLab {
    owner = "veloren";
    repo = "veloren";
    inherit rev;
    sha256 = pkgs.lib.fakeHash;
  };

  velorenSrc = pkgs.fetchgit {
    url = "https://gitlab.com/veloren/veloren";
    branchName = "yusdacra/nix-assets";
    inherit rev;
    leaveDotGit = true;
    sha256 = "sha256-moPhJ1+y5fuWtg/Osk+wO6gIErxEfbzRzFox0CTYW1Q=";
  };

  system = "x86_64-linux";

in
  import "${velorenSrc}/nix" {
    inherit system;
    assets = "${velorenAssets}/assets";
  }

It works perfectly.
This is cleaned up from what worked for me just now. I'll update in a bit with the real hash when I've confirmed it works verbatim.
{ pkgs, ... }:

let
  rev = "a5c285a13d8a0d174a2bb397dededdc94b40f544";

  velorenAssets = pkgs.fetchFromGitLab {
    owner = "veloren";
    repo = "veloren";
    inherit rev;
    sha256 = "sha256-n1EqxxYDuDM9Cz10csf2EJoeOKaWCwXvkL7LX5IP+Yo=";
  };

  velorenSrc = pkgs.fetchgit {
    url = "https://gitlab.com/veloren/veloren";
    branchName = "yusdacra/nix-assets";
    inherit rev;
    leaveDotGit = true;
    sha256 = "sha256-moPhJ1+y5fuWtg/Osk+wO6gIErxEfbzRzFox0CTYW1Q=";
  };

  system = "x86_64-linux";

in
  import "${velorenSrc}/nix" {
    inherit system;
    assets = "${velorenAssets}/assets";
  }

Edit: Hashed and confirmed.

That's nice! I'll try and see if I can get git-lfs to work properly. I decided to not merge the workaround branch, but I'll rebase it daily so don't worry :P

Alright; thanks to user jonringer, who figured out that the issue was with git-lfs needing some configuring, I have managed to write a working fetchgitLFS helper. This expression will create the derivation attributes veloren-voxygen and veloren-server-cli from latest master:
{ pkgs, ... }:

let
  fetchgitLFS = args:
    let
      gitconfig = pkgs.writeText "gitconfig" ''
        [filter "lfs"]
          clean = "git-lfs clean -- %f"
          process = "git-lfs filter-process"
          required = true
          smudge = "git-lfs smudge -- %f"
      '';

    in
      (pkgs.fetchgit (args // { leaveDotGit = true; })).overrideAttrs
        (oldAttrs: {
          fetcher = pkgs.writeText "git-lfs.sh" ''
            #! /usr/bin/env bash

            export HOME=$TMPDIR
            mkdir -p $HOME/.config/git/
            cp ${gitconfig} $HOME/.config/git/config

            bash ${oldAttrs.fetcher} $@
          '';

          nativeBuildInputs =
            oldAttrs.nativeBuildInputs or [] ++ [
              pkgs.git-lfs
            ];
        });

  velorenSrc = fetchgitLFS {
    url = "https://gitlab.com/veloren/veloren";
    rev = "20b45a12023739cb9c303f90092868ed526bb931";
    sha256 = "sha256-ncubJuUpGNQGUV0jrQGg0GlLbZGAiIVpvqQ3hUl2zHw=";
  };

in
  import "${velorenSrc}/nix" { system = "x86_64-linux"; }

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/how-to-fetch-lfs-enabled-repo-with-fetchfromgithub/5890/14

Now that it everything appears to be working well I suppose as the next step the repo-committed nix files should be locally included for an upstream PR into nixpkgs, as I seem to recall that nixpkgs doesn't accept reliance on remote nix expressions.

The niv stuff has to be ported. crate2nix has to be in the same nixpkgs and all extensions to nixpkgs in nixpkgsMoz needs to be upstreamed or otherwise included in the PR.

Still need to make the game work on Wayland as that is currently broken. It fallbacks to X fine but I'd rather have it work properly.

[x] crate2nix was recently upstreamed: https://github.com/NixOS/nixpkgs/pull/104106 so that's all good
[x] niv stuff has been eliminated with (no longer using nix/sources.nix)
[x] removed nixGL stuff
[ ] need to figure out what to do with nix/Cargo.nix since it refers to repo-local crates. I can import it from the repo but I don't think that's clean nor accepted.

I have a PR to add support for LFS here: https://github.com/NixOS/nixpkgs/pull/105998

I have a WIP branch for adding Veloren to nixpkgs here: https://github.com/lboklin/nixpkgs/tree/veloren

Orthogonal to this issue, but maybe of interest to some is that I've opened a PR for a flake, which at least makes life easier for us flakers.

Any news on this? Looks like the fetchgit LFS support PR got merged as well.

it's already packaged within the upstream repo. However, I'm fine with including it in nixpkgs. We just probably wont have it built in hydra as it has sever GBs worth of assests.

Would it be feasible to split the assets off into their own package that isn't built on hydra while still building the binaries?

actually, there is only 174 MiB of assets in the release 0.11

Maybe Airshipper could be packaged instead?

Airshipper package is merged into nixpkgs now.

@yusdacra thank you very much for providing Airshipper with PR #137315.
It worked yesterday but stopped working today with the error message when trying to update to the latest binaries
[WARN] Unable to open libEGL.so: Library(DlOpen { desc: "libEGL.so: cannot open shared object file: No such file or directory" })
[INFO] Private capabilities: PrivateCapabilities { flip_y_requires_shift: true, imageless_framebuffers: true, image_view_usage: true, timeline_semaphores: true, texture_d24: true, texture_d24_s8: true, non_coherent_map_mask: 63 }
[INFO] Unzipping to "/home/<username>/.local/share/airshipper/profiles/default"
[ERROR] Error while performing filesystem operations. => Read-only file system (os error 30)
[ERROR] Installation failed with: Error while performing filesystem operations.

The directory itself is not read-only, but some links inside point to nix-store which is read only
drwxr-xr-x 10 <username> users      4096  3. Okt 08:38 assets
drwxr-xr-x  4 <username> users      4096  2. Okt 19:41 userdata
-rw-r--r--  1 <username> users 196031486  3. Okt 08:38 veloren
lrwxrwxrwx  1 <username> users        76  2. Okt 19:30 veloren-server-cli -> /nix/store/y6qvkg3fx2ljzbsp5p2bnnxl9n68ah8s-veloren-patch/veloren-server-cli
lrwxrwxrwx  1 <username> users        73  2. Okt 19:30 veloren-voxygen -> /nix/store/y6qvkg3fx2ljzbsp5p2bnnxl9n68ah8s-veloren-patch/veloren-voxygen

Please let me know, if this should be created as a separate issue.

It seems to be working fine for me currently. Maybe try deleting your profile? I know there is a bug that messes up the profile (if the symlinks are broken) but that's probably not related.

@yusdacra thanks for the fast reply and the hint.
For anyone also having this issue, I removed the veloren-server-cli and veloren-voxygen, started airshipper again and the download/install worked.

As mentioned earlier, veloren is both in nixpkgs and working well.

I'm not too keen on using a launcher that fetches random binaries from the internet.
The flake provided by upstream is also broken (it has been for a while).
I would appreciate a proper package in Nixpkgs, maybe with the assets split out if that's a concern.

If you're still interested I have made a PR to add the full veloren package.
Reviews are welcome.


Cannot compile on Apple M1

I am not able to compile the SDK on my Apple M1 processor. Seems the issue is related to ring.
ring-0.14.6/pregenerated/aesv8-armx-linux64.S:193:1: error: unknown directive  .type GFp_aes_hw_decrypt,%function
I believe this is a known issue, please see https://github.com/briansmith/ring/issues/1063

Using native-tls is the default, not rustls. Which crate are you wanting to use and what features did you select?

@christopher-wilke, that is an outdated crate, not to be used. Please see:
https://github.com/Azure/azure-sdk-for-rust/blob/main/HISTORY.md

@cataggar  Thx for your quick feedback.
The only thing I did was adding the azure_sdk_for_rust crate to my Cargo.toml file.  Then rust-analyzer crashed because of the error above.
[dependencies] azure_sdk_for_rust = "0.12.0"
Is there anything I miss here?


rsa -outform PVK fails with check_bitlen_rsa:unsupported key components when using 1.1.0 tip

Using latest master branch, configured with ./Configure darwin64-x86_64-cc no-shared no-unit-test
Command:
openssl genrsa 2048 | openssl rsa -outform PVK -passout pass:test > test.pvk

fails with:
writing RSA key
unable to write key
140735153328128:error:0908307E:PEM routines:check_bitlen_rsa:unsupported key components:crypto/pem/pvkfmt.c:531:

whereas with 1.0.2h (using default Homebrew build), a valid-looking test.pvk is output.
Not sure what to make out of this, possibly:

a required, but disabled-by-default component has to be manually enabled, even though PVK output itself is allowed.
the error should have been there in 1.0.2h, but wrong output was silently created.
the error is bogus.

This is a 1.1.0 bug. Fix on the way.

Fixed in latest HEAD. Closing this.


[FEATURE]: possible improvement: 1. Avoid duplicated face detection and 2. Batch image process for Emotion analysis

Description
First, thank you for this handy library!
We found 2 issues that could potentially be improved:

In certain cases, we need both the face identification, and emotion. Given the current implementation, we need to first call Deepface.represent(...), then DeepFace.analyze(...).  Since the Deepface.represent() already detects the face patches, it is natural to directly use these patches for analyze.
Inside deepface/extenedmodels/Emotion.py, the predict(...) is used to processes the face patches one by one. If there are many faces to be processed, this sequential operation may lead to performance degradation, especially when using GPU. It is possible to add a batch predict function to address it.

I could submit a PR if the above could be beneficial.
Many thanks again!
4.
Additional Info
No response

1- You can call extract_faces firstly and pass its output to repesent and analyze function. In that way, detection will be done once. All functions are accepting pre-loaded numpy arrays. So, I disagree to do anything for this topic.
2- in facial recognition models, we handled batch processing like - https://github.com/serengil/deepface/blob/master/deepface/basemodels/VGGFace.py#L66 . Same approach can be adopted in emotion model. If you are volunteer to do this, PRs are more than welcome!


Add LinuxCon 2023 tutorial

Add LinuxCon 2023 talk and five part blog series for The New Stack on benchmarking eBPF code to the Tutorial section.

@qmonnet thank you for the feedback!
I have update the description to now include "written in Rust".

A step-by-step guide to benchmarking both the client and kernel eBPF code written in Rust.

You are right, that some of the content would not apply to libbpf-based programs, so it is worth making the distinction.


Support injected clock

It would be nice to be able to inject a clock into the fake server so we can test expiry operations.

Clock injection is implemented in version 1.1.3
See README for details

Does the server need to have the clock updated each time I wish to change the time?  Or will the server be reactive to the clock being mutated?  For example:
var time = Instant.EPOCH

server.setClock(object: Clock {
  override fun instant() = time
  ...
})

jedis.setex("key1", 20, "v1");
time += Duration.ofSeconds(30)
jedis.exists("key2") shouldBe false

Both approaches are possible, but please mark shared mutable time variable as @Volatile, as it will be read in a separate thread.

Oh, I see.  Thanks!


perf: do not detect lean's toolchain

Addresses a significant cause of startup latency in v4.1.0-rc1.

Local time measurement with hyperfine:
$ hyperfine -w 3 "rc1-lake self-check" "new-lake self-check"
Benchmark 1: rc1-lake self-check
  Time (mean ± σ):     403.8 ms ±   3.9 ms    [User: 280.9 ms, System: 120.3 ms]
  Range (min … max):   400.6 ms … 412.4 ms    10 runs

Benchmark 2: new-lake self-check
  Time (mean ± σ):     220.6 ms ±   2.7 ms    [User: 138.7 ms, System: 79.7 ms]
  Range (min … max):   216.9 ms … 227.2 ms    12 runs

Summary
  'new-lake self-check' ran
    1.83 ± 0.03 times faster than 'rc1-lake self-check'

Nice work! What about the lean --githash invocation just below? It should be a bit faster, but in the standard colocated scenario I assume is it identical to Lean.githash.
By the way, have you benchmarked before how costly the git invocations on Windows are? On Linux they are super fast but I know that process creation is much more costly on Windows.

@Kha

Nice work! What about the lean --githash invocation just below? It should be a bit faster

That was my first thought after this as well! On my machine, hyperfine indicates lean --githash takes 100ms, so it is thus have the startup time. Thus, one of my next TODOs is to avoid it.


Add codecov

Set minimum coverage ratio for a commit to 90 %.
Allow some (0.09 %) coverage drop.

fixes #88

Issue detecting commit SHA. Please run actions/checkout with fetch-depth > 1 or set to 0

I think that's because there's no base report yet. I don't think it matters for the 403 error.

Bumping checkout to see if that helps.

Codecov upload succeeded now.


Artifacts in mosaic plots when intersection of masks and visualization planes is minimal

This problem has been around for a long while. When the intersection of the mask with the visualization plane only contains a fraction of a voxel, nilearn plotting gets very confused:

With poldracklab/fmriprep#2130 the problem is exacerbated (not so much for fully sampled datasets, but definitely for our test data).
I believe this problem would completely be fixed if we replaced the affine information of the input images to be aligned with the cardinal axes. To do so, I'd propose:

nibabel.as_closest_canonical to all volumetric inputs of plots.
Generate a new affine with: image_zooms x identity
Perhaps re-center the volume for visualization purposes (so reported coordinates are w.r.t. the center of the volume).

This way, visualization will cut through full voxels always and the marching cubes algorithm will not go bananas.
In general, this approach would also make our reports more transparent because:

We would be able to safely drop interpolations by nilearn
The user will have access to the visualization of the naked data array, instead of a reoriented version.

Opinions?

This is another manifestation of #281 which escapes the solution in #304 because the glitch does not only happen at views on the edge of the brain.

Probably better to comment here than on #544. So the issue, to be clear, is that nilearn can't handle images that do not have identical affine and FoV? Or can't handle oblique images?

The second, nilearn trips when these three happen together:

Plotting with add_contour()
Contour (mask) has sparse voxels
Oblique affine


Invalid behavior: "Relative workspace on monitor" is actually relative open workspace on monitor

https://wiki.hyprland.org/Configuring/Dispatchers/#workspaces
When switching to the next or previous workspace on a monitor with hyprctl dispatch workspace m+1 instead of switching to the next workspace hyprland will switch to the next open workspace on the monitor as if the command executed was hyprctl dispatch workspace me+1 . From what I understand though this command doesn't exist.
This problem also occurs with hyprctl dispatch movetoworkspace m+1 so the problem is probably in the implementation of the 'm' parameter.
I think the monitor parameter should do what it says and just switch to the next workspace on the monitor and only if combined with the 'e' parameter should it switch to the next open workspace on the monitor.
TLDR:
Current behaviour:
hyprctl dispatch workspace e+1     --> switch to the next open workspace
hyprctl dispatch workspace m+1    --> switch to the next open workspace on current monitor
hyprctl dispatch workspace me+1  --> not defined?
Expected behaviour:
hyprctl dispatch workspace e+1    --> switch to the next open workspace
hyprctl dispatch workspace m+1   --> switch to the next workspace on current monitor
hyprctl dispatch workspace me+1 --> switch to the next open workspace on current monitor.

yeah if you read the same link you posted you will NOT see an me so it's not defined. yes, m is on the current monitor. That means ON the current monitor, so open.
Everything works as expected.

I think I should've posted my config for you to understand the problem.
wsbind=1,$main_monitor
wsbind=2,$main_monitor
wsbind=3,$main_monitor
wsbind=4,$main_monitor
wsbind=5,$main_monitor
wsbind=6,$external_monitor
wsbind=7,$external_monitor
wsbind=8,$external_monitor
wsbind=9,$external_monitor
wsbind=10,external_monitor

workspace = 1,$main_monitor
workspace = 6,$external_monitor

I share the workspaces between monitors even though they are not open yet. I would like to be able to cycle through the workspaces only on the current monitor just as I would be able to if I had only one monitor on.
You can see that workspaces 1 - 5 are ON $main_monitor but not open. Currently it's impossible to only cycle from workspace 1-5 on $main_monitor because the config doesn't allow it. Maybe this is not how multi-monitors are intended to be used?

such behavior is really easy to script. See the IPC and hyprctl pages.


Running tasks in the debug terminal can be significantly slower

Both @kieferrm and I noticed that running e.g. build commands in the PWA debugger terminal was significantly slower than a normal terminal. #111 may resolve the issue.

Besides that, I think node just generally runs slower when the debugger is enabled.

Yea, that's my fear. I'll look into it more after 111 is merged and see what we can do. Hopefully that's the cause, and hopefully it's fixable.

I took another look at this again with my latest predictor performance tweaks. It seems like running from the debug terminal is about twice as slow, from Node 10 to the latest 13.2 release.
With debugger:

  npm run build > /dev/null 26.17s user 1.78s system 132% cpu 21.014 total
  npm run build > /dev/null 26.02s user 1.71s system 135% cpu 20.533 total
  npm run build > /dev/null 26.71s user 1.79s system 133% cpu 21.299 total

Normal console:

  npm run build > /dev/null  14.87s user 1.13s system 152% cpu 10.479 total
  npm run build > /dev/null  15.14s user 1.13s system 151% cpu 10.768 total
  npm run build > /dev/null  15.07s user 1.16s system 151% cpu 10.687 total

However, it running the build command ad-hoc with --inspect in my terminal and connecting via wscat does not have a similar performance overhead, so it seems like it may be something we're doing. I'll continue to investigate.

I took another look at this again with my latest predictor performance tweaks. It seems like running from the debug terminal is about twice as slow, from Node 10 to the latest 13.2 release.
 To my surprise, turning Debugger.enable and Runtime.enable have no noticable effect on the runtime, taking about 12 seconds consistently (faster than the terminal above, since this measures after the node binary is already running and some internals loaded).
However, enabling async stack traces immediately bumps the runtime up to around 20 seconds--and disabling them in the debug adapter moves the above time to ~17.5s. These appear to be responsible for the majority of the performance delta.
I don't think this is avoidable. setAsyncCallStackDepth is not configurable, and it's not something we can do without by default.
const WebSocket = require('ws');
const ws = new WebSocket(require('fs').readFileSync(0, 'utf-8'));

const start = Date.now();
ws.on('open', () => {
  ws.send('{"id": 1,"method": "Debugger.enable","params": {}}');
  ws.send('{"id": 2,"method": "Runtime.enable","params": {}}');
  ws.send('{"id": 3,"method": "Debugger.setAsyncCallStackDepth","params": {"maxDepth":32}}');
  ws.send('{"id": 4,"method": "Debugger.setPauseOnExceptions","params": {"state":"none"}}');
  ws.send('{"id": 5,"method": "Runtime.runIfWaitingForDebugger","params": {}}');
});

ws.on('message', msg => {
  if (msg.includes('Break on start')) {
    ws.send('{"id": 6,"method": "Debugger.resume","params": {}}');
  } else if (msg.includes('Runtime.executionContextDestroyed')) {
    console.log(Date.now() - start, 'ms');
    ws.close();
  }
});

Here, I hit about 11-12 seconds whether or not the debugger is enabled, so I think there's some behavior specific to the adapter that's slowing things down.

That's really interesting. I didn't realize the impact was that bad. Yeah I would support finding a way to lazily enable it. The problem is that it won't be capturing the async callstacks until we enable it, and users will miss async frames from that period of time.

What do you mean setAsyncCallStackDepth is not configurable, does maxDepth not have an effect?

I meant that the depth is the only thing we can configure :) The depth does seem to have some effect, setting it to 4 makes the runtime 17.5s down from 20s.
I think it might be worth having the async call stack depth set lazily by default for terminal programs--or perhaps all programs, even--with an option to change the defaults of course.

@roblourens what do you think of this?

Update showAsyncStacks to

showAsyncStacks: boolean | { eager: number } | { lazy: number };

{ eager: number } configures the async call stack depth. true aliases to the current { eager: 32 }
{ lazy: number } will trigger a call to async call stack depth only when a CDP notifies us that a breakpoint is resolved, or we hit a debugger statement, whichever happens first
Update the debugger terminal configuration to default to { lazy: 32 }

This should allow build tasks like webpack to run at full speed (if the user is not intended to debug them) while still preserving stacks in scenarios where we think they might hit a breakpoint.
The downside is that if they hit a debugger statement or hit a breakpoint immediately after a lazy script load, they may not get the stack.

Yeah, I think that's a reasonable tradeoff. It probably doesn't need to be exposed to the user, since if you have a launch config, you probably want the default, and in the terminal you don't have a launch config.

I think a way to toggle lazy mode off would be useful in case it causes issues for some people. In #221 the terminal defaults can be configured via debug.javascript.terminalOptions.
I'll get to work on this.


can you please put easymenu in the addons folder

can you please put easymenu in the addons folder

Hi @mclau152, sorry I don't commit external addons in my repo
I use gd-plug to manage addons, so you simply need to run:
godot --headless --script plug.gd install

where godot is the godot executable, your .exe if your are on Windows.
I will update the project's README soon, to add an installation and development section, like for my others games (example: MelonCrusade)


different/changing fee estimates

if you type lightning-cli estimatefees multiple times - the fees jump from one second to the other. i guess this is because the 3 esplora instances return different feerates
the estimates are different from what bitcoind would give as a backend which can lead to some side effects (peers not agreeing on fees for example, leading to closed channels)

the first point i could solve with just using one esplora backend (which kind of makes it less reliable if that backend goes bust, but would be kind of okay) - but i am not sure about the second point. would it be possible to use bitcoind for the estimatefees call and the esplora instances for the rest, especially getting the blocks? i would like to use trustedcoin with a pruned bitcoind backend
i also looked into btc-rpx-proxy (which would support getting missing blocks), but failed to run it on openbsd
edit: maybe i could use something like https://github.com/Toorop/go-bitcoind
edit2: maybe i can tweak trustedcoin itself here  to get similar feerates

Yeah, I wanted that too actually. Use bitcoind to publish transactions and estimate fees, but trustedcoin to fetch blocks. However that requires an entirely new plugin.
The default bcli thing to be rewritten and then we just swap out the blocks part for the trustedcoin one. It's easy, but I didn't have time yet.
If you want to tackle that, I would recommend maybe copying code from trustedcoin and from this bcli rewrite: https://github.com/niftynei/glightning/blob/master/examples/plugin/pl_btc/btc.go

awesome - thanks for the link. i will see what i can do and if it is also easy for me to implement. will update here if i have something to show

i implemented this in the most reckless way (depending only on blockstream.info and not verifying blocks) - it works for some hours now with my node. will probably add something similar used by trustedcoin (more explorers and validate the blocks): https://git.dalliard.ch/trustme/
will close this, because it is not really an issue with trustedcoin


Add Gitlab CI jobs

Without this patch the control repository does not contain any scripts to
execute CI jobs for Puppet code deployment.  This patch addresses the problem
by adding a Gitlab CI job configuration with three jobs defined across two
stages.  The test stage executes first with a Syntax and a Lint job executing
in parallel.  If an environment branch has been pushed, one matching
developemnt, testing, production or starting with the prefix
playground, the deploy stage is executed.
The deploy stage requires a Gitlab secret environment variable, PUPPET_TOKEN.
This environment variable is the puppet access token configured with Code
Manager.
The test stage runs the following syntax checks:

yaml files (*.yml, *.yaml)
json files (*.json)
bash scripts (*.sh)
ruby scripts (*.rb)
puppet manifests (*.pp)
erb files (*.erb)

The behavior of the checks are to check only files modified relative to
a base branch, defaulting to production.  This avoids running syntax
checks against files which have not been modified by the merge request.
The check uses git diff --name-status to identify changed files across
multiple commits in a topic branch.
The lint checks rely on bundler and the Gemfile to install numerous lint
checks.
Gem libraries are installed in a per-job location in $HOME.  This is an
intentional compromise between installing into a system GEM_PATH
element, which would create library conflicts with other jobs, and the
job workspace, which would cause gem libraries to be installed from the
network on each job invocation.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


ngGridEventScroll doesnot work for multiple grids

I have two ng-grids in the same controller. But when i scroll down till the buttom of view port of any of the grid, ngGridEventScroll  is emiited. But i want for the specific grid only? Is there any way to achieve that in ng-grid???

Only the grid that you scrolled to the bottom of will emit the event. If you're unsure which grid emitted the event, or if you want to only handle the event for one of the grids, you could do something like:
$scope.gridOptions1 = {
   //options for grid 1
}

$scope.gridOptions2 = {
   //options for grid 2
}

$scope.$on('ngGridEventScroll', function(event) {
   if(event.targetScope == $scope.gridOptions2.$gridScope) {
      //do something when scrolling to the bottom of grid 2
   }
});

Hi
I tried but it does not work.$scope.gridOptions2.$gridScope is undefined.
Any idea why is it giving "undefined"?
Regards
Sabina
On Wed, Apr 1, 2015 at 3:26 AM, jjkovacs<EMAIL_ADDRESS>wrote:

Only the grid that you scrolled to the bottom of will emit the event. If
you're unsure which grid emitted the event, or if you want to only handle
the event for one of the grids, you could do something like:
$scope.gridOptions1 = {
//options for grid 1
}
$scope.gridOptions2 = {
//options for grid 2
}
$scope.$on('ngGridEventScroll', function(event) {
if(event.targetScope == $scope.gridOptions2.$gridScope) {
//do something when scrolling to the bottom of grid 2
}
});
--
Reply to this email directly or view it on GitHub
https://github.com/angular-ui/ng-grid/issues/3073#issuecomment-88264111.

--
Best Regards
Sabina Maharjan

ngGrid sets $gridScope on your bound gridOptions object during the initialization process of the grid, so once the grid has finished initializing, it should be there. The following is a plunker with it working:
http://plnkr.co/edit/u1BVKGKl9pVom05240Si?p=preview

Hi,
Thank you so much.
It is working.
Regards
Sabina
On Wed, Apr 1, 2015 at 10:28 PM, jjkovacs<EMAIL_ADDRESS>wrote:

ngGrid sets $gridScope on your bound gridOptions object during the
initialization process of the grid, so once the grid has finished
initializing, it should be there. The following is a plunker with it
working:
http://plnkr.co/edit/u1BVKGKl9pVom05240Si?p=preview
--
Reply to this email directly or view it on GitHub
https://github.com/angular-ui/ng-grid/issues/3073#issuecomment-88542359.

--
Best Regards
Sabina Maharjan


WebSQL: There is no way to obtain a reference to an "SqlDatabase" object.

While WebSQL is deprecated IndexedDB is not supported by all browsers (especially iOS) so WebSQL is still needed. Saltarelle provides classes to use WebSQL in C#, however, it does not implement the "window.openDatabase" method used to open a database and to obtain a reference to an SqlDatabase object.
There are two classes this method can belong to - the "Window" class and the "SqlDatabase" class. Putting it in the "Window" class will correspond to the way the method is invoked in JavaScript. However, putting it in the SqlDatabase class may make its usage more intuitive.
    [ScriptAlias("window.openDatabase")]
    public static SqlDatabase Open(string name, string version, string displayName, int estimatedSize)
    {
        return null;
    }

I may also be nice to add a property or method that checks if WebSQL is supported by the browser:
    public static bool IsSupported
    {
        [InlineCode("typeof(window.openDatabase) == typeof(Function)")]
        get
        {
            return false;
        }
    }

I can create a pull request if there is a consensus on the matter.

I think it's better to keep it on Window.

Created pull requests for "Window.cs" and "WindowInstance.cs"


Execution System uses the identity of an entity; added "the" to execution message

About the PR

The execution system now checks against the Identity of the victim and uses the name provided by IdentityManager.Name().
Additionally added the optional THE in the localization strings so it correctly displays as "ready the (weapon) against the young man's throat"
Why / Balance

Fixes https://github.com/space-wizards/space-station-14/issues/32509
Technical details

Changed the execution system to check against the Identity of the victim and use the name provided by IdentityManagement.Entity().
Additionally added the optional THE in the localization strings so it correctly displays as "ready the (weapon) against the young man's throat"
Media

Screenshot showing changed behaviour:

Requirements

[X] I have read and am following the Pull Request and Changelog Guidelines.
[X] I have added media to this PR or it does not require an ingame showcase.

Breaking changes

None
Changelog

:cl:

fix: Fixed execution system showing character name instead of their identity

The same thing needs to be done for the attacker as well:

Entirely correct! Now in.

Looks good to me. Thanks for the fix and your first PR!


Need a command to Update-UiPathProcess to use latest Package

Currently per UIPath support there is no command to force the existing process(s) to use the latest package version. There is a visual indicator there is a newer package but no way to force this. It seems to be on the DEVs to see there is a newer package and choose to use it.

The issue is that we lack all the cmdlets for the Package version API. We'll need to fix it, more than one user complained.


Roll Engine from a6eb22454cae to 2e76b125c14a (4 revisions)

https://github.com/flutter/engine/compare/a6eb22454cae...2e76b125c14a
2021-05-27<EMAIL_ADDRESS>Reclaim paragraph memory more aggressively (flutter/engine#26438)
2021-05-27<EMAIL_ADDRESS>Roll Skia from 3af709f71a60 to ace17c2f4689 (32 revisions) (flutter/engine#26455)
2021-05-27<EMAIL_ADDRESS>Add todo to handle_test. (flutter/engine#26453)
2021-05-27<EMAIL_ADDRESS>Canonicalize fuchsia runner debug symbol path. (flutter/engine#26426)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Commit queue failed; closing this roll.


No Chrome installations found.

I get this error when I try to test it.

You must install chrome on your computer. The used chrome launcher library uses the local chrome path. You can also use it with Docker.

The bookcase has been rewritten. Please test the latest version and examples by following the readme file. If you are getting errors or this issue persists, please open a new issue.
https://github.com/zfcsoftware/cf-clearance-scraper/releases/tag/2.0.3


Does vscode has quit confirm ? (long press cmd + Q) Just like Google Chrome ?

Does vscode has quit confirm ? (long press cmd + Q) Just like Google Chrome ?

We closed this issue because it is a question about using VS Code rather than an issue or feature request. Please search for help on StackOverflow, where the community has already answered thousands of similar questions. You may find their guide on asking a new question helpful if your question has not already been asked. See also our issue reporting guidelines.
Happy Coding!

@shezhangzhang Settings > Window > Confirm Before Close: never/always/keyboardOnly
You are probably looking for the last option: "keyboardOnly"

@lorand-horvath make sense, thanks!