Add the Publication date of books

The publication date of a book it's a very useful information to select a book to read.
Would be very helpful to show it in the books section and permit to order by it.

The publication date on books is often not obvious. Many older books were first published serially in magazines before being published as novels; which date would we list? Which date of which edition? What about short fiction compilations where works span a date range, and other compilations? So, that's not something we're going to be doing right now. Wikipedia is a good starting point to decide when a book was published if a person is interested.

Thanks for the explanation.


[error] rdkit.Chem.rdchem.KekulizeException: Can't kekulize mol.

Hello!
I'm trying to run mol_tree.py, but I'm getting KekulizeException: error.
Is it a problem about rdkit version?
Below are my rdkit version and console output.
rdkit=2021.09.2=py37h13c2175_0
runfile('/home/bionuser/bionlab/bionlab/contrib/seyong/tasks/tmp/MGSSL/motif_based_pretrain/util/mol_tree.py', wdir='/home/bionuser/bionlab/bionlab/contrib/seyong/tasks/tmp/MGSSL/motif_based_pretrain/util')
Python 3.7.12 | packaged by conda-forge | (default, Oct 26 2021, 06:08:53)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.30.1 -- An enhanced Interactive Python. Type '?' for help.
PyDev console: using IPython 7.30.1
Python 3.7.12 | packaged by conda-forge | (default, Oct 26 2021, 06:08:53)
[GCC 9.4.0] on linux
start
CC(C)(C)c1ccc2occ(CC(=O)Nc3ccccc3F)c2c1
C[C@@H]1CC(Nc2cncc(-c3nncn3C)c2)CC@@HC1
N#Cc1ccc(-c2ccc(OC@@Hc3ccccc3)cc2)cc1
CCOC(=O)[C@@H]1CCCN(C(=O)c2nc(-c3ccc(C)cc3)n3c2CCCCC3)C1
N#CC1=C(SCC(=O)Nc2cccc(Cl)c2)N=C([O-])C@HC12CCCCC2
CCNH+C@(CC)C@Hc1cscc1Br
COc1ccc(C(=O)N(C)C@@HC/C(N)=N/O)cc1O
O=C(Nc1nc[nH]n1)c1cccnc1Nc1cccc(F)c1
Cc1c(/C=N/c2cc(Br)ccn2)c(O)n2c(nc3ccccc32)c1C#N
Traceback (most recent call last):
File "/home/bionuser/.conda/envs/bionlab/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3457, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "", line 1, in
runfile('/home/bionuser/bionlab/bionlab/contrib/seyong/tasks/tmp/MGSSL/motif_based_pretrain/util/mol_tree.py', wdir='/home/bionuser/bionlab/bionlab/contrib/seyong/tasks/tmp/MGSSL/motif_based_pretrain/util')
File "/home/bionuser/.pycharm_helpers/pydev/_pydev_bundle/pydev_umd.py", line 198, in runfile
pydev_imports.execfile(filename, global_vars, local_vars)  # execute the script
File "/home/bionuser/.pycharm_helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "/home/bionuser/bionlab/bionlab/contrib/seyong/tasks/tmp/MGSSL/motif_based_pretrain/util/mol_tree.py", line 149, in
mol = MolTree(line)
File "/home/bionuser/bionlab/bionlab/contrib/seyong/tasks/tmp/MGSSL/motif_based_pretrain/util/mol_tree.py", line 105, in init
cmol = get_clique_mol(self.mol, c)
File "/home/bionuser/bionlab/bionlab/contrib/seyong/tasks/tmp/MGSSL/motif_based_pretrain/util/chemutils.py", line 80, in get_clique_mol
smiles = Chem.MolFragmentToSmiles(mol, atoms, kekuleSmiles=True)
rdkit.Chem.rdchem.KekulizeException: Can't kekulize mol.  Unkekulized atoms: 1 2 12 15 23
Thank you!

No error occurs in rdkit 2020.09.1 version.
I will close the issue.
Thank you!

excuse me,i can't find rdkit 2020.09.1 on the pypl,can u give this to me ,please answer me as soon as possible!TY~

excuse me,i can't find rdkit 2020.09.1 on the pypl,can u give this to me ,please answer me as soon as possible!TY~

Hi. It seems that in 2021, rdkit version 2020.09.1 was available on PyPI, but now, in 2023, it seems to be no longer there. However, it appears to be available in the link below. (But I can't remember exactly which version I had installed.)
https://anaconda.org/rdkit/rdkit/files


Rename the title of Running Version column to Artifact Versions

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:

NONE

Nice catch!
/approve


some about deeplab

Can i know some detail and source about deeplabv3 train on the datasets,such as the pretrain models,training configs,training time. Because when i try to repetition I can't get the nice result as you show in the paper.

Which paper are you talking about? NeSF?


[C++][Parquet] Add an example to dump statistics read as arrow::ArrayStatistics

Describe the enhancement requested
I want to use this in the C data interface statistics document https://github.com/apache/arrow/pull/43553 .
Component(s)
C++, Parquet

Issue resolved by pull request 44816
https://github.com/apache/arrow/pull/44816


postcss: Enable postcss-preset-env

Revert "minor: Add z-index to message_time class."
This reverts commit e16e7630e6bf6c3f54f1f0b78ee0ed1899c2522d (#19542).
This was compiling to
a.messagebox-content .message_time {
    z-index: 1;
}

which did nothing, because .messagebox-content is a <div>, not an <a>.
styles: Use standard CSS nesting syntax.
CSS nesting is being standardized with the syntactic restriction that the nested selector cannot start with an identifier.  This was necessary to allow the syntax to be parsed without lookahead.
https://webkit.org/blog/13813/try-css-nesting-today-in-safari-technology-preview/
https://www.w3.org/TR/css-nesting-1/#syntax
The postcss-nesting plugin used by postcss-preset-env enforces this restriction.
With postcss-preset-env, if you forget this restriction, you’ll get a webpack warning in the run-dev console like
frontend:
  WARNING in ./styles/zulip.css (./styles/zulip.css.webpack[javascript/auto]!=!../../zulip-npm-cache/e632e0f660d848aa3f8c06014acf3b4b33934728/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].use[1]!../../zulip-npm-cache/e632e0f660d848aa3f8c06014acf3b4b33934728/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].use[2]!./styles/zulip.css)
  Module Warning (from ../../zulip-npm-cache/e632e0f660d848aa3f8c06014acf3b4b33934728/node_modules/postcss-loader/dist/cjs.js):
  Warning

  (159:5) postcss-nesting: Nested selectors must start with a symbol and "i" begins with a letter.

postcss: Enable postcss-preset-env.
This gives more comprehensive support of new and future CSS features that can be transpiled for older browsers.

Merged, thanks @andersk! Probably worth posting a small announcement in #general about this, and/or making some changes to our "HTML and CSS" documentation.


Scene - implemented getPanHandlers prop

implemented getPanHandlers prop to be able to use custom PanResponder
usage example:
const getPanHandlers = props => {
// some code here
return customPanResponder.createPanHandlers(props);
};

What do set as a default with getSceneStyle? Should we provide a default function (that includes the direction stuff) to help clean up some of that logic?

Probably it would be good to clean up logic by changing API to make everything similar, for example:

to have props: getSceneStyle, getPanHandlers, getAnimationStyle
to remove animationStyle and panHandlers - that are currently mutable - it's not good and clear

It will change API - we need to add warnings and fallback
I can make proposal PR for that, for example for 3.32 version, so we will have more clear API
What do you think about this?

I cleaned up code and make it pass eslint.
For future versions I think we can clean up API
But for current - it can be good improvement :)

Guys, any ideas about this pull request?
Do we need to clean API, or remain API the same (plus add one more prop) ?

LGTM


Use DEFAULT_STREAMING_BATCH_SIZE for streamingBatchSize

Instead of DEFAULT_STREAMING_BUFFER_SIZE

I signed it! Google employee<EMAIL_ADDRESS>

I signed it!

@ianzhou1 Can you please comment with just "I signed it!"?  The cla is still showing up as no.

I signed it!
On Mon, Jun 27, 2016 at 3:51 PM, googlebot<EMAIL_ADDRESS>wrote:

Thanks for your pull request. It looks like this may be your first
contribution to a Google open source project. Before we can look at your
pull request, you'll need to sign a Contributor License Agreement (CLA).
📝 Please visit https://cla.developers.google.com/
https://cla.developers.google.com/ to sign.
Once you've signed, please reply here (e.g. I signed it!) and we'll
verify. Thanks.

If you've already signed a CLA, it's possible we don't have your
GitHub username or you're using a different email address. Check your
existing CLA data https://cla.developers.google.com/clas and verify
that your email is set on your git commits
https://help.github.com/articles/setting-your-email-in-git/.
If you signed the CLA as a corporation, please let us know the
company's name.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/cloud-bigtable-client/pull/891#issuecomment-228899562,
or mute the thread
https://github.com/notifications/unsubscribe/AGBhpRVmD-m_wYNxW_n__KFcGqg69-Q1ks5qQFPkgaJpZM4I_lXe
.


addWorksheet() and removeWorksheet(), with unit test to cover

Adds addWorksheet(title, rows=1, cols=1) and removeWorksheet(worksheet) to spreadsheet objects. Unit test included.
If you like this PR, I will have two more for you:

Python 2 compatibility via six module.
Additional Token class that uses any valid Google OAuth2 credentials created with oauth2client package.

