Duplicate 'Content-Type' header when returning dict or jsonify bodies with 'Content-Type' in headers in response tuple

Expected Behavior
from flask import Flask
app = Flask(__name__)
@app.route('/')
def issue():
    return {'test': 'test'}, {'Content-Type': 'test'}

Using curl -v http://<IP_ADDRESS>:5000/ to query the view I expect only one Content-Type header > Content-Type: test
Actual Behavior
Duplicate headers are returned
< Content-Type: application/json
< Content-Type: test

Environment

Python version: 3.8.2
Flask version: 1.1.2
Werkzeug version: 1.0.1

Context
This issue also effects responses created with make_response when using a dict or jsonify body + the headers argument with a 'Content-Type':
from flask import Flask, make_response
app = Flask(__name__)
@app.route('/')
def issue():
    return make_response({'test': 'test'}, {'Content-Type': 'test'})

This issue is caused by jsonify adding a 'Content-Type' header then make_response uses extent to add the additional headers, thus leading to the duplicate.
Returning a str/bytes body does not have this problem as no 'Content-Type' is added by flask, if one is missing it is added by werkzeug.
The reason I came across this issue is we have older code which does return json.dumps(data), 200, {'Content-Type': 'application/json+somecustomtype'} and I assumed based on the flask docs that just returning the data and letting flask do the jsonify would be better.

I don't know if we should change this behavior, but if you want to set the default mimetype (e.g. Content-Type value) for JSON response, you should use the JSONIFY_MIMETYPE configuration variable:
app.config['JSONIFY_MIMETYPE'] = 'application/json+somecustomtype'

I don't think he wants to change it globally. Since duplicate content-type headers make no sense I think it's reasonable to take the one from the return value

@greyli thanks, we need to support multiple different content-types for JSON in the same app. I think this is pretty common for production APIs that have been around for a while like ours.
@ThiefMaster sounds right, I'll put a PR together.

Before we do anything, I want to understand why headers are extended rather than appended right now. I think I was the last one to touch this code, and either it was already like that or I made a decision about it during refactoring.
If you want to control the headers, instead of using the shortcut, get the response and set the headers directly:
response = jsonify(...)
response.headers.set('Content-Type', 'custom')
return response

This behavior is explicitly documented in app.make_response right now:

If body is a :attr:response_class instance, status overwrites the exiting value and headers are extended.

Changing this is not compatible with that. There is no way to change the shortcut to satisfy all use cases. Some headers should be replaced, some should be extended, but Flask doesn't have insight into those semantics.

Looking at the history, returning a dict of headers has used extend since 2012. Before that, all headers were discarded and only the passed headers were used. I'm not seeing a clear cut reason to prefer set over extend, and the previous 2012 change seems intentional.

@davidism I think you're right, if you use jsonify and headers with a 'Content-Type' that's a programming error and nothing can be done, but I think there is a real issue when returning a dict body.
When a str/bytes/bytearray body is returned any returned headers are passed to to response_class and the logic of werkzeug BaseResponse means that if 'Content-Type' is in the headers it is used, in this case the headers are then set to None and so not extended into the response object headers.
But if the body returned is a dict, jsonify pass a mimetype argument to werkzeug BaseResponse which will set 'Content-Type', then the headers will be extended and if there is a 'Content-Type' the response object will now have two 'Content-Type' headers. I'm suggesting this behaviour is a bug and the dict body case should act similarly to the str case.
From make_response:
        if not isinstance(rv, self.response_class):
            if isinstance(rv, (str, bytes, bytearray)):
                # let the response class set the status and headers instead of
                # waiting to do it manually, so that the class can handle any
                # special logic
                rv = self.response_class(rv, status=status, headers=headers)
                status = headers = None
            elif isinstance(rv, dict):
                rv = jsonify(rv)
... SNIP ...
        # extend existing headers with provided headers
        if headers:
            rv.headers.extend(headers)

If we change it the way you're describing, dict, headers would result in different behavior than jsonify(), headers. In the first case, Flask would detect a dict, call jsonify, then replace headers. In the second case, all Flask would see is a response object, and would extend headers. This doesn't seem correct.

I think that is understandable as jsonify returns a Response, whereas dict is just a response value.
My corollary is that jsonify is make_response when dict is str. Specifically make_response("xyz"), headers extends the headers whereas "xyz", headers sets the headers.

Returning a dict is just a shortcut for calling jsonify though, so that's not the case.

I definitely recognize there's an issue with the inconsistency. Either the headers should always be extended, or always be set

@pgjones @ThiefMaster thoughts on instead using set/update consistently instead of extend?

I feel like this might even have been unintentional. The original code constructed the response object with those arguments and in that case it would have overwritten the keys and not extended.

and the previous 2012 change seems intentional.

I feel like this might even have been unintentional.

Yes, I wasn't quite sure why the change used extend, maybe it intended to use update. I think switching to using update / set makes more sense.

I think switching to update/set makes sense.

I noticed there is a test on duplicate headers support, simply change rv.headers.extend to rv.headers.update will break this test. Since duplicate headers are allowed in HTTP, maybe we only need to make sure the Content-Type  is unique? I proposed another PR (#3690) for it.

I think single value headers are more common than multi-line headers, and based on discussion using headers.extend seems unintentional. I'd rather use headers.update consistently, and right now the response, headers case is the odd one out compared to the behavior of the others. If extend is needed, the response object is already available in that case, to be modified as needed.


Virus detection flagging Virus detection flagging cargo-build-bpf.exe as malware (cargo-test-bpf.exe too).as malware (cargo-test-bpf.exe too)

Having issues with cargo-build-bpf.exe being detected by Norton during system scans as a trojan and as a result is quarantined and removed. This could lead to issues if users aren't aware. I don't know if it would be possible to get it whitelisted on their network and others who may have the same issue. It also quarantined the cargo-test-bpf.exe.
Norton flagged first through heuristics (Heur.AdvML.C), then as a trojan (Trojan.Gen.MBT).
Norton gave me the thumbprints below for the files in .exe format. If they do not match I may have a tampered version of it that is indeed a trojan.
File Thumbprint - SHA:
154960e54f9cc211193956020fe569d00ab897d0886b99d9039142e9cde5a623
File Thumbprint - MD5:
73a438ad16616225161d38c26942c288

this is os(windows)  related issue (maybe flag this executable as safe in Norton app) , please close this


Truncate Oracle PK names based on DB version

Truncate Oracle Primary Key names based on DataBase version. Oracle till version 12.1 supports primary keys up to 30 characters, while newer versions support iderntifiers up to 128 characters long.
Impact

[ ] Bug fix (non-breaking change which fixes expected existing functionality)
[x] Enhancement/New feature (adds functionality without impacting existing logic)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description

Fixes #6142
The change solve the issue by making use of the OracleDatabase::getIdentifierMaximumLength to get the maximum length the Oracle supports for its identifiers.
Things to be aware of

Things to worry about

Additional Context

Thanks for the PR @m4tt30c91 , merging it to the next "major" release (aka 4.30.0)


Make a demo video of current status

Make a demo video of the robot teleoperating inside the AWS house.
Try to trigger and show all sensors.

Can we close this ticket, @rjcausarano?


created reporter for json format

This PR adds the ability for the reporter to generate the output in JSON format. JSON format can be consumed easily by Datadog and other metrics and logging platform.

All good. Thanks for the help and quick response!


[Integration: Test] refactor spring cloud

// Describe your PR here; eg. Fixes #issueNo

Make sure that:

[ ] You have read the contribution guidelines.
[ ] You submit test cases (unit or integration tests) that back your changes.
[ ] Your local test passed mvn clean install -Dmaven.javadoc.skip=true.

Codecov Report

Merging #2045 (0987694) into master (bbd7ee7) will decrease coverage by 0.51%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #2045      +/-   ##
============================================
- Coverage     60.88%   60.37%   -0.52%
+ Complexity     4032     4013      -19
============================================
  Files           604      604
  Lines         17759    17756       -3
  Branches       1694     1692       -2
============================================
- Hits          10813    10720      -93
- Misses         6071     6162      +91
+ Partials        875      874       -1

Impacted Files
Coverage Δ

...enyu/client/tars/TarsServiceBeanPostProcessor.java
26.47% <0.00%> (-63.24%)
:arrow_down:

...ache/shenyu/client/tars/common/dto/TarsRpcExt.java
0.00% <0.00%> (-30.77%)
:arrow_down:

...ache/shenyu/plugin/grpc/cache/GrpcClientCache.java
70.58% <0.00%> (-23.53%)
:arrow_down:

...che/shenyu/sync/data/http/HttpSyncDataService.java
63.10% <0.00%> (-18.45%)
:arrow_down:

...a/org/apache/shenyu/common/utils/VersionUtils.java
67.85% <0.00%> (-10.72%)
:arrow_down:

...he/shenyu/plugin/grpc/client/ShenyuGrpcClient.java
8.69% <0.00%> (-4.35%)
:arrow_down:

...henyu/plugin/grpc/resolver/ShenyuNameResolver.java
60.00% <0.00%> (-4.22%)
:arrow_down:

...henyu/admin/service/impl/UpstreamCheckService.java
22.76% <0.00%> (-4.07%)
:arrow_down:

...henyu/plugin/httpclient/NettyHttpClientPlugin.java
58.00% <0.00%> (-2.00%)
:arrow_down:

...che/shenyu/admin/model/vo/SelectorConditionVO.java
96.07% <0.00%> (-1.97%)
:arrow_down:

... and 4 more

Continue to review full report at Codecov.

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


As an unregistered user, I want to be able to register as a user with my chosen credentials (username, email, password, none empty) to have full access to all features and services, available to registered users

Acceptance Criteria:

Upon successful user registration the user receives an email confirmation and
is logged in
Upon failure, an error is displayed and the user is redirected back to the
register screen.

A register Error can be that a username/email is already taken

The creation date of a user is saved to the database record.
Logged-in users can log out and log back into their registered profile

Priority: Critical
Author: Armin Veres
Estimate: 6h

Task Lists

[x] sopra-fs22-group-08/client#11
[x] sopra-fs22-group-08/server#30
[x] sopra-fs22-group-08/client#12
[x] sopra-fs22-group-08/server#31
[x] sopra-fs22-group-08/server#16

All tickets implemented.


Unable to toggle power drain

Currently running All the Mods 3 (ATM3) v5.11.2.  Fusion  core currently operates normally, however does not respond to redstone signals correctly. Have tried - Lever, opencomputer Reactor.deactivate(), EnderIo conduit with lever,  RFTools Redstone Transmitter/Receiver.
No matter which option i try, the Core continues to draw power and attempts to maintain ignition temperatures.  (can suck 500 billion RF pretty quick at @250krf/t

Hey there - the core doesn't respond to redstone like that. As long as the temperature is below 8000 kK, it will draw any power sent to it. The thing to do is to just not send power to it while you don't want to try to start it up ;)

Aye is what i ended up doing, have redstone controlled power to the core
and coils that shuts down in sequence after reactor deactivate.
Cheers
On Tue, Mar 19, 2019 at 8:47 PM Tom Dodd<EMAIL_ADDRESS>wrote:

Hey there - the core doesn't respond to redstone like that. As long as the
temperature is below 8000 kK, it will draw any power sent to it. The thing
to do is to just not send power to it while you don't want to try to start
it up ;)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/turbodiesel4598/NuclearCraft/issues/453#issuecomment-474302767,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Atau4prlsgY-JWmgp8KcH3fDtHKSyhBvks5vYMBOgaJpZM4a7Xj0
.

