VPN Connection Failing

I'm using your config in a docker container with Traefikv2 but TLS negotiation is failing....any ideas?
2020-04-23T19:45:06.254712145Z 2020-04-23 19:45:06.254574 [info] VPN_ENABLED defined as 'yes'
2020-04-23T19:45:06.292974932Z 2020-04-23 19:45:06.292825 [info] OpenVPN config file (ovpn extension) is located at /config/openvpn/gw2.atl3.slickvpn.com.ovpn
2020-04-23T19:45:06.302457705Z dos2unix: converting file /config/openvpn/gw2.atl3.slickvpn.com.ovpn to Unix format...
2020-04-23T19:45:06.333174151Z 2020-04-23 19:45:06.333035 [info] VPN remote line defined as 'gw2.atl3.slickvpn.com 443 udp'
2020-04-23T19:45:06.365964775Z 2020-04-23 19:45:06.365792 [info] VPN_REMOTE defined as 'gw2.atl3.slickvpn.com'
2020-04-23T19:45:06.402278610Z 2020-04-23 19:45:06.402117 [info] VPN_PORT defined as '443'
2020-04-23T19:45:06.433175632Z 2020-04-23 19:45:06.432991 [info] VPN_PROTOCOL defined as 'udp'
2020-04-23T19:45:06.463870158Z 2020-04-23 19:45:06.463738 [info] VPN_DEVICE_TYPE defined as 'tun0'
2020-04-23T19:45:06.496232271Z 2020-04-23 19:45:06.496066 [info] LAN_NETWORK defined as '<IP_ADDRESS>/24'
2020-04-23T19:45:06.528128873Z 2020-04-23 19:45:06.527995 [info] NAME_SERVERS defined as '<IP_ADDRESS>,<IP_ADDRESS>'
2020-04-23T19:45:06.556027443Z 2020-04-23 19:45:06.555843 [info] VPN_OPTIONS not defined (via -e VPN_OPTIONS)
2020-04-23T19:45:06.588867347Z 2020-04-23 19:45:06.588724 [info] Adding <IP_ADDRESS> to resolv.conf
2020-04-23T19:45:06.622103973Z 2020-04-23 19:45:06.621919 [info] Adding <IP_ADDRESS> to resolv.conf
2020-04-23T19:45:06.652088612Z 2020-04-23 19:45:06.651924 [info] Starting OpenVPN...
2020-04-23T19:45:06.658278851Z Thu Apr 23 19:45:06 2020 WARNING: file 'credentials.conf' is group or others accessible
2020-04-23T19:45:06.658301200Z Thu Apr 23 19:45:06 2020 OpenVPN 2.4.4 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on May 14 2019
2020-04-23T19:45:06.658308860Z Thu Apr 23 19:45:06 2020 library versions: OpenSSL 1.1.1  11 Sep 2018, LZO 2.08
2020-04-23T19:45:06.697777343Z Thu Apr 23 19:45:06 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]<IP_ADDRESS>:443
2020-04-23T19:45:06.697809522Z Thu Apr 23 19:45:06 2020 UDP link local: (not bound)
2020-04-23T19:45:06.697820232Z Thu Apr 23 19:45:06 2020 UDP link remote: [AF_INET]<IP_ADDRESS>:443
2020-04-23T19:45:06.725962878Z Thu Apr 23 19:45:06 2020 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
2020-04-23T19:46:06.926533682Z Thu Apr 23 19:46:06 2020 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
2020-04-23T19:46:06.926581072Z Thu Apr 23 19:46:06 2020 TLS Error: TLS handshake failed
2020-04-23T19:46:06.926702262Z Thu Apr 23 19:46:06 2020 SIGUSR1[soft,tls-error] received, process restarting
2020-04-23T19:46:11.950206067Z Thu Apr 23 19:46:11 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]<IP_ADDRESS>:443
2020-04-23T19:46:11.950246707Z Thu Apr 23 19:46:11 2020 UDP link local: (not bound)
2020-04-23T19:46:11.950259947Z Thu Apr 23 19:46:11 2020 UDP link remote: [AF_INET]<IP_ADDRESS>:443
2020-04-23T19:47:12.022754477Z Thu Apr 23 19:47:12 2020 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
2020-04-23T19:47:12.022897867Z Thu Apr 23 19:47:12 2020 TLS Error: TLS handshake failed
2020-04-23T19:47:12.023041387Z Thu Apr 23 19:47:12 2020 SIGUSR1[soft,tls-error] received, process restarting
2020-04-23T19:47:17.049793600Z Thu Apr 23 19:47:17 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]<IP_ADDRESS>:443
2020-04-23T19:47:17.049870641Z Thu Apr 23 19:47:17 2020 UDP link local: (not bound)
2020-04-23T19:47:17.049886881Z Thu Apr 23 19:47:17 2020 UDP link remote: [AF_INET]<IP_ADDRESS>:443

You're failing to connect to the VPN server, so I suspect the issue is either with the VPN_PORT or with your credentials.
I'm not familiar with SlickVPN, but have found other issues similar to yours which suggest trying to use port 8888 instead of 443, including their website from what I can tell. You can try changing the port from 443 to 8888 on the second line of your ovpn file (remote gw2.atl3.slickvpn.com 443 udp).
If it's not the port, you could also try using a credentials file by adding the file name to your ovpn (auth-user-pass credentials.conf), and then creating a file in the same directory ($USERDIR/docker/qbittorrent/openvpn/credentials.conf) with the contents:
username
password

interestingly enough the 2nd line of the ovpn file is blank, it has nothing.

When I grabbed the ovpn file for gw2.atl3 I'm seeing this at the top of the file:
# host/port of vpn server
remote gw2.atl3.slickvpn.com 443 udp

it must have been a bad grab, grabbed a new file and now it works!


[FEATURE] Add a grapheme splitter

Overview
We need to find an appropriate library that we could use for grapheme splitting. If a suitable could not be found, such have to be implemented.
Acceptance Criteria

[ ] It have to be a standalone class
[ ] It have to be able to accept a string and split it to an array of grapheme clusters (one string each)

Does it need to count the graphemes as well or are we just going to count the array? Looking at the
message-segment-calculator library, they seem to be using the countGraphemes function of the library as well.
It looks like the only real choice for php in this matter is php's internal grapheme functions:
https://www.php.net/manual/en/ref.intl.grapheme.php

This appears to work:
<?php
<?php

//$string = 'Z̴̙̤̞͉͚̯̞̠͍͑ͫ̓ͪ̂ͫ̽A̴̵̜̰͔ͫ͗͢L̠ͨͧͩ͘G̴̻͈͍͔̹̑͗̎̅͛́Ǫ̵̹̻̝̳͂̌̌͘!͖̬̰̙̗̿̋ͥͥ̂ͣ̐́́͜͞';
//$string = 'अनुच्छेद';
$string = '🌷🎁💩😜👍🏳🌈';

$length = grapheme_strlen($string);

$array = [];
for ($i=0; $i<=$length-1; $i++) {
	$array[] = grapheme_substr($string, $i, 1);
}

var_dump($length);
var_dump($array);

Does it need to count the graphemes as well or are we just going to count the array? Looking at the message-segment-calculator library, they seem to be using the countGraphemes function of the library as well.
It looks like the only real choice for php in this matter is php's internal grapheme functions:
https://www.php.net/manual/en/ref.intl.grapheme.php

I cannot seem to find the usage. Would you please send me a reference for the countGraphemes function uses? Anyway, it would be always useful to have graphemes counting function too.

You're correct. I can't find it either. I must have been confused.
However, it appears php actually has methods for handling this built into it, which is rather surprising. I think implementing both functions shouldn't be a problem using functions from the snippet above.


trace-define-pass should use current-error-port

As of right now trace-define-pass output the trace in stdout, it should use stderr.

trace-define-pass just uses trace-let, so it prints out wherever your host system's trace output goes (where the host system is Chez Scheme, Ikarus, or Vicare in this case).

Thanks


Loss of system date information can cause itsdangerous crash.

Flask and itsdangerous crash in an embedded system.
Traceback (most recent call last):
  File "/opt/local/lib/python3.5/site-packages/Flask-0.12.1-py3.5.egg/flask/app.py", line 1982, in wsgi_app
	response = self.full_dispatch_request()
  File "/opt/local/lib/python3.5/site-packages/Flask-0.12.1-py3.5.egg/flask/app.py", line 1615, in full_dispatch_request
	return self.finalize_request(rv)
  File "/opt/local/lib/python3.5/site-packages/Flask-0.12.1-py3.5.egg/flask/app.py", line 1632, in finalize_request
	response = self.process_response(response)
  File "/opt/local/lib/python3.5/site-packages/Flask-0.12.1-py3.5.egg/flask/app.py", line 1858, in process_response
	self.save_session(ctx.session, response)
  File "/opt/local/lib/python3.5/site-packages/Flask-0.12.1-py3.5.egg/flask/app.py", line 924, in save_session
	return self.session_interface.save_session(self, session, response)
  File "/opt/local/lib/python3.5/site-packages/Flask-0.12.1-py3.5.egg/flask/sessions.py", line 363, in save_session
	val = self.get_signing_serializer(app).dumps(dict(session))
  File "/opt/local/lib/python3.5/site-packages/itsdangerous-0.24-py3.5.egg/itsdangerous.py", line 566, in dumps
	rv = self.make_signer(salt).sign(payload)
  File "/opt/local/lib/python3.5/site-packages/itsdangerous-0.24-py3.5.egg/itsdangerous.py", line 409, in sign
	timestamp = base64_encode(int_to_bytes(self.get_timestamp()))
  File "/opt/local/lib/python3.5/site-packages/itsdangerous-0.24-py3.5.egg/itsdangerous.py", line 220, in int_to_bytes
	assert num >= 0
AssertionError

I think this is because date is lost in this system
date
zynq> date
Fri Aug 14 19:25:11 UTC 2009

which causes
def get_timestamp(self):
    """Returns the current timestamp.  This implementation returns the
    seconds since 1/1/2011.  The function must return an integer.
    """
    return int(time.time() - EPOCH)

returns some wrong information (time < 0) and
def int_to_bytes(num):
    assert num >= 0
    rv = []
    while num:
        rv.append(int_to_byte(num & 0xff))
        num >>= 8
    return b''.join(reversed(rv))

assert num >= 0 (which is < 0) failed.
After doing,
zynq> date -s "2018-08-21 15:15:00"
Tue Aug 21 15:15:00 UTC 2018

everything works.

We can provide a nicer error message but it'sdangerous should still throw an exception

thanks, it's much better.

Fixed in #46, which removes the epoch adjustment.


SIMD acceleration and other performance improvements.

 CPU's with SIMD acceleration can encode compositions faster.

I am going to make some benchmarks with and without these SIMD accelerations to see if they help. After that I'll merge.

