Limitation to 1 MetalLB system per layer 2 network?

Not really looking for troubleshooting instructions here, but I wanted to talk through some behavior that I'm seeing on my home network. I have two k3s clusters set up. Both of them are connected to my home network over wifi. When I install MetalLB on one, everything seems to work fine for some time. But as soon as I install MetalLB on the other, everything seems to break down. Each MetalLB system uses a unique range of IPs so they don't overlap and each node is assigned a static IP.
In reading the Layer 2 documentation, I didn't see any mention about this kind of limitation. I'm curious is this a known limitation or more likely something odd with my setup?

There's no such limitation. As long as the clusters are using different sets of IPs for services, they should not be interfering with each other. So, there's likely something amiss in your setup (off the top of my head: check that the IP ranges are indeed not overlapping, and also not overlapping with DHCP ranges; and check for some kind of spoofing/port security on your switches, if you have switches with that functionality).

Interesting. I bet thats it based on what I'm reading. Thanks for the help!


[Bug]: Some files in assets folder not getting uploaded

Please confirm that you have:

[X] Searched existing issues to see if your issue is a duplicate. (If you’ve found a duplicate issue, feel free to add additional information in a comment on it.)
[X] Reproduced the issue in the latest CLI version.

In which of these areas are you experiencing a problem?
Theme
Expected behavior
All files in assets folder should get pushed to dev theme
Actual behavior
It seems like it ignores assets that contains "node_modules" in the file name.
In the verbose output you'll be able to see that it ignores some files in the assets folder with the name "node_modules". I'm not ignoring any files, it seems like it does this out of the box.
Verbose output
2023-07-12T17:09:52.698Z:
Running system process:
  · Command: /opt/homebrew/opt/ruby/bin/ruby -v
  · Working directory: /Users/magnusfischer/Documents/GitHub/horizon

2023-07-12T17:09:52.706Z:
Running system process:
  · Command: /opt/homebrew/opt/ruby/bin/bundle -v
  · Working directory: /Users/magnusfischer/Documents/GitHub/horizon

2023-07-12T17:09:52.786Z: Reading the content of file at /opt/homebrew/Cellar/shopify-cli/3.47.3/libexec/lib/node_modules/<EMAIL_ADDRESS>2023-07-12T17:09:52.787Z:
Running system process:
  · Command: /opt/homebrew/opt/ruby/bin/bundle config set --local path /Users/magnusfischer/Library/Caches/shopify-gems-nodejs
  · Working directory: /opt/homebrew/Cellar/shopify-cli/3.47.3/libexec/lib/node_modules/@shopify/theme/node_modules/@shopify/cli-kit/assets/cli-ruby

2023-07-12T17:09:52.863Z:
Running system process:
  · Command: /opt/homebrew/opt/ruby/bin/bundle config set --local without development:test
  · Working directory: /opt/homebrew/Cellar/shopify-cli/3.47.3/libexec/lib/node_modules/@shopify/theme/node_modules/@shopify/cli-kit/assets/cli-ruby

2023-07-12T17:09:52.940Z:
Running system process:
  · Command: /opt/homebrew/opt/ruby/bin/bundle install
  · Working directory: /opt/homebrew/Cellar/shopify-cli/3.47.3/libexec/lib/node_modules/@shopify/theme/node_modules/@shopify/cli-kit/assets/cli-ruby

2023-07-12T17:09:53.087Z:
Running system process:
  · Command: /opt/homebrew/opt/ruby/bin/bundle exec /opt/homebrew/opt/ruby/bin/ruby /opt/homebrew/Cellar/shopify-cli/3.47.3/libexec/lib/node_modules/@shopify/theme/node_modules/@shopify/cli-kit/assets/cli-ruby/bin/shopify theme serve /Users/magnusfischer/Documents/GitHub/horizon/src --poll --live-reload hot-reload --theme<PHONE_NUMBER>48 --overwrite-json undefined
  · Working directory: /Users/magnusfischer/Documents/GitHub/horizon

DEBUG GET https://theme-kit-access.shopifyapps.com/cli/admin/api/unstable/themes.json with request_id: 198a5c3c-35d4-4ce2-85c0-3712e7a3be02
* Syncing theme #152469438748 on fischers-playground.myshopify.com
DEBUG GET https://theme-kit-access.shopifyapps.com/cli/admin/api/unstable/themes/152469438748/assets.json with request_id: b0a5a1ed-e220-452e-95fb-d59ba2d117aa
DEBUG ignore assets/module.node_modules_swiper_modules_index_mjs.js
DEBUG update sections/footer-group.json
DEBUG update sections/header-group.json
DEBUG PUT https://theme-kit-access.shopifyapps.com/cli/admin/api/unstable/themes/152469438748/assets.json with request_id: fba61edf-e155-4eb2-8b83-e3e8841acaff
DEBUG update templates/collection.json
DEBUG PUT https://theme-kit-access.shopifyapps.com/cli/admin/api/unstable/themes/152469438748/assets.json with request_id: 97799699-5f1e-40a0-a55e-a7e542664e38
DEBUG update templates/index.json
DEBUG PUT https://theme-kit-access.shopifyapps.com/cli/admin/api/unstable/themes/152469438748/assets.json with request_id: db6fa9a5-423e-4e89-9fc2-3b34e398f2a9
DEBUG update templates/product.json
DEBUG PUT https://theme-kit-access.shopifyapps.com/cli/admin/api/unstable/themes/152469438748/assets.json with request_id: 40671824-8d09-4bda-a97f-432c15544815
DEBUG update config/settings_data.json
DEBUG PUT https://theme-kit-access.shopifyapps.com/cli/admin/api/unstable/themes/152469438748/assets.json with request_id: 7facf636-634a-4603-b9ac-600f66ab9d83
                                                                                83% DEBUG PUT https://theme-kit-access.shopifyapps.com/cli/admin/api/unstable/themes/152469438748/assets.json with request_id: 81e96ba2-149b-4013-8d9d-bb3c9b0ae733
DEBUG ignore assets/module.node_modules_core-js_modules_es_array_slice_js-node_modules_core-js_modules_es_function_name_-6e13ef.js
DEBUG ignore assets/module.node_modules_core-js_modules_web_url-search-params_js.js
DEBUG ignore assets/module.node_modules_swiper_shared_utils_mjs.js
DEBUG ignore assets/module.node_modules_swiper_swiper_css-node_modules_swiper_modules_index_mjs.js
                                                                                100%
[2023-07-12 19:09:56] INFO  WEBrick 1.7.0
[2023-07-12 19:09:56] INFO  ruby 3.2.2 (2023-03-30) [arm64-darwin22]
[2023-07-12 19:09:56] INFO  WEBrick::HTTPServer#start: pid=76732 port=9292

Reproduction steps

shopify theme dev

Operating System
Mac OS latest
Shopify CLI version (check your project's package.json if you're not sure)
3.47.3
Shell
zsh
Node version (run node -v if you're not sure)
v20.4.0
What language and version are you using in your application?
No response

I've found that it ignores all assets with an underscore in the name.

Hi @MagnusFischer, thanks for raising up this issue. I will tag @Shopify/theme-code-tools  to receive further assistance


ponyc: 0.49.0 -> 0.50.0

Description of changes
Introduced in 0.49.1:

Ban Unstable Variables

Introduced in 0.50.0:

Fix crash with exhaustive match on Generics.
Fix parameter names not being checked in all circumstances.
Fix compiler crash to HeapToStack compiler pass.
Strengthen the ordering for some atomic operations.
Allow override of return types for FFI functions.
Don't allow FFI calls in default methods or behaviours.

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[X] Fits CONTRIBUTING.md.

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

2 packages built:

pony-corral
ponyc

Result of nixpkgs-review pr 171085 run on x86_64-darwin 1

2 packages built:

pony-corral
ponyc


Issue with calling Functions with multiple arguments

I have a custom function to fetch the data between two dates in a dataframe. It raises the following error
INFO     [functioncall.py:160] Could not execute function: 'str' object has no attribute 'handlers'
also I had error stating the maximum arguments I can have is only 2. Is there is workaround to have more than 2 arguments.
The custom function is as follows:

This is a problem with using langchain tool object. I basically got the StructuredTool object (which is created for every function) based on the function name that the LLM returned, extracted the function object from it and ran it manually as func(*args)


Access path

Can I modify the access path? Not in program root

This is not possible at the moment.

I have submitted my PR #541

I have submitted my PR #541


Merge sync af4c080

Summary
Sync to latest upstream #af4c080

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 6 committers have signed the CLA.:white_check_mark: dkstyle:x: orvisevans:x: uikoo9:x: dangayle:x: vabushkevich:x: snitin315You have signed the CLA already but the status is still pending? Let us recheck it.


Xcode 8, swift 3- redefinition of module 'asl'

Hi, I have been using AZSClient for a while, but got into a shitstorm of errors when using xcode 8 and swift 3. And once again it seems that asl is at the centre of the issue. Reproduce by simply downloading xcode 8 gm and start a new project, then import AZSClient through cocoapods.

I am having the same issue. Any Update?

I tried to use legacy code with xcode 8, but still had the same problem. It seems I won't be able to upgrade to xcode 8 until this is resolved. I did consider converting parts of the library to Swift, but there is a lot of dependencies.

are you using cocoapods or building framework manually? I am using cocoapods, am going to try to build framework manually.

I'm using cocoapods. For a while I built it manually, but this had it's own drawback with signing, bitcode and the need to rebuild with every new version of xcode.

Is there any pull request to fix it? I need Swift 3 too.

Have not had time to test this, but maybe this article could help?
http://www.aerisweather.com/blog/playing-nicely-together-swift-dependencies-and-cocoapods/
If anyone tries this, please let me know how that worked out.

So it looks like the problem is that Xcode 8 / Swift 3 / iOS 10+ now includes the asl library, so all the extra stuff we're doing in the CocoaPod to include asl.h is no longer necessary (like it was in prior versions.)
I'm looking into how to have the configuration behave differently depending on XCode version, but here's a temporary workaround.  (Take a backup of your project first, just in case - I've briefly tested this, but no guarantees.)  Go to the build settings for your target.  Filter for the "Import Paths" setting.  You should see a path like $(SRCROOT)/Pods/AZSClient/asl/* (possibly other paths as well, it depends on what else you're using in your project.)  Just delete the AZSClient reference, and that should fix the redefinition problem.
I'll update this thread when we ship a cocoapod that behaves properly on the latest versions of XCode/Swift/iOS

I have the same issue with xcode 7.3

just a dirty fix, commenting this file fixed the issue:
/*  module asl [system] [extern_c] {     header "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/include/asl.h"     export * }  */

Same issue. togonow Suggestion  helped.

Same issue here. @togonow suggestion helped me as well.

Still no update on this?

@waterskier2007 I apologize for the lack of update these last months. I assure you that we are committed to solve this problem and make the library better in general. I will update you once this problem is fixed.

@togonow You suggestion helped, comment those lines for iPhone and iPhone simulator and it works.

This problem should now be solved with the latest version 0.2.3. Please let us know if you still encounter any problem.
I apologize for the late fix, I assure you that we are committed to make this library better and will update it significantly more frequently from now on.

I tried to add this in my project but i have the same error "Redefinition of module ´asl´"

@HideCode7 make sure you run pod update instead of pod install to update your local repo

@waterskier2007 , i tried "pod update" but i have the same error :s

@HideCode7 what does the line look like in your pod file? Are you specifying a specific version or is it a floating reference?

@waterskier2007 I resolved my problem, i have the Framework Search paths incorrect. Thanks for the help

@HideCode7 cool :)