No prob!


Algorithm and Working Mode

If I want to implement the combination of an algorithm A and a working mode B ,which both of them was implemented separatly(I am not so sure about that , but  A and B are implemented with other working modes or algotithms）？ If there is a possbility that I could implement A+B through evp or anything else by adding a few lines of code，without  adding a new algorithm  by engine machine mechanism ？That means a lot to me！Thanks!

No, we identify algo+mode as distinct algorithms, so for example, AES-CBC is separate from AES-CFB and so on.

Thanks！

@levitte I read the code again and have some questions: Now I want to implement SM4-OFB，and I find out modes/ofb128.c and crypto/sm4.c， If there is a possibility that I could call interfaces to implement it ? If not , the only way is to implement it myself from the beginning?

Yes, those are public (albeit undocumented) API functions, see:
https://github.com/openssl/openssl/blob/7f81aed4bccbeb0ad491b68dd601d576c4956c78/include/openssl/modes.h

In other words, you have access the mode functions by including <openssl/modes,h>

It's very nice of you.Thanks for your help!

You're welcome


The query language

The graph definition is just sooo beautiful:
paris --- "OneWayRoad" --> london

Although your query language is very ugly:
import gremlin.scala._
import org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerFactory
val graph = TinkerFactory.createModern.asScala
val traversal = graph.V.as("a").out.value[String]("name").as("b").labelledPath
traversal.toList

Any idea to generalize the definition operators to the query syntax?

Very true. I think there's plenty of room to improve and beautify the
syntax of a traversal. Ideas and PRs welcome (the graph definition was a
PR by @dkrieg).
At the same time we should try not to move away tooo far from the
standard Tinkerpop3, so that the documentation still applies. At the
least we should probably keep the step names.
On 09/15/2015 08:49 AM, Daniel Khashabi wrote:

The graph definition is just sooo beautiful:
|paris --- "OneWayRoad" --> london |
Although your query language is very ugly:
|import gremlin.scala._ import
org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerFactory val
graph = TinkerFactory.createModern.asScala val traversal =
graph.V.as("a").out.valueString.as("b").labelledPath
traversal.toList |
Any idea to generalize the definition operators to the query syntax?
—
Reply to this email directly or view it on GitHub
https://github.com/mpollmeier/gremlin-scala/issues/95.

I see. I might be able to do sth for that, I think.
I will send a PR, in case I come up with an idea.

That was actually a PR from me that has been improved by @dkrieg
PR are welcomed.

sorry @joan38 I mixed that up

No worries @dkrieg did a great job that's why.


Add QNN glossary entry

Title:
Adding a new entry on quantum neural nets.
Possible Drawbacks:
I am unsure if  I should add more references, since the style is very formal? Or shorten and make it less technical?

Website build
Commit: 9db55ed9e6bbb13d69f4f9319924c73d2521b219
Circle build number: 1033
Built demos directory: https://1033-214003948-gh.circle-artifacts.com/0/tmp/qml_demos.zip
Backreferences zip: https://1033-214003948-gh.circle-artifacts.com/0/tmp/qml_backreferences.zip
Website zip: https://1033-214003948-gh.circle-artifacts.com/0/tmp/qml_html.zip
Website url: https://1033-214003948-gh.circle-artifacts.com/0/_build/html/index.html
Please double check the rendered website build to make sure everything is correct.

Website build
Commit: 9db55ed
Circle build number: 1033
Built demos directory: https://1033-214003948-gh.circle-artifacts.com/0/tmp/qml_demos.zip
Backreferences zip: https://1033-214003948-gh.circle-artifacts.com/0/tmp/qml_backreferences.zip
Website zip: https://1033-214003948-gh.circle-artifacts.com/0/tmp/qml_html.zip
Website url: https://1033-214003948-gh.circle-artifacts.com/0/_build/html/index.html
Please double check the rendered website build to make sure everything is correct.

This may be slightly outdated...


[EventRequest] - Table 77 "Report Selections": OnBeforeDownloadFromStream

Hi BC-Team,
We need the following events in Table 77 "Report Selections":

OnBeforeDownloadFromStream

Reason:
We would like to skip the DownloadFromStream as we are handling the download elsewhere and this function stops the JobQueue because its trying to Download the file.
    [Scope('OnPrem')]
    procedure SendToDiskForCust(ReportUsage: Enum "Report Selection Usage"; RecordVariant: Variant; DocNo: Code[20]; DocName: Text; CustNo: Code[20])
    var
        TempReportSelections: Record "Report Selections" temporary;
        ElectronicDocumentFormat: Record "Electronic Document Format";
        TempBlob: Codeunit "Temp Blob";
        AttachmentInStream: InStream;
        ClientAttachmentFileName: Text;
    begin
        OnBeforeSetReportLayout(RecordVariant, ReportUsage.AsInteger());
        FindReportUsageForCust(ReportUsage, CustNo, TempReportSelections);
        with TempReportSelections do
            repeat
                OnSendToDiskForCustOnBeforeSendFileLoop(TempReportSelections, RecordVariant);
                Clear(TempBlob);
                SaveReportAsPDFInTempBlob(TempBlob, "Report ID", RecordVariant, "Custom Report Layout Code", ReportUsage);
                TempBlob.CreateInStream(AttachmentInStream);
                ClientAttachmentFileName := ElectronicDocumentFormat.GetAttachmentFileName(DocNo, DocName, 'pdf');
            +   OnBeforeDownloadFromStream(TempReportSelections, RecordVariant, AttachmentInStream, IsHandled)
            +   if not IsHandled then
                    DownloadFromStream(AttachmentInStream, '', '', FileManagement.GetToFilterText('', ClientAttachmentFileName),
                    ClientAttachmentFileName);
            until Next() = 0;
    end;

Event Publisher
[IntegrationEvent(false, false)]
local procedure OnBeforeDownloadFromStream(TempReportSelections: Record "Report Selections" temporary; RecordVariant: Variant; AttachmentInStream: InStream; var IsHandled: Boolean)
begin
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


update-status hook not running so status not updated

We have a customer deploying this charm. It is being reporting the following issue
"reboot required. Changes in: /etc/systemd/system.conf, /etc/default/grub.d/90-sysconfig.cfg"
I was able to replicate the issue
To reproduce this issue, I deployed simple sysconfig charm on stsstack, as per the instructions i.e.
juju deploy ubuntu
juju deploy cs:~canonical-bootstack/sysconfig-8
and then adding the relation
juju add-relation sysconfig ubuntu
Without any intervention, and waiting for all the processes to settle down, juju status gives us the same error as the customer, as shown below
ubuntu@arif-ali-bastion:~$ juju status
Model Controller Cloud/Region Version SLA Timestamp
sysconfig arif-ali stsstack/stsstack 2.7.1 unsupported 17:54:11Z

App Version Status Scale Charm Store Rev OS Notes
sysconfig active 1 sysconfig jujucharms 8 ubuntu
ubuntu 18.04 active 1 ubuntu jujucharms 13 ubuntu

Unit Workload Agent Machine Public address Ports Message
ubuntu/0* active idle 0 <IP_ADDRESS> ready
sysconfig/0* active idle <IP_ADDRESS> reboot required. Changes in: /etc/systemd/system.conf, /etc/default/grub.d/90-sysconfig.cfg

Machine State DNS Inst id Series AZ Message
0 started <IP_ADDRESS> c9ab6fa5-f5c8-4da1-b33c-61b52a78699a bionic nova ACTIVE

By default the /etc/default/grub.d/90-sysconfig.conf file doesn't exist in a standard ubuntu installed system. This file gets added as part of the sysconfig charm. Ultimately, we shouldn't need to reboot the system, as we shouldn't need the sysconfig charm to do anything drastic that would require a reboot.
So all in all, below is the diff of the file of /etc/systemd/system.conf by default, note that everything is commented out by default, so we shouldn't need to reboot for the purpose of this file.
root@juju-fb6590-sysconfig-0:/etc/systemd# diff -u system.conf.bak system.conf
--- system.conf.bak 2020-02-17 09:24:59.175372668 +0000
+++ system.conf 2020-02-17 09:49:37.779396707 +0000
**@** -21,7 +21,6 **@**
#CrashChangeVT=no
#CrashShell=no
#CrashReboot=no
-#CtrlAltDelBurstAction=reboot-force
#CPUAffinity=1 2
#JoinControllers=cpu,cpuacct net_cls,net_prio
#RuntimeWatchdogSec=0
**@** -35,15 +34,13 **@**
#DefaultTimeoutStartSec=90s
#DefaultTimeoutStopSec=90s
#DefaultRestartSec=100ms
-#DefaultStartLimitIntervalSec=10s
+#DefaultStartLimitInterval=10s
#DefaultStartLimitBurst=5
#DefaultEnvironment=
#DefaultCPUAccounting=no
-#DefaultIOAccounting=no
-#DefaultIPAccounting=no
#DefaultBlockIOAccounting=no
#DefaultMemoryAccounting=no
-#DefaultTasksAccounting=yes
+#DefaultTasksAccounting=no
#DefaultTasksMax=
#DefaultLimitCPU=
#DefaultLimitFSIZE=
**@** -61,5 +58,4 **@**
#DefaultLimitNICE=
#DefaultLimitRTPRIO=
#DefaultLimitRTTIME=
-#IPAddressAllow=
-#IPAddressDeny=
+

(by hopem)
I just tried this out for myself and found that (a) the reboot message appears legitimate since some config files are new and contain enabled settings e.g. grub and (b) after a reboot the message does not go away. I checked the charm .unit-state.db for the sysconfig.boot_resource timestamps and they did not change after reboot so seems to be that the real bug is that the message is not cleared after reboot.

(by hopem)
There is also bug 1864217 which means that even if update-status ran, following a charm upgrade you will always be requested to reboot.

(by hopem)
I think i've isolated the problem that relates to this bug which is that the update-status hooks is actually never running in this charm due to the fact that a when* decorator have been combined with a hook decorator and that isn't possible with reactive since the when* or flag handlers always execute after hook handlers:
hook('update-status')
when_not('sysconfig.unsupported')
def update_status():
...
This is the reason why the status is not being updated and is only actually set when update_status() is called from other hooks like config-changed

(by hopem)
20.02 backport submitted - https://code.launchpad.net/~hopem/charm-sysconfig/+git/charm-sysconfig/+merge/381070

(by aieri)
this is available in cs:sysconfig-1


Integrate C++ traces with new frontend

It looks like the compiler is the last remaining user of lean_trace, so this will resolve itself with time. For now, compiler traces are at least printed directly to stderr.


treewide: setuptools_scm -> setuptools-scm

Motivation for this change
Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Added a release notes entry if the change is major or breaking
[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 125477 at 1bd18da7 run on x86_64-linux 1

3 packages failed to build:

dyndnsc
python38Packages.pytest-console-scripts
python39Packages.pytest-console-scripts

Note that build failures may predate this PR, and could be nondeterministic or hardware dependent.
Please exercise your independent judgement. Does something look off? Please file an issue or reach out on IRC.


TSP bitmasking program added

Related Issue

Mention issue for which this pull request is a part of (please mention issue number # )
#1548

Proposed Changes

Change 1 - Added Travelling salesman problem in DP section with bitMasking

Additional Info

Any additional information or context

Checklist

[x] ✅ My code follows the code style of this project.
[ ] 📝 My change requires a change to the README.
[ ] 🎀 I have updated the README accordingly.
[x] 👀 I have read the CONTRIBUTING document.
[x] ✨ I have added tests to cover my changes.
[x] 🚩 All new and existing tests passed.
[x] 🌟 ed the repo

Added a Travelling salesman solution using DP with bitmasking. Implemented a top-down DP approach that uses a DP Matrix with (2^N) *N dimensions with N being number of cities and 2^N is the total number of permutations of cities that are visted and yet to be visited.

Added a program for TSP with DP & bitmasking.

It is an implementation of TSP solution using DP & bitmasking. Previously, this repository contained an solution for TSP but lacked the bitmasking approach. This pull request aspires to add the same.

#1548
https://github.com/Lakhankumawat/LearnCPP/issues/1548

I have used a sample adjacency matrix for testing whether the program is working properly

I used an online C++ compiler for testing my program -> https://www.onlinegdb.com/online_c++_compiler

It does not affect any other areas

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Output Screenshots

Screenshot #1
Screenshot #2

test -1
test-2

Please review my PR @Lakhankumawat


The Events page fails to load when an AdBlocker is active

What App Center service does this affect?
The issue is with the https://appcenter.ms/users/<USER>/apps/<APP>/analytics/events page.
Describe the bug
The page just fails to load when an AdBlocker is active: I can see the blue progress bar at the top getting stuck at around 90%, and I can only see the placeholders for the items to load.
If I open the F12 dev console, I can see a bunch of errors:

This happens both in Chrome and Chromium Edge.

NOTE: turns out this is caused by the AdBlocker. Now, I know this isn't 100% an issue with AppCenter per se, but since many people use an AdBlocker you might want to look into this to figure out what rule is causing the connection to be blocked. Or, at least show a popup asking the user to disable the AdBlock. Otherwise many other users might find themselves in the same situation, without knowing what's causing the page to fail to load.

To Reproduce
Steps to reproduce the behavior:

Just go to the https://appcenter.ms/users/<USER>/apps/<APP>/analytics/events page.

Expected behavior
The page should correctly load and display the recorded events.
Screenshots

Desktop (please complete the following information):

OS: Windows 10 Pro x64 build 18362.116
Browser: both Chrome and Chromium Edge (dev)
Version: latest for both

Additional context
The events used to work for for me up to a couple weeks ago or so, then the page just stopped working for me. As mentioned, the other pages work fine.
I know that the page is working fine for other users, so I'm not sure why it's just failing for me.

Thanks @Sergio0694 for bringing this to our attention. Our team will take a look at this.

Hi @hamswan - thank you for the quick reply, glad I could help! 😊
Also, just to clarify, I can confirm that disabling the AdBlocker on the site completely solves the issue, everything works just fine now. Also, to be precise, I'm using uBlock origin (not AdBlock Plus).

Thanks for the details, we are looking into this

@Sergio0694 We have added this in our feature backlog, we don't have an ETA yet, you can track this through the GitHub issue

The feedback widget at the bottom right of the page also appears blocked by (at least) uBlock Origin.


Create base Windows Explorer extension module

Create base Windows Expolorer extension module with base submenu
Make it installable together with driver

Done


fix: do not set TILLER_NAMESPACE to an empty string

fixes https://github.com/jenkins-x/jx/issues/1998
For some reason, Helm cannot find Tiller when the TILLER_NAMESPACE environment variable is set to an empty string.
Note to JX devs: I didn't test this!  This was just a "best guess"

/ok-to-test

Do I need to do anything to move this forward?

/approve


App restarts aftr sharing.

Thank you for such a great plugin.
I have an issue. I am able to share both images and text to whatsapp and email, however after i finish sharing and hit the back button on android my App restarts instead of going back to the page on my app that has the content i shared.
I am using Angularjs as a framework.
I will be glad if someone can help me resolve this, thank you.

Facing the same issue

+1
Also with me. On Android. App built with Ionic.

Can you guys please tell me which version of the plugin you're using and the exact line of code that's being called? Not .share(msg, ..), but .share('the message', .. please.

cordova plugin list outputs:
nl.x-services.plugins.socialsharing 4.3.19-dev "SocialSharing"
in my html template, I have this:
Share!
in my js:
$scope.share = function() {
window.plugins.socialsharing.share($scope.newsdata.description, $scope.newsdata.title, null, $scope.newsdata.url);
}

Hi @chrisbenseler can you please let me know what the values of those variables are at runtime? $scope.newsdata.description etc? And is your trouble also with WhatsApp only?

The values are:
$scope.newsdata.description: essa é a descrição do item 1
$scope.newsdata.title: Título 1
$scope.newsdata.url: http://eucomi.com.br/
I tried with several other values, used without special characters, but it still happens.
It happens also with Whatsapp.

On WhatsApp only, or also on others? If also on others: all others, or specific apps?
Sorry for nagging, but I really need more details. Android versions would be welcome as well.
Best would be a crashlog by running adb logcat with your device connected.

Those which crashes (and I have tested): Whatsapp, Twitter, Inbox, Gmail, Facebook and Colornote.
The only one that doesn't crash is "Copy to Clipboard".
adb logcat CordovaLog:E *:S doesn't return anuthing.
adb logcat CordovaLog:D *:S
return just
I/CordovaLog(16156): Changing log level to DEBUG(3)
If I run adb logcat there are too much info on the screen, can't find anything.
Android 4.4.4, Moto G.
Gonna try with iOS.

Thanks for your efforts, I'll try with my 4.4.4 Samsung!
Perhaps you can catch something when attached to usb, press share, and immediately after the crash stop the output. That may show a stacktrace.

When I tried to share using Inbox:
W/ContextImpl( 1230): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1252 android.content.ContextWrapper.sendBroadcast:365 com.motorola.motocare.util.TriggerHelper$TriggerBuilder.send:76 com.motorola.motocare.internal.frameworkevents.PauseResumeTrigger.handleFrameworkEvent:53 com.motorola.motocare.internal.frameworkevents.FwEventMonitor$FrameworkListener.processFrameworkEvent:114
E/cutils  (  262): Failed to mkdirat(/storage/sdcard1/Android): Read-only file system
W/Vold    (  262): Returning OperationFailed - no handler for errno 30
W/ContextImpl(26439): Failed to ensure directory: /storage/sdcard1/Android/data/com.google.android.apps.inbox/cache
W/dalvikvm(26439): VFY: unable to resolve virtual method 1774: Landroid/app/Activity;.finishAfterTransition ()V
W/dalvikvm(26439): Unable to resolve superclass of Lchm; (797)
W/dalvikvm(26439): Link of class 'Lchm;' failed
E/dalvikvm(26439): Could not find class 'chm', referenced from method com.google.android.apps.bigtop.widgets.BigTopToolbar.
W/dalvikvm(26439): VFY: unable to resolve new-instance 2162 (Lchm;) in Lcom/google/android/apps/bigtop/widgets/BigTopToolbar;
then I tried with Twitter:
E/cutils  (  262): Failed to mkdirat(/storage/sdcard1/Android): Read-only file system
W/Vold    (  262): Returning OperationFailed - no handler for errno 30
W/ContextImpl(28822): Failed to ensure directory: /storage/sdcard1/Android/data/com.twitter.android/cache
In both cases appear "Failed to ensure directory".
In my device, I have (and never had) any SD Card. Only the internal storage, 8GB total, 1GB free now.

I can't crash mine that way, but can you try adding this to your AndroidManifest.xml?
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

If there already is an entry like this please remove it:
<uses-permission android:maxSdkVersion="18" android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

It's already with this settings.
Gonna make other tests, maybe with other devices.

@philecom @sabithasharma the problem you were facing probably had to do with a bug in the callback handler of the plugin.
@chrisbenseler I fixed a bug 19 days ago - you should have that fix in your codebase, but please doublecheck that for me: check that you have the bits in green, not the bits in red here, it's in SocialSharing.java.

Yes, it already has this fix.

Thank you @EddyVerbruggen. It is working now for me.
Thank you again.

Hi guys,
I’m facing the same issue with Samsung Note 2 and Android version 4.4.2
I use ionic with cordova:
"ionic",  "version": "1.2.4"
"cordova-plugin-x-socialsharing",  "version": "5.0.10"
"ngCordova",  "version": "v0.1.12-alpha"

Installed platforms: android 4.0.2
In my AndroidManifest.xml:
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="22" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

The code is:
$cordovaSocialSharing.shareViaFacebookWithPasteMessageHint("Gigi Reveals Her Winning Recipe", "http://i.imgur.com/Jg7RXoT.jpg", null);
The strange is that there are no errors in the console. The post is successful but it does not go in success callback. Just restart the application.

+1

I've updated android platform to 5.1.1 and cordova to 6.0.0, but it's the same.

Hi All,
 This can be fixed by starting the intent in a new task i.e new window

draft.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //this was added to start
the intent in a new window
draft.setType("application/octet-stream");
cordova.startActivityForResult(plugin, Intent.createChooser(draft,
"Choose Email App"), ACTIVITY_CODE_SENDVIAEMAIL);
With Regards,
Sabitha Sharma L
On Thu, Mar 3, 2016 at 11:16 PM, Deyan Vatsov<EMAIL_ADDRESS>wrote:

I've updated android platform to 5.1.1 and cordova to 6.0.0, but it's the
same.
—
Reply to this email directly or view it on GitHub
https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin/issues/300#issuecomment-191881898
.

--
With Regards
Sabitha Sharma L

@Vatsov can I have your project? Just tried again with my Android 4.4.2 device and all fine. I'm NOT using Ionic, just a vanilla Cordova CLI app with the plugin added and your shareViaFacebookWithPasteMessageHint code. Perhaps you can try that as well? It's just a matter of:
cordova create test
cd test
cordova platform add android
cordova plugin add cordova-plugin-x-socialsharing
cordova prepare android

And adding a button to /platforms/android/assets/www/index.html which triggers a function:
  function shareViaFb() {
    window.plugins.socialsharing.shareViaFacebookWithPasteMessageHint(
      "Gigi Reveals Her Winning Recipe",
      "http://i.imgur.com/Jg7RXoT.jpg",
      null
    );
  }

Tried in an Ionic app as well - no issues. Perhaps it's the launchMode in AndroidManifest.xml that's different? Anyway, I'll test that Intent.FLAG_ACTIVITY_NEW_TASK a bit and if it doesn't break anything I'll add it.

Thanks,
I'm gonna try with clean ionic installation only with cordova-plugin-x-socialsharing

Please do, and also without the ngCordova wrapper, so plain old windows.plugins.socialsharing..

OK,
So I created a github repo https://github.com/Vatsov/cleanShare with fresh new ionic
and branch without the ngCordova wrapper https://github.com/Vatsov/cleanShare/tree/without_ngCordova_wrapper
And in both cases the problem continues to appear

@Vatsov As I can't reproduce I had to guess a few things - can you please test from the master branch of this repo? Should give you version 5.0.12-dev.

Hi Eddy,
I've updated social plugin but without effect.
I think the problem was one option that was checked on my phone.

Do not keep activities. Destroy every activity as soon as the user leaves it.

After I've unchecked it social plugin started working very smoothly.
I'm not sure if the reason was this option or a combination with your change, but thanks a lot for your help!

Oh man, that option is part of the Developer Options, right? It's better left untouched, thanks for reporting that back I would have never guessed it.


[ENH] Change Rocket transformers base class to BaseCollectionTransformer

Changes the base class of all transformers in transformations/collection/rocket/

you know I hate scope creep, but ... it might be the right PR to refactor rocket transform directory to convolution_based. If not here, I will do it soon. Also maybe test the exclusion minirocket? I did not realise it was excluded

see update to https://github.com/aeon-toolkit/aeon/issues/347

Done, refactoring is a pain as always 🙂


Can't import Web3 lib in Expo Snack

Summary
Hi everyone,
I love Expo and already used it for several projects. For the most recent one, I am using the web3 lib and it works great. My only problem is that when I am trying to create a Snack to share an issue the web3 lib dependency (with Expo v44.0.0) is never added (cf below):
Someone would know why?
I also posted this on the forum and the issue was confirmed: https://forums.expo.dev/t/web3-lib-in-expo-snack/63313
Snack example: https://snack.expo.dev/@iboxgithub/demomagic
What platform(s) does this occur on?
Android, iOS
SDK Version
44
Reproducible demo or steps to reproduce from a blank project
Just add
"web3": "^1.7.1"
in package.json

Hi @byCedric, thanks for the detailed answer!
Would you then recommend that I open an issue with the React Native team? Or do you see any other way to fix this?


Add marker at first place of string mismatch

Addresses #6881
Summary

This is not final rather just a step I think, want to get your feedback and move accordingly.

Regarding the diffLocation() there might be a little extra performance usage here with the ^ location output I couldn't find the other code that generates it below.
Regarding the spaces discussion in #6881 I think if the spaces are shown with marker it should be obvious to 9/10 people that there is a difference there can add another section that shows if first character that is different is a xA0, em-dash, x20, dash, or similar then output symbol hex as well (Expected: 1x20234)

super cool idea, thanks for the PR! we've talked about substring diff highlighting before (#4619), but this might be a start that somewhat allows the feature? I'll defer to @pedrottimark here 🙂

Love the idea. Thanks for the PR.
The failing tests show a bug or two:
      "<dim>expect(</><red>received</><dim>).</>toBe<dim>(</><green>expected</><dim>) // Object.is equality</>

      Expected: <green>"without trailing space"</>
      Received: <red>"with<inverse> </></>
    - <red>trailing space"</>"
    + <red>trailing space"</>
    +                ^"

      at Object.toThrowErrorMatchingSnapshot (packages/expect/src/__tests__/matchers.test.js:225:43)

@Jujhar Thank you for exploring a creative solution to this frustrating problem. It motivated us to implement a goal waiting more than a year to highlight substring differences in #8448


add siat

Shenzhen Institutes of Advanced Technology，Chinese Academy of Sciences

@whoszus Pull request merged.
Please notice that free educational subscription for JetBrains tools is for students and teachers only, and is valid for using the tools for educational purpose only. If employees of this Institute who are not students, nor teachers, also need a license for JetBrains tools, they are eligible for an academic discount for the tools. They can get the discount by email to<EMAIL_ADDRESS>Thank you!


Migrations in Wrong Order

The migrations are running in an order that prevents foreign constraints from being honored. Needs to be map_regions, marker_types and then markers.

Order changed with file renames #c075746


MacCormack cause [control_flow_graph.cpp:dead_store_elimination@464] Identical load elimination failed.

I guess it's probably because macCormack solver use the Semi-lagrangian as sub-solver

Solved by upgrading Taichi to 0.6.32


Boundary attribute question re: wedge elements & mfem::Mesh::MakeCartesian3D

I am not a meshing or FEM expert, but in looking at how boundary element attributes are assigned in 3D Cartesian meshes for wedge elements, the line https://github.com/mfem/mfem/blob/722d8fa57531e748f75ff39cbd59d48f0a211390/mesh/mesh.cpp#L3221 looked sort of strange to me. Should that line read AddBdrQuadAsTriangles(ind, 6); instead, or is there something I'm missing?

Good catch, @goxberry! Looks like a copy-and-paste error to me. I can make a small bug fix PR to resolve this.

Addressed in #2851


Deflake metrics expiration test

Running with docker --cpus=1 this passes 100% of the time now; before it failed 100% of the time. Not the best fix.. but it seems to work
Fixes https://github.com/istio/istio/issues/17182

@howardjohn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-new-install-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-new-install-k8s-tests

integ-mixer-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-mixer-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-new-install-k8s-tests

integ-mixer-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-mixer-k8s-tests

integ-security-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-security-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@howardjohn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-mixer-k8s-tests

integ-security-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-security-k8s-tests

integ-new-install-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-new-install-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-security-k8s-tests

integ-new-install-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-new-install-k8s-tests

integ-mixer-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-mixer-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@howardjohn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
f15c0529be14a2670cf2517a6d527dcddd07a902
link
/test integ-mixer-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


GeneralizedTime does not support UTC encoding to DER with 3 milliseconds digits

The GeneralizedTime encoding does not support either UTC mode (with a 'Z')  if the microseconds are present and raises an error if the datetime results in more than 2 millisecond digits (e.g. xxxxxx12.345Z). Extending the maxlength field of the GeneralizedTimeEncoder to 20 or changing the compare operator to <= allows for UTC time with milliseconds to be properly supported.
To replicate:
from pyasn1.type.useful import GeneralizedTime
from datetime import datetime
from pyasn1.code.der import encode

encoder.encode(GeneralizedTime.fromDateTime(datetime(year=2019,month=1,day=1,hour=1,minute=1,second=1,microsecond=1)))
encoder.encode(GeneralizedTime.fromDateTime(datetime(year=2019,month=1,day=1,hour=1,minute=1,second=1,microsecond=123456)))

First result:
b'\x18\x1120190101010101.0Z'

Second:
raise error.PyAsn1Error('Length constraint violated: %r' % value)
pyasn1.error.PyAsn1Error: Length constraint violated: <GeneralizedTime value object at 0x0 tagSet <TagSet object at 0x0 tags 0:0:24> encoding us-ascii payload [20190101010101.900Z]>

Can be altered by either changing in https://github.com/etingof/pyasn1/blob/66d329acaaf204eff63ae595fd7d6f56cd530c72/pyasn1/codec/cer/encoder.py#L75
    maxLength = 20

or by changing the compare operator to <=
https://github.com/etingof/pyasn1/blob/66d329acaaf204eff63ae595fd7d6f56cd530c72/pyasn1/codec/cer/encoder.py#L54
if not self.minLength < len(octets) <= self.maxLength:

and
https://github.com/etingof/pyasn1/blob/66d329acaaf204eff63ae595fd7d6f56cd530c72/pyasn1/codec/cer/encoder.py#L80
    maxLength = 13

While most certificates require either UTCTime (till 2050) or GeneralizedTime without seconds (rfc 5280 and updates), some implementations require 3 digit millisecond comparability (e.g. timestamping protocols) which is now strangely only supports 2.

Thank you for raising this!
Hopefully, https://github.com/etingof/pyasn1/pull/164 fixes the problem. Your insights are very welcome!


Create monitoring for Apple code signing quota

We should be tracking our quota use so we can attribute failures to capacity issues. This is follow up from 3.16 as there were some issues we suspect were related to quota issues.
We should update Cocoon to query the Notary API, and write the metrics to BigQuery. This is similar to what GitHubRateLimit does.

From Triage: follow up with @itsjustkevin


use async-await for Promises

This might be somewhat subjective... but aside from syntax sugar for dealing with Promises... there are a few other benefits of using async-await over new Promise() and .then

async functions always return a Promise (regardless of returning a value or not) - no need to remember to call resolve()
you can use traditional try-catch-throw for dealing with and reporting errors - no need to remember to call reject()
for longer chains, you don't end up with a Christmas tree-shaped nesting and makes the code easier to reason about.

Here is an example from a code snippet taken from the auth module
current
  [REGISTER] (context, credentials) {
    return new Promise((resolve, reject) => {
      ApiService
        .post('users', {user: credentials})
        .then(({data}) => {
          context.commit(SET_AUTH, data.user)
          resolve(data)
        })
        .catch(({response}) => {
          context.commit(SET_ERROR, response.data.errors)
        })
    })

future
  async [REGISTER] (context, credentials) {
    try {
      const data = await ApiService
        .post('users', {user: credentials})

      context.commit(SET_AUTH, data.user)
      return data;
    } catch ({response}) {
      context.commit(SET_ERROR, response.data.errors)
    }
  },

@techiedod Yes this would be an excellant improvement.

@morficus awesome ! And would you mind having a look at this issue : https://github.com/gothinkster/vue-realworld-example-app/issues/190 . I cannot find the meaning of using async/await  in it.


mysql: Change version to 8.0 GA

What problem does this PR solve?
This bumps the advertised version from 5.7 to 8.0.  I am not sure if we want to merge it now, or wait for sha256_caching support to be added.
Part of 8.0 project
What is changed and how it works?
The advertised MySQL server version.  Nothing else.
Check List
Tests

Unit test

Code changes

Minimal

Side effects

Breaking backward compatibility

Related changes

Need to be included in the release note (server now advertises MySQL 8.0)

LGTM
ServerVersion is just a prompt for MySQL client, the actual handshake protocol is not affected by this change.

I'm going to close this PR. It makes more sense to revisit after CTEs have been added.


Header and Footer Link Tweaks

I think the "Join Slack" is important enough for a header menu item.  HG is as much the Slack as it is promoting all the events.
In the footer, I think we satisfy the CFG hat-tip in #2 by having a "Contribute" link in the footer. That way anybody who wants to help can learn more at GitHub and they would see the project is supported by Code For Greenville based on the GitHub repo.

Closes #2

Close #2

I completely agree that "Join Slack" and other important services to us should be more prominent. Like links to the repo, slack, api documentation, and meetup group links. I try to keep action items off the main nav. It just does not feel right to add them up there. We could create a services section on the homepage and about us page so that we can talk about more of our services and pad out the content on the homepage more so it made more information at a glance.
I would like to present something like this, don't judge me on mockup abilities, it's rough but the main content could be on the top, then we have a services section, and eventually maybe a contact us form or whatever...
This is not how it would look. I'm not 100% sure we'd do to make it look good but the ideas there.

I'm hip to the action buttons, but I think we could put them above the copy.  People are likely more interested in interacting with the site than reading our clever content anyway.
I'm open to ideas on the navigation, but I think the Slack community is important enough that we want it visible on most, if not all pages.  Do we have an example of a site that has a nice mix of navigation links and "call to action" links or buttons in the header?  I suspect mobile responsiveness will come into play too if we replaced the Slack nav links.

I suppose we could just have a nav link called "Slack" or "Connect" and then have a dedicated page with info on how to join or login.
That would be

Also, I meant to say that the HackGreenville Meetup group is likely too confusing to make a prominent item. It's only used by a few groups who didn't want to pay for a Meetup account and is a small fraction of the actual meetup groups and events we promote on the Orgs, Events, and Calendar page.

Once Chapter is stable I'm expecting Code For Greenville can host and maintain a HackGreenville subdomain to offer free event registration to local meetup chapters who don't want to continue using meetup.com.
That would be an eventual tool / service to promote under the HG brand, but for now we don't have anything worth promoting on that side.


Generate pdf file then upload it to the server

Hello!
Is it possible to generate the pdf file then upload the file to the file server?
Thank you

yes, just use set the :enable-download="false" then use @beforeDownload event, there you can manually generate your pdf and get the pdf blob file, once you get that you can now upload that file to the server
sample how to use to here:
https://github.com/kempsteven/vue-html2pdf#sample-use-case-of-beforedownload

Hi @kempsteven thank you for replying.
I will give it a try.
Have a great day!
Stay safe

Hi @kempsteven
Sorry to bother you again, I have tried the code you have mention and tried uploading the pdf, but when i try downloading the saved file from the server it was unrecognizable
Here is a snippet of my first code
`async pdfBeforeDownloaded({ html2pdf, options, pdfContent }) {
await html2pdf().set(options).from(pdfContent).toPdf().get('pdf').then((pdf) => {
      const formData = new FormData();
      formData.append("pdf", pdf);
      formData.append("_method", "PUT");
      const token = this.$store.state.user.token;
      const config = {
        headers: {
          "Content-type": "multipart/form-data",
          Authorization: `Bearer ${token}`
        }
      };

      axios
        .post(`${process.env.API_ROUTE}/api/test"`, formData, config)`

I also tried converting the pdf blob file as file and upload it thru axios but still no avail
`async pdfBeforeDownloaded({ html2pdf, options, pdfContent }) {
await html2pdf().set(options).from(pdfContent).toPdf().get('pdf').then((pdf) => {
      console.log('pdf.type', pdf.type)
      const file = new File([pdf], 'proposal.pdf', { lastModified: new Date().getTime(), type: pdf.type })

      const formData = new FormData();
      formData.append("file", file);
      formData.append("_method", "PUT");
      const token = this.$store.state.user.token;
      const config = {
        headers: {
          "Content-type": "multipart/form-data",
          Authorization: `Bearer ${token}`
        }
      };`

On the php backend, i tried directly saving the file directory to the file storage  or base64_decode($request->file('file') before saving it to the file storage
Did i miss something?
Thank you

Hello @kempsteven
I think i know the problem is.  I change formData.append("pdf", pdf); to formData.append("file", btoa(pdf.output()));
It is working now.,
Thank you so much!

Hi @kempsteven
sorry again to bother you,
It was working but when I tried pssing htmlToPdfOptions, it coudnt upload the file with error ### has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Thank you


Current status

Hi, do you mind if I ask if this package is usable on OS X & Linux as is ?
Still planning to put it into the Unix package ?
Thanks

yes, it's working on Linux and OSX. No plan to try to get it upstream for now, I'm not even sure unix has any active maintainer.

Thanks


Clarity needed on how to sign up for dev plan

The documentation on the dev plan needs more clarity on the requirements to sign up. The docs mention that you need a 'work or school email account', and provides a link to the 30 day plan with an FAQ than mentions Office 365 IDs.
So does 'work or school' mean any work or school? Or just a work or school email from a work or school that uses Office 365?
It also seems you can activate this using a M365 developer account which is free, based on this video, but I don't see this option mentioned in the docs.
The particular scenario that has lead to this request for more clarification is for students wanting to learn PowerApps for use at hackathons. Based off the docs, all students should be able to sign up for the developer plan as they will all have a school email address, but as far as I understand in reality only those students with a school email address that uses Office 365 will be able to sign up. To docs need to be clearer, and show the path for students without an Office 365 account.

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

ID: aa958930-fb79-62a4-3f46-c1adf9f8349a
Version Independent ID: e2f2d173-ca57-6f83-a2d6-ab381846e5b6
Content: Sign up for Power Apps Developer Plan - Power Apps
Content Source: powerapps-docs/maker/developer-plan.md
Service: powerapps
Sub-service: canvas-developer
GitHub Login: @evanmlew
Microsoft Alias: evlew

Thank you for reaching out and your feedback. Content has been updated, and the changes will be visible soon.


[SPARK-45056][PYTHON][SS][CONNECT][TESTS][FOLLOW-UP] Remove listeners only when they exists

What changes were proposed in this pull request?
This PR removes the listeners only when they exist in the tests.
Why are the changes needed?
See https://github.com/apache/spark/pull/42779#discussion_r1325551540
Does this PR introduce any user-facing change?
No, test-only.
How was this patch tested?
Manually ran the tests.
Was this patch authored or co-authored using generative AI tooling?
No

Merged to master.


added some comments

I don't know how necessary this is, comments should explain how the code works, not what the code is.

Thank you for opening the pull request, but as Lenny said, it's a bit redundant.


Better rs485 bus support

Description:
Confguration for RS485 mode, only if serial adapter has support for it.
Optional delay before master does a query, this help to handle RS485 bus when serial adapter don't have built in RS485 mode.
Related issue (if applicable): fixes #9451
Pull request in home-assistant.github.io with documentation (if applicable): home-assistant/home-assistant.github.io#4140
Example entry for configuration.yaml (if applicable):
# Example configuration.yaml entry for a TCP connection
modbus:
  type: tcp
  host: IP_ADDRESS
  port: 2020
  timeout: 4
  delay_between_queries: 100

# Example configuration.yaml entry for a serial connection
modbus:
  type: serial
  method: rtu
  port: /dev/ttyUSB0
  baudrate: 9600
  stopbits: 1
  bytesize: 8
  parity: N
  timeout: 4
  delay_between_queries: 100

# Example configuration.yaml entry for a rs485 connection
modbus:
  type: serial
  method: rs485
  port: /dev/ttyUSB0
  baudrate: 9600
  stopbits: 1
  bytesize: 8
  parity: N
  timeout: 4
  delay_between_queries: 100
  delay_before_tx: 10
  delay_before_rx: 10
  rts_level_for_tx: 1
  rts_level_for_rx: 0

Checklist:
If user exposed functionality or configuration variables are added/changed:

[x] Documentation added/updated in home-assistant.github.io

If the code communicates with devices, web services, or third-party tools:

[x] Local tests with tox run successfully. Your PR cannot be merged unless tests pass

This PR seems to have gone stale. Closing it. You can reopen it when you're ready to finish it.


pull request for e2e test at 01/15/2017 22:26:14

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Investigate applying the Diataxis model to the documentation layout

I find "ALL MODULES" > xclim and "USER API" > API sections redundant.
In the long run, it could be interesting to divide the documentations into categories to group doc pages that belong together. It could be categories such as the ones proposed in diataxis. It's really tedious to do on the existing doc, though.
Originally posted by @bzah in https://github.com/Ouranosinc/xclim/pull/1308#pullrequestreview-1325906901

To do: Divide this into sub-categories.

So do we want to apply this approach to notebooks too? I would say that current notebooks are currently much more oriented towards "practical steps". But perhaps this comes quite naturally with the notebook format.


Implement VRF

Implement VRF feature.
This will remove any ambiguity and make all object VRF aware.
At the present time rtnetlink is not completely ready, but this is WIP here

For VRF support, we'll need to check out RFC 8529 to understand how VRFs should be handled from a management perspective. Also, yang2-rs will need to be extended to expose libyang's YANG schema mount functionality.
Aside from that, the protocol implementations should require little to no changes in order to support VRFs. All protocols already support multiple instances, which are well isolated one from another. We'll just need the ability to bind protocol instances to VRFs as specified in the configuration.

At the present time rtnetlink is not completely ready, but this is WIP here

Thanks for the heads-up. I see that the PR was merged already. It's good to know rtnetlink won't need further changes when it comes to adding VRF support in Holo.


⚠ Panoramas has degraded performance

In 0bb05fc, Panoramas ($SITE_URL_PANORAMAS) experienced degraded performance:

HTTP code: 200
Response time: 5802 ms

Resolved: Panoramas performance has improved in b576226 after 7 minutes.


Need to run as root/sudo

When running as the local user, the script fails to create /var/run/ftp-sync.pid and the log files associated with the sync.
I'm required to run the script as a sudo user.
Any workarounds?

Indeed there is an issue. I have to add a whoami directive to check the current user.
For the moment you can edit the ftp-sync.conf file and change PID_FILE="/var/run/ftp-sync.pid" to PID_FILE="/var/run/ftp-sync/ftp-sync.pid"
Then enter the following commands :
mkdir /var/run/ftp-sync
mkdir /var/log/ftp-sync
chown ${USER:=$(/usr/bin/id -run)}:$USER /var/run/ftp-sync /var/log/ftp-sync

I have added messages to check permission issue in 3.2 release.
But i have to make an installer to allow non root users to use the script.


Question about the build directory

From the tsconfig.json we can see that output directory is set to dist(https://github.com/ckb-js/kuai/blob/develop/packages/samples/mvp-dapp/tsconfig.json#L6), which is listed in .gitignore. While there's an empty directory named build(https://github.com/ckb-js/kuai/tree/develop/packages/samples/mvp-dapp/build) reserved in samples/mvp-dapp. My question is that what's the difference between build and dist, and why is dist ignored in git(https://github.com/ckb-js/kuai/blob/develop/packages/samples/mvp-dapp/.gitignore#L161) but build is not.
Same question to the libs empty directory(https://github.com/ckb-js/kuai/tree/develop/packages/samples/mvp-dapp/libs)

Has been removed by https://github.com/ckb-js/kuai/pull/147


Updating boilerplate to add ignore files for codecov

What type of PR is this?
(coverage)
What this PR does / why we need it?
This PR updates boilerplate to incorporate changes regarding the files to be ignored for codecov. This change will give a better view of actual code coverage.

/lgtm


I would like to be able to open .sql files and have it automatically connect to an instance

Issue Type: Feature Request
In Explorer, I can view a folder full of .sql files, which is nice.
However, for each file I open, I have to manually connect to an instance.
As a presenter, I often have a series of scripts that I want to step through for an instance. Having a script automatically connect to the last instance I connected to makes this process much more smooth: currently the only way I've found to do this in Ops Studio requires a bit of mousing around and it looks a bit sloppy.
In SSMS, when "File, Open" is used to open a new file, it will automatically connect to the "active" instance, so I believe an automatic connection behavior for files opened in Explorer would feel natural to most users moving over.
SQL Operations Studio version: sqlops 0.31.4 (e026ab85a72c190cc4ccc834503aa9fe36dd6407, 2018-07-18T01:53:50.812Z)
OS version: Darwin x64 17.7.0

@LitKnd thanks for the suggestion!  I believe this is a duplicate of https://github.com/Microsoft/sqlopsstudio/issues/641.  Please reactive if this is a different issue.


Make use of canonical url and permalink

Canonical url vs permalink
Canonical url is your choice of url for a resource used for search engines, so se will display that url in the search result https://support.google.com/webmasters/answer/139066?hl=en
Permalink: will redirect you to the canonical url, it exists so that tools that depend on it will not break if canonical url is ever updated.  For example, if someone posts a comment using Disqus, after that you update your post slug, the link on Disqus to your post would break if it was given the canonical url, but will be ok if it was given permalink.
Generally it's not a good idea to update slug or url format after posts are published, but if you have to do it, 1. do it ASAP, 2. SE will take some time to re-rank but it should come back.
Canonical url
On the single post page but no the front index page, there should be these two tags,
<meta property="og:url" content="@canonicalUrl" />
<link rel="canonical" href="@canonicalUrl" />

https://support.google.com/webmasters/answer/139066?hl=en
https://webmasters.googleblog.com/2013/04/5-common-mistakes-with-relcanonical.html
https://webmasters.googleblog.com/2011/09/pagination-with-relnext-and-relprev.html
Permalink
This is also used for sharing, for example on SO https://stackoverflow.com/a/46970412/32240 will redirect you to the particular answer.
I should figure out what key words to use:
BlogPost: post (https://www.fanray.com/post/1)
Page: page (https://www.fanray.com/page/1)

As a result of having canonical url and permalink, I also shook up view models, still need to further look into

RelativeLink
EditLink
Canonical url
Permalink

as they exist in separate classes.


Documentation Features

Here's a laundry list of nice-to-haves and bug fixes for the Foundation documentation. Some of them are only things ZURB can implement.

[ ] Search bar: show aliases if a result result is an alias and not a direct result
[ ] Link to Building Blocks at the bottom of each component's page
[ ] Create a Foundation Forum from the sidebar nav of a page
[ ] Sass Reference: split large variable lists into sub-lists (such as forms and typography)
[ ] Sass Reference: identify the CSS export mixin (such as @include foundation-grid-classes())
[ ] JavaScript Reference: use @since and @deprecated in HTML template
[ ] JavaScript Reference: better examples for running plugin methods
[ ] Compatibility: make the table prettier
[ ] Sometimes anchor generation gets weird with special characters
[ ] Anchor icons overlap with nav, and sometimes it's hard to keep the icon visible when hovering over it
[x] Organize the contents of docs/assets/img to be more sensible ab8f7d315e923b9b673d37b55d450cbe95159570

A few notes about how the documentation is built:

Supercollider generates the pages from the Markdown files.
foundation-docs includes the Sass for the documentation, and the Handlebars helpers needed to render the template, as well as the template itself.

Got feedback? Send it our way :)

It was suggested on Twitter
Jonathan Eyler-Werve
@EylerWerve

It would be helpful update would be to link every Foundation 5 page to nearest-neighbor in F6 docs.

Hi folks! I would love to see a once page reference that I can use while building pages that gives me all the class declarations available in Foundation. Templates fill this need, but a page like this one http://cheat.markdunkley.com/ would be quite welcome.
As a user story:
As a person building sites with Foundation, I want to know if center or centered is the correct class declaration so I can build fast without reading through the full documentation.

Agreed! A cheat sheet would be nice. For Foundation 5 one of our awesome community members stepped up on this https://sudheerdev.github.io/Foundation5CheatSheet/

Noticed the other day that code snippets in the documentation have messed up indentation. First line is correct but the rest of the lines are indented too much. See screenshot:

@Jonathan-Eyler-Werve We wanted to add this to our search bar, but a lot of classes are dynamically-generated which makes it difficult.
A page reference would work also.

I'm seeing the need for concrete example on how to call MotionUI setting for the plugins that have them. Example: http://foundation.zurb.com/forum/posts/38202-f6-orbit-slider

Javascript reference:  We should have default as well as or instead of example

JS examples should use data options instead of JS settings in page, defaults should be in the table reference.

:+1:

@kball Change from "example" to "default" implemented via zurb/foundation-docs@2c75efd314c3d2fe014d5a650781196768d3ccac

on typography page, strong example doesn't actually show strong

@kball Fixed via de9b43260906f13c5c7d8c2ee9569283b16a1ef9

Explanation of what sizes 'stack' in table works for.

@kball Change to .stack class docs implemented via http://86c600d5bc254fd24b8647d81322d05c0352daf8/


[Storage] [DataMovement] [Tests] Core Resume mocked tests

Resolves https://github.com/Azure/azure-sdk-for-net/issues/47247
This PR is the Resume portion of the Pause & Resume mocked tests

API change check
API changes are not detected in this pull request.


Add a command to show list of supported commands

Currently, when a user enters an unsupported command, a toast message is displayed suggesting the commands was invalid.
I have added a new command called /commands that allows users to quickly refer to the list of commands instead of the general /help command.

The list of commands is also displayed when an invalid command is entered instead of showing the toast message.
This fixes #356

Just pushed some changes. I've restored the toast message for Unknown Command and now it also displays what command was typed. The list of commands is also displayed.

I don't think we need to toast here, how about we show the error inline in the commands help message reply?

I don't think we need to toast here, how about we show the error inline in the commands help message reply?

Yes, I think that makes more sense.

@tarasglek Just pushed the changes.
Any invalid command now shows up inline with the commands help text.
Here are the scenarios:
1. /typo

2. /commands

3. /commands query-some-command

I am now allowing the CommandsHelpCommand to accept arguments which we can later use to implement a suggest closest command feature based on @mingming-ma's suggestion.
My only concern is if I could make my approach simpler.

I think this is good for me

@mingming-ma @rjwignar If you guys also think this is good, should I merge?

lgtm

Thanks for reviewing everyone!


Preliminary macOS 14 (Sonoma) support

TODO:

[x] Check CLT Clang version
[x] Update versions in pkgconfig for latest SDK
[ ] Actually runtime test macOS 14

Apart from a timeout with copy-xattr.swift, which I'm not really convinced is a macOS 14 issue (Swift executable is a Xcode stub, and those can be really slow sometimes anyway), all tests seem to pass.

Will tag a new release as brew install on macOS 14 is very broken without these changes.

Just to note here explicitly: brew typecheck will almost certainly not work. We've now reached the end of the road what is supported on Apple's Ruby 2.6. If anyone needs brew typecheck on Sonoma, please use HOMEBREW_FORCE_VENDOR_RUBY=1 for now.
All other gems should still work for now (if you're upgrading an existing install with Sorbet already installed, you may need to run brew install-bundler-gems --groups= to uninstall it if an auto-bundle install is trying to update it).


[1.20.1] Config file does not recognize "minecraft:player" as an entity.

Can't pull cart manually.

Astikor Carts had this option AFAIK.

Astikor Carts had this option AFAIK.

Yea, but since this is a direct port of the mod I would have assumed that NiftyCarts would also recognize "minecraft:player" like AstikorCarts does.

Players can now pull carts in 3.0.1+1.20.1


Fix type narrowing issue in match-statement

Purpose
Fixes #31587

@KavinduZoysa Shall we send this fix to master and also 2201.0.x if applicable


Publish a new version to crates.io

Can you please publish a new version, to crates.io, in order to allow using the latest fixes?

For reference here, I've created this milestone to ideally roll a 0.4 release: https://github.com/jni-rs/jni-sys/milestone/1
In particular I've keen to land https://github.com/jni-rs/jni-sys/pull/28 and https://github.com/jni-rs/jni-sys/pull/23
and for the jni crate hopefully land: https://github.com/jni-rs/jni-rs/pull/478


Move 'ant-schematron' to separate repository

ant-schematron should be moved to a separate repository under the Schematron organisation.
Subversion lets you checkout part of a project -- e.g., just the ant-schematron part -- but Git doesn't.  OTOH, Git, like Subversion, lets you have external submodules.
It would be cleaner if ant-schematron was in a separate repository that, if necessary, included the XSLT implementation as a submodule.
https://github.com/webb/schematron-impl, for example, is a fork of this repository where everything other than the XSLT implementation has been removed.  This repository should end up like that.

Yes, good idea

Done, but the project needs a build file, or similar, for building the jar.  See Schematron/ant-schematron#1.


add speechpy for speech processing and recognition

Ahoi hoi everyone,
I just stumbled upon SpeechPy for speech processing and recognition. Should I/we evaluate the overlap with current pliers functionality and if suitable integrate it?
Best, Peer

Sure, feel free. One minor concern is that while there are a lot of stars, actual usage seems to be pretty minimal (few issues/PRs). I'm not in a position to say if this is because the package is so well-written there are no bugs, or if the features it extracts are just not super useful...

 On my first glance it looks quite similar to the librosa set

Thanks for the replies!
Yeah, that was exactly my point regarding the overlap between SpeechPy and already supported functionality. I'll have a look and update asap.

I checked the available features and based on my understanding I would say that there's great overlap with the features already supported in pliers. Hence, if no one objects and/or thinks a certain feature would be suitable/needed to be integrated, I'm going to close this for now.


Complete lang fr.js

At the moment french translation is incomplete, leading to undefined strings displayed to end-users.
Please find attached a completed one : fr.txt
Edit: I'll open a PR tomorrow instead ...
I would be glad if you could commit it soon, since I'm using it in Drupal setups and can't find a way to override the external file
Thank you !

I Dont understand.

My bad you're right. The reason of my mistake is I blindly followed the Drupal module documentation to install the library, instead of checking version. And it refers to the previous tag, 1.17.8 which is missing some translation keys.
Closing with apologies. Thanks for your reactivity !


Pollen Count?

Is there a way to show Pollen count on wttr? Either via a flag or on the main url? I've not been able to find one in the docs or code so this may well be a feature request.
Pollen counts are useful to those who suffer with hey fever and other respiratory illnesses, so would be useful to many.
Here's an example of the data required, it mainly comes down to one or two characters to render, L, M, H, VH:
https://www.metoffice.gov.uk/weather/warnings-and-advice/seasonal-advice/pollen-forecast#?date=2022-06-08&region=nw

I don't think this is possible with the current WeatherOnline data source , would be a good one to bring in once other data sources are introduced.

It possible to combine different source together; there are a lot of other interesting sources that would be great to add.
Would you like to have it for the one-line output format, or for the main view (v1), or for v2 too?


tokenID verification error

id_token.verify_oauth2_token(auth_token,requests.Request()) throws an exception "Token used too early,<PHONE_NUMBER> <<PHONE_NUMBER>" while verifying a token

Hi @narendrachettri,
I think you're running into https://github.com/googleapis/google-auth-library-python/issues/889.
verify_oauth2_token accepts a clock_skew_in_seconds.
For example, this would allow using tokens that are up to 10 seconds early.
id_token.verify_oauth2_token(auth_token, requests.Request(), clock_skew_in_seconds=10)

https://github.com/googleapis/google-auth-library-python/blob/87cd2455aca96ac3fbc4a8b2f8e4c0bba568a70b/google/oauth2/id_token.py#L143-L161


PROF-8535: Add line+column information for anonymous functions

What does this PR do?:
Changes the way anonymous functions are named by the profiler. Instead of being named (anonymous) we'll name them e.g.(anonymous@L135C5) to indicate the line number and column where they are defined in their source file.
Motivation:
Customers are repeatedly either confused by seeing anonymous functions, or expect them to be named. Anonymous functions are perfectly normal in JavaScript; inline callbacks and lambdas are both anonymous functions. One customer mentioned they're "naming their lambdas" which meant code such as f = () => { … } – this is not really naming them and V8 considers this still to be an anonymous function.
Additional Notes:

How to test the change?:
Unit tests were adapted for this change.
For Datadog employees:

[ ] If this PR touches code that signs or publishes builds or packages, or handles
credentials of any kind, I've requested a review from @DataDog/security-design-and-guidance.
[x] This PR doesn't touch any of that.

If one day we decide to enable line numbers, this might lead to weird results (different function names referring to the same function).

If one day we decide to enable line numbers, this might lead to weird results (different function names referring to the same function).

You're right about that. How about we remove support for that?


[PE-D][Tester E] Broken hyperlink in assign command documentation

The hyperlink to the appendix does not work when clicked.

Labels: type.DocumentationBug severity.Low
original: xenosf/ped#7

Completed in #243


Update concepts-storage.md

corrected read write once mode for persistent storage. In the documentation it is given that a single pod in the node can access storage which is not fully correct.
Multiple pods running on the same node can also access storage medium mounted with read write once mode.More info here https://kubernetes.io/docs/concepts/storage/persistent-volumes/

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

#label:"aq-pr-triaged"

@MGoedtel
Can you review this old PR and determine whether it needs to be closed or merged?
IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.

@vaisakh007 - Thanks for creating this PR and pointing out the discrepancy with the official statement from Kubernetes docs about ReadWriteOnce behavior. Because this statement is specific to Azure Disks, I've asked the PG to confirm whether it is correct or not.

@vaisakh007 - I've discussed with someone from the PG. Indeed this statement isn't accurate; however it should instead state that while multiple pods cannot write to the same volume, the volume can still be read from. Because of the time from when this PR was created till now, it is out of sync with the main branch and you'll need to address that before editing your proposed change. Alternatively, I can file a bug and get this corrected next week.

@MGoedtel - No response from @vaisakh007.  Do you want to file a bug and close this PR?

@ShannonLeavitt - Yes, I've filed a bug so we can close this PR. I'll spin up a new PR and address next week. Thanks!

@ShannonLeavitt - Actually, checked and realized I had addressed it earlier this sprint.


[zh] update content/zh-cn/examples/pods/security/hello-apparmor.yaml

Update AppArmor configuration to:
content/zh-cn/examples/pods/security/hello-apparmor.yaml
Prior to Kubernetes v1.30, AppArmor was specified through annotations. After Kubernetes v1.30, it needs to be configured in securityContext. The original hello-apparmor.yaml file still uses annotations to configure AppArmor, which has been updated to use securityContext configuration.

/lgtm


Create PKGBUILD file

To distribute this on the AUR we would need a PKGBUILD file, this would help with distribution to those with access to the AUR on all platforms (including the PinePhone)

Done, thanks to Cafce25
https://aur.archlinux.org/packages/toggle_cool_cow_says_type/


implement force destroy for GitHub cluster destroy

As a Kubefirst user, I want to rely on kubefirst cluster destroy command when I request to delete all the provisioned resources Kubefirst installed in my cluster.
background: As I Kubefirst user, I don't know the Kubefirst internal details, and don't want to research what is the correct flag to delete the Kubefirst provisioned resources. I would like to have a smooth experience using the cluster destroy command, and don't want to debug to know what I should do next, cluster destroy should do the job for me.

AC1: this update is for GitHub only
AC2: destroy command uses current terraform approach to destroy resources, if it fails, force destroy the resource
AC3: no flags are necessary to destroy resources

extras (if possible):

AC4: the implementation doesn't use shell OS calls
AC5: the implementation doesn't use sleep times (to force wait)

related: https://github.com/kubefirst/kubefirst/issues/395
Please check: https://github.com/kubefirst/kubefirst/issues/852

done at https://github.com/kubefirst/kubefirst/pull/964/files

destroy is still failing in this case:

Given the more recent roadmap, this is no longer required.


Can't curl to service host ip:port from container by IPVS

Steps to reproduce the issue:

Init swarm (node a)
docker service create --name nginx --publish 8081:80 nginx
Exec bash into the container
curl -v host-ip:8081
->  fails,

Describe the results you received:
Can curl to the container IP from itself, but can't curl to the IPVS ...
Describe the results you expected:
Should be able to curl to the IP ...
Additional information you deem important (e.g. issue happens only occasionally):
100% reproducible. What am I missing?

What environment are you running on?
Can you provide all the details requested from the issue template? (output of docker info, and docker version)

It's a normal Docker 1.12.1 on Ubuntu 16.04.

@yank1 Can you please provide the full details?

root@dhp-ov-dev-2:~# docker info
Containers: 52
Running: 3
Paused: 0
Stopped: 49
Images: 26
Server Version: 1.12.0
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 227
Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: host null overlay bridge macvlan
Swarm: pending
NodeID: 0ef22zeau5pms76jx53np2m73
Is Manager: true
ClusterID: 0eiomtfpbxxrtvlso0g6gac0m
Managers: 1
Nodes: 1
Orchestration:
Task History Retention Limit: 10
Raft:
Snapshot interval: 10000
Heartbeat tick: 1
Election tick: 3
Dispatcher:
Heartbeat period: 5 seconds
CA configuration:
Expiry duration: 3 months
Node Address: <IP_ADDRESS>
Runtimes: runc
Default Runtime: runc
Security Options: apparmor
Kernel Version: 4.4.0-22-generic
Operating System: Ubuntu 14.04 LTS
OSType: linux
Architecture: x86_64
CPUs: 6
Total Memory: 3.859 GiB
Name: dhp-ov-dev-2
ID: BFAY:CNHQ:IRMR:PP4B:UVDM:XCYD:AAE7:AYZH:Q3JQ:EPHG:TSIN:IAWI
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Insecure Registries:
<IP_ADDRESS>/0
<IP_ADDRESS>/8

root@dhp-ov-dev-2:/# docker info
Containers: 1
Running: 1
Paused: 0
Stopped: 0
Images: 1
Server Version: 1.12.1
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 5
Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: host overlay bridge null
Swarm: active
NodeID: aepauk62yds5jkzb12vxe4k6n
Is Manager: true
ClusterID: 1apvcv9mhiq0i5oyjfyfmq350
Managers: 1
Nodes: 1
Orchestration:
Task History Retention Limit: 5
Raft:
Snapshot Interval: 10000
Heartbeat Tick: 1
Election Tick: 3
Dispatcher:
Heartbeat Period: 5 seconds
CA Configuration:
Expiry Duration: 3 months
Node Address: <IP_ADDRESS>
Runtimes: runc
Default Runtime: runc
Security Options: apparmor
Kernel Version: 4.4.0-22-generic
Operating System: Ubuntu 14.04 LTS
OSType: linux
Architecture: x86_64
CPUs: 6
Total Memory: 3.859 GiB
Name: dhp-ov-dev-2
ID: GBON:XLJA:4GCU:TWSD:VDBB:U66Z:CUEQ:J27N:KBTG:GYVC:E7XD:MNTV
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Insecure Registries:
<IP_ADDRESS>/8

root@dhp-ov-dev-2:/# docker version
Client:
Version:      1.12.1
API version:  1.24
Go version:   go1.6.3
Git commit:   23cf638
Built:        Thu Aug 18 05:22:43 2016
OS/Arch:      linux/amd64
Server:
Version:      1.12.1
API version:  1.24
Go version:   go1.6.3
Git commit:   23cf638
Built:        Thu Aug 18 05:22:43 2016
OS/Arch:      linux/amd64

@yank1 This is a known issue. There is a PR in libnetwork already open to fix it: https://github.com/docker/libnetwork/pull/1398

Thanks

duplicate of https://github.com/docker/docker/issues/25463, and it's on the 1.12.2 milestone

I'll close this one, as we have https://github.com/docker/docker/issues/25463 for tracking


Services: first build: abs added

{package} {version} {:snowflake:}
Destination channel: {Snowflake | defaults}
Links

{ticket_number}
Upstream repository
Upstream changelog/diff
Relevant dependency PRs:

...

Explanation of changes:

...

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_6cmf38rhr_/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:44: invalid_url: https://opentelemetry-python.readthedocs.io : Not reachable: 403
===== Final Report: =====
0 Errors and 1 Warning were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_32u2zq37u7/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:15: avoid_noarch: noarch: python packages should be avoided
clone/recipe/meta.yaml:45: missing_description: The recipe is missing a description

===== ERRORS =====

clone/recipe/meta.yaml:45: missing_documentation: The recipe is missing a doc_url or doc_source_url
clone/recipe/meta.yaml:45: missing_dev_url: The recipe is missing a dev_url
clone/recipe/meta.yaml:45: missing_license_family: The recipe is missing the about/license_family key.
===== Final Report: =====
3 Errors and 2 Warnings were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_641w1w8bk9/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:45: missing_description: The recipe is missing a description
clone/recipe/meta.yaml:15: avoid_noarch: noarch: python packages should be avoided

===== ERRORS =====

clone/recipe/meta.yaml:45: missing_dev_url: The recipe is missing a dev_url
clone/recipe/meta.yaml:45: missing_documentation: The recipe is missing a doc_url or doc_source_url
clone/recipe/meta.yaml:45: missing_license_family: The recipe is missing the about/license_family key.
===== Final Report: =====
3 Errors and 2 Warnings were found

Linter check found the following problems:
Traceback (most recent call last):
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/run.py", line 208, in main
    return_code, report = execute_linter(
                          ^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/run.py", line 180, in execute_linter
    result = linter.lint(recipes, subdir, variant_config_files, exclusive_config_files, fix_flag)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 728, in lint
    msgs = self.lint_file(
           ^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 834, in lint_file
    self.lint_recipe(
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 894, in lint_recipe
    res = self.check_instances[check].run(recipe, fix)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 294, in run
    self.check_recipe(recipe)
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/check_syntax.py", line 35, in check_recipe
    ro_parser: Final[RecipeParser] = recipe.get_read_only_parser()
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/percy/render/recipe.py", line 675, in get_read_only_parser
    return RecipeParser("\n".join(self.meta_yaml))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/percy/parser/recipe_parser.py", line 372, in __init__
    parent = node_stack[-1]
             ~~~~~~~~~~^^^^
IndexError: list index out of range
ERROR conda.cli.main_run:execute(125): conda run conda-lint /tmp/abs_d8gx_ri8f3/clone failed. (See above for error)

Linter check found the following problems:
Traceback (most recent call last):
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/run.py", line 208, in main
    return_code, report = execute_linter(
                          ^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/run.py", line 180, in execute_linter
    result = linter.lint(recipes, subdir, variant_config_files, exclusive_config_files, fix_flag)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 728, in lint
    msgs = self.lint_file(
           ^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 834, in lint_file
    self.lint_recipe(
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 894, in lint_recipe
    res = self.check_instances[check].run(recipe, fix)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 294, in run
    self.check_recipe(recipe)
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/check_syntax.py", line 35, in check_recipe
    ro_parser: Final[RecipeParser] = recipe.get_read_only_parser()
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/percy/render/recipe.py", line 675, in get_read_only_parser
    return RecipeParser("\n".join(self.meta_yaml))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/percy/parser/recipe_parser.py", line 372, in __init__
    parent = node_stack[-1]
             ~~~~~~~~~~^^^^
IndexError: list index out of range
ERROR conda.cli.main_run:execute(125): conda run conda-lint /tmp/abs_599qc2zyha/clone failed. (See above for error)

Linter check found the following problems:
Traceback (most recent call last):
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/run.py", line 208, in main
    return_code, report = execute_linter(
                          ^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/run.py", line 180, in execute_linter
    result = linter.lint(recipes, subdir, variant_config_files, exclusive_config_files, fix_flag)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 728, in lint
    msgs = self.lint_file(
           ^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 834, in lint_file
    self.lint_recipe(
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 894, in lint_recipe
    res = self.check_instances[check].run(recipe, fix)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 294, in run
    self.check_recipe(recipe)
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/check_syntax.py", line 35, in check_recipe
    ro_parser: Final[RecipeParser] = recipe.get_read_only_parser()
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/percy/render/recipe.py", line 675, in get_read_only_parser
    return RecipeParser("\n".join(self.meta_yaml))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/percy/parser/recipe_parser.py", line 372, in __init__
    parent = node_stack[-1]
             ~~~~~~~~~~^^^^
IndexError: list index out of range
ERROR conda.cli.main_run:execute(125): conda run conda-lint /tmp/abs_19kn6vao_p/clone failed. (See above for error)

Linter check found the following problems:
Traceback (most recent call last):
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/run.py", line 208, in main
    return_code, report = execute_linter(
                          ^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/run.py", line 180, in execute_linter
    result = linter.lint(recipes, subdir, variant_config_files, exclusive_config_files, fix_flag)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 728, in lint
    msgs = self.lint_file(
           ^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 834, in lint_file
    self.lint_recipe(
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 894, in lint_recipe
    res = self.check_instances[check].run(recipe, fix)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/__init__.py", line 294, in run
    self.check_recipe(recipe)
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/anaconda_linter/lint/check_syntax.py", line 35, in check_recipe
    ro_parser: Final[RecipeParser] = recipe.get_read_only_parser()
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/percy/render/recipe.py", line 675, in get_read_only_parser
    return RecipeParser("\n".join(self.meta_yaml))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/linter/lib/python3.12/site-packages/percy/parser/recipe_parser.py", line 372, in __init__
    parent = node_stack[-1]
             ~~~~~~~~~~^^^^
IndexError: list index out of range
ERROR conda.cli.main_run:execute(125): conda run conda-lint /tmp/abs_2aiflxhyjr/clone failed. (See above for error)

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_79frmcvu6u/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:47: missing_description: The recipe is missing a description
clone/recipe/meta.yaml:15: avoid_noarch: noarch: python packages should be avoided

===== ERRORS =====

clone/recipe/meta.yaml:47: missing_license_family: The recipe is missing the about/license_family key.
clone/recipe/meta.yaml:47: missing_documentation: The recipe is missing a doc_url or doc_source_url
===== Final Report: =====
2 Errors and 2 Warnings were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_eao3d4xpbl/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:15: avoid_noarch: noarch: python packages should be avoided
clone/recipe/meta.yaml:47: missing_description: The recipe is missing a description

===== ERRORS =====

clone/recipe/meta.yaml:47: missing_documentation: The recipe is missing a doc_url or doc_source_url
clone/recipe/meta.yaml:47: missing_license_family: The recipe is missing the about/license_family key.
===== Final Report: =====
2 Errors and 2 Warnings were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_e0siqejat6/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:15: avoid_noarch: noarch: python packages should be avoided
clone/recipe/meta.yaml:47: missing_description: The recipe is missing a description

===== ERRORS =====

clone/recipe/meta.yaml:47: missing_license_family: The recipe is missing the about/license_family key.
clone/recipe/meta.yaml:47: missing_documentation: The recipe is missing a doc_url or doc_source_url
===== Final Report: =====
2 Errors and 2 Warnings were found