It seems that these changes make the program 6.6x faster than without them. If we also count the previous migration to SIMD instructions in the renderer, the converter is now 53.57x faster than before.
Screenshot of the run without any changes (I didn't want to wait to see how bad it was):

Run without optimizations to arrays.


Adjust error-handling for submitting tx in Wallet FFI module

Not sure if there has been a breaking change with Nami, but submission failures apparently don't always throw an exception but instead return an object describing the failure. For example:
{
    "code": 2,
    "info": "Wallet could not send the tx.",
    "message": "..."
}

So we need to check for this as well as catching actual exceptions

This is then most likely a bug in Nami's.
Any erroneous call of submitTx should throw according to the implementation:
export const submitTx = async (tx) => {
  const network = await getNetwork();
  if (network[network.id + 'Submit']) {
    const result = await fetch(network[network.id + 'Submit'], {
      method: 'POST',
      headers: { 'Content-Type': 'application/cbor' },
      body: Buffer.from(tx, 'hex'),
    });
    if (result.ok) {
      return await result.json();
    }
    throw APIError.InvalidRequest;
  }
  const result = await blockfrostRequest(
    `/tx/submit`,
    { 'Content-Type': 'application/cbor' },
    Buffer.from(tx, 'hex')
  );
  if (result.error) {
    if (result.status_code === 400)
      throw { ...TxSendError.Failure, message: result.message };
    else if (result.status_code === 500) throw APIError.InternalError;
    else if (result.status_code === 429) throw TxSendError.Refused;
    else if (result.status_code === 425) throw ERROR.fullMempool;
    else throw APIError.InvalidRequest;
  }
  return result;
};

Could you explain a little how to reproduce the issue and what exactly needs to be done?

@adamczykm @ngua I think the problem may be that you are not actually catching the error there. If nami.submitTx(txHex) returns a promise, it won't be caught even if it is a rejected promise.
Something like this should work:
exports._submitTxNami = (txHex) => (nami) => () => {
  return nami.submitTx(txHex)
    .catch(e => {
      console.log(e);
      throw(e);
    });
};

or something like this:
exports._submitTxNami = (txHex) => (nami) => async () => {
  try {
    return await nami.submitTx(txHex);
  } catch (e) {
      console.log(e);
      throw(e);
  }
};

I've made it so that it is caught and rethrown as a string
https://github.com/Plutonomicon/cardano-browser-tx/pull/227
Let me know what is the definition of done here.


Use libavcodec's VA-API to accelerate H.264 decoding.

Leverages libavcodec's hw decode support to provide VA-API based hardware decoding. Depends on the local build of ffmpeg having hardware VA-API support compiled in and the appropriate libva drivers and libraries installed.
I've confirmed that ffmpeg is built with VA-API support in Ubuntu Trusty onwards and Fedora 26 onwards. I've gated this code behind an optional WITH_VAAPI build flag in any case, so it's easy to build with the feature turned off.
I would appreciate guidance on how to determine the precise AV_VERSION macro guards, I'm not familiar with that aspect of developing against ffmpeg libraries and so I thought that rather than doing it wrong I'd ask for help and get it right the first time :)
I thought that this code would get me AVC420 decoding as well, but for some reason it doesn't look like the codepath is followed with AVC420. Really not sure why that is.

@freerdp-bot give it a test please

