Font rendering issues in Terminal

I have Terminal up and running under 18362.0, but it seems to have problems with certain types of fonts.
Here it is working fine with the font set to "SF Console":

But it breaks when the font is changed to "SF Console Medium" (but not because the font isn't found or anything). The app doesn't crash but the text is rendered... let's just say extremely incorrectly:

If you focus extremely well and zoom in all the way, you can see that text is being rendered.. just very oddly so. Change the font back and it redraws correctly to what it used to contain.
Here's the same screenshot from conhost with the font set to "SF Console Medium" via the registry:

It's not just an issue with setting a variant of a font, or this particular font. Here's how the default (free) "Roboto Slab" is rendered, but I'm not sure if it's the same problem (it doesn't look like it):

@miniksa is the guy who will know why this is happening.

Is "SF" the San Francisco font from Apple that we're absolutely not authorized nor licensed to use outside of an Apple computer?
If so, I can't investigate this and have to slam it closed. I can't debug/diagnose fonts I'm not licensed to use and I can't condone having other people break that license agreement.

No, that is SF Mono. This is a clone intended to look like it but not one I'm authorized to share, which is why I mention Roboto Slab, which is open source and publicly available.

Where can I get it and confirm the licensing?

It's made by Google, released under the Apache 2.0 license. GitHub repo: https://github.com/googlefonts/robotoslab
You can download the prebuilt TrueType files here: https://github.com/google/fonts/tree/master/apache/robotoslab

OK thanks. I'll take a look at it then when I get around to being able to work on rendering stuff instead of triaging GitHub issues and PRs all day. :P

I'm having a similar issue, I can only seem to use the base regular font, any medium or other variation and the app won't start and changes to a very tiny clipped variation if already running similar to the 4th screenshot. Font is Fira Code. Fira Code Medium works fine everywhere else.

If the new terminal is going to support Bold and Italic fonts, shouldn't the font picker be showing Font Families, rather than individual fonts?

True, but the fact the font picked is not of a regular weight, it could be part of the problem.  But I assume the plan is to have a font picker in an app setting dialog of some kind :)

I think a good question is whether individual fonts within a family are looked up by their common name or their postscript name.

Also maybe related: #1163

This issue occurs with any font using the non-regular weight. For Example, IBM Plex Mono provides a ton of weights, none of them work in the terminal except regular specified with "fontFace": "IBM Plex Mono". Specifying "fontFace": "IBM Plex Mono Medium" produces the same rendering issue above.

This issue occurs with any font using the non-regular weight. For Example, IBM Plex Mono provides a ton of weights, none of them work in the terminal except regular specified with "fontFace": "IBM Plex Mono". Specifying "fontFace": "IBM Plex Mono Medium" produces the same rendering issue above.

Same for Nerd Fonts. As long as regular is installed, regular will   be used. If you uninstall everything but, say for example bold, bold is used instead. This should instead be configurable in the settings file, with another attribute (e.g. fontWeight) for the profile:
        {
            "acrylicOpacity" : 0.5,
            "closeOnExit" : true,
            "colorScheme" : "One Dark Pro",
            "commandline" : "wsl.exe -d Debian",
...
            "fontFace" : "Hack NF",
            "fontSize" : 11,
            "fontWeight": "bold",
...
            "useAcrylic" : true
        }

This issue occurs with any font using the non-regular weight. For Example, IBM Plex Mono provides a ton of weights, none of them work in the terminal except regular specified with "fontFace": "IBM Plex Mono". Specifying "fontFace": "IBM Plex Mono Medium" produces the same rendering issue above.

Thanks for the datapoint. I don't think I tried non-"regular" font weights yet while originally writing the renderer. This is probably just something I overlooked and need to finish writing.

Same for Nerd Fonts. As long as regular is installed, regular will be used. If you uninstall everything but, say for example bold, bold is used instead. This should instead be configurable in the settings file, with another attribute (e.g. fontWeight) for the profile:

I agree, it should be configurable. I just haven't got around to it yet.

Just had to give a shoutout to you guys for how ballin this Terminal is already. Performance is like greased lightning, visuals are terrific and stability is very good for such an early preview.
The switching for different kinds of shells (PS, cmd and wsl) is terrifc also.
Keep it going! 💪🏻

Another example

Victor Mono font (https://github.com/rubjo/victor-mono/)

In @offero and @BinaryInk all the “small” runs contain fi sequence, so maybe it is related?
cc. @rubjo (Author of Victor Mono)

@miniksa I know it's on the radar to get this addressed - not sure if you have an implementation plan in mind already (and if so, forgive my armchair programming....)
FWIW, Terminal seems to be completely naïve to the existence of multiple font variants as it's not possible to even type the full name of the font... (In VSCode there is an editor.fontWeight setting but I believe it's possible to specify the font weight variant in the font family list... I haven't played with the font APIs in a really long time, so not sure if specifying the weight variant after the name just implies a font weight as opposed to a completely different font name.)
Also, if possible, it would be cool to have the ability to bypass the Windows Font subsystem and specify a (woff/ttf/otf) font file directly (if that's an easy option) -- I've run into issues with locked down workstations where I want to use a different font but can't install it at all.
As a possible workaround in the meantime, it might be possible to edit the font name itself to be different so that Windows doesn't see it as a variant but as a completely different font...
E.g. from "Fira Code Bold" TTF -- actually changing the name to be say "Fira Code Alt Bold" and setting the variant to Regular. (See ttfdump -t name FiraCode-Bold.ttf output below)
Name table   1.  PlatformID:     1
                 EncodingID:     0
                 LanguageID:     0
                 NameID:         1
                 Length:         9
                 Offset:         86
                 46 69 72 61 20 43 6f 64 65     > Fira Code
Name table   2.  PlatformID:     1
                 EncodingID:     0
                 LanguageID:     0
                 NameID:         2
                 Length:         4
                 Offset:         95
                 42 6f 6c 64                    > Bold
Name table   3.  PlatformID:     1
                 EncodingID:     0
                 LanguageID:     0
                 NameID:         3
                 Length:         24
                 Offset:         99
                 32 2e 30 30 30 3b 43 54 44 42  >  2.000;CTDB
                 3b 46 69 72 61 43 6f 64 65 2d  >  ;FiraCode-
                 42 6f 6c 64                    > Bold
Name table   4.  PlatformID:     1
                 EncodingID:     0
                 LanguageID:     0
                 NameID:         4
                 Length:         14
                 Offset:         123
                 46 69 72 61 20 43 6f 64 65 20  >  Fira Code
                 42 6f 6c 64                    > Bold

@danieldjewell, it appears that DirectWrite does have provisions to effectively "do whatever you want" in terms of loading fonts, up to and including what you proposed of directly specifying a font file: https://docs.microsoft.com/en-us/windows/win32/api/dwrite/nn-dwrite-idwritefontcollectionloader
It would just take someone coding that up in the DirectX/DirectWrite rendering engine and piping a setting all the way through to make it happen.

I'm seeing the same issue with PragmataPro. It appears it's because the font isn't truly monospace. Some code points map to double or triple wide glyphs (PragmataPro Mono works because these wide glyphs are squished, but it also drops Nerd Fonts glyphs).
Oddly, the size returns to normal when the color changes:
echo -e '\e[31m\u2026\e[31mx'
echo -e '\e[31m\u2026\e[32mx'

I apologize if this isn't the right place to log this, but I didn't think it would be appropriate to open a new issue.  I'm having some rendering issues with powerline font in both powershell and wsl/ubuntu.  I'm using the most recent Cascadia Code PL font.  What you can see from the prompt is that there's some thin lines that separate each section of the prompt.  This is sub-optimal, when this didn't exist before, and doesn't exist in other renderings (like the VSCODE terminal).

Running Windows Terminal (Preview)
Version: 0.9.433.0
Cascadia Code PL 1911.21

Quick repro for me:
Install Fixedsys Excelsior (here)
Run CMD in WT
type <><>

Not sure where to file this. Could be in Cascadia Code itself @cinnamon-msft or could be Terminal.
Repro is easy. "echo ⚡" with Cascadia Code PL vs using the patched DelugiaCode NF.
Note it on the command line vs when used in a prompt. This is DelugiaCodeNF (just a patched Cascadia). It's not in color on the prompt, then it's color in the prompt. But the size is right.

And this is Cascadia Code PL. It's color everywhere but tiny.

@shanselman Is the color part a bug? It looks to me like a lightning bolt glyph was added into the patched font and that the unpatched font is falling back on the default Windows emoji glyph.

@austinwagner The bug (behaviorally) is the small/wrong size. You're saying that Cascadia has a small glyph inside and that is wrong?

@shanselman Apologies for being unclear. I was referring to the color difference only. The size is almost certainly wrong.

I have a similar size issue with the Kubernetes Helm symbol ⎈ (U+2388) and the Fira Code font:

Good, good, y'all can head over to #900

This is in fact a bug submitted by @shanselman himself so 🤷♂

I followed the instructions by @shanselman post https://www.hanselman.com/blog/HowToMakeAPrettyPromptInWindowsTerminalWithPowerlineNerdFontsCascadiaCodeWSLAndOhmyposh.aspx and I still see wonky icons.
Windows Terminal version 0.9.433.0

@calloncampbell I'll help you via twitter, not in a GH issue

OK my issue is not related. I had downloaded the wrong font. Thanks @shanselman for the help.

This may be related: glyphs in some fixed rows appear "ghosted" in the bottom half (the whole row). I am using Cascadia Mono PL (no ligatures) and ClearType rendering.
By fixed I mean that after scrolling, the text in a different row renders fine, but the text entering the affected row is rendered badly.
For example, the "eviously" is rendered badly in the screenshot, but after scrolling a single line, it would render okay, but "Pages" would not.

[x] - I believe a combination of #4731 and #4747 should have resolved the issue with certain fonts not displaying correctly at all and the weird scaling seen between different characters.

(https://github.com/microsoft/terminal/issues/610#issuecomment-589441184)
(https://github.com/microsoft/terminal/issues/610#issuecomment-583809969)
(https://github.com/microsoft/terminal/issues/610#issuecomment-579776896)
(https://github.com/microsoft/terminal/issues/610#issuecomment-575025545)
(https://github.com/microsoft/terminal/issues/610#issuecomment-525522588)
(https://github.com/microsoft/terminal/issues/610#issuecomment-519241691)
(https://github.com/microsoft/terminal/issues/610#issue-442056616)

[x] - The weird emoji sizes are definitely #900, so not considering them here.

(https://github.com/microsoft/terminal/issues/610#issuecomment-594107263)

[ ] - The different colors of ⚡ I need to check into. (https://github.com/microsoft/terminal/issues/610#issuecomment-593816481)
[x] - The gapping seen between lines (https://github.com/microsoft/terminal/issues/610#issuecomment-588555052)
[x] - The pixel bleed on scrolling should be fixed with #5185 and #5345 (https://github.com/microsoft/terminal/issues/610#issuecomment-605290399)
[ ] - Wonky icons I need to identify (https://github.com/microsoft/terminal/issues/610#issuecomment-595315883)

@miniksa FYI the wonky icons comment was due to an uninstalled font

With the completion of this checklist: https://github.com/microsoft/terminal/issues/610#issuecomment-618068103, I am deeming this bug closed and resolved by other issues on the tracker. Thanks. Please file new issues against the latest version if there are still problems not addressed or covered by the open #900 or #455.

@miniksa were you able to get around the fontWeight config var?


[Task]: Prepare release process for canary iota 2.0 testnet version

Task description
We need to prepare the CI so that we can make canary 3.0.0-x releases for the testnet
Lets discuss what version number we will give to this canary, the idea is that

Testnet: Firefly Canary 3.0.0
Shimmer/Mainnet: Firefly 3.0.0

Blocked until there is a stable release of the iota/sdk


License of docs

Hi,
In the page, https://github.com/moby/term/blob/main/README.md, the license for docs is mentioned as CC-BY. Can you please mention the exact CC-BY license and the version of the license?

We don't have any docs in this repo. Also it looks like you are asking the same question across different projects, so not sure why you opened an issue here.

We don't have any docs in this repo. Also it looks like you are asking the same question across different projects, so not sure why you opened an issue here.

Thank you for the response. The following statement in the README.md, found in this repo, gave an impression that there may be docs in the repo:
"Code and documentation copyright 2015 Docker, inc. Code released under the Apache 2.0 license. Docs released under Creative commons."
Yes, I have raised a few issues related to licenses in the past for different projects.


Allow neto11y start in print-only mode

As for App O11y, this PR allows to start beyla NetO11y in print-only mode for debugging purposes. There is no need now to provide an OTEL exporter if the flow printer is setup.

Codecov Report
Attention: Patch coverage is 16.66667% with 5 lines in your changes are missing coverage. Please review.

Project coverage is 39.20%. Comparing base (4935b8d) to head (d4986b8).

Files
Patch %
Lines

pkg/beyla/config.go
25.00%
2 Missing and 1 partial :warning:

pkg/internal/netolly/export/metrics.go
0.00%
2 Missing :warning:

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #662       +/-   ##
===========================================
- Coverage   77.72%   39.20%   -38.52%
===========================================
  Files          95       92        -3
  Lines        7938     7738      -200
===========================================
- Hits         6170     3034     -3136
- Misses       1429     4526     +3097
+ Partials      339      178      -161

Flag
Coverage Δ

integration-test
?

unittests
39.20% <16.66%> (+0.02%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Conversion error mitigation

Hello,
I have a quick question about the normalization of layers during the ANN-SNN conversion.
Is there a good way to estimate the parameters for the conversion (percentile)?
Alternatively, is there a smart way to modify the parameters of the from_torch function, changing the spiking hyperparameters for better accuracy? Is there another trick during training to keep the accuracy after conversion?
Thanks!

There is a function sinabs.utils.normalize_weights which allows you to normalize weights based on a given percentile of output activity. It roughly follows this paper . You can find further details in the docs.
During training you can use sinabs.layers.NeuromorphicReLU as activation function instead of the usual ReLU. It is a step function in the forward pass (approximating rate coding in an SNN) and uses a surrogate gradient in the backward pass.
You might regularize the expected number of synaptic operations, already during training. For more details to both see the docs and this paper.


Fix buttons in /releases

This PR competes with #839, looks like @cmaloney beat me to the punch

The real question is who has the page with the best internal spacing.
Mine:

Yours:

Your width fix is quite a bit nicer, so I'd say go with it over mine

Clockwise from top left: Opera, Chrome, Firefox, Safari


 Start the server for Prometheus exporter.
    logger.go:130: 2019-03-08T00:09:26.669Z	INFO	TestInterlevedExporters	metrics/stackdriver_exporter.go:72	Created Opencensus Stackdriver exporter with config &{knative.dev/serving testComponent stackdriver 0 test-project false false  }
{"level":"warn","ts":1552003766.871185,"logger":"fallback","caller":"metrics/record.go:33","msg":"The current metrics config has not been successfully set yet, not record the metric %v.{5 0xc0000bee40}"}
FAIL

/lgtm
/approve


No message when adding new (different) db reference to sqlproj that's already referenced

Not sure if it's replacing/updating the existing reference or not changing anything because it's already ref'ed.  Probably should have a toast saying "Reference to  already exists; would you like to update it with the new settings?" or something.
Question: can I have one project (or one dacpac) reused for multiple different databases?  Seems corner-case-y, but not inherently invalid.

I think this should be fixed by https://github.com/microsoft/azuredatastudio/pull/12795 and will be in the extension will be updated later today

confirmed that this was fixed by #12795.
Yup, a project or dacpac can be referenced by multiple projects


B-Tax entry point

One question that came up with the new B-Tax capability: how should a user get to the page? If they go to ospc.org -> Apps, this brings up ospc.org/taxbrain which is just the microsim input page. One option we discussed was ospc.org -> Apps brings up a window and you must choose "Business Tax" or "Personal Tax" and then you would either go to ospc.org/taxbrain/btax (for the former) or ospc.org/taxbrain/taxcalc (for the latter). @MattHJensen what is the best way to do this? Also, we have had discussions that "TaxBrain" is a term/brand that would apply to all the models that are available, not just the microsim (and dynamic models connected to the microsim). Does that align with your idea of the branding of the webapp(s)?

I have been thinking ospc.org-> Apps would take you to ospc.org/apps which would then list TaxBrain as one app and Cost of Capital Calculator (or some other name) as the second app. We might also list the Vizualization Gallery as an app so we have everything in one place.

One option we discussed was ospc.org -> Apps brings up a window and you must choose "Business Tax" or "Personal Tax" and then you would either go to ospc.org/taxbrain/btax (for the former) or ospc.org/taxbrain/taxcalc (for the latter).

Could this become confusing if we integrate personal taxes into the cost of capital calculator?

Also, we have had discussions that "TaxBrain" is a term/brand that would apply to all the models that are available, not just the microsim (and dynamic models connected to the microsim)

My thinking has been that TaxBrain would refer to the big "unified" app that is primarily focussed on revenue and distributional analyses, where all of the models are connected.
Under that scheme,  the cost of capital calculator would start off as a separate app and then be merged with TaxBrain only after it can team up with Tax-Calculator and OG-USA to provide static revenue and distributional analyses and dynamic revenue analyses. (I could even imagine incorporating B-Tax with our PE dynamic page and possibly our ME dynamic page later on.)
I am not wed to this scheme though, and would be interested to hear more about the advantages of applying TaxBrain branding to everything. That idea is new to me, and I will keep thinking through it myself as well.

I have been thinking ospc.org-> Apps would take you to ospc.org/apps which would then list TaxBrain as one app and Cost of Capital Calculator (or some other name) as the second app. We might also list the Vizualization Gallery as an app so we have everything in one place.

This is definitely possible, it's just that we would have to design the landing page to select which app one wants to go to, and I was trying to cut that step out, since it seems like a significant step (or at least, one that we would want to get right, but one I don't have a good instinct for personally).

Could this become confusing if we integrate personal taxes into the cost of capital calculator?

Yes I see your point about this.

My thinking has been that TaxBrain would refer to the big "unified" app that is primarily focussed on revenue and distributional analyses, where all of the models are connected.
Under that scheme, the cost of capital calculator would start off as a separate app and then be merged with TaxBrain only after it can team up with Tax-Calculator and OG-USA to provide static revenue and distributional analyses and dynamic revenue analyses. (I could even imagine incorporating B-Tax with our PE dynamic page and possibly our ME dynamic page later on.)

The advantage of keeping the "TaxBrain" branding on the whole thing, with multiple apps inside, is that we won't have to come up with a good name and images for the BTax app. If TaxBrain is for only the unified/integrated set of models (which does make sense to me, by the way), then we have to figure out how to brand BTax (which really to me just means a name and some reasonable images similar to our current TaxBrain PNG images). The image design part seems hardest and was something I was trying to avoid.

This is definitely possible, it's just that we would have to design the landing page to select which app one wants to go to, and I was trying to cut that step out, since it seems like a significant step (or at least, one that we would want to get right, but one I don't have a good instinct for personally).

What do you think of starting off w/ a landing page that looks like the TaxBrain dynamic model landing page?

The advantage of keeping the "TaxBrain" branding on the whole thing, with multiple apps inside, is that we won't have to come up with a good name and images for the BTax app. If TaxBrain is for only the unified/integrated set of models (which does make sense to me, by the way), then we have to figure out how to brand BTax (which really to me just means a name and some reasonable images similar to our current TaxBrain PNG images). The image design part seems hardest and was something I was trying to avoid.

For the name, what about something simple like "Cost of Capital Calculator"? Then we'd have TaxBrain, Cost of Capital Calculator, and Visualization Gallery in the apps page?

The image design part seems hardest and was something I was trying to avoid.

Yes, I agree, but I think there is someone at AEI who could do a good job once we settle on a name; in the meantime, we could just use some standard font. It would look crude until we have the nicer image, but we can call it an alpha.
cc @jdebacker, @bfgard

My thinking has been that TaxBrain would refer to the big "unified" app that is primarily focussed on revenue and distributional analyses, where all of the models are connected.

I can see this.  I had thought differently: TaxBrain as the interface for a number of different models that may interact or not, but all deal with taxes.  At some point, we'll have linkages from Tax-Calc to/from B-Tax and from B-Tax static to several B-Tax dynamic options (including OG-USA).  So does B-Tax (or the "Cost of Capital Calculator") reside in a separate app until these integrations, and then get pulled over?  Does it move when it takes individual income tax parameters (say from the current Tax Brain fields)?  Or only when it can provide inputs to revenue/distributional analysis?

For the name, what about something simple like "Cost of Capital Calculator"? Then we'd have TaxBrain, Cost of Capital Calculator, and Visualization Gallery in the apps page?

This seems ok w/ me.  Although some labeling (e.g. "Explore individual income taxes", "Explore taxes on capital", "Visualize the tax code") to make the content more obvious could help.  Depending on the user, I can imaging "cost of capital" being too opaque of a term.  Likewise - "visualize" what?  It's not clear.  Maybe have separate buttons for visualize taxes, environmental policy, etc. as other areas are added.  Or, if TaxBrain is the umbrella for tax models/visuals then perhaps we have "EnviroBrain" (or whatever - this is a bad name, but you get the point) to be the web app to interact with models/visuals related to environmental policy... and so on for other policy areas.

This seems ok w/ me. Although some labeling (e.g. "Explore individual income taxes", "Explore taxes on capital", "Visualize the tax code") to make the content more obvious could help.

Definitely agree. The dynamic landing page layout will allow this. We just need TaxBrain and cost of capital calculator labels for now. What do you think of this:
TaxBrain: Explore the effect of individual income and payroll tax reforms on budgetary, distributional, and economic outcomes using static and dynamic economic models.
Cost of Capital Calculator: Explore the effect of business tax reforms on investment incentives across assets, entity types, and industries.

Sounds good to me.

Does it move when it takes individual income tax parameters (say from the current Tax Brain fields)? Or only when it can provide inputs to revenue/distributional analysis?

I think we would want to integrate the cost of capital calculator with TaxBrain as soon as it can feed into some of the outputs currently presented by TaxBrain, either the static revenue and distributional tables or the economic outputs produced by OG-USA.

To feed into the static revenue and distributional tables, I believe it would need to be linked in both directions to Tax-Calculator: i.e., it would need to accept TC params as inputs and it would need to be able to distribute B-Tax outputs to the TC microdata.

To feed into OG-USA, it could either feed into the TC microdata, or it could feed directly into OG-USA.

Based on an earlier email from @jdebacker, I expect what will happen first is that B-Tax will feed into OG-USA.
At that point, I think we could bring B-Tax under the TaxBrain branding as the business tax side of TaxBrain.
Here's why:
Whether you start with B-Tax or TaxCalc, you will eventually get to OG-USA. Once at OG-USA, we can give the user the option to fill out the side that he did not start with.
For example, I start with B-Tax, get the cost of capital outputs, click link to dynamic simulation, get to the OG-USA page, and am offered an opportunity to also make reforms to the individual and payroll tax before running OG-USA. Alternatively, I start with individual and payroll taxes, get the static and distributional tables, link to the dynamic simulation, go to OG-USA, and am offered an opportunity to make reforms to business taxes before running OG-USA.
This would be an OK place to be while we wait for B-Tax and TC bidirectional integration.
That said, it isn't optimal because we will be doing quite a bit of front-end web development and user interface work that we will end up deleting once we have the B-Tax TC bidirectional integration and can just merge the B-Tax inputs into the first step of TaxBrain.
My sense is we should just wait and see how far away B-Tax/TC bidirectional integration is once we get B-Tax/OG-USA integration. If we are really far away from B-Tax/TC integration, then we can go ahead and bite the bullet and do the UI work described above. If we are pretty close to B-Tax/TC integration, then we can wait for it and then do a whole sale merge.

What I'd like to see even before B-Tax feeding the current TaxBrain outputs (or OG-USA) is to see the TaxBrain inputs feed into B-Tax.
B-Tax needs some ability for the user to modify parameters like rates on ordinary income, interest, dividends, cap gains.  We could add these fields to the B-Tax UI at low cost, but I'm afraid they would be difficult for the user to understand since you are putting in just a single rate to represent the "marginal investor".
Ideally, we have the user enter individual income tax parameters in an interface like TaxBrain and be able to use those inputs along with the inputs we are currently building into the B-Tax UI to evaluate business income taxes.  The tax parameters representing the "marginal investor" would be imputed from the micorsim output (e.g. some weighted avg of the rates on different filers based on capital income).
I am hoping this come sooner than later.  If/when it does come, what makes sense as the B-Tax entry point?  Does it change where we would put it now (assuming we'd want this direction of integration relatively soon)?

What I'd like to see even before B-Tax feeding the current TaxBrain outputs (or OG-USA) is to see the TaxBrain inputs feed into B-Tax.

Definitely makes sense.
Which parameters from the TaxBrain input page do you think would be relevant?

Which parameters from the TaxBrain input page do you think would be relevant?

Since this is moving more away from the UI question, I'm answering this in a new issue here.
But the answer to that question might affect how we do the UI.

What I'd like to see even before B-Tax feeding the current TaxBrain outputs (or OG-USA) is to see the TaxBrain inputs feed into B-Tax.

In light of the discussion https://github.com/open-source-economics/B-Tax/issues/43, what do you think about this:

Some subset of parameters from TC are displayed on the Cost of Capital Calculator (CCC) input page. (@jdebacker will provide this list)

There is unfolding/expansion option on the CCC input page that allows the CCC user to see all of the TC params that are currently available on TB.

On the TB static results page, there is a "Link to Cost of Capital Calculator" button right next to the "Link to Dynamic Simulations".

Feedback from @mistakevin, @talumbau, and others on front end feasibility might be helpful, especially for #  2.

I like this solution.

Re which TaxBrain inputs to include, I would suggest just the rates (not bracket ranges) under the "Regular Taxes" section.  This should be simple enough and we'll then offer the ability to expand to all Tax Brain inputs.
cc @MattHJensen

Ok. We'll want to grab the AMT Rates (both OI and CG/DIV) as well, since those eat up pretty much anything that happens to the regular taxes section -- especially the CG/DIV rates.

Ah, yes @MattHJensen.
Re the MTRs that will be returned from the Tax-Calc run to enter into the user defined parameter dictionary for B-Tax, we should be able to leverage what you all built for the macro elasticity model.

we have addressed the overall issue here, which is that the Cost of Capital Calculator is a separate product from TaxBrain. There is still the underlying technical discussion of how taxcalc, btax, and ogusa all interact with each other through the various web application. For btax <-> taxcalc, the relevant discussion is here:
https://github.com/open-source-economics/B-Tax/issues/43


.Net dll

Here I see only .Net 4.0 dll.
Is there a .Net 3.5 dll for download?

No.
Can you build from source?

Yes. The only problem is - because there is no VisualStudio solution file - where to find target version of .Net?

I've been struggling with this myself, trying to build for a different .net target framework, but I can't find any obvious place to set this in the csharp make.

Same for me.
Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53
00
2015-12-29 18:52 GMT+01:00 tboby<EMAIL_ADDRESS>
I've been struggling with this myself, trying to build for a different
.net target framework, but I can't find any obvious place to set this in
the csharp make.
—
Reply to this email directly or view it on GitHub
https://github.com/google/or-tools/issues/133#issuecomment-167843328.

Actually, I believe you need to change csc.exe in Makefile.windows to point to the one in the correct .NET framework.
I am trying to find the exact reference.

We are moving to dotnet core to build everything.
Thus minimum requirement is netstandard2.0


Upon trying to install module as a privileged user (root) NPM gets stuck in a loop

Node Version:
node 8.9.4 / npm 5.6.0
Platform:
Linux apollo 4.4.0-87-generic #110-Ubuntu SMP Tue Jul 18 12:55:35 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Compiler:

Using built-in specs.
COLLECT_GCC=cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.5' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.5)

Module:
node-sass

Verbose output (from npm or node-gyp):
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.9.4
gyp verb ensuring nodedir is created /var/www/test/node_modules/node-sass/.node-gyp/8.9.4
gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/www/test/node_modules/node-sass/.node-gyp/8.9.4"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/var/www/test/node_modules/node-sass/.node-gyp"
gyp verb tmpdir == cwd automatically will remove dev files after to save disk space
gyp verb command install [ '8.9.4' ]
gyp verb install input version string "8.9.4"
gyp verb install installing version: 8.9.4
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.9.4
gyp verb ensuring nodedir is created /var/www/test/node_modules/node-sass/.node-gyp/8.9.4
gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/www/test/node_modules/node-sass/.node-gyp/8.9.4"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/var/www/test/node_modules/node-sass/.node-gyp"
gyp verb tmpdir == cwd automatically will remove dev files after to save disk space
gyp verb command install [ '8.9.4' ]
gyp verb install input version string "8.9.4"
gyp verb install installing version: 8.9.4
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.9.4
gyp verb ensuring nodedir is created /var/www/test/node_modules/node-sass/.node-gyp/8.9.4
gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/www/test/node_modules/node-sass/.node-gyp/8.9.4"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/var/www/test/node_modules/node-sass/.node-gyp"
gyp verb tmpdir == cwd automatically will remove dev files after to save disk space
gyp verb command install [ '8.9.4' ]
gyp verb install input version string "8.9.4"
gyp verb install installing version: 8.9.4
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.9.4
gyp verb ensuring nodedir is created /var/www/test/node_modules/node-sass/.node-gyp/8.9.4
gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/www/test/node_modules/node-sass/.node-gyp/8.9.4"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/var/www/test/node_modules/node-sass/.node-gyp"
gyp verb tmpdir == cwd automatically will remove dev files after to save disk space
gyp verb command install [ '8.9.4' ]
gyp verb install input version string "8.9.4"
gyp verb install installing version: 8.9.4
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.9.4
gyp verb ensuring nodedir is created /var/www/test/node_modules/node-sass/.node-gyp/8.9.4
gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/www/test/node_modules/node-sass/.node-gyp/8.9.4"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/var/www/test/node_modules/node-sass/.node-gyp"
gyp verb tmpdir == cwd automatically will remove dev files after to save disk space
gyp verb command install [ '8.9.4' ]
gyp verb install input version string "8.9.4"
gyp verb install installing version: 8.9.4
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.9.4
gyp verb ensuring nodedir is created /var/www/test/node_modules/node-sass/.node-gyp/8.9.4
gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/www/test/node_modules/node-sass/.node-gyp/8.9.4"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/var/www/test/node_modules/node-sass/.node-gyp"
gyp verb tmpdir == cwd automatically will remove dev files after to save disk space
gyp verb command install [ '8.9.4' ]
gyp verb install input version string "8.9.4"
gyp verb install installing version: 8.9.4
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version not already installed, continuing with install 8.9.4
gyp verb ensuring nodedir is created /var/www/test/node_modules/node-sass/.node-gyp/8.9.4
gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/www/test/node_modules/node-sass/.node-gyp/8.9.4"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/var/www/test/node_modules/node-sass/.node-gyp"
gyp verb tmpdir == cwd automatically will remove dev files after to save disk space
gyp verb command install [ '8.9.4' ]
gyp verb install input version string "8.9.4"

Upon trying to install `node-sass` as a privileged user (root) NPM gets stuck in a loop.
I'm not trying to install node-sass as a global package so this cannot apply: https://docs.npmjs.com/getting-started/fixing-npm-permissions.

Screen share here.
Steps to reproduce

Make sure you are authenticated as a privileged user (root)
Run npm init --yes
Run npm install node-sass --save

Thanks for the bug report.  Good write-up.  Can you check if #1384 fixes it?

Hi @bnoordhuis
I have the same problem. As the npm install configured as a part of the app build, most of our Jenkins jobs are knocked down. We can't manually install and try the steps.
it needs some serious fixing soon.
Thanks.

Well, did the PR work for you?

Nope, It didn't work for me.

@arocki7 Then it's probably not the same issue.  Can you file a new bug report and post steps to reproduce and anything else that is relevant?

@bnoordhuis  will do.

I also get that error on a clean ubuntu 17 (artful) install. Just setup Ubuntu, then install nodejs 8.10 LTS, then try to install sudo npm install -g @angular/cli or sudo npm install -g node-sass.
As a workaround I could npm install node-sass and then copy the node-sass and node-gyp from local node_modules to /usr/lib/node_modules.

I encountered the same issue yesterday trying to install posix (just as in the initial report, mkdir tmp; cd tmp; npm init --yes; npm install posix --save;). After finding this bug report and seeing that it was fixed, I tried upgrading the npm-bundled copy as per the Wiki. That, unfortunately, did not do anything, because npm actually bundles two copies of node-gyp, the other one located under the npm-lifecycle module. So,
npm explore npm -g -- npm explore npm-lifecycle -- npm install npmjs/node-gyp

did the trick. (Can someone confirm that invocation makes sense? If yes, that might be a fine addition to the wiki page.)
No infinite loop happens anymore when I try to install the posix package now. However, the behavior of node-gyp is pretty nonsensical:
maxwell /root/tmp # npm install posix --save

><EMAIL_ADDRESS>install /root/tmp/node_modules/posix
> node-gyp rebuild

/root/tmp/node_modules/posix
gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/8.10.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/root/tmp/node_modules/posix/.node-gyp"
gyp WARN install got an error, rolling back install
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, stat '/root/tmp/node_modules/posix/.node-gyp/8.10.0'
gyp ERR! System Linux 4.4.0-116-generic
gyp ERR! command "/opt/node-v8.10.0-linux-x64/bin/node" "/opt/node-v8.10.0-linux-x64/lib/node_modules/npm/node_modules/npm-lifecycle/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /root/tmp/node_modules/posix
gyp ERR! node -v v8.10.0
gyp ERR! node-gyp -v v4.0.0
gyp ERR! not ok

I'm pretty sure root does have permission to access these paths, but uid 500 does not. osenv.user() shows the value of an environment variable, not the name of process.geteuid() -- which, ironically, is what I wanted to be able to do using the posix package in the first place :laughing:
After the first EACCES, node-gyp tries to instead select a temporary directory -- for some reason, however, it gets what seems to be its working directory back from os.tmpdir() ...?

AFAICS, I can work around this by manually specifying /tmp/.node-gyp as the dev dir. However, the process then still does not have permission to write to the directories where the binaries should actually end up ... but I guess that is a problem (well, questionable design decision?) on the npm end. I'm not sure if there is anything that can be done in node-gyp at all (except the "root does not have permission" thing -- no idea about the tmpdir), so this bug is probably fixed alright, but the experience is far from satisfactory.

Hey people, if this even can make any "profit" for you, I am mean if this is still relevant - in order to solve this issue with "root" user all you need to include in your command: sudo npm install any package name here -> just add the flag --unsafe-perm
This is well described here: https://github.com/nodejs/node-gyp/issues/454

Hey people, if this even can make any "profit" for you, I am mean if this is still relevant - in order to solve this issue with "root" user all you need to include in your command: sudo npm install *any package name here* -> just add the flag --unsafe-perm
This is well described here: #454

@magnafilix thank you for this. You saved me so much time with this.


fix(android): allow the projects to specify names of their apps

The android app project name could be different than :app
There could be more than one app projects under android main projects

After this patch, one could specify a global variable reactNativeProjects in their project configuration and it should work in both the above situations.
e.g. I have 2 projects :client and :server
buildscript {

    ext {
        // ...
        reactNativeProjects = [':client', ':server']
    }
  // ....
}

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hey @243826 - by chance, do you use the react-native CLI feature of specifying a custom android project name (equivalent to gradle project name, what you're adding here)?
https://github.com/react-native-community/cli/blob/master/docs/projects.md#project-1
This key:

appName?: string; // A name of the app in the Android sourceDir, equivalent to Gradle project name. By default it's app.

inside the standard react-native CLI project config is supposed to be used for this customization, and my purpose in asking is that perhaps we could test for existence of that key and use it if present (somehow? very vague sorry) then you could also use that, and we would then be using a documented configuration interface instead of having a possibly notifee-specific one
It is easy to say at least that hard-coding app, when the CLI allows it to be configured, is not good, so some sort of solution (possibly this one!) is required...

@mikehardy I took a cursory look at what you are suggesting above. Since I am new to react-native, I do not understand a lot of nitty gritty details of the it and I am okay with it since, at this point, it's not my objective as well. So take everything I say with a grain of salt, please.
As I understand - the config you point out above is for the CLI which I think I am using but not having the configuration has not hindered my progress in any way. Not to say that I would not need it in future. Thanks for the pointer which hopefully will linger with me for a long time.
The problem I am having is when I am trying to use the Gradle which I believe is independent of use of CLI. So technically, you could marry them together for the sake of using a documented configuration interface or you could have loosely coupled solution where if notifee-specific configuration is provided: use it, or else if: cli configuration is provided: use it, or use your hardcoded value for backwards compatibility purpose. Makes sense?
Last but not the least, analyzing the type for the AndroidProjectParam did not give me any sense of how I can specify that I have 2 apps within my uber project -  'server' and 'client'.  But I guess that's a concern for the CLI team.

@mikehardy @243826 do we need this? I'm wondering if it was needed when we were checking for the licensing. What about if we try to remove this line altogether?

@243826 - the CLI drives gradle (the java build) in a react-native app, so you're using it whether you want or not, and it's really tightly coupled :-). I'll always prefer an existing config element vs making my own because loosely-couple sounds nice but this would imply a "support the documented element, and also support this custom one" fallback thing and now programmatically instead of 1 path we would have a 2x2 matrix which is a testing problem and I expect will fail more often.
All that said, I think Helena's comment is the most important one. The whole android build system here has some history of when we had a custom binary library we needed to load from when notifee was closed source. And we shouldn't need any of that any more.
You did have a good question about how to use the CLI config element I mentioned to handle your client vs server build - to do this react-native style you would have two configs, and two react-native CLI invocation styles as package.json run scripts, each one pointing to a different react-native CLI config. One config would be for server one for client, I think.
@helenaford I'll look in to whether we need this at all or not, you should be correct here...

@helenaford I'll look in to whether we need this at all or not, you should be correct here (in that we can just remove it)...

Knock, Knock... I am circling back... Any verdict?

@mikehardy I can test this tomorrow and will report back.
Did you manage to look into this?

sadly I did not

It's been only 3 months since the PR raised... is there an ETA?

@mikehardy Not only this works for me but also I agree with your approach in principle. Thank you.


Darwin compile under gn

Problem
This PR adds examples/chip-tool-darwin as a build target when ones runs ./gn_build.sh.
The specific goal here is to avoid the various src/darwin/Framework breakages that happens because it does not run in CI and because we do not build the iOS app all day.
Basically this PR builds the src/darwin/Framework/CHIP files and it should help us catch regression in a faster way since a few of us are building using macOS all day long.
Summary of Changes

Add examples/chip-tool-darwin to be built with ./gn_build.sh on Mac

What about actually building the iOS example from GN?

If I'm understanding the goal correctly, my main question this is just whether it goes far enough. For example I'd expect this be compiled with an ios toolchain rather than a mac toolchain. Does it not matter?

If I'm understanding the goal correctly, my main question this is just whether it goes far enough. For example I'd expect this be compiled with an ios toolchain rather than a mac toolchain. Does it not matter?

I agree it does not goes far enough. Ideally we would use command line Xcode to build the src/darwin/Framework/ and src/darwin/ChipTool, and then run the tests from those folders.
Short term goal is to reduce the number of breakages of src/darwin/Framework (since this is where most of the breakages seems to appears) and to reduce the latency between a breakage and a fix.
Medium term goal would be to use the right toolchain to build those folders properly.
Longer term goal would be to also run the tests, and add more tests since I believe the src/darwin tests are not runned very much.

If I'm understanding the goal correctly, my main question this is just whether it goes far enough. For example I'd expect this be compiled with an ios toolchain rather than a mac toolchain. Does it not matter?

I agree it does not goes far enough. Ideally we would use command line Xcode to build the src/darwin/Framework/ and src/darwin/ChipTool, and then run the tests from those folders.

It would be good to automatically produce test iOS applications from each chip_test_suite(). If using XCode to build, I'd wonder if it would be fast enough (versus doing a native iOS application build from GN like Chrome does).

Short term goal is to reduce the number of breakages of src/darwin/Framework (since this is where most of the breakages seems to appears) and to reduce the latency between a breakage and a fix.
Medium term goal would be to use the right toolchain to build those folders properly.
Longer term goal would be to also run the tests, and add more tests since I believe the src/darwin tests are not runned very much.


compose: require docker-compose 1.6 or later

Fixes #741
Signed-off-by: Miquel Sabaté Solà<EMAIL_ADDRESS>

I've also updated the wiki page about this.


Allow optional 'options' in 'citeSyntax'.

Need to carry over '?' to typecast declaration. I do not believe tests are not catching this.

Thanks for your correction, I've included this as part of #10 for the next release.


Unexpected behavior with Pyarrow string conversion

Describe the issue:
Minimal Complete Verifiable Example:
# Put your MCVE code here
import pandas as pd
import dask.dataframe as dd

df = dd.from_pandas(pd.DataFrame({"col1": ["a","a","a", "b", "c", "c"], "col2": [1,2,3,4,5,6], "col3": [43,23,12,32,65,76]}), npartitions=2)
df.groupby("col1").agg({"col2": list, "col3": "first"}).reset_index().compute().info()

Anything else we need to know?:
In this example, the column 'col2' is being converted to a string instead of an array (object), which makes future processing more difficult. Is there a way to ignore certain columns from auto string conversion? I am aware of the configuration setting dataframe.convert-string, but it applies to all columns.
Dataframe

Dataframe after groupby

Environment:

Dask version: 2023.9.3
Python version: 3.9.15
Operating System: Centos 7
Install method (conda, pip, source): conda

Linking https://github.com/dask/dask/issues/10631, since it's related.


Added a search on the server side.

Please review and test this PR. There could be erros in it but also some open design decisions.
Use localhost:8000/search/?q=foo to search for foo
Stil open:

[ ] manage command to recreate the index with existing instances
[ ] ...

Hit to myseld. The speakers have to be indexed to each related item

Tested:
I created a motion and added a submitter "Max Mustermann". The search finds the motion if I search for "max" or "mustermann" but not for "muster".
=> Search should also work for substrings.


Segmentation fault with 0.15.2 on MRI 2.2.2

We've recently been using adhearsion 2.6.0 (https://github.com/adhearsion/adhearsion/commit/6b51039cc299c9a85064fb77bf6ef84331a4e29a, https://github.com/adhearsion/punchblock/commit/3a575bfab3bf224617c8eb6604240358a966d96e)  with MRI 2.2.2p95 and have generated a series of segfaults that seem to originate in Celluloid.
https://gist.github.com/emcgee/9fee7ca88eea2435c388
They are somewhat sporadic and I haven't be able to fully reproduce it, but was curious if anyone had seen/heard of such a thing.
I also realize 0.15.2 is a bit behind the times but is the current version to which Adhearsion is pinned. Something that may already be fixed in 0.16.1 prerelease?
cc @benlangfeld

Celluloid is pure Ruby. By the contract the Ruby memory model is
theoretically supposed to provide, segfaults can't "originate" in Celluloid.
And confirm, the version you're using is old. Our efforts are mostly
focused on 0.17 at this point. It would be nice if Adhearsion could upgrade!
On Sunday, May 24, 2015, Evan McGee<EMAIL_ADDRESS>wrote:

We've recently been using adhearsion 2.6.0 (adhearsion/adhearsion@6b51039
https://github.com/adhearsion/adhearsion/commit/6b51039cc299c9a85064fb77bf6ef84331a4e29a,
adhearsion/punchblock@3a575bf
https://github.com/adhearsion/punchblock/commit/3a575bfab3bf224617c8eb6604240358a966d96e)
with MRI 2.2.2 and have generated a series of segfaults that seem to
originate in Celluloid.
https://gist.github.com/emcgee/9fee7ca88eea2435c388
They are somewhat sporadic and I haven't be able to fully reproduce it,
but was curious if anyone had seen/heard of such a thing.
I also realize 0.15.2 is a bit behind the times but is the current
version to which Adhearsion is pinned. Something that may already be fixed
in 0.16.1 prerelease?
cc @benlangfeld https://github.com/benlangfeld
—
Reply to this email directly or view it on GitHub
https://github.com/celluloid/celluloid/issues/625.

--
Tony Arcieri

Thanks @tarcieri. Tested this with 0.16.0 and the segfaults didn't reappear, so I'd consider it closed.


Regarding the data processing details of the infer_transform operation in validation.py.

Hi,
In the validation.py file, I noticed that the data processing includes the infer_transform operation, which sets mask_name='label'. I would like to ask how an image without a mask label is handled and input into the model for prediction, and whether this handling affects the performance of the segmentation results.

I'm not sure if my understanding of this part of the code is correct. I would appreciate your response and clarification. Thank you.

Hi, betty
Your understanding is correct. We need labels to determine how to crop the image to form an input of size 128x128x128. When the input image does not have a label, the cropping area needs to be manually specified (e.g., center of the image or center of the first click). If we crop from the center of the image, we often obtain an incomplete object, which makes the test not meaningful for comparison. We have conducted ablation experiments on another strategy (cropping from the center of the first click) and our current strategy (using labels as the center), and the experiments show that our current strategy performs better.
Hope my answer helps you.

this is same my point would like to ask how an image without a mask label is handled and input into the model for prediction, and whether this handling affects the performance of the segmentation results.


Failed to upload attachment in news

<EMAIL_ADDRESS>uploads an attachment for broadcasting
File "solutions/common/handlers/broadcast.py", line 59, in post
    blob_key = upload_to_gcs(file_content, content_type, filename)
  File "rogerthat/bizz/gcs.py", line 40, in upload_to_gcs
    with cloudstorage.open(file_name, 'w', content_type=content_type) as f:
  File "lib/cloudstorage/cloudstorage_api.py", line 91, in open
    filename = api_utils._quote_filename(filename)
  File /lib/cloudstorage/api_utils.py", line 94, in _quote_filename
    return urllib.quote(filename)
  File "lib/python2.7/urllib.py", line 1294, in quote
    return ''.join(map(quoter, s))
KeyError: u'\xfc'

OR we convert the uploaded_file.name to a string, OR we just use a guid instead of the original filename. The filename doesn't really matter, it's never shown to the user.


Qt errors

I'm getting these errors in debug.log, when using the Qt wallet in Ubuntu, by clicking the different tabs on the left side:

GUI: QCoreApplication::postEvent: Unexpected null receiver
GUI: QCoreApplication::postEvent: Unexpected null receiver
GUI: QCoreApplication::postEvent: Unexpected null receiver
GUI: QObject::connect: No such signal WalletModel::balanceChanged(qint64, qint64, qint64, qint64)
GUI: QObject::connect:  (receiver name: 'SendCoinsDialog')
GUI: QCoreApplication::postEvent: Unexpected null receiver
GUI: QCoreApplication::postEvent: Unexpected null receiver

Also most of the time I cannot see my masternode listed in the wallet, it's just empty. But I cannot replicate this, it's just there sometimes, whereas the errors are consistent. I'm not sure it could be related to this issue. The system is updated.
I have downloaded and compiled the Qt wallet yesterday again, but the issue remains.

Hi jlsam, I've seen youve posted that this is sorted now, can you please close if you are all good, or reach out to me<EMAIL_ADDRESS>for further assistance

Actually, I just tested and the GUI errors are still here. Can you not see them in your log?

Which errors are you getting?
Cheers
Chris
Sent from my iPhone

On 28 May 2018, at 9:48 pm, jlsam<EMAIL_ADDRESS>wrote:
Actually, I just tested and the GUI errors are still here. Can you not see them in your log?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Which errors?... Well, the same ones I indicated when I opened this Issue.

Hey can you see your masternode when you type in the debug console “masternode list”?

The errors appear in debug.log when I see my masternode in the list and when I don't. That doesn't seem to matter. I'm running a cold/remote MN setup, where a GUI wallet in Ubuntu controls remotely Lindad running as masternode also in a VPS running Ubuntu.
The errors first appeared when I was running the local wallet in Ubuntu 14, but I have since upgraded to Ubuntu 18 and the same errors persist.
What is strange is that I'm receiving MN rewards although the coins never appear locked in my local wallet.
This is when I click 'Send'
GUI: libpng warning: iCCP: known incorrect sRGB profile
GUI: QObject::connect: No such signal WalletModel::balanceChanged(qint64, qint64, qint64, qint64)
GUI: QObject::connect:  (receiver name: 'SendCoinsDialog')
When I click any of the other options, I get just
GUI: QCoreApplication::postEvent: Unexpected null receiver
The layout in the wallet still appears correctly, it's just that these messages are being logged.
I also don't see a tab just for my masternodes, all I see is a tab for all masternodes.

yes. and I receive rewards too28.05.2018, 13:56, "Chris-Lindacoin" notifications@github.com:Hey can you see your masternode when you type in the debug console “masternode list”?
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or mute the thread.


Git-dumper doesn't work in some cases when the git output have HTML content-type

I found a public git folder on some website. but during using git-dumper to dump the code out from the git folder i got these errors:

[-] Testing https://example.com/.git/HEAD [200]
[-] https://example.com//.git/HEAD responded with HTML

I checked the website manually and I can clearly see the git folder content is leaked. but git-dumper refuses to dump it since the data comming out from it is in HTML content-type. that will disallow git-dumper from dumping some cases.

I think originally I was only checking whether the content contains "" but people had issues with that, see https://github.com/arthaud/git-dumper/pull/13
@DashLt do you know what was the issue with the original check?
In the meantime you can replace line 33 of git_dumper.py with a return False.

Yeah I already edited that line of code before. but the issue was still there. then i noticed there's a second layer of validation on line 73 do the same thing as 33. edited it and now it's working for me.

Not every site has a <html> tag verbatim. Many have attributes inside the tag, e.g.:
<html class="rwd geo-override no-js vis no-rtl headerfooter-menu3 " lang="en">
It's weird that whatever webserver in the site you're attacking isn't using the application/octet-stream content-type, but it exists so it's definitely an edge case that has to be handled. As a quick and dirty thing you could check for the existence of "<html", but even then that tag isn't necessarily required. I think maybe some sort of HEAD file validation is in order?

That's also my conclusion. We would need a reference syntax checker. or we could just skip the verification on that file and fail later when we parse objects file (which need to be compressed with zlib, so that rules out html).

Not every site has a  tag verbatim. Many have attributes inside the tag, e.g.:

You can solve this with regex, Pattern: \<html(|.*)\>

If you gonna accept the RE solution, I can do the fixes on PR if you would like.

You can solve this with regex, Pattern: \<html(|.*)\>

https://stackoverflow.com/a/1732454
(In all seriousness, running a regex that matches that much could cause serious slowdowns on pages that can easily reach the hundreds of KB or even MB. You would also be able to send git-dumper back a very large page and make it hang as well. It's in general just a very hacky solution.)

You seems to be right, but I guess in this case we don't really need that HTML content-type validation if we already know that it contains a content from the GIT folder. for example checking a string on /.git/config will be more than fine to keep fetching other stuff without caring about content-type.


feat(identity): move getSecondaryKeys from CurrentIdentity to Identity

:tada: This PR is included in version 6.0.0-beta.18 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 7.0.0-alpha.5 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 7.0.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 7.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update to 1.18.2?

As 1.18.2 made a lot of changes, this means that the 1.18.0 and 1.18.1 versions of Sapience will not function in 1.18.2. Will you be pushing forward an update for this version at some point? I don't mean to pressure you in any way, I just want to know whether you're still developing?

Publishing the port as I write this.


ideas

Feel free to post ideas. (I don't know if i do)

git source.

git source.

hmm interesting

I don't know that is this source if teally useful.
But maybe all branch name or log (with docemtation)

project files source. (provodes all relative file paths)

register or yank history source

project files source. (provodes all relative file paths)

Maybe there should be an option for path source to include files from the current git repo?

The necosyntax is really cool, but it has a dependency and I noticed that it slows down vim startup time. Maybe rewriting it to lua and somehow doing it asynchronously would help? I'll try to look into that when I have some free time.

register or yank history source

Getting yanks from miniyank perhaps?

How about lbdb source to complete email addresses from address book while composing emails?

The necosyntax is really cool, but it has a dependency and I noticed that it slows down vim startup time. Maybe rewriting it to lua and somehow doing it asynchronously would help? I'll try to look into that when I have some free time.

Nope, I got it wrong, just checked it again and it works just fine. Sorry.

@hrsh7th I know that you've said you don't like completions from other buffers, but some people like to have that so maybe it makes sense to provide that?

I don't want to provide settings as much as possible.
In my random thoughts, we provide specific prefix
for triggering some source.
For example,

!/ -> project files
@. -> yank-history

But I don't know if these useful 😅

Probably, we shoyld design source option interface.

I don't know if it would be actually useful for anyone, but what about compe#completion() optionally taking in source as argument?
You could for example create mappings like builtin <C-X><C-F>:
inoremap <silent><expr> <C-X><C-F> compe#complete('path')

It' good idea.
I will consider it.

git source.

What is git source, and is it something like https://github.com/zk-phi/git-complete?
I don't use emacs, so I don't know what it's like, but it would be great if it could!

git source.

What is git source, and is it something like https://github.com/zk-phi/git-complete?
I don't use emacs, so I don't know what it's like, but it would be great if it could!

oh wow :heart_eyes:

git source.

What is git source, and is it something like https://github.com/zk-phi/git-complete?
I don't use emacs, so I don't know what it's like, but it would be great if it could!

This is really cool and deserves a vim port in its own right, but is nvim-compe a right plugin for this? From the README it seems that you have to first write a "query" and only then you call the completion to do the grep through your project and find common patterns. This could be as well implemented as a command like :GitComplete {pattern}. Auto-completion plugins like nvim-compe on the other hand suggest you completions on the fly, as you type.

Treesitter source
Configuration for sources depending on cursor position. Like completion-nvim which allows to, for example, limit sources for comments.

Not sure if that would come with performance hit.

Configuration for sources depending on cursor position. Like completion-nvim which allows to, for example, limit sources for comments.

I didn't know that completion-nvim can do that, but it probably can be solved by doing a regex match on the current line.

Treesitter source
Configuration for sources depending on cursor position. Like completion-nvim which allows to, for example, limit sources for comments.

Not sure if that would come with performance hit.

I've made treesitter source but it's a bit clunky, I'll try to come back to that and see if I can improve it.

vim-lsc source, similar to the existing vim-lsp source.
Why? Because Neovim's current implementation of allow_incremental_sync does not work for dot-completion via the Solargraph Ruby language server. As explained here Neovim LSP is sending full lines for didChange whilst vim-lsc is sending minimal insert text didChange. Basically vim-lsc has working Ruby dot-completions and Neovim LSP currently does not.
So I wish to use vim-lsc as a source for nvim-compe but just for the Ruby language whilst using Neovim LSP for JavaScript and Dart, for example, something like:
local compe = require'compe'

compe.setup {
  enabled = true,
  min_length = 2,
  preselect = 'disable',

  source = {
    buffer = {
      filetypes = {'dart', 'javascript', 'json', 'ruby'}
    },
    nvim_lsp = {
      filetypes = {'dart', 'javascript'}
    },
    vim_lsc = {
      filetypes = {'ruby'}
    },
    vsnip = {
      filetypes = {'dart', 'javascript', 'ruby'}
    }
  }
}

The vim-lsc source is easy and reasonable. (but it might not be perfect if it has a capabilities problem)
I will add it.

Other sources need more consideration for detailed design and experience.

The vim-lsc source is easy and reasonable.

Fantastic. Many thanks, it will solve a real problem for me.

@bluz71 I've added vim-lsc source. if you met problem, please create PR.

@hrsh7th,
I have tested the vim-lsc integration and it appears to work well. I am very happy about that.
The cool thing is I can now use different LSP engines for different filetypes. This is my setup for those interested:
local compe = require'compe'

compe.setup {
  enabled = true,
  min_length = 2,
  preselect = 'disable',

  source = {
    buffer = {
      filetypes = {'eruby', 'dart', 'html', 'javascript', 'json', 'ruby'}
    },
    nvim_lsp = {
      filetypes = {'dart', 'eruby', 'html', 'javascript'}
    },
    vim_lsc = {
      filetypes = {'ruby'}
    },
    vsnip = {
      filetypes = {'dart', 'html', 'javascript', 'markdown', 'ruby'}
    }
  }
}

Many thanks.

@cloggier you could try treesitter source on my fork. https://github.com/elianiva/nvim-compe/tree/feat/treesitter_source
I ported nvim-treesitter/completion-treesitter so the implementation is pretty much the same with some little changes here and there. I can't fully confirm if the behaviour is the same though since I never tried treesitter source for completion.nvim

I'm thinking about any possibily to "limit" or "switch" sources.
Example:
Let's say I have these sources:

nvim-lsp
vim-snip

I write "for".
lsp gives me TONS of suggestions for sentence 'for' because yes (for, fork, format, etc... almost 50 in my case) and only one for snippets (because I have a "for" snippet)
I need to scroll ALL the lsp suggestions before eventually and finally finding my snippets.
Maybe could be a good idea to "limit suggestions" from each source? Or maybe possibility to switch between sources with a shortcut?

Good concern.
Agree with you but I want ideal design for it.
For example, I have many patterns to solve it.

Add mapping to confirm

inoremap <expr><CR> compe#confirm()
inoremap <expr><S-CR> compe#confirm('vsnip')

Add mapping to complete

inoremap <expr><C-Space> compe#complete()
inoremap <expr><C-s> compe#complete('vsnip')

Add mapping to <C-n>
inoremap <expr><C-j> compe#next_source()

What would this do? Confirm with first snip found?
If I have 50 items from a LSP source, I don't even see the vsnip suggestion so I don't know what I am confirming

I don't like this one, if I have 4 sources I can't have 4 mappings for that, could be a bit cumbersome.

IMHO, this is the way, also dividing in "groups" could lead to performance benefits (querying one source at a time)

One option would be to implement chain completion, like completion.nvim and lifepillar/vim-mucomplete. I was never big fan of those so would really dislike it becoming the only option for compe, but as an configurable option it could be a solution to @lucax88x's problem.

What would this do? Confirm with first snip found?
If I have 50 items from a LSP source, I don't even see the vsnip suggestion so I don't know what I am confirming
I don't like this one, if I have 4 sources I can't have 4 mappings for that, could be a bit cumbersome.
IMHO, this is the way, also dividing in "groups" could lead to performance benefits (querying one source at a time)

I agree with the third option, I don't always want all sources to be there so it would be nice to be able to toggle between them.

@cloggier I have the same opinion. I don't like chain completion.
I will create PR to show next_source mapping as a proof of concepts.

by the way, @cloggier are you satisfied with the treesitter source? If we do want nvim-compe to support treesitter source and you like that implementation, I'll submit a PR.

@elianiva Frankly I never used TS completion before so not sure if I can reliably test. Maybe just submit a PR and someone with more TS knowledge can pick it up?

I have another idea to choose a specific source item.
If we provide sticky_char option to source's metadata and set vsnip = { sticky_char = 0 }, we can choose vsnip item for0

that's also good IMO, so we don't have to cycle every single one of the available sources

If by sticky you mean "confirming the next source item" I still see the same issue I mentioned before
If I have 50 items from a LSP source, I don't even see the vsnip suggestion so I don't know what I am confirming

No. sticky_char can use filter. If you type for0 with the above settings, compe will suggest vsnip source (maybe) only.

Ok, Yeah, I like that!
Could we possibly have problems that maybe someone really wants to write for0?
maybe better... use C-0?

If the buffer has item0, item2, item3 as contents, this solution may not work as expected.
But I don't think there is such a problem in real-world because the completion-menu will be enough small if we type 0.
Anyway, it is easy to implement. I try to use it (and will sent PR)

I am not sure I like it. Perhaps some function to filter results which then could be mapped to a key by user?
Something like v:lua.compe.filter{only = {'vsnip'}} for example?

<C-0> needs extra mapping so it will be complex and might buggy.

The sticky_char idea is only modify the item's word like %WORD%_%STICKY_CHAR%.
In compe, we can filter item1 by i1 so it is the same as this.

It's easy...
Uploading Kapture 2021-02-04 at 21.54.15.mp4…

I can try your branch?

I've sent PR.
Please feedback it.

Hi.
Would be extra helpfull to have a TabNine source.
I don't think my Lua-foo is good enough to implement it though....
A good example of a python implementation is tbodt/deoplete-tabnine
On a side note, is there any documentation on the execution model of lua extentions inside neovim? and inside nvim-compe?

sources

git-grep
project-files
yank-history
lbdb?
treesitter #133
tabnine

features

source params interface
invoke specific source completion
source configurations(syntax/ignored_syntaxes)
to select specific item easily

sources

git-grep

project-files

yank-history

lbdb?

treesitter #133

tabnine

features

source params interface

invoke specific source completion

source configurations(syntax/ignored_syntaxes)

to select specific item easily

@hrsh7th 😍😍😍😍 You are the best
commandline completion, is it possible to todo so ?

I don't know how to customize cmdline completion in Lua/Vim script.
You can use cmdline-window (default mapping is q:)

Oh great suggestion

Also fzf.vim comes with :Commands.

:help getcompletion()?

commandline completion, is it possible to todo so ?

Command line completion as in, compe in cmdline or cmdline source? I think what you meant is the latter but I don't want to make assumption :laughing:
If it is, then something simple like getcompletion('he', 'command') and feed the result to nvim-compe should be enough.

commandline completion, is it possible to todo so ?

Also fzf.vim comes with :Commands.

If it is, then something simple like getcompletion('he', 'command') and feed the result to nvim-compe should be enough.

Maybe just a vimscript source based on getcompletion()? But it would make more sense to do it in a separate repo for now.

It would be really cool if we could create a language server based on nvim --headless by somehow sandboxing it or revoking any write permissions so it won't screw up anything on your system and just letting it evaluate everything. (Neo)vim provides some functionality that kinda allows to do that, like the already mentioned getcompletion(), but also nvim_parse_expression(), :verbose, etc.

What about adding icons to each completion entry, just like: https://github.com/onsails/lspkind-nvim does...

@bresilla You can set it up yourself.
local protocol = require("vim.lsp.protocol")

protocol.CompletionItemKind = {…}

Good place for is your custom on_attach function if you have one.

@bresilla You can set it up yourself.
local protocol = require("vim.lsp.protocol")

protocol.CompletionItemKind = {…}

Good place for is your custom on_attach function if you have one.

Thanks @cloggier , i am already using it, but that's just for LSP sources. I was thining more in lines with adding icons to each source, like TabNine, or other sources that nvim-compe can serve...
Correct me if i am wrong, but you can't do that with require("vim.lsp.protocol")??

You can configure each source and set what gets displayed as label by using menu key. Is that what you are after?

You can configure each source and set what gets displayed as label by using menu key. Is that what you are after?

Yesss, that's exactly what i am after. And i don't know how to do that actually. I don't know how to use 'menu'. Would you be so kind and just tell me one example e.g. how to put a symbol in front of TabNine [TN] sources, then i do the rest. Thanks in advance.

@bresilla sure, from memory: where you specify your sources and have tabnine = true change it to something like tabnine = {menu = 'my custom label'}.

You can use { kind = 'you want' } like the above example.

What I am currently missing from other completion plugins:

Showing function signature when typing arguments. For example: type print, accept suggestion from LSP, type (. It is super convenient to have a popup window showing possible arguments of print. Even better If currently typed argument gets some sort of highlighting in this popup.
"Opened buffers" source. Having current buffer source is great, but having completion from all opened buffers is even better.

signature help is out of scope. it should be implemented as separate plugin by someone.
buffers source is discussing in #147

Thank you for your response.
About signature help: I thought that utilizing vim.lsp.buf.signature_help() was reasonable and feasible in compe. If it is out of scope, then no further questions :)

sources

git-grep
project-files
yank-history
lbdb?
~treesitter~ #133
tabnine

features

source params interface
invoke specific source completion
source configurations(syntax/ignored_syntaxes)
to select specific item easily

@hrsh7th heart_eyesheart_eyesheart_eyesheart_eyes You are the best
commandline completion, is it possible to todo so ?

If you are interested in writing a frontend-agnostic command completion server, check out shellac. Command arguments are often more complex than simple regex. This would require defining (relative simple) grammars for every CLI tool.

I'm thinking about any possibily to "limit" or "switch" sources.
Example:
Let's say I have these sources:
* nvim-lsp

* vim-snip

I write "for".
lsp gives me TONS of suggestions for sentence 'for' because yes (for, fork, format, etc... almost 50 in my case) and only one for snippets (because I have a "for" snippet)
I need to scroll ALL the lsp suggestions before eventually and finally finding my snippets.

This will only work with a huge numbered pop-up window or will be very annoying. The short suggestions should be listed first though. Dynamic switching will be annoying to maintain, unless it is a filter.

:D imagine spell source act like google gmail, suggestion the next word to use :laughing:

https://github.com/high-moctane/nextword

https://github.com/high-moctane/nextword

A better solution would be for someone to build an open source clone of TabNine.
You can then have it learn both programming languages and prose.

@hrsh7th is it any way to launch compre in ordinary vim, not neovim?

Compe is a Lua plugin that uses Neovim API.
I highly doubt compe will ever be compatible with Vim. Better that it be a great Neovim plugin that makes use of the awesome Lua JIT runtime that ships with Neovim.
Just switch over to Neovim, it is not that hard and you get access to awesome technology such as compe, Treesitter and native LSP.

https://github.com/hrsh7th/nvim-compe/issues/1

There already plenty of Vim-compatible completion managers:

deoplete

ncm2

asyncomplete.vim

completor.vim

The cool thing about nvim-compe is that hrsh7th can use all the capabilities of Neovim + API and Lua + JIT. No dumbing down for lowest common denominator.
One of the reasons that nvim-compe is as good as it is is due to the focus on Neovim 0.5. Aim for one platform and do it really well.
Well done hrsh7th and team. This is one of the very best Neovim plugins for sure.

Auto select the first completion entry?

@thallium that's what preselect does. Set it to always if you want that behaviour.

@thallium that's what preselect does. Set it to always if you want that behaviour.

Thank you. Didn't realize this : )

Can we add a limit to the number of candidates? Sometimes there are dozens candidates and it undermine the speed.

When I restrict the max_abbr_width to a small value, the signature showed by echodoc.vim plugin will also be truncated.
So when I want to show the complete signature, I need to make max_abbr_width to a large value.

Show signature function while filling the parameters, like nvim-completion. I had to use nvim-completion in unknown codebases. I didn't find any plugin to do that. =/

@lourenci @hrsh7th has already stated that this is out of scope for compe. You can use ray-x/lsp_signature.nvim to display signature.

@lourenci It doesn't work for me neither. It works on my machine with minimal config though. If you will still have a problem let's discuss it over there, maybe we can figure out why it doesn't work.

@lourenci  Just tried it, worked for me tho.

@cloggier @thallium no way to get that plugin working. I've just tried... =/
It'd be so beautiful if @hrsh7th would implement here, like vim-lsp and nvim-completion. 😄

I haven't seen it here, but emmet completion would be nice !

@LoricAndre https://github.com/hrsh7th/nvim-compe/issues/190

Thank you !

a source like the 'user' source using completefunc in completion-nvim https://github.com/nvim-lua/completion-nvim/blob/master/doc/completion-nvim.txt#L259

I think it would be very cool if, when inserting a suggestion, compe would take into account existing characters in the buffer. Here's what I mean by that:
Imagine you have the following text:
my_cool_variable
and you want to change it to match the previously used:
my_awesome_variable
As you remove cool and start typing aw, compe will (correctly) suggest my_awesome_variable.
The problem is, if you select this, the text in the buffer will be:
my_awesome_variable_variable because the existing _variable text was never removed, and not incorporated into the completion.

Compare this to how Deoplete handles the same situation:

I think it would be very cool if, when inserting a suggestion, compe would take into account existing characters in the buffer. Here's what I mean by that:
Imagine you have the following text:
my_cool_variable
and you want to change it to match the previously used:
my_awesome_variable
As you remove cool and start typing aw, compe will (correctly) suggest my_awesome_variable.
The problem is, if you select this, the text in the buffer will be:
my_awesome_variable_variable because the existing _variable text was never removed, and not incorporated into the completion.

Compare this to how Deoplete handles the same situation:

This is exatly what was requested in #157
@hrsh7th is currently working on it.

source representation customization, I mean something like galaxy do with vim modes

@lbiaggi you can change menu option for each source. Is that what you mean? Changing [LSP], [Buffer] etc. in completion menu?

@lbiaggi you can change menu option for each source. Is that what you mean? Changing [LSP], [Buffer] etc. in completion menu?

Yup

Try this
source = {
    buffer = {
        menu = "[FOO]"
    }
}

Ok, I tried
with
let g:compe.source.buffer = v:true
let g:compe.source.buffer.menu = "[B]"

and did not worked.
I will try configuring using lua, thanks!

let g:compe.source.buffer = {}
let g:compe.source.buffer.menu = "[B]"

let g:compe.source.buffer = {}
let g:compe.source.buffer.menu = "[B]"

Ops, thanks! I though v:true was necessary... my bad

Adding an option max_items_visible that restricts max number of items that could be visible in autosuggest but keeping the ability to navigate through the clipped/hidden items using compe#scroll.

@lrvpxl use pumheight.

How about more Math functions for calc completion.
Like:

Trigonometry
Constants like PI, E
Nth Root
Equations

Lua has a math module. We can easily add math.* for calc completions.

Complete regular expression? It's a random idea. I don't know how to do it and what it should be.

Command line completion
Command line completion based on current buffer when searching words:

:%s/somethingToComplete//g
/somethingToComplete
?somethingToComplete

There are plugins like vim-sherlock and gelguy/wilder.nvim these try to do some of the features but they have a lot of bugs and they're not that good

After using the plugin for a while my two requests would be:

Delay before autocomplete option - it gets a bit distracting when its coming up as I type, maybe having a little delay (e.g. only show menu after 100ms of pause) would be nice. I imagine it would be lighter on the cpu as well
Command line completion - I'm terrible and remembering commands, it might be  a bit difficult but it would be awesome if possible

Lazy loading and better startup times would also be nice but the plugin is quite fast already, keep up the good work!

@shaunsingh Delay without explicit option looks like a broken language server. Also delay messes with the internal state of nvim-compe (what data should be kept and which dropped). Last, but not least, it is very much unclear at what timepoint nvim-compe should ask the lsp for answers.
Why does keypress for completion not work for you?
Take note that many lsps are often much slower than typing speed (~5ms per word or 1ms per character), because they work on AST data which are not cache-efficient due to necessary location lookups and missing lsp compiler infrastructure (location information need to be separately resolved).

Command line completion

CLI completion requires shell CLI support, which in turn is poorly implemented with scripts for most (POSIX) shells.
If you want to make it properly consider porting shellac to C. CLI arguments form a (relative simple) grammar on itself.

Thank you for the quick reply. I think the correct term I meant to say was "command-mode completion, the one you enter after hitting the colon key. Sorry about the confusion.

I don't know if this is nvim-compe job but auto add "use ***" statements in php files is the only reason I still use Coc for the moment, I tried compe while moving to (almost) full lua config and really loved it but this really miss me :/
The day I leave Coc and fully embrace compe will be so good to me ^^

compe can do that already -- the hardwork is handled by the language server like intelephense or phpactor and compe just displays the autocomplete

compe can do that already -- the hardwork is handled by the language server like intelephense or phpactor and compe just displays the autocomplete

Thanks for the reply !
I don't know exactly what Intelephense does but use statements are only added when I use Coc, not with compe :/ . But if this is not a compe related problem (I assume Intelephense does the job but maybe I'm wrong...) I'll investigate a bit more.
Thanks for all the amazing job :)

Dictionary source would be nice (I'm aware of spell source, but it's something different, I mean completion one can invoke with C-X C-K). Deoplete has one, and there was some discussion on reddit on the subject. I will try to write this source at the weekend.

Dictionary source would be nice
Is something like this a good fit? https://github.com/Gavinok/compe-look

Yes, thank you! I tried to write something on my own (not using look, but instead loading whole file into memory), but after few seconds it triggered error https://github.com/neovim/neovim/issues/11867, so it wasn't usable at all. Also reading file for the first time with io module blocked editor, even though I deferred it to Source:complete method.
Your source works perfect and is very smooth, albeit look doesn't return all results when prefix is only few letters long. It's not much of issue in practice, though.

is it possible to add a border to the completion menu Pmenu

Not sure if it currently possible, as I couldn't find anything, but would really like to limit the number of candidates compe shows. Sometimes my floating menu covers the whole height of my screen which can be distracting.

You can use set pumheight=15

Some ideas
Sources:

Abbreviations (:h Abbreviations)
Digraphs (:h Digraphs)
Quickfix/Location-list entries?
Emoticons (similar to emojis, e.g. typing ;shr should suggest ;shrug; and expand to ¯\_(ツ)_/¯. Of course ";" can be any other character)

Zsh-like completion (probably not useful at all):

I think it would be very cool if, when inserting a suggestion, compe would take into account existing characters in the buffer. Here's what I mean by that:
Imagine you have the following text:
my_cool_variable
and you want to change it to match the previously used:
my_awesome_variable
As you remove cool and start typing aw, compe will (correctly) suggest my_awesome_variable.
The problem is, if you select this, the text in the buffer will be:
my_awesome_variable_variable because the existing _variable text was never removed, and not incorporated into the completion.

Compare this to how Deoplete handles the same situation:

I would be great!

I know having a maximum number a candidates is already mentioned. What I think to be better is being able to have a maximum candidates per sources.
For example, 10 candidates for nvim-lsp, 5 for buffer, etc.

@n3wborn It's easy but it doesn't improve performance because limitting items after sort.

IDK if this is already implemented or not. But I would love to have completions for git contributors/authors name. This can be useful when assigning TODO or FIXME.
This could be included in the git source.

I'd like to have the ability to insert all the text that's the same between all the completion options, a bit like how completion works in zsh, where the first time you press tab it completes everything that's the same and the next time it gives a list of options.
Even better would be if compe could have similar subsections of all the completion options as completion options, so for example if I have a set of functions that begin with prog_namespace1 and another set that begin with prog_namespace2 then after I type prog_ the first 2 completion options would be prog_namespace1 and prog_namespace2 followed by all the functions from those 2 namespaces (assuming all the functions that begin with prog_ are either in namespace 1 or  2).


Revert "HOSTEDCP-1062: Add management cluster KAS network policy"

Reverts openshift/hypershift#2717
Took out upgrade test blocking 4.14 ci release stream
https://prow.ci.openshift.org/view/gs/origin-ci-test/logs/periodic-ci-openshift-hypershift-release-4.14-periodics-e2e-aws-ovn/1678714516008865792

/lgtm

release controller break SOP
/override ci/prow/e2e-aws
/override ci/prow/e2e-kubevirt-aws-ovn


add c3s-cordex catalog

@agstephens Please merge. @ellesmith88 was using the patched CORDEX list #22 to generate this catalog.


setOption({},true)重绘失效

Version
4.5.0-rc.2
Steps to reproduce
this.myCharts1 = echarts.init(this.$refs.myechart1);
this.myCharts2 = echarts.init(this.$refs.myechart2);
this.leftEchart.series.data = [];
this.leftEchart.data = [];
this.leftEchart.graphic[0].text = "总时长\r\n1";
this.myCharts1.setOption(this.leftEchart,true);
this.myCharts2.setOption(this.rightEchart,true);
What is expected?
在对数据修改之后，使用setOption可以重绘
What is actually happening?
没有重绘，数据在原图上没有改变

Yes, I have met the same problem with stack bar, when I reset the series data with empty, the stack bar still show the previous data on the chart instead of empty chart, from the chart animation, I think it redrew but seems used the old data not the new series. I didn't see the same problem on the line and normal bar charts.


New Federation Attriubute - dsdStudentID

Please add the dsdStudentId - oid:<IP_ADDRESS>.4.1.27691.1.1 attribute to the Attriubte Validator in the optional section.
Attriubte Description: "Student Id used to map a logged in student to their ID in the Universities Student System. This is specificly for the Digitary Service."

Hi Ryan,
As discussed in the morning ,  please add dsdStudentId attribute in the test and production Validator. Thanks.

FYI, this still needs to roll through to prod and have the database updated to know about the attribute.

@abrahad, this is working in the test federation.  Can you please confirm this with somebody who has this attribute.


Fix soap XML namespace - change from soap to SOAP-ENV

I'll preface this by saying I don't know much about SOAP but this is what I had to do to get this library working for me. I was taking the headers generated by node-soap and pasting them in an XML validator, they weren't valid. I changed the namespace from soap to SOAP-ENV based on an example. That validated and fixed my issues.
I've updated the tests, however 3 fail despite the actual and expected looking identical to me. If you're interested in this PR, I can put more effort into fixing those tests.

Hi @marcus,
Actually soap and SOAP-ENV are arbitrary namespace prefixes. As long as they point to the same namespace, i.e. http://schemas.xmlsoap.org/soap/envelope/, the prefix in the request and the WSDL do not need to match. One can use 'soap' and another 'SOAP-ENV'. Here's a useful resource: http://docs.oracle.com/cd/E19717-01/819-7757/aeqfk/index.html
Without more details it's difficult to say what the cause of the issue you ran into might have been, but the library should work with anybody's SOAP requests without the changes in this PR. If you have questions feel free to post an issue and tag me and I'll see if I can help.

As @robertjneal explained, it shouldn't matter if the namespace is called soap, SOAP-ENV or whatever. Please open an issue describing your problem first as this is a rather HUGE PR and I don't think that this change will make it into node-soap as long as we don't have more information/issues/bug reports on this.
So, please, raise an issue (if you haven't already) for your particular problem and see if it could also be fixed without this huge renaming PR :+1:


Investigate seeding data stores

It would be really cool if we could pre-seed data stores with test data post-deploy.

It seems there are some usable (though totally undocumented for obvious reasons) endpoints we could use for this under the https://gamepersistence.roblox.com domain


libgit versioning

Hello,
Is there a reason that this is still pinned to a pre-1.0 version of libgit? If not, is there any opposition to updating it? I think I may be hitting some little bugs with the underlying library while trying to add push support.
Thanks!

This project hasn't been very actively developed. I think someone just needs to do the work. I'm not able to contribute right now, but I'm happy to add people as contributors.

I am glad to start taking a stab at adding blocks of functionality. I'd rather maintain the core version that split off entirely.


gym 0.21.0安装错误

(StreetFighterAI) C:\Users\gideo\OneDrive\allen\RLHF\street-fighter-ai\main>python --version
Python 3.8.10
(StreetFighterAI) street-fighter-ai\main>pip install stable-baselines3==1.7.0
Collecting stable-baselines3==1.7.0
Downloading stable_baselines3-1.7.0-py3-none-any.whl.metadata (4.5 kB)
Collecting gym==0.21 (from stable-baselines3==1.7.0)
Using cached gym-0.21.0.tar.gz (1.5 MB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [3 lines of output]
C:\Users\gideo.conda\envs\StreetFighterAI\lib\site-packages\setuptools_distutils\dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
warnings.warn(msg)
error in gym setup command: 'extras_require' must be a dictionary whose values are strings or lists of strings containing valid project/version requirement specifiers.
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

执行下述变更之后可以成功：
pip install setuptools==65.5.0 pip==21
pip install wheel==0.38.0


Add option to save processed files in local public folder

I add an option Refile.public_path so everybody who is not gang ho about CDN can preserve processed files in public folder.
With this change refile would not process the same files over and over with each page reloading.
If you will not set this option than all should work like before.

Even if you wanted to do this conceptually, this is absolutely not the right approach. Adding this in the application is completely wrong. You should specify this in the backend. In fact, it should be as easy as setting up a file storage backend with a root directory which is in your public path.
That being said, it's not a strategy I would recommend. At least you should set up something to distribute the files among app servers, otherwise you have effectively locked yourself to never scaling horizontically, which is bad, imo.

I am closing this PR. Thank you for your effort, but this is just not a good fit to our goals.

@jnicklas, Refile is best, and thank you for such detailed explanation of your point.
Visiting the same image-heavy pages on localhost makes me and my PC suffer. So I monkey-patched refile to preserve processed files if public folder. No more suffer. Recently I have known that my friend have the same issue. So I decided to make pull request to show how I solve it.
Hope this helps to somebody else.
PS: File system backend is responsive for saving original files only, not processed. So it can't help.