@HideCode7  Glad you solved it!
@waterskier2007 Thanks for helping out! 👍

post_install do |installer|
installer.pods_project.targets.each do |target|
if target.name == 'AZSClient'
file_iphoneos = 'Pods/AZSClient/asl/iphoneos/module.modulemap'
file_iphonesimulator = 'Pods/AZSClient/asl/iphonesimulator/module.modulemap'
file_macosx = 'Pods/AZSClient/asl/macosx/module.modulemap'
        list_files = [file_iphoneos, file_iphonesimulator, file_macosx]
        list_files.each do |file_name|
            puts "Reading #{file_name}"
            text = File.read(file_name)
            new_contents = ""
            File.open(file_name, "w") {|file| file.puts new_contents }
        end

        puts "Changed and writing #{file_name} because of incompatibility with Swift 3 and Xcode SDK"
    end
end

end

@gerlandiolucena Thanks for sharing your solution!
This problem should now be fixed in the latest version 0.2.4. You could do a "pod update" to get it. 😃


updateAuthHeight + lazyload issue

Check that this is really a bug

[X] I confirm

Reproduction link
https://jsfiddle.net/6yrhuze0/5/
Bug description
When using lazyload + auto height the height of first page load is wrong.
I try to use solution as suggested here https://github.com/nolimits4web/swiper/issues/2732#issuecomment-854542091 but it's working only by setting a setTimeout with more than 300ms:
        on: {
            lazyImageReady: function (swiper) {
              console.log('lazyimage is ready 1')
              swiper.updateAutoHeight()
              setTimeout(function () {
                console.log('lazyimage is ready 2')
                swiper.updateAutoHeight()
              }, 0)
            }
          },

Expected Behavior
The height is correctly set on first page load.
Actual Behavior
The height is set like there is not image.
Swiper version
8
Platform/Target and Browser Versions
Firefox iOS
Validations

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Swiper issue and not a framework-specific issue

Would you like to open a PR for this bug?

[ ] I'm willing to open a PR

This seem to work:
       on: {

            lazyImageReady: function (swiper, slide, img) {
              if (img.complete) {
                  swiper.update();
              } else {
                  img.addEventListener('load', function () {
                      swiper.update();
                  });
              }
            }

      }

Demo: https://jsfiddle.net/6yrhuze0/6/
Not sure if this is the best solution.

I have the same issue with Angular and safari only. Chrome is not the problem, I think it is safari issue?

Issue is closed because of outdated/irrelevant/not actual/needed more information/inactivity.
If this issue is still actual and reproducible for latest version of Swiper, please create new issue and fill the issue template correctly:

Clearly describe the issue including steps to reproduce when it is a bug.
Make sure you fill in the earliest version that you know has the issue.
Provide live link or JSFiddle/Codepen or website with issue


Added popup notice about not supported OS X version (mac), closes #2502

What it does?
Detects version of Mac OS X and when the version is older than 10.11 shows the user an alert on app startup and when updater wants to check for a new version. Also when the date is later than 1st of January 2019, it closes the app immediately after the alert is closed.
How to test?
You probably need to change the version number that is used to detect unsupportedOS and then change the deadline date in UnsupportedNotice class
When you start the app or open up About window the app should show the popup with the info.
References
Closes #2502

Ultimately, the change look good to me. Feel free to merge it 👍


odd behavior with Modifiers to "Skill ranks"

If you have item(s) with a modifiers that effects "skill ranks", the skill rank on the front sheet will display the total being added from the modifiers. This however also renders the skill rank field un-editable, as it will always switch the displayed value back to the modifier's total, and the value entered is never updated into the skill formula.
Even after removing the items, the skill rank field will continue to misbehave. displaying unintended values, and not updating the formula from the field.

Misinterpretation of some background automation


Learn.md

Learn repos should have a LEARN.md file to teach student how to build your project step by step. You can explain how to build your project with text, code snippets, images, or even short (5 minute) long video lessons. As the maintainer of a Learn repo, the LEARN.md file requires you to think critically about how to explain the building of your project and how to also make it engaging. We don't expect you to be an expert teacher, but we would like you to reflect on how difficult it was to get to your level of knowledge, and then provide friendly guidance to help other students to learn.
Reference: https://github.com/Recode-Hive/Stackoverflow-Analysis/blob/main/Learn.md

👋 Hello! I'd be happy to help with this issue. Could you please assign it to me? Additionally, could you please label it for the appropriate level? Thank you! 🚀


Utility functions for easy mapping between prefixed names and IRIs in SPARQL queries

It would be useful to be able to quickly convert from a prefixed name to a full IRI, and the other way around, when working with SPARQL queries in code.
Example uses:
Namespace ex = new SimpleNamespace("ex", "http://example.org");

IRI fullIRI = Values.iri("ex:foo", ex); // fullIRI is http://example.org/foo
String prefixedName = Values.prefixedName(fullIRI, ex); // prefixedName is "ex:foo"

Working with a collection of namespaces (e.g. from a Model or a RepositoryConnection):
IRI fullIRI = Values.iri("ex:foo", connection.getNamespaces()); // fullIRI is http://example.org/foo

A side utility that would also be useful is a quick way to convert that same collection of namespaces to a SPARQL query prefix declaration header, so that we could for example do something like this:
try(var conn = rep.getConnection) {
   String query = SPARQLQueries.prefixes(conn.getNamespaces)
                         + "SELECT ?s ?o "
                         + "WHERE {  ?s ex:property ?o . }");
}

Up for discussion is exact naming and location of these functions.
One possibility is  to abstract away from the specifics of SPARQL and instead offer something based on the CURIE spec (https://www.w3.org/TR/curie/). The problem with that is that SPARQL is slightly more restrictive, so not every legal CURIE is also a legal SPARQL prefixed name.
See also user group discussion at https://groups.google.com/d/msgid/rdf4j-users/a8a97b0a-5aae-48ed-a356-15f76ef0d41bn%40googlegroups.com .

@jeenbroekstra did you ever implement: String prefixedName = Values.prefixedName(fullIRI, ex); // prefixedName is "ex:foo" ?

Huh. No don't think so, completely overlooked that.
I think its practical use would be limited but if you want we can add a follow-up issue for it.


[BUG] Invoice created show wrong expiry time on lnbits wallet and can be clear after expire

Describe the bug
When I create an invoice the expiry Time on  lnbits wallet  is showing  "in  a month" but when you decode it show the right value that was define on setting  the setting  (3600s), it  generate that many invoice that was delete from the node but still pending on lnbits database
To Reproduce
Steps to reproduce the behavior:

Go to 'wallet'
Click on ' create invoice'
click to check the information of the invoice
See expiry
decode the invoice in a phone or by cli

lightning-cli decode lnbc1010n1pjn84yesp5wk65fp4ag8sgunhthltpkg7rdlcunnckguz4z2nrzhh4upj2d84qpp5vs5ttck3qd7724knh6pelgkl03lp9esdkhwyq4pkx342h676m82sdp2wdsk6urvv5s8gmeqwfjhqmmjwss8g6r9yp5hxum4v5cqpjrzjqvz5e99c5m6gkg4wxkzr6cywa7tk5pqzt3d7t6ph55aqfj8vk2mrvrrr8yqq92qqqyqqqqqqqqqqqqqq9q9qx3qysgqscgkg5rws23r9v2w4md52dffrhyv4kcjwmze2thdf4k3rgxf0ez4s9gk98tda6f7h7ud7x5hut9jja3p0xyjuuy5qhcsp20cl2zkz8gp96r6gs
Expected behavior
the expiry time on lnbits wallet  must be according with information of the invoice.
Screenshots

Desktop (please complete the following information):

LNbits version: 0.11.1
Database sqlite
Implementation CoreLighthing v23.08.1

adding more information, today I got in start9 the possibility to upgrade my lnbits to version 0.11.1 when I did it, the bug happen, for that I did a downgrade to version 0.10.10 and now the expiry date for an invoice is calculated property
it's very clear that have a bug on version 0.11.1
after upgrade

after downgrade

I thing maybe the  issue could be related to
services.py
def get_bolt11_expiry(invoice: Bolt11) -> datetime.datetime:     if invoice.expiry:         return datetime.datetime.fromtimestamp(invoice.date + invoice.expiry)     else:         # assume maximum bolt11 expiry of 31 days to be on the safe side         return datetime.datetime.now() + datetime.timedelta(days=31)
that is include in version 0.11.1 and not is on version 0.10.10

I suspect this issue might be related to https://github.com/lnbits/bolt11/issues/40 .
Since on my tests, invoice.expiry is always None here:
def get_bolt11_expiry(invoice: Bolt11) -> datetime.datetime:
    if invoice.expiry:  # <------ HERE --------
        return datetime.datetime.fromtimestamp(invoice.date + invoice.expiry)
    else:
        # assume maximum bolt11 expiry of 31 days to be on the safe side
        return datetime.datetime.now() + datetime.timedelta(days=31)

The invoice (Bolt11) object is generated by that library by calling bolt11_decode.


More Action Windows Prompts

Adding a few more action prompt windows during Plot, Draw, Standing and Taxation action windows might help smooth game play.

Might help to know what you want to do with those windows, as to whether I think we need them, or just to implement the cards causing you trouble

Some random things popping into my head you would/could do in standing or taxation phase:
Standing:

Stand a character with Magister Illyrio who got locked by King Stannis.

Taxation:

Return Arry to your hand to draw a card (gets around reserve).
Stand a character with Magister Illyrio when you're in a Core Stannis lock (useful since Illyrio is limited once per phase so you can use him more)
Trigger the plot Ranger's Cache.

I believe these might be two separate issues. Automation is great, it makes the game very quickly playable, and getting prompted by all kinds of reactions and interrupts makes it useful as a learning tool as well.
Separate from automation, and IMO more important than the mentioned windows standing/taxation etc. phases, is my desire to have the current "action/reaction" window after declaring defenders split into ideally three separate windows: one action window after declaring attackers, one after declaring defenders, and a reaction window to winning/losing the challenge (the D in DUCK). There are lots of board states that call for being able to take an action before defenders are declared, and separating the second action window from the reaction window is especially important. I can describe examples if needed.

I've added a new window after the challenge phase begins as I came across several regularly occuring issues that were non trivial to resolve manually
If you can give me examples of why you think one between attackers declared and defenders is declared is necessary, I'll rethink it

First off, I don't think this is about automation vs manual control. The automation works great so far. It is about making sure (implemented/automated) actions can be triggered at the right moments.
Examples showing importance of action window before declaring defenders:

A lot of times when a Targaryen player wants to Dracarys! an incoming attacker, he will want to use this action window. Since if the Dracarys! is cancelled, he still has the option the defend.

Greyjoy vs Lannister. Greyjoy player is first, has an Asha and Raiding Longship out vs Tywin and a reducer on the Lannister side. Asha does a power challenge and stealths Tywin. Lannister wants to prevent the UO so Asha doesn't stand, but if he blocks with the reducer, Greyjoy has the first action and Longships the reducer. Luckily Lannister has a Widows Wail in hand, which he ambushes on the reducer before declaring defenders, then defends with his reducer which now can't be longshipped anymore.

Example showing importance of separating the second challenge action window from reactions to winning/losing:

Tyrell vs Martell with Martell first. Tyrell does a Mil challenge with Knight of Flowers which Martell blocks with a Bastard Daughter.  Now Tyrell has an action/reaction window, and decides to Highgarden his own Knight of Flowers since he only wanted to kneel some of the opposition and didn't want to win the challenge. So His Viper Eyes has now been played in a challenge that Martell didn't actually lose.


fix(164): updated dashboard with feedback from UX designer

Ticket #164
Description
updated dashboard with feedback from UX designer
Screenshots / Demo Video
OLD:

NEW:

Fixed: aligned titles of recent activity and upcoming closing dates as well as the see all buttons, bolded the rejected and interested as well as UCD table dates, reduced the padding on the check and x icon col, unbolded the total, interested, and rejections col data, right aligned the the columns containing currency values and updated all necessary colors on the page
Testing
not much to test, all front end stuff, just made sure it all matched the figma requests and made sure nothing on the backend broke
Checklist

[x] Provided ticket and description
[x] Your PR title contains the ISSUE ticket number e.g "86: ..."
[x] Provided screenshots/demo
[x] Provided testing information
[x] Provided adequate test coverage for all new code
[x] Added PR reviewers
[ ] Ensure at least 1 review before merging

PM review: For the Recent Activity feed, the header and "See All Activity" should be left-aligned to the icons, not to the text.


Please release a new version with MariaDB 10.3

If you have complex SQL VIEWS MariaDB 10.3 is already the solution. MariaDB 10.2 can't handle that.
But: MariaDB 10.3 is already working in your code.
Why not release a MariaDB4j 2.4.1 intermediate version on Maven Central?
MariaDB 10.4 support can come later at anytime. :-)
PS: Please include my tiny pull-request #335 before the release.