@SriRamanujam I used to have the same kind of patch lying around and it was working fine with AVC420. IIRC you should try with Fedora 25 to get a version that needs more code to work.
Apart from that the code looks good to me (as it's almost the same as I had)

That looks good to me, especially as I had the same piece of code lying around.
About macros at least 56.60.100 (as installed on the FreeRDP CI) doesn't have access to libavutils/hwcontext.h.
You could make them work but these older versions requires a lot of tricks and ffmpeg internal interactions to use VAAPI, so limiting the version would be nice.
In my tests, AVC420 was working fine too with VAAPI.

@hardening understood, I'll take another look at the AVC420 codepath and make sure I wasn't mistaken.
I'll also dig through ffmpeg and see what version introduced libavutils/hwcontext.h and gate the code accordingly.

Okay, I've guarded hwcontext.h behind the version of libavutil that initially introduced VA-API support (https://github.com/FFmpeg/FFmpeg/commit/551c6775abb5e0ad34c26d7e23bc6fbbe8ccc9d4) and folded the code back into the existing loop structures.

@freerdp-bot test

@SriRamanujam Nice job btw

Additional comment: May be a good idea to provide a fallback in case no VAAPI device is available during runtime

@akallabeth  AFAICT the fallback is already implemented

@akallabeth
Yeah, seems like the hw_device_ctx field was only added last year (https://github.com/FFmpeg/FFmpeg/commit/c1a5fca06f75cc0e7b9b2808fecaa0c1b424da50). WIthout it, life becomes more difficult as you have to manually set up the VA-API context and libav frames: https://lists.ffmpeg.org/pipermail/ffmpeg-user/2016-December/034530.html. The struct vaapi_context mentioned in the mailing list has been deprecated since 2016 as well (https://github.com/FFmpeg/FFmpeg/commit/2a4a8653b6ca77ed1c9cec1336c55d291ef545b6). I'll take a stab at setting it up this way and see how it goes.
It might be easier, though, to gate the VA-API feature behind the libavcodec version that introduces hw_device_ctx and call it done. Let me know if that's okay.
Regarding find_feature: should I extend FindFFmpeg or create a separate FindVAAPI that checks the libavcodec/libavutil versions specifically for VA-API support? I'm not sure how to check whether libavcodec was built with VA-API support through find_feature, if you have any ideas on that, I'd appreciate it.

Further update: I managed to get the decoding going using hw_frames_ctx without having to manually create a struct vaapi_context, so that's good. Those changes are pushed, @akallabeth please let me know if it builds and works for you now.
The only outstanding item now is the find_feature changes, which I'll start looking into now.

@freerdp-bot test
@SriRamanujam Working quite fine here now, also when hardware acceleration is not available.

@freerdp-bot come on, test!

@SriRamanujam very nice! Thanks.


DatePlaceholders get only replaced in Action

I was trying to use [currentdate:...] in <arguments>. Because it wasn't working I looked into the code and saw that ReplaceDatePlaceholders is only located in Action.
Would it be possible to replace DatePlaceholders like the other placeholders (e.g. in ReplacePlaceholders)?

I can look at adding the date replacements in the other sections, as well.

The DatePlaceholders is now available for all changes that can use the path placeholder action. The latest release is available with this change.

Just tried the new version. Works great. Thank you very much!


add at_functional_tests

@kalluriramkumar does this need to be moved to PR11 or will it close by tomorrow?

@ksanty: This is merged. This can be closed.

@ksanty: This is merged. This can be closed.

Will do.  Thanks @kalluriramkumar.


Investigate log rotating for Bee logs

The log rotating mechanism for the Bee seems to glitch out sometimes. We should maybe consider change the lib that implements this feature.

After stopping Bee and restarting it again the logs seem to work correctly.


Galley permits Virtual Service with invalid Envoy header manipulation config

Bug description
We hit an issue today (in 1.3.6) where Galley permits a Virtual Service object that it probably should not have. The Virtual Service contained a header manipulation rule that set a header to a value containing a % character. When the config was pushed to Envoy it began throwing the following warning:
[2020-08-11 16:28:47.840][38][warning][config] [external/envoy/source/common/config/grpc_mux_subscription_impl.cc:81] gRPC config for type.googleapis.com/envoy.api.v2.RouteConfiguration rejected: Invalid header configuration. Un-terminated variable expression '*****'
Where * are characters after the % character. We believe this prevented Envoy proxies from accepting any more config updates as we began seeing 404's for new routes added to our ingress gateway. After removing the offending virtual service new configs seemed to make it to proxies.
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[X] User Experience
[ ] Developer Infrastructure
Expected behavior
Either Galley should reject Virtual Service objects containing unterminated variable expressions to prevent messing with Envoy. Or Pilot could escape any unterminated variable expressions before pushing the config. Is the former a better choice? It could probably easily done by adding an analyzer here: https://github.com/istio/istio/tree/master/galley/pkg/config/analysis/analyzers/virtualservice ?
Steps to reproduce the bug

Create a virtual service that contains a header manipulation rule with an unterminated variable expression, ex:

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: broken-vs
spec:
  hosts:
    - example.com
  gateways:
    - istio-system/istio-gateway
  http:
    - match:
        - uri:
            prefix: /some-path
      route:
        - destination:
            port:
              number: 80
            host: api
          headers:
            request:
              set:
                Some-Header: abcd%oijasodifj

Attempt to hit the new route and you should be faced with a 404
Add another virtual service with a route for some other path that doesn't contain a header manipulation rule, ex:

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: vs-should-work
spec:
  hosts:
    - example.com
  gateways:
    - istio-system/istio-gateway
  http:
    - match:
        - uri:
            prefix: /another-path
      route:
        - destination:
            port:
              number: 80
            host: api

Attempt to hit this new path and notice that you are faced with a 404 again

Version (include the output of istioctl version --remote and kubectl version and helm version if you used Helm)
istioctl version --remote
client version: 1.6.7
control plane version: 1.3.6

kubectl version
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.6", GitCommit:"dff82dc0de47299ab66c83c626e08b245ab19037", GitTreeState:"clean", BuildDate:"2020-07-15T23:30:39Z", GoVersion:"go1.14.4", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"14+", GitVersion:"v1.14.10-gke.42", GitCommit:"42bef28c2031a74fc68840fce56834ff7ea08518", GitTreeState:"clean", BuildDate:"2020-06-02T16:07:00Z", GoVersion:"go1.12.12b4", Compiler:"gc", Platform:"linux/amd64"}

How was Istio installed?
Istio was installed using the Helm chart.
Environment where bug was observed (cloud vendor, OS, etc)
Google Kubernetes Engine, Linux

@nrjpoddar @howardjohn I can easily write a webhook/istioctl validator to keep this from happening.  A few questions about how much to expose to the user.
I added area/networking because I was unclear if Istiod should defensively remove (or double) all % in set header operations, rather than blocking them at the webhook.
https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers.html#custom-request-response-headers says
If a literal percent symbol (%) is desired in a request/response header, it must be escaped by doubling it. For example, to emit a header with the value 100%, the custom header value in the Envoy configuration must be 100%%.

If I put something into the webhook to prevent % but not %%, won't we also lose the ability to use the special header expressions like %DOWNSTREAM_TLS_CIPHER% that I just learned about 5 minutes ago?
If we do this at the webhook validation, should we stop ALL %, all unpaired %%, or only an even number of % in headers?

won't we also lose the ability to use the special header expressions like %DOWNSTREAM_TLS_CIPHER% t

Yes lets not prevent that. Maybe we can just error on odd number of % - that case is always an error?

I'm open to writing the Galley analyzer for this, unless someone else is already working on this?

Allowing even number sounds like a reasonable approach, is this only applicable for header fields?


ErrorReportSubmitter should attach events and additionalInfo into the newly-created issue

As for now, no extra details (other than bug label) is attached to the issue... which results in unhelpful bug reports like https://github.com/VirtusLab/git-machete-intellij-plugin/issues/779 or https://github.com/VirtusLab/git-machete-intellij-plugin/issues/771

I did take a look at that GitMacheteErrorHandler and it seems that the simplest way to achieve it will be to manually construct issue body on our side. If I didn't miss anything there is no way to use parametrized templates on Github so we will have to do it on our own.
We can use the template we already have and add additional informations there, using some kind of templating engine or doing simple String:replace calls not to add additional dependencies for one relatively simple use case. We can also introduce separate template for that reason. Probably we will have to at least duplicate template file cause current one located in .github directory shouldn't be contained in built plugin, so we can't use it anyway.
@PawelLipski I suggest that for the initial version of this PR I will just duplicate existing template, extend it with new sections (for events and additionalInfo stuff) and fill it without additional dependencies (or do we have something with those capabilities already included?). Then we can take a look at that and see if it need some improvements. Is it fine to it?

Okay! feel free to proceed... if it comes to templating, the first thing that comes to my mid is the very simple and very awesome https://github.com/antkorwin/better-strings (Groovy/Kotlin/Scala-style interpolations in Java) that we do use in this project for quite a long time!

I have created PR with proposition of a solution. If you have any ideas for improvements I'm open.
Apart from adding additionalInfo and stacktrace from events to issue, I have also managed to pull information about used IDE and our plugin version so that user won't have to to it himself.
Generated url look like so (I have introduced intentional exception trowing in DiscoverAction to test this PR):
Create issue url
Only potential issue I can see is that there will be multiple issues at once (or with large stacktraces) so that this url will exceed length limit. We can try to set some limits but than we have ask ourselves questions do we want to keep it as it's defined in RFC7230 or keep it higher knowing that some older browsers may blow up.


refactor: cleanup

refactor: cleanup literal Display trait
refactor: move Error into prql_ast
refactor: move generic
refactor!: stop leaking chumsky prql_parser
refactor: move parser tests into own file

It all just refactoring, apart for improvements to the quoting code and a few new tests.

We need to do something about our string literals.
There is quite a lot of stuff supported, even though not strictly necessary. We have:

"-quoted strings,
'-quoted strings,
escapes, so we are able to express the following: "hello',
triple and n-ple quotes strings with either ' or ".

We can enforce stricter rules and provide nicer error messages, the need to be backward compatible is not that strong yet.
Also, our lexer does not conform to these ideas: https://matklad.github.io/2023/08/01/on-modularity-of-lexical-analysis.html

I think the thing to cut would be one of the ' or " representations. Is there anything else we could / should cut?

Also, our lexer does not conform to these ideas: https://matklad.github.io/2023/08/01/on-modularity-of-lexical-analysis.html

Yes I sent this around when working on the line wrapping character! Ours doesn't do this. But folks thought it was a worthwhile tradeoff...

Could we forbid multiline strings and triple quotes strings in favor of this syntax:
let a = "
    "this is the first line
    "  second line, indented with two spaces
  "  third line, also indented with two spaces

This is what zig does: https://ziglang.org/documentation/master/#String-Literals-and-Unicode-Code-Point-Literals.
The syntax that I propose differs in

usage of " instead of // and
the leading " on the first line, which is needed because our newlines have semantic meaning.

Interesting!
How would the string finish? Would we allow subsequent " on a line?

Multiline string extends a long as the first non-whitespace is ". I think this is how Zig does it?

Yes interesting. I'm very open to it.
Possibly we could add a character in front of the ", such as \, to make it a) definitely a multiline string and not an unclosed string, b) look less like a syntax error to folks who would otherwise see this as a syntax error...
let a = \"
    \"this is the first line
    \"  second line, indented with two spaces
  \"  third line, also indented with two spaces

(not sure this specific suggestion is great, even though I think the goals above are reasonable...

Hmm, these backslashes look strange... It feels like we are escaping the PRQL syntax :D
But your concern is a valid: it does look very much like an unclosed string.
We could get around that with this approach too:
let a = "an unclosed string
        -------------------
                        \__ error: unclosed string
Hint: if you want a multi-line string, use this:
      ```
      let a = "
        "an unclosed string
      ```

Yes totally, that'd be fine too.
Can we think about it for a couple of days? Thoughts from @PRQL/prql-team ?

Could we forbid multiline strings and triple quotes strings in favor of this syntax:

That example looks odd to me and I'm not understanding what advantage it brings?
I like this d-string proposal that @max-sixty posted to the #language-design channel on Discord recently.

Should we move the string quoting discussion to a separate issue?


docs: address feedback

Description
to address feedback from cspi-qe team
Issue ticket number and link
N/A
Type of change

[X] docs update

How Has This Been Tested?
N/A

/test all

/lgtm

/test ?

/test ?

/test ?

/test ?

/honk

/honk

/honk

/cat

/meow

/unhold
/approve


Don't close snackbar when prop.open is provided

My snackbar closed even though I provided the open prop.
But i only wanted the snackbar to close on actionClick not on request close.
But still it would close automatically even though my open was still true.
I had to stumb onRequestClose={(r) => {}} to make it work.

@joelharkes Thanks for your time, but we have nobody interested in maintaining v0.x. So, I'm closing for now.


Avoid loading full lodash

Re #10307

Size reduced by 0.52 MB. We also introduced a new eslint rule to prevent this from happening in the future.

Codecov Report

Merging #10308 (f3f99f6) into main (453f25d) will decrease coverage by 15%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           main   #10308     +/-   ##
=======================================
- Coverage    64%      48%    -16%
=======================================
  Files       204      204
  Lines      9295     9295
  Branches   1505     1505
=======================================
- Hits       5966     4548   -1418
- Misses     2857     4428   +1571
+ Partials    472      319    -153

Impacted Files
Coverage Δ

src/platform/common/refBool.ts
16% <0%> (-84%)
:arrow_down:

src/platform/activation/activationManager.ts
27% <0%> (-73%)
:arrow_down:

src/platform/export/exportToPythonPlain.ts
21% <0%> (-66%)
:arrow_down:

src/platform/progress/kernelProgressReporter.ts
19% <0%> (-62%)
:arrow_down:

src/platform/errors/types.ts
19% <0%> (-62%)
:arrow_down:

src/platform/api/kernelApi.ts
11% <0%> (-62%)
:arrow_down:

src/platform/common/activeEditorContext.ts
32% <0%> (-61%)
:arrow_down:

src/platform/common/application/documentManager.ts
25% <0%> (-58%)
:arrow_down:

src/platform/progress/statusProvider.ts
18% <0%> (-56%)
:arrow_down:

src/platform/common/platform/fileSystem.node.ts
29% <0%> (-51%)
:arrow_down:

... and 93 more


[Picuki] fix: item parsing

Fixes a problem with the entire content being a link.
Also truncate title.
They have referrer checks on their images. So clicking the
enclosure doesnt work. Will fix later.

Its not showing any pictures in the html preview. For current and for pr :/

Yeah it never did. Does include it as an enclosure.


Update version: Microsoft.Edge version 115.0.1901.188

Pull request has been created with WinGet Automation :rocket:
Microsoft Reviewers: codeflow:open?pullrequest=https://github.com/microsoft/winget-pkgs/pull/115152&drop=dogfoodAlpha

@wingetbot run


I could imagine that this is related to the brightnessThreshold change in https://github.com/badges/shields/commit/e8c78d55b3ffb767e7b6ff056cac77c149a979c9 maybe.
🔗 Link to the badge
https://img.shields.io/github/v/release/arduino/arduino-ide?color=white&label=&style=flat-square
💡 Possible Solution
No response

Fix PR open at https://github.com/badges/shields/pull/6939


[FIX] Infer input shape in sparse_dense_padded's alter_op if one does not exist

If there are multiple alter_ops in a model, the first alteration does not run type inference for the subsequent ones. In this case, we don't have the shape information, so we run the inferencer manually.
@kevinthesun @icemelon9
It seems like this is an issue we may run into more in the future. Maybe we should add a way to mark certain alter_op_layouts as needing type inference? Then the pass could re-run type inference when needed.

I've added a todo (and put your name on it @icemelon9, hope that's ok).

I've added a todo (and put your name on it @icemelon9, hope that's ok).

Thanks @tkonolige @ANSHUMAN87 @jwfromm

Thanks @tkonolige @ANSHUMAN87 @jwfromm


future version request

Recently a new GPU has published(3090), and it only support cuda 11.0 or higher vision, so only pytorch1.7 supports it. However, the latest mmdetection vision can only supports pytorch1.3-1.6. so when will the mmdetection can publish the version to support pytorch1.7(GPU 3090)

Hi @G-Naughty
It will be supported next month.

thank you very much


On iOS - JSON VALUE '' of type nsnull cannot be converted to a valid url

Environment
Run react-native info in your terminal and paste its contents here.
Description
Having this error on my first Reload on React Native app:
JSON value '' of type NSNull cannot be converted to a valid URL
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTConvert.m:114
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
ABI27_0_0RCTFBQuickPerformanceLoggerConfigureHooks
CFRunLoopRunSpecific
GSEventRunModal
UIApplicationMain
Exponent
Reproducible Demo

@hramos  how to do it ? I tried many times


Update maximum-capacity-specifications-for-sql-server.md

Fixing a missing comma

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

@DerekHackett Thank you for fixing this, we appreciate it!


"Umbraco" is a reserved prefix on Nuget

Which version of the template have you installed?
No response
Bug description
Consider using something more like "Our.Umbraco.PackageName" since the "Umbraco" prefix is reserved and the default configuration of the package starter will error out when publishing. I ran into that myself on my first package.

Hullo @ahwm,
Thanks for your feedback. And until a couple of months ago you would have been completely right. However Umbraco have now told nuget to allow anyone to release packages with the 'Umbraco.Community' prefix.
Anything else starting 'Umbraco' is still reserved.
So perhaps you can drop the 'Our' from your next package!

Ah. Hadn't heard that. Good to know!


Project files moved directly under spring-thymeleaf module folder

Hey @maibin - any idea what this is?


Memory keeps increasing when react >= V16.6.1

Grid Component uses react >=V16.6.1 to increase memory as it scrolls
What is the current behavior?
Memory keeps increasing
What is the expected behavior?
memory automatic collection
Which versions of React and react-virtualized, and which browser / OS are affected by this issue? Did this work in previous versions of react-virtualized?

Browser
Chrome v71

OS
OSX 10.14.2

React
16.6.1

React DOM
16.6.1

react-virtualized
9.21.0

update react-redux to 6.0.0 can fix it


Allow choosing floor when there is no address

Decided against this, since multi-floor buildings usually have an address, and we now have a better address chooser and a button to add a new address.

Okay, there are some countries where an address is not mandatory. So this still needs to be done.

Done in 0.2.


Common DTOs

Partially resolves https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/issues/11
Opted not to port the AuditableSchemaFilter just yet - wanted to do some refactoring and maybe add some tests around it. Can be added in a follow-up PR

[x] Related GitHub issue(s) linked in PR description
[x] Destination branch merged, built and tested with your changes
[x] Code formatted and follows best practices and patterns
[x] Code builds cleanly (no additional warnings or errors)
[-] Manually tested
[x] Automated tests are passing
[x] No decreases in automated test coverage
[x] Documentation updated (readme, docs, comments, etc.)
[-] Localization: No hard-coded error messages in code files (minimally in string constants)

Thanks @brandongregoryscott !

@all-contributors add @jstevenson for review

@all-contributors add @myty for review

@all-contributors add @snsavage for review

@all-contributors add @wintondeshong for review


Only add package if not defined.

The manage_package attribute exists to disable the package management, and the git module exists to manage the git package... what is your use case here? Feel free to reopen if you feel strongly about continuing this.


Relax lower bounds on tls

As described in #90, the lower bounds on tls in the latest version on Hackage is incompatible with the upper bounds on tls in http2-client-grpc. My minimal testing (stack build and stack test) suggests that this package is compatible with at least tls-1.8.0.
If possible, please publish a meta-revision with this update.
Thanks so much for all your hard work!

done optimistically (new revision with tls >= 1.8.0), i'll try to do some more verifications before merging (and might revert the revision)

Amazing, thanks!

Thanks for your contribution @domMayhew :+1: will have more look into more grpc libs over the next WE (proto-lens appears to be moving to 9.8, not so sure for proto3-wire).


[RFC] mavlink: introduce the mavlink protocol implementation

Known issues

This is not yet a full complaint implementation, there'are lots of API's yet to come;
The serial connection mechanism is not yet implemented;

Rationale
This patch introduce the basic infrasctructure and API's to control MAV
(Micro Air Vehicle) communication. More API's are to come.
Signed-off-by: Leandro Dorileo<EMAIL_ADDRESS>

new version coming...


add Deneb block contents signing

PR Description
Add blobs and KZG proofs to BlockContainer when signing it
Fixed Issue(s)

#7654
Documentation

[x] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[x] I thought about adding a changelog entry, and added one if I deemed necessary.

LGTM. Just can't see a test that covers signing a blinded block returns only the block.

Looking at it can just add the assertions at forDeneb_shouldCreateAndPublishBlockContents,forDeneb_shouldCreateAndPublishBlindedBlockandforDeneb_shouldUseBlockV3ToCreateAndPublishBlockContents` in BlockProductionDutyTest and that should cover it.

@StefanBratanov I just pushed the missing tests. Should be good now


Unpin curl etc for resource processor

Remove pinned version of curl (and other utils) in resource processor bundle to resolve the following error:
#12 3.904 Some packages could not be installed. This may mean that you have
#12 3.904 requested an impossible situation or if you are using the unstable
#12 3.904 distribution that some required packages have not yet been created
#12 3.904 or been moved out of Incoming.
#12 3.904 The following information may help to resolve the situation:
#12 3.904
#12 3.904 The following packages have unmet dependencies:
#12 3.971  curl : Depends: libcurl4 (= 7.64.0-4+deb10u2) but 7.64.0-4+deb10u3 is to be installed
#12 3.983 E: Unable to correct problems, you have held broken packages.

/test

/test


dxkv-async + reshade

Both show up as select-able, but not as a combination.

Update, if I pick DXVK reshade still loads. Not sure if this is intended functionality.


Make forms in popups and the likes submit on enter.

When you enter the new user flair and then hit the enter key, it doesn't do anything. You have to click on the "save flair" button. I would like to just be able to hit the enter key if that is possible. Also, after you click the "save flair" button, the box doesn't go away. I would like the box to go away after I click the "save flair" button (or after I hit the enter key). /u/agentlame told me to open a new issue about it :D

Bump, just to bug everyone about this.


Fix ReferenceCountedOpenSslEngine.getEnabledProtocols() when using bo…

…ringssl
Motivation:
Commit cd3bf3df58c3ab4462578284e7378571603a1721 made netty observe the latest version of netty-tcnative which changed the way how static fields are computed for various SSL.* values. This lead to have SSL_OP_NO_SSLv2 become 0 when using boringssl as boringssl not supports SSLv2 at all. In the logic of ReferenceCountedOpenSslEngine.getEnabledProtocols() we not expect to have a zero value and so our logic fails.
Modifications:
Check we actual support the protocol before return it as enabled.
Result:
SSLEngineTest.testEnablingAnAlreadyDisabledSslProtocol passes again with boringssl

@Scottmitch PTAL...

Cherry-picked into 4.1 (b2f7e86) and 4.0 (ad03adcb7bfc51f52d029a3904025a95654089c6)


no space between command name and arguments works

for all commands whose trigger value is of type string rather than regexp, the command will run even if there is no space between the command name and its arguments. e.g., !vettinglimitcancel will work, when it probably shouldn't

resolved by 3379e7cb7a9efbffe42b4e1756556fce88c8e6be


item_append_files wipes out identifier

library(sbtools)

myFolder <- "550057b9e4b02419550fa5f7"
session <- authenticate_sb(username = "xxx")

folderID <- item_create(myFolder,
                        title="Test Workflow",
                        session=session)

fileStuff <- item_append_files(folderID,
                               files = "fluxBiasMulti.pdf",
                               session = session
)

x <- item_update_identifier(folderID, 'test', 'workflow', "Unique thing", session )
# This wipes out the identifier:
fileStuff <- item_append_files(folderID, files = "multiPlotDataOverview.pdf", session = session)

I can add:
x <- item_update_identifier(folderID, 'test', 'workflow', "Unique thing", session )

after each item_append_files...but sometimes I get an error that there already is an identifier...presumably adding in a lag might prevent that.

@ldecicco-USGS I can't re-create this issue now. I added a test to check that behavior. Perhaps SB has changed its behavior. Can you re-create?

indeed, doesn't seem to be a problem


ApiResource collection method throws Builder::mapInto does not exist.

Laravel Version: 5.6.13
PHP Version: 7.2.1
Database Driver & Version: MySQL 5.7.19

Description:
i got a model collection, and i want to build it to ApiResource and i got this error Method Illuminate\\Database\\Query\\Builder::mapInto does not exist.
i am sure i put a collection and NOT Builder into methods
and i try dump $rewards this is result

Steps To Reproduce:

i use new RewardCollection($rewards) and it works

You have to call the collection method on the resource, not on the collection.
From the documentation:
Route::get('/user', function () {
    return UserResource::collection(User::all());
});

@staudenmeir OK thanks


Reduce boilerplate for custom actions

Before the new pipe API, I was creating ad-hoc validators with something like:
export function nonEmpty<TInput extends string | any[]>(error?: ErrorMessage) {
  return minLength<TInput, 1>(1, error)
}

after the update, the least I could come up with was:
// Not exported by valibot, need to redefine this.
type LengthInput = string | unknown[]

export function nonEmpty<TInput extends LengthInput, const TMessage extends
  | ErrorMessage<MinLengthIssue<TInput, 1>>
  | undefined>(message?: TMessage): MinLengthAction<TInput, 1, TMessage>

export function nonEmpty(message = "Non-empty value required.") {
  return minLength(1, message)
}

If I remove the function definition boilerplate and only keep the last 3 lines, it works but it's not typed properly:

My question is, can we come up with some kind of approved recipe and/or reduced boilerplate for trivial library extensions such as above? In my perfect world, it should be possible to come up with multitude of similar one-liners, not having to toss unreadable mess of copy/pasted generics.

Thanks for the feedback. I will check if I want to export these types, but in general it is probably a good idea. nonEmpty is now natively supported out of the box, so you don't have to add it yourself.
In general, there is no difference from before. The only difference is that the API has become more type-safe, which requires more precious typing, resulting in more TypeScript code. But if you don't care, you can write it much the same way as before. Here is an example. You can test it in this playground.
import * as v from 'valibot';

type LengthInput = string | unknown[];

function nonEmpty<TInput extends LengthInput>(
  message: string = 'Non-empty value required.'
): v.MinLengthAction<TInput, 1, string> {
  return v.minLength(1, message);
}

If you prefer precise types, I have rewritten your code to make it a bit simpler. You can test it in this playground.
import * as v from 'valibot';

type LengthInput = string | unknown[];

function nonEmpty<
  TInput extends LengthInput,
  const TMessage extends v.ErrorMessage<v.MinLengthIssue<TInput, 1>>,
>(
  message: TMessage = 'Non-empty value required.' as TMessage
): v.MinLengthAction<TInput, 1, TMessage> {
  return v.minLength(1, message);
}

Another use case is:
export function integerNumber<TMessage extends v.ErrorMessage<v.NumberIssue>>(message?: TMessage) {
  return v.pipe(v.number(message), v.integer())
}

is there a better way to type this? Most of the schemas use function overload to distinguish between the message and undefined:
declare function number(): NumberSchema<undefined>;
declare function number<const TMessage extends ErrorMessage<NumberIssue> | undefined>(message: TMessage): NumberSchema<TMessage>;

Is there a way to proxy this contract somehow to the extending one-liners?

As I understand it, this is not possible without drawbacks. That's why I use overload signatures.

I added ContentInput, ContentRequirement, LengthInput, SizeInput and ValueInput to the exports.


Raise warning when Scratch variable collides with reserved keywords

I'm just out of a multi-hour troubleshooting where SerHack was very useful on IRC.
The [LoveIt theme] (https://github.com/dillonzq/LoveIt) with 2000+ stars implements logic to track which JS assets should be included based on which libraries are actually used by a page.
They do so using a Scratch, which they named "this":

Setting example: https://github.com/dillonzq/LoveIt/blob/master/layouts/shortcodes/echarts.html#L6
Getting example: https://github.com/dillonzq/LoveIt/blob/master/layouts/partials/assets.html#L130

This was working highly unpredictably, with assets being included in some pages and not in others. The cause of this was also extremely hard to troubleshoot.
Credits to SerHack in IRC to mention that the this naming for the scratch may be the cause of the issue. Renaming the scratch to a different value resolved the issue.
It would be nice if Hugo issues a warning when a scratch name is used which may collide with a reserved symbol. Because it works sometimes, and sometimes not, failure to issue a warning will allow developers to accrue heisenbugs in their codes, that are only found long after, and troubleshot at great expense.

The word this is not reserved.

Renaming the scratch to a different value resolved the issue.

I would be interested to see a minimal reproducible example that proves this. I suspect the problem is still present, perhaps intermittently, or more than one thing was changed.

To my knowledge, there are no such things as "reserved this keys". There may be situations where a theme may use some keys that's intervenes, but if that is a problem, I would say that you will almost also have concurrency issues.
I suggest you start a new thread here:
https://discourse.gohugo.io/


go install failure from avfs

Attempting to install gilt with go install fails:
# github.com/retr0h/gilt/v2
go: downloading github.com/avfs/avfs v0.33.0
github.com/avfs/avfs.(*Utils[go.shape.*uint8]).SplitAbs: relocation target path/filepath.volumeNameLen not defined
github.com/avfs/avfs.(*Utils[go.shape.*uint8]).cleanGlobPathWindows: relocation target path/filepath.volumeNameLen not defined
github.com/avfs/avfs.(*Utils[*github.com/avfs/avfs/vfs/osfs.OsFS]).VolumeNameLen: relocation target path/filepath.volumeNameLen not defined
github.com/avfs/avfs/vfs/osfs.(*OsFS).VolumeNameLen: relocation target path/filepath.volumeNameLen not defined

$ go version
go version go1.23.3 linux/amd64

AVFS compatibility with Go 1.23 was fixed in 0.34; we may need another release of Gilt to properly get past it.

Released gilt v2.2.4 which should fix your problem
Thanks for the report @bootswithdefer, and thanks for the ultimate fix @0xDEC0DE!
❯ mise install<EMAIL_ADDRESS>mise<EMAIL_ADDRESS>✓ installed

❯ mise use<EMAIL_ADDRESS>mise ~/git/gilt/.mise.toml tools<EMAIL_ADDRESS>
❯ go version
go version go1.23.3 darwin/amd64

❯ go install github.com/retr0h/gilt/v2@latest
go: downloading github.com/retr0h/gilt/v2 v2.2.4
go: downloading github.com/caarlos0/go-version v0.2.0
go: downloading github.com/avfs/avfs v0.35.0

❯ gilt version | jq '.gitVersion'
"v2.2.4"

Works now, thanks!


inconsistency between sg_ce and sg_train

sg_ce says it returns:

"A 1-D Tensor with the same shape as tensor".

(actually it return an n-D Tensor that has shape tensor.get_shape()[:-1].)
sg_train says in takes an:

A 0-D Tensor containing the value to minimize.

but somehow this supports an n-D tensor. See for example your ByteNet implementation:
https://github.com/buriburisuri/ByteNet/blob/master/train.py#L103L106
sg_train also calls np.mean internally: https://github.com/buriburisuri/sugartensor/blob/master/sugartensor/sg_train.py#L339

I'm not really sure that the intended behaviour is, but I would definitely like if sg_train continued to able to take a scalar value.

This is solved after implementing tower support.


Update batch with backreference

Hello,
I have problems when updating my entity.
I put the details above:
C#:
db.Customers.Where(c => c.Id == customer.Id).Update(c => new Customer { Reputation_Current_Count = c.Reputation_Current_Count + 1 });

Generated SQL :
exec sp_executesql N'
UPDATE A
SET A.[Reputation_Current_Count] =  [c].[Reputation_Current_Count] + 1
FROM [Customers] AS A
INNER JOIN ( SELECT [c].[Id], [c].[Authkey], [c].[Name], [c].[Phishing_Day_Limit], [c].[Reputation_Current_Count], [c].[Reputation_Current_Date], [c].[Reputation_Day_Limit]
FROM [Customers] AS [c]
WHERE [c].[Id] = @__customer_Id_0
           ) AS B ON A.[Id] = B.[Id]
',N'@__customer_Id_0 int',@__customer_Id_0=2

SQL Error :
The multi-part identifier "c.Reputation_Current_Count" could not be bound.

Hello @pelhu ,
Thank you for reporting this error.
We will look at this issue later today. I hope to get it fixed by tomorrow.
Best Regards,
Jonathan

:thumbsup:

Hello @pelhu ,
Unfortunately, I couldn't reproduce this issue. It seems to work as intended in my environment.
Can you give me the following information:

Entity Framework Version
Database Provider (SQL Server, MySQL, etc.)

Best Regards,
Jonathan

Hello @JonathanMagnan ,
Of course,
SQLServer
Project.json
  "dependencies": {
    "BundlerMinifier.Core": "2.2.306",
    "Crypttech.Helpers": "1.0.40",
    "Microsoft.AspNetCore.Authentication.Cookies": "1.1.0",
    "Microsoft.AspNetCore.Diagnostics": "1.1.0",
    "Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.1.0",
    "Microsoft.AspNetCore.Mvc": "1.1.0",
    "Microsoft.AspNetCore.Mvc.WebApiCompatShim": "1.1.0",
    "Microsoft.AspNetCore.Razor.Tools": {
        "version": "1.0.0-preview2-final",
        "type": "build"
    },
    "Microsoft.AspNetCore.Routing": "1.1.0",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
    "Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
    "Microsoft.AspNetCore.StaticFiles": "1.1.0",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.1.0",
    "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.1.0",
    "Microsoft.EntityFrameworkCore.Tools": {
      "version": "1.0.0-preview2-final",
      "type": "build"
    },
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
    "Microsoft.Extensions.Configuration.Json": "1.1.0",
    "Microsoft.Extensions.Configuration.UserSecrets": "1.1.0",
    "Microsoft.Extensions.Logging": "1.1.0",
    "Microsoft.Extensions.Logging.Console": "1.1.0",
    "Microsoft.Extensions.Logging.Debug": "1.1.0",
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.1.0",
    "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
      "version": "1.0.0-preview2-final",
      "type": "build"
    },
    "Microsoft.VisualStudio.Web.CodeGenerators.Mvc": {
        "version": "1.0.0-preview2-final",
        "type": "build"
    },
    "System.IO": "4.3.0",
    "ThreatIntelligenceCore": "1.0.0-*",
    "Z.EntityFramework.Plus.BatchDelete.EFCore": "1.4.13",
    "Z.EntityFramework.Plus.BatchUpdate.EFCore": "1.4.13"  },

    "tools": {
        "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
        "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
        "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
        "Microsoft.Extensions.SecretManager.Tools": "1.0.0-preview2-final",
        "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
            "version": "1.0.0-preview2-final",
            "imports": [
                "portable-net45+win8"
            ]
        }
    },

  "frameworks": {
    "net462": { }
  },

  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true
  },

  "publishOptions": {
    "include": [
      "wwwroot",
      "**/*.cshtml",
      "appsettings.json",
      "web.config"
    ]
  },

  "scripts": {
    "prepublish": [ "bower install", "dotnet bundle" ],
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
  }
}```

Hello @pelhu ,
We successfully reproduced the issue. I probably tested your example twice in EF6 instead of using EF Core the second time.
The v1.4.20 is now available:
https://www.nuget.org/packages/Z.EntityFramework.Plus.BatchUpdate.EFCore/
Let us know if the issue is fixed
Best Regards,
Jonathan

Hi @JonathanMagnan ,
It work like a charm :)
Thank you
Best Regards,
Khamzat

