Remove plaintext password sent in sign up confirmation email

From @leonstafford on May 25, 2017 1:45
Background
Having passwords sent to users via email is not ideal.
We already offer a link to the sign in page in this email and that page offers a forgotten password link, so current benefits of having it there don't justify the risks.
Aceptance criteria

[ ]  "Thank you for signing up to sleepbus" email doesn't contain the Password field or value

Copied from original issue: sleepbusorg/sleepbus_org#8

From @bakersemail on May 25, 2017 10:30
The reset link looks like it's just a random 6 alphanumeric, perhaps we could make it much longer and a secure random like a UUID?
We should try to replace the md5 password storage with something else too. Would you accept bcrypt?

Sounds good on both counts - bcrypt would be a marked improvement :smiley_cat:

From @bakersemail on May 26, 2017 11:48
I'm not sure if the forgot password emails work in production? I just tried and it's been >10 minutes without an email sent to me, not in my junk either<EMAIL_ADDRESS>is the account I just created to try.
I would also suggest we adjust where the show/hide toggle is for password choices. Password managers usually have icons where this toggle is and it could run into the text people are trying to type on a phone. Usually sites have the show/hide as just a checkbox underneath.

I think there are still some unidentified issues regarding emails. I'll get this issue sorted today to help test them.
Production environment is still a bit of a delicate flower, not guaranteed to be running what's in master branch currently.
Regarding the show/hide password toggle, what if we just remove it altogether? Not sure if adds enough value to worry about now.

Cool, I'm 50/50 on password confirmation boxes - it's an annoying extra step for most users and not guaranteed to help in the case where they simply forgot password.
Re hosting, probably AWS via Cloudformation + ECS or similar. Definitely infrastructure as code. Have contacted their Non-Profit arm to see if we can get n hours free.

From @bakersemail on May 27, 2017 1:7
Perhaps could remove it and instead have a confirmation password? This would make it consistent with the forgot password page too (from what I can tell from the source code).
Speaking of production - any thoughts on how this site will be migrated? I think I remember you mentioning changing hosting in the reddit thread? If we're going to have long running general conversations, do you think it's worthwhile setting up a slack for that?

Not yet, analytics only now going in (open issue). Happy to do the confirmation field as part of this task if you're keen :smile_cat:

From @bakersemail on May 27, 2017 1:31
I guess so - but we need to consider the user base. I doubt many users would be used to using password managers? Do we know any stats on number of users who sign up, then pretty much straight away perform a forgot password perhaps because of a typeo?

From @bakersemail on May 27, 2017 16:2
Sorry - I can't find this email? Is it in the database?

From @bakersemail on May 27, 2017 16:20
Code committed to master (should we be doing pull branches?)/
https://gitlab.com/ljs/sleepbus/commit/a6a2e3bf07dfa435f48f1a067ce93a68ef570cab
Please review and let me know if okay to go ahead.

From @bakersemail on May 27, 2017 16:34
Sorry - think I found it. Commited fix.

Thanks! Checking now

All good, many thanks! This is on test server and awaiting next deploy.
Re branches, I put a few more notes in the readme
I'm not too worried about the git history right now, as we'll reset it when shifting to GitHub.


fix checkstyle

Coverage increased (+1.7%) to 87.941% when pulling e80fbff207a894fc9560ef60dd3a9c89976bcc7e on ashpa:master into fcab8995aadb15bbaee92636f9b5c5dac07927d1 on CS2103JUN2017-T4:master.


Decide between #gzm and #zeus for command line

@Tyypal decided it should be #zeus because it is currently what is used by external users.


Project will not open at checkout in Android Studio

Trying to open this project while checking it out in Android Studio fails. An error message about unknown SDK location appears.
However, if I answer "No" to the question "You have checked out a project, would you like to open it?", and then later "Open existing project", it works.

I am not sure if this is related with the app. Do you experience same issue with different apps?

I have never before seen a project fail to open immediately after checking it out. This failure is what made me try answering "No", and then later (successfully) opening it. In any case, not a big deal.


Where is the Vulnerabilities of an SBOM endpoint?

http://localhost:8080/swagger-ui/

I can not find neither the issue nor the PR where the vulnerabilities of each sbom was moved to something like /api/v1/sbom/{id}/vulnerabilities. That new endpoint is not listed in the openapi.yaml from this repo. Could we add the new endpoint to the openapi spe please? @ctron you might remember it as I think you did that change but I am not sure.
As of today the UI has a very strong dependency to the openapi.yaml file so unless an endpoint is not listed then I can not use it in the UI.

Oh no... I was blind, it seems the endpoint I was looking for is /api/v1/sbom/{id}/advisory which is defined in the openapi spec. Closing this issue as I found what I was looking for, sorry for the  noise


Total head VS Pressure head

Description
Hello, just a simple question. The output 'head' from TSnet is in fact the Pressure head of the system?
(https://www.thermal-engineering.org/what-is-hydraulic-head-definition/) and not the total head equal to the sum of the Pressure head, Velocity head and Elevation head?  Thanks a lot for the clarification!
Best,
Iordan

Hi Iordan,
The head results refer to the piezometric head (pressure head + elevation).

Thanks for the kind answer @glorialulu  !! :)


SignaturePad Problem if enable debugging is not checked

Hello mates,
I have a problem with the signatureService.
I add this line after del Forms.Init() in the AppDelegate:
App.SignatureService = new Acr.XamForms.SignaturePad.iOS.SignatureService ();
If i have checked the option "Enable developer instrumentation" and "enable debugging" in the Options-> "iOS Build" in mode release the app works perfectly, but if i unchecked this options the app does not run.
If I comment the line of the signature service the app runs perfectly, but the signature does not work.
In the App.cs of the PCL I have this:
public static Acr.XamForms.SignaturePad.ISignatureService SignatureService { get; set; }
It is the variable that i initialize on the AppDelegate.
Any idea to solve this?
Thanks a lot in advance!

What doesn't run?  What is the exception?  You need to file your defects with much more detail!!
You should read the following as I'm expecting the issue that you are having has been answered many times:
https://github.com/aritchie/acr-xamarin-forms/issues/86

The ipa is generated, but when i tap on the icon of the app, the app open and then close itself.
You only see the black screen of launching.

Enable linking in debug mode.  If you do know how to do that, you need to read up on the linker with xamarin.
#86 will answer your problem.

I put this in a iOS interface that i call at the begin of the app:
if (App.SignatureService == null) {
App.SignatureService = new Acr.XamForms.SignaturePad.iOS.SignatureService (); //This line it was in the app delegate
}
And now it is working!!
Thanks a lot again!!


Bring back modulesPath

I'm thinking of bringing this line back:
https://github.com/NixOS/nixpkgs/commit/f69ce50529c5108d4dababfd221652ace55264bd#diff-e29cca50467118cb72b2d2c8f97cd7caL60
and getting rid of nixos/modules/misc/extra-arguments.nix. Does anyone have objections? I fully buy the ability to pass arguments in the module system using _module.args, but if it doesn't work (and breaks in a horrible way) for the most common use case (modulesPath in imports), that seems bad and the cost of restoring the old way seems pretty low.
Anyone have objections? I can make the change if nobody objects. Ideally, I'd like it in 15.06, since it's getting in the way of some work I'm trying to squeeze into 15.06.
cc @nbp @shlevy @edolstra

IMO our only choices are to do this or to set as a prerequisite (perhaps enforced using scopedImport) that <nixpkgs/nixos/modules> points there. No strong preference either way.

@copumpkin Yeah, this is probably the best solution.

Cool! Do any of you know of VM tests that would suitably make sure I don't break anything too obvious by making that change? I'd obviously rather not make the change and then discover a week from now that I broke someone's key use case :smile:
I'll be making the change this evening at this rate.

@edolstra Any thoughts on having eval-config.nix set modulePath using scopedImport? That way lib/modules.nix stays NixOS-independent. But not a huge difference IMO.

I don't see how adding modulesPath back could break anything.

Famous last words! :grinning: But I agree, as long as it evaluates at all it's almost certainly fine.

@shlevy That sounds more complicated than the one-liner suggested by @copumpkin.


Custom entry point

So, like the title says, is there a way to create a custom entry point instead of always being main() ?

In this respect w64devkit is no different than any other Mingw-w64
distribution, so you can use the same approach as elsewhere. That being
said:
As with most other platforms, "main" is not the entry point. The entry
point is in the CRT (i.e. "crt0"), which does some initialization then
calls your program's main function. It also does finalization (flushing
buffers, etc.) when your main function returns. It links to a specific
symbol in your program, so you cannot change it without changing CRTs.
Even "WinMain" isn't the true entry point, just one of the conventional
names for the main function. Mingw-w64 prefers "main" over "WinMain" if
you supply both.
If you're using C (or assembly) you can opt out of using a CRT, and so you
get to choose the entry point. Conventionally it's called mainCRTStartup
for console programs. Some of the w64devkit programs do this, including
w64devit.exe itself. You can use the linker (ld) option --entry (-e) to
choose the entry point symbol, and you can pass linker options via GCC
using -Wl. Note: if you don't choose an entry point, and you don't use a
conventional entry point name, the Mingw-w64 toolchain will, without
warning (!), choose the first function that to appear in the image.
If you compile without a CRT, due to an old Mingw-w64 bug you cannot
create a function called "main". There's a hardcoded, implicit call to CRT
"__main" that you cannot disable short of using a different function name.
Building a program without a CRT requires good Win32 knowledge and can be
a lot of work since you're effectively building your own CRT. There are
finicky, undocumented details to address, and you'll be fighting the
toolchain (ex. the "__main" thing), which really isn't designed for this
use case. In non-trivial programs you will need to omit stack probes
(-mno-stack-arg-probe) and commit a larger stack (--stack=...) on startup.
See here:
Small, Freestanding Windows Executables
https://nullprogram.com/blog/2016/01/31/
C++ requires much more runtime support, and it's probably not reasonable
to take this route with C++.


ajax能调通OpenAi的接口，也能访问外网，但是jar运行该项目会显示链接超时

org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://api.openai.com/v1/completions": Connection timed out: connect; nested exception is java.net.ConnectException: Connection timed out: connect
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:785) ~[spring-web-5.3.19.jar:5.3.19]

It seems your jar application can not access openai.
I guess that Ajax accesses openai using the browser proxy, but your jar application does not use it.


