Building instructions

Godot version
v4.2.2
godot-cpp version
latest
System information
Windows 11
Issue description
Can you add some more details on how to build this addon?
It seems like it uses ziglang to build. So here's what I've done so far:
winget install zig.zig to install zig.
git clone https://github.com/hazelnutcloud/godot-llama-cpp.git
git submodule init
git submodule update
zig build
I get the error
thread 16232 panic: VK_SDK_PATH not set
C:\Users\janwe\dev\godot-llama-cpp\build.zig:289:74: 0x29b6ca in buildObj (build.exe.obj)
        const vk_path = params.b.graph.env_map.get("VK_SDK_PATH") orelse @panic("VK_SDK_PATH not set");
                                                                         ^
C:\Users\janwe\dev\godot-llama-cpp\build.zig:73:27: 0x298d14 in build (build.exe.obj)
    const llama = buildObj(.{
                          ^
C:\Users\janwe\AppData\Local\Microsoft\WinGet\Packages\zig.zig_Microsoft.Winget.Source_8wekyb3d8bbwe\zig-windows-x86_64-0.12.0\lib\std\Build.zig:2080:43: 0x27d8b6 in runBuild__anon_8938 (build.exe.obj)
        .ErrorUnion => try build_zig.build(b),
                                          ^
C:\Users\janwe\AppData\Local\Microsoft\WinGet\Packages\zig.zig_Microsoft.Winget.Source_8wekyb3d8bbwe\zig-windows-x86_64-0.12.0\lib\compiler\build_runner.zig:300:29: 0x279034 in main (build.exe.obj)
        try builder.runBuild(root);
                            ^
C:\Users\janwe\AppData\Local\Microsoft\WinGet\Packages\zig.zig_Microsoft.Winget.Source_8wekyb3d8bbwe\zig-windows-x86_64-0.12.0\lib\std\start.zig:350:53: 0x27f8fc in WinStartup (build.exe.obj)
    std.os.windows.ntdll.RtlExitUserProcess(callMain());
                                                    ^
???:?:?: 0x7ffb7ab3257c in ??? (KERNEL32.DLL)
???:?:?: 0x7ffb7b5eaa47 in ??? (ntdll.dll)
error: unable to read results of configure phase from 'C:\Users\janwe\dev\godot-llama-cpp\zig-cache\tmp\f115ddaf0467eb8e': FileNotFound

VK SDK seems to be the Vulkan SDK, so I've installed that:
winget install KhronosGroup.VulkanSDK
This adds the Env-Variable, but the Console needs to be reopened.
After that the building completes successfully. But when I open the godot project in the godot-llama-cpp repo the project fails building in godot with the error Could not find type 'LlamaBackend' in the current scope.
It seems like I'm missing a step. Can you tell me what I need to do?

I believe you would need to copy the built library from zig-out/lib into godot/addons/godot-llama-cpp/lib (create the lib directory if it's not already there).

FYI I've just updated the readme to include more detailed build instructions. Let me know if you are running into any problems with it!


Update claims.yaml

This PR updates the claims.yaml file for the logstream-leader chart.
The following capabilities have been added:

Disabling persistence by settingpersistence.enabled=false so that the Leader Pod uses an emptyDir instead of a PVC.
Allowing a custom claimName to be set. Setting the value to null (i.e. --set="persistence.claimName=") results in the Helm Release name being used for the PVC resource. By default the claimName value is set to leader-config-claim for backwards compatibility purposes.
Allows for custom annotations and other PVC spec values to be set.

Resolves #196

@konradmars @pdugas could one of you merge? I don't that permission anymore.


Using mapped variables in rewrite replacements leads to expansion to captures from the map

Environment
Tested with nginx 1.24.0 and 1.27.2 both on an Ubuntu server and inside docker images, so the exact environment doesn't matter.
Description
A variable is defined from a map block containing a regex pattern with capture.
When using this variable in a rewrite replacement, references to captures of the rewrite regex are expanded to captures of the map pattern rather than to those of the rewrite pattern, which is unexpected.
See the example below. The variable $lang is created, and if the Accept-Language header contains de or fr, lang will be set to the corresponding value. (Usage of $http_accept_language and language headers comes from our real-world case but doesn't matter, any map goes.)
This variable is used in the replacement of a rewrite that itself captures a part of the URI.
When the Accept-Language is en or it, the $1 in the rewrite is expanded to the capture from the rewrite pattern, as expected.
When the Accept-Language is de, however, the $1 is expanded to the capture from the map pattern instead. So the map leaks into the rewrite.
nginx configuration
user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log debug;
pid        /var/run/nginx.pid;

events {
        worker_connections  1024;
}

http {
        include       /etc/nginx/mime.types;
        default_type  application/octet-stream;

        access_log  /var/log/nginx/access.log;

        sendfile        on;

        keepalive_timeout  65;

        map $http_accept_language $lang {
                default rm;
                it it;
                ~\b(de|fr)\b $1;
        }

        server {
                server_name localhost;

                rewrite ^(/test)$ $1/$lang/;
        }
}

nginx debug log
curl -H "Accept-Language: en" -i localhost:8080/test # good, -> /test/rm/

nginx  | 2024/11/26 17:26:35 [notice] 24#24: *2 "^(/test)$" matches "/test", client: <IP_ADDRESS>, server: localhost, request: "GET /test HTTP/1.1", host: "localhost:8080"
nginx  | 2024/11/26 17:26:35 [notice] 24#24: *2 rewritten redirect: "/test/rm/", client: <IP_ADDRESS>, server: localhost, request: "GET /test HTTP/1.1", host: "localhost:8080"

curl -H "Accept-Language: it" -i localhost:8080/test # good, -> /test/it/

nginx  | 2024/11/26 17:36:59 [notice] 22#22: *1 "^(/test)$" matches "/test", client: <IP_ADDRESS>, server: localhost, request: "GET /test HTTP/1.1", host: "localhost:8080"
nginx  | 2024/11/26 17:36:59 [notice] 22#22: *1 rewritten redirect: "/test/it/", client: <IP_ADDRESS>, server: localhost, request: "GET /test HTTP/1.1", host: "localhost:8080"

curl -H "Accept-Language: de" -i localhost:8080/test # bad, -> de/de/

nginx  | 2024/11/26 17:26:28 [notice] 22#22: *1 "^(/test)$" matches "/test", client: <IP_ADDRESS>, server: localhost, request: "GET /test HTTP/1.1", host: "localhost:8080"
nginx  | 2024/11/26 17:26:28 [notice] 22#22: *1 rewritten redirect: "de/de/", client: <IP_ADDRESS>, server: localhost, request: "GET /test HTTP/1.1", host: "localhost:8080"

Note: the doc says
A regular expression can contain named and positional captures that can later be used in other directives along with the resulting variable.

Unclear whether this describes the observed behavior or something else related to map entries only. Even if it does describe the behavior at hand (which then wouldn't be a bug but a "documented feature"),

this leaking behavior is highly unpredictable
it seems weird that the positional captures of the map not only leak, but take precedence over the ones local to the rewrite.


replace progress message

closes #333

I'm not a reviewer by any means but a small nitpick about the commits, try and describe in a short way what you've done with the commit. All your commit messages are the same so it would be hard to discern which is which at a later time if need be.

golangci is failing on  Error: File is notgofmt-ed with -s (gofmt)
commitliont is failing (i think on the first commit) - you can squash all commits now and fix the message

I will do squash commit

@mohamedasifs123 looks good, please squash so we pass Commitlint checker
Also please consider moving doReportProgress() to https://github.com/opiproject/sztp/blob/main/sztp-agent/pkg/secureagent/progress.go

Okay @glimchb
I will move the function.

@mohamedasifs123 great work, looks correct to me now...
please add space   between fix: message in the commit message of both commits to pass commitlint and we can merge this

Yeah, thanks for suggesting local check of commitlint


Compatibility issues

I want to know how the CSS browser is compatible.

List of browsers:
:white_check_mark: = Checked and working
:no_entry_sign: = Checked and not working/compatible
Desktop:

[x] FF (44+) :white_check_mark:
[x] Chrome (45+) :white_check_mark:
[x] Safari (9+) :white_check_mark:
[ ] Edge
[ ] IE (11/10)
[ ] IE (9)

Mobile:

[x] FF :white_check_mark:
[x] Chrome :white_check_mark:
[ ] Safari Mobile

As I do not have Windows system, I cannot check the project on Edge/IE, same with iOS devices (although some folks reported it works well on iOS). Would be glad if someone could test on those browsers and give a feedback.

I tested it on my windows machine.
IE (11/10)
IE (9/8/7-)
not working/compatible

Windows 10
IE (Edge)
Works. Only arrows/tails are missing under the toolltips.

@stuxt It isn't working even on IE 10/11?
@Zaifor The tail of the tooltips uses embedded svg directly on the background property. As every modern browser accepts this approach, I'm not sure if its a bug of Edge itself or just some missing adjustment.

If you use CSS 2.1 :before and :after (instead using CSS3 way ::) will work on every browsers, also IE 8.

@equinusocio Wow, now that's something I had no idea about. Will be updating the code with the fix tonight.

@Zaifor @equinusocio Could you guys please test the new production files with Internet Explorer?

@kazzkiq for reference - ::before / ::after
Also, can we get a read me update once testing is done?

@curtismorte Sure, once we test the changes on IE I will create a "Compatibility" section.

No change here, but maybe the  tag is part of the problem for IE. On IE 11 ( 10 and 9 with DevTools ) it works with divs, but again no tail. Chrome have some issues with the text within divs.
See the image:
https://drive.google.com/file/d/0B_fJ4lx-vsEkSXJrdUVhb1R2eVE/view

@Zaifor the blurred text is related to issue #21. The fact that the tag still not working on IEs is provably due to use of inline SVG (Internet Explorer doesn't seem to play very well with non-basic SVG stuff).

@kazzkiq the inline SVG must be URL encoded to work in IE.
Reduced test case: http://codepen.io/chriscoyier/pen/ZQgvyG/

IE10/11 work when the SVG is base64 encoded and an element other than button is used (div, span, a). IE9 partially works (the :before pseudo element is not center aligned correctly). And IE8, well that just fails.
Also, if support of browsers matching '> 1%, last 2 versions' (autoprefixer) is acceptable, a majority of the vendor prefixes are not needed, lightening up the code by almost 25%. IE9/10/11 all still work the same in that scenario.

If there are any IE11 issues, please refer them to #47.


Rename the rest of java packages in itests

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/camel-quarkus-pr/61/

Thanks


Storing the Butler path separately from the rest of the config

I work on both macOS and Windows and use the ItchUpload post-build action. The path to the Butler executable varies, so I have to remember to change it back and forth depending on where I'm building from.
It feels like the path should be stored separately from the rest of the configuration -- it's the only part of the configuration that has anything to do with your specific machine. Everything else is consistent, no matter where I'm working.
Perhaps it would go into the user settings? I'm not familiar with how that works.

Perhaps to avoid having to store any kind of machine-specific paths, the build action should instead require Butler to be accessible from your system path instead?
There's documentation on how to set that up at https://itch.io/docs/butler/installing.html#adding-butler-to-your-path, would be good to test if using a Butler executable path of just 'butler' in the build action works when this has been configured.

Ah, that's a reasonable idea. The path field could be left in case you do need to override it.


Test Commit.

Coverage increased (+5.08%) to 49.153% when pulling 9e88b3d8643fba7753052586dc6c28c49d4905bf on piyush1911:master into 2e59b850ab27dd10e2532afcfe720d621b2bad6e on keeppythonweird:master.


Transient-local topics are not repeated into individual MCAP files when file splitting is enabled

Description
Transient-local topics are not repeated into individual MCAP files when file splitting is enabled
Expected Behavior
Transient-local topics are repeated into individual MCAP files when file splitting is enabled
Actual Behavior
Transient-local topics are not repeated into individual MCAP files when file splitting is enabled
To Reproduce
** Steps to reproduce the behavior, e.g.

Record a transient-local topic with file splitting enabled

System (please complete the following information)

OS: All
ROS 2 Distro: All

@jhurliman This is not a bug. This is a feature and we do this on purpose. See my detailed explanation here https://github.com/ros2/rosbag2/pull/1051#pullrequestreview-1059614100

Related ticket in rosbag2: https://github.com/ros2/rosbag2/issues/1159

Closing in favor of https://github.com/ros2/rosbag2/issues/1159


Add Julian to the team and do a support handover

User Story
Julian Standring needs to be added to the Modernisation Platform team:
https://user-guide.modernisation-platform.service.justice.gov.uk/team-guide/adding-a-new-team-member.html#adding-a-new-team-member-to-the-modernisation-platform
(superadmin access not needed)
And given a had over to enable him to support the platform.
Value
Enable Julian to be able to effectively support the platform
Questions / Assumptions

Definition of done

[x] add to the team
[ ] check he has access
[ ] do hand over sessions / shadowing until he feels confident
[ ] another team member has reviewed

Reference
How to write good user stories

Hand over session with me explaining the platform complete and he has been added to out Github team.


Unable to verify email address

Hi, apologies if this is the wrong place to report this, but I am unable to receive an email verification link sent to<EMAIL_ADDRESS>Would someone be able to check if the emails are bouncing to that address?
I’ve asked our IT department to check if anything is being blocked and they can’t see anything.
Interestingly I have been able to successfully receive the email on test.pypi.org.

According to our logs, we have sent two email verifications to that address in the last week, and both have been delivered.

Hi,
Thanks for confirming that - I will chase up with our IT department.


When plugin update to 1.21?

Just asking when this will be updated to 1.21 or if it will be updated because I need it for my MC server.

also waiting for 1.21 :)

Hey Felix
Thank you for your attention. Mojang has introduced many changes to datapacks, and I'm still trying to update my projects to the new version during my free times. In particular, the Player Shops datapack is quite challenging because it involves really complicated situations, and I'm stuck on it. Well, that will take a little while.
Thank you for your patience!
Let me know if you need further adjustments! Have a nice day.
Greetings
Efe

From: felixgorke @.>
Sent: Sunday, July 7, 2024 18:30
To: efeketket/PlayerShops @.>
Cc: Subscribed @.***>
Subject: Re: [efeketket/PlayerShops] When plugin update to 1.21? (Issue #3)
also waiting for 1.21 :)
—
Reply to this email directly, view it on GitHubhttps://github.com/efeketket/PlayerShops/issues/3#issuecomment-2212486029, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A34ZI56GYJOH6WSAUE2YBCLZLFNI7AVCNFSM6AAAAABJY3TSUSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMJSGQ4DMMBSHE.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Just asking when this will be updated to 1.21 or if it will be updated because I need it for my MC server.

Sorry for the delay. Im doing my best to update it.


[FEATURE]: surreal db support

Describe what you want
Community have any planning for adding surreal db ?
If it then it is very helpful 😀

Just came to ask the same question, would be amazing 😻
Ideally supporting surreal js and surreal.node 🤞

Would be awesome 😎

Speed of surreal db with drizzle would be awesome

I don't know enough about how drizzle works, so I have a question.
Does drizzle take that classic approach to ORMs such that it trys to normalize all flavors of SQL to a common interface (thus only having support for a subset of functionality across DB providers) or does it take a different approach?
SurrealDB's query language is if anything a superset of conventional SQL, but really, SurrealDB's query language is designed to for SurrealDB's unique data model, enables execution of JS code, and is approaching the sophistication of a programming language. So there's a lot to cover! How would Drizzle, in theory, support something like SurrealDB?

Duplicate of:
https://github.com/drizzle-team/drizzle-orm/issues/911#issue-1811665175

For anyone wondering, a typed SurrealDB orm does exists.
Take a look at Cirql
The only feature I really misses (that does have Drizzle), is the ability to handle migrations.

Close as Duplicate of #911

I would also really like to see Surrealdb support


transformer exception: console buffer yet initialized

When running as a transformer from inside the Eclipse plugin on Ubuntu I frequently get the following error:
Build error:
Transform File on xxx|less threw error: Bad state: Console buffer yet initialized
package:less_dart/src/logger.dart 37                       Logger.Logger
package:less_dart/less.dart 37                             Less.Less
package:less_dart/srcTransformer/less_transformer.dart 30  LessTransformer.transform.<fn>
dart:async/zone.dart 895                                   _rootRun
dart:async/zone.dart 796                                   _CustomZone.run
dart:async/zone.dart 1251                                  runZoned
package:less_dart/srcTransformer/less_transformer.dart 29  LessTransformer.transform
package:less_dart/transformer.dart 90                      FileTransformer.apply.<fn>.<fn>.<fn>
dart:async/zone.dart 1155                                  _RootZone.runUnary
dart:async/future_impl.dart 494                            _Future._propagateToListeners.handleValueCallback
dart:async/future_impl.dart 577                            _Future._propagateToListeners
dart:async/future_impl.dart 368                            _Future._completeWithValue
dart:async/future_impl.dart 422                            _Future._asyncComplete.<fn>
dart:async/schedule_microtask.dart 41                      _asyncRunCallbackLoop
dart:async/schedule_microtask.dart 48                      _asyncRunCallback
dart:isolate-patch/isolate_patch.dart 96                   _runPendingImmediateCallback
dart:isolate-patch/isolate_patch.dart 143                  _RawReceivePortImpl._handleMessage

package:less_dart/src/logger.dart 37                       Logger.Logger
package:less_dart/less.dart 37                             Less.Less
package:less_dart/srcTransformer/less_transformer.dart 30  LessTransformer.transform.<fn>
dart:async                                                 runZoned
package:less_dart/srcTransformer/less_transformer.dart 29  LessTransformer.transform
package:less_dart/transformer.dart 90                      FileTransformer.apply.<fn>.<fn>.<fn>
dart:isolate                                               _RawReceivePortImpl._handleMessage

This is how it is configured in pubspec.yaml:
transformers:
- less_dart:
    silence: true
    no-color: true
- angular
- $dart2js:
    sourceMaps: true

I need more information.
Remove silence flag, to know was happening inside.
By the way, "no-color" flag is not supported in the transformer.

I removed the silence flag but didn't get much more info. Full trace last in the the comment.
In this case some files are compiled successfully but then it crashes with a few files left.
Looks like some kind of race condition when it initilizes the logger.
This is the output:
[Info from less-dart] lessc --no-color web/less/variables.less > web/less/variables.css took 0.0s
[Info from less-dart] lessc --no-color web/less/mixins.less > web/less/mixins.css took 0.0s
[Info from less-dart] lessc --no-color web/less/paginator.less > web/less/paginator.css took 0.0s
[Info from less-dart] lessc --no-color web/less/wallet.less > web/less/wallet.css took 0.0s
[Info from less-dart] lessc --no-color web/less/modal.less > web/less/modal.css took 0.0s
[Info from less-dart] lessc --no-color web/less/customization.less > web/less/customization.css took 0.0s
Build error:
Transform File on xxx|less threw error: Bad state: Console buffer yet initialized
package:less_dart/src/logger.dart 37:7                        Logger.Logger
package:less_dart/less.dart 37:18                             Less.Less
package:less_dart/srcTransformer/less_transformer.dart 30:23  LessTransformer.transform.<fn>
dart:async/zone.dart 895                                      _rootRun
dart:async/zone.dart 796                                      _CustomZone.run
dart:async/zone.dart 1251                                     runZoned
package:less_dart/srcTransformer/less_transformer.dart 29:5   LessTransformer.transform
package:less_dart/transformer.dart 90:32                      FileTransformer.apply.<fn>.<fn>.<fn>
dart:async/zone.dart 1155                                     _RootZone.runUnary
dart:async/future_impl.dart 494                               _Future._propagateToListeners.handleValueCallback
dart:async/future_impl.dart 577                               _Future._propagateToListeners
dart:async/future_impl.dart 368                               _Future._completeWithValue
dart:async/future_impl.dart 422                               _Future._asyncComplete.<fn>
dart:async/schedule_microtask.dart 41                         _asyncRunCallbackLoop
dart:async/schedule_microtask.dart 48                         _asyncRunCallback
dart:isolate-patch/isolate_patch.dart 96                      _runPendingImmediateCallback
dart:isolate-patch/isolate_patch.dart 143                     _RawReceivePortImpl._handleMessage

package:less_dart/src/logger.dart 37:7                        Logger.Logger
package:less_dart/less.dart 37:18                             Less.Less
package:less_dart/srcTransformer/less_transformer.dart 30:23  LessTransformer.transform.<fn>
dart:async                                                    runZoned
package:less_dart/srcTransformer/less_transformer.dart 29:5   LessTransformer.transform
package:less_dart/transformer.dart 90:32                      FileTransformer.apply.<fn>.<fn>.<fn>
dart:isolate                                                  _RawReceivePortImpl._handleMessage

From the source: package:less_dart/srcTransformer/less_transformer.dart  lines 29-46 you could see a random number generator is used. Sounds like
new Random().nextInt(10000)
is not working. Could you test this function in your system?

new Random().nextInt(1000) seems to work fine from my naive occular instpection anyway. :)
If it would give the same value twice during a transformer run, would that cause this problem?

In my case, running pub from inside Eclipse, the Logger.cache is ever growing. I guess this is because pub keeps running and the same transformer instance is reused.
The Logger.cache is never cleared and eventually there will be an id clash. This will also cause a memory leak.
I don't know much about transformers, but if there is a hook where you can clear the cache after the transformer has finished the current run it will probably fix this problem.

Could you try 0.3.2? (here in github)
The random generator is out, and the cache is reset to avoid memory leaks.

The fix works great! Haven't been able to reproduce the issue.
Thank you!

Updated pub with 0.3.2


feat: support relative paths for xo.path setting (closes #106)

Untested so far
Fixes #105

ah, I wasn’t ready! I thought I had done a draft PR, but apparently not. Here’s the remaining commits: #107

@flying-sheep no worries! I jumped the gun - gonna fix and publish on my end. Thanks for your work!

great! It seems like it works, and loads xo from the specified path!


Support Python 3.7 + CI files rework

Coverage remained the same at 100.0% when pulling 48e50c524f09afac77ef207566b722ee084e02a9 on python_37 into a8fab8da5f6c9fa1185f7ac5c265dee0ede1c7bc on master.

Coverage remained the same at 100.0% when pulling 48e50c524f09afac77ef207566b722ee084e02a9 on python_37 into a8fab8da5f6c9fa1185f7ac5c265dee0ede1c7bc on master.

Coverage remained the same at 100.0% when pulling 48e50c524f09afac77ef207566b722ee084e02a9 on python_37 into a8fab8da5f6c9fa1185f7ac5c265dee0ede1c7bc on master.

Coverage remained the same at 100.0% when pulling 48e50c524f09afac77ef207566b722ee084e02a9 on python_37 into a8fab8da5f6c9fa1185f7ac5c265dee0ede1c7bc on master.


Don't use computed goto in the VM

src/engine/virtualmachine_p.cpp
Compilers will turn the switch statement into computed goto automatically.

@Arcnor What do you think about this?

From what I've seen, the compiler might do something like that, but it's not controllable nor guaranteed, so maybe you want to keep the existing behavior until tests are done? After my changes, testing if this is getting done by the various compilers should be easy.

That said cleaner code should probably prevail, given this VM probably doesn't need the highest performance anyway...

That said cleaner code should probably prevail, given this VM probably doesn't need the highest performance anyway...

Actually, the VM needs high performance. I've been even thinking about implementing JIT compilation.
I'll of course do benchmarks and tests first to be sure the compiler uses computed goto, that's why I've given this issue the least priority.

Actually, the VM needs high performance. I've been even thinking about implementing JIT compilation.

Isn't this project meant to be used with Scratch, the learning platform? For those kind of projects I think even a normal interpreted loop will suffice, unless you have some special targets in mind or something... Writing a JIT is possible, but a project on its own (like LuaJit), specially if doing it in general instead of using something like LLVM's ORC, but I'd be interested in seeing your ideas and progress there.

Actually, the VM needs high performance. I've been even thinking about implementing JIT compilation.

Isn't this project meant to be used with Scratch, the learning platform? For those kind of projects I think even a normal interpreted loop will suffice, unless you have some special targets in mind or something... Writing a JIT is possible, but a project on its own (like LuaJit), specially if doing it in general instead of using something like LLVM's ORC, but I'd be interested in seeing your ideas and progress there.

There are many cases where performance is needed, for example in 3D projects. Check these out, for example:
https://turbowarp.org/868045282
https://turbowarp.org/869264071
TurboWarp is a Scratch mod that compiles Scratch scripts to JavaScript. These projects would be much slower (or not run at all) if you tried them in the original Scratch VM. See https://docs.turbowarp.org/how
I don't think I'll ever be able to beat TurboWarp with this project, but I believe it's possible with JIT compilation.

I see, so very special projects, that's definitely not what I think of when I think about Scratch 😄 . Very cool nonetheless!
And for sure, beating V8 is probably very difficult if not impossible, although your surface area might be much smaller, so YMMV. Let me know when you open the issue to work on that, I'd be interested in following, and maybe even contribute if time permits.

Closing because the bytecode VM is going to be removed (#574).


ocenv with no dbca/manage-db tasks

Hello,
I'm starting to really like ocenv tool and I consider deploying it on our Oracle servers. These databases are registered in our ansible inventory (minimal info), but they haven't been created using oradb-manage-db role. We're using ansible-oracle for patching only. Now, I'm looking for a risk-free way to deploy ocenv without touching any running DBs... So, I'd like to avoid running manage-db tasks which may cause instance restarts or other side effects. Using ansible tags doesn't seem to work since those tasks are tagged in a way which prohibits the filtering I'd like to achieve. Do you have any advice on how to properly handle this? Would it be a good idea to create a separate role just for ocenv deployment/upgrade (breaking change)?
Thank you!
Alec

You could create a dedicated playbook or include the task in your play:
---
- name: Database Server Database Creation
  hosts: "{{ hostgroup | default('all') }}"
  any_errors_fatal: true
  become: true
  become_user: oracle
  tasks:
    - name: Install ocenv
      ansible.builtin.include_role:
        name: opitzconsulting.ansible_oracle.oradb_manage_db
        tasks_from: ocenv.yml

This will install the ocenv only - without any other stuff from oradb_manage_db.

Brilliant! Completely forgot about the task_from clause. Thanks Thorsten!


Revisit profiles activation to avoid relying on Maven 'activeByDefaul…

…t' which causes problem when needing to have multiple profiles enabled at the same time.

@kanovotn please have a look (just in case, the profile for eap should still be working fine).

Btw, I had to apply this locally for starting building using JDK 9 (which requires having an additional profile to be enabled only when jdk 9 is on)


Increment version number

The version number in the README is one behind the latest release. This is important because version 0.1.4 does not support Scala 2.12

Thanks!


Genji deals more than 50 damage with dash

Created by: MaxwellJung

moved from ow1_emulator_backup#627

mentioned in merge request ow1_emulator_backup!174


Add open source identity management solution

There needs to be an open source identity management solution to demonstrate core TRESOR functionality.

Needs to be done for https://github.com/cyclone-project/cyclone-tracking/issues/36


ninja fails on server - no such file or directory

Jumper@Jumper-PC MINGW64 ~/scrcpy/x
$ ninja
[1/1] Generating scrcpy-server with a custom command.
FAILED: server/scrcpy-server.jar
"bash" "C:/msys64/home/Jumper/scrcpy/server/./scripts/build-wrapper.sh" "../server/." "server/scrcpy-server.jar" "release"
/bin/bash: C:/msys64/home/Jumper/scrcpy/server/./scripts/build-wrapper.sh: No such file or directory
ninja: build stopped: subcommand failed.

$ ls ~/scrcpy/server/scripts/
build-wrapper.sh

@doublejumper
I meet this issue caused by CRLF problem, it seems that the developer use windows file,it make the build-wrapper.sh file can't be exec in unix enviroment.
i fix it by this
cd scrcpy
vim gradlew
# set ff=unix
# :wq

vim server/scripts/build-wrapper.sh
# set ff=unix
# :wq

then you can use ninja

@hanks-zyh
My build-wrapper.sh has only LF endings, but tried that just in case i misunderstood, but I still get the same error. Though for some reason now ninja does an extra step before stopping ([2/2] Linking target app/scrcpy.exe., maybe it was just a recent commit.

I bypassed this issue by using a string with the direct path to build-wrapper.sh instead of using the find_program subcommand.
I then promptly ran into a permissions issue with ninja directly afterwards...

I bypassed this issue by using a string with the direct path to build-wrapper.sh instead of using the find_program subcommand.

Cool :+1:
If you find any way to fix it "properly" for msys2, I'm interested :wink:

Probably fixed by c456e3826470753bdaefcffc93e9ae1bf25b12f7.
Reopen if this not the case.


Don't use local file system in devfs test

This was introduced due to some confusion for a merge conflict after #48101
We set fs to be a MemoryFileSystem up top.  We should not use globals.fs in this test, which results in using the LocalFileSystem instead of the memory file system, and lots of confusion in the test.

Needed for https://github.com/flutter/flutter/pull/47963


[BEAM-14428] I/O, community, and contribute pages improvements

Please add a meaningful description for your change here
[BEAM-14428]

change text of nav contribure and community nav menus
change styling of Ways You Can Contribute table
change styling of Contact Us table

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

@pcoet can you please review this PR? There are some minor style and consistency improvements we discussed with Brittany and Danielle :)

Is it ready to be merged?

Is it ready to be merged?

yes

yes

@aromanenko-dev can you please help us merge this one?:)

@dariabezkorovaina Sure!


Support Kubernetes secrets as a new Authentication Provider

Create a Kubernetes secrets authentication provider to authenticate with private registry

Here's the spec document: https://hackmd.io/@akashsinghal/r1m_7rVJ9


Publish Cocoapod and dependancies

Currently the cocoapod for KituraKit is created by a script to generate a pod branch and then users have to point at the git branch.
It would be easier to use and maintain if we published KituraKit and it's dependancies to the cocoapods library.

KituraKit is now published here This allows users to easily get this package on ios and means we no longer need to generate a pod branch.


comments inside of function definition argument list

e.g.
fn dump(
    value: var,
    // NYI some arg
) void {

The comment is not highlighted as a comment for me.

that seems to be fine under the new syntax file, but
fn dump(
    value: var,
    // NYI some arg
    foo: Bar
) void {

seems to broken.


Update companies list page size

Moved this setting to config instead of hardcode.
I guess with all other previous changes fixes  #474

@brain-geek could you take a peek at the failing test?

@doomspork yup, fixed. waiting for Travis rerun.


Fix download_data.py script

2 problems.  Problem one is that download_data.py is failing when trying to fetch a non-existent file:
$ python scripts/download_data.py
Cleaning out directory '/Users/dannyc/ga4gh/server/ga4gh-downloaded-data/dataset1/variants/1kg-phase3-subset'
Downloading 'ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20130502/ALL.chr1.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz'
Writing 'ALL.chr1.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.unsampled'
Sampling 'ALL.chr1.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.unsampled'
Compressing 'ALL.chr1.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf'
Indexing 'ALL.chr1.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz'
chrom: 1, maxPos: 138395, minPos: 10176
Downloading 'ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20130502/ALL.chr2.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz'
Writing 'ALL.chr2.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.unsampled'
Sampling 'ALL.chr2.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.unsampled'
Compressing 'ALL.chr2.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf'
Indexing 'ALL.chr2.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz'
chrom: 2, maxPos: 32403, minPos: 10178
Downloading 'ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20130502/ALL.chr3.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz'
Writing 'ALL.chr3.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.unsampled'
Sampling 'ALL.chr3.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.unsampled'
Compressing 'ALL.chr3.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf'
Indexing 'ALL.chr3.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz'
chrom: 3, maxPos: 81617, minPos: 60068
Downloading 'ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20130502/ALL.chrX.phase3_shapeit2_mvncall_integrated_v1a.20130502.genotypes.vcf.gz'
Traceback (most recent call last):
  File "scripts/download_data.py", line 354, in <module>
    main(args)
  File "/Users/dannyc/ga4gh/server/scripts/utils.py", line 34, in wrapper
    result = func(*args, **kwargs)
  File "scripts/download_data.py", line 347, in main
    downloader.downloadVcfs()
  File "scripts/download_data.py", line 226, in downloadVcfs
    self._processFileName(fileName)
  File "scripts/download_data.py", line 189, in _processFileName
    response = urllib2.urlopen(url)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 127, in urlopen
    return _opener.open(url, data, timeout)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 404, in open
    response = self._open(req, data)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 422, in _open
    '_open', req)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 382, in _call_chain
    result = func(*args)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 1401, in ftp_open
    fp, retrlen = fw.retrfile(file, type)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 903, in retrfile
    self.ftp.cwd(file)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ftplib.py", line 553, in cwd
    return self.voidcmd(cmd)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ftplib.py", line 249, in voidcmd
    return self.voidresp()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ftplib.py", line 224, in voidresp
    resp = self.getresp()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ftplib.py", line 219, in getresp
    raise error_perm, resp
urllib2.URLError: <urlopen error ftp error: [Errno ftp error] 550 ALL.chrX.phase3_shapeit2_mvncall_integrated_v1a.20130502.genotypes.vcf.gz: No such file or directory>

Problem two is that the directory structure needs to be changed to reflect the changes in #605

I would deal with problem 1 by removing support for X and Y. They seem to have changed files, and they don't have samples for the individuals we have so let's just get rid of them.

Fixed in #616


Tabscreen is not working inside modal.

I have added tab screen inside react native paper modal, but it is not working. I can only see the tabs but not the tab screen inside modal. Please help me with how to use tabs inside modal.
Thank you.

I think you need a flex: 1 in the modal content view or something like that!


add new landscape and serverless landscape files

Deploy preview for landscape ready!
Built with commit 3e9db43e6c98d79bbd5f5feba43fe2854fc65e4b
https://deploy-preview-657--landscape.netlify.com


feat: introduce monitoring for CheckSecrets

Introduces a new monitoring package that keeps track of CheckSecrets contracts used by a particular Drippie contract. Queries the Drippie contract for new drips and stores those drips for later. Iterates over stored drips during each loop to determine if the provided secrets are revealed or not.

Actually @ajsutton I've decided to open up a PR here to add an array into Drippie so that using the event query isn't necessary. I'd rather not use an event query since it's relatively slow and the number of elements inside of Drippie is going to be limited enough where iterating over an array is perfectly fine.

The code needs to be integrated with monitorism, so it should be also modified here: op-monitorism/cmd/monitorism/cli.go
Also we need a section in the readme.

The code needs to be integrated with monitorism, so it should be also modified here: op-monitorism/cmd/monitorism/cli.go Also we need a section in the readme.

This is done now.


'key' in message received via Consumer hasn't been decoded.

Bug Report
Consumer.on('message'), I expect the message.key should be a string, just as same as what I send via Producer.send(), however, what I got is a Buffer
Environment

Node version: v8.1.3
Kafka-node version: 1.6.2
Kafka version: v<IP_ADDRESS>

For specific cases also provide

Number of Brokers: 1
Number partitions for topic: 1

Include Sample Code to reproduce behavior
const kafka = require('kafka-node');

const { HighLevelConsumer, Client } = kafka;

const client = new Client('localhost:2181', 'my-client-id2');

client.on('error', error => console.error(error));

const consumer = new HighLevelConsumer(client, [{ topic: 'node-test7' }], {
  groupId: 'my-group-1',
  autoCommit: true,
  fromOffset: 0,
  encoding: 'utf8',
});

consumer.on('message', message => console.log(`> '${JSON.stringify(message)}'`));
consumer.on('error', error => console.error(error));

process.on('SIGING', () => consumer.close(true, () => process.exit()));

Include output with Debug turned on
  kafka-node:zookeeper Node: /consumers/my-group-1/ids/my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e was created. +0ms
  kafka-node:HighLevelConsumer rebalance() my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e is rebalancing: false ready: false +4ms
  kafka-node:HighLevelConsumer Deregistered listeners my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e +2ms
  kafka-node:HighLevelConsumer Registered listeners my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e +0ms
  kafka-node:HighLevelConsumer HighLevelConsumer rebalance retry config: {"retries":10,"factor":2,"minTimeout":100,"maxTimeout":1000,"randomize":true} +1ms
  kafka-node:HighLevelConsumer HighLevelConsumer my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e is attempting to rebalance +25ms
  kafka-node:HighLevelConsumer HighLevelConsumer my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e stopping data read during rebalance +0ms
  kafka-node:HighLevelConsumer HighLevelConsumer my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e assembling data for rebalance +52ms
  kafka-node:zookeeper Children are: ["my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e"]. +9ms
  kafka-node:HighLevelConsumer HighLevelConsumer my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e releasing current partitions during rebalance +10ms
  kafka-node:HighLevelConsumer HighLevelConsumer my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e determining the partitions to own during rebalance +2ms
  kafka-node:HighLevelConsumer consumerPerTopicMap.consumerTopicMap {"my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e":["node-test7"]} +0ms
  kafka-node:HighLevelConsumer newTopicPayloads [{"topic":"node-test7","partition":"0","offset":0,"maxBytes":1048576,"metadata":"m"}] +0ms
  kafka-node:HighLevelConsumer HighLevelConsumer my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e gaining ownership of partitions during rebalance +1ms
  kafka-node:zookeeper Gained ownership of /consumers/my-group-1/owners/node-test7/0 by my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e. +107ms
  kafka-node:HighLevelConsumer HighLevelConsumer my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e rebalance attempt was successful +1ms
  kafka-node:Client refresh metadata currentAttempt 1 +1ms
  kafka-node:HighLevelConsumer Registered listeners my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e +5ms
  kafka-node:HighLevelConsumer in fetchOffset my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e payloads: [{"topic":"node-test7","partition":"0","offset":0,"maxBytes":1048576,"metadata":"m"}] +0ms
  kafka-node:HighLevelConsumer Deregistered listeners my-group-1_464fef47-804e-4329-8832-6c0de40f0c2e +24ms
> '{"topic":"node-test7","value":"message 1","offset":14,"partition":0,"highWaterOffset":16,"key":{"type":"Buffer","data":[108,111,119,107,101,121]}}'
> '{"topic":"node-test7","value":"message 1","offset":15,"partition":0,"highWaterOffset":16,"key":{"type":"Buffer","data":[104,105,103,104,107,101,121]}}'
> '{"topic":"node-test7","value":"message 2","offset":16,"partition":0,"highWaterOffset":18,"key":{"type":"Buffer","data":[108,111,119,107,101,121]}}'
> '{"topic":"node-test7","value":"message 2","offset":17,"partition":0,"highWaterOffset":18,"key":{"type":"Buffer","data":[104,105,103,104,107,101,121]}}'
> '{"topic":"node-test7","value":"message 3","offset":18,"partition":0,"highWaterOffset":20,"key":{"type":"Buffer","data":[108,111,119,107,101,121]}}'
> '{"topic":"node-test7","value":"message 3","offset":19,"partition":0,"highWaterOffset":20,"key":{"type":"Buffer","data":[104,105,103,104,107,101,121]}}'
...

As you can see, the key are in form of {"type":"Buffer","data":[104,105,103,104,107,101,121]}, which I expect it to be a string like highkey.

Is the parsing code here?
https://github.com/SOHU-Co/kafka-node/blob/7be0e1c41e02ec4b0e82da5f6835a3c05c69327f/lib/protocol/protocol.js#L156-L161
      .word32bs('key')
      .tap(function (vars) {
        if (vars.key === -1) return;
        cur += vars.key;
        this.buffer('key', vars.key);
      })

Should we parse it as a string instead?

We should respect the consumer's encoding option or create a new option something like keyEncoding and use it if provided.  Since key has always returned an Buffer previously any changes made to this default behavior would become a breaking change.

Should be decoded as a string now by default. Fixed in #704 and published as 2.0.0.


Use fixed libusb version.

Fixed version for libusb
Related to PersonifyInc/UserExtraction#1747

cc: @zelonght
Verified on PersonifyInc/UserExtraction#1747

👍


Permission denied when attempting to mount s3

How might I troubleshoot this? Is bucket-name supposed to be a full url?
sudo $GOPATH/bin/goofys bk-munki / May 27 17:40:31 Brandons-MBP /Users/brandon/work/bin/goofys[7079]: main.ERROR Unable to access '<bucket-name>': permission denied May 27 17:40:31 Brandons-MBP /Users/brandon/work/bin/goofys[7079]: main.FATAL Mounting file system: Mount: initialization failed
Thanks in advance.

This means s3 is returning 403, which likely means your credential is not setup correctly. Why are you running goofys under sudo?

i'm trying to investigate the credential right now. i can't even list the directory in cyberduck. at first I thought permission denied had something to do with lack of sudo... so no reason for sudo.

Okay, I fixed the credential policy to have AmazonS3ReadOnlyAccess and I now get:
Brandons-MBP:~ brandon$ $GOPATH/bin/goofys bk-munki / 2017/05/27 18:04:39.537065 main.FATAL Unable to mount file system, see syslog for details
and
May 27 18:04:39 Brandons-MBP /Users/brandon/work/bin/goofys[7142]: main.FATAL Mounting file system: Mount: newConnection: Init: Reading init op: EOF

with AmazonS3FullAccess
May 27 18:14:11 Brandons-MBP /Users/brandon/work/bin/goofys[7176]: main.ERROR Unable to access 'https': permission denied May 27 18:14:11 Brandons-MBP /Users/brandon/work/bin/goofys[7176]: main.FATAL Mounting file system: Mount: initialization failed

The second error is because you are specifying https when you only need the bucket name. The first one I am not sure, are you using homebrew build or building from source?

not entirely sure which version i am using. i think i've installed both

You are trying to mount the bucket bk-munki with the root path /.  This is unlikely to work for a variety of reasons; try making a directory then using it as the path.

My end goal is mount the entire bucket, though when i specify a particular folder, either ./folderA, folderA, or /folderA, I get:
May 27 22:21:17 Brandons-MBP /Users/brandon/work/bin/goofys[7483]: main.FATAL Mounting file system: Mount: stat ./amazon_s3: no such file or directory
So, I suppose this is progress.

Woo. Works with $GOPATH/bin/goofys bk-munki .
Crashes finder for a bit before the actual mount works though.

I think I understand now. Thank you for the help!

Where is a proper place to mount? Everywhere I have tried breaks finder in odd ways.

/mnt is the canonical mount directory for temporary mounts if you have root access.  I mount in my home directory with directories named after the bucket name, e.g., /home/gaul/gaulbackup.

Have you experience any strange behavior with finder crashing due to fuse or this application? I had a lot of trouble with that... though maybe because I mounted in bad places

finder problem is beyond the scope of goofys, feel free to continue discussing here though


Questions about k8s installation method and wasmedge operation method

Hello, I am very pleased to see the article, thank you for your contribution. I have two questions:

According to the document, k8s is installed in a hack way. I would like to ask whether installing k8s in binary mode can support wasmedge? Have you tried this way?
When k8s runs the wasmedge container, it runs directly in pod mode? Does it support pod controllers? Such as deployment?
Thanks

Hi @chuqing1997
This repo is for PoC validation. If you want to integrate with k8s, you can try kwasm: https://github.com/KWasm/kwasm-node-installer

The question is answered. Closing it.


this is work for taking orders but its not change the order status after taking the payment .

i sell a digital downloadable product (stock design ) which made by me. and it needs the order mark as complete instantly after a successful Cart purchase. then my customer can download their design file instantly. but now this plugin only accepts the payment but not change the order status . this is very annoying to approve manually every order! Are there any solutions for me?

I was not able to replicate this issue. The order status should be changing from pending to processing immediately after the order is placed. It could be caused by a misconfiguration or callback issue on your store. Can you confirm which interface you are using (2PayJS, Inline, Convert Plus) and can you confirm that the order status is remaining in 'pending'?

i face this issue with 2Checkout Convert Plus Payment Gateway.  and i confirm that the order Status is remaining the same and it happened again today. my client hit me on Whatsapp and saying he cant download his files after his purchase. here is my store plugging setup. please check the image

Thank you for reporting this issue. This has been resolved in the latest release 1.2.0. Please make sure that you setup your IPN URL again after installing as it has changed in version 1.2.0.

Thank you for reporting this issue. This has been resolved in the latest release 1.2.0. Please make sure that you setup your IPN URL again after installing as it has changed in version 1.2.0.


correct call of  use of CI->session->userdata()

User data was called wrong in the Profiler class

How's that wrong?


Persistent ip g8os bootstrap procedure

Goal
Have persistent ip to node assignment. The current procedure implies that resourcepool nodes ipaddresses are volatile, which makes it very hard to implement reliable services.
How
We introduce a special bootstrap zerotier network. Instead of directly joining the resourcepool management network, nodes will join the bootstrap zerotier network. When AYS discovers a new node in the boostrap zerotier network, it will authorize it, and assign it an ip adress. Then it will examine if the new node is a g8os node. If not, it will unauthorize the node from the zerotier bootstrap network, and remove the assigned ip of the deauthorized node in the zerotier api. If the new node is a g8os node, AYS will instruct the g8os machine in the resourcepool management network, and assign it the same ip address this particular node was assigned before (in case of reboot) or assign it a new ip address calculated by AYS (no auto assign) in case it is a g8os node AYS does not know about yet. It will then also instruct the g8os node to leave the bootstrap zerotier network, and delete its member from the bootstrap zerotier network.

As discussed last Friday, we could also pregenerate the zerotier.secret and zerotier.public files ourselves in a consistent way so the same node would always have the same address. The secret file's format is address:0:publickey:privatekey with the address, publickey and private key in hex . The private key could be the sha256 of the mobo_id, the public key is the 25519 elliptic curve deriviation and the address are the last 5 bytes of a memory hard hash (https://github.com/zerotier/ZeroTierOne/blob/master/node/Identity.cpp#L39 ) of the public key.
Check if the first byte of the hash is less than 17 or if the address is a reserved one, if not, re-sha256 the private key.

Agree with Rob. Being able to also have the same nodeid across boots of the system, will only make the system more reliable. I have noticed that zerotier does not like having a lot of garbage nodes in its networks. For me the initial spec does not change, as it is much more secure, now certainly with also the added security on the zero-os api over ssl and authenticated by itsyou.online


grpcio-tools generating very long serialized pb descriptor on pb2.py

What version of gRPC and what language are you using?
I am using latests 1.28.1 grpcio-tools with Python.
What operating system (Linux, Windows,...) and version?
Linux Ubuntu 20.04.
What runtime / compiler are you using (e.g. python version or version of gcc)
Python 3.8.
What did you do?
Steps:

Create a .proto (you can get any from python examples
Generate code with python3 -m grpc_tools.protoc -I. --python_out=. --grpc_python_out=. PROTO_NAME.proto
Inspect the _pb2.py in the beginning of the file. There is the serialized_pb on the DESCRIPTOR line. This is usually a very long bytes() not compatible with PEP-8, black or any other code style linter.

What did you expect to see?
A broken down line of serialized with a maximum of 80 characters.
What did you see instead?
A line with usually hundreds or even thousands of characters.
Anything else we should know about your project / environment?
Nope.

The *_pb2.py files are generated by protoc, which is housed in https://github.com/protocolbuffers/protobuf. This issue probably belongs there.


buildmaster: add new option openvpn_extra_config_opts

We use this to pass --disable-dco to builds that need it when we will enable it by default.

folded into #12


Add support for ACT ESA

Hello from the nations capital!
I've been running a private fork of your custom component with support for the ACT's Emergency Services Agency (ESA) data feed, which is almost identical in format to the RFS data (but only contains the ACT) for a while but after my fork broke, I decided to properly implement my changes and hopefully contribute back upstream.
 Jurisdictions are then free to overrule where they see fit.
The (NSW) RFS feed contains what the danger levels are and if a TOBAN is in place and most of the time, it does match what our ESA states. However, on occasion (or quite frequently during the 2019-20 season) the ESA will come out and declare a TOBAN. This has never been reflected on the RFS's feed.
I've got almost two versions of this pull request, this one I've submitted and one where I've refactored things to be less indentception 🙂  which you can see here
Happy to submit the code_cleanup branch instead and/or squash these commits

Thank you very much for contributing to this component. The code looks good and it's great that you also added unit tests.
One concern I have is that a user can now choose a non-working combination of feed and district, i.e. I can choose a NSW district and the ACT feed, which results in non-working sensors. I am wondering if there is a simple way in the config flow to either show a warning message or restrict the user's options?

I like that idea.
I'm pretty confident there is an easy way to do this, I'm a little stretched for time this week but will add this in shortly  :slightly_smiling_face:

Fellow ACTer here.
One further, the actual FDR number is also important. For example high is 24> today was 25 so JUST high. This allows further planning to come from it. I looked else where and you seem to be the only one doing any RFS fire danger stuff

One further, the actual FDR number is also important. For example high is 24> today was 25 so JUST high. This allows further planning to come from it. I looked else where and you seem to be the only one doing any RFS fire danger stuff

None of the feeds that this integration currently processes, nor the new ACT specific one does contain this value. Have you found a feed that does provide this information?

I still haven't had time to implement what you mentioned @exxamalte, I hope to have some time soon.
but for @VK1MIC the FDR ratings come straight from the BOM (product number IDN10016) available in machine readable format at ftp://ftp.bom.gov.au/anon/gen/fwo/IDN10016.xml

Not sure if this one is readable
http://www.bom.gov.au/act/forecasts/fire-danger-ratings.shtml


List model declaration inside of a template

Create a tag library for defining a list model and interating it inside a template.
This is very usefull for static enumerations/codebooks.

This could also allow use to enumerate model from other library.
<ce:list name="persons">
    <ce:register name="first_name" />
    <ce:register name="last_name" />
    <list:declare name="persons" items="ce:list" />
</ce:list>

...

<ui:grid items="list:persons">
    ...
</ui:grid>


Applying discounts to product scope

I would like to be able to display globally applied discounts (like a sitewide sale) in any location that the product is displayed.
Currently the only way of applying a discount is via a cart. It would be good if the Discount Manager could also be used with some sort of applyToProduct function in order to display this information.
I have considered utilising a software cart to apply the discount to products but this would be very taxing for a site with any sort of category page. I have also considered manually applying percentage discounts but this would mean duplicating some existing site code and it would not be updated along with any other fixes to the core site code.

Hi @CWFranklin If the discount is site wide and applies to any product could you not just get the discount from the database?
If the discount is for specific products, couldn't you just get all discounts that are restricted to that product?

Hey Alec. Yeah, getting it from the database was one of my considered options. While I figured it was unlikely that it would change, I was hoping to avoid duplicating the percentage discount logic. Much like the apply code checks against cart lines, I thought an applyToPurchasable function could check criteria against products. The extended code around the percentage calculations also check against customer group, etc.


Add option to hide help based on long/short

Relates to #1064
I've added the enum variants and related setting methods to provide the functionality. However, the usage of Parser::use_long_help() is causing issues.
It seems that the linked method will not allow use_long to be true unless there is actually a long help value defined for the Arg. However, I noticed in help.rs that we would choose to use the desired long or short help based on what was specified during the run and the extra logic does not seem like it is really needed. However when I bypassed the code in parser.rs, there were some failing tests.
@kbknapp do you have any suggestions?

This change is

Ah ok I see now. I'm investigating a little more on my end to see what the issue may be, I'll let you know what I find.

Ok, so I see what's going on now (at least the Parser::use_long_help). It was meant to be able to say, "If no args defined a long_help just go ahead and use the old short help style." So people's help messages didn't suddenly change.
i.e.
Old style when using --help and no long_help has been defined
test 1.3
Kevin K.
tests stuff

USAGE:
    test [OPTIONS] [arg1]

OPTIONS:
    -f, --flag            some flag
    -h, --help            Prints help information
        --option <opt>    some option
    -V, --version         Prints version information

ARGS:
    <arg1>    some pos arg

Without Parser::use_long_help, even without defining any long_help, when the user does --help the message changes to this:
test 1.3
Kevin K.
tests stuff

USAGE:
    test [OPTIONS] [arg1]

OPTIONS:
    -f, --flag
            some flag

    -h, --help
            Prints help information

        --option <opt>
            some option

    -V, --version
            Prints version information

ARGS:
    <arg1>
            some pos arg

(note the help text being printed on the line below).
I'm personally fine with this change and dropping Parser::use_long_help entirely and if the user uses --help they see the long message, otherwise they see the short message with -h. I've never considered the format of the output of the help messages to part of the public API, only the correctness. It's had small formatting changes and such throughout v1 and v2.
However, it is a somewhat in your face stylistic change and would like to hear a few other opinions before making that particular change.

Back to the issue at hand, a simple way to keep the old functionality and fix this issue is to not only check if long_help.is_some() on all args, but also .is_set(ArgSettings::HiddenLongHelp).

Back to the issue at hand, a simple way to keep the old functionality and fix this issue is to not only check if long_help.is_some() on all args, but also .is_set(ArgSettings::HiddenLongHelp).

It does work, but it also brings up another potential issue: While there is no change when hidden_long_help has not been set, once it has been, the output suddenly changes to the style you outlined in your comment. This may catch some people off guard if they're adding hidden_long_help and have no previously defined long_help values as now there are 2 different styles for --help.

So long as it's documented I'm fine with it. I think the case to hide something from the long help only will be extremely rare, and already somewhat implies two different help messages (even if style isn't implied).

@stevepentland let me know once you're good with it and I'll do the final review

@kbknapp will do, should be soon. Just gotten side tracked

@kbknapp I've gotten them both working, updated the check, and added docs stating that using these options will change how --help displays. I also added tests.

Looks good, thanks! :+1:


Static Pirates

For some reason static is assigned to some variables in the pirate class which is inherited by all meaning we cant use the health functions for all the different ships

Harry fixed this


Connected components are not correctly typed

The problem
The connect function of react-redux is not returning a properly typed component, instead seems to be returning a any value, which breaks all the type-safety and intellisense of my Typescript code.
Context
So I'm working on a React-native project on my job and I decided to use Typescript for type-safety and autocomplete/intellisense features on my IDE of choice (Visual Studio Code). So using that I would define a component like this:
interface Props {
  label: string;
}

class CustomComponent extends Component<Props> {
  render(): ReactElement {
    return (
      <View>
        <Text>{this.props.label}</Text>
      </View>
    );
  }
}

export default CustomComponent;

And I would get the expected behavior, that is proper type-checking and autocompletion features on VS Code:

That error on the component its because its lacking the label prop, that I defined in the component's Props interface, and since I didn't define any defaultProps or marked it with the optional flag (?) it makes it a required prop.
But lets say I want to connect that component to my Redux Store, then I would use the connect function of react-redux and map props and/or action creators to it, like this:
// Properties passed from the parent component
interface OwnProps {
  label: string;
}

// Properties passed from the store
interface StoreProps {
  theme: 'light' | 'dark';
}

// Props of the component
type Props = OwnProps & StoreProps;

class CustomComponent extends Component<Props> {
  render(): ReactElement {
    return (
      <View>
        <Text
          style={{ color: this.props.theme === 'light' ? 'white' : 'black' }}
        >
          {this.props.label}
        </Text>
      </View>
    );
  }
}

// The store structure, defined here for the sake of simplicity
interface Store {
  theme: 'light' | 'dark';
}

const mapStateToProps = (state: Store): StoreProps => {
  const { theme } = state;

  return {
    theme
  };
};

export default connect(mapStateToProps)(
  CustomComponent
);

But when I do this the component loses all type-safety and autocompletion, where it basically accepts any prop with any value, and the IDE doesn't detect its possible props:

The code works as expected, but it loses all features that made me use typescript in the first place, so thats a no no.
After searching basically everywhere on the interwebs and asking on 2 slack channels and a discord server, I couldn't find an answer for this riddle. But I found something: it seems that the connect function, even with proper generic type arguments, is returning a any value and, obviously, thats not a properly typed React component!

So what am I doing wrong? I've been through basically dozens of articles and guidelines about how to properly type redux-connected components, and it just doesn't work, and I kinda need this to work, because deadlines. Please help, send the eagles.
Environmnent
react-native info:
System:
    OS: Linux 4.15 Linux Mint 19.1 (Tessa)
    CPU: (4) x64 Intel(R) Core(TM) i7-5500U CPU @ 2.40GHz
    Memory: 271.08 MB / 7.71 GB
    Shell: 4.4.20 - /bin/bash
  Binaries:
    Node: 12.4.0 - ~/.nvm/versions/node/v12.4.0/bin/node
    Yarn: 1.17.3 - ~/.nvm/versions/node/v12.4.0/bin/yarn
    npm: 6.9.0 - ~/.nvm/versions/node/v12.4.0/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
  npmPackages:
    react: 16.8.6 => 16.8.6
    react-native: ^0.60.4 => 0.60.4
  npmGlobalPackages:
    react-native-cli: 2.0.1

package.json: (I've ommited some unrelated dependencies for the sake of simplicity)
"dependencies": {
    "react": "16.8.6",
    "react-native": "^0.60.4",
    "react-redux": "^7.1.0",
    "redux": "^4.0.4",
    "redux-thunk": "^2.3.0",
  },
  "devDependencies": {
    "@types/react": "^16.8.23",
    "@types/react-native": "^0.60.1",
    "@types/react-redux": "^7.1.0",
    "@types/redux-thunk": "^2.1.0",
  }

We don't maintain the TS typings ourselves.  Those are over in DefinitelyTyped.

Having said that: I myself am still relatively new to using TS, and I'm just starting to try actually using connect() in a TS project.  So, A) I don't have any real expertise on this subject, and B) I'm kinda trying to figure out how this works too.
I certainly wouldn't expect connect() to be treating things as any - that seems broken.  Why it's doing that, I have no idea.

@markerikson The thing is, all articles seems to point that the connect function should be correctly typed, if you pass the generic type arguments, like so:
connect<StoreProps, void, OwnProps, Store>(
  mapStateToProps
)(CustomComponent);

But generic type arguments or not, the problem persists. Since you said you guys are not the ones typing the package, I'll just try to open an issue at DefinitelyTyped.
The workaround I found was to use the typeof operator in the default export, like this:
const connectedComponent: typeof CustomComponent = connect<
  StoreProps,
  {},
  OwnProps,
  Store
>(mapStateToProps)(CustomComponent);

export default connectedComponent;

With that typescript works as expected with type-checking and intellisense, but still thats just a workaround and may cause unexpected behavior down the line.

Try install @types/react-redux


Android crashes when calling AsyncStorage.multiRemove on an empty array

Description
Calling AsyncStorage.multiRemove on an empty array throws an error in Android, but works fine in iOS. The thrown error is an empty object.
Reproduction Steps and Sample Code
Example: (see https://snack.expo.io/Hkgy9sDx-)
Additional Information

React Native version: 0.43
Platform: Android
Development Operating System: macOS
Dev tools: Expo SDK 16.0.0

Hi there! This issue is being closed because it has been inactive for a while.
But don't worry, it will live on with Canny! Check out its new home: https://react-native.canny.io/feature-requests/p/android-crashes-when-calling-asyncstoragemultiremove-on-an-empty-array


Update README.md

correct typos

Not required anymore, because README.md has changed.
Still, thanks for the input!


Use display name rather than username

As per https://api.slack.com/changelog/2017-09-the-one-about-usernames it seems it would be better to use the display_name field from a user's profile rather than user.name when showing the author's Slack name in an IRC message.

Oops I just saw there is already #214. Consider this a +1.


[incubator/istio] istio install failed

Is this a request for help?:

Is this a BUG REPORT or FEATURE REQUEST? (choose one):

Version of Helm and Kubernetes:
Which chart:
istio
What happened:
Lins-MacBook-Pro:Downloads linsun$ helm repo add incubator http://storage.googleapis.com/kubernetes-charts-incubator
"incubator" has been added to your repositories
Lins-MacBook-Pro:Downloads linsun$ helm install --name istio incubator/istio --namespace istio-system
Error: file "incubator/istio" not found

What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know:

Related with https://github.com/istio/istio.github.io/pull/531#issuecomment-335281205
/cc @linsun @lachie83

this is the problem https://github.com/kubernetes/charts/blob/master/incubator/istio/Chart.yaml#L6 why istio chart can't be installed from helm repos

Why version: 0.2.7-chart2 caused the install failed from incubator repo? Can you please elaborate? Any comments for how to make this work? @rimusz

helm does not like version: 0.2.7-chart2 it breaks it's semver logic.
as soon you change to version: 0.2.7, istio install from remote helm repo works again

Thanks @rimusz , this seems to be a limitation of semver https://github.com/Masterminds/semver/blob/master/constraints_test.go#L296 , if use version: 0.2.7, then we will not able to track all of the different versions, what do you think @ldemailly @lachie83

@gyliu513 chart version does not have to be the same as app's :)

The chart version does conform to semver v2 but it falls under pre-release so you have to use the --devel flag upon install. We are working on ways to expose the appVersion as it may be more relevant to some users. See https://github.com/kubernetes/helm/issues/3009 and it's related issue to expose appVersion in search

Could we change it to version: 2.0.7 so that the istio helm chart can work given istio 0.2.7 is just announced today?

Would like to get something definitive from @ldemailly given that I've been working with him on this.
https://github.com/kubernetes/helm/issues/3009#issuecomment-334608551

Also some additional context that I've been working with the Helm upstream developers on https://github.com/kubernetes/helm/issues/3010 cc @ldemailly

apologies for the lag: the search isn't there yet, is it
I assume you are asking if we can decouple the 2 versions, I prefer we keep them in lockstep if possible but if not practical maybe having 0.2.7-pre1 ... until it seems to be "working" enough to promote it to 0.2.7 ?
if we decouple the versions, what would the helm one look like ? (1.0.x ?)

I'd prefer to keep the istio helm chart version and istio version in sync as that reduces a lot of confusion.
Since Istio 0.2.8 is coming out this week and contains critical fixes, is it possible to allow users to always install the latest Istio in 0.2.x and optionally user can specify a particular version of 0.2, like 0.2.7 or 0.2.8 or 0.2.9 to install?

I don't think keeping the versions in sync is the right approach. The chart version indicates a set of values and templated Kubernetes resource definitions which is not actually intrinsically linked to the application version. I don't want to lock a released chart in so that it cannot be modified within the same semver release as things change all the time and functionality may be added or removed at any point.
I do however think that we could do a better job bubbling up the application version as a searchable and installable install time flag. Out of the 80+ upstream charts no one has flagged this a serious issue for users. Services like monocular expose the appVersion in a nicer way - https://kubeapps.com/charts?q=istio
I think given the current ask it's best simply make the chart versions so different that they cannot possibly be confused. Possibly 10.0.0 to start. Hopefully by that time we have a reasonable approach to the exposing the app version.

The next release of helm will allow you to search via app version. Does this help?
https://github.com/kubernetes/helm/pull/3059

Current workaround:
helm install --name istio incubator/istio --namespace istio-system --devel --version 0.2.7-chart2
helm upgrade istio incubator/istio --reuse-values --set istio.install=true --devel --version 0.2.7-chart2


Update stop cluster recommendation

@guregini : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@guregini : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

@guregini: I'm sorry - only the author of this article, @orspod, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

Approved by ADX docs team
#sign-off

@YaelSchuster: I'm sorry - only the author of this article, @orspod, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

#sign-off


Update install.sh

Updated to install latest version of gunbot

Coverage remained the same at 87.437% when pulling 40e74c1e6522742cb01fc2d5a76e7e9627ab8e6e on invious:patch-1 into 51d1ce4b447385197b3e7026f3fced632238e8b4 on BeerK0in:master.


Issue in building mfem-hertz-dev on Windows

Dear all,
I am trying to build mfem-hertz-dev by Windows 7 64bit + VS2013 + Intel MPI <IP_ADDRESS> + HYPRE 2.11.2. I selected
MFEM_ENABLE_EXAMPLES
MFEM_ENABLE_MINIAPPS
MFEM_USE_MEMALLOC
MFEM_USE_MPI
after generated projects by CMake, the following errors displayed when I build x64 projects by VS2013:
fatal error C1189: #error :  "SEEK_SET is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h"
Could anyone help me to take a look at it?
Thanks,
Tang Laoya

The issue seems to be with the MPI C++ bindings which are not used by MFEM. You should be able to disable them by defining a macro in your code. For example, for OpenMPI/MPICH you can #denife OMPI_SKIP_MPICXX/MPICH_SKIP_MPICXX. I'm not sure what the macro for Intel MPI is.

Thanks. I will try it latter.
Another question: after I added HYPRE 2.11.2 into the project, I noticed that the subfolders such as 'parcsr_ls', 'parcsr_mv' are not included in the path so that the header files of HYPRE can't be found. Is this a bug of Cmakelists.txt or FindHYPRE.cmake?
Thanks,
Tang Laoya

When hypre is built, all necessary headers are copied in one directory, e.g. hypre/src/hypre/include. Directories like parcsr_mv and parcsr_ls (subdirectories of hypre/src) are not needed.

Thanks. But I didn't find there headers are copied in this folder after I built HYPRE (both 2.11.2 and 2.15.1) by CMake + Visual Studio 2013 in Windows 7 64bit machine. Should I copy these files manually?
Thanks,
Tang Laoya

I've never build hypre with cmake so I don't know how the cmake build works. Maybe you need to build and install hypre to some directory?

I added '/DMPI_CXX_SKIP_MPICXX' option in Cmake but the errors are still here.
Thanks,
Tang Laoya

You can ask the hypre team directly about their CMake installation here: https://github.com/hypre-space/hypre

According to FindMPI.cmake you MPICH_SKIP_MPICXX should work with Intel MPI.
It looks also that you can specify MPI_CXX_SKIP_MPICXX directly in CMake.

At last it works after I added 'MPICH_IGNORE_CXX_SEEK' and 'MPICH_SKIP_MPICXX':
MPI -> hypre; PETSc (optional)
if (MFEM_USE_MPI)
if(MSVC)
add_definitions(-DMPICH_IGNORE_CXX_SEEK)
add_definitions(-DMPICH_SKIP_MPICXX)
endif(MSVC)
find_package(MPI REQUIRED)
Thanks,
Tang Laoya

However, when I built latest version mfem-master from github after the same modification to CMakelists.txt, hundreds of errors displayed, for example:
Error	440	error C2039: 'int64_t' : is not a member of 'std'	X:\mfem\mfem-master\mesh\pmesh.cpp	2501	1	mfem
Error	268	error C2039: 'RefCoord' : is not a member of 'mfem::NCMesh'	x:\mfem\mfem-master\mesh\ncmesh_tables.hpp	91	1	mfem
Error	13	error C2061: syntax error : identifier 'RefCoord'	x:\mfem\mfem-master\mesh\ncmesh.hpp	679	1	mfem_miniapps_common
Could you please help me to take a look at it?
Thanks,
Tang Laoya

This is a standard type in C++11.
Can you enable C++11 support in your compiler, or if that's not possible, replace it with int in pmesh.cpp and ncmesh.hpp?

Thanks for your kindly reply. Could you please tell me how to enable C++11 support for VS2013 in Cmakelists.txt, or other configure files?
Thanks,
Tang Laoya

I noticed that you have enabled C++11 in cmake:
Require C++11 and disable compiler-specific extensions
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
So it could be the problem that VS2013 doesn't totally support C++11?
On the other hand, after I replaced the 'int64_t' with 'int', the errors except 'int64_t' are still displayed.
Thanks,
Tang Laoya

As of version 4.0, mfem requires C++11. Can you attach the log with all the compile errors?

Dear @tzanio ,
Thank you very much for your kindly reply. The log file is attached, please check it.
Thanks,
Tang Laoya
mfem_build_err_VS2013.log

Hi @TangLaoya,
I am afraid that the C++11 support in VS13 is incomplete and these errors are simply C++11 features we use that are not supported.
You can try reverting to an older MFEM release (3.4) or remove the unsupported parts such as the move constructor in general\mem_manager.hpp, line 139; the int64_t in mesh/ncmesh.hpp, etc. Note however, that in we have officially switched to the new standard and it is likely that other things will break for you in the future if you take the latter route.
Hope this helps,
Tzanio

Thanks. I can use the version mem-hertz-dev.


problem on loop in c programme

#include <stdio.h>
int main(){
int n;
printf("Enter the value of n\n");
scanf("%d", &n);
for(int i=n; i>0; i--){
    printf("%d\n", i);
}
return 0;

}
When i run the above code , The loop becomes infinite. I can''t  get my desired result.

Hi @ap1809 ! This place is not a code help site. Please check out https://stackoverflow.com/ and ask your question there !


Implement ISM status API

 Issue by dbbaughe
Wednesday Jul 24, 2019 at 16:20 GMT
Originally opened as https://github.com/opendistro-for-elasticsearch/index-management/issues/49

Collect execution metrics - ties in stats API for ISM, and execution metrics specific to Job Scheduler, ISM stats API

https://github.com/opensearch-project/job-scheduler/issues/93


Vega-lite viewer cuts off right hand edge of chart

When viewing a vega-lite chart, it looks like the vega-lite view extends past the right hand edge of the visible component.  The red highlighting around the selected portal item is missing on the right hand edge of the vega-lite view.  This leads to some data points not getting displayed.
This is with 0.19.2 running from clojure on a mac.

Hi @hugoduncan, do you have some sample data to reproduce? Thanks for the bug report.

Apologies for the omission.
{:$schema "https://vega.github.io/schema/vega-lite/v5.json"
             :data []
             :vconcat [{:data {:values [{:x 0 :y 1} {:x 1 :y 2} {:x 3 :y 1}]}
                        :encoding
                        {:x {:field "x" :type "quantitative"   }
                         :y {:field "y" :type "quantitative"}}
                        :mark "point"}]}

@hugoduncan, sorry it took so long but this should be fixed in the next release.


UITabbarItem hidden issue

When I pushed from a VC to anothor VC,I want to hide the tabbar. So what I do first is set the "Hide Bottom Bar on Push" in the Storyboard  ,the result is the tabbar is hidden indeed but the UITabbarItems are still.I also use UIVIew.animateWIthDurarion() to hide the tabbar but  also failed.What can I do to hide the tabbar and the tabbaritem?

I'm having the same problem. I can hide the bar itself, but the icons stay. I've even tried to individually hide and disable the icons, but I was unsuccessful. I really want to use it, but I can't until this is solved.

@megatyx  Lastly ,I give up and use the original tabbar. Sigh~

Create a new class
import UIKit
extension RAMAnimatedTabBarController:UINavigationControllerDelegate{
func hideTabBar(flag:Bool) {
let atc = self
let icons  = atc.iconsView
    if (flag == true ) {

        for icon in icons {
            icon.icon.superview?.hidden = true
        }
        atc.tabBar.hidden = true

    } else {
        atc.tabBar.hidden = false
        for icon in icons {
            if let sup = icon.icon.superview{
                sup.hidden = false
                sup.superview?.bringSubviewToFront(sup)
            }
        }
    }
}

func navigationController(navigationController: UINavigationController, didShowViewController viewController: UIViewController, animated: Bool){
    hideTabBar(viewController.hidesBottomBarWhenPushed)
}

}
in RAMAnimatedTabBarController.swift
viewDidLoad
let conls = (self.viewControllers as? [UIViewController])?.filter({$0 is UINavigationController}) ?? []
for ctl in conls{
(ctl as! UINavigationController).delegate = self
}
Because I was so mixed before the OC will also cover the situation tabbar icon So you must remember to call self.hidesBottomBarWhenPushed = YES you want to hide tabbar of oc interface ;
Remember not generate Bridging-Header directly call self.hidesBottomBarWhenPushed = YES;

func navigationController(navigationController: UINavigationController, willShowViewController viewController: UIViewController, animated: Bool) {
    hideTabBar(viewController.hidesBottomBarWhenPushed)
}

self.tabBarController.tabBar.hidden = YES;
self.hidesBottomBarWhenPushed = YES;

Join these can be synchronized to hide tabbar not have to hide when we jump

Thanks @LiuHengChina , very well done :)

Hello guys, I'm having similar problems hiding TabBar. This solution works for me to, but I'm just wondering is it possible to add some animation when BottomBarr hides?
Or is it possible to

I also tried to hide TabBar on button click (calling setTabBarVisible(!tabBarIsVisible(), animated: true)) with these functions, but that doesn't work like with regular UITabBarController.
func setTabBarVisible(visible: Bool, animated: Bool){
    // bail if the current state matches the desired state
    if (tabBarIsVisible() == visible) { return }

    // get a frame calculation ready
    let frame = self.tabBarController?.tabBar.frame
    let height = frame?.size.height
    let offsetY = (visible ? -height! : height)

    // zero duration means no animation
    let duration:NSTimeInterval = (animated ? 0.3 : 0.0)

    //  animate the tabBar
    if frame != nil {
        UIView.animateWithDuration(duration) {
            self.parentViewController?.tabBarController?.tabBar.frame = CGRectOffset(frame!, 0, offsetY!)
            return
        }
    }
}

func tabBarIsVisible() ->Bool {
    return self.parentViewController?.tabBarController?.tabBar.frame.origin.y < CGRectGetMaxY(self.view.frame)
}

Can we disable gesture on the tab item to so that we would have a complete full screen view with no impact of TabBarController

The proposed solution also doesn't work with interactionTransitions on UINavigationController's swipe back feature. It will instantly pop them up above the from controller

@ryancstack  so i just give it up.but honestly it's a really dope animation:P

@KittenYang you went back to UITabBarController?

@ryancstack  yep.

I then use model presentation instead :|

i use tabbar' s subviews to get the show Image and label, not to create the constains view
if you @LiuHengChina ' methods, when you push a view controller , the constains view will disappear in an instant, we need a duration animation.
the code is:
func createCustomIcons(containers: [String: UIView]) {
        guard (tabBar.items != nil) else {
            fatalError("tabBar.items was nil")
        }

        for item in tabBar.items! as! [TmAnimationTabBarItem] {
            assert(item.image != nil, "add image icon in uitabbaritem")
            var index = 0
            for tabBarButton in tabBar.subviews {
                if let icon = tabBarButton.subviews.first as? UIImageView, let label = tabBarButton.subviews.last as? UILabel {
                    iconsView.append((icon: icon, textLabel: label))
                }
                let tapGesture = UITapGestureRecognizer(target: self, action: "tapHandler:")
                tabBarButton.addGestureRecognizer(tapGesture)
                tabBarButton.tag = index
                index++
            }
        }
    }

and in itemAnimations, use
textLabel.tintColor = textSelectedColor
icon.superview?.superview?.tintColor = iconSelectedColor

not
textLabel.textColor = defaultTextColor
if let iconImage = icon.image {
            let renderImage = iconImage.imageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate)
            icon.image = renderImage
            icon.tintColor = defaultTextColor
}
``
it' s ok to work

added method  func animationTabBarHidden(isHidden:Bool)
I hope this helps

How i can disable tabbar item?

@mhtranbn  animationTabBarHidden(true)

Thanks @satyamub When the first launch tabbar. I want change color of tabbar item. not hiddent.
https://lh3.googleusercontent.com/stTiAxzpyFVyJgyqMAzh59zTRUJIiUl8UsAHpNOxlTfVVHvj-lSTq1Uy1y2ZbhpwPVF1CIfr5c2ZrwaeNtrQ1JmSK1Rwo55K_UvPr2InfHvgb3o9sxKdhxaKWAFxPXM477w5AxtOBs-Gl7ZWeX2S2feDkwK1XESeDwkoUzfWSZtf0HVh60CinDodJnH6HglHkmieYH3NU0tZIxtECU-tS-0TQS8RLkhn-uUCFONw-E2GXV9j4415XB4eKTtCtr9jVMGeKFnMZzD44jjg4VcwDD5b0L7AAN9T6hTVHzCWISPB9cYbaiVQ7iuBSZtJN0PbEBILo0G-QKDzs6KX-2QxIAUX7wxNWjsZjKUC-M-6EdvxrMjppLZmtlgbbdnPXIHgEg9kEuhIxBCkxW_mK051CNR5mbDEJIYC4JbG7Nub0oW2xtfhkMiWxl6wW_aA2iKfX9Y4jqfkGnet0O2qn2W6OF3e_kRBnJXiSybh-V2FfKRbSAzQr8YhUuM83SvkWWBLoMcoxKa-x5bEmFaAUP5LcemEBpwo9NRFhOFGkR-CmDczBAklvOv6j4CC7i9H7PyM_31evKMaQhZLqluv76ScZhlojZ2dHSUE=w151-h61-no

when executing animationTabBarHidden()true, it fails to add the tabbar.items to guard let item. Displays the error "add tabbar items"

When i change the tab bar selected index (click on button on uiviewcontroller screen not in tabbar)  then page change but select icon not change in tab bar
self.tabbarcontroller!.selectedIndex = 2

Nobody should use this library. Hiding the tab bar is basic functionality of the standard tab bar. This is just poor design. I am going to remove this library from my project. Just not worth it at all.

@hammadzz  me too, spent much time for such poor library

Maybe it is not really a good code design, but I solved the hide problem like this:
      let animatedTabBar = tabBarController as? RAMAnimatedTabBarController         animatedTabBar?.animationTabBarHidden(true)