Hi @JonathanMagnan ,
It work like a charm :)
Thank you
Best Regards,
Khamzat

Hello @JonathanMagnan
I am sorry but more one problem.
I have added "count" instead of "1"
var count = ressourcesArr.Count;
db.Customers.Where(c => c.Id == customer.Id).Update(c => new Customer { Reputation_Current_Count = c.Reputation_Current_Count + count });

It generate
exec sp_executesql N'
UPDATE A
SET A.[Reputation_Current_Count] =  B.[Reputation_Current_Count] + @__count_1
FROM [Customers] AS A
INNER JOIN ( SELECT [c].[Id], [c].[Authkey], [c].[Name], [c].[Phishing_Day_Limit], [c].[Reputation_Current_Count], [c].[Reputation_Current_Date], [c].[Reputation_Day_Limit]
FROM [Customers] AS [c]
WHERE [c].[Id] = @__customer_Id_0
           ) AS B ON A.[Id] = B.[Id]
',N'@__customer_Id_0 int',@__customer_Id_0=2

With sql error
Msg 137, Level 15, State 2, Line 3
Must declare the scalar variable "@__count_1".
Msg 156, Level 15, State 1, Line 8
Incorrect syntax near the keyword 'AS'.

Best Regards

Thank you,
Yup, it looks EF Core really doesn't generate SQL like it was doing for EF5 && EF6.
We will try to check this issue later today.
Best Regards,
Jonathan