feat(transports) add support for IPFS and IPNS

This PR has come together following our conversation on Twitter.
It adds support for resolving tarballs with CIDs or packuments with IPNS names.
So a users' package.json would be able to contain this sort of thing:
{
  "name": "my-module",
  // ...
  "dependencies": {
    "express": "ipfs://Qmfoo",
    "hapi": "ipns://QmFoo#^18.0.0",
    "http-server": "^0.11.0"
  }
}

Here express is essentially doing something similar to"express": "https://example.com/some-tarball.tgz" whereas hapi is using an IPNS name that would resolve to a packument and the semver range ^18.0.0 would be resolved from that packument and for http-server, the npm cli would talk to the public registry as normal.
To prevent the need to bundle IPFS with npm it uses ipfs-http-client, the idea is that the user would already be running an IPFS node (perhaps through IPFS Desktop or a normal install).  They can then either specify the API port on each invocation with --ipfs-url=http://localhost:5001 or just once with npm config set ipfs-url http://localhost:5001.
I'd love to know what you think & work through any required changes, etc.

Requires npm/npm-package-arg#37 merging.

whoa, cool. This is a really cool and thorough PR, great job!
So, how does this perform compared to registry or git packages? 🤔

Sorry for my delay in replying.
The performance can vary.  I tried using installing big-number via a bunch of different methods (chosen because it's reasonably popular and doesn't have any dependencies).
Each time I deleted ~/.npm, package-lock.json, node_modules, as well as ~/.ipfs to ensure every run was uncached, apart from the 'local node' test which required the ~/.ipfs dir to be intact.
I ran each test 10 times, eliminated outliers (anything more than +/- 2x the mean) and took the average & standard deviation.
Data comes from npm's timing logs (e.g. npm timing npm Completed in XXXXms).
http registry
Avg: 830.4ms
Std dev: 22.94ms
git
Avg: 2703.4ms
Std dev: 196.2ms
Local IPFS node that already has the tarball
Avg: 1022.4ms
Std dev: 15.7ms
Direct connection to IPFS node on the same LAN that has the tarball
Avg: 1977ms
Std dev: 1267ms
Direct connection to remote node that has the tarball (e.g. over the Internet)
Avg: 2697.6ms
Std dev: 1559.9ms
Searching the DHT for the tarball
Avg: 5239.2
Std dev: 2467.1ms

So best case it's about 25% slower than http but almost 3x faster than git.
Looking content up via the DHT is the worst, but once you've used it to find a node that can resolve content for your CID you make & keep a connection to them - if you're requesting a bunch of modules chances are that remote node will also be able to resolve your subsequent requests too so over time performance should tend towards the Direct connection to remote node timings, which would make it vaguely comparable to git packages in speed.

Thank you! That's super useful to see. It's nice that it's not much worse than git. I'm definitely pretty surprised that it's still slower than a regular registry dependency when using a local node, or even a LAN connection, since I would've expected IPFS to really shine in that use case. Is that something we can expect to see improving in the future? Are there any cases where you can see that performing better than regular http, now or in the future?
Going forward, I really like having had this as a proof of concept, and I think it's really driving answers to some questions about where distributed package distribution (pun intended) can fit in with the overall npm story. I do think that before accepting something like this, we need to have a better understanding of that story and people's workflows. Ideally, too, if we decided to accept something like this, I imagine I would also want to see support for IPFS-fetched tarballs in registry-based packages so, for example, one could have a centralized index and IPFS-based tarballs.
Anyway, thank you again. I look forward to continuing this conversation. I hope you don't mind me not merging this right now and I want to reiterate how much I appreciate you taking the lead with this work and doing the research necessary to move it forward. Cheers!

LAN connection performance

The IPFS node does a bunch more work in the background than HTTP so there's always going to be some overhead (e.g. bitswap, connection negotiation to multiple peers, hashing, verification, etc), plus the npm process is going over HTTP to a local IPFS daemon so there's added latency there.
I can see it being better than regular HTTP if you have lots of nodes on the same network with the content you are after - it will take a chunk from node A, a chunk from node B, etc.
It would be way better than HTTP if you disconnected the Internet or had slow DNS - IPFS is really good with flaky Internet connections.  If you were on a plane or in a field or something and someone nearby has the content you are after it would be the only game in town, apart from USB sticks I suppose 😉
But you are right, performance can definitely improve and it's very much a focus at the moment though it could be done outside the scope of this PR.

I would also want to see support for IPFS-fetched tarballs in registry-based packages

This sounds a bit like what I was trying to get at here - we've done some experimenting with adding content identifiers on-demand to the npm registry (search for "cid": here https://registry.js.ipfs.io/pacote for example) so the client would use the meta data from the npm registry for version selection, then IPFS or HTTP or both to retrieve the tarball and it would be completely transparent to the user.

I look forward to continuing this conversation. I hope you don't mind me not merging this right now

Sure - I'm happy to unpack and discuss any ideas in this thread further.
It would be really great to get IPFS/dweb support into the npm cli though - what would it take to get this merged?

Please have a look at the discussion for proper url scheme : https://github.com/ipfs/go-ipfs/issues/1678
in particular : https://github.com/ipfs/go-ipfs/issues/1678#issuecomment-157478515
So instead of ipfs://Qmfoo... it should be fs:/ipfs/Qmfoo...
and ipns://QmFoo#^18.0.0" should be fs:/ipns/QmFoo#^18.0.0"

@zkat

Is that something we can expect to see improving in the future? Are there any cases where you can see that performing better than regular http, now or in the future?

I'm pretty sure that's a implementation-specific issue.
For Open-Registry, I wrote a WIP called Bolivar that basically acts as a HTTP>IPFS gateway locally, but connecting directly with some peers to facilitate content-discovery.
In every case I've tested, Bolivar is the fastest way of installing packages, even for first-time hits, and the proxy being connected to Open-Registry instead of directly to npm.

lease have a look at the discussion for proper url scheme : ipfs/go-ipfs#1678

@wighawag oops, the issue you linked is from 2015, we need to update it.
FYSA since then fs:/ got deprecated and we switched to ipfs://, ipns:// and dweb:/:

relevant discussion was summarized in https://github.com/ipfs/specs/pull/152
memo about current consensus can be found at ipfs/in-web-browsers/ADDRESSING.md


Agreement cancellation

Implemented agreement cancellation. Each party can cancel agreement until the tenant has signed it (as he is the last one who does it). Found some conceptual issues between agreement rejection and cancellation. We should clarify what does each mean.

Regarding the conceptual issue, the way we have modelled and implemented it is that rejection may only take place during the review/feedback loop by the recipient party. From there on out, the action is called cancellation for both roles as I think it makes more sense to "Cancel what we have already agreed upon" rather than "Reject on what we have already agreed upon". I hope this clears it up.

Ok, agreed, thanks for fixes


Readme typo fix

@circumspect, thanks for raising this issue!
Fixed in v1.0.2
Sorry for the late reply.


Document retryMode in installation-configuration.md of AWS provider

Description
Document retryMode in installation-configuration.md of AWS provider
Adding a new package?
If this pull request adds a new package:

[ ] The package's schema URL is correct.
[ ] The package metadata file, if present, contains:

[ ] a supported category (one of Cloud, Infrastructure, Network, Database, Monitoring, or Utility).
[ ] a description that explains what the package does.
[ ] a valid logo URL that points to a PNG whose dimensions conform to the others in this repo (e.g., 100x100).
[ ] a version number prefixed with v that corresponds with a valid GitHub release.

[ ] The package repo contains an Overview doc (/docs/_index.md) that includes:

[ ] a brief explanation of what the package is and what it does.
[ ] at least one representative example in all supported languages.
[ ] a front-matter property for the layout set to package.

[ ] The package repo contains an Installation and Configuration doc (/docs/installation-configuration.md) that includes:

[ ] links to SDKs in all supported languages.
[ ] a copyable command for installing the resource plugin if necessary.
[ ] an example of configuring the provider with pulumi config set.
[ ] an example of configuring the provider with environment variables.

[ ] Someone from the @pulumi/ai team has reviewed the PR.
[ ] Someone from the @pulumi/docs team has reviewed all documentation.

https://github.com/search?q=repo%3Apulumi%2Fpulumi-aws retryMode&type=code


The from address does not match

Issue Summary
I'm trying to integrate nodejs app with SendGrid, by submitting contact form in the front-end
so from mail could be any one
and to will be me
And I got this message
Code Snippet
sendGrid.setApiKey(process.env.MY_SENDGRID_API_KEY);

    const msg = {
      to<EMAIL_ADDRESS>      from<EMAIL_ADDRESS>      subject: 'Sending with SendGrid is Fun',
      text: message,
      html: `<strong>${name} is trying to get in touch with you!</strong>`,
    };
    return sendGrid.send(msg);

Exception/Log
"message": "The from address does not match a verified Sender Identity. Mail cannot be sent until this error is resolved. Visit https://sendgrid.com/docs/for-developers/sending-email/sender-identity/ to see the Sender Identity requirements",

Technical details:

sendgrid-nodejs version: latest
node version: 10.16.0

This use case is not supported. The sender needs to be a verified sender identity: https://sendgrid.com/docs/for-developers/sending-email/sender-identity/

@childish-sambino booooo

You need to verify the mail that is the sender. I solved this problem in this way:
Go here:
Setting -> Sender Authentication -> Single Sender Verification -> Verify an Address
Example
After that, fill out the form on the right and complete the verification of the sender's mail.
You can read with more detail here.

@a5okol

I still get this error even though I have successfully completed the single sender verification!

I have the same problem. I have verified my sender address and still get this message

I have the same problem.
I had already completed "Domain Authentication" so until 2/17 "Single Sender Verification" wasn't an issue.

I have the same problem. I have verified the domain and I still get this 403.

Kindly set verified sender email address in "setFrom" method of smtp

Thank you for helping out @Abhijeet-Ashapure!

I am using Send grid with Django, my sender address is verified but I am too getting same error" The from address does not match a verified Sender Identity ". Will appreciate any form of help.

@Abhijeet-Ashapure I am getting the same error on my django app.

Can anyone help me fix this ?

Hi @Rahulm2310 we don't track comments on closed issues. Please open a new issue here.

Kindly set verified sender email address in "setFrom" method of smtp

please i'm using postman but it's not working