@JD-CSTx Can you please tag this issue with 'helpwanted' as mentioned in Readme.md just to get this issue highlighted

cc @vorburger

@JD-CSTx Can you please tag this issue with 'helpwanted' as mentioned in Readme.md just to get this issue highlighted
I'm not so sure. I don't need any help, @vorburger just needs to be convinced to release the current code, as it is, just as a 2.4.1 version.

watch #334

#334 released v2.5.0, but FYI #484.


undefined function put_flash/3 (expected VocialWeb.UserView to define such a function or for it to be imported, but none are available)

Reproduction steps
1./Users/zhenjianglei/Desktop/elixir/phoenix/vocial/lib/vocial_web/templates/user/new.html.eex
Write the following code

2./Users/zhenjianglei/Desktop/elixir/phoenix/vocial/lib/vocial_web/controllers/user_controller.ex
Write the following code

3./Users/zhenjianglei/Desktop/elixir/phoenix/vocial/lib/vocial_web/router.ex

4./Users/zhenjianglei/Desktop/elixir/phoenix/vocial/lib/vocial_web.ex

There is no problem so far, accessing the link below also shows success
http://localhost:4000//users/new

5.But after writing the following code, an error occurs:
/Users/zhenjianglei/Desktop/elixir/phoenix/vocial/lib/vocial_web/views/user_view.ex

error log:
Compiling 1 file (.ex)
== Compilation error in file lib/vocial_web/views/user_view.ex ==
** (CompileError) lib/vocial_web/views/user_view.ex:14: undefined function put_flash/3 (expected VocialWeb.UserView to define such a function or for it to be imported, but none are available)
Environment
Erlang/OTP 25 [erts-13.1.1] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit] [dtrace]
Elixir 1.14.1 (compiled with Erlang/OTP 25)
Phoenix installer v1.6.15


Color zero units

Good day! I'm using clean-css with gulp. My versions are:
npm list clean-css:
└─┬<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>The issue is with colors zero units. Example:
In: color: hsl(0,0%,100%);
Out: color: hsl(0,0,100%);
hsl(0,0,100%); is wrong and browsers ignore such colors.
I solve it only if deny removing units 0 value with option "zeroUnits".
In code a bug-factor is
return value
    .replace(unitsRegexp, '$1' + '0' + '$2')
    .replace(unitsRegexp, '$1' + '0' + '$2');

If i'm wrong and it's not a bug sorry.

Oops, this is a bug indeed. I was able to reproduce it when using new CleanCSS({ compatibility: { properties: { colors: false } } }).

It's fixed in 4.0.11.

I'm still running into this problem. Here's my setup:
npm list clean-css
└─┬<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>It still strips % and outputs this:
.class-name{background-color:HSL(113,0,98%)}

Can others confirm that this is working for them?

I had to disable zeroUnits to get around this problem:
cleanCSS({
      compatibility: {
        properties: {
          zeroUnits: false
        }
      }
    })

@jakubpawlowicz - I'm hitting it too. This seems like a regression, and the issue should be re-opened.

I can reproduce this bug with version 4.2.3 too.


spacing between values is different when \punk is involved coordination-include.tex

The space before \1 is different.

Fixed by removing \punk. AVM works without \punk since the last element in the AVM is the longest.


SASL_SSL connection without using SSL Client Certificate Auth