Hello @pelhu ,
The v1.4,22 has been released.
Variable should now be resolved when used with a combination of property from the lambda expression.
Let us know if it's now working.
Best Regards,
Jonathan

Hello,
I met this issue again.But I have a bit of difference that the relationship of my entities were more to more.
Their relationship like below:

PostTag
PostToTag
Post

n
1
n

 var query = from tag in _dbContext.Set<Entities.PostTag>()
                        join to in _dbContext.Set<Entities.PostToTag>() on tag.Id equals to.TagId
                        where postIds.Contains(to.PostId)
                        select tag;
 await query.UpdateAsync(t => new Entities.PostTag
            {
                UseCount = t.UseCount - 1
            });

The postIds was an argument I sent.

Then the sql was:

UPDATE A
SET A.[UseCount] =  [tag].[UseCount] - 1
FROM [blog_Tag] AS A
INNER JOIN ( SELECT [tag].[TagID], [tag].[BlogId], [tag].[CreateTime], [tag].[TagName], [tag].[UseCount]
FROM [blog_Tag] AS [tag]
INNER JOIN [blog_Tag_Entry] AS [to] ON [tag].[TagID] = [to].[TagID]
WHERE [to].[EntryID] IN (3549)
           ) AS B ON A.[TagID] = B.[TagID]

The error was reported by SqlServer
Msg 4104, Level 16, State 1, Line 3
The multi-part identifier "tag.UseCount" could not be bound.

My csproj:
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netstandard1.6</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Z.EntityFramework.Plus.EFCore" Version="1.6.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="1.1.2" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="1.1.2" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.2" />
  </ItemGroup>
</Project>

In the end, I found that the sql in the second row should be correct:
2. SET A.[UseCount] =  A.[UseCount] - 1

Then, it works well.
I wonder the wrong was made by EFCore or Plus?

Hello @kexxxfeng ,
Thank you for reporting, we will look at it for sure during the weekend.
The issue probably comes from this line select tag;. It looks to rename the default SQL Alias with it. We will try to find a better solution to handle SQL Alias generated by Entity Framework.
Best Regards,
Jonathan

Hello @kexxxfeng ,
The v1.6.1 has been released.
Let me know if that's now working with this situation.
Best Regards,
Jonathan

Thx for you very much!
It works very well.
UPDATE A
SET A.[UseCount] = B.[UseCount] - 1
FROM [blog_Tag] AS A
INNER JOIN ( SELECT [tag].[TagID], [tag].[BlogId], [tag].[CreateTime], [tag].[TagName], [tag].[UseCount]
FROM [blog_Tag] AS [tag]
INNER JOIN [blog_Tag_Entry] AS [to] ON [tag].[TagID] = [to].[TagID]
WHERE [to].[EntryID] IN (4589)
           ) AS B ON A.[TagID] = B.[TagID]

The generated sql was correct.

Closing Comment: Fix confirmed


CUDA memory issue

Hi, thanks for your great work! But I found many problems related to CUDA memory usage.

The memory consumptions for different GPUs are not balanced

The memory consumption difference between GPUs could even higher than 3GB(I only have 11GB memory per card).

There seems to be memory leakage
As the training process goes on, the CUDA memory consumption becomes higher. However, the memory allocated by PyTorch is stable. Although the used CUDA memory is larger than 8GB, the memory allocated by PyTorch is only 2757MB as here:
https://github.com/fundamentalvision/Deformable-DETR/blob/11169a60c33333af00a4849f1808023eba96a931/util/misc.py#L270

Hi @cfzd,
It is not memory leakage, and it is related to pytorch dynamic memory allocating machenism. In my experience, the torch.cuda.max_memory_allocated() is actually lower than pytorch occupied memory. And the different memory usage across GPUs may be related to scale augmentation used during training, different batch may contain different size of images varing from 480 pixels to 800 pixels in terms of the short edge of image. (See the data augmentation for details.)

But the memory consumption varies too much to make full use of my GPU. Here are the results using r50_deformable_detr_single_scale config with a batch size of 2 per GPU:

The min memory is 3.9G while the max one is 11G.
When I use the r50_deformable_detr with a batch size of 2 per GPU, it will out of memory after some iterations of training.
Do you have any ideas to solve this problem?

I am facing the same issue. It gets a GPU OOM on 12 GB GPUs after a couple of hundred iterations. It works on 24 GB GPUs though.

Sorry for that now I have no time to optimize the memory for 12GB GPUs specifically. I could just suggest you reduce the batch size.

Hi, I am just wondering which version of Tesla V100 did you use for training (16 or 32 GB)?

Hi, I am just wondering which version of Tesla V100 did you use for training (16 or 32 GB)?

excuse me, please, how to reduce the batchsize ,is it?
-->
GPUS_PER_NODE=2 ./tools/run_dist_launch.sh 2 ./configs/r50_deformable_detr.sh  --batchsize_size 1

excuse me, please, how to reduce the batchsize ,is it?
-->
GPUS_PER_NODE=2 ./tools/run_dist_launch.sh 2 ./configs/r50_deformable_detr.sh  --batchsize_size 1

Sorry for that now I have no time to optimize the memory for 12GB GPUs specifically. I could just suggest you reduce the batch size.

excuse me, please, how to reduce the batchsize ,is it?
-->
GPUS_PER_NODE=2 ./tools/run_dist_launch.sh 2 ./configs/r50_deformable_detr.sh --batchsize_size 1

Sorry for that now I have no time to optimize the memory for 12GB GPUs specifically. I could just suggest you reduce the batch size.

excuse me, please, how to reduce the batchsize ,is it?
-->
GPUS_PER_NODE=2 ./tools/run_dist_launch.sh 2 ./configs/r50_deformable_detr.sh --batchsize_size 1


OpenDKIM key retrieval failed - query timed out

Context
OpenDKIM is not able to verify DKIM on inbound emails as it's not able to retrieve public key from DNS. The following error logs are observed in logs key retrieval failed - query timed out
Expected Behavior
OpenDKIM should be able to download public key from DNS.
Actual Behavior
OpenDKIM appears to be using root name servers instead of the name servers defined in /etc/resolv.conf. This breaks DNS in environments where outbound firewall rules restrict access to specific name servers (ie. those defined in /etc/resolv.conf).
Possible Fix
Set the Nameservers parameter in /etc/opendkim.conf to the name servers defined in /etc/resolv.conf

@j-marz please check if this can be closed now that the PR is merged?

@erik-wramner just pulled the latest image and confirmed nameserver is set and key retrieval is working, so closing this issue.


feat: add google/ko support for building/pusing container image

Signed-off-by: Batuhan Apaydın<EMAIL_ADDRESS>
Please check if the PR fulfills these requirements

[] Tests for the changes have been added (for bug fixes / features)
[x] PR title follows the guidelines defined in  https://github.com/ossf/scorecard/blob/main/CONTRIBUTING.md#pr-process

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

feature
chore

What is the current behavior? (You can also link to an open issue here)

there is no support for google/ko for building/pushing container images of the scorecard project.

What is the new behavior (if this is a feature change)?

we can now be able to build and push the container images of the scorecard project by using google/ko.

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)

I'm not sure.

Other information:
Fixes #744

@developer-guy  Thank you!


Reference Sharing Server does not work with DataBricks as client (Invalid UUID)

When I've added the example reference server's token:
{
  "shareCredentialsVersion": 1,
  "endpoint": "https://sharing.delta.io/delta-sharing/",
  "bearerToken": "faaie590d541265bcab1f2de9813274bf233"
}

To my DataBricks' Unity Catalog with:
databricks unity-catalog providers create --name db-test-1 --recipient-profile-json-file db-profile.json
To my DataBricks workspace, I am unable to create the catalog since DataBricks says an invalid UUID is presented by the reference server.
Please advise how to proceed as I'm interested if this reference sharing server is supported and tested or merely a prototype implementation.

Hi @rustyconover , https://github.com/delta-io/delta-sharing/pull/262 is merged to make the reference server returns table UUID to be compatible with Databricks's implementation. At the same time, I'll be making changes to Databricks client to remove the requirement of Share UUID.
Generally speaking, the reference server is mostly a prototype and it is encouraged to deploy it with custom extensions to make it work with different requirements and sharing scenarios.

Are all of the custom extensions open source?

@rustyconover it will be up to each server starter to plugin the needed extensions or codings themselves.


AppBaseTheme declaration causing issues on pre lollipop devices

I included this library in my project which already had a style AppTheme and AppBaseTheme defined. This caused an issue where the AppCompatBase theme from the library is used from the libraries values-v11/styles.xml instead of the AppCompatBase theme from my values/styles.xml.

Same issue here. Android libraries should prefix all of their resources with a domain prefix, eg mrb_tickStart, mrb_tickEnd, mrb_AppTheme, to avoid conflicting with the main app, or even other libraries - other libraries is the worst, as there's no way to fix it except emptying the whole library into your project.

I too can't use this lib with my project which is using AppCompat theme. Any solutions how can I use this widget with AppCompat?


Release of GHC 7.10.3 in PPA? Mistake?

Your PPA contains a confusing release of GHC 7.10.3. I just installed it (ignoring on purpose the odd version number), then learned it isn't released yet...
Specifically, it's package ghc-7.10.3 on https://launchpad.net/~hvr/+archive/ubuntu/ghc, package version 7.10.2-XXX.

It was deliberate but it's just a snapshot from the ghc-7.10 branch which will eventually become GHC 7.10.3.  It's there so people can test early and/or see if some bug is still present in the stable branch.
The versioning scheme corresponds to GHC stable snapshots, i.e. "GHC 7.10.2.yyyymmdd". The package name is chosen in a way so that the snapshots turns into a final 7.10.3 release seamless (to reduce the number of .travis.yml edits)

Thanks for the clarification! (I won't close the issue myself, in case you want to update docs before closing it).

We've got a 7.10.3 RC now, so this issue is moot now :-)


Demonstrate basic filtering/interactivity

As per #4, we need to demonstrate for users how basic filtering/interactivity could support decision making using an example scenario.
We plan to do this using results from the 20 minute neighbourhood intervention analysis undertaken by @StevePem.
A promising approach for smooth delivery of complex map-based data supporting interactivity is using map vector tiles.  In particular,

PM Tiles provides an efficient approach to storing and delivery large scale complex data for interactive engagement by users as vector map tiles; these can be stored and streamed from AWS S3 simple storage buckets
Martin tile server provides a mechanism for real time querying and delivery of large scale map data (including PM Tiles, but also arbitrary database layers); this is apparently also compatible with serverless approaches such as AWS Lambda services (although documentation of this is light on)

MapLibre GL JS may be better placed to support interactivity using vector map tiles than Leaflet (e.g. PM Tiles documentation seems to recommend use of MapLibre GL JS when implementing interactivity with map tiles)

Demonstrated this functionality for the workshop; going to close.  We can further develop later.


netCDF fails on zarr file with variable length array

On netcdf 4.8.1 when I try to use ncdump to print a zarr file with a variable length (jagged) array, it crashes with a segmentation fault. On 4.9.0 on a mac, the same command hangs indefinitely.  The zarr files have no compression, this is a separate issue from #2484 .  The attached code creates two zarr data stores. The first, ExampleNoVlen.zarr just has a simple array, and  ncdump 'file://ExampleNoVlen.zarr#mode=nczarr,zarr' produces
netcdf ExampleNoVlen {
dimensions:
	.zdim_5 = 5 ;
variables:
	double x(.zdim_5) ;
data:

 x = 0, 1, 2, 3, 4 ;
}

The second data store created, ExampleVlen.zarr, when printed with ncdump 'file://ExampleVlen.zarr#mode=nczarr,zarr'`, dies with a segmentation fault. When the file is loaded with python and zarr, printing the variable x produces
In [2]: data=zarr.open('ExampleVlen.zarr')

In [3]: data.x[:]
Out[3]:
array([array([], dtype=float64), array([0.]), array([0., 1.]),
       array([0., 1., 2.]), array([0., 1., 2., 3.])], dtype=object)

The code to produce the two files in python with zarr is attached.
Thanks,
Jamie Pringle
break_ZarrNetCDF.zip

I am working on a feedstock issue right now for conda/libnetcdf, but will take a look at this as soon as I can.  Tagging @DennisHeimbigner in case an immediate solution leaps out.

thank you

In looking at your python,  I realized that I do no know what your
ragged array looks like. Netcdf-4 and hence NCZarr does not
support true ragged arrays except using the HDF5 vlen type,
which is not supported in Zarr. So how did you envision your
ragged array being layed out in memory?

I am using the standard mechanism in zarr -- see https://zarr.readthedocs.io/en/stable/tutorial.html#ragged-arrays in which the object array is encoded with object_codec=numcodecs.VLenArray.  These codecs are discussed in https://numcodecs.readthedocs.io/en/stable/vlen.html .  I do not know how the VlenArray codec works internally.  It is the standard model for zarr.
Jamie

Unfortunately, the text you refer to is in the Zarr tutorial. It is not
part of standard Zarr as defined by the Zarr V2 spec.

@DennisHeimbigner and @WardF -- It may be as you say. Would you like me to file a bug-report with the zarr folks to add this to their upcoming standard revision?
I understand the frustration of dealing with incomplete standard specifications. However this raises a philosophical question. Do you wish to just do exactly what the (inevitably flawed) standard says, or do you want to embrace the standard as implemented. I understand the difficulties in a decision like this, especially when there is a discrepancy between the folkways of a standard and the focal specification.
But as it stands, for someone distributing data, there is one quasi-official way to do ragged arrays in zarr, and netCDF does not support it, despite HDF supporting ragged arrays.
Would you like me to raise this issue with Zarr?
Jamie

I agree that this issue should be raised with the Zarr community.
You note:
Do you wish to just do exactly what the (inevitably flawed) standard says,
or do you want to embrace the standard as implemented.

The short answer is yes; I do want to do exactly what the standard says.
That is the only way to ensure interoperability across implementations.
What you call the standard as implemented is (I assume) the python implementation.
The key point about specifications is that they are intended to be implementation independent.
With respect to the numcodecs Vlen, that package is completely dependent
on Python and its pickling mechanism, and there is no easy correspondence in, say, the C language. used for NCZarr.
In order to create an interoperable version of Vlen, it is necessary to define a language independent specification for it and for pickling.

Ok, I will raise it in zarr's GitHub issue page.
Jamie

see discussion in https://github.com/zarr-developers/zarr-specs/issues/160


prepare for v1.0.4

Backported 23 commits (86888108, 57cef4d8, 5909126a, and 4ea2c848 have already been picked to release-1.0)
091a7bff java sdk: fix stats of symlink
7db673bc chunk: fix the issue that staging file may be uploaded for many times (#3157)
27ec92cf hadoop: add symlink test (#3165)
b40714cf fix reading large response from .control (#3170)
247e3df7 chunk: deleting an object should be idempotent (#3171)
1f63d3bf meta/sql: recreated session after some fault (#3190)
00863291 meta: recreate the session with info if it was cleaned before (#3197)
fcedbeec object/obs: fix obs encrypt check (#3199)
c8ea7449 disable server name check for sentinel (#3194)
9942d53b optionally turn off 'S3Disable100Continue' via url query parameter (#3228)
51fd6287 meta: move the control of max-deletes from chunk to meta (#3227)
e75256ae object: set encoding type when list object (#3244)
6225b48d remove password (#3256)
4a8b0911 dont set the default schema when remove password form titles (#3258)
bfcf95fa meta/redis: fix incorrect nil check on doRename with redis (#3266)
5a35d180 fix obs list encode (#3269)
ecf2c4d0 fix b2 get empty file info (#3274)
a8f520a4 meta/tikv: add background GC worker for TiKV (#3262)
585dcb32 object/obs&tos : fix range get (#3270)
67ce17ff update BadgerDB to v3.2103.5 (#3309)
40f6fce9 cmd/load: support load encrypted file (#3311)
75a092ec build(deps): bump golang.org/x/net (#3350)
60dca5f3 fix s3fs folder (#3378)
More commits to fix the code:
9dc473c7 backport: 1. fix tkv not using interface in the txn function 2. delete the delimiter argument in blob.List function

@p1u3o Hi, we are backporting this PR (#3266 ) to the release branch. Somehow the Github says that you haven't signed the CLA. Usually it should be requested before the PR merged, but I'm not sure now. Could you please sign it?

CLA has been signed.
Can I suggest back-porting https://github.com/juicedata/juicefs/pull/3133 too?
It's a simple enough patch and without it JuiceFS will not work on OVHs bucket storage

It's a simple enough patch and without it JuiceFS will not work on OVHs bucket storage

OK, picked it as well.


Undo softDelete option and support v4

Support @feathersjs/client of version 4 (fix issues #123 and #124).
Undo softDelete functionality introduced in #121 for issue #120. For two reasons:

feathers-hooks-common does not support v4 yet and it is unknown when it will be.

Functionality to modify params/data/id (which was asked in #120) is already present without additional options and code in this package - hooks. Just use client.hooks(...) or client.service(path).hooks(...) for custom logic.

I also think we need to support v4, and We need to keep this project as simple as we can.
Regards to 2), can you explain a little more how someone can do which is asked in #120 with client.hooks (so we can add your PR and put more clearly how to manage it @DanStorm )

Ok. Based on #121 and #126 here is a description of what i think he wants to do: for every service call (except for create and remove) change params to have { $ignoreDeletedAt: true } in params for a server using paramsForServer. Here is the code based on that description:
const { paramsForServer } = require( 'feathers-hooks-common' );

const hook = ( context ) => {

  if ( context.method === 'create' || context.method === 'remove' ) return;

  context.params.query = paramsForServer( {

    query: context.params.query,

    $ignoreDeletedAt: true,

  } ).query;

};

client.hooks( { before: hook } );

This will do it for any resource/service. If you want this custom hook to run only for specific service use client.service( name ).hooks( { before: hook } ).
The code above needs to be ran before a feathers client is passed to restClient.

This works great! Thank you gentlemen, that was awesome of you!
Not that you need it, but you have my full endorsement to remove the softDelete option. I've closed #126

great @vonagam , merging this now!


Two top bars.

It would be nice to have "File", "View", etc buttons on the system top bar instead of having another one for this.

As a KDE user, I prefer them as it is now on different lines.
I don't like the Gnome way of putting everything in the titlebar.
I want to be able to drag the window from anywhere except the right side) fast without having to care if click on some menu.


Gitcoin Bounty - How to Build a Simple Front End Application that can Interact with XDC Network Smart Contracts and XRC20 and XRC721 Tokens

Judging Criteria
All submissions must contain clear and concise information with explicit instruction and images describing each step required to execute the process. An accompanying video in addition to the written content is highly desired.
All submissions will be put through an industry standard plagiarism detection tool to ensure that all submissions are the work and ideas of the person submitting for the bounty. If the plagiarism tools flags your submission you will be disqualified from participation in the bounty.
You will be provided with resources (if available) as an aid to help you get started. The sole act of submitting content for the bounty does not automatically qualify you for the bounty. Our team will review all submissions and will choose the submission whose content best fits the needs and requirements of the bounty.
Only one participant will be selected as the winner for the bounty, and they will be notified within 7 working days after the bounty has ended.
Description
Amount of Bounty
Grant Sponsor: XDC Foundation. All monies paid will be in XDC.
What will you be creating?
You will be creating how to documentation for the XDC Network. Some documentation has already been created, and you will read through it to ensure it works as intended, reads clearly or if it needs better clarification, then make those changes. Those items without documentation will be created from scratch.  Documentation will have images that describe or represents what's being done or described in your tutorial.
Details
How to Build a Simple Front End Application that can Interact with XDC Network Smart Contracts and XRC20 and XRC721 Tokens
Create a how-to that will walk a user through creating a simple front-end application that can interact with XDC Network Smart Contracts and XRC20 and XRC721 tokens.
What you will learn
In this tutorial, you will learn how to interact with XDC Network smart contracts and tokens through a simple web front-end on the XDC Network mainnet and XDC Apothem testnet.
What you will do

Install and setup XDCPay
Create a simple web front end
Create and deploy a simple smart contract
Create and deploy an XRC20 (Can reference other documentation)
Create and deploy an XRC721 (Can reference other documentation)
Demonstrate how to interact with smart contract, XRC20, and XRC721 tokens

Total Prize of Bounty
Total sum of up to $1,000.00 USD worth of XDC for this event, reward amount assigned at judge's discretion.
Further Details
This event will be an ongoing collaboration to create "how to" documentation for the XDC Network. All documentation will be open source and uploaded here:
https://github.com/XDC-Community/docs/tree/main/how-to/SmartContract/Front-End
Resources
These are some of the resources you have available to you where you will find the necessary information to complete your submission.
Apothem Test Network
https://www.apothem.network/
Apothem Faucet
https://faucet.apothem.network/
xdc.dev
https://www.xdc.dev/
XDCPay
https://chrome.google.com/webstore/detail/xdcpay/bocpokimicclpaiekenaeelehdjllofo
web3 modal
https://github.com/XDCFoundation/xdc-web3modal
web3.js
https://github.com/XinFinOrg/XDC3
Token Creation
https://docs.xdc.community/learn/how-to-articles/how-to-create-and-deploy-an-xrc20-token-using-remix

Hi, if you need to complete this task I can help with it.


Build on branch release/2.5.x fails (community build) - HealthCertificateToolkit package is missing

Avoid duplicates

[ ] Bug is not mentioned in the FAQ
[x] Bug is specific for iOS only, for general issues / questions that apply to iOS and Android please raise them in the documentation repository
[ ] Bug is not already reported in another issue

Technical details

Device name: XCode Simulator, ENACommunity build
iOS version: Simulator for iPhone 8 plus / iOS 14.4
App version: 2.5.1

Describe the bug

The ENACommunity build at release 2.5 fails.
The 'HealthCertificateToolkit' package is missing.
Steps to reproduce the issue

Checkout cwa source for iOS at branch release/2.5.x / tag v2.5.1 / commit 8c14cecc
Configure XCode for ENACommunity build / iPhone 8 plus (14.4)
Clean build folder and package dependencies
Build

The build fails. I get the error message "Missing package product 'HealthCertificateToolkit'"
Expected behaviour

Build successfull
Possible Fix

Additional context

A similar error was reported with version 2.4, see #2862 and especially this comment.
The issue had been fixed on a branch fix/community-build-june-edition .

Internal Tracking-ID: EXPOSUREAPP-8480

I am not able to reproduce this, I can build as described above without any problems. The only difference is that I have a iOS 14.5 simulator. Build folder was cleaned before the build.

it seems that the branch fix/community-build-june-edition was never merged (and maybe for reasons, so the fix possibly conflict with some other changes ....)
@Ein-Tim do you build a clean release/2.5.x or did you merge it with the abovementioned branch?
Did you ever checkout that branch, or was #2862 already fixed for you with the deletion of the json file?

@ndegendogo I did build a clean release/2.5.x branch. I did not merge anything. I checked out the branch back when we had the issue before (#2862). I could remove the repo and clone it again, but tbh, I'm happy that it works for me 😅

@Ein-Tim Please do not risk to "kill" your working environment!! 😱😱

@heinezen @dsarkar any news on this?
Or any hints or workarounds for me?

Yesterday I tried with the newest branch release/2.8.x
it is still broken
Maybe it is related to the integration of the HealthCertificateToolkit,
especially with the discussion at
https://github.com/corona-warn-app/cwa-app-ios/pull/2880
just guessing

@ndegendogo I just freshly checkout out the codebase with the 2.8.x branch. I see no build error. Also we have a our CI-Pipeline setup to check the community target, this seems to work fine as well.
Could you try a fresh git clone and see if the Issue still persist?

@marcussc Thanks for reaching out.
I tried this yesterday also with a fresh clone, and on a new machine where I had never built cwa before; but I will try this evening again.
I forgot maybe to mention that I was using the XCode GUI to build.
Do you build with the GUI, or do you perform a command-line build?

@marcussc also yesterday I had played a bit with the XCode project file. I think I found a change that at least the package dependencies were resolved and the compiler seemed to have started (not sure if it finished successfully), but I got then another error message, related to lint and the vendor folder ...
I am considering to open a PR for this change, although I don't know much about your workflows; so just in the hope that it does not break anything for you ....

ok, so more details now.
I am building from the Xcode IDE (Xcode version 12.4).
Build was first broken with cwa v2.4 (release/2.4.x branch), see #2862, and this was fixed on branch fix/community-build-june-edition.
Unfortunately, my build is still broken on all other branches since then (release/2.5.x, release/2.6.x, release/2.7.x, and now release/2.8.x).
The build does not even resolve the packages, error message is "Missing package product HealthCertificateToolkit".
I tried to add the HealthCertificateToolkit to the Xcode project file, and this improved it a lot.
Now it resolves the packages successfully and starts the build.
I am going to create a PR with this improvement.
Unfortunately, I still cannot build. I get now the error message "size: can't open file: 27813542 (No such file or directory)", see screenshot.

@ndegendogo One of our devs might had the Idea what is going wrong: https://github.com/corona-warn-app/cwa-app-ios/pull/3318#pullrequestreview-723001982 could you check this on your side? :)

I just wanted to add, that I'm not able to build the app too. (macOS 11.5.1 / Xcode 12.? / M1)

We just update the Readme to make it more clear which project file to use: https://github.com/corona-warn-app/cwa-app-ios/pull/3323
@jucktnich could you please go into more detail why you are not able to build the app?

I don't know. It's a week since then and I just tryed to build the app, cause I had some little ideas I wanted to try, but the error message from ndegendogo looks familiar to me. I don't have Access to the Mac now, so I can't try it.

@marcussc @ArturFriesen
YES! The xcworkspace was the right question / hint, now it resolves all packages nicely out of the box 🎉🎉🎉🎉🎉

We just update the Readme to make it more clear which project file to use

Thanks also for this!
The error message with the missing file with the mysterious name persists - but now I have the strong suspicion that its because my git client is too old ... I have only 1.8.4 and especially no support for lfs 😱🙈

@ndegendogo nice to hear!
Yeah the size: can't open file: 27813542 (No such file or directory) seems to be an Issue due to git-lfs. Our internal and easiest fixed seemed to be to just delete the repo locally and clone it again.

@marcussc my current git is too old, it does not support lfs
I guess I have to upgrade my git ...

Our internal and easiest fixed seemed to be to just delete the repo locally and clone it again.

Thanks for the hint... so this might be needed in case the "new" git istallation is reluctant to take over ...

I am back 🎉🎉🎉
Everything is working again 🎉🎉🎉
Thanks for all your support 🎉🎉🎉
Summarizing the two key points:

cannot resolve packages, HealthCertificateToolkit missing
=> use the ENA.xcworkspace (not the project file)
vendor/swiftlint ... oid: command not found ... size: can't open file: 27813542 (No such file or directory)
=> install git-lfs

closing the ticket


Crash to desktop when highlighting in TextFields that contain certain strings

Describe the bug
Highlighting to the end of a TextField containing 'ff', 'fl', or 'fi' and using NotoSans Regular as the font causes  Linux HXCPP and HashLink targets to crash.
To Reproduce
Example.zip
Modified AddingText example. Font file included in zipped project.
package;

import openfl.display.Sprite;
import openfl.text.Font;
import openfl.text.TextField;
import openfl.text.TextFormat;
import openfl.Assets;

class Main extends Sprite {
	public function new () {
		super ();
		var format = new TextFormat (Assets.getFont("assets/NotoSans-Regular.ttf").fontName, 30, 0x7A0026);
		var textField = new TextField ();
		textField.defaultTextFormat = format;
		textField.embedFonts = true;
		textField.selectable = true;
		textField.x = 50;
		textField.y = 50;
		textField.width = 200;
		textField.text = "fl";
		addChild (textField);
	}
}

Steps to reproduce the behavior:

openfl test linux
Click and highlight to the end of the text field
Crash to desktop, error below

Called from hxcpp::__hxcpp_main
Called from ApplicationMain::main ApplicationMain.hx line 26
Called from ApplicationMain::create ApplicationMain.hx line 135
Called from lime.app.Application::exec lime/app/Application.hx line 150
Called from lime._internal.backend.native.NativeApplication::exec lime/_internal/backend/native/NativeApplication.hx line 146
Called from lime._internal.backend.native.NativeApplication::handleRenderEvent lime/_internal/backend/native/NativeApplication.hx line 371
Called from lime.app._Event_lime_graphics_RenderContext_Void::dispatch lime/_internal/macros/EventMacro.hx line 91
Called from openfl.display.Stage::__onLimeRender openfl/display/Stage.hx line 2106
Called from openfl.display.OpenGLRenderer::__render openfl/display/OpenGLRenderer.hx line 764
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 30
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 30
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 30
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 858
Called from openfl.display._internal.Context3DTextField::renderDrawable openfl/display/_internal/Context3DTextField.hx line 39
Called from openfl.display._internal.Context3DTextField::render openfl/display/_internal/Context3DTextField.hx line 24
Called from openfl.display._internal.CairoTextField::render openfl/display/_internal/CairoTextField.hx line 390
Called from lime.graphics.cairo.Cairo::showGlyphs lime/graphics/cairo/Cairo.hx line 370
Error : Invalid object

Expected behavior
Selected text should be highlighted
OpenFL Targets
Linux, Hashlink
Additional context
NotoSans appears to have ligatures defined for these character pairs.

TextField selection logic does not appear to recognize these correctly. When used in a longer string the highlight logic appears to be off by one after the ff ligature.

Reproduces on Windows as well. This is because when rendering a text that has a selection, the render code doesn't take ligatures into account.
For example, if I have a 5 character string which contains a ligature for ff, these two characters combine into one glyph, and so the 5 characters map onto 4 glyphs. The selection index and caret index of the text field is based on the character positions, so the start and end indexes are 0 and 4 if the whole text is selected for example: https://github.com/openfl/openfl/blob/332cb95f2531b0a0a8f92e537e8057edc84298a6/src/openfl/display/_internal/CairoTextField.hx#L344-L345
The error happens when it attempts to use the characters indexes on the glyphs array. When using the character index 4, it goes out of bounds since there are only 4 glyphs (indexes 0-3) and no mapping is performed to adjust the character index to the glyph index.
https://github.com/openfl/openfl/blob/332cb95f2531b0a0a8f92e537e8057edc84298a6/src/openfl/display/_internal/CairoTextField.hx#L389
Therefore, the out-of-bounds read of the glyphs array returns null and the crash comes later when trying to read the properties of this null glyph.

Here is a patch that prevent the crash, although it doesn't really address the root cause of the issue

I just applied a modified version of this patch that takes into account more complex text with multiple groups.

Hm, I've only just switched over to your version of the patch, it doesn't seem to prevent the crash from my testing.

Can confirm that joshtynjala's patch doesn't work, unless you select from the very beginning of the text (selectionStart == 0).
I think part of the problem was the check happened too soon. Extra arithmetic was required to try to account for text groups, but since it was so far away from the array access, it was harder to notice that the arithmetic was wrong.
tobil4sk's solution is much closer to being correct, it just needs to happen after subtracting out group.startIndex. This also puts it right next to the array access, making it much easier to verify.
selectionStart -= group.startIndex;
selectionEnd -= group.startIndex;
+if (selectionEnd > glyphs.length)
+{
+	selectionEnd = glyphs.length;
+}
+
for (i in selectionStart...selectionEnd)
	selectedGylphs.push(glyphs[i]);

I'm not sure either approach is correct, but its in the right direction.

Agreed, we need to address the root issue. The above is still just a stopgap.


Updated oasisctl with some improvement and a server status command

➜  oasisctl git:(oas_1151) ✗ Don't forget to zutano release: ./bin/darwin/amd64/oasisctl get server status --deployment-id omje7f9g7hgfk8qmn5yr
Id            | Description | Version | Creating    | Created-At  | Last-Started-At | Creating | Ready | Failed | Upgrading | Ok   | Member-Of-Cluster
AGNT-aewruxpi | Created     | 3.6.3-1 | Agent       | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | false
AGNT-itxjvz5u | Created     | 3.6.3-1 | Agent       | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | false
AGNT-jvvrtjkc | Created     | 3.6.3-1 | Agent       | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | false
CRDN-tmhvmfbi | Created     | 3.6.3-1 | Coordinator | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | true
CRDN-tqbcwcle | Created     | 3.6.3-1 | Coordinator | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | true
CRDN-zxegmn18 | Created     | 3.6.3-1 | Coordinator | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | true
PRMR-jaryzuqb | Created     | 3.6.3-1 | Dbserver    | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | true
PRMR-tnecspki | Created     | 3.6.3-1 | Dbserver    | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | true
PRMR-txbm7eqq | Created     | 3.6.3-1 | Dbserver    | 4 hours ago | 4 hours ago     | false    | true  | false  | false     | true | true

After applying changes
Id            | Description | Version | Type        | Created-At  | Last-Started-At | Creating | Ready | Failed | Upgrading | Ok  | Member-Of-Cluster
AGNT-aewruxpi | Created     | 3.6.3-1 | Agent       | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | -
AGNT-itxjvz5u | Created     | 3.6.3-1 | Agent       | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | -
AGNT-jvvrtjkc | Created     | 3.6.3-1 | Agent       | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | -
CRDN-tmhvmfbi | Created     | 3.6.3-1 | Coordinator | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | ✓
CRDN-tqbcwcle | Created     | 3.6.3-1 | Coordinator | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | ✓
CRDN-zxegmn18 | Created     | 3.6.3-1 | Coordinator | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | ✓
PRMR-jaryzuqb | Created     | 3.6.3-1 | Dbserver    | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | ✓
PRMR-tnecspki | Created     | 3.6.3-1 | Dbserver    | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | ✓
PRMR-txbm7eqq | Created     | 3.6.3-1 | Dbserver    | 5 hours ago | 5 hours ago     | -        | ✓     | -      | -         | ✓   | ✓


Azure OpenAI Embedding

The "azure_openai_embedding" function was missing the "api_version" argument.
Previously, it was only read from an environment variable not passed from the user.

The "max_token_size" was incorrect. Now it corrected to 8191, according to OpenAI documentation.
https://platform.openai.com/docs/guides/embeddings/#embedding-models

same with "azure_openai_embedding". The function "azure_openai_complete_if_cache" lacked "api_version"

Thanks for your contribution!


*File.GetRows() returns empty string for numbers with some hash placeholders

Description
I attempted to read all cells using the *excelize.File.GetRows() method.
It returned an empty string "" for number cells with the format #,#####.
Steps to reproduce the issue:
I wrote test code to reproduce the issue, which can be found here.
Describe the results you received:
I observed that it returned an empty string "" for cells with the format #,#####.
Describe the results you expected:
I expected the result slice to contain all numbers.
Output of go version:

go version
go version go1.21.0 darwin/amd64

Excelize version or commit ID:

The latest v2.8.0 release reproduces the issue.
v2.7.1 does not reproduce the issue.
https://github.com/qax-os/excelize/commit/7c221cf29531fcd38871d3295f4b511029cb4282 seems first commit which reproduces this issue.

Environment details (OS, Microsoft Excel™ version, physical, etc.):
go env Output
go env
GO111MODULE=''
GOARCH='amd64'
GOHOSTARCH='amd64'
GOHOSTOS='darwin'

I initially encountered an issue with an Excel file created by someone else, likely generated using Microsoft Excel on Windows.
I prepared the test data for reproduction using Google Sheets.

Excuse me, I've noticed that this is a duplicate of https://github.com/qax-os/excelize/issues/1658.
Using go get github.com/xuri/excelize/v2@5a039f3 fixed my test as well. Thank you!


WebSubmit: warn user when Javascript is disabled

Originally on 2012-05-08
WebSubmit requires to have Javascript enabled on the browser client. While it is hoped that this requirement would be removed (see  Savannah ticket 3178), it would be nice in the meantime to display a message to the user when visiting a submission page with Javascript disabled:
<noscript>
  Submissions requires to have Javascript enabled.
  Please enable Javascript on your browser in order to submit.
</noscript>

For Invenio 2.x we should display warning on top of every page if JavaScript is disabled.


Exisiting RabbitMQ vhost and user causes error when running 'pupet apply' multiple times

Info: Class[Rabbitmq::Config]: Scheduling refresh of Class[Rabbitmq::Service]
Info: Class[Rabbitmq::Service]: Scheduling refresh of Service[rabbitmq-server]
Notice: /Stage[main]/Rabbitmq::Service/Service[rabbitmq-server]: Triggered 'refresh' from 1 events
Error: Execution of '/usr/sbin/rabbitmqctl add_vhost /' returned 2: Creating vhost "/" ...
Error: vhost_already_exists: /

Error: /Stage[main]/Nova::Rabbitmq/Rabbitmq_vhost[/]/ensure: change from absent to present failed: Execution of '/usr/sbin/rabbitmqctl add_vhost /' returned 2: Creating vhost "/" ...
Error: vhost_already_exists: /

Error: Execution of '/usr/sbin/rabbitmqctl add_user openstack testing' returned 2: Creating user "openstack" ...
Error: user_already_exists: openstack

Error: /Stage[main]/Nova::Rabbitmq/Rabbitmq_user[openstack]/ensure: change from absent to present failed: Execution of '/usr/sbin/rabbitmqctl add_user openstack testing' returned 2: Creating user "openstack" ...
Error: user_already_exists: openstack

When I want to run 'puppet apply' again, I have to delete the vhost and user:
sudo rabbitmqctl delete_vhost /
sudo rabbitmqctl delete_user openstack

Yes, this is an issue with the rabbitmq module. The fix was released as 5.0.0. This module should be compatible with that version when #133 is merged, but we won't be able to update the dependency in the metadata because the stackforge modules are still depending on an old version. However you can still install the newer version manually.

Closing since this is inactionable for now, but the workaround is to install with the Puppetfile or manually upgrade your rabbitmq module if using the puppet module install tool.


how many data does it require to do sentence pair classification task?

Hi, my task is do sentence pair semantic meaning classification, 0 means the two sentences represent the same meaning, 1 means yes.
For example,
I want to eat breakfast, I need to take my breakfast, 1.
How many data should I prepare for this task? Thank you.

How do you do this task with BERT? I can't find a demo to do so.


Medical Cost Insurance Prediction using ML

I would like to add Medical cost insurance prediction system using ML.
Please assign this under gssoc24.

@Niketkumardheeryan Kindly assign this issue to me.