I have the same problem. I have verified the domain and I still get this 403.

For anyone wondering, If you're using the default email templates you need to set your shipper email to your sendgrid verified email as it overrides the default.
http://localhost:1337/admin/settings/users-permissions/email-templates

use phpmailer or laravel mail

Same problem here! In our case, we are using Strapi. Both domain and email are verified, still getting the 403.

make sure you use the correct port. sendgrid does not use the default smtp port

make sure you use the correct port. sendgrid does not use the default smtp port
SENDGRID_PORT=465

Definitely not related to the port. Thanks, though.

I had same problem, first i set-up the sender verification :
https://docs.sendgrid.com/ui/sending-email/sender-verification
then in Node source code,  i just changed the email in  "to:" , so the receiver "to :" is not the same email as the sender "from:".. and thats fixed the issue ..
i found the email in the junk mail. hope this work with you.

¡El mismo problema aqui! En nuestro caso, estamos usando Strapi. Tanto el dominio como el correo electrónico están verificados, aún obteniendo el 403.

Hi @zoix . I have the same error with Strapi. Do you found any solution?

Hey @sergiocelis-aite / unfortunately not; we didn’t spend too much time on it and ended up going with a different provider.
Not sure if this helps, but if this still an issue and both domain and email are verified, I would start by checking the api key.


Constantly rising connection count.

I am noticing there is a build up of open sockets which are constantly rising.
It looks like it traces back to this line 158.  When line 156 errors, an explicit call to out.sock.Close() is needed before proceeding.  I've tested this out and can confirm it fixes the issues.
I would be more than happy to submit a PR if that is ok?  Please let me know.

@euforia Please feel free to submit a PR! Thanks!


[ping] Run privileged ping tests as well.

I think this PR addresses this too: https://github.com/google/cloudprober/issues/227.


Application.user_data_dir on android shouldn't be hardcoded

Currently Application.user_data_dir on android returns /sdcard/<app_name>, which is not always correct for extrernal storage.
Supposedly it should return the result of
Environment.getExternalStorageDirectory().getAbsolutePath();

as mentioned in http://stackoverflow.com/questions/3853472/creating-a-directory-in-sdcard-fails.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/6614505-application-user_data_dir-on-android-shouldn-t-be-hardcoded?utm_campaign=plugin&utm_content=tracker%2F42681&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F42681&utm_medium=issues&utm_source=github).

Duplicate of https://github.com/kivy/kivy/issues/2990.


Could Not get Botframework Token

Rasa Open Source version
2.0.2
Rasa SDK version
2.1.1
Python version
3.8
What operating system are you using?
Linux
What happened?
When tried to Integrate with MS Teams using tools like Developer Tools, Bot Framework
Facing an Issue:
Could not get botframework token
Error trying to send botframework message: Response: {"Message": "Authorization has been denied to this request"}
Followed all steps to make it work,but couldn't be able to make the connection.
Reference: https://rasa.com/docs/rasa/connectors/microsoft-bot-framework/
Please find the issue snaps:

Command / Request
No response
Relevant log output
No response

Hi @znat still the issue was same with RASA 3.x version.


Fix version check for LLVM < 6.0