I am trying to be able to establish a connection to a broker while using SASL_SSL without using SSL Client Certificate Auth.
Firstly, I'll explain that I'm new to Kafka so I have tried to be as absolutely detailed as possible here so there should be little confusion by the end of this.
This would be connection to my broker which would work without supplying this information in the configuration: (as taken from the example at https://github.com/weiboad/kafka-php/blob/master/example/Producer.php)
$config->setSaslKeytab('/etc/security/keytabs/kafkaclient.keytab');
$config->setSaslPrincipal('kafka/node1@NMREDKAFKA.COM');
// if use ssl connect
$config->setSslLocalCert('/home/vagrant/code/kafka-php/ca-cert');
$config->setSslLocalPk('/home/vagrant/code/kafka-php/ca-key');
$config->setSslPassphrase('123456');
$config->setSslPeerName('nmred');

I don't want to be using this CA functionality nor am I looking to provide SSL credentials. Here's what I'm trying... Not sure if I'm doing it quite right but here was my attempt:
<?php

require __DIR__ . '/vendor/autoload.php';

use Kafka\Config;
use Kafka\Producer;
use Kafka\ProducerConfig;

function produce($topic, $value)
{
    $config = ProducerConfig::getInstance();

    $config->setMetadataRefreshIntervalMs(1000);
    $config->setMetadataBrokerList(getenv('BROKERS'));
    $config->setBrokerVersion('2.2.0');
    $config->setRequiredAck(1);
    $config->setIsAsyn(false);
    $config->setProduceInterval(500);

    $config->setSecurityProtocol(Config::SECURITY_PROTOCOL_SASL_SSL);
    $config->setSaslUsername(getenv('USERNAME'));
    $config->setSaslPassword(getenv('PASSWORD'));
    $config->setSaslMechanism(Config::SASL_MECHANISMS_PLAIN);

    $producer = new Producer();

    $x =  $producer->send([
        [
            'topic' => $topic,
            'value' => $value
        ],
    ]);

    var_dump($x);
}

produce('my_topic', time(). ' AAAAAA');

So when I try to run the above code, I get a bunch of errors:
PHP Warning:  stream_socket_client(): Unable to set local cert chain file `'; Check that your cafile/capath settings include details of your certificate and its issuer in /home/moth/kafkatesting/vendor/nmred/kafka-php/src/CommonSocket.php on line 217
PHP Warning:  stream_socket_client(): Failed to enable crypto in /home/moth/kafkatesting/vendor/nmred/kafka-php/src/CommonSocket.php on line 189
PHP Warning:  stream_socket_client(): unable to connect to ssl://cp69.ap-southeast-2.aws.confluent.cloud:9092 (Unknown error) in /home/moth/kafkatesting/vendor/nmred/kafka-php/src/CommonSocket.php on line 217
PHP Fatal error:  Uncaught Kafka\Exception\ConnectionException: It was not possible to establish a connection for metadata with the brokers "edited out:{{MY_BROKER_HERE}}" in /home/moth/kafkatesting/vendor/nmred/kafka-php/src/Exception/ConnectionException.php:13
Stack trace:
#0 /home/moth/kafkatesting/vendor/nmred/kafka-php/src/Producer/SyncProcess.php(146): Kafka\Exception\ConnectionException::fromBrokerList('cp69.ap-southea...')
#1 /home/moth/kafkatesting/vendor/nmred/kafka-php/src/Producer/SyncProcess.php(38): Kafka\Producer\SyncProcess->syncMeta()
#2 /home/moth/kafkatesting/vendor/nmred/kafka-php/src/Producer.php(24): Kafka\Producer\SyncProcess->__construct()
#3 /home/moth/kafkatesting/aaa.php(25): Kafka\Producer->__construct()
#4 /home/moth/kafkatesting/aaa.php(38): produce('my_topic', '1559183546AAAAA...')
#5 {main}
  thrown in /home/moth/kafkatesting/vendor/nmred/kafka-php/src/Exception/ConnectionException.php on line 13

In the code path taken here stream_socket_client() throws a Warning because it was given a $context earlier, which seems to have expected that the cert related values are set.
See createStream() in src/CommonSocket.php https://github.com/weiboad/kafka-php/blob/a8f5b01d9ca24c183b121d624e3402bf8aa70488/src/CommonSocket.php#L126
$context = stream_context_create(
    [
        'ssl' => [
            'local_cert'  => $this->config->getSslLocalCert(),
            'local_pk'    => $this->config->getSslLocalPk(),
            'verify_peer' => $this->config->getSslVerifyPeer(),
            'passphrase'  => $this->config->getSslPassphrase(),
            'cafile'      => $this->config->getSslCafile(),
            'peer_name'   => $this->config->getSslPeerName(),
        ],
    ]
);

... but in my case I don't even want to be using those so I hadn't set them. So they are populated with empty or otherwise invalid defaults, causing the errors we see later.
Now, I am able to workaround this problem very simply, and get the producer working exactly as I'd expect, by changing the createSocket() function to work like this:
protected function createSocket(string $remoteSocket, $context, ?int &$errno, ?string &$errstr)
{
    return stream_socket_client(
        $remoteSocket,
        $errno,
        $errstr,
        100000,
        STREAM_CLIENT_CONNECT
        //$context
    );
}

This change will result in no errors and a producer that seems to work exactly the way I'm trying for. By not passing in the context with the above details, the connection seems to work perfectly... At least in that the message successfully gets written to the broker.
I realise it's not relevant to this particular repo however I have been able to get the producer functioning in NodeJS with the kafka-node library this way... It's pretty straightforward so I'm including it just for reference to show how the connection is made without the CA stuff and without SSL credentials being specified:
const HighLevelProducer = require('kafka-node').HighLevelProducer;
const Client = require('kafka-node').KafkaClient;

let clientOptions = {};
clientOptions.kafkaHost = KAFKA_BROKERS;
clientOptions.connectTimeout = 3000;
clientOptions.requestTimeout = 3000;
clientOptions.ssl = true;
clientOptions.sslOptions = { rejectUnauthorized: true };
clientOptions.sasl = { mechanism: 'plain', username: USERNAME, password: PASSWORD };

const client = new Client(clientOptions);
var producer = new HighLevelProducer(client);

producer.send([{ topic: 'my_topic', messages: [JSON.stringify(result)] }], function (err, data) {
    if (err) console.log(err);
});

For my broker, I'm also able to use kafkacat without specifying these additional details either like this:
kafkacat -P -b {BROKERS} -X sasl.mechanism=PLAIN -X request.timeout.ms=20000 -X retry.backoff.ms=500 -X sasl.username="{USERNAME}" -X sasl.password="{PASSWORD}" -X security.protocol=SASL_SSL -t my_topic

So my questions now are... is this is a bug? Or am I doing something wrong in my setup? Is this library even intended to work to support the connection I'd like? And if not, is that because it's considered bad practice or something like that? At bare minimum I wanted raise this as an issue because it really seems like with some minor changes this could easily support what I'm trying to do right out of the box without any changes to the lib but I don't have the familiarity to assert with confidence that I haven't done anything wrong here.

Okay, some notes regarding my findings on this and what solution I went with.
I ended up downloading and specifying the CA Cert file from Mozilla You can find them here:
https://curl.haxx.se/ca/cacert.pem <--- this link should always be the latest one
More information on that file:
https://curl.haxx.se/docs/caextract.html
I need to caution as a caveat, I'm very inexperienced with SSL. I don't know the full implications for security that this might entail with regards to someone else's application but for my purposes it works fine.
My guess (but I am not totally sure) is that the code I mentioned in my prior comment makes an assumption that a CA Cert file is provided because it may be best practice, for security purposes, to explicitly source and provide such a file.

Okay, some notes regarding my findings on this and what solution I went with.
I ended up downloading and specifying the CA Cert file from Mozilla You can find them here:
https://curl.haxx.se/ca/cacert.pem <--- this link should always be the latest one
More information on that file:
https://curl.haxx.se/docs/caextract.html
I need to caution as a caveat, I'm very inexperienced with SSL. I don't know the full implications for security that this might entail with regards to someone else's application but for my purposes it works fine.
My guess (but I am not totally sure) is that the code I mentioned in my prior comment makes an assumption that a CA Cert file will be provided here because it may be considered best practice, for security purposes, to explicitly source and provide such a file.


Add third-party GitHub Action as submodule to allow it to run

Proposed changes
Add the 3rd-party GHA as submodule so that it can be run without asking to add it into allow list.
Types of changes
What types of changes does your code introduce to Doris?
Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices apply)
[ ] Code refactor (Modify the code structure, format the code, etc...)
[ ] Optimization. Including functional usability improvements and performance improvements.
[ ] Dependency. Such as changes related to third-party components.
[x] Other.

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[ ] I have created an issue on (Fix #ISSUE) and described the bug/feature there in detail
[ ] Compiling and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If these changes need document changes, I have updated the document
[ ] Any dependent changes have been merged

Further comments
Related https://issues.apache.org/jira/browse/INFRA-22554

Hi, @morningman the workflow is now executed but there are a lot of code styles, do you want to merge this first and then you deal with the code styles, or do you want to deal with the code styles in this PR?

Hi, @morningman the workflow is now executed but there are a lot of code styles issues, do you want to merge this first and then you deal with the code styles in another PR, or do you want to deal with the code styles in this PR?

That's great! Thanks for your help!
Yes the code style has a lot issues, we will handle it in future, it doesn't matter!


Update zio-schema, zio-schema-derivation, ... to 1.0.1

About this PR
📦 Updates

dev.zio:zio-schema
dev.zio:zio-schema-derivation
dev.zio:zio-schema-json

from 0.4.17 to 1.0.1 ⚠
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

🔍 Files still referring to the old version number
The following files still refer to the old version number (0.4.17).
You might want to review and update them manually.
project/plugins.sbt

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "dev.zio" }
}]

labels: library-update, early-semver-major, semver-spec-major, old-version-remains, commit-count:1

Superseded by #147.


How to directly provide indptr/indices/data to CsMatI (without sorting, etc)

First, wow, this is a really nice package, and I'm hacking furiously with it.  Lovely stuff.
I'm building quite large sparse matrices (4-64m entries in (4m x 4m) matrices), and building thousands of them, that I'll add up and then do other things with.  I might need to export them to Python or C++, so the into_raw_storage will be perfect.
To construct the individual matrices, I have code that uses TriMat::from_triplets, but I see that that is then processed to produce the IndPtr representation that is used internally.  The code that builds the three vectors I hand to from_triplets, though, was taken from Python, and was originally used to produce the same three vectors for wrappering by scipy's csr_matrix.  So (IIUC)) they have the right format that I could just slam them into a CSMatrixI and run with them.
Looking at TriMatIter::into_cs, it appears that the code there sorts by (for CSR) (row, column).  The generation code I use already produces the indptr vector in row-sorted order (as it turns out, there's only one nonzero entry per row, so it's pretty trivial).
I've benchmarked with Criterion, and the difference in CPU time for a 4mx4m matrix is ..... 191ms down to 50ms.  So about a factor of 4, and multiplied by 40k to 160k matrices, that adds up to a massive amount of time.
It would seem like it's safe to merely check that the row, col are sorted, and in that case, one could just slam the vectors into the CsMatI.
Does this make sense?  Is there some entrypoint that already does this sort of thing, that I didn't find ?  If this makes sense, I will try to write a PR that does this.
I'm pretty new to Rust, and new to this storage format, but .... I think if I can figure out the algorithmic details, the language shouldn't be an issue.
Your advice appreciated.

Glad you like the library. Is https://docs.rs/sprs/0.11.0/sprs/struct.CsMatBase.html#method.new or the unsafe assumed sorted constructor of https://docs.rs/sprs/0.11.0/sprs/struct.CsMatBase.html#method.new_unchecked usable for you?

Lovely!  It worked!  I just didn't see the function in my searching.  Thank you so much for pointing it out.  And again, for writing this thing.
Maybe sometime soon, I'll be able to write an eigenvalue solver for this format.
Closing!


Suggestion: Make debounce length a configurable variable

0.25 is much to quick for most people typing, so that the validation message shows up while they are typing.
At a minimum would double to 0.5, but would be handy to have as a configurable variable.

Hi @Captnwalker1
Thank you for your suggestion!
I've set for reason of most quick validation starting. 0.5 sec adds significant and a bit confused delay for first and last validation checking. Probably this setting worth to leave as default value and pass as argument if it needed? What do you think about it?


Chef Client temporary file behaviour has changed in 13.7.16 (remote_file)

Description
Chef Client 13.7.16 does not clean up temporary files created by the remote_file resource until after the run is complete.  This causes issues in some cases where the temporary files still exist when services are restarted.  Previously the temporary files would be gone by the time the remote_file resource was done.
Chef Version
13.7.16
Platform Version
OL 7 / RHEL 7
Replication Case
You can use this recipe to recreate the issue.  The initial run where it downloads the remote_file for the first time won't reproduce it, but subsequent runs, even if the file does not change, will reproduce it.
directory '/tmp/temp_file_test' do
  action :create
end

remote_file '/tmp/temp_file_test/chef-13.7.16-1.el7.x86_64.rpm' do
  action :create
  source 'https://packages.chef.io/files/stable/chef/13.7.16/el/7/chef-13.7.16-1.el7.x86_64.rpm'
end

execute 'list directory' do
  action :nothing
  command 'ls -la /tmp/temp_file_test/ > /tmp/chef_debug.txt 2>&1'
end

log 'temporary file for remote_file still exists' do
  action :write
  only_if 'ls -l /tmp/temp_file_test/.chef*'
  notifies :run, 'execute[list directory]', :immediately
end

Client Output
Starting Chef Client, version 13.7.16
resolving cookbooks for run list: ["temporary_file_test"]
Synchronizing Cookbooks:
  - temporary_file_test (0.1.0)
Installing Cookbook Gems:
Compiling Cookbooks...
Converging 4 resources
Recipe: temporary_file_test::default
  * directory[/tmp/temp_file_test] action create (up to date)
  * remote_file[/tmp/temp_file_test/chef-13.7.16-1.el7.x86_64.rpm] action create (up to date)
  * execute[list directory] action nothing (skipped due to action :nothing)
  * log[temporary file for remote_file still exists] action write

  * execute[list directory] action run
    - execute ls -la /tmp/temp_file_test/ > /tmp/chef_debug.txt 2>&1

Running handlers:
Running handlers complete
Chef Client finished, 2/5 resources updated in 02 seconds

cat /tmp/chef_debug.txt
total 47944
drwxrwxr-x.  2 vagrant vagrant     4096 Feb  1 18:11 .
drwxrwxrwt. 10 root    root        4096 Feb  1 18:11 ..
-rw-r--r--.  1 vagrant vagrant 49083487 Feb  1 18:10 chef-13.7.16-1.el7.x86_64.rpm
-rw-------.  1 vagrant vagrant        0 Feb  1 18:11 .chef-chef-1320180201-6159-dx2827.7.16-1.el7.x86_64.rpm

Chef 13.6.4 does not have this issue, it started in 13.7.16.  Client Output for the previous version is included below.  The log and execute resources don't trigger as there are no temporary files there after remote_file is done.
Starting Chef Client, version 13.6.4
resolving cookbooks for run list: ["temporary_file_test"]
Synchronizing Cookbooks:
  - temporary_file_test (0.1.0)
Installing Cookbook Gems:
Compiling Cookbooks...
Converging 4 resources
Recipe: temporary_file_test::default
  * directory[/tmp/temp_file_test] action create (up to date)
  * remote_file[/tmp/temp_file_test/chef-13.7.16-1.el7.x86_64.rpm] action create (up to date)
  * execute[list directory] action nothing (skipped due to action :nothing)
  * log[temporary file for remote_file still exists] action write (skipped due to only_if)

Running handlers:
Running handlers complete
Chef Client finished, 0/4 resources updated in 02 seconds

that'd be a side effect of switching the tempfile over to the one the rest of the file resources use.  this should really get fixed consistently for all of them since there's no reason for this.

so #6701 was what changed.  i'm real puzzled about the tempfile handling though since it should be explicitly getting cleaned up here:  https://github.com/chef/chef/blob/master/lib/chef/provider/file.rb#L415-L417

oh the remote_file resource is up-to-date.  that's curious.

Yeah, this happens even if the resource is not changing.  It seems partially cleaned up, the file that hangs around until the end is always 0 bytes

i kind of suspect it only happens when the resource is not changing.

Yeah, it looks like that's the case...
[vagrant@layer201 ~]$ chef-client -z -r temporary_file_test
[2018-02-02T18:53:30+00:00] WARN: No config file found or specified on command line, using command line options.
Starting Chef Client, version 13.7.16
resolving cookbooks for run list: ["temporary_file_test"]
Synchronizing Cookbooks:
  - temporary_file_test (0.1.0)
Installing Cookbook Gems:
Compiling Cookbooks...
Converging 4 resources
Recipe: temporary_file_test::default
  * directory[/tmp/temp_file_test] action create (up to date)
  * remote_file[/tmp/temp_file_test/chef-13.7.16-1.el7.x86_64.rpm] action create
    - update content in file /tmp/temp_file_test/chef-13.7.16-1.el7.x86_64.rpm from 188266 to 89c96a
    (file sizes exceed 10000000 bytes, diff output suppressed)
    - restore selinux security context
  * execute[list directory] action nothing (skipped due to action :nothing)
  * log[temporary file for remote_file still exists] action write (skipped due to only_if)

Running handlers:
Running handlers complete
Chef Client finished, 1/4 resources updated in 17 seconds
[2018-02-02T18:53:48+00:00] WARN: No config file found or specified on command line, using command line options.
[vagrant@layer201 ~]$ chef-client -z -r temporary_file_test
[2018-02-02T18:53:54+00:00] WARN: No config file found or specified on command line, using command line options.
Starting Chef Client, version 13.7.16
resolving cookbooks for run list: ["temporary_file_test"]
Synchronizing Cookbooks:
  - temporary_file_test (0.1.0)
Installing Cookbook Gems:
Compiling Cookbooks...
Converging 4 resources
Recipe: temporary_file_test::default
  * directory[/tmp/temp_file_test] action create (up to date)
  * remote_file[/tmp/temp_file_test/chef-13.7.16-1.el7.x86_64.rpm] action create (up to date)
  * execute[list directory] action nothing (skipped due to action :nothing)
  * log[temporary file for remote_file still exists] action write

  * execute[list directory] action run
    - execute ls -la /tmp/temp_file_test/ > /tmp/chef_debug.txt 2>&1

Running handlers:
Running handlers complete
Chef Client finished, 2/5 resources updated in 10 seconds
[2018-02-02T18:54:05+00:00] WARN: No config file found or specified on command line, using command line options.

yeah so somehow when the cache control headers result in no file getting downloaded an empty file is created and then the returned tempfile pointer is nil.  the way that the base file provider works is that the nil tempfile object means that it bypasses the management of the file contents (zero length files are valid to download, so the remote_file contents object can't hand back a tempfile to a zero length file).  i don't understand how that is happening.


Defined first party browsers

https://github.com/MicrosoftDocs/windows-itpro-docs/issues/8747

Dear @JohanFreelancer9,
kindly do the copy editor review for this PR.
Dear @e0i, for your information
Thank you


test suite

We need tests.
Once those are in place, some Travis CI / coverage tests could be good.

A few end-to-end tests added in 98a2392.
We should have unit tests as much as possible -- polynomial arithmetic, parsing, symmetries, enumerating monomials.
A lot of things are hard to unit-test, so maybe we can at least aim for good coverage.

More tests in a4c0daa.


Freestanding execution engine: Add read/write access to services

Programs running in the freestanding execution engine can't call services

The FEE doesn't have enforce policies, so you have to manually configure the VFS to specify what files the program can access.
Whereas the actual execution engine configures access rights based on the policy.


Extend API to provide query if a package exists

Please extend your feature set to provide an endpoint that checks if a package at a specific version exists in a given repository. Maybe just check the filename.  I would like to use this in a package-release workflow that will use the promote endpoint.  Sure I guess I could try to download the file and if that succeeds, well then by golly it definitely exists. But when checking a release request I only need to know the one bit of information (exists yes/no), I have no need to wait while 1 (or 100 or 1000) MB trickle on in via those interwebs.
Thanks in advance for considering it.

Upon reading the API a bit more I found the "show" endpoint.  Would you recommend using that for this purpose?  If so please feel free to close this, thanks.

+1

I see the last commit in this repo was Aug 2018, that's about 14 months ago. Has this been abandoned?

+1


Wrong ODATA Base URL for OnPrem

The URL:s are still wrong for OnPrem. Instead of this
https://<base URL>:<port>/v1.0/api/<API version>/
it should be
https://<base URL>:<port>/<tenant>/api/<API version>/
Example:
https://nav.contoso.com:7048/NAV/api/v1.0/
It took us a very long time to figure out why v1.0 was before /api/ as that is not working nor making any sense.
Also, could you please explain the difference between the API Version "beta" and "v1.0". Shouldn't this be "v1.0" now when the product is already on it's third release (counting from R13 to R15)? Will the "beta" version be deprecated or can it always be used?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 17c4eef7-2ff2-eeeb-d285-095002e99475
Version Independent ID: 2beae6be-8b5f-2a48-4b68-81810248b8f6
Content: Endpoints for the APIs for Microsoft Dynamics NAV and Microsoft Dynamics 365 Business Central - Dynamics NAV
Content Source: dynamics-nav/endpoints-apis-for-dynamics.md
Product: dynamics-nav-2018
GitHub Login: @SusanneWindfeldPedersen
Microsoft Alias: solsen

Thanks for catching this. This is fixed with the next refresh of the docs.


body in APIError is never assigned

Confirm this is an issue with the Python library and not an underlying OpenAI API

[X] This is an issue with the Python library

Describe the bug
In the APIError class, there is a body class variable. Based on the comment:
    ""The API response body.

    If the API responded with a valid JSON structure then this property will be the
    decoded result.

    If it isn't a valid JSON structure then this will be the raw response.

    If there was no response associated with this error then it will be `None`.
    """

This class variable should contain the body of the response. However in the __init__ function, the body variable is not assigned and kept.
To Reproduce
Simply error.body will result in:

AttributeError: 'XxxxxxError' object has no attribute 'body'

Code snippets
No response
OS
OS agnostic
Python version
Python version agnostic
Library version
Lib version agnostic

Also created a PR for this: https://github.com/openai/openai-python/pull/949


Fixed Embedded Data test

Fixed Embedded Data test.

Ran tests and looks good now. The CaseReference test is failing for me but I'm assuming fixing that will be in a different bug/story. Thanks!

I've created a BUG for CaseReference failing in 8.8, will check for 8.7 also.


remove nonce_added?

nonce_added? was always returning truthy, so I think it can be erased.
It was either returning true, or the result of the .each block (which is [:script_nonce, :style_nonce])

I can't recall why that code was there in the first place, perhaps to prevent a nonce appearing twice in one directive? I would have hoped that a test would have failed with this change, exposing it's intent 😢  I'll take a closer look soon.

Note that merging master added nonce_added? back to this branch.

Fixed in https://github.com/twitter/secureheaders/pull/354. I finally understand the point of this method!


No way if running the terminal on mobile

Describe the bug
When I've created a node project, I could not use the terminal, because I could not accesos it
Link to the blitz that caused the error
https://stackblitz.com/edit/node-q3k4tg?file=index.js
Steps to reproduce

Create node project on mobile
There os no way to access the terminal

Expected behavior
Find the terminal
Screenshots
No response
Platform
Browser name  = Chrome
Full version  = 92.0.4515.115
Major version = 92
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Linux; Android 10; Redmi Note 9S) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.115 Mobile Safari/537.36
performance.memory = {
  "totalJSHeapSize": 53500000,
  "usedJSHeapSize": 44700000,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}
Hash = 6a754de1dca8799163c05b54a4efbad0569024b8

Additional context
No response

Hi @khru! That is correct, currently WebContainers do not run on mobile. They will work on Android though, so stay tuned. I can't give you an exact time frame, but we're working on it.


Bank - post upgrade notice

Requirements

Create a function to send a bank a message that a confirmation validator has been upgraded to a primary validator and return the response code
include any related test(s)

API Reference
https://thenewboston.com/bank-api/upgrade-notice

working on it

@velibor7 Hi I saw in the other issue you wanted to work on but someone else got it, I have another issue you could take this one?? Is it fine?

@shahraizali By the way I think we should add a get_signature_from_message(signing_key) method, because in some function the signature is requested but the message is generated in the function so there is no way for the user to build the signature.

Hey! @nishp77 Thank you so much for putting in the effort. really appreciate it. @VincentHch are your working on this issue now?

get_signature_from_message(signing_key)

can you please share some references like line numbers or names of functions so that it's easier for me to track what you are talking about? Thank you

https://github.com/thenewboston-developers/thenewboston-python-client/blob/d93e75d7d2a757abfebdab82ffcaca936627e8c3/tnb/banks.py#L103
If you look at this function for example, the user must give a signature without knowing the message to sign.
I would suggest replacing :
"signature": signature, by "signature": sign(message, signing_key),

Hey! @nishp77 Thank you so much for putting in the effort. really appreciate it. @VincentHch are your working on this issue now?

My PR should fix this issue

Thanks for the merge. Idk if it is needed to change the assignee or sth


ci: update runner labels to uniquely identify instance sizes

Checklist:

[x] Commit Message Formatting: Commit titles and messages follow guidelines in the
conventional commits.
[ ] Changelog updated with breaking and/or notable changes for the next minor release.
[ ] Documentation has been updated, if necessary.
[ ] Unit tests have been added, if necessary.
[ ] Integration tests have been added, if necessary.

Are you planning to make the same changes to sdg and training?

Yes! Will make the changes there as well


feature: save tcc action context to fencelog

[ ] I have registered the PR changes.

Ⅰ. Describe what this PR did
添加TCC上下文存储SPI扩展能力，并扩展实现将TCC的actionContext数据存储到本地防悬挂表中。
目前TCC在方悬挂情况下，如果一阶段有三方接口调用，TCC无法进入二阶段回滚。该类问题可以参阅https://github.com/seata/seata/pull/4532
oldPr: https://github.com/seata/seata/pull/4527
Ⅱ. Does this pull request fix one issue?

fixes https://github.com/seata/seata/issues/4423
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

如果缺少’application_data‘字段，这里给出了如下提示

Codecov Report

Merging #5272 (18d528d) into 2.x (0112719) will decrease coverage by 0.14%.
The diff coverage is 11.76%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

@@             Coverage Diff              @@
##                2.x    #5272      +/-   ##
============================================
- Coverage     48.51%   48.38%   -0.14%
- Complexity     4187     4197      +10
============================================
  Files           764      767       +3
  Lines         26880    26984     +104
  Branches       3357     3372      +15
============================================
+ Hits          13040    13055      +15
- Misses        12451    12540      +89
  Partials       1389     1389

Impacted Files
Coverage Δ

...c/main/java/io/seata/common/ConfigurationKeys.java
0.00% <ø> (ø)

...ommon/src/main/java/io/seata/common/Constants.java
100.00% <ø> (ø)

...n/src/main/java/io/seata/common/DefaultValues.java
0.00% <ø> (ø)

...io/seata/common/exception/DataAccessException.java
83.33% <0.00%> (-16.67%)
:arrow_down:

...ration/tx/api/fence/DefaultCommonFenceHandler.java
0.00% <0.00%> (ø)

...pi/fence/store/db/CommonFenceStoreDataBaseDAO.java
0.00% <0.00%> (ø)

...x/api/fence/store/db/sql/CommonFenceStoreSqls.java
0.00% <0.00%> (ø)

...ava/io/seata/rm/tcc/api/BusinessActionContext.java
0.00% <0.00%> (ø)

...io/seata/rm/tcc/api/BusinessActionContextUtil.java
0.00% <0.00%> (ø)

...main/java/io/seata/rm/fence/SpringFenceConfig.java
0.00% <0.00%> (ø)

... and 13 more


[Question]

Required prerequisites

[X] I have read the documentation https://safe-rlhf.readthedocs.io.
[X] I have searched the Issue Tracker and Discussions that this hasn't already been reported. (+1 or comment there if it has.)
[ ] Consider asking first in a Discussion.

Questions
训练reward-model、cost-model、ppo-model是使用的同一份数据集吗，我看着instruct gpt论文，是把数据集进行了切分，分别来训练sft、rm和ppo的？

PS: Please fill in relevant information and provide a reasonable issue title when creating a new issue. There is a good lesson How do I ask a good question? for this.

Closing due to inactivity. Please feel free to ask for a reopen if you have more questions.


Import file location

Hi where can i find either private/encrypted key or nep6 file to restore previous wallet. A windows update reset a lot of my pc chrome being one of the apps effected. I do have access to all the files it created when setting up the wallet however when restoring i don't know which files the information is in (keys) or where the nep6 file is located. Any help would be much appreciated thanks.

changed user data file in new chrome with old data file which also restored wallet


OPA -Unable to edit constraint created from kubectl

What kind of request is this:
Bug
Steps:
Create cluster, navigate to dashboard
Apps -> Charts -> rancher-gatekeeper Install
Create constraint yaml
Example yaml:

apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sRequiredLabels
metadata:
  name: all-must-have-owner
spec:
  match:
    kinds:
      - apiGroups: [""]
        kinds: ["Namespace"]
  parameters:
    message: "All namespaces must have an `owner` label that points to your company username"
    labels:
      - key: owner
        allowedRegex: "^[a-zA-Z]+.agilebank.demo$"

Set cluster kubectl
Run
kc apply -f constraint.yaml

Edit newly created constraint from dashboard as form
Result:
Constraint cannot be edited

After creating the constraint, edit as yaml works. Edit as form cannot be accessed.

This behavior is still seen in Rancher server rancher\rancher:master-head version 0390ff5
Steps:
Create cluster, navigate to dashboard
Apps -> Charts -> rancher-gatekeeper Install
Create constraint yaml
Example yaml:
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sRequiredLabels
metadata:
  name: all-must-have-owner
spec:
  match:
    kinds:
      - apiGroups: [""]
        kinds: ["Namespace"]
  parameters:
    message: "All namespaces must have an `owner` label that points to your company username"
    labels:
      - key: owner
        allowedRegex: "^[a-zA-Z]+.agilebank.demo$"

Set cluster kubectl
Run
kubectl apply -f constraint.yaml

Result:

Cannot edit with form. Edit with YAML is functional.

The bug fix is verified with Rancher server rancher\rancher:master-head version 616c014 and rancher\rancher:v2.5-head version 100198a
Constraint can be edited by form:


Middle oil's fluid color doesn't match the icon

Mod source
Factorio Mod Portal
Operating system
GNU/Linux
What kind of issue is this?

[ ] Compatibility
[ ] Locale (names, descriptions, unknown keys)
[X] Graphical
[ ] Crash
[ ] Progression
[ ] Balance
[ ] Pypostprocessing failure
[ ] Other

What is the problem?
Middle oil color is blue, but it should be red.

Steps to reproduce

See middle oil

Additional context
No response
Log file
You don't need a log file for this one. Trust me, I know :)

fixed 2 months ago


Symfony 5 patch

Goal

To remove deprecation warnings from Symfony 4.4.
To ensure continuity of responses/exceptions with previous interface.

Changes
The order that the  GetResponseForExceptionEvent and ExceptionEvent are checked have been swapped.  This is because for within Symfony 4.3 & 4.4, ExceptionEvent is an extension of GetResponseForExceptionEvent and therefore would trigger either condition.  By ensuring ExceptionEvent comes first, we ensure the correct (non-deprecated) method, getThrowable is called when available.
However, within Symfony 4.3, event though the ExceptionEvent exists, neither it nor its base class, GetResponseForExceptionEvent, implement the getThrowable method.  This is why the method_exists check is present, to avoid attempting to call this method.
In addition, to ensure continuity with the InvalidArgumentException that would be thrown by adding type hints, this method will throw an InvalidArgumentException if the input is neither an ExceptionEvent with the getThrowable method, or a GetResponseForExceptionEvent.
Tests
Unit testing the changes proves to be difficult for a number of reasons.

There is seemingly no easy way to ensure a test only runs against a specific version of Symfony

In Symfony 5 the ExceptionEvent class is marked as final, meaning it cannot be mocked via mockery.  It may be possible to create an ExceptionEvent, but because that requires an HttpKernel object it may be difficult to ensure all of the elements are in place and mockable to create a working configuration.

It would be feasible to create maze runner e2e tests in order to verify the change, however this would be a significant addition and may take time.

It looks like StyleCI has decided to add a bunch of changes to the example config.  This shouldn't effect the content of the release.


Opaque regions around window corners

You could see white corners on the screenshot.

Additional info from #2665: issue seem to only appear when I set MinHeight or MinWidth on the window.


test(ts): adds test case for signMessage

Problem solved
Short description of the bug fixed or feature added

PR-Codex overview
The focus of this PR is to add a new test case for signing messages using a specific private key.
Detailed summary

Added a new test case for signing a message with a specific private key.
The test checks the signature output against an expected value.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

#3978  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @gregfromstl and the rest of your teammates on  Graphite


Extended key usage question

Based on SPDM spec, Extended key usage field has either id-DMTF-spdm 3/id-DMTF-spdm 4 or both. But I see there are device/leaf certificate present in unit test folder which has these attributes added in for extended key usage like TLS Web Server Authentication, TLS Web Client Authentication, OCSP Signing. May I know why these attributes are added?

The SPDM specification defines those OIDs but does not restrict a certificate to only have those OIDs; it's free to have other OIDs. It's possible that some of libspdm's example certificate OIDs don't make sense and we can remove them to make things more clear.


Add import management tools

Issue Report Checklist
Enhancement request, so only a subset applies.

[x] Searched the issues page for similar reports
[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[x] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
The python ecosystem discourages in many way the use of star imports. In Spyder this is most visible through "basic linting" complaining, that pyflakes can't analyze undefined names when star-imports are used.
However, the alternative is to constantly manually update import lists, which is undesirable, especially during data analysis tasks.
At this point it would be extremely useful to have a utility, that manages imports; For instance, I'd like to be able to write x = linspace(0, 1, 101) and, after pressing some hotkey, be offered to add from numpy import linspace. Not having to worry about the manual imports would put python usage closer in convenience aspects to dedicated data analysis tools like Matlab, where imports are basically automated.
Desirable subfeature: Automatic execution of the imports
After an import statement has been added, the user would still have to go back to the top of the file and execute the #%%-cell, containing the import statements. This is likewise undesirable; After updating the import statements, they should therefore also be evaluated in the associated console, if any.
Desirable subfeature: Cleanup of unused imports
In order to reduce the number of distracting linter warnings, cleaning up imports would also be desirable. For instance, by reducing from numpy import array, linspace to from numpy import linspace, if array is never used, or dropping import os, if os is never referenced.
Available infrastructure libraries
The desired functionality is provided by some libraries. Personally, I have experience only with importmagic through importmagic.el, from which I know that edge-cases may be an issue. In this case, it failed to provide an autoimport for pprint, getting confused by the duplicity of pprint the module and pprint.pprint the function.


fixes #14 allow second run of cluster up to bring in aditional argumetnts, will not be persistend but run for this one run of the profile

This simple fix will solve solution 2 in issue #14.
If we want to modify the run script so that the third run of the profile includes the additional argument then more work is needed.
Proabably just including the value of $@ in the run file or something.

Rebased and pushed force with lease. LGTM.

This can just be deleted i think. The changes are already in master.


Feature Req: Typescript support

Is typescript compilation possible in plunker?

Typescript support is enabled.
Here is one of the official demos: https://embed.plnkr.co/github/Microsoft/TypeScriptSamples/master/raytracer?preview=raytracer.html
Here is a description of how to use the system:
https://embed.plnkr.co/suu7Yg/?show=preview


Cohesion & Single Responsibilty

https://github.com/7odaifa-ab/TaskTimer/blob/e07a4754f7a5a77a29de02c941b77642fa2c2f7d/src/main/java/HuimangTech/App.java#L63
This line lowers the cohesion of this program and break Single Responsibilty (as on of the SOLID principles)

i really don't get what you mean, is it because it declared Static public? cause I can simply put it back to the Timer Class


check if Ads are Ready (cached)

Admob has a feature to cache Ads, and a method to check if it was cached/loaded...
This is implemented in the Adobe Air / Admob too,
Do you think is possible to implement this?
Regards

Hi, such a feature is not under our top priorities right now, but it doesn't seem hard to implement as we're already caching ads and checking this inside the extension, so exposing this feature may be simple :)

Hi, we've released a new version of the extension that uses the cached information in order to display the interstitial or not.
Also, when calling to display interstitials, you'll receive a true or false (that will let you know if the ad was displayed or not). If the ad is not displayed, it means one of two things:

The ad was not cached yet (or there was some loading error)
You are using the parameters that came with showInterstitial to control the ad frequency, and the extension is refusing to display the ad since it's too soon according to your prefferences.

Please let me know if this addresses your needs :)
Thanks!

Yes, it's very useful, thanks!


Sector/more fixes 2

This contains fixes for @skaldarnar's feedback on #3, and some updates to moveToPool().
I haven't done anything with the remove() method apart from updating the documentation for now, warning against improper use (I've also added an equivalent message to the partnering insertRef() method).
I updated some of the tests, and found and fixed a bug where moveToPool wasn't properly assigning the ref to the right pool using assignToPool(), which led to it appearing to be in the original pool, when it was actually in the new pool.

Merged in https://github.com/MovingBlocks/Terasology/pull/3009


Explosion owner immunity.

Description
Spotted a missing feature from CrackShot, could be added if an user wants to prevent self damage to the owner of the shot explosion.
It is pretty self explanatory, when enabled, your own explosions do not inflict damage, knockback, or any mechanics effect on yourself, but they still work on enemies.
Configuration
Explosion:
  Enable_Owner_Immunity: <true/false>

Payment (optional)

[ ] I'm willing to pay for this feature

Found it in Damage on the wiki, goddamnit.


Improve documentation of Nan::New for v8::Function creation.

The documentation around this is very limited, and could use some simple explanation/examples.
Specifically, I can't figure out the purpose of the 2nd argument, data.
From https://github.com/nodejs/nan/blob/master/doc/new.md#nannew
Nan::New<T>(Nan::FunctionCallback callback,
            v8::Local<v8::Value> data = v8::Local<v8::Value>());

What is the purpose of this? Something to do with this binding? I found the v8 documentation to be just as lacking.
I'm searching for the preferred way to wrap up some c++ code and register it as a js event handler. I need to give it some context data, so having a thisArg or closure would be great.

It is a generic handle for user-supplied data. Retrievable through Nan::FunctionCallbackInfo::Data.

@kkoopa any examples of this? It'd be great if I could use this to pass in a native void *.

I found the answer:
Nan::New<v8::Function>(
  [](const Nan::FunctionCallbackInfo<v8::Value>& info){
    auto self = static_cast<SomeClass*>(info.Data().As<v8::External>()->Value());
    self->...
  },
  Nan::New<v8::External>((void *)this)
)

Side note, can't capture anything in the lambda, or it doesn't work. Would be great if nan could support capturing lambda functions for this, then I wouldn't need to pass data through this 2nd argument.


 Below is the comparison of changes in generated Core that I was able to recognize.
In Cek.Internal:
master:
  case ((readKnown
           ($dKnownTypeIn_a2DXx `cast` <Co:8>)
           $dMonadError_s2MgS
           lvl3_r2Qd1
           (poly_$dAsEvaluationFailure_r2Qfe
            `cast` <Co:6>)
           (Just argTerm_s2MgX)
           w1_s2P4Y)
        `cast` <Co:9>)
         w2_s2P4Z
  of
  { (# ipv6_XHui, ipv7_XHuk #) ->

this PR:
  case readKnown
         ($dKnownTypeIn_a2CU1 `cast` <Co:8>)
         lvl3_r2Pc5
         (poly_$dAsEvaluationFailure_r2Pei
          `cast` <Co:6>)
         (Just argTerm_s2LfM)
         w1_s2O3N
  of {
    Left err_a2C84 ->
      jump exit6_X9P w2_s2O3O err_a2C84;
    Right x_a2C85 ->

In Default.Universe:
master:
-- RHS size: {terms: 88, types: 288, coercions: 55, joins: 0/0}
$fKnownTypeInDefaultUnitermInteger_$creadKnown
  = \ @ term_XMqM
      $dKnownBuiltinTypeIn_XMqO
      @ err_aMn8
      @ cause_aMn9
      @ m_aMna
      eta_B3
      eta1_B2
      _
      eta3_X3
      eta4_X7e ->
      case eq_sel
             ($p1(%,%) ($p1KnownBuiltinTypeIn $dKnownBuiltinTypeIn_XMqO))
      of co_aMOV
      { __DEFAULT ->
      case $dKnownBuiltinTypeIn_XMqO of
      { C:KnownBuiltinTypeIn ww1_s1bFg ww2_s1bFq ww3_s1bFr ww4_s1bFs ->
      case ww1_s1bFg of { (ww6_s1bFj, ww7_s1bFo) ->
      case ww6_s1bFj of { Eq# ww9_s1bFm ->
      case $p1MonadError eta_B3 of
      { C:Monad ww11_s1bFx ww12_s1bFy ww13_s1bFz ww14_s1bFA ->
      ww12_s1bFy
        ((($p1(%,%) ww7_s1bFo) `cast` <Co:2>)
           eta_B3 eta1_B2 eta3_X3 eta4_X7e)
        (\ v_Xd ->
           case v_Xd `cast` <Co:5> of { ValueOf uniAct_ahyQ x_ahyR ->
           case (ww3_s1bFr `cast` <Co:4>)
                  uniAct_ahyQ (ww4_s1bFs `cast` <Co:6>)
           of {
             Nothing ->
               throwError
                 eta_B3
                 <...>
             Just ds_dk8z ->
               case ds_dk8z of { Refl co1_aiT7 ->
               (pure ww11_s1bFx x_ahyR) `cast` <Co:4>
               }
           }
           })
      }
      }
      }
      }
      }

this PR:
-- RHS size: {terms: 83, types: 262, coercions: 59, joins: 0/0}
$fKnownTypeInDefaultUnitermInteger_$creadKnown
  = \ @ term_XLRG
      $dKnownBuiltinTypeIn_XLRI
      @ err_aLO1
      @ cause_aLO2
      eta_B2
      _
      eta2_X3
      eta3_X7d ->
      case eq_sel
             ($p1(%,%) ($p1KnownBuiltinTypeIn $dKnownBuiltinTypeIn_XLRI))
      of co_aMex
      { __DEFAULT ->
      case $dKnownBuiltinTypeIn_XLRI of
      { C:KnownBuiltinTypeIn ww1_s1b9l ww2_s1b9v ww3_s1b9w ww4_s1b9x ->
      case ww1_s1b9l of { (ww6_s1b9o, ww7_s1b9t) ->
      case ww6_s1b9o of { Eq# ww9_s1b9r ->
      case (($p1(%,%) ww7_s1b9t) `cast` <Co:2>)
             $fMonadErroreEither eta_B2 eta2_X3 eta3_X7d
      of {
        Left l_ikdU -> Left l_ikdU;
        Right r_ikdW ->
          case r_ikdW `cast` <Co:5> of { ValueOf uniAct_agR2 x_agR3 ->
          case (ww3_s1b9w `cast` <Co:4>)
                 uniAct_agR2 (ww4_s1b9x `cast` <Co:6>)
          of {
            Nothing ->
              Left <...>
            Just ds_djIl ->
              case ds_djIl of { Refl co1_aiuT -> (Right x_agR3) `cast` <Co:8> }
          }
          }
      }
      }
      }
      }
      }

And that's it.
Like yeah, this PR clearly compiles better than master, but how come it gives us a speedup of up to 19% in the entire evaluation time?
Anyway, I don't want to spend more time digging through Core, so I'll write some docs, ask for reviews and merge this.

One possible explanation would be that we somehow end up forcing the call to dischargeCekValue that is not supposed to be forced, however I was unable to spot that by looking at the generated Core and empirically it's not the case either.

But actually, I can't think why it would matter. We replace one pattern match (to get the state token) with another one (to take apart the Either and call throwError). So it seems like no win.

Oops, @kwxm, sorry, I forgot to ask for your review. Doing that now. I'll address comments in another PR.

I don't have much to say, except that the performance changes seem rather mysterious.  Maybe we should try some detailed profiling on one of the examples with a big speedup to see if anything jumps out.

Also, looking at the top of Typed.hs I seee
{-# LANGUAGE BlockArguments           #-}
{-# LANGUAGE ConstraintKinds          #-}
{-# LANGUAGE DataKinds                #-}
{-# LANGUAGE DefaultSignatures        #-}
{-# LANGUAGE FlexibleInstances        #-}
{-# LANGUAGE GADTs                    #-}
{-# LANGUAGE LambdaCase               #-}
{-# LANGUAGE MultiParamTypeClasses    #-}
{-# LANGUAGE OverloadedStrings        #-}
{-# LANGUAGE PolyKinds                #-}
{-# LANGUAGE QuantifiedConstraints    #-}
{-# LANGUAGE RankNTypes               #-}
{-# LANGUAGE StandaloneKindSignatures #-}
{-# LANGUAGE TypeApplications         #-}
{-# LANGUAGE TypeFamilies             #-}
{-# LANGUAGE TypeOperators            #-}
{-# LANGUAGE UndecidableInstances     #-}
{-# LANGUAGE UndecidableSuperClasses  #-}

{-# LANGUAGE StrictData               #-}

It's a pity we can't tell it which extensions we don't want...

@thealmarty I'm using it in #4312, which I'm planning to get merged next, so don't bother.


Add Helm chart for Airflow (fix #7)

Here is a big Pull Request adding an Helm Chart for Airflow (see #7). I propose the following:

we do the review here (I understand it can take a few time)
I have changed some stuff in the docker files, it will requires a new image (for the moment I use mine: for testing and it works great so far docker pull stibbons31/kube-airflow:airflow-<IP_ADDRESS>-kube-1.6)
once we agree, I can propose it to the official Helm repository if you agree
I still have to add more docs, rework maybe the configuration of the templating, add a few more options (ingress or not, etc).

For information, I was greatly inspired by the zero-to-jupyterhub helm repository.
Features added:

add EditorConfig files
airflow.all.yaml is splited in different chart templates
Propagate server config from env variable if defined
statup script can receive some config by ENV variable (name of rabbitmq/postgres server), at least everything  derives from the same source
username and password can inherit from env
fix probable buggy fernet key definition, missing enum34
with python 2 installation
change format of template in airflow.cfg (airflow.cfg.in)
use configmap to set default environment variables for
web, scheduler and worker
allow ingress in endpoint such as /airflow and /flower (to do so, a MR#2723 is required to be merged first in Airflow)
use python 3 in docker
optional git sync to mirror a git repo for DAGs + warning about uncontrolled DAG updates
debian stretch (python >3.4)
load example true/false and flexible scheduler run nums

To test this pull request:

use image stibbons31/kube-airflow:airflow-HEAD-patched-kube-1.6 instead of mumoshu/kube-airflow:<IP_ADDRESS>-1.6.1
mumoshu/kube-airflow:<IP_ADDRESS>-1.6.1 needs to be updated with the new Dockerfile.template proposed in this PR (using more recent version of Debian and python 3)...

There is also a dependency on a patch on airflow for supported url_prefix for the airflow program, I will probably disable it in this PR for the moment until it get merged in mainline.

@Stibbons a helm chart would be awesome.  However, do you think it might be a better fit for https://github.com/kubernetes/charts?  That would allow better discoverability, review, and long term maintenance.

Yes, I plan to land it to kube-airflow for testing, and if it works, merge it to kubernetes/charts

@Stibbons I tried your helm chart with your docker image - few things didn't work for me.

scheduler & worker container - i got the error saying: entrypoint.sh: python3 not found
flower container failed with error - airflow: error: argument subcommand: invalid choice: '/usr/local/airflow/flowerconfig.py' (choose from 'resetdb', 'render', 'variables', 'connections', 'pause', 'task_failed_deps', 'version', 'trigger_dag', 'initdb', 'test', 'unpause', 'dag_state', 'run', 'list_tasks', 'backfill', 'list_dags', 'kerberos', 'worker', 'webserver', 'flower', 'scheduler', 'task_state', 'pool', 'serve_logs', 'clear', 'upgradedb')

You need to use stibbons31/kube-airflow:airflow-HEAD-patched-kube-1.6 instead of mumoshu/kube-airflow:<IP_ADDRESS>-1.6.1 until mumoshu/kube-airflow:<IP_ADDRESS>-1.6.1 is updated with the new Dockerfile.template (using more recent version of Debian and python 3)...

Also, I will probably propose a version that store the complete airflow.cfg in a configmap, it should be much simpler

@Stibbons I used your image stibbons31/kube-airflow:airflow-HEAD-patched-kube-1.6 and now i am getting this exception: [2017-10-25 18:23:45,732] {driver.py:123} INFO - Generating grammar tables from /usr/lib/python3.5/lib2to3/PatternGrammar.txt Traceback (most recent call last):   File "/usr/local/bin/airflow", line 17, in <module>     from airflow import configuration   File "/usr/local/lib/python3.5/dist-packages/airflow/__init__.py", line 31, in <module>     from airflow.models import DAG   File "/usr/local/lib/python3.5/dist-packages/airflow/models.py", line 138, in <module>     class DagBag(BaseDagBag, LoggingMixin):   File "/usr/local/lib/python3.5/dist-packages/airflow/models.py", line 164, in DagBag     include_examples=configuration.getboolean('core', 'LOAD_EXAMPLES')):   File "/usr/local/lib/python3.5/dist-packages/airflow/configuration.py", line 804, in getboolean     return conf.getboolean(section, key)   File "/usr/local/lib/python3.5/dist-packages/airflow/configuration.py", line 626, in getboolean     'boolean (received "{}").'.format(section, key, val)) airflow.exceptions.AirflowConfigException: The value for configuration option "core:LOAD_EXAMPLES" is not a boolean (received "").

@chhetripradeep should be fixed on latest rev.

@Stibbons sorry the above exception is my bad. i didnt pull the latest helm chart branch.

I just fixed it now :)

@Stibbons Ack that the chart now works like a charm 🎉  🎉

I am also new to helm and k8s ecosystem but few feedbacks i would suggest -

Using PVC for databases.
Storing complete airflow.cfg in a configmap.
Adding a flag to enable/disable ingress, Based on that we can use nodePort for service.

Overall, chart looks great.

There will be probably 2 helm charts:

1 for kubernetes celery (this one) without my url_prefix, no configmap, maybe git-sync and python3
1 for kubernetes executor (the patch is still in the queue in airflow), probably in airflow 2, with configmap, pvc, git-sync as well, ...

I'll add quickly the ingress switch, i'll try pvc if i have the time, and i also wanted to switch to config map but with this image and the entrypoint.sh it will be tricky to do

Indeed, good to know. It is just an option, and probably needs more documentation. By the way, do you know if there are official "recommendation" on airflow website, about Dag update/deployment? I don't see such information in the doc

with your permission, I added your recommendations in the readme and in config.yaml file. Always good to know

@Stibbons sure go ahead. I talked with the airflow devs about this as part of the kubernetes executor stuff. They acknowledged it's an issue and mentioned several workarounds. I totally agree with you documenting the "suggested" way for updating dags would be super useful. I can ask around the airflow mailing list and see what others are doing if that's helpful.

Yes I'll start a thread on the mailing list about this subject. I have modified this chart today to support two DAGs deployment mechanisms:

git-sync (with the warning you raised)
embed DAGs inside the docker (require custom build of the docker images)
And a proposal of support for dependency management (requirements/*.txt). I think it could allow to easily adapt our DAGs with python module (ex: scikit learn,...).

Can you review the README I propose, see my proposal seems viable ?

@Sedward, please check this version if I did the rebase over my changes correctly. This adds PVC support for Airflow Chart.

Today's changes brings airflow.cfg configmap support !

@Stibbons May i know which docker image i can test it with. I tried with stibbons31/kube-airflow:airflow-kube_executor_url_prefix-kube-1.6-v8 but i see errors saying in web pod saying "ImportError: No module named 'kubernetes'"

You can try with image: stibbons31/kube-airflow:helm_chart_dockerfile

I am pretty happy about the new change I added. Airflow is now functionnal in Kuberneter

workers logs can be retreived by the webserver (thanks to statefulset)
can mount application to http://airflow.mycompany.com/celery/admin (for webserver) and http://airflow.mycompany.com/celery/flower (for Flower)

Update:

statefulset worker (allow access to port and so logs)
different ingress annotations between flower and webserver
Add /usr/bin/python symblink in Dockerfile
ensure file overwrite with git sync
allow to pickle DAG from scheduler to worker
(so git sync on worker MIGHT be useless)
update README
set scheduler num runs to 1
will restart scheduler at each execution

How is this currently going? My team has some work coming up soon to "kuberneterize" our data team's airflow setup and my first instinct was to write a helm chart.
More than happy to lend a hand if we can!

I actually maintain my fork of kube-airflow. I try to keep this pr the most up to date but i get no review from the original author. I have diverged quite a lot from airflow.all.yaml, but at least most features works with celery executor

Note:

I am planning to officially add this chart in the official Helm repository
Just need an evolution to support the url prefix change that has been integrated in airflow.

@gsemet Hey! I finally managed to catch all the things up made until now.
Thanks for the all the your efforts and the fork, and the PR to official Kubernetes charts repository 👍
Everyone, see his awesome work at https://github.com/kubernetes/charts/pull/3959.
I'll keep this repository for mostly for a reference for a while.
But I believe - the general direction should be treat @gsemet's work as the primary, and contribute any missing parts(if any) to his k8s chart and eventually obsolete this as superseded by it.


Cipher.getInstance throw GeneralSecurityException

According to the discussion in #42, It's better to throw GeneralSecurityException instead of IOException in Cipher.getInstance(). This PR revert the changes in #42.

Discussion further:
Whether we need to design the right Exception all the methods for Cipher.
Currently update, doFinal method uses IOException which is not good in a strict sense.
We have two directions:

Follow the identical exceptions declared in JCE which is reasonable.
Create our own Exception class in crypto package and throws it out wrapping underlayer Exceptions.

Just discussed with Dian, we can follow the identical exceptions declared in JCE which actually make the code cleaner than use a new Exception class.

And also what about remove the UnsupportedCipherException as I see it usage is very weak.
The method throw this Exception is checkStreamCipher which is used in Crypto stream object constructor. It makes sense to throw an IOException instead of a runtime exception as UnsupportedCipherException.

Thanks @jerrychenhf for the comments. Make sense to me. Updated the patch.

Thanks @dianfu.
@winningsix  Here we used a exception handling style supported by only JDK 7. are you OK with the library needs to (has to) to build with JDK 1.7 or above?

Thanks @jerrychenhf reaching me about this. It's OK for me to use JDK1.7 and above to build Chimera. Spark is also required to build in JDK1.7+ from its DOC.

+1 for merge

@dianfu  Could you add build requirement to README?
Building Chimera using Maven requires Maven 3.1.2 or newer and Java 7+.

Thanks @jerrychenhf and @winningsix  for the review. Just rebased the patch and updated the README.

Thanks for the updates. LGTM


clean up smoketester GPG leaks

Description
https://github.com/apache/lucene/issues/11948

@rmuir smoketester leaks a GPG agent on my computer everytime it runs. @risdenk pointed out this fix from solr: https://github.com/apache/solr/commit/0cfef740617cc40585e3121e0b41e5cc8002471f

This closes #11948

@hurutoriya Did you do any testing on the changes? If not, we need to QA that the script is not broken by this change.

@janhoy Thank you for suggestion. I've never do the QA.

If not, we need to QA that the script is not broken by this change.

OK, let me try the QA 🙏 .
How should I do for QA? (I will try understand a concrete step)


Rounding is not clearly documented

I am looking for a safe operation to change money amounts between different currencies.
const { $, multiply } = require('moneysafe');
const multiplyMoney = (first, second) => multiply($.of(first), $.of(second)).valueOf();

const amount = 20000
const rate = 3.663

multiplyMoney(amount, rate) //  73200
amount * rate // 73260

Any idea why I get the rounding and how to avoid it?

Same issue here

**Why it's happening : **
BigNumber dependency uses the .toString() function to convert what we have in dollars to BigNumber.
For example :
let money = $(5.553);  console.log(new BigNumber(money));  /* -> BigNumber { s: 1, e: 0, c: [ 5,<PHONE_NUMBER>0000 ] }  money.toString = ()=>'5.553';  console.log(new BigNumber(money));  //-> BigNumber { s: 1, e: 0, c: [ 5,<PHONE_NUMBER>0000 ] }
In your situation, the 3.663 is being truncated to 3.66 which gives 73200 dollars instead of 73260.
** How to get around it :**
One way I can think of is to create your own different currency,
const new$ = createCurrency({decimal:3});
And work on this. This solves the problem in your case, but should you then need to multiply with a number that has 4 decimal places, we run into the same issue.
A better and long term solution, is that we need a way not of multiplying two currencies together, but of multiplying a currency with a number. For instance, if we're taking forty dollars 10 times, it makes more sense to do $4010 than to do : $40$10. The latter should, produce 400 "Dollars squared", which doesn't make much sense.
We can change the times function from const times = b => of(value.multipliedBy(of(b)));  to const times = b => of(value.multipliedBy(b));. This will allow you to multiply a currency with a number without getting the rounding on the number (you'll still get rounding on the currency, which is intentional behaviour).

This should be fixed in v2.2.2


Fixes 4668: Add a footer wrapper for wizard ui

Summary

Fix a small UI bug where the footer would not be present in the review tab.

Testing steps

https://issues.redhat.com/browse/HMS-4668

/retest

Works as expected now
Thank you