@henrystokeley are you still maintaining this package? Would you like to hand it off to me for further development?

@robin900
Sorry for the slow response to this. This is a great change, thanks! There's a couple of whitespace changes etc. I'll make myself. I am still available to work on this (mostly weekends).
An oauth2client Token sounds like an interesting addition. Feel free to send a PR.
As for Python2, for me it isn't a priority to be honest. Have you already got pgsheets working with Python2? If so, was there a lot of changes to do it?


GAMO2 DIVALLER Controller support

The GAMO2 DIVALLER Controller (https://twitter.com/GamoTwo/status/1129293536187207681) is in closed testing now, and the hardware info is determined.
By default, the controller will run in a DualShock 4 simulating mode on PC, so it's OK to take it just as a DS4.

I've added it to PD Loader. I'm not sure how the touchpad would work, though.

@nastys At present, the touch slider just simulates the left/right stick by separating the sliding area from the center. But it do support getting the raw touch slider data by some other methods. I'll try to get it work as the original slider. Not sure how long will take, hopefully before it start to sale.

@TinkoLiu are you involved in the controller development?
If so, perhaps you could suggest supporting the original serial protocol. (game uses COM11 at 115200 baud)
Information about it is at http://ryun.halfmoon.jp/touchslider/slider_protocol.html
(English version with a little more information about data escaping is at https://pastebin.com/wKME0Kkb)
A basic arduino implementation of communication: https://pastebin.com/AGm0FKQr (runs on ESP8266, but should run on other boards if wifi logging functions are removed) (it's not very good -- seems to struggle a bit with fast loader due to poor timing)

@somewhatlurker emmm...... maybe, cause I just give some feedback but not directly coding for them. I've sent this to them and try to convince them to support this protocol directly. BTW if you have the protocol about buttons (JVS) please tell me, it wouldn't be better if these could be supported natively and don't need tlac anymore.

Buttons probably require purchasing an interface card such as the one shown at https://www.bunniestudios.com/blog/?p=5374. I think there's no serial protocol available without it.
Fortunately TLAC button input seems pretty good already.

Closing issue due to migrate to PD-Loader and the GUID is already merged on notabug.
Anything about DIVALLER please check on https://twitter.com/GamoTwo/


French translated

Translations for the french language.
French_translated.json

Thank you, I added them into the new version (1.2.1).
I had to fix some things and add some missing translations. I uploaded the revised json here for future reference.
french.json


Uglifyjs fails to compile this module in create-react-app

I'm not sure if this a problem with uglify, webpack's uglify plugin, babel, or something else (argh, tools).
In a fresh app create with create-react-app uglify chokes on this module.
Steps to reproduce:
yarn global add create-react-app
create-react-app uglify-test
cd uglify-test/
yarn add p-pipe
# ...import p-pipe in the project...
yarn build

It fails with the following error:
Creating an optimized production build...
Failed to compile.

Failed to minify the code from this file:

 	./node_modules/p-pipe/index.js:12

What's weird is this kind of error is usually due to ES6 code being published to npm, but the code here is strictly ES5.

We aim for Node.js, not the browser. You can find a more detailed explanation here https://github.com/sindresorhus/ama/issues/446.
If you use Webpack, check out babel-engine-plugin, which transpiles only the dependencies that needs to be transpiled.
And no, it's not ES5. It has const, which is not an issue for Uglify, but the fat arrow function is.

 I totally understand the motivation, it's major hassle setting up build steps for so many modules.
That said, given the ES6 features used here are not crucial, and browser support could easily be had by swapping for ES5 equivalents, would you be open to a PR to do just that?

No sorry. It's explained in the AMA. There are multiple options to solve this. The suggestion I did is not the only valid option. There's also UglifyES for instance.

Fair enough. Though introducing new tooling is the least desirable of all options imo. I'll just copy and paste the lib into my project. Cheers

Introducing tooling for every single library is even less desirable. Its not up to maintainers to build their library for every single target out there. That's what Webpack should solve.


[stable/kube-state-metrics]

Is this a request for help?:
No
Is this a BUG REPORT or FEATURE REQUEST? (choose one):
FEATURE REQUEST

Version of Helm and Kubernetes:
Helm v2.8.1 Kubernetes 1.8.6
Which chart:
stable/kube-state-metrics
Feature request:
kube-state-metrics is deployed to the default namespace - it would be nice to be able to specify which namespace it is deployed into, to avoid polluting the default namespace.
(There is an undocumented namespace flag in the chart, but that one is for managing which namespace kube-state-metrics monitors, not where it is deployed)
Thank you!

Helm allows you to specify a namespace during the chart installation: helm install kube-state-metrics --namespace my-namespace.

Hi! Thanks for the suggestion.
That works for single-namespace deployments, but I am unfortunately using kube-state-metrics as a sub-chart in a more complex deployment that deploys to multiple namespaces.


Fix a couple of typos

:star: Good catch!  Thanks for fixing, @topiaruss.

:shipit: thanks @topiaruss!

We'll actually need you to sign the CLA, @topiaruss, even for doc fixes.  https://buoyant.io/cla/
Sorry for the trouble and thanks for the fix!

Done.
NP.
—r

On 2 May 2016, at 21:02, Alex Leong<EMAIL_ADDRESS>wrote:
We'll actually need you to sign the CLA, @topiaruss https://github.com/topiaruss, even for doc fixes. https://buoyant.io/cla/ https://buoyant.io/cla/
Sorry for the trouble and thanks for the fix!
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub https://github.com/BuoyantIO/linkerd/pull/359#issuecomment-216346143

Russ Ferriday -- Software Product Architect, Developer, Mentor
Founder & CTO Topia Systems Ltd.
<EMAIL_ADDRESS>--  +44 7429 518822


Error when updating entity with Subcollection

I am getting the exception below when updating an entity with a subcollection.
Version:
0.5.2
Example:
https://github.com/dietrichwestbrooks/fireorm-subcol
Exception:
Error: Update() requires either a single JavaScript object or an alternating list of field/value pairs that can be followed by an optional precondition. Value for argument "dataOrField" is not a valid Firestore document. Couldn't serialize object of type "BaseFirestoreRepository" (found in field users). Firestore doesn't support JavaScript objects with custom prototypes (i.e. objects that were created via the "new" operator).
at WriteBatch.update (C:\temp\fireorm-subcol\node_modules@google-cloud\firestore\build\src\write-batch.js:358:23)
at DocumentReference.update (C:\temp\fireorm-subcol\node_modules@google-cloud\firestore\build\src\reference.js:367:14)
at BaseFirestoreRepository. (C:\temp\fireorm-subcol\node_modules\fireorm\lib\src\BaseFirestoreRepository.js:170:80)
at step (C:\temp\fireorm-subcol\node_modules\fireorm\lib\src\BaseFirestoreRepository.js:43:23)
at Object.next (C:\temp\fireorm-subcol\node_modules\fireorm\lib\src\BaseFirestoreRepository.js:24:53)
at C:\temp\fireorm-subcol\node_modules\fireorm\lib\src\BaseFirestoreRepository.js:18:71
at new Promise ()
at __awaiter (C:\temp\fireorm-subcol\node_modules\fireorm\lib\src\BaseFirestoreRepository.js:14:12)
at BaseFirestoreRepository.update (C:\temp\fireorm-subcol\node_modules\fireorm\lib\src\BaseFirestoreRepository.js:165:16)
at eval (webpack:///./index.ts?:41:49)

Hey, thanks for contacting! I'm currently on vacations. I'll be able to check this out next week.

Recently I discovered an error that might be causing this issue. You cannot access SubCollections of entities initialized by BaseFirestoreRepository.Create method (more info in #51).
Looking at the code, you're not using the Create method. I tried to replicate your issue here but the update worked just fine. Am I skipping something?

 I recently fixed #51. Are you  having any other error?

No I haven’t. I found a workaround so I haven’t been thinking about it. I will definitely take a look at it. Thanks for giving this issue your attention.
Get Outlook for iOShttps://aka.ms/o0ukef

From: Willy Ovalle<EMAIL_ADDRESS>Sent: Friday, June 28, 2019 10:18:46 AM
To: wovalle/fireorm
Cc: Dietrich Westbrooks; Mention
Subject: Re: [wovalle/fireorm] Error when updating entity with Subcollection (#49)
Hey @maxxinnovahttps://github.com/maxxinnova ! have you had time to check my last comment? I recently fixed #51https://github.com/wovalle/fireorm/issues/51. Are you having any other error?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/wovalle/fireorm/issues/49?email_source=notifications&email_token=AHDLYF3R4HODQYDO4QHM6ILP4YTVNA5CNFSM4HYQOG4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODY2LXGI#issuecomment-506772377, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AHDLYF7T3SP2NAP7SDFW2I3P4YTVNANCNFSM4HYQOG4A.

I upgraded to the latest version (0.6.4) and got an initialization error.  The problem still exists on 0.6.3.

Yesterday I realized what could be causing this: Trying to save collections (which have subcollections set in the object) might throw errors with real firestore but is doing just fine in the unit tests (since I use a mock database). Will check today.
About the Initialization error, you need to call Initialize(firestore) (with firestore being the instance of admin.firestore()) before you declare your Collections. Sorry that we have no documentation of this. I'll invest heavily in documenting the library soon.


Provide better services for incomplete generic calls

Fixes #15412

Add a getBestGuessSignature method to the checker which acts like getResolvedSignature, but which does a better job in the case of an error.

Normally the type checker will automatically fill in {} for type arguments that it can't infer. We now track when we do this, so if we have a Signature we can tell whether it has a bogus instantiation. Would also be useful for no-inferred-empty-object-type which currently has an unreliable implementation.

@andy-ms can you check with @ahejlsberg, he had thoughts about this area for a similar change.

Per discussion with @ahejlsberg, removed getBestGuessSignature in favor of just changing the behavior of getResolvedSignature if !produceDiagnostics. Also removed everything relating to inferredAnyDefaultTypeArgument; we will show an "inferred" type argument even if it is {}.

Unfortunately, it wouldn't be easy to break this out of the checker as we don't just need this behavior in signature help; we also need getContextualType to give us a good contextual signature even in the presence of errors.


Feature Request: auto inject generated schematic ID as node annotation

Allows for easier SUC usage for clusters with different schematic IDs across nodes, or for forgetful people like me to avoid forgetting to change a hardcoded value (in SUC config)

Thank you for the FR! Since Talos currently only supports nodeLabels and not nodeAnnotations, so it's not currently possible because of the 63 string length limit of labels in k8s.
But it seems like there's already work in progress in the upstream: https://github.com/siderolabs/talos/issues/9089
So we'll just wait and see how the upstream will handle this and maybe Talhelper doesn't need to do anything.

https://github.com/budimanjojo/talhelper/pull/577 this allows user to set node annotations.
Afaik from the PR from upstream above, node annotations containing schematic ID should be done automatically by talosctl?
I need confirmation from those who have tried the 1.8 alpha version or just wait until 1.8 stable got released.

@budimanjojo Talos 1.8 adds node annotations with schematic ids automatically.
So this can be closed

Thanks for the information! Closing now.


Closing accounts

Closing accounts

Introduces a new flag, Account.flags.closed, which will cause the account to reject any further movements.

Index on Accounts.flags.closed.

The account flag can be set during creation or through a Transfer with Transfer.flags.closing_debit_account or Transfer.flags.closing_credit_account set.

The closed account can be re-opened if the closing transfer has the flag Transfer.flags.pending set.
In this case, the only movement a closed account will allow is either posting or voiding the pending closing transfer.

Expired pending balances will be reversed automatically, even in closed accounts.


Issue generating pairwise comparison matrix

I've got a number of call sets for C. elegans. I've tried merging a combination of these call sets to a sample_merged.vcf and all work fine.
I thought there could be issues since I converted breakdancer output to VCF so here I've just used three files in the sample_files as a simple example of the issue with SURVIVOR:
lumpy.vcf
pindel.vcf
tardis.vcf

As mentioned merging these appears to work:
[moldach@cedar5 VCF-FILES]$ ~/bin/SURVIVOR-master/Debug/SURVIVOR merge sample_files 1000 2 1 1 0 30 sample_merged.vcf
merging entries: 769
merging entries: 7840
merging entries: 749

However, there is no error (or output) when I try to create the comparison matrix:
[moldach@cedar5 VCF-FILES]$ ~/bin/SURVIVOR-master/Debug/SURVIVOR genComp sample_merged.vcf sample_merged.mat.txt
Merged Vcf file
Normalize output (1==yes, else no)
Output: pariwise overlap matrix
[moldach@cedar5 VCF-FILES]$ ll
total 45053
-rw-r----- 1 moldach moldach     3933 May  5 13:56 breakdancer.vcf
-rw-r----- 1 moldach moldach     4362 May  5 13:55 cnvnator.vcf
-rw-r----- 1 moldach moldach  3035446 May  5 14:02 deepVariant.vcf
-rw-r----- 1 moldach moldach   485312 May  5 13:56 delly.vcf
-rw-r----- 1 moldach moldach  2979757 May  5 13:57 gridss.vcf
-rw-r----- 1 moldach moldach      321 May  5 14:13 logFile
-rw-r----- 1 moldach moldach   139890 May  5 14:02 lumpy.vcf
-rw-r----- 1 moldach moldach   267917 May  5 14:03 manta.vcf
-rw-r----- 1 moldach moldach   119277 May  5 14:03 mindTheGap.vcf
-rw-r----- 1 moldach moldach  1558662 May  5 14:03 ngsep.vcf
-rw-r----- 1 moldach moldach 36976900 May  5 14:04 pindel.vcf
-rw-r----- 1 moldach moldach       32 May  5 14:21 sample_files
-rw-r----- 1 moldach moldach   978418 May  5 14:21 sample_merged.vcf
-rw-r----- 1 moldach moldach      663 May  5 14:15 survivor.sh
-rw-r----- 1 moldach moldach   520557 May  5 14:04 tardis.vcf
[moldach@cedar5 VCF-FILES]$

Your help is greatly appreciated.

Hi!
I also have the same problem.
I've got 4 vcf files that I merged by using /home/silviav/SURVIVOR/Debug/SURVIVOR merge sample_files 1000 2 0 0 0 31 sample_merged.vcf (This is just a small dataset that I used to understand SURVIVOR), and the merging was fine, but when I tried to create the comparison matrix I didn't get any output.

Hey @moldach @Caro-Ca  thanks for reaching out.
the comparison matrix function now requires another parameter which indicates if the counts should be normalized or raw counts.
So you need to be called like this:
~/bin/SURVIVOR-master/Debug/SURVIVOR genComp sample_merged.vcf 0 sample_merged.mat.txt
That's what survivor is trying to tell you.
Cheers
Fritz


[Bug] Snowflake - Authentication token has expired. The user must authenticate again.

Description
After leaving the application overnight and coming back to it the next day, the authentication token for the Snowflake connection expired and I cannot find a way to re-authenticate the connection.
Steps to reproduce the behaviour:
Add steps to reproduce this behaviour, include console / network logs & screenshots

Create a new data source with a connection to Snowflake
Use connection in a table
Wait until the authentication token expires
Refresh the application
See error when the table tries to connect to Snowflake to refresh

Important Details

Version: Cloud
Windows
Chrome
Production

@DerrickMChan Thanks for the bug report! We'll look into this and get back to you

The issue isn't that there is no error message.  An error message does come up, however the query does not automatically refresh the authentication token leading to the error.

@nidhi-nair can you confirm whether this will auto refresh the token?

I am still receiving the error as of this morning, please see below.

@Nikhil-Nandagopal, yes I was able to replicate this error exactly and the fix is to reset the connection to the database when the token expires.
@DerrickMChan thanks for keeping tabs on this issue so diligently! The fix is currently in our release environment and will go into production with the next release. I'll drop a message here when that happens. :)

hi @nidhi-nair, do we know when this is going out? facing the same issue. thanks!

@DerrickMChan @shubham-maurya this change should be available on your installation now!

Thanks @nidhi-nair ! You guys are fast :)


Sort and filter data at the same time.

Hi! I'm Laura.
First, thanks for your project, It has saved me a lot of time.
Second, I have a problem, I have not been able to make a filter by one parameter of EndpointsModel and order it by another parameter at the same time.
I have tried this:
For filter:
All these options work well alone:

Use the regular query_fields, like this:
@MyModel.query_method(query_fields=('attr1') ...... )

Use directly the internal _filters property with an EndpointsAliasProperty, like this:
.....
self._endpoints_query_info._filters.add(attr1 == value)

Return a query filter, like this:
return query.filter(MyModel.attr1== value);

For Sort:
All these options work well alone:

Use the regular query_fields, like this:
@MyModel.query_method(query_fields=('order') ...... )

Use an EndpointsAliasProperty for the setter EndpointsModel.OrderSet, like this:
@EndpointsAliasProperty(setter=EndpointsModel.OrderSet, default="att2")

Redefine OrderSet for this particular model and set it, like this:

def OrderSet(self, value):
......
if value == Order.WHEN:
super(MyModel, self).OrderSet('attr1')
....
@EndpointsAliasProperty(setter=OrderSet, property_type=Order, default=Order.WHEN)
def order(self):
return super(MyModel, self).order
Problem
I tried all the possible combinations of filter and sort at the same time, but always they return an error. I think I've been doing the same thing but of differents forms without advancing.
Is it possible to make both requests at the same time?
Is it possible to do it with any combination that i mentioned before?
Is there another way?
Thanks for your time.

It seems like this is a "how do I" question, rather than a bug report or feature request? If that's the case it seems that StackOverflow is a much better (and higher bandwidth) place for this question.
Can you give an example of something you tried (even if it failed)?


[bug] Screen flicker

When it scans it flickers, and after that, any time I move the cursor (with arrow keys or mouse) it flickers.
I use Windows Terminal, Windows 11 21H2/22H2, nothing else fancy, I don’t think (feel free to ask). No other CLI app does that. Flicker tested on two machines.
Don’t flicker in WSL or VirtualBox Linux.

Could you try running gdu with --no-mouse? Does it work better?

Tried that before, forgot to mention, no change.
пн, 21 нояб. 2022 г. в 15:30, Daniel Milde @.***>:

Could you try running gdu with --no-mouse? Does it work better?
—
Reply to this email directly, view it on GitHub
https://github.com/dundee/gdu/issues/190#issuecomment-1321987739, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIDYRR522EQYY4RY2IFVOLWJNTN5ANCNFSM6AAAAAASGNKPRY
.
You are receiving this because you authored the thread.Message ID:
@.***>

I came here to report the same thing. If I use SSH on Windows (whether cmd.exe or the new Windows Terminal) to connect to Manjaro Linux (AUR 5.20.0), gdu flickers every time I press an arrow key.  --no-mouse made no difference.
I tried ncdu in the same settings, and it did not flicker. Also, I tried gdu locally on the Manjaro, and it did not flicker.
I hope this would be fixed. It is very distracting.

Initial investigation didn't show up much. Looks like mainly the text rendering consumed most of the cpu.

Initial investigation didn't show up much. Looks like mainly the text rendering consumed most of the cpu.

Since NCDU does not flicker over SSH, won't the problem be solved, if you copy its code and do the same thing for the display part?

NCDU

As I pointed out, gdu itself does not flicker in WSL.

Gdu is written in different language (Golang) than Ncdu (C).

I have upgraded both tview and tcell libraries in v5.24.0. Could you check whether the behavior is still the same?

Same flicker.

I've upgraded to 5.24.0 and no longer experience flicker on Centos 7 and Oracle Linux 9

For the record, seeing the same with --no-mouse and --no-color in Windows PowerShell terminal on Windows 11 having installed v1.6.3482 viaWinget. Is this something to do with whatever go terminal library is being used, as it's seemingly universally a problem?


Blank Page and Error 500 when using elm-reactor

Hello, and thanks for all your work on the elm platform :)
I have an issue that has apparently surfaced before and was fixed, in #59
I was advised to create a new issue instead of just commenting on the old one, so I've duplicated my comment here :)
On MacOS, with the latest elm-platform (0.18 if I am not mistaken), and a very simple Dice.elm:
module Dice exposing (..)

import Html exposing (Html, div, text)

main =
    div [] [ text "Hello World!" ]

About 90% of the time when I refresh the page localhost:8000/Dice.elm I am greeted with a blank page, and the console outputs the following:
[Error] Failed to load resource: the server responded with a status of 500 (Internal Server Error) (Dice.elm, line 0)
[Error] ReferenceError: Can't find variable: runElmProgram
	Global Code (Dice.elm:10)

The resource in question is /_compile/Dice.elm which returns an error code 500.
Apparently when I add an error to my code, the proper error description page always gets shown, so the problem seems to occur after the page has been built?
I have uninstalled and reinstalled elm-platform a few times, and originally I was using the elm binaries from Homebrew, with the same result.
There could be a problem with my setup, but if so I can't find it.

Something I hadn't done was test with other browsers, and, to my surprise it seems to only happen with Safari? Which is kind of weird because the developer tools indicate an error code in the response.

I'm experiencing the same issue, also in Safari. Anything I can do to help debug this let me know!
Interestingly, the 500s only seem to happen when there isn't a compile error. I can reliably refresh an error page and always receive 200 (as far as I can tell).

I'm also experiencing this issue, also only safari (11.0), re-installed Elm and still the same. It's weirdly inconsistent I've had moments it did work on 15 refreshes, restarted Safari, and got the error again.

So it appears that Safari, for reasons that are beyond me, will sometimes request everything twice in rapid succession on separate TCP streams, yet it only listens to the results of the second request.  The first request actually succeeds!
The second request suffers from a race condition where the first /_compile/.. request removes "it-is-safe-to-delete-this-file.js" before the second request can read it.
The actual 500 response reads like so:

A web handler threw an exception. Details:\n
it-is-safe-to-delete-this-file.js: openBinaryFile: does not exist (No such file or directory)

+1 for this, driving me nuts, Version 11.0.1 (13604.3.5) still has this issue :(

Same thing here

Same here with Safari Technology Preview (Release 60 (Safari 12.0, WebKit 136<IP_ADDRESS>)).
Chrome Version 67.0.3396.99 (Offizieller Build) (64-Bit) works fine.
OS: macOS High Sierra 10.13.5

Also affecting me, I would really appreciate something to address this.
Safari: 11.1.2
OS: 10.13.6

Affecting me as well.
macOS: 10.13.6
Safari: 11.1.2


remove patches now present on packages

Should be good to go after the next Hackage pull
Motivation for this change
Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

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

Thanks!
On Thu, 3 Jun 2021, 7:22 am sterni, @.***> wrote:

Merged #124102 https://github.com/NixOS/nixpkgs/pull/124102 into
haskell-updates.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/pull/124102#event-4834520441, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGRJXG2YCWDBDPB3CKI27TTQ24LLANCNFSM45LKABSA
.


Research alternatives to LevelDB supporting range queries

Goal
Add support for range-based queries.
Check out

[x] http://taffydb.com
[x] https://github.com/kripken/sql.js/
[x] https://github.com/agershun/alasql
[x] https://github.com/louischatriot/nedb
[x] https://github.com/pouchdb/pouchdb

Notes

TaffyDB

last commit in 2018

sql.js

doesn't persist changes unless one dumps to a TypedArray

alasql

last publish on NPM dated 16 days
6k+ weekly downloads

nedb

last publish on NPM dated 4 years ago
40k+ weekly downloads

PouchDB

works both locally and remotely, can sync with remote counterpart
JavaScript implementation of CouchDB's API
14k+ weekly downloads
can use indexeddb and leveldb as backends

Dynamic indexes

In addition to switching to a different backend, a potential alternative would be to bring back dynamic indexes and implement a query engine that integrates index scans and in-memory strategies to compute responses to queries based on which indexes are currently registered on a given instance of quadstore.
Worth mentioning that Jena + TBD only uses 3 indexes more than quadstore:  GOSP, GPOS, GSPO, OSPG, SPOG, POSG, SPO, POS, OSP.
Quadstore could throw errors on range queries that cannot be run with current indexes.

Working on experimental indexing in https://github.com/beautifulinteractions/node-quadstore/tree/feature/experimental-indexing

Confirmed - will maintain current backend based on levelup and merge in support for configurable indexes as implemented in https://github.com/beautifulinteractions/node-quadstore/tree/feature/experimental-indexing


Free Endpoints!

endpoints are a means to configure a proxy connection to "mount" upstream services ("backend") to a local path. Currently, an endpoint can only be configured in the api section.
The idea of the api is to group endpoints or (client) requests that are meant to be consumed by applications (and probably follow strict schemas). Whereas the rest of the server (files…) is consumed by "browsers" - that is navigational requests and usual Web semantics. Put simply, it's general purpose Web traffic vs API calls.
There are use cases for general purpose traffic proxy configurations apart from api. For example, we could deploy a Docker container with the swagger UI to render our API docs. These endpoint should not be part of the api. Here, a "free endpoint" would make sense:
server "foo" {
  endpoint "/doc/**" {
    access_control = [ "JWTToken" ]
    backend {
       origin = "http://swaggerui:8080"
       path = "/**"
    }
  }
  // …
}

Spec:

Free endpoints are muxed & matched after api routes,  but before files and spa paths.
differences from API:

HTML errors (like for files)  instead of JSON error documents (TODO: should we lift files.error_document to server?)

logging access and upstream requests as in api.endpoint (but handler:endpoint instead of handler:api)
backend should work as in api: anonymous "inline" backend with no label or refine a named backend or fallback to fallback backend that is defined in server
The last point adds a new requirement: one backend can be defined in server as the fallback backend. This applies to all free endpoints, and to api.endpoint (if no fallback backend is defined in api). The server.backend can be named (labelled) to allow refining in endpoints.

Example with fallback backend:
server "foo" {

  // fallback backend for free endpoints and API (may be overwritten by api.backend)
  // label is optional
  backend  {
     // …
  }

  // uses default backend
  endpoint "/foo/**" {
  }
}

There is an edge case with named fallback backends for api endpoints. Even if api.backend sets a new fallback for api.endpoint, the named server.backend must be accessible.
server "foo" {

  backend "serverFallback" {
     // …
  }

  api {
    backend "apiFallback" {
       // …
    }

    // uses "apiFallback"
    endpoint "/foo" {}

    // serverFallback must be "visible", too
    endpoint "/bar" {
       backend = "serverFallback"
    }

  }
}

We can leave out the possibility to define "inline default" backends, because auch a backend cannot be refined.
server "foo" {
  backend  {
     // …
  }
…

The label should be mandatory:
server "foo": {
  backend "bar" {
  }
  // OR
  backend = "bar"
…

We can leave out the possibility to define "inline default" backends, because auch a backend cannot be refined.
server "foo" {
  backend  {
     // …
  }
…

The label should be mandatory:
server "foo": {
  backend "bar" {
  }
  // OR
  backend = "bar"
…


Add missing backticks to docstrings

My bad! This PR adds the missing backticks to the docstrings of to_names_X and from_names_X methods.

Well spotted!


[question] res.setHeader after status(code).json(body) fails with ERR_HTTP_HEADERS_SENT

Describe the bug
I have recently started using your middleware package on a personal project and I quite enjoyed following through with the docs and implementing what I needed. At some point, I saw the following example.
// request-tracing.pipe.ts`
export async function requestTracingPipe(
  _req: NextApiRequest,
  res: NextApiResponse,
  next: () => Promise<void>
): Promise<void> {
  res.setHeader("X-Timing-Start", new Date().toISOString())

  await next()

  res.setHeader("X-Response-ID", nanoid())
  res.setHeader("X-Timing-End", new Date().toISOString())
}

However, when trying to setHeader after responding to the client on the API Route, I get the following error:
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client

I have run the debugger multiple times and res is only called once. Also, if I disable request-tracing.pipe.ts the error stops occurring.
Here is a snippet of the code that runs before the middleware.
async function getHandler(req: NextApiRequest, res: NextApiResponse) {
  const { search } = req.query

  // res.status(200).json(data) executes and the next middleware to execute is `request-tracing.pipe.ts`
  if (search) {
    const data = await forwardGeocode(search as string)
    res.status(200).json(data) 👈
  } else {
    throw new AppError(400, `Query string must define "search" key value pair.`)
  }
}

async function handler(req: NextApiRequest, res: NextApiResponse) {
  if (req.method === "GET") {
    await getHandler(req, res)
  }
}

export default withMiddleware()(METHODS_GUARD)(handler)

Question
Has this happened before? Are there any Next API changes we are not aware of?
Expected behavior
After performing res.status(code).json(body) I expected the res to still pass through request-tracing.pipe.ts before being returned to the client, so that, timing headers can be set. However, this might not be a bug related to next-api-middleware.
Desktop (please complete the following information):

OS: Ubuntu
Version: 20.04
Next 12.2.3

Hi @FranciscoKloganB!
After looking into this, I think that my example here is actually a little faulty 🤦
Calling res.json() will call res.send() internally, which means that any headers added after that point are unable to be included in the response.
It sounds like I need to modify or remove this example to reflect header handling properly.

Thanks for answering so promptly. Do you have anything in mind, I am not very well-versed with Next but what I am thinking of doing is somehow override the native json function or alternately replace it with write(json.Stringify(data)), then finally, adding the send on my error.filter.ts which is the first/last middleware to execute


uninitialized constant Chroma::APIOperations::Data (NameError)

Error stack:
 -> langchain [main*]: irb
irb(main):001:0> require 'chroma-db'
/Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/gems/3.1.0/gems/chroma-db-0.2.0/lib/chroma/api_operations/request.rb:11:in `<module:APIOperations>': uninitialized constant Chroma::APIOperations::Data (NameError)

    Response = Data.define(:status, :body, :headers, :error)
               ^^^^
	from /Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/gems/3.1.0/gems/chroma-db-0.2.0/lib/chroma/api_operations/request.rb:4:in `<module:Chroma>'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/gems/3.1.0/gems/chroma-db-0.2.0/lib/chroma/api_operations/request.rb:3:in `<top (required)>'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/gems/3.1.0/gems/chroma-db-0.2.0/lib/chroma-db.rb:14:in `require_relative'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/gems/3.1.0/gems/chroma-db-0.2.0/lib/chroma-db.rb:14:in `<top (required)>'
	from <internal:/Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:160:in `require'
	from <internal:/Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:160:in `rescue in require'
	from <internal:/Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:149:in `require'
	from (irb):1:in `<main>'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/gems/3.1.0/gems/irb-1.6.4/exe/irb:9:in `<top (required)>'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/bin/irb:25:in `load'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/bin/irb:25:in `<main>'
<internal:/Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file -- chroma-db (LoadError)
	from <internal:/Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from (irb):1:in `<main>'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/lib/ruby/gems/3.1.0/gems/irb-1.6.4/exe/irb:9:in `<top (required)>'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/bin/irb:25:in `load'
	from /Users/andrei/.asdf/installs/ruby/3.1.2/bin/irb:25:in `<main>'
irb(main):002:0>

Also -- would it be possible to relax the Ruby version requirements for those installing the gem with an earlier Ruby version? https://github.com/mariochavez/chroma/blob/main/chroma-db.gemspec#L15
I'd recommend going down to ">= 2.6.0"

Hi!
The gem uses the newest Ruby syntax; it will not work with Ruby 3.1 or older. Needs 3.2 or better.
Changing the gem code to relax the Ruby version means a rewrite of this gem.
I'll try to add Ruby Next to polyfill the newest syntax to older Ruby, but I can't make any commitment that this will work.
Mario

I'm releasing a new version of this gem. It uses ruby-next to provide backward compatibility with older versions of ruby down to 2.7.8
https://github.com/mariochavez/chroma/pull/9

Wow @mariochavez, incredible job! Thank you so much for knocking this out so quickly!

Closing this for now.

@mariochavez I'm up and running! Thank you sir!

@mariochavez It's integrated into langchain.rb now: https://github.com/andreibondarev/langchainrb/pull/20

@andreibondarev awesome!


Remove all the previous 1.0 upgrade commands

I think before releasing the first stable release we should remove our upgrade commands, at the moment there are sulu:upgrade:0.9.0:resource-locator and sulu:upgrade:0.15.0:internal-links. They don't really look nice, and shouldn't be used after installing 1.0 anyway.
@dantleech already suggested that we could try to use doctrine migrations instead, and maybe there will be something similar for PHPCR one day.
/cc @chirimoya @wachterjohannes

:+1: for doctrine migrations
A cleanup of the UPGRADE and CHANGELOG files may be good too.

Also we now have https://github.com/dantleech/PhpcrMigrationsBundle for PHPCR migrations.

@c00n84 Which of the upgrade commands do you really need? I would look over all of them anyway, just to be sure not to delete one you really need.

My suggestion would be:

Command
Handling

sulu:upgrade:0.9.0:resource-locator
rename to sulu:content:resource-locator:maintain and move from CoreBundle to ContentBundle

sulu:upgrade:0.15.0:internal-links
remove

sulu:upgrade:0.16.0:time
remove

sulu:upgrade:0.17.0:collections
remove

sulu:upgrade:0.17.0:media
remove

sulu:upgrade:0.18.0:smart-content-operator
remove

Most of the commands are just here to convert some legacy data formats to the current ones. As said I would like to remove them, since they are not needed in a fresh install and pollute the command namespace.
/cc @dantleech @c00n84 @wachterjohannes @chirimoya

@danrot Perhaps we also need the smart-content-operator command sometimes. It can be used to generally change the operator from OR to AND for tags

+1
@c00n84 re. the smart content, is that indicative of a missing feature in the admin interface? If necessary we could make a dedicated command for it in any case.

Is there really a use-case where you want to change that for every single page? Can't imagine, since you lose all the managed information...


NPE thrown because of no null check in HtmlTreeBuilderState

I'm getting an NPE when I have an input tag inside a table without a type attribute. I know the HTML syntax is incorrect, but I think the NPE is an insufficient parsing result here:
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "org.jsoup.nodes.Attributes.get(String)" because "startTag.attributes" is null
	at org.jsoup.parser.HtmlTreeBuilderState$9.process(HtmlTreeBuilderState.java:934)
	at org.jsoup.parser.HtmlTreeBuilder.process(HtmlTreeBuilder.java:136)
	at org.jsoup.parser.TreeBuilder.runParser(TreeBuilder.java:66)
	at org.jsoup.parser.TreeBuilder.parse(TreeBuilder.java:47)
	at org.jsoup.parser.Parser.parse(Parser.java:107)
	at org.jsoup.Jsoup.parse(Jsoup.java:58)

How to reproduce:
import org.jsoup.Jsoup;

public class Main {

    public static void main(String... args) {
        Jsoup.parse("
<input type='text'/>
"); // Works
        Jsoup.parse("
<input/>
"); // NPE
    }
}

Happens because the if doesn't have a  check for startTag.attributes being null when calling startTag.attributes.get("type") at line 934 in org.jsoup.parser.HtmlTreeBuilderState:
} else if (name.equals("input")) {
	if (!startTag.attributes.get("type").equalsIgnoreCase("hidden")) {
		return anythingElse(t, tb);
	} else {
		tb.insertEmpty(startTag);
	}
} else if (name.equals("form")) {

Hi, we are a student group and we would like to take a crack at this. Can't guarantee that we'll be able to complete it with high enough quality but we'll like to try.

Hi, we are a student group and we would like to take a crack at this. Can't guarantee that we'll be able to complete it with high enough quality but we'll like to try.

Whoops, accidentally closed it.
@LIKP0 I think you can give it a try and raise a PR. It's one line of code change so should be fairly trivial. However, I'm not the admin of the repo, so can't guarantee that it will be merged.

Hello! Sorry that I can'r reproduce the bug now. There is no running error for below code:
import org.jsoup.Jsoup;

public class Main {

    public static void main(String... args) {
        Jsoup.parse("
<input type='text'/>
"); // Works
        Jsoup.parse("
<input/>
"); // NPE
    }
}

Would you expain the bug more clearly or maybe the bug has been fixed by official?

Hello! Sorry that I can'r reproduce the bug now. There is no running error for below code:
import org.jsoup.Jsoup;

public class Main {

    public static void main(String... args) {
        Jsoup.parse("
<input type='text'/>
"); // Works
        Jsoup.parse("
<input/>
"); // NPE
    }
}

Would you expain the bug more clearly or maybe the bug has been fixed by official?

What is the version you try to reproduce the bug with? I ran it with 1.13.1.
Pushed up the fully working (NPE throwing) example to here:
https://github.com/laxika/jsoup-npe-bug-example

I use the codes cloning from Github directly (seem to be 1.14.1), not the released version of 1.13.1.

I use the codes cloning from Github directly (seem to be 1.14.1), not the released version of 1.13.1.

Woah, you are right. Probably the bug is fixed on 1.14.1. I'm closing the ticket then. Thanks a lot!


fix(matchv5): add missing challengesDTO to pariticpantDTO

The actual work of this was done by: @safranx


Move some logic from ClientHello into grpc_utils

Requesting feedback on this change. I want to remove the need for ClientHello so as a part of that change, I moved some logic into grpc_utils for handling common errors in retry_transient_errors instead.
The end goal here is to get rid of ClientHello. We currently raise a few exceptions like AuthError and ConnectionError during that operation, and I don't want to break any user who catch those exceptions. Once we remove ClientHello, those exceptions will be raised in other RPC calls, but it seems nice to retain the exception type.
Moving logic this way is nice because I only had to update two tests! I'm treating the number of test changes as an arguable proxy for what how much user code we could expect to break. My expectation is that very few customers rely on these custom exception types though.
Slightly more general question about mapping grpc error codes in grpc_utils
We have a lot of code in the client of the form
try:
    resp = await retry_transient_errors(self._client.stub.VolumeCommit, req, max_retries=90)
except GRPCError as exc:
    raise RuntimeError(exc.message) if exc.status in (Status.FAILED_PRECONDITION, Status.NOT_FOUND) else exc

I tend to think it would be nice if retry_transient_errors could do more of the error mapping but I think there's arguments on both sides. This change adds a handler for one particular status code (UNAUTHENTICATED so it's a step in that direction).

I think this makes sense. I assume we put it in retry_transient_errors to avoid having to change call sites to chain additional methods onto it, but once we move that logic into UnaryUnaryWrapper and similar (and get rid of retry_transient_errors) we could separate the concerns of mapping exceptions from retrying exceptions a bit to make the code a bit clearer

once we move that logic into UnaryUnaryWrapper and similar (and get rid of retry_transient_errors) we could separate the concerns of mapping exceptions from retrying exceptions a bit to make the code a bit clearer

Yeah I'd love to not have to explicitly use retry_transient_errors in our code and just do it automatically through the wrappers. We can move the exception handling into those as well. I'll take a look.

Danke schön @freider


Customer-reported issue with NNBD migration tool: couldn't load dart file /media/f12r/Projects/Flutter-UI-Templates/fetch_data_api/lib/pages/random_user_home.dart

couldn't load dart file /media/f12r/Projects/Flutter-UI-Templates/fetch_data_api/lib/pages/random_user_home.dart
Error: Error reaching migration preview server
Please fill in the following:
Name of package being migrated (if public):
What I was doing when this issue occurred:
Is it possible to work around this issue:
Has this issue happened before, and if so, how often:
Dart SDK version: 2.13.1
Additional details:
Thanks for filing!
Stacktrace: auto populated by migration preview tool.
b@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:309:3
Tg/$async$LU<@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:3133:32
lz/s</<@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:1579:73
$2@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:4680:23
$2@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:4675:25
rp@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:4951:25
Kw@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:4737:27
$0@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:4885:42
HZ@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:1627:76
ZL@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:4798:3
$0@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:4843:22
pu@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:1664:5
eN@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:1666:7
$1@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:4632:3
ft@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:387:17
tR/s</<@http://<IP_ADDRESS>:45725/media/f12r/Projects/Flutter-UI-Templates/fetch_data_api?authToken=sG3srGV_Ing%3D:395:51

As of 1c7fe7196dd7a542f7f91cd6ea2ac81e1a13146c, the null safety migration tool has been removed from active development and retired. No further work on the tool is planned.
If you still need help, or you believe this issue has been closed in error, please feel free to reopen.


Share Bypassed Connection over Ethernet

Hi, thank you for this project, Green Tunnel works great in my case of bypassing my ISP block over Netflix. I do however have one issue or feature request, is it possible to share the connection to other device?
My plan is to run Green Tunnel on my Ubuntu machine, and then share the connection over LAN, so that other devices can also use the bypass without actually having to run Green Tunnel itself. I intend to access Netflix from other devices such as smart TV, phones or other PCs.
So far I have tried to set up my LAN to share the internet, the internet works and I can browse from other device, but it still can't access Netflix. Can you point out what I may have missed?
Thank you.

Hi,
You can run gt with --ip <IP_ADDRESS> to listen on all interfaces (default is localhost) and connect it from other devices. But if you set up it on your TV, Netflix app finds that you use proxy and block it (through android APIs).
I use WARP VPN on my raspberry pi and set up it as a gateway to send all of the traffic over the VPN and its work grate for Netflix.

i did the same also configured the iptables :-
sudo iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 8000
sudo iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 443 -j REDIRECT --to-port 8000
eth1 is my usb to ethernet adapter which connected to a router for wifi and lan ports (all bypassed dpi).
but still eth1 traffic is not redirected to port 8000, can you help me please?


Fixed the issue #2770 where incomplete list was shown in landscape mode

Description
Fixed the issue where incomplete list was shown in landscape mode
Fixes #2770 Incomplete Nearby List shown in Landscape mode
What changes did you make and why?
The problem we had earlier was, when the view is generated in portrait mode the height was set according to the portrait mode, when we rotate the height of the container remained same as of portrait, due to which we were not able to see the rest of the list which was already generated but was hidden.
Tests performed
Tested betaDebug on Xiaomi Mi A1 with API level 28.
Screenshots showing what changed

@neslihanturan @domdomegg Please review this PR, sorry I have to change the UI as it was necessary because of the incomplete list bug.

Hi @madhurgupta10 , sorry this was a late review. In our current implementation we expand the bottom shoot up to a level which does not cover all page. But after your implementation it covers all page which is unwanted. We want to make them expand up to 3/4 of the screen, if I recall the rate correctly.

@neslihanturan Actually, the issue of the incomplete list was occurred due to differences in screen sizes in portrait and landscape. For instance, when we rotate the height of the container remained the same as of portrait, due to which we were not able to see the rest of the list which was already generated but was hidden.
Please suggest a better implementation, I will be happy to make the changes :)

@madhurgupta10 wouldn't it be possible to setHeight of the bottom sheet to 3/4 of the rotated screen as well? But I don't mean hacky ways like measuring window height etc., I mean a clean implementation.

@neslihanturan to dynamically set the 3/4 height for both the orientations, I think we need to recreate the activity, every time the user rotates the phones.

If a non-hacky way does not exists, then we can cover all page on landscape mode (since the height is already low) and 3/4 9/16 (sorry) on portrait mode?

@neslihanturan Okay, I will give it a try :)

@neslihanturan to dynamically set the 3/4 height for both the orientations, I think we need to recreate the activity, every time the user rotates the phones.

No we can use -> if (savedInstanceState != null)

We can also use: https://stackoverflow.com/questions/5112118/how-to-detect-orientation-of-android-device

@neslihanturan Thanks, I am on it 👍

This pull request seems inactive for a while and the implementation needs to be changed. So closing for now.


Make pandas an optional dependency

Pandas is currently only required if using the functions market_book_to_data_frame and prices_file_to_data_frame. In deployments where these functions are not used, requiring pandas to be installed is unnecessary bloat

Merged into the next release


feat(UI): Add tests to the table spec

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #47232

These tests handle general cases of the component - currently researching how I can implement more to the component itself to force it to be more accessible. I was overthinking this, I think it's ready for review

Quick confirmation, the table component is completely ready? Yes?

Hi @raisedadead , yes it's ready I forgot to request reviewers


TextArea.accept_handler does not get called

Hello, I was trying the full-screen/calculator.py example, and found that the accept_handler attached to a TextArea doesn't really work. The accept_handler does not seem to get called when I type enter, or escape-enter.
To confirm the issue, I simplify the example into a somewhat bare-bone program like this:
from prompt_toolkit.application import Application
from prompt_toolkit.key_binding import KeyBindings
from prompt_toolkit.widgets import TextArea
from prompt_toolkit.layout.layout import Layout
from prompt_toolkit.application.current import get_app

input_field = TextArea(
    height=1, prompt='>>> ', multiline=False, wrap_lines=False)

def accept(buff):
    get_app().exit()

input_field.accept_handler = accept

kb = KeyBindings()

@kb.add('c-c')
@kb.add('c-q')
def _(event):
    event.app.exit()

application = Application(
    layout=Layout(input_field),
    key_bindings=kb,
    full_screen=True)

application.run()

Still, nothing happens when I type enter or escape-enter.
In case you need to know, I am on:

Ubuntu 18.04
Python 3.6.6

Thanks for the great toolkit!

Hi @nickoala,
Thank you for reporting this issue!
Can you try again with the latest prompt_toolkit release or with the master branch. I believe this issue was fixed recently.
When I execute your example code, it executes fine for me.

I just tried it on prompt_toolkit 2.0.6, and it works!
Thank you for fixing it :+1:


Incorrect display for number of artifacts scanned

After scanning artifacts, the display for scan progress in the bottom-left seems to get desynced.
E.g., after scanning 1504 artifacts:

the counter displays "1493 / 1504"
the JSON output has 1501 artifacts
(there were 3 artifacts that errored out during scanning)

I've encountered this issue in both v1.2 and v1.2.1-prerelease.

Did you have any artifacts remaining below the rarity threshold you had set? E.g Did you have any 3 star artifacts when your filter was set to 4 stars?

No, the filter was set to scan all artifacts (1-5 stars).

Fixed in V1.3.0


Fix wally references error.

A couple of file references the Promise library directly with absolute pathing:
local Promise = require(ReplicatedStorage.Packages.Promise)
This will work if the consumer project has a Promise dependencies but will not work if the project only have Firebase dependencies.
I have provided the fix by updating the path to a relative path.
Eg: local Promise = require(script.Parent.Parent.Promise)
I have also updated the dev.project.json file so that they reside inside ReplicatedStorage (for development testing purposes only, in production the library will still be installed to ServerPackages as expected).
This is so that relative references to the Promise library will still be a valid path during development.
I am not sure if the original repo is still being maintained so I have published a new wally package so that I can use the fix immediately.
You will have to update wally.toml to match back to the wally package at https://wally.run/package/raphtalia/firebase if you do accept this pull request.

I have created a new pull request to add a commit to revert back the wally.toml file and also to use a different source branch on my forked repo. I will be closing this pull request and we can continue from the new pull request here.

@raphtalia Please remember to wally publish the latest 1.0.7 package to wally. Thank you!


Add MaxConnAge

Hi @vmihailenco , I'm investigating some configs and was wondering how the MaxConnAge config could impact on my setup. Could you please elaborate on this?

Originally this was requested for https://github.com/go-pg/pg so go-pg closes connections after some time so proxy servers like haproxy can be cleanly restarted. As I understand during restart old haproxy instance is killed only after all incoming connections are closed.
For go-redis it is probably not as relevant.


Actually use Dockerfile for variants...

/me slowclaps myself
Followup fix of #62
I dug into this because I didn't understand why #61 didn't fail before being merged if the JDK11 flavor was missing git-lfs package. Now I know...

OK, now it fails as expected :).
...
[2019-05-31T19:40:53.554Z] Building Dockerfile-jdk11 => tag=latest
[2019-05-31T19:40:53.554Z] + docker build -f Dockerfile-jdk11 -t jenkins/slave:latest .
[2019-05-31T19:40:53.554Z] Sending build context to Docker daemon  94.21kB

[2019-05-31T19:40:53.814Z] Step 1/20 : FROM openjdk:11-jdk
[2019-05-31T19:40:53.814Z] 11-jdk: Pulling from library/openjdk
[2019-05-31T19:40:53.814Z] c5e155d5a1d1: Already exists
[2019-05-31T19:40:54.073Z] 221d80d00ae9: Already exists
[2019-05-31T19:40:54.073Z] 4250b3117dca: Already exists
[2019-05-31T19:40:54.073Z] 3b7ca19181b2: Already exists
[2019-05-31T19:40:54.073Z] acd9a038f588: Already exists
[2019-05-31T19:40:54.073Z] c712c33bb9d3: Already exists
[2019-05-31T19:40:54.073Z] a29b0c79ee6c: Already exists
[2019-05-31T19:40:54.331Z] Digest: sha256:0cf0f236aa04c1399abca3bee146c52c56942c11b698ac052a65e7f257e81561
[2019-05-31T19:40:54.331Z] Status: Downloaded newer image for openjdk:11-jdk
[2019-05-31T19:40:54.331Z]  ---> 281eee30d3a6
[2019-05-31T19:40:54.331Z] Step 2/20 : MAINTAINER Oleg Nenashev<EMAIL_ADDRESS>[2019-05-31T19:40:54.589Z]  ---> Running in 41b8553b283e
[2019-05-31T19:40:55.522Z] Removing intermediate container 41b8553b283e
[2019-05-31T19:40:55.522Z]  ---> 6e331bd2fdd6
[2019-05-31T19:40:55.522Z] Step 3/20 : ARG VERSION=3.29
[2019-05-31T19:40:55.522Z]  ---> Running in 07c8da5b0c8d
[2019-05-31T19:40:56.457Z] Removing intermediate container 07c8da5b0c8d
[2019-05-31T19:40:56.457Z]  ---> 1e3a9c9b0989
[2019-05-31T19:40:56.457Z] Step 4/20 : ARG user=jenkins
[2019-05-31T19:40:56.715Z]  ---> Running in 43c93bd65a03
[2019-05-31T19:40:58.307Z] Removing intermediate container 43c93bd65a03
[2019-05-31T19:40:58.307Z]  ---><PHONE_NUMBER>a2
[2019-05-31T19:40:58.307Z] Step 5/20 : ARG group=jenkins
[2019-05-31T19:40:58.307Z]  ---> Running in 8c34f74189b5
[2019-05-31T19:40:58.926Z] Removing intermediate container 8c34f74189b5
[2019-05-31T19:40:58.926Z]  ---> 0ec0abd2705c
[2019-05-31T19:40:58.926Z] Step 6/20 : ARG uid=1000
[2019-05-31T19:40:59.204Z]  ---> Running in a548f8922f63
[2019-05-31T19:41:00.150Z] Removing intermediate container a548f8922f63
[2019-05-31T19:41:00.150Z]  ---> f7178e3cdbaa
[2019-05-31T19:41:00.150Z] Step 7/20 : ARG gid=1000
[2019-05-31T19:41:00.407Z]  ---> Running in 25c4930b098e
[2019-05-31T19:41:01.340Z] Removing intermediate container 25c4930b098e
[2019-05-31T19:41:01.340Z]  ---> 4b2bfe7b0f4e
[2019-05-31T19:41:01.340Z] Step 8/20 : ENV HOME /home/${user}
[2019-05-31T19:41:01.597Z]  ---> Running in 0ca32a375d4b
[2019-05-31T19:41:02.531Z] Removing intermediate container 0ca32a375d4b
[2019-05-31T19:41:02.531Z]  ---> 606b18e965f2
[2019-05-31T19:41:02.531Z] Step 9/20 : RUN groupadd -g ${gid} ${group}
[2019-05-31T19:41:02.789Z]  ---> Running in df496ddb22ee
[2019-05-31T19:41:05.319Z] Removing intermediate container df496ddb22ee
[2019-05-31T19:41:05.319Z]  ---> eb1d0221f0e6
[2019-05-31T19:41:05.319Z] Step 10/20 : RUN useradd -c "Jenkins user" -d $HOME -u ${uid} -g ${gid} -m ${user}
[2019-05-31T19:41:05.578Z]  ---> Running in 303ab0c2857d
[2019-05-31T19:41:08.857Z] Removing intermediate container 303ab0c2857d
[2019-05-31T19:41:08.857Z]  ---> a3eac853c532
[2019-05-31T19:41:08.857Z] Step 11/20 : LABEL Description="This is a base image, which provides the Jenkins agent executable (slave.jar)" Vendor="Jenkins project" Version="${VERSION}"
[2019-05-31T19:41:08.857Z]  ---> Running in d53adf571d04
[2019-05-31T19:41:09.422Z] Removing intermediate container d53adf571d04
[2019-05-31T19:41:09.422Z]  ---> f5dc98f31d30
[2019-05-31T19:41:09.422Z] Step 12/20 : ARG AGENT_WORKDIR=/home/${user}/agent
[2019-05-31T19:41:09.987Z]  ---> Running in 5417db6ad44f
[2019-05-31T19:41:10.918Z] Removing intermediate container 5417db6ad44f
[2019-05-31T19:41:10.918Z]  ---> 5ac27f6f9b09
[2019-05-31T19:41:10.918Z] Step 13/20 : RUN apt-get update && apt-get install git-lfs
[2019-05-31T19:41:10.918Z]  ---> Running in 31cc8fa9ddee
[2019-05-31T19:41:11.851Z] Ign:1 http://deb.debian.org/debian stretch InRelease
[2019-05-31T19:41:11.852Z] Get:2 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB]
[2019-05-31T19:41:11.852Z] Get:3 http://deb.debian.org/debian stretch-updates InRelease [91.0 kB]
[2019-05-31T19:41:11.852Z] Get:4 http://deb.debian.org/debian stretch Release [118 kB]
[2019-05-31T19:41:11.852Z] Get:5 http://deb.debian.org/debian stretch Release.gpg [2434 B]
[2019-05-31T19:41:11.852Z] Get:6 http://security.debian.org/debian-security stretch/updates/main amd64 Packages [492 kB]
[2019-05-31T19:41:12.110Z] Get:7 http://deb.debian.org/debian stretch-updates/main amd64 Packages [27.2 kB]
[2019-05-31T19:41:12.110Z] Get:8 http://deb.debian.org/debian stretch/main amd64 Packages [7082 kB]
[2019-05-31T19:41:13.483Z] Fetched 7907 kB in 1s (5279 kB/s)
[2019-05-31T19:41:13.740Z] Reading package lists...
[2019-05-31T19:41:14.565Z] Reading package lists...
[2019-05-31T19:41:14.565Z] Building dependency tree...
[2019-05-31T19:41:14.565Z] Reading state information...
[2019-05-31T19:41:14.565Z] E: Unable to locate package git-lfs
[2019-05-31T19:41:15.498Z] The command '/bin/sh -c apt-get update && apt-get install git-lfs' returned a non-zero code: 100
script returned exit code 100

I don't think so, I had a look, and it's been done afaict plus the packaging system is very different.


Disconnect between what Cilium and K8S see for an IP of a Pod

Bug report

General Information

Cilium version (run cilium version): 1.10
Kernel version (run uname -a): Linux minikube 4.19.182 #1 SMP
Orchestration system version in use (e.g. kubectl version, ...) 1.19.7
Link to relevant artifacts (policies, deployments scripts, ...): https://github.com/petreski/cilium-examples
Generate and upload a system zip:

curl -sLO https://git.io/cilium-sysdump-latest.zip && python cilium-sysdump-latest.zip

https://github.com/petreski/cilium-examples/blob/main/cilium-sysdump-20210525-174507.zip
How to reproduce the issue

start minikube

minikube config set vm-driver virtualbox
minikube start --network-plugin=cni

follow this guide to setup bridged network interface https://dpb587.me/post/2020/04/11/minikube-and-bridged-networking/
restart minikube
install cilium using helm (enable egressGateway as described here https://docs.cilium.io/en/latest/gettingstarted/egress-gateway/)
deploy simple deployment as described https://docs.cilium.io/en/latest/gettingstarted/egress-gateway/
setup egress NAT policy and apply egress-ip-assign
ensure that in minikube eth2 has additional IPs assigned
try to access external web-server in the same subnet
expected result in external's web-server access-log is an entry which shows that NAT policy gets applied (in my case it doesn't)
cilium-sysdump-20210525-174507.zip

This came up in the context of the egress IP gateway, but doesn't seem related. There's clearly something broken:
$ kubectl get cep
NAME       ENDPOINT ID   IDENTITY ID   INGRESS ENFORCEMENT   EGRESS ENFORCEMENT   VISIBILITY POLICY   ENDPOINT STATE   IPV4         IPV6
mediabot   2905          28328                                                                        ready            <IP_ADDRESS>
$ kubectl get pods -A -o wide --show-labels | grep mediabot
default       mediabot                           1/1     Running   2          23h   <IP_ADDRESS>       minikube   <none>           <none>            Class=mediabot,Org=empire,class=mediabot,org=empire

As requested in slack, please check if the issue still persists without following the guide to setup bridged network interface

Cannot reproduce on a new cluster created using kubeadm.


How to achieve those awesome tooltips from the README?

I see in the README that there are overlay tooltips when hovering on variables when a breakpoint is triggered. I can't for the life of me seem to be able to get those. Do I perhaps need an additional package for it to work?

You'll need to install and configure the atom-ide and php-ide packages

Ah, I see. Is this related to the showing of datatips? I see you use php-ide this to fetch the range of the datatip. Unfortunately, I'm using Serenata in Atom instead; is there no way to still have the debug evaluation available (I wouldn't mind losing some php-ide specific functionality)?
I took a look at how the Serenata package does it, and it appears ot have its own function to fetch this range. Hope this helps!


Work around dxc matrix layout behavior

The Slang compiler allows the default matrix layout convention (row-major vs. column-major) to be specified via the command line or API.
When generating output HLSL, Slang emits a #pragma pack_matrix directive for the chosen default convention, so that a user can generate plain HLSL output and still have it encode their desired defaults.
The problem that has arisen is that many released versions of dxc (including those in the most recent Windows SDK at this time) ignore the #pragma pack_matrix directive (the feature has since been added to top-of-tree dxc).
The main fix here is to instead pass the -Zpr option in to dxc when invoking it if the row-major (non-default) convention is requested.
This will solve the problem for clients that use Slang to generate DXIL, but not for clients who use Slang to generate plain HLSL that they then pass into dxc (those clients are assumed to be able to work around the problem for themselves).
In order to test the change, I added a test that fills a constant buffer with sequential integers, and then reads out the rows/columns of an int3x4 matrix with both row- and column-major layout, as well as an integer placed after the matrix, so we can see the offset it was given.
The render-test application did not yet support generating code via dxc/DXIL, so I added an option for that.
This ends up assuming that anybody who is running the D3D12 tests will also have a version of dxc available.

"Luckily" our CI process isn't running D3D12 tests right now, but I agree that this is maybe setting us up for some pain when it comes to bringing up D3D12 tests in CI. I have run those tests locally on my machine so I can confirm that there exists a configuration where they run without errors, so hopefully we can reproduce that setup when the time comes.


Altering CFLAGS and CXXFLAGS, trying to build libcurl for iOS

Hoping for some tips on a problem - I'd love to contribute back to this project but would greatly benefit from some pointers to get started understanding everything :)
Two issues I'd be grateful for help on:

Seems the detection of strerror is failing to detect which one is appropriate for iOS. I assume it should be defining HAVE_POSIX_STRERROR_R but is failing in the detection stage. Not sure where to begin fixing this so I'd be happy to work around it by manually adding -DHAVE_POSIX_STRERROR_R to the compile flags.
Need to add -fembed-bitcode flag to everything compiled. Again there's probably a better way but during these early stages I'm happy to work around by manually adding it.

I tried what was suggested in this issue with no luck
# invoke with:
# cmake -G Xcode -H. -B_builds -DCMAKE_TOOLCHAIN_FILE=/path/to/polly/ios-10-3.cmake
  cmake_minimum_required(VERSION 3.7.1)
  include("cmake/HunterGate.cmake")
  HunterGate(
    URL "https://github.com/ruslo/hunter/archive/v0.18.66.tar.gz"
    SHA1 "26028d26e2a9e0496fd7c896fa04e05b309ab6fd"
  )
  hunter_add_package(cURL)
  hunter_cmake_args(cURL CMAKE_ARGS
                    CMAKE_C_FLAGS="-DHAVE_POSIX_STRERROR_R -fembed-bitcode"
                    CMAKE_CXX_FLAGS="-DHAVE_POSIX_STRERROR_R -fembed-bitcode")
  add_library(foo foo.cpp)

Relevant error here (in case fixing the root cause is better/easier):
CompileC /Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/CURL.build/Release-iphoneos/libcurl.build/Objects-normal/armv7/strerror.o lib/strerror.c normal armv7 c com.apple.compilers.llvm.clang.1_0.compiler
    cd /Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source
    export LANG=en_US.US-ASCII
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x c -arch armv7 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -Wno-trigraphs -fpascal-strings -O3 -Wno-missing-field-initializers -Wno-missing-prototypes -Wno-return-type -Wno-missing-braces -Wparentheses -Wswitch -Wno-unused-function -Wno-unused-label -Wno-unused-parameter -Wno-unused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wno-constant-conversion -Wno-int-conversion -Wno-bool-conversion -Wno-enum-conversion -Wno-shorten-64-to-32 -Wpointer-sign -Wno-newline-eof -DCMAKE_INTDIR=\"Release-iphoneos\" -DBUILDING_LIBCURL -DHAVE_CONFIG_H -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk -fstrict-aliasing -Wdeprecated-declarations -miphoneos-version-min=10.3 -Wno-sign-conversion -Wno-infinite-recursion -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/Release-iphoneos/include -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/include/curl -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/include -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Install/include -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/../include -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/lib/.. -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/lib/../include -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/.. -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/lib -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/CURL.build/Release-iphoneos/libcurl.build/DerivedSources/armv7 -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/CURL.build/Release-iphoneos/libcurl.build/DerivedSources -Wmost -Wno-four-char-constants -Wno-unknown-pragmas -F/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/Release-iphoneos -DNDEBUG -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/include/curl -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/include -isystem /Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Install/include -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/../include -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/lib/.. -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/lib/../include -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/.. -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/lib -I/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib -MMD -MT dependencies -MF /Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/CURL.build/Release-iphoneos/libcurl.build/Objects-normal/armv7/strerror.d --serialize-diagnostics /Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/CURL.build/Release-iphoneos/libcurl.build/Objects-normal/armv7/strerror.dia -c /Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/lib/strerror.c -o /Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Build/CURL-Release-prefix/src/CURL-Release-build/lib/CURL.build/Release-iphoneos/libcurl.build/Objects-normal/armv7/strerror.o
/Users/x/.hunter/_Base/26028d2/d2a5da9/bf75c7e/Build/CURL/Source/lib/strerror.c:32:6: error: "strerror_r MUST be either POSIX, glibc or vxworks-style"
#    error "strerror_r MUST be either POSIX, glibc or vxworks-style"
     ^
1 error generated.

I tried what was suggested in this issue with no luck

https://github.com/ruslo/hunter/issues/803 is about autotools projects. Even if it's about C/C++ compile flags the issue is quite different.

CMAKE_C_FLAGS="-DHAVE_POSIX_STRERROR_R -fembed-bitcode"

It should be "CMAKE_C_FLAGS=-DHAVE_POSIX_STRERROR_R -fembed-bitcode", see:

http://cgold.readthedocs.io/en/latest/tutorials/variables/regular.html#quotes

Relevant error here (in case fixing the root cause is better/easier)

Since I don't see -fembed-bitcode flag at all I think we can't use CMAKE_C_FLAGS hack with Xcode. The right way to apply flags to 3rd party packages globally is to use toolchain. Is -fembed-bitcode the flag added by CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE? In this case it can be just set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE TRUE). Currently this feature is disabled:

https://github.com/ruslo/polly/blob/344018e298861fe4f8158c4274deafdbaab4ac04/os/iphone.cmake#L149

Please submit request to Polly, need to run few tests.

Seems the detection of strerror is failing to detect which one is appropriate for iOS. I assume it should be defining HAVE_POSIX_STRERROR_R but is failing in the detection stage. Not sure where to begin fixing this so I'd be happy to work around it by manually adding -DHAVE_POSIX_STRERROR_R to the compile flags

It should be fixed in CMakeLists.txt of CURL, hunterized fork is here:

https://github.com/hunter-packages/curl

iOS + CURL (one architecture) works for now, closing.


DD-412 - Imported descriptions should preserve newlines using html elements

Fixes DD-412
Note: @jo-pol is looking at the preserving of whitespaces in EASY. Currently easy-deposit-form removes all spacing.
Description of changes
How to test

Change  dataset.xml description field of an example bag to include a newline (with enter) and paragraph (enter twice)
Import the bag dd-dans-deposit-to-dataverse import -s <path to bag> <outboxdir>
Check dataset in UI
Also check unit tests

Related PRs
(Add links)
*
Notify
@DANS-KNAW/dataversedans

@ChrisMuller80 : merging this, please check about the <br> elements (see question above).