This is a minor fixup for the LLVM 6.0 support quick fix  (#6380) that changes the versions check for "below 6.0" (<= 5.9) to <= 5.0 since there wont be any new 5.x versions after 5.0.

Not sure this is worth merging.

http://blog.llvm.org/2016/12/llvms-new-versioning-scheme.html

Patch releases will increment the patch component as before (producing versions like 5.0.1), and the minor component will stay at zero since no minor releases will be made.

This is either incorrect or a purely-aesthetic change, depending on the implementation of LLVM_VERSION_LE. I vote close.

Why not change the 9 to a prettier number like 42?

This is either an incorrect PR or a purely-aesthetic change, depending on the implementation of LLVM_VERSION_LE.

I can assure you it is not incorrect, the previous code was.
The LLVM_VERSION_LE macro only checks the major and minor version of LLVM. After LLVM 5.0 there is 6.0 and the next version will be 7.0. There are patch releases like 5.0.1/5.0.2, but there will never be a 5.1 release.
The only reason I initially used 5.9 as a check, is because I wanted to write "lower than 6.0" and then noticed the macro was lower-than-or-equal so I change it from 6.0 to 5.9, which technically works, but is confusing to the reader of the code.


⚠ Bofrost.at has degraded performance

In 5c49652, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1029 ms

Resolved: Bofrost.at performance has improved in fafac61.


[release-1.10] Add name to port

This helps with Istio testing since without name istio doesn't know the protocol

https://istio.io/latest/docs/ops/configuration/traffic-management/protocol-selection/#explicit-protocol-selection
https://istio.io/latest/docs/ops/common-problems/security-issues/#make-sure-you-are-not-using-http-only-fields-on-tcp-ports

/cherry-pick release-1.9

/cc @creydr @ReToCode


Use ImGuiListClipper to draw just visible output lines

As title says.
Fixes #321

Dont know why the check died?
Tried to rebuild release, as I just build debug always (no rebuilds).
Still builds...
Just a note, as I dont know what is the exact cause of the fail here... Seems it cannot find some mimalloc exports for whatever reason.

Lol, just forced to rerun check with force push and it worked... Something seems bugged with the check 🤔


jq: query failed: %!v(PANIC=Error method: invalid type: []map[string]interface {}

I'm trying to use jq directly against Go structures instead of unmarshaled JSON. This test case fails:
func TestQueryAny(t *testing.T) {
        // `{"loadpoints":[{"id":1}]}`
	var data any = map[string]any{
		"loadpoints": []map[string]any{
			{
				"id": 1,
			},
		},
	}

	// uncomment to fix
	// j, _ := json.Marshal(data)
	// _ = json.Unmarshal(j, &data)

	query, err := gojq.Parse(".loadpoints[0].id")
	assert.NoError(t, err)

	iter := query.Run(data)

	v, ok := iter.Next()
	assert.True(t, ok)

	if err, ok := v.(error); ok {
		assert.NoError(t, err)
	}
}

Running the same query on the unmarshaled json works fine. Please advise if this is unexpected usage of the library?

@andig hey, i think you want:
data := map[string]any{
	"loadpoints": []any{
		map[string]any{
			"id": 1,
		},
	},
}

[]map[string] is not a type used by gojq, it wants []any

Could you point me to where in the code that happens? Should bot be too difficult, to assign type to any in this case, but its really ugly to do this for the source any.

I guess the panic you see if from here https://github.com/itchyny/gojq/blob/bf454af8ae4b652543220a5a67456109224518de/type.go#L27 or https://github.com/itchyny/gojq/blob/bf454af8ae4b652543220a5a67456109224518de/encoder.go#L72 i think @itchyny probably have to answer about assigning/converting but i guess for implementation simplicity

Thank you for the pointers. These two would be simple to fix, maybe like this:
func TypeOf(v any) string {
	switch v.(type) {
	case nil:
		return "null"
	case bool:
		return "boolean"
	case int, float64, *big.Int:
		return "number"
	case string:
		return "string"
	default:
		switch typ := reflect.TypeOf(v); typ.Kind() {
		case reflect.Slice:
			return "array"
		case reflect.Map:
			if typ.Key().Kind() == reflect.String {
				return "object"
			}
			fallthrough
		default:
			panic(fmt.Sprintf("invalid type: %[1]T (%[1]v)", v))
		}
	}
}

However, there is a larger bunch of type checks around like these:
case int, float64, *big.Int:
	i, _ := toInt(x)
	switch v := v.(type) {
	case nil:
		return nil
	case []any:
		return index(v, i)
	case string:
		return indexString(v, i)
	default:
		return &expectedArrayError{v}

Changing every single occurrence would be quite a refactor. It seems it would be easier to apply this transformation on the source than in gojq. That said- that is basically what passing it through json does apparently.

This limitation is mentioned in the README.md.

The type should be []any for an array and map[string]any for a map (just like decoded to an any using the encoding/json package). You can't use []int or map[string]string, for example.

This limitation not only simplifies the implementation, but improves the performance (reflection is slow), and also makes the library extention (consider if WithFunction user have to handle any type of slice and mapq).

Thank you for the feedback and sorry for not noticing this in the README! Happy with the wontfix :)


Handle double typedef'd structs better.

I have a third party closed source library that I am wrapping to python that ctypesgen doesn't handle well due to the typdef choices made by the library authors.
Specifically, all structs are defined in the following manner:
typdef struct {
  int a;
  char b;
} FOO, *PFOO;

With functions that look like:
void Foo_Func(PFOO pFoo);

ctypesgen then creates something like the following:
class struct_anon_311(Structure):
    pass
FOO = struct_anon_311

class struct_anon_312(Structure):
    pass
PFOO = POINTER(struct_anon_312)

This is pretty unusable since there is no safe way to create a struct_anon_312 object, and the PFOO pointer won't accept a FOO object.
What ctypes should really do is:
class struct_anon_311(Structure):
    pass
FOO = struct_anon_311
PFOO = POINTER(struct_anon_311)

One note: It doesn't do this when the structs aren't anonymous.
So something like
typdef foo_struct {
  int a;
  char b;
} FOO, *PFOO;

is handled correctly.

Very interesting corner case.  Looking at it...


Re-Write All Test Cases

Many of the test current test cases fail due to the information on the test server not being the same as when the test cases were written.
Moving forward, all test cases should be re-written to be self sufficient. IE, if we need to test deleting a database, create a database first. Or if we need to test uploading a document, store that pdf in the repository.
Test cases should pass no matter which system we are on.

New tests will need to be written for Async Methods


Don't fail if we can't acquire readonly lock

This commit updates support from #6940 to not only gracefully handle
situations where the lock can be acquired in readonly but not read/write
mode but also handle situations where even a readonly lock can't be
acquired. If a readonly lock can't be acquired (and the read/write
failed) then we likely can't touch anything in the directory, so there's
no value gained from locking anyway.
Closes #7147

r? @nrc
(rust_highfive has picked a reviewer for you, use r? to override)

@bors r+

:pushpin: Commit 650ae6558ebba3cfe48f90a679dd265caf5a9a83 has been approved by ehuss

:hourglass: Testing commit 650ae6558ebba3cfe48f90a679dd265caf5a9a83 with merge 2b21fa68368f13b43f4c34886116df2e1b9d276e...

:sunny: Test successful - checks-travis, status-appveyor
Approved by: ehuss
Pushing 2b21fa68368f13b43f4c34886116df2e1b9d276e to master...

I can still reproduce this issue on stable, beta and nightly when the HOME environment variable is set to a non-existing directory, and that the file .package-cache does not exists.

@nbp nightly hasn't been updated, yet.  It is updated around once a week, I'll probably do it today, and it may show up in a couple days after that.

Thanks for the notice, I did not saw that this was only fixed 4 days ago.
Would it be possible to backport it to stable once it is checked on Nightly?

It may be difficult to backport to stable.  Generally stable point releases are only made for very critical issues, and AFAIK there isn't anything queued to justify a stable release.  I realize that breaking the build for Debian is painful, though.  I think that's a call for the release team.  I'm not sure what the official process would be, but I would just ask them on #release on Discord if you want to make a case for it.  I've only ever backported something to stable once, and that was opportunistic because a stable point release was being made for other reasons.
I'll prepare a beta backport now, though.


Support markdown or html format for message.

Fixed #1

Current coverage is 100% (diff: 100%)

Merging #2 into master will not change coverage

@@           master    #2   diff @@
===================================
  Files           1     1
  Lines          48    49     +1
  Methods         0     0
  Messages        0     0
  Branches        0     0
===================================
+ Hits           48    49     +1
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update 75c04ea...2442a20


Change Eigen (not latest) with a few warnings suppressed

On ADoak we have an updated version of Eigen (not now the latest) with a few tweaks to suppress compiler warnings generated from R CMD SHLIB's compiler invocations.  This PR moves that version of Eigen over to devel.  It removes compiler warnings on my system.  We could update further or other ideas, but this is a practical step for now.

@paciorek @danielturek What do you think of merging this?  It will make other work easier.

Fine by me.
I am still getting a slew of warnings on Linux.

@paciorek At some point let's see if we can quiet warnings down on linux too.  I'm going to merge this because because it makes work on the C++ code much easier on OS X.  Also setting up ccache might help quiet warnings (and make builds faster).


Test flaky failure observed

Describe the bug
I ran this test for many many times in normal settings and got the following failures for many times.
Debug log
Running org.java_websocket.issues.Issue580Test
WebSocketConnectReadThread-41
at java.base@11.0.17/java.net.SocketInputStream.socketRead0(Native Method)
at java.base@11.0.17/java.net.SocketInputStream.socketRead(SocketInputStream.java:115)
at java.base@11.0.17/java.net.SocketInputStream.read(SocketInputStream.java:168)
at java.base@11.0.17/java.net.SocketInputStream.read(SocketInputStream.java:140)
at java.base@11.0.17/java.net.SocketInputStream.read(SocketInputStream.java:126)
at app//org.java_websocket.client.WebSocketClient.run(WebSocketClient.java:515)
at java.base@11.0.17/java.lang.Thread.run(Thread.java:829)
WebSocketWriteThread-42
at java.base@11.0.17/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.17/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.17/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.17/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
at app//org.java_websocket.client.WebSocketClient$WebsocketWriteThread.runWriteData(WebSocketClient.java:816)
at app//org.java_websocket.client.WebSocketClient$WebsocketWriteThread.run(WebSocketClient.java:799)
at java.base@11.0.17/java.lang.Thread.run(Thread.java:829)
connectionLostChecker-1
at java.base@11.0.17/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.17/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.17/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at java.base@11.0.17/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
at java.base@11.0.17/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
at java.base@11.0.17/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.17/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.17/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base@11.0.17/java.lang.Thread.run(Thread.java:829)
[ERROR] Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.48 s <<< FAILURE! - in org.java_websocket.issues.Issue580Test
[ERROR] runNoCloseBlockingTestScenario7  Time elapsed: 1.44 s  <<< FAILURE!
java.lang.AssertionError: Found 3 zombie thread(s)
[INFO]
[INFO] Results:
[INFO]
[ERROR] Failures:
[ERROR]   Issue580Test.runNoCloseBlockingTestScenario[7] Found 3 zombie thread(s)
[INFO]
[ERROR] Tests run: 1, Failures: 1, Errors: 0, Skipped: 0
Steps to reproduce the behavior:
I run the following command many times without modifying anything.
mvn test -Dtest=org.java_websocket.issues.Issue580Test#runNoCloseBlockingTestScenario[7]
This test is also possible to make consistently fail if we inject 100ms delay before the line 496 of the Draft_6455.java
Expected behavior:
Test failure should not occur
Environment(please complete the following information):
I ran the test on an Ubuntu 20.04 LTS machine using OpenJDK 1.8.0_312.

PR closed --> Closing this dead issue therefore


Add sankey chart for Region 3W

Changes

Detailed list or prose of changes
Breaking changes
Changes to configurations

This PR doesn't introduce:

[ ] typos
[ ] conflict markers
[ ] unwanted comments
[ ] temporary files, auto-generated files or secret keys
[ ] console.log meant for debugging
[ ] codegen errors

@frozenhelium @samshara Can we close this PR? Do we need to merge this?

Closing this PR as this as stale.


Add basic var support to the org-src blocks.

This will just wrap the variables into &str (or &[&str]) constants.
It will also not care about the types of the passed variables, except if they are lists - all other type information doesn't matter - everything will be a &str in the end.
Example:
#+name: mytbl
| A | B |
|---+---|
| a | b |
| c | d |
|   | g |
| e | f |

#+begin_src rust :var A=mytbl :var B='("b" "c") :var C="c"
println!("{:?}", A);
println!("{:?}", B);
println!("{:?}", C);
#+end_src

#+RESULTS:
: [["a", "b"], ["c", "d"], ["", "g"], ["e", "f"]]
: ["b", "c"]
: "c"

This seems like a big enough addition that it would be worth adding some tests here.

Ah thanks for the pointer - I only checked where to add it and didn't even check for tests, so 100% agreed on adding some tests! Let me take a look at that.

Thanks!


[ConstraintSystem] Remove ConstraintSystemFlags::ReusePrecheckedType.

This change removes the last use of ConstraintSystemFlags::ReusePrecheckedType in operator code completion, and removes the option altogether from the constraint system.
Now that operator code completion uses an opaque value placeholder with the pre-checked type, code completion no longer needs to send a type checked AST through the constraint system, which was very brittle. Opaque value placeholder expressions were designed to be used as a placeholder for a fully type checked expression, making this a better approach for code completion paths that haven't yet been ported to solver-based completion.

@swift-ci Please SourceKit stress test

@swift-ci please smoke test

Heh, looks like the SourceKit stress test "failed" because it expected https://github.com/apple/swift/issues/58891 to fail, but it was fixed by https://github.com/apple/swift/pull/59740


Incorrect Answer Event

Incorrect Answer Event
User Story
AS A coding boot camp student
I WANT to take a timed quiz on JavaScript fundamentals that stores high scores
SO THAT I can gauge my progress compared to my peers
Acceptance Criteria
GIVEN I am taking a code quiz
WHEN I answer a question incorrectly
THEN time is subtracted from the clock

Feature/incorrect answer event


acl2: 8.2 -> 8.3

Motivation for this change
New upstream version.
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Should either be fixed or marked broken or unsupported on aarch64-linux.

Thanks @alyssais. ACL2 isn't supposed to be fundamentally platform-specific or anything, so I guess "broken" is more appropriate than "unsupported" here (?). I've now marked it as broken on aarch64-linux specifically. I also changed the platforms list to "all", since it's supposed to run on Darwin as well, according to upstream. But it seems that ofborg doesn't test PRs on Darwin, and I don't have a Darwin machine to test on, either...

@ofborg build acl2
OfBorg can build on Darwin, but has a different access policy there.


Update Spanish translation to "Field Papers" (#232)

We were using "Walking Papers" in previous versions and now, we have
migrated to "Field Papers". That's why the docs has to be updated
also.

Thank you!


Default router selection

I'm reading through part 1, and I have a couple of differences of opinion immediately — this is not a reflection on the work you've done, but more a question of philosophy.
In the tutorial, you're suggesting using the zend-mvc router, and the zend-view renderer. Interestingly, our default suggestions are not either of these, but rather FastRoute and Plates, respectively.
The reasons for our current defaults are several:

FastRoute was chosen:

because it's the fastest of the three (based on many, many benchmarks).
because it defines constraints directly in the routing definition (vs. as additional configuration); we've found this is simpler to configure, and also makes understanding what makes a valid route match far easier.

Plates was chosen:

because it's the fastest of the three (based on quite a few benchmarks; this is even true when Twig's caching is in place!).
it uses plain old PHP for templating (just like zend-view).
great documentation.

Additionally, one goal of Expressive has been to showcase that choosing it does not tie developers to Zend Framework components. Developers can choose the technologies that fit their project and/or team expertise. In some cases, that might be a Zend component (for example, I can definitely see a case for using zend-inputfilter or zend-form!); in other cases, we might want to choose something outside the ZF ecosystem.
As such, as I review, I would like to submit pull requests that update the code and content to use the defaults we recommend. Are you okay with that?
The one area I see this being more difficult would be around forms, and I'm assuming you likely are using forms in this tutorial. zend-inputfilter was designed in part to provide a way to process form data without having ties to zend-view, however, so we have a potential way to handle that. If de-coupling proves too difficult, I'll reverse course and revert back to your original choices. However, I'd really like to see if we can accomplish this.

@weierophinney Interesting points. Are they also in the zend-expressive docs?

The one area I see this being more difficult would be around forms, and I'm assuming you likely are using forms in this tutorial. zend-inputfilter was designed in part to provide a way to process form data without having ties to zend-view, however, so we have a potential way to handle that. If de-coupling proves too difficult, I'll reverse course and revert back to your original choices. However, I'd really like to see if we can accomplish this.

You can easily use zend-inputfilter. I've been playing with an idea from @ocramius to build a html form validator. It's based on zend-inputfilter, however some parts I had to hack to get it working with servicemanager 3.
Besides that, you have used a stand alone zend-inputfilter yourself on mwop.net :) If you go this route and create a custom InputFilter, it's even working with servicemanager 3.

@weierophinney
Just a quick note since I need to leave my office now for the whole day.
The idea was to show the flexibility of Zend\Expressive by providing two flavours for the tutorial. One which basically uses all the Zend components, and one which uses all the other great tools like Plates, FastRoute and Doctrine.
My tutorial so far is the Zend components based one.
I'll come back here later.

@RalfEggert Aha! I wasn't clear on that at all!
Here's my idea, then:

I'll continue reviewing chapters, but without component changes. I'll create an alternate PR based off of #16 that does exactly that, and continue from there.
In parallel, for each chapter, I'll provide a PR that updates the chapter to use the default/recommended components and/or 3rd party components (such as Doctrine). I may need assistance with using Doctrine and/or DBAL, but I can definitely tackle the bits and pieces around FastRoute and Plates. We can use these PRs as a jump-start on the second tutorial flavor.

Sound good?

Sounds good. Though I am not quite sure how to handle the PRs for the second tutorial flavor.

@weierophinney
I merged your PRs except the #17 since I am not sure how to handle that. I also added the short tags in the templates in all the parts.

Oh, and I added the docs for part2 in part1 branch as well.

Regarding the Doctrine stuff, maybe @codeliner or @xtreamwayz might be able to help?

@RalfEggert What do you need, all zend-db related stuff converted to doctrine?

@xtreamwayz
Well, yes. @weierophinney is working on the second flavour for the tutorial which will work with Plates, FastRoute and Doctrine. See his comment https://github.com/RalfEggert/zend-expressive-tutorial/issues/15#issuecomment-178599582
Maybe it makes sense, that Matthew finishes the work on the Plates and FastRoute stuff and then someone takes over for Doctrine?

Yeah that makes sense.

@xtreamwayz Would be great if you can take over the Doctrine part. Unfortunately, my time is very limited these days. However, if it is not possible for you let me know and I'll find a way to take over Doctrine.

I will close this now. I think we should finish up this tutorial first before we add a second flavor of it.


Consumer broken when two queues are declared on a channel

When you use a channel for two queue declarations and then you want to consume from one of them, the for in the lapin_async basic.deliver handling may set the connection state such that the next messages are assumed to come for the second queue, but that one doesn't have a consumer, so the messages are dropped.
If this behavior is desired, it should at least be pointed out in the docs. By the way, that's the root cause for https://github.com/sozu-proxy/lapin/issues/165

Yeah, I noticed that with my current rework, it’s fixed locally, just not
yet in a publishable state, but beta is coming soon
On Mon 22 Apr 2019 at 15:13, Lukáš Tyrychtr<EMAIL_ADDRESS>wrote:

When you use a channel for two queue declarations and then you want to
consume from one of them, the for in the lapin_async basic.deliver handling
may set the connection state such that the next messages are assumed to
come for the second queue, but that one doesn't have a consumer, so the
messages are dropped.
If this behavior is desired, it should at least be pointed out in the
docs. By the way, that's the root cause for #165
https://github.com/sozu-proxy/lapin/issues/165
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sozu-proxy/lapin/issues/167, or mute the thread
https://github.com/notifications/unsubscribe-auth/AABWNXTDSDV2GSPZPFEKZJTPRW2WRANCNFSM4HHPT36Q
.

I'll definitely will have a look, probably do a quick test (i'm looking forward to removing the ugly hack which fixes this behavior for me for now).

Can you try with 0.19.0-alpha1?

Seems to work okay with the alpha.


the smiles parser is too brittle

It should first strip each line (remove leading and trailing whitespaces)
then it should treat any consecutive sequence of whitespaces as the separator
between the smiles string and the molecule name
it should fail with an understandable error message in case there
is more than one sequence of whitespaces inside the stripped line

My colleague @mskwark investigated the failure.
I was so annoyed by that, that I went right away to a commercial software to do the job instead of continuing to use rdkit.
Needless to say: the commercial software was parsing correctly and without any complaints all the smiles
strings from my dataset.

@SamuelSchmitz here is your chance to become a famous open source hacker ;)

What function does your complaint refer to?  In Python or C++?  Is it Chem.MolFromSmiles()?  Or maybe the SmilesMolSupplier() class?  Can you give an example of an input you would like processed and the output you expect?

Doesn't string.split() do exactly what you want?
On Wed, Feb 15, 2017 at 11:46 AM tentrillion<EMAIL_ADDRESS>wrote:
What function does your complaint refer to? In Python or C++? Is it
Chem.MolFromSmiles()? Or maybe the SmilesMolSupplier() class? Can you give
an example of an input you would like processed and the output you expect?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rdkit/rdkit/issues/1318#issuecomment-280065727, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACLNFJUtOOtTI85SNXBptl7aNIBNm9gFks5rcyvpgaJpZM4MB8fX
.
--
Yutong Zhao

PS: MolFromSmiles should definitely error out on white spaces. the smiles
spec defines the period as the only correct way to separate mols
On Wed, Feb 15, 2017 at 11:48 AM Yutong Zhao<EMAIL_ADDRESS>wrote:

Doesn't string.split() do exactly what you want?
On Wed, Feb 15, 2017 at 11:46 AM tentrillion<EMAIL_ADDRESS>wrote:
What function does your complaint refer to? In Python or C++? Is it
Chem.MolFromSmiles()? Or maybe the SmilesMolSupplier() class? Can you
give an example of an input you would like processed and the output you
expect?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rdkit/rdkit/issues/1318#issuecomment-280065727, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACLNFJUtOOtTI85SNXBptl7aNIBNm9gFks5rcyvpgaJpZM4MB8fX
.
--
Yutong Zhao

--
Yutong Zhao

From a Python script:
Chem.SmilesMolSupplier(filename)
was my smiles string reader.

the SMILES file format is clearly specified.
http://blueobelisk.shapado.com/questions/what-is-the-proper-format-of-a-smiles-smi-file
And RDKit is capable of parsing that correctly. If your file doesn't follow this format, it's easy to write the file reader with all the necessary string handling in python. I've done this plenty of time.
With all this in mind, I suggest to close this issue.  If the error message is hard to understand, I recommend opening a separate issue that focuses solely on this and includes a better description of the problem including error message and proposal of the type of feedback expected.

Asking everybody to write some cleaning code is much less interesting than having
a robust SMILES parser as the default (like commercial chemoinformatics software do).

@gedeck: "I've done this plenty of time." Usually a good indicator of bad software engineering: you should have done it just once, in the right place. And everybody should benefit from it from then on.

I propose the following less brittle smiles parsing specification:

ignore all leading whitespaces of each line
treat what's next and up to the next whitespace as the SMILES string
treat what's after as the compound name (so that people can parse the compound name
if there is additional info that was hidden in there)

If the rdkit maintainers are OK with that, someone might submit a patch to implement this specification.

I guess that should cover your requirements:
def IncorrectSmilesMolSupplier(filename, separator=None):
  with open(filename) as f:
    for line in f:
      line = line.lstrip().split(separator, 1)
      if len(line) == 0:
        continue
     mol = Chem.MolFromSmiles(line.pop(0))
     yield mol, line[0]

Please note that RDkit is very strict with format conventions. If your SMILES file has whitespace at the beginning of the line, then it is not a SMILES file and SmilesMolSupplier is not the correct class to use.

Very cool this code. It should be renamed RobustSmilesMolSupplier and definitively be contributed to rdkit! :smile:

I think the important distinction here is between "brittle" and "permissive".
The RDKit's SMILES parser is, by design, not permissive. If you provide it input that is not legal SMILES, it does not accept it. Legal SMILES does not contain white space. This has already been covered.
Your request is for something that parses a particular subset of possible input strings that contain SMILES, white space, possibly a compound name, and who knows what else and that extracts the SMILES and, possibly, compound name from those strings. You have the experience as to what types of input strings you want to accept, and what additional information you want to extract and how, so you're the one best qualified to write the function that does that and deploy it to your colleagues. It's easy enough to do this with Python (you can even replace the function Chem.MolFromSmiles if you want).
BTW: be aware that the "SMILES whitespace NAME" approach breaks completely when people are using CXSmiles (ChemAxon's extensions to SMILES), which are becoming increasingly popular.

Something that might help here: the SMILES parsing code now takes an optional parameter object (this was added as part of the CXSmiles support):
https://github.com/rdkit/rdkit/blob/master/Code/GraphMol/SmilesParse/SmilesParse.h#L20
adding a "remove whitespace" option - causing leading and trailing whitespace to be removed - to this would be pretty straightforward.

Color me embarrassed, the SMILES parser already supports stripping whitespace:
In [4]: Chem.MolToSmiles(Chem.MolFromSmiles("  CCC  \t"),True)
Out[4]: 'CCC'

I added this a long time ago and (clearly) forgot about it.
So now I'm confused. @UnixJunkie : what is the code you're using that provoked the complaints?

@greglandrum I was using Chem.SmilesMolSupplier(filename).
I will try Chem.MolFromSmiles to see if it is permissive enough in my case.

OK, this does the job pretty well (and thanks to @gedeck for the inspiration):
def RobustSmilesMolSupplier(filename):
    with open(filename) as f:
        for line in f:
            split = line.split()
            smile = split[0]
            mol_name = split[1]
            mol = Chem.MolFromSmiles(smile)
            yield mol, mol_name

Now I'm genuinely curious. If you are using the SmilesMolSupplier you can specify the delimiter directly and it will do pretty much the same thing as Peter's example unless you have different delimiters on each line or want to ignore multiple delimiters between the smiles and the name.
What does your input look like?

Try this:
smis = ['  CC', '  CCOC', 'CCO    ']
for mol in Chem.SmilesMolSupplierFromText('\n'.join(smis)):
      print(Chem.MolToSmiles(mol))

Only prints CCO. The leading spaces are not ignored.

Sure. That's because it's assuming that a space is a delimiter, which is what you've (implicitly) told it.
This, on the other hand, works just fine:
smis = ['  CC', '  CCOC', 'CCO    ']
for mol in Chem.SmilesMolSupplierFromText('\n'.join(smis),delimiter='\t',titleLine=False):
    print(Chem.MolToSmiles(mol))

My smiles come from this dataset: http://www.nrlist.drugdesign.fr/download.php
Yes they are not clean, but that's the real world.
They can have leading and trailing whitespaces and several whitespaces as the delimiter between smile string and compound name.

Do you have an example?

They are attached.
On 02/16/2017 10:41 AM, Greg Landrum wrote:

Do you have an example?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/rdkit/rdkit/issues/1318#issuecomment-280385386, or
mute the thread
https://github.com/notifications/unsubscribe-auth/AAtCgAqpIn6iWuviqkOmojayxRyu0ouUks5rdHw9gaJpZM4MB8fX.

https://gist.github.com/UnixJunkie/914beac5e862bedbe848facd1e2b303b

Thanks.
Here's what I did to parse that file:
In [9]: suppl = Chem.SmilesMolSupplier('./gistfile1.txt',delimiter='\t',titleLine=False)

In [10]: ms = [x for x in suppl]
len(ms)[18:37:58] Explicit valence for atom # 4 N, 5, is greater than permitted
[18:37:58] ERROR: Could not sanitize molecule on line 3919
[18:37:58] ERROR: Explicit valence for atom # 4 N, 5, is greater than permitted

[18:37:59] Explicit valence for atom # 13 N, 4, is greater than permitted
[18:37:59] ERROR: Could not sanitize molecule on line 7824
[18:37:59] ERROR: Explicit valence for atom # 13 N, 4, is greater than permitted
[18:37:59] Explicit valence for atom # 13 N, 4, is greater than permitted
[18:37:59] ERROR: Could not sanitize molecule on line 7826
[18:37:59] ERROR: Explicit valence for atom # 13 N, 4, is greater than permitted
[18:38:00] Explicit valence for atom # 4 N, 5, is greater than permitted
[18:38:00] ERROR: Could not sanitize molecule on line 8662
[18:38:00] ERROR: Explicit valence for atom # 4 N, 5, is greater than permitted

In [11]: len(ms)
Out[11]: 9902

Some molecules had chemistry problems, but the vast majority read in without problems. There were no complaints about white space or SMILES parsing failures.

In case you have questions about the options:
http://rdkit.org/docs/api/rdkit.Chem.rdmolfiles.SmilesMolSupplier-class.html
The RDKit documentation isn't always as good as it could be, but in this case I think it's ok.

Coming in late to the conversation. UnixJunkie, your expectations of what to do with a SMILES file are wrong.
The problem is that there are several variants of SMILES file, and it was never really defined.
Rather, the original Daylight SMILES file was SMILES plus optional whitespace. If there was a whitespace then everything else to the end of the line was treated as a the record title. This goes back to the original SMILES paper which says that the SMILES string stops at the end of the string or the first whitespace. (BTW, I don't agree with that use, but it explains the historical Daylight context.)
Daylight SMILES files would not handle a leading whitespace, because that corresponds to an empty SMILES string followed by a long title.
Most people use identifiers without whitespaces in them, which lead many to look at the Daylight SMILES files and conclude it was a CSV file. As a result, they did things like add additional columns, and a header line.
With the Daylight software, the header line would be treated as an error, and the additional columns treated as part of the molecule title.
Consider the line:
C1C(C)=C(C=CC(C)=CC=CC(C)=CCO)C(C)(C)C1 vitamin a
With the Daylight tools, the structure gets the title "vitamin a". OEChem follows this tradition.
RDKit is one of the tools which treats a SMILES file as a CSV file, and assumes that the second field is the title. As a result, it uses the title "vitamin", because the "a" counts as the third column.
The portable solution for this is to use tabs to separate the SMILES and the id, and tell RDKit to expect a "\t" as a field delimiter.
This works with tools which expect Daylight-style SMILES file, and those which expect CSV-like SMILES files. Moreover, and as Greg points out, tab-delimited files also gives a way to transition ChemAxon's extensions to SMILES. (Daylight-style parser will end up including those extensions as part of the title. There is, alas, no perfect solution.)
Your expectation that the SMILES parser "should fail with an understandable error message in case there is more than one sequence of whitespaces inside the stripped line" is not robust in the face of real-world data. While people might not really use identifiers like "vitamin a", there are corporate database with identifiers with a space in them, and some people use IUPAC names as identifiers.
My experience is that some tools strip trailing whitespace and others do not. There is no consensus. If it's a tab-separated CSV file with 5 columns and the last few columns are empty because the given field is empty, then those tabs are important because they indicate the number of empty fields.  In this case the tabs need to be processed to get the fields, and only then might the title column be stripped of any trailing whitespace.


Tree shaking is not implemented

Prerequisites

Version:lucide-react@ 0.15.18
Are you running from source/master: false
Are you using a released build: true
Operating system: mac os
Bits: 64 bits

Step to reproduce
Use only some icons and build your react project then analyze it, all the icons are inside the bundle what makes the bundle big.
Resources

Screenshots
A screenshot from my project using only a few icons from lucid-react

A comparision using the same icons from the react-feather library

Solution
I have modified the react-feather library so it can generate lucid icons.
https://www.npmjs.com/package/lucide-icons-react , I would be happy if I could transfer the package maintanance to the lucide team if it is possible, or I can help and publish new version when needed.

@TheOnlyBeardedBeast Thanks for reporting! I will look in to it.


Battery level power automation issue?

I'm standing here just after getting in vrc with everything charged trying to calibrate my fullbody while trackers and controllers are turning off.
steamvr 2.6.2
index controllers
vive 3.0 trackers
logs.zip

That's indeed quite odd, I'll be giving this a test later!

I could indeed reproduce this issue. It should be fixed in 1.13.3 which will be out in a few minutes!


Implement showing project status

People who aren't logged in should still be able to see the detailed answers of a project.  For now, just make a stub with all the answers; we can pretty it up later.

We have implemented this.  It's not pretty, but we can now see the details.  One future possibility is implementing this by displaying the form, with entry mechanisms disabled, but that's not needed to meet this issue tracker.


Setup proxy configuration for now cmd

I'm trying to use now login behind a corporate proxy, is there any way to configure it ?
error  :

Error! request to https://api.zeit.co/now/registration?mode=login failed, reason: connect ETIMEDOUT <IP_ADDRESS>:443

It sounds like your corporation is blocking *.zeit.co. You'll probably need to contact your IT department to allow traffic to that domain.


[RTM] FIX: Initialize SyN SDC more robustly

A failure of initial alignment appears to have resulted in no-op registration, which cascaded. Adding a center-of-mass initial transform appears to have resolved it, but this may not work for partial FoV's that aren't also centered roughly on the midbrain.
Also found a small bug in reading the BBR cost, so fixing that while here.
Fixes #665.

@Gilles86 I was able to run this branch on the data you provided. Could you please confirm that this resolves your issue? (And if you want to run on the rest of the subjects, to make sure we're not breaking other runs, that'd be good.)

Hey @effigies,
Yes. Both subject 02, as well as the 8 other now run completely without errors :).

Let's merge this. We may want to use antsAI for this initialization, since it is robuster. I leave it for the future.


Should we use "default" or a custom StreamID in declareOutputFields?

Ok just I just put a default option for non typed events


[Workflow] Workflow actor state should be saved with a TTL of -1

In what area(s)?

/area runtime

What version of Dapr?

1.11

Expected Behavior
The Dapr Workflow engine should save actor state with a TTL of -1 to ensure any global TTL configuration doesn't cause workflow state to be lost, even if the actor state store has a default TTL specified.
Note that there is some discussion about whether or not TTLs should ever be configured for actor state stores here: https://github.com/dapr/dapr/issues/3658. Either way, the internal workflow actors should defend against this.
Actual Behavior
Workflow actor state is saved without specifying any TTL, making it vulnerable to state store configurations with TTLs configured.
Steps to Reproduce the Problem

Configure an actor state store with a short TTL
Run a long-running workflow that will exceed the above TTL

Release Note
RELEASE NOTE: FIX Prevent actor TTL configuration from disrupting workflows

The default behavior of Dapr components is to not set a TTL if the TTL is unset.

@clintsinger or @olitomlinson would you be able to comment further on this issue? This was originally discussed on Discord, and my understanding was that there could be a default/global TTL configuration placed on state stores. I didn't actually do the work to verify this, though.

@cgillum
I think the problem here is that TTLs can be set completely external to Dapr, depending on the chosen state technology
I.e. in CosmosDb, you can set a default TTL which applies to any document in the container. So, as @berndverst suggests, setting ttl to -1 will override any default TTL behaviours applied outside of Dapr.

@olitomlinson yes, in the case of Cosmos DB you can set a default TTL and in that case you must set -1 to override it. I do not believe any other database we support has the same behavior.
IMHO this is not a Workflows issue but rather we just need to document that people shouldn't enable TTLs with a default value in Cosmos DB.

/keep-alive

Marking as P2 since this may be a corner case. There's also discussion of excluding Azure Cosmos DB from the list of supported workflow state stores, and it seems that may be the only state store potentially impacted.


⚠ St. Lawrence Global Observatory CKAN Sitemap has degraded performance

In 080dc7a, St. Lawrence Global Observatory CKAN Sitemap (https://catalogue.ogsl.ca/sitemap/sitemap-1.xml) experienced degraded performance:

HTTP code: 200
Response time: 17205 ms

Resolved: St. Lawrence Global Observatory CKAN Sitemap performance has improved in dd83faf after 9 minutes.


Error initializing client connection from  Error code: -9806(0x-264E), ERROR: SSLHandshake, code: -9806, reason: errSSLClosedAbort

I am trying to setup SSL enabled web app for OTA(Over The Air installation for iOS applications) in my local network. I am referring tutorial from here http://www.kitura.io/en/resources/tutorials/ssl.html.
One of my HTML page looks like,
<!DOCTYPE html>

If first time.

                        <a class="button button-primary" href="https://<IP_ADDRESS>:8080/install/mycertfile.pem">Install certificate

Install your app.

                        <a class="button button-primary" href="itms-services://?action=download-manifest&url=https://<IP_ADDRESS>:8080/install/manifest.plist">Download Your App

Checking https redirection

                        <a class="button button-primary" href="https://<IP_ADDRESS>:8080/install/second.html">just testing

This page is loading fine and I am able to click on Install certificate button and ale to install the certificate in my mobile device. But when I click on the Download Your App button, iPhone showing error 'Cannot connect to '. Also giving following log in the console
[2018-01-05T14:42:59.055+05:30] [VERBOSE] [HTTPServerRequest.swift:215 parsingCompleted()] HTTP request from=<IP_ADDRESS>; proto=https;
[2018-01-05T14:43:06.984+05:30] [ERROR] [HTTPServer.swift:217 listen(listenSocket:socketManager:)] Error initializing client connection from <IP_ADDRESS>:52250: Error code: -9806(0x-264E), ERROR: SSLHandshake, code: -9806, reason: errSSLClosedAbort

Why server is refusing connection from <IP_ADDRESS>:52250 but allowing connection from <IP_ADDRESS>?

Sorry for the delay in replying - are you still investigating this problem. Please reopen if you would like some help.


helm install fails with unable to recognize ""

Hello,
Running minikube with kubernetes 1.16.3-00 & helm 3.0.0.  When I run:
helm repo add confluentinc https://confluentinc.github.io/cp-helm-charts/
helm repo update
helm install confluentinc/cp-helm-charts --name my-confluent-oss

I get the following error:
Error: validation failed: [unable to recognize "": no matches for kind "Deployment" in version "apps/v1beta2", unable to recognize "": no matches for kind "StatefulSet" in version "apps/v1beta1"]
It looks like commit #326, should've addressed this.  But a point of confusion for me is the part of the message that says: unable to recognize ""
Thanks

I get the same problem. Were you able to resolve?


[WIP] Update dependencies for @jest/fake-timer

Upgrading @sinonjs/fake-timers to version v7

Fixes #11169.
Summary

Test plan

Thanks @HonzaMac! I haven't done this since the types of v7 are really bad. Should probably try to fix that though so we can update.
https://github.com/sinonjs/fake-timers/issues/356#issuecomment-770842838

@SimenB Thank you!
I've updated yarn.lock, but unless types are fixed, we can't proceed with this PR anyway.

@HonzaMac we have runtime errors as well that would be good to fix

@SimenB Thank you!
I had trouble running jest clone locally and specially to extend test suite to verify "refresh()" method.
You were faster! Thanks


Improvements to doc testing

This is a Feature Request
What would you like to be added
Improvements to validating/verifying sample manifests.
Why is this needed
We have many sample manifests under the content/<lang>/examples directories. They are extracted from the markdown sources and then consolidated into the ../examples directory so that they can be easily referenced, reused, and copy-pasted by users.
We have tools (content/<lang>/examples/examples_test.go) for automating the validation of these manifests against the current Kubernetes release. This validation is important given that features are constantly added/deprecated in the upstream project. We want to ensure that what we present on the website always work with current Kubernetes release.
TLDR:
When the testing tool was introduced, there wasn't an easy way to vendor Kubernetes code for testing. We had to manipulate the project layout after cloning the kubernetes/kubernetes project due to some constraints in the way Golang searches for modules. This is no longer a big problem when the community converges to go-mod dependency management. With changes made in #22011, we can test the sample manifests easily:
go test k8s.io/website/content/<lang>/examples

However, we still see rooms for improvements, namely:

[ ] Make the testing code a standalone tool rather than a Go test case, so we can better control the output from the tool.
[ ] Discover the resources from the YAML/JSON files automatically by searching for root-level kind keys, so that

we don't need to hardcode the resource types to check in the Go source
future changes to the examples/ directory do not mandate a change the testing tools

[ ] Make the testing tool part of the gate, and ideally do NOT run the tool if a PR is not touching any sample manifests.
(we used to have this for travis CI but not for netlify).
[ ] Make the testing tool a binary, e.g. a container image, that can be source from an external repo (e.g. a kubernetes-sigs project).

Comments
There are other tools that can be consolidated, such "link checkers", "content-type checkers", etc.

/kind feature
/priority important-longterm
/sig testing

/area web-development

Hi! I think it would be good to prioritize this work. What do you think?
Could GitHub Actions trigger the testing of any changed example files?
@tengqm ,  Can you provide more information about:
Discover the resources from the YAML/JSON files automatically by searching for root-level kind keys, so that we don't need to hardcode the resource types to check in the Go source?
The area should be testing not web-development?

@tengqm , Can you provide more information about:
Discover the resources from the YAML/JSON files automatically by searching for root-level kind keys, so that we don't need > to hardcode the resource types to check in the Go source?

By resource discovery, I meant a replacement of the huge map here which obviously is not an elegant solution going forward.

/remove-lifecycle stale

/remove-lifecycle stale


Fix: removed invalid Professional Services link

Removed footer reference link to Professional Services

Main page redesigned, including new navigation
Still only temporary - more changes to come


Infrastructure hosting

We need to look for hosting providers with opensource/startup plans that we can use.
We are going to be using k8s for a lot of the stuff we do.

Microsoft Azure
Blog: cloudblogs.microsoft.com/opensource/2021/09/28/announcing-azure-credits-for-open-source-projects
Link: opensource.microsoft.com/azure-credits | azure.microsoft.com/products/kubernetes-service
IBM Cloud
It may be possible to talk to IBM about making resources available to us. IBM is relatively nice about this
Link: www.ibm.com/cloud/kubernetes-service
DigitalOcean
Document by DigitalOcean with requirements: do.co/oss-sponsorship
Link: www.digitalocean.com/products/kubernetes
OVH Cloud
Again, like IBM, OVH may discuss resources with you.
Link: www.ovhcloud.com/en/public-cloud/kubernetes
Google Kubernetes Engine (GKE)
» cloud.google.com/startup
Link: cloud.google.com/kubernetes-engine
Red Hat OpenShift Container
Blog: www.redhat.com/en/about/open-source-program-office/contributions
Link:  www.redhat.com/en/technologies/cloud-computing/openshift/container-platform
There are certainly some other hosting providers. Which one we choose will depend on which company offers what kind of resources.


Contact page is not responsive and services buttons animation is not responsive

Is your feature request related to a problem? Please describe.
The contact page is not responsive and the services buttons animation is not responsive on the landing page.
Describe the solution you'd like
I will make the contact page and services button responsive.

@aakankshabhende @shivshankar9 @swati2603 Please check PR #200

@shivshankar9 thank you so much


Potential Energy Calculator

Enter calculator name -
Potential Energy Calculator
Describe calculator functionality -
The Potential Energy Calculator takes the mass(m) of an object (in kg) , displacement(h) of the object (in metre) from the ground, and gravitational acceleration (g) if not the standard 9.8 ms^(-2).
Under which category you wish to place it -

[ ] Computer Science
[ ] Mathematics
[x] Physics
[ ] Chemistry
[ ] Biology
[ ] Art
[ ] Finance
[x] Scientific
[ ] Health
[ ] Sports
[x] Let project owner decide
[ ] Suggest a new category - (Answer here)

can you please assign it to me

Hey @thanmayeem,
Assigned.
You may contribute your code under the folder path -
calc_for_everything\calculators\src\physics\potentialEnergyCalc
Issue completion deadline - 23rd Oct 6:00:00 pm IST
NOTE - In case the issue completion deadline is not met, the issue will be assigned to a new participant

Kindly assign me this issue as the deadline has passed.

@thanmayeem,
Since the issue completion deadline is crossed,
Issue has been unassigned.
Kindly do not create a PR for the issue now.

Hey @IshaanShettigar,
Assigned.
You may contribute your code under the folder path -
calc_for_everything\calculators\src\physics\potentialEnergyCalc
Issue completion deadline - 26th Oct 8:00:00 am IST
NOTE - In case the issue completion deadline is not met, the issue will be assigned to a new participant


Add ability to redirect to log files

Would there be a way to incorporate this style of logging stdout and stderr to files. I've currently modified the project to do it, but it's not setup as an optional thing.
// The upstart script should stop with an INT or the Go runtime will terminate
// the program before the Stop handler can run.
const upstartScript = `# {{.Description}}

{{if .DisplayName}}description    "{{.DisplayName}}"{{end}}

{{if .HasKillStanza}}kill signal INT{{end}}
{{if .ChRoot}}chroot {{.ChRoot}}{{end}}
{{if .WorkingDirectory}}chdir {{.WorkingDirectory}}{{end}}
start on filesystem or runlevel [2345]
stop on runlevel [!2345]

{{if .UserName}}setuid {{.UserName}}{{end}}

respawn
respawn limit 10 5
umask 022

console none

pre-start script
    test -x {{.Path}} || { stop; exit 0; }
end script

# Start
script
	stdout_log="/var/log/{{.Name}}.out"
  	stderr_log="/var/log/{{.Name}}.err"
	exec {{.Path}}{{range .Arguments}} {{.|cmd}}{{end}} >> $stdout_log 2>> $stderr_log
end script
`

Closed in #137


generate_thumbnail() doesn't work right when using Multiple Image Sets

When using Multiple Image Sets generate_thumbnail() only create a thumbnail to the first image.
This is happening because generate_thumbnail() thinks a thumbnail was already generated and return the thumbnail of the first image.
I'm using Python (2.7.13), SQLAlchemy (1.1.14) and SQLAlchemy-ImageAttach (1.1.0).

I can confirm the issue on Python 3.6.4, SQLAlchemy 2.3.2 and sqlalchemy-imageattach 1.1.0. I think it happens because generate_thumbnail() does not consider our 'extra discriminating primary key columns' and just search for matches though all the thumbnails.
That's what I see via debugger (entity.py, line 759):
SELECT level_scheme.width AS level_scheme_width, level_scheme.height AS level_scheme_height, level_scheme.mimetype AS level_scheme_mimetype, level_scheme.original AS level_scheme_original, level_scheme.created_at AS level_scheme_created_at, level_scheme.level_id AS level_scheme_level_id, level_scheme.order_index AS level_scheme_order_index
FROM level_scheme
WHERE %(param_1)s = level_scheme.level_id AND level_scheme.width = %(width_1)s

That's just about what I expected to see, because I have additional column order_index in the primary key:
SELECT level_scheme.width AS level_scheme_width, level_scheme.height AS level_scheme_height, level_scheme.mimetype AS level_scheme_mimetype, level_scheme.original AS level_scheme_original, level_scheme.created_at AS level_scheme_created_at, level_scheme.level_id AS level_scheme_level_id, level_scheme.order_index AS level_scheme_order_index
FROM level_scheme
WHERE %(param_1)s = level_scheme.level_id AND level_scheme.width = %(width_1)s AND level_scheme.order_index = %(order_index_1)s

It seems to me that author forget to apply filter_by in the ImageSubset.__init__() constructor. As I can see filter_by() function is applied later in ImageSubset.count(). I think that is the trick. Will check.

@dahlia, your code is beautiful and well-documented but it's very difficult to unravel crazy genealogy of classes and mixins :fearful: uselist=True mode seems to be very buggy: at least I get different exceptions if I add list of images to existing object or not.


index.vue:41 Uncaught Error: TypeError: n2.zip.loadAsync is not a function

i use docx-preview in vue 3 . And this is my code
import * as docx from 'docx-preview'
import Docxtemplater from 'docxtemplater'
import JSZipUtils from 'jszip-utils'
import { saveAs } from 'file-saver'
import * as JSZip from 'jszip'

onMounted(() => {
  window.JSZip = JSZip
})

const exportWord = () => {
  JSZipUtils.getBinaryContent('template.docx', function(error, content) {
    console.log('-----', content)
    if (error) {
      throw error
    }
    const zip = new JSZip(content)
    console.log('+++++', zip)
    const doc = new Docxtemplater()
    console.log('/////', doc)
    doc.loadZip(zip)
    console.log('=====', doc)
    doc.setData({
      ...toRaw(props.row)
    })
    try {
      doc.render()
    } catch (error) {
      const e = {
        message: error.message,
        name: error.name,
        stack: error.stack,
        properties: error.properties
      }
      console.log(JSON.stringify({ error: e }))
      throw error
    }
    const out = doc.getZip().generate({
      type: 'blob',
      mimeType:
        'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
    })
    previewShow.value = true
    docx.renderAsync(out, word)
    // saveAs(out, '测试.docx')
  })
}

how can i solve this problem.

Try importing jszip first before docx-preview.

Are you sure that you use JSZip >=3.0.0? Since I don't have full code I can't tell how to solve your issue. Simple vue3 applicaton with docx-preview package works fine.

Are you sure that you use JSZip >=3.0.0? Since I don't have full code I can't tell how to solve your issue. Simple vue3 applicaton with docx-preview package works fine.

I try importing jszip first before docx-preview.And fix my problem, I use JSZip=3.10.0,thank you.


What's import without a require?

Reading the angular.d.ts file I found some strange import/export lines which I strongly feel I don't understand:
// Collapse angular into ng
import ng = angular;
// Support AMD require
declare module 'angular' { export = angular; }

Please, can someone explain these lines to me?

What is import without a from?
Why is the module name a string? Shouldn't this be a regular identifier? What's the difference?
In today's TypeScript they'd have written declare namespace instead of declare module, right?

Thanks a bunch!

import foo = some.entity is an alias to some.entity. Basically, foo takes on all meanings (i.e. value, type, and namespace semantics. It's useful if you have some long that is a little too cumbersome to type out. This functionality is unfortunate in its keyword usage.
Before we continue, just know that namespaces used to be called "internal modules", and modules used to be called "external modules. This is an unfortunate accident of history.
declare module "angular" declares a module (ES6/CommonJS/AMD-style modules, or "external modules") named "angular". This is useful for if your library doesn't come with typings, and will be used to describe the shape of "angular" when you import it.
Because we wanted to make the difference easier for newcomers, you can't use the namespace keyword with a string. That way, the two concepts overlap less, so declare namespace can only declare a namespace with identifier names. declare module can declare either a module or a namespace, but you should pretend it only declares modules with string names.

You can see our handbook section on ambient modules for more details.

Thanks, @DanielRosenwasser for clarifying.
The handbook doesn't give this information, I'm afraid. Read the suggested page before.


Its amazing Thank you!

I tried it with kiwi browser on android, it works for a minute, then the video freezes. Just letting you know. But on pc its flawless

Thanks! I don't know if I'm going to support android but it's good to know.


Plugin seems to do nothing

I downloaded and installed the plugin, discord acknowledged that it was loaded, no new buttons appeared up the top and no parts of discord are collapsible/resizeable. I restarted the discord client just in case, no change. I turned my theme on and off just in case that was interfering, no change.
I'm using discord stable 132320 and betterdiscord 1.5.3 on windows 10 64-bit.

Well, this sure sounds like my problem.
Yeah, I have no controls or anything. This appears when I click the settings button in the console.

Here is what appears in the console when I disable the plugin.

also, the only data inside of the config:
    "currentVersionInfo": {
        "version": "5.2.9",
        "hasShownChangelog": true
    }
}

Okay, try out the new release (v5.3.0), I think I've accounted for all the errors reported here (broken startup/settings, empty config file).

Just gave it a try and still no dice, getting this error when I click on the settings button and still no collapsing menus anywhere.

@cheatfreak47 Huh, is that the only error being thrown? Because that shouldn't ever happen unless the start() function never gets called (meaning the plugin failed to start altogether, which would cause a separate error to be thrown).
I've tested my plugin on a clean installation of BetterDiscord on stable, ptb, and canary and they all check out for me. Try:

Deleting 0PluginLibrary.plugin.js from your plugins folder, reloading Discord, clicking Download Now (only once), and reloading again
Deleting and redownloading CollapsibleUI.plugin.js
Disabling all your plugins and themes except CollapsibleUI and reloading Discord
Repairing your BetterDiscord installation

If none of the above solutions fixes the problem and there is still no clear error being thrown (apart from the settings panel one), feel free to contact me on Discord (@TenorTheHusky#5076) and I can attempt to help you fix the problem there.
Apologies for the inconvenience, and hopefully I can get this issue resolved quickly.

Will try all this later tonight when I have free time. 👍

Good news! For some reason, doing step 1 and 2 there seems to have resolved it!

Heyy awesome!
I'm not really sure why that was happening (perhaps a problem with Zeres Plugin Library was causing corruption in CollapsibleUI's updater), but I'm glad that fixed it :)
I'm going to mark this issue as resolved, but feel free to let me know if it starts happening again.


chore: setup Renovate dashboard issue feature

Checklist

[x] the contributor license agreement is signed
[x] commit message follows commit guidelines

Description of change

https://renovate.whitesourcesoftware.com/blog/introducing-renovates-master-issue

Just tweaked title to try and comply with doco to trigger renovate check.

I'm not sure renovate will add the tick, this PR was opened from a fork.
From the logs:
DEBUG: Found 1 Renovate PRs
{
  "renovatePrs": [
    {
      "number": 1530,
      "branchName": "chore/renovate-dashboard-issue",
      "sha": "58f19fe5daedf3dba83a0bd74f1f6b69e1a49e8d",
      "title": "chore: setup Renovate dashboard issue feature",
      "state": "open",
      "createdAt": "2020-03-07T19:07:28Z",
      "closed_at": null,
      "sourceRepo": "ChristianMurphy/openEquella"
    }
  ]
}
DEBUG: getPrFiles
{
  "prNo": 1530
}
DEBUG: PR has renovate files
{
  "prNo": 1530,
  "title": "chore: setup Renovate dashboard issue feature",
  "renovateFiles": [
    "renovate.json"
  ]
}
DEBUG: branch no longer exists - aborting
{
  "branchName": "58f19fe5daedf3dba83a0bd74f1f6b69e1a49e8d"
}
DEBUG: branch no longer exists - aborting
{
  "branchName": "chore/renovate-dashboard-issue"
}
DEBUG: Cannot access PR files to check them

https://app.renovatebot.com/dashboard#github/openequella/openEQUELLA/150332941
It looks like it doesn't lookup PRs opened from forks :disappointed:
What I do know is that uPortal and uPortal-start have the same config option:
https://github.com/Jasig/uPortal/blob/4e81c7e27e580da9a371f3465da94e11d722b6e3/renovate.json#L5
https://github.com/Jasig/uPortal-start/blob/3d4a330f334450661ab8ce03cd3351e486980c62/renovate.json#L5
and it has worked in both cases.

I could close this PR and re-open from a branch of openequella/openEQUELLA, rather than a branch of ChristianMurphy/openEQUELLA if you want

Cool, not a problem then. I reckon let's merge it in then. :+1:


[Snyk] Security upgrade sharp from 0.32.5 to 0.32.6

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to fix one or more vulnerable packages in the `npm` dependencies of this project.
Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

package.json

Vulnerabilities that will be fixed
With an upgrade:

Severity
Priority Score (*)
Issue
Breaking Change
Exploit Maturity

980/1000  Why? Currently trending on Twitter, Mature exploit, Recently disclosed, Has a fix available, CVSS 9.6
Heap-based Buffer Overflow SNYK-JS-SHARP-5922108
No
Mature

(*) Note that the real score may have changed since the PR was raised.

Commit messages

Package name: sharp
    The new version differs by 13 commits.

eefaa99 Release v0.32.6
dbce6fa Upgrade to libvips v8.14.5
af0fcb3 Docs: changelog for #3799
c6f54e5 Bump devDeps
846563e TypeScript: add definitions for block and unblock (#3799)
9c217ab Ensure withMetadata can add RGB16 profiles #3773
e7381e5 Alternative fix for 4340d60, uses existing StaySequential
4340d60 Ensure composite tile images fully decoded #3767
7f64d46 Docs: add missing returns property to raw
67e927b Docs: ensure all functions include method signature #3777
9c7713e Docs: remove mention of EXIF from flip/flop ops
8be6da1 Docs: clarify when rotate op will remove EXIF Orientation
9563568 Ensure withMetadata skips default profile for RGB16 #3773

See the full diff

Check the changes in this PR to ensure they won't cause issues with your project.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings
📚 Read more about Snyk's upgrade and patch logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Learn about vulnerability in an interactive lesson of Snyk Learn.

the Snyk bot created a broken PR again


Sample addict application

Creating an issue to better track updates to this TODO.
Seeing how you envision the pieces fitting together would be greatly appreciated!

Added example app with register flow via 847f6f08c55b905c077debc35cda171776f8bf8a

Finished via a785fab84e6cf56a5ffcc14aa461d3a3cd70c485


intensive extracting during workflow

"Severity	Code	Description	Project	File	Line	Suppression State	Details
Error		CMake Error at ThirdParty/slang/cmake/FetchedSharedLibrary.cmake:29 (file):
file failed to extract:
C:/Users/*/out/build/x64-debug/ThirdParty/slang/slang-llvm.14.5-windows-x86_64.zip		C:\Users*\ThirdParty/slang/cmake/FetchedSharedLibrary.cmake	29"
everytime the workflow is set the cmake would atempt to get the zpi files and extract it even if it exsist causing this error

@TheforgottenDreamer please check if this solves things for you https://github.com/shader-slang/slang/pull/5707

Closed by https://github.com/shader-slang/slang/pull/5707