Correction for raw affiliation Western University, Faculty of Health Sciences, London, ON, CA

Correction needed for raw affiliation Western University, Faculty of Health Sciences, London, ON, CA
raw_affiliation_name: Western University, Faculty of Health Sciences, London, ON, CA
new_rors: 02grkyz14
previous_rors: 05167c961
works_examples: W4367173349;W4385337281
contact: 360b37315a9fab89bb0c2d191eb7af3d:3750bc9b7e298cbf @ uwo.ca

This issue was accepted and ingested by the OpenAlex team on 2024-12-19. The new affiliations should be visible within the next 7 days.


Update Base.scss

Summary
This will fix #861   It will set the default of body height to be 100% rather than auto.

After talking with @bjankord, we decided this didn't warrant functional verification.


luci add pptp interface mtu option missing

I cannot find any web ui for option mtu while adding pptp interface

I notice that, in file: protocols/luci-proto-ppp/htdocs/luci-static/resources/protocol/pptp.js
                o = s.taboption('advanced', form.Value, 'mtu', _('Override MTU'));
                o.placeholder = dev ? (dev.getMTU() || '1500') : '1500';
                o.datatype    = 'max(9200)';

there is code for mtu option, but somehow missing in web ui, why?

I can confirm this. If I use a name other than mtu, then the option appears.
I'll have to take a closer look to see if this is related to the default options for all protocols.

the same situation is when add interface with proto ppp

it seems mtu option is place on physical tab, but no physical tab for ppp/pptp

"Override MTU" should be present in the Advanced tab. I did quick test using 21.02-rc2:

Please provide screenshot from you interface

in the current version, it is fixed.


feat: create pipelines - use multi-tag selector for gitlab projects and jira boards | 987

Config-UI / Pipelines / Create Pipeline

[x] Create Pipeline - Add Multiple ID Support

[x] Support multiple GitLab Project IDs
[x] Support multiple JIRA Board IDs

[x] Update Pipeline Validator Rules (@/hooks/usePipelineValidation)
[x] Update Validation Messaging and Alerts
[x] Update Restart Action
[x] Test Create Pipeline Flow

Description
This PR adds multi-tag selector support on the Create Pipeline form that allows users to enter one or more GitLab Projects and JIRA Boards. All Tasks will belong to the default stage, Stage One.
Does this close any open issues?
#987
Current Behavior
Users can only enter ONE (1) Gitlab Project ID or JIRA Board ID when Creating a Pipeline.
New Behavior
Users can now enter many Project IDs and Board IDs for Gitlab and JIRA.
Screenshots

@kevin-kline Thanks for review & merge. We just added the addOnBlur property feature to the Tag selectors for these IDs. If user forgets to press Enter key, it will automatically add the entry when focus is lost from the element (onBlur)

@kevin-kline Thanks for review & merge. We just added the addOnBlur property feature to the Tag selectors for these IDs. If user forgets to press Enter key, it will automatically add the entry when focus is lost from the element (onBlur)

I missed that. Tested and verified. 👍


Test validation for wildcard match in middle of path

Commit Message:
Test validation for wildcard match in middle of path
Additional Description:
Pattern matching does not support wildcard matching in the middle of a path. This test checks that it is not allowed in config.


Added a event listener when keydown is Enter

Now the captcha be submitted even when the enter key is clicked.
kindly go through the changes and merge it if everything looks fine.

Kudos!
Keep contributing!!


🐛Bug: radio group accessible label has problems

Describe the bug
Aria-label used in a wrong manner in radio group
Expected behavior
A screen reader will recognize the "View density" radio group and recognize the underlying fields
Additional context
I believe the code as it is on https://www.melt-ui.com/docs/builders/radio-group will cause a screen reader to read the whole section as "Screen density" and make the underlying radio buttons unreachable. I.e. it collapses the whole section to just be the words "screen density".
For more info see
https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-label
Specifically
Not all elements can be given an accessible name. Neither aria-label nor aria-labelledby should be used with non-interactive elements or inline structural role such as with code, term, or emphasis nor roles whose semantics will not be mapped to the accessibility API, including presentation, none, and hidden. The aria-label attribute is intended for interactive elements only.
I can add a test video when I am on desktop

Nevermind, I don't think it's a problem because there is the associated aria-role of radio group.


[Slider] Export components from lab and renamed to fit file names

[ ] I have followed (at least) the PR section of the contributing guide.

OT, bit: Gotta love Crowdin 🙂
https://github.com/mui-org/material-ui/pull/22652/commits/2e1c2f6ad3ab745feb9e2fcadd584f5b17521d25#diff-5cb46c103fcf3bdf39819e4ffa3682b1


No battery state anymore after recent update

After recent update to V3.13.0 battery charge is not shown anymore.
Error:
This entity is no longer provided by the tesla_custom integration. If the entity is no longer used, delete it in the settings.
Version of the custom_component
V3.13.0
HACS 1.32.1
Home Assistant 2023.6.2

Dup


Update continuous-delivery-faqs.md

Added 30 FAQs for CDS
Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the CODEOWNERS.
What Type of PR is This?

[ x] Issue
[ x] Feature
[ x] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65ba58e6088606e0be82ed13--harness-developer.netlify.app


unit test with github actions

this PR will enable the execution of unit tests with github actions

We can use the following command for this.


Add functionality to display the description of the component parameters

Description
Hello!
I work for The Virtual Brain project and we are building an extension for Xircuits. In this PR we have added info buttons for the component parameters and would like to ask you whether you would find it useful to merge this into your original code.
This doesn't add any new dependencies.
The outcome can be seen in the screenshot below.

Pull Request Type

[x] Xircuits Core (Jupyterlab Related changes)
[x] Xircuits Canvas (Custom RD Related changes)
[ ] Xircuits Component Library
[ ] Xircuits Project Template
[ ] Testing Automation
[ ] Documentation
[ ] Others (Please Specify)

Type of Change

[x] New feature (non-breaking change which adds functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Tests
I created a json file specific for the KerasTransferLearningModel component which is present in this PR. It contains the descriptions for each parameter.  If there is no description we do not show the info button next to the parameter.
You can test this functionality by dragging the KerasTransferLearningModel component into the Xircuits diagram and pressing any of the info buttons near the component parameters.
Tested on?

[x] Windows
[ ] Linux Ubuntu
[ ] Centos
[x] Mac
[ ] Others  (State here -> xxx )

Hey, thanks for the PR! Looks like a really neat feature, hope to get integrated in soon.
Just wanted to give you guys a heads-up that the review will take some time, first we need to get https://github.com/XpressAI/xircuits/pull/193 merged first, then this one. It'll likely introduce conflicts since it's a big change, but we'll do our best to help.


Using PR coverage together with human readable cobertura coverage on the build report

Is it possible to use this together with the human-readable coverage report on the build page? This requires trx/VsTest coverage format, that requires JaCoCo/Cobertura. Is there a way to create and publish both?
I am thinking of something along the lines of a yaml build step that would include something like both
--collect:"XPlat Code Coverage" and --collect:"Code Coverage", but I am afraid that I'd not be able to supply the required format parameters.
Can I configure this from a runsettings file? Should something like configuring two data collectors work? Something along the lines of...
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <!-- Configurations for DataCollectors -->
  <DataCollectionRunSettings>
    <DataCollectors>
      <DataCollector friendlyName="XPlat code coverage">
        <Configuration>
          <Format>cobertura</Format>
        </Configuration>
      </DataCollector>
      <DataCollector friendlyName="Code Coverage" />
    </DataCollectors>
  </DataCollectionRunSettings>
</RunSettings>

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

ID: aaa4f4c6-0a42-108e-79dd-5724e1049bd5
Version Independent ID: f4a857d1-78bc-170b-b138-fcf490c85b38
Content: Code coverage for pull requests - Azure Pipelines
Content Source: docs/pipelines/test/codecoverage-for-pullrequests.md
Product: devops
Technology: devops-cicd-test
GitHub Login: @shashban
Microsoft Alias: shashban

@attilabertok Thanks for your question. While we look into changes for this article, you might want to reach out to the dev team.


Knex best practices

Hey friends, we want to add to our "node best practices" repo (link below) a section about data-access practices, will you kindly contribute some ideas based on your vast experience?
For example, the following might be best practices when working with ORMs: (a) Instantiating the ORM object only once per process (b) never do automatic sync in production (c) your ideas?
Thanks for your help!
https://github.com/i0natan/nodebestpractices

I think knex is a bit too low level library for most of the stuff for being used without some ORM on top of it. Anyways this doesn't seem like any real issue. Closing. Hopefully someone takes time to help writing that page.


Restarts ignores val_check_interval

🐛 Bug
With val_check_interval != 1, checkpoints are saved in the middle of the epoch, but that location is not saved in the checkpoint, and after a restart, it always begins from the beginning of the last epoch.
To reproduce:

Run any training with val_check_interval=0.2
Kill training after, say, 40% of an epoch
Restart from the saved checkpoint
You will find that it is starting from 0% of that checkpoint

Solution:

Save and load batch_idx
Save and load the dataloader (or just the sampler). According to this https://discuss.pytorch.org/t/how-to-save-dataloader/62813/4, it is just torch.save(dataloader), but I haven't tried.

saving also batch_idx sounds reasonable for me...
any other suggestions @PyTorchLightning/core-contributors?

This has a potential issue - we won't be able to get the shuffled data in the same order on a second pass. So even if we save the batch index, we still won't be able to do a proper resume. I suppose the best we can do is raise a warning saying that the behaviour may not be repeatable and start from the begininning of the epoch (only way to guarantee that all data is seen at least a certain number of times)  - alternatively, can we guarantee that random dataloader state is restored properly?


Create basic views for relations

At the moment, relations can only be created via the edit view of an entity. This is suboptimal. It would be great if there was a generic view for creating relations (that can then also be included in other views, also in the entity edit view).

this now comes with the new relation implementation


[DefApp] Document how it works

@miniksa and @cinnamon-msft to document how this works.
_Originally posted by @miniksa in https://github.com/microsoft/terminal/pull/7489

Implements the default application behavior and handoff mechanisms between console and terminal. The inbox portion is done already.
Could you hint us about what Windows version will support this feature?

Windows 11? 🤣
I'm kidding, it'll probably be something above build 21336, but that's about as sure as we can be right now. Build numbers can change a lot as a feature makes its way up the source tree. This feature needs a lot more testing still, and we still need to finish the Terminal side of things before it will do anything. I'm sure when it's ready for folks to try out, you'll know 😉

yes Windows 11

he wasn't kidding after all

Quick question, is there a way to set a custom terminal by just setting a path to a binary in HKCU/Console/%%Startup (or somewhere else), or does the terminal emulator have to implement a COM server?
Using just a path would be nice for portable apps (not installed system-wide), and simplify adding support even for installed apps (currently, at least Alacritty seems unlikely to implement support due to the added complexity of a COM server (https://github.com/alacritty/alacritty/issues/6036)).

as a note to self: https://github.com/contour-terminal/contour/issues/605
Off the top of my head, I don't think this'll be trivial to just point at a exe, instead of a COM server. There's a two-step handoff here, the OS conhost -> a Console server, and then that new console server hands off to a Terminal application.
So alacritty would need to handoff to an OpenConsole (via the commandline somehow), and then that openconsole would need to do the handoff to alacritty. I mean, maybe there's a way to pass those args on the commandline instead of via the COM interface:

https://github.com/microsoft/terminal/blob/main/src/host/proxy/IConsoleHandoff.idl
https://github.com/microsoft/terminal/blob/main/src/host/proxy/ITerminalHandoff.idl

er, looking closer at some of those, I feel like, that's maybe less possible

The original mockups for "default terminal" config actually had two parts: "What console handles these requests?" "What terminal does it send them to?" and that's actually still how it works internally.

It'd be nice if we can use the portable Windows Terminal installation as default terminal. I suppose all the necessary components are already there on the disk, but only the "COM registration" part is missing.

It looks like OpenConsoleProxy.dll is required to do marshaling.
If I implement terminal handoff in my app, and register OpenConsoleProxy.dll in HKEY_CLASSES_ROOT, would it conflict with the one in Windows Terminal?

On a Windows 11 computer that does not have any version of Windows Terminal installed, is there a simple way to set the portable version of Windows Terminal as the Default Terminal?

@feeas Yes. By modifying registry manually.

@ysc3839 Can you further explain how to do it? I know that I may need to modify HKEY_CURRENT_USER\Console%%Startup, but the value inside does not point to an exe path.

@feeas
Use this reg file to register COM components:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{2EACA947-7F5F-4CFA-BA87-8F7FBEEFBE69}\LocalServer32]
@="C:\\terminal-1.21.2361.0\\OpenConsole.exe"

[HKEY_CLASSES_ROOT\CLSID\{E12CFF52-A866-4C77-9A90-F570A7AA2C6B}\LocalServer32]
@="C:\\terminal-1.21.2361.0\\WindowsTerminal.exe"

[HKEY_CLASSES_ROOT\CLSID\{3171DE52-6EFA-4AEF-8A9F-D02BD67E7A4F}\InprocServer32]
@="C:\\terminal-1.21.2361.0\\OpenConsoleProxy.dll"

[HKEY_CLASSES_ROOT\Interface\{59D55CCE-FC8A-48B4-ACE8-0A9286C6557F}\ProxyStubClsid32]
@="{3171DE52-6EFA-4AEF-8A9F-D02BD67E7A4F}"

[HKEY_CLASSES_ROOT\Interface\{746E6BC0-AB05-4E38-AB14-71E86763141F}\ProxyStubClsid32]
@="{3171DE52-6EFA-4AEF-8A9F-D02BD67E7A4F}"

[HKEY_CLASSES_ROOT\Interface\{AA6B364F-4A50-4176-9002-0AE755E7B5EF}\ProxyStubClsid32]
@="{3171DE52-6EFA-4AEF-8A9F-D02BD67E7A4F}"

[HKEY_CLASSES_ROOT\Interface\{E686C757-9A35-4A1C-B3CE-0BCC8B5C69F4}\ProxyStubClsid32]
@="{3171DE52-6EFA-4AEF-8A9F-D02BD67E7A4F}"

Note that you need to modify the file location.
Use this to unregister:
Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\CLSID\{2EACA947-7F5F-4CFA-BA87-8F7FBEEFBE69}]

[-HKEY_CLASSES_ROOT\CLSID\{E12CFF52-A866-4C77-9A90-F570A7AA2C6B}]

[-HKEY_CLASSES_ROOT\CLSID\{3171DE52-6EFA-4AEF-8A9F-D02BD67E7A4F}]

[-HKEY_CLASSES_ROOT\Interface\{59D55CCE-FC8A-48B4-ACE8-0A9286C6557F}]

[-HKEY_CLASSES_ROOT\Interface\{746E6BC0-AB05-4E38-AB14-71E86763141F}]

[-HKEY_CLASSES_ROOT\Interface\{AA6B364F-4A50-4176-9002-0AE755E7B5EF}]

[-HKEY_CLASSES_ROOT\Interface\{E686C757-9A35-4A1C-B3CE-0BCC8B5C69F4}]

Use this to set default terminal for current user:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%%Startup]
"DelegationConsole"="{2EACA947-7F5F-4CFA-BA87-8F7FBEEFBE69}"
"DelegationTerminal"="{E12CFF52-A866-4C77-9A90-F570A7AA2C6B}"

@ysc3839 Have you tested this reg file? I tested it on two PCs, but both failed. I can see Windows Command Processor and OpenConsole running in Task Manager, but no WindowsTerminal.exe is started. I can launch WindowsTerminal.exe directly, and I’ve confirmed that my path is correct.

Those registry works for me. More interestingly, when I open a .cmd or .ps1 file, even though Windows Terminal shows up, from the task manager I can see there is still a cmd.exe there. So it seems like there is some proxying happened.
Also, Settings -> System -> For developers -> Terminal doesn't have Windows Terminal as a selectable.

I can see there is still a cmd.exe there

cmd.exe is the Command Prompt. You should only see it when you launch a .cmd file or Windows Command Prompt.
I suspect you are mixing up cmd (the shell) and conhost (the console).
Conhost is usually in charge of the window and the keyboard input. In the "default terminal" case, conhost is still running (there are some annoying reasons for this today) but it hands off to another instance of itself called OpenConsole. OpenConsole talks to Terminal.

I'm sorry I probably misremembered the case before. There is nothing weird about the registry method. Everything works as expected.
Is there any chance we can make it more official than a comment in an issue? I'm sure we can include this in the Scoop manifest and make the portable installation more smooth.

@feeas Version 1.22 uses a new COM interface, I didn't add its interface id to the reg file.
@CrendKing The default terminal selection list requires packaged app (AppX or MSIX).

Do you mean we need a new reg for future versions?

You just need another interface entry,
{6F23DA90-15C5-4203-9DB0-64E73F1B1B00}

Thanks for the info. But this doesn't seem to be very future-proof. How to expect a normal user to find out all these obscure interface IDs, let alone to put them in registry? And one day there might be another new interface.
I feel this should be treated the same level as how portable mode is treated. The latter at least has a dedicated document page section to explain how it works. If a user is able to create a ".portable" file, surely they can run a "register_windows_terminal_as_default.ps1" if it is provided and maintained by the WT team, right?

@CrendKing This is for third-party terminal developers to implement a "register as default terminal" function. It's not for end users.

I'm sorry if I sounded as it is for end user. I was talking about third-party package maintainers.
If I maintain the Scoop Windows Terminal manifest, I'd love to have official information on how to register the installed terminal as default, which is, as you can see, lacking in that manifest. It only contains creating the .portable file.

@DHowett Could you tell me if adding this will make it work in version 1.22? I tried but it didn't work.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Interface\{6F23DA90-15C5-4203-9DB0-64E73F1B1B00}\ProxyStubClsid32]`
@="{3171DE52-6EFA-4AEF-8A9F-D02BD67E7A4F}"

@feeas Currently 1.22 is Preview, its CLSID is different from normal version.


add event imports

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (c92640c) 74.49% compared to head (0cc58fe) 74.49%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #71   +/-   ##
=======================================
  Coverage   74.49%   74.49%
=======================================
  Files          22       22
  Lines         941      941
=======================================
  Hits          701      701
  Misses        240      240

Flag
Coverage Δ

unittests
74.49% <ø> (ø)

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.


report: add bug-specific table

This is to make it easier to traverse bugs in larger experiments

/gcbrun exp -n d-cov-52 -b comparison -ns 4 -rd

https://llm-exp.oss-fuzz.com/Result-reports/ofg-pr/2024-09-27-654-d-cov-52-comparison/index.html

Report is looking good


Parsing integer format with locale

I tried to parse an integer value, that had a comma delimiter, like '1,234' and faced a problem with conversion with locale.
fr.whimtrip.ext.jwhtscrapper.exception.ModelBindingException: Scrap failed with exception Cannot parse field fiveStarsCount.class com.service.parser.pojo.ProductPojo with value 1,626 and locale: us.
	at fr.whimtrip.ext.jwhthtmltopojo.adapter.AbstractHtmlFieldImpl.instanceForNode(AbstractHtmlFieldImpl.java:201) ~[whimtrip-ext-htmltopojo-1.0.2.jar:na]

So, we need to respect locale while conversion number values, because currently  an example like this
@Selector(
            value = ".example ",
            locale = 'US',
            returnDefValueOnThrow = false
    )
    public Integer fiveStarsCount;

can't be correctly casted. To use locale during number conversion we need to  use method like this
Number number = NumberFormat.getIntegerInstance(Locale.US).parse('123,45');
This is default realiztaion of conversion at  castValue in HtmlToPojoUtils

 if (clazz.equals(Integer.class) || clazz.equals(int.class)) {
            if(value.equals(Selector.NO_VALUE))
                return (U) DEFAULT_NOT_FOUND_INTEGER;
            return (U) Integer.valueOf(value);
        }

My question is  - can we solve this problem without using custom deserializer? Because currently this problem is in each of hundreds of Integer fields

Hello!
Sorry for the very late reply, I'm not using this account very often now...
I think the issue is because you should use a Float here because Integer.valueOf("1,65") would fail anyway.
I think I should have added the locale to those numbers parsing as well, unfortunately, I didn't so a the moment, there is no quick fix...
Or probably the solution you highlighted would have been more resilient...


Tap slf4j logs ecr 3139

Overview

See: https://jira.bf.local/browse/ECR-XYZ
Definition of Done

[ ] There are no TODOs left in the code
[ ] Change is covered by automated tests
[ ] The coding guidelines are followed
[ ] Public API has Javadoc
[ ] Method preconditions are checked and documented in the Javadoc of the method
[ ] Changelog is updated if needed (in case of notable or breaking changes)
[ ] The continuous integration build passes

Coverage remained the same at 85.378% when pulling 6a51a75b574af74fa54e36e58307bc159dfffac1 on dmitry-timofeev:tap-slf4j-logs-ECR-3139 into 901b9a4ce1d9a347f69b36dd5fe4b3dd7ff0013d on exonum:master.


Improve note about the Java version within the sandbox setup

Hi there,
currently, compiling and invoking CrateDB through Gradle by using ./gradlew clean app:run does not work on either Java 11 nor Java 16 (see #11102 and https://github.com/crate/crate/issues/11229#issuecomment-819397180). So, it might be a good idea to reflect that within the documentation until the situation changes.
With kind regards,
Andreas.

See my comment here https://github.com/crate/crate/issues/11102#issuecomment-819491940

Thank you. When resolving this for Java 11, the problem will most probably also go away for Java 14. So, I am closing this.


Astable Multivibrator

Hi,
currently i am trying to simulate an astable multivibrator with spciesharp. To get it into one state at the beginning, I used different preconditions.
But in the transient simulation it gets stuck in this state and I get a TimeStepTooSmallException.
I have already tried different initial conditions, component values and model parameters without success.
I am not sure if it is a problem with SpiceSharp or with my circuit.
I hope someone here can help me.
    var bjtModelNPN = new BipolarJunctionTransistorModel("bjtModel");
    bjtModelNPN.SetParameter("npn", true);

    var ckt = new Circuit(
        new VoltageSource("V1", "a", "0", 12),
        new Resistor("R1", "a", "b", 12000),
        new Resistor("R2", "a", "c", 300000),
        new Resistor("R3", "a", "d", 300000),
        new Resistor("R4", "a", "e", 12000),
        new Capacitor("C1", "b", "c", 10e-9),
        new Capacitor("C2", "e", "d", 10e-9),
        new BipolarJunctionTransistor("T1","b","d","0","0",bjtModelNPN.Name),
        new BipolarJunctionTransistor("T2", "e", "c", "0", "0", bjtModelNPN.Name),
        bjtModelNPN
        ) ;

    var trans = new Transient("trans", 0.0001, 0.02);

    trans.TimeParameters.InitialConditions["b"] = 12;
    trans.TimeParameters.InitialConditions["c"] = 0;
    trans.TimeParameters.InitialConditions["d"] = 1;
    trans.TimeParameters.InitialConditions["e"] = 0;

I think it is a model error. I don't think the default BJT was supposed to be used without specifying any parameters.
I plugged this in and the simulation worked fine for me (I took it from Marcin's Spice#.Parser integration tests):
bjtModelNPN.SetParameter("npn", true)
    .SetParameter("bf", 200.0)
    .SetParameter("cjc", 20e-12)
    .SetParameter("cje", 20e-12)
    .SetParameter("is", 1e-16);

Thank you
I didn't realize that some parameters have no default value and I looked for the error in all other places.


Not working on xcode 9, swift 4

Not working with swift 3.2 or swift 4, getting many errors,
but i can run the example app using xcode 9.
my project i can not able to run ,even i have tried  manual installation for IGListKIt

Could you share some more details what kind of errors? The library is actively used by the GitHawk project and at work I don't experience any issues with xcode 9.

Yup @iOSUser110 I’ve been using IGListKit with Xcode 9 and Swift 4 for a couple weeks now. Definitely need more information Before we can help.
Sent with GitHawk

@rnystrom Have you been using target ios11 or ios10? I see a number of warnings as well.
Please excuse the image but just quick snapshot of what im seing

@otymartin Did you automatically update Xcode project settings? Those warnings show up with various Xcode 9 Settings. They’re also totally harmless and covered. I have a PR up to fix the block warnings tho.
Sent with GitHawk

@rnystrom yes I blindly clicked all those recommended xcode settings <- is that the culprit?

Yup!
Sent with GitHawk

looks like this is resolved? going to close


Support dragging open the menu from anywhere

Change #nav to #main
Allows the menu to be dragged open not just from the navbar, but from any view that has a navbar.

This pull request is now managed with CodeReviewHub. Refresh.

Yeah, nah. This is useless. It breaks scrolling :(


E2E: add 08-wasm into allowed clients at genesis

Description

closes: #5311
Commit Message / Changelog Entry
type: commit message

see the guidelines for commit messages. (view raw markdown for examples)

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against the correct branch (see CONTRIBUTING.md).
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards and Go style guide.
[ ] Wrote unit and integration tests.
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/).
[ ] Added relevant godoc comments.
[ ] Provide a commit message to be used for the changelog entry in the PR description for review.
[ ] Re-reviewed Files changed in the Github PR explorer.
[ ] Review Codecov Report in the comment section below once CI passes.

Codecov Report

Merging #5440 (c7c8bd6) into main (60bbee1) will increase coverage by 0.02%.
Report is 10 commits behind head on main.
The diff coverage is n/a.

Additional details and impacted files

@@            Coverage Diff             @@
##             main    #5440      +/-   ##
==========================================
+ Coverage   80.08%   80.11%   +0.02%
==========================================
  Files         189      189
  Lines       13142    13145       +3
==========================================
+ Hits        10525    10531       +6
+ Misses       2203     2201       -2
+ Partials      414      413       -1

see 1 file with indirect coverage changes

Thank you for opening this PR, @expertdicer. Unfortunately, I think these changes will not be needed anymore when we merge this other PR that is allowing all client types by default. I should have closed https://github.com/cosmos/ibc-go/issues/5311 earlier, but didn't get to it on time. I think to prevent situations like this in the future would be good if comment first on the issue that you would like to work on, so that we can flag any potential impediments. Thank you!


optimize for the sparse feature

Remove OrderedSparseBin.
Combine many sparse bin to a pool and construct them simultaneously.

@wxchan  can you help to test this on higgs and yahoo dataset ?
And you can try sparse_aware=true as well.

@guolinke I have several issues, used Bosch dataset for example:

Is the caching done single thread? I have a very long wait time before a model starts training (1 minute?).
Model is very slow to train. It takes 3 minutes for only 50 iterations (while it should take only about 35 seconds in my case), caching included.

I use this call:
lgb.train(params = list(num_threads = 12,
                                      max_depth = 6,
                                      min_hessian = 0,
                                      min_data_in_leaf = 1,
                                      learning_rate = 0.20,
                                      objective = "binary",
                                      metric = "binary_logloss",
                                      sparse_aware = TRUE),
                        data = lgb_data,
                        nrounds = 50,
                        verbose = 0)

My machine is running some else task, it may take a while, I will test it later (if it is still needed).

@Laurae2 The caching is single threading now, will try to make it multi-threading.
Very slow ? Did you try sparse_aware = false ?

@Laurae2 can you share you scripts that you convert for Bosch dataset? it seems have some non-numerical fields in the data file.

@guolinke
With sparse_aware = FALSE (double = my previous benchmark):

Script used (I collated parts of my scripts to have all in one, tell me if something is wrong):
# Libraries
library(data.table)
library(Matrix)
library(recommenderlab)
library(xgboost)

# SET YOUR WORKING DIRECTORY
setwd("E:/")

gc()
# Read 1183747 rows and 970 (of 970) columns from 1.993 GB file in 00:02:52
train_numeric <- fread("train_numeric.csv", header = TRUE, sep = ",", stringsAsFactors = FALSE, colClasses = rep("numeric", 970))

# Delete if not needed
gc()
saveRDS(train_numeric, file = "train_numeric.rds", compress = TRUE) # For fast R load
write_feather(train_numeric, "train_numeric_feather.rds") # Allows to fast load in Python

# Coerce to matrix
gc()
train_numeric <- as.matrix(train_numeric) # much faster: train_numeric <- Laurae::DT2mat(train_numeric)

# Sparse = NAs
gc()
train_numeric <- dropNA(train_numeric)

# Delete if not needed
gc()
saveRDS(train_numeric, file = "train_numeric_sparse.rds", compress = TRUE) # For fast R load. 721,720,806 bytes, CRC32 = 50D25879

# Save xgboost format
gc()
train_data <- xgb.DMatrix(data = train_numeric[1:1183747, 1:969], label = train_numeric[1:1183747, 970])
gc(verbose = FALSE)
xgb.DMatrix.save(train_data, "bosch.train_xgb")

# Save svmlight/libsvm format
library(sparsity) # Requires: devtools::install_github("Laurae2/sparsity")
write.svmlight(train_numeric[1:1183747, 1:969], train_numeric[1:1183747, 970], "bosch.train")

some simple benchmark:
100 iter on yahoo ranking dataset:

threads
1
4
8
16

master version
369
128
63
48

sparse_aware = false
355
100
62
52

sparse_aware = true
265
86
60
75

@Laurae2 I change opt option from O2 to O3 in R package.
can you try it again?

@guolinke Still a very large overhead for sparse_aware = true in preparing data. sparse_aware = false is slower than master version.
Bosch set, 50 iterations:

Threads
1
6
12

master version
202.05
45.15
approx. 35

sparse_aware = false
169.16
45.81
39.55873

sparse_aware = true
(not run)
351.125
(not a typo) 299.83

Bosch set, 200 iterations:

Threads
1
2
3
4
6
12

xgboost (fast, lossguide)
875.73
531.13
398.90
391.15
374.33
337.78

sparse_aware = false
1198.34
735.62
532.07
460.93
not run
not run

sparse_aware = true
cancelled manually after 1 hour
not run
not run
not run
not run
not run

@Laurae2 it seems is cost by negative value in sparse feature.
I will try to fix .
BTW, can you also add xgboost_hist result in your private dataset?

@guolinke here for xgboost:

Threads
1
2

xgboost hist lossguide
226.85
110.86

sparse_aware = false
102.59
97.80

sparse_aware = true
60.01
41.51

@Laurae2 fix, you can try on bosch dataset now.

Commit used: 522a4d4
Still slower (not always the reality, see 1 thread) than sparse_aware = false, but at least the difference is much closer.
Speed for 50 iterations:

Threads
1
6
12

master
167.14
41.87
35.87

sparse_aware = false
165.56
41.43
33.70

sparse_aware = true
144.75
53.69
63.75

Speed for 200 iterations (will add 1 thread later):

Threads
6
12

sparse_aware = false
371.73
307.22

sparse_aware = true
284.81
394.15

@Laurae2
weird...
It is about 1x faster in my test on bosch when set sparse_aware=true (4 threads)

@guolinke Environment: Windows Server 2012 R2, Rtools compiler.
More details about 50 iterations, each run warmed up by training once before (caching + training):

Threads
4
6

sparse_aware = false
negligible + 53.16
negligible + 43.09

sparse_aware = true
20 + 33.09
16 + 37.01

I use:

R for sparse_aware = false timing (negligible < 0.5s)
bash for sparse_aware = true timing and wall clock for time it takes to cache before starting training (can't get timing in R which excludes the caching part :( )

I have a large inflated sparse_aware = true if I take into account the caching before training even starts (approx 20s for 4 threads, approx 16s for 6 threads). This is why I see a larger difference when using 200 iterations.

@Laurae2 I see.
It seems the multi-threading speed of sparse_aware is still not good..
Did you check the cpu usage for sparse_aware ?
Thanks, I will try to continue optimizing it.

@guolinke CPU usage maxed (per thread) during cache time. The only issue is the stuff done before training even start, otherwise the performance is very good (and faster than master branch).
With this PR, CPU usage is never maxed during training when using many threads (6 threads => 90% CPU usage, not 100%, reached diminishing returns cf benchmarks) for Bosch.
It seems if I want to max CPU usage with this PR I need to go for significantly larger datasets, because even my private dataset (855K x 413) can't run faster with more than 1 thread with sparse_aware branch (whether parameter is false or true) - but is still MUCH faster than single/multithread with master branch LightGBM.
This is both a good and bad thing, because it shows:

You can parallel train multiple models faster if you want to do cross-validation quickly instead of train models sequentially (the speed is very fast even single thread, faster than multithreaded xgboost exact as long as we talk about "low end CPUs" for servers like 6 core CPUs).
Overhead cost for multithreading increased dramatically. Therefore, no more linear scaling over the amount of threads (this is what xgboost approx/hist is experiencing, but the impact is higher for xgboost than LightGBM).

@guolinke I ran 500 iterations on Bosch (changed to learning_rate = 0.02). The speed difference is very good, especially with 1 thread (more than 2x faster).

Threads
1
6
12

sparse_aware = false
2919.92
885.02
771.00

sparse_aware = true
1348.84
684.70
953.10

CPU usage still an issue (cores only 50% busy, even with 6 threads on a 6 core CPU), but it's very fast. sparse_aware = false and sparse_aware = true both exhibit this issue.

@guolinke New run with commit @e35095f . Excellent performance so far. Sparse performance (sparse_aware = true) is scaling worse multithreaded, but still faster without sparse_aware = false. Also, dense performance seems to have improved significantly.
Also, I reached 29 seconds wall clock time for 50 iterations (12 threads, learning rate = 0.05), including both all the stuff before training + training.

522a4d4 = previous benchmark
e35095f = fastest performance (last commit)

500 iterations (learning rate = 0.02)
Timings:

Threads
1
6
12

sparse_aware = false e35095f
2153.28
569.54
456.17

sparse_aware = false 522a4d4
2919.92
885.02
771.00

sparse_aware = true e35095f
1125.24
415.29
507.43

sparse_aware = true 522a4d4
1348.84
684.70
953.10

=> Sparse is great for long training jobs. Excellent performance for singlethread.
CPU usage approximate in average (reported by glances & scaled):

Threads
1
6
12

sparse_aware = false
7% (82%)
40% (80%)
78% (78%)

sparse_aware = true
7% (82%)
39% (78%)
76% (76%)

=> Data does not seem big enough anymore to make cores busy 100%. Need a bigger dataset, will try Higgs later when I have time.

50 iterations (learning rate = 0.20, invalidates old runs)
Timings:

Threads
1
6
12

sparse_aware = false e35095f
214.95
57.84
45.05

sparse_aware = false 522a4d4
?
?
?

sparse_aware = true e35095f
176.96
58.16
64.41

sparse_aware = true 522a4d4
?
?
?

=> Sparse is better with more iterations

50 iterations (learning rate = 0.05, same as old runs)
Timings:

Threads
1
6
12

sparse_aware = false e35095f
162.70
38.79
29.86

sparse_aware = false 522a4d4
165.56
41.43
33.70

sparse_aware = true e35095f
143.99
49.05
50.33

sparse_aware = true 522a4d4
144.75
53.69
63.75

=> Better performance than previously. Sparse is better with more iterations. Dense is having a 3s boost on each run (?). Sparse timing reaches 26-29s (12 threads) without all the stuff before training.

@Laurae2 sorry, there are some bugs in the previous version. It will affect the result of sparse_aware = false .

@guolinke With your fixes for sparse_aware = false, re-did all benchmarks:

522a4d4 = earlier benchmark
e35095f = previous benchmark
d085c16 = latest performance

small conclusion: I suppose sparse_aware = true should shine for long trainings on (very) large datasets (bigger than Bosch I suppose), while sparse_aware = false is more "model testing ready".
note: remove 6 seconds if you want the sparse_aware = true timings without binning/caching.

500 iterations (learning rate = 0.02)
Timings:

Threads
1
6
12

sparse_aware = false d085c16
1022.78
454.63
512.42

sparse_aware = false e35095f
2153.28
569.54
456.17

sparse_aware = false 522a4d4
2919.92
885.02
771.00

sparse_aware = true d085c16
1096.04
415.92
504.73

sparse_aware = true e35095f
1125.24
415.29
507.43

sparse_aware = true 522a4d4
1348.84
684.70
953.10

=> Sparse multithread is faster than non-sparse multithread.
CPU usage approximate in average (reported by glances, scaled):

Threads
1
6
12

sparse_aware = false d085c16
10% (93.1%)
40% (70.8%)
51% (59.3%)

sparse_aware = true d085c16
9% (91.1%)
38% (88.4%)
75% (78.2%)

=> Sparse makes cores more busy.

50 iterations (learning rate = 0.20)
Timings, run 5 times when standard deviation is provided:

Threads
1
6
12

sparse_aware = false d085c16
109.68 + 1.08
48.28 + 0.29
53.29 + 0.45

sparse_aware = false e35095f
214.95
57.84
45.05

sparse_aware = false 522a4d4
?
?
?

sparse_aware = true d085c16
136.37 + 8.95
51.62 + 1.13
58.02 + 2.00

sparse_aware = true e35095f
176.96
58.16
64.41

sparse_aware = true 522a4d4
?
?
?

=> Sparse slightly slower, not enough iterations, too much overhead (approx 6s) for the binning/cache happening before training (but I don't think one would train for 50 iterations for serious modeling anyway).
=> If I remove the binning/caching time, sparse_aware = true is faster when multithreaded vs sparse_aware = false.

50 iterations (learning rate = 0.05)
Timings, run 5 times when standard deviation is provided:

Threads
1
6
12

sparse_aware = false d085c16
67.83 + 0.96
31.12 + 0.51
34.56 + 0.15

sparse_aware = false e35095f
162.70
38.79
29.86

sparse_aware = false 522a4d4
165.56
41.43
33.70

sparse_aware = true d085c16
102.19 + 1.47
39.53 + 1.90
42.97 + 1.12

sparse_aware = true e35095f
143.99
49.05
50.33

sparse_aware = true 522a4d4
144.75
53.69
63.75

=> Sparse slower, because the training is very fast (not deep trees).
=> If I remove the binning/caching time, not fast enough to catch sparse_aware = false but this is expected (too fast training).

@guolinke Very odd behavior since commit 66bf4c2. It does seem to train trees in a very odd (and non-identical) way when sparse = true. Also, significantly slower but this must be due to the strange trees.
I'm training for 50 iterations and I'm getting this:
> temp_model <- warmup(lgb_data = lgb_data, sparse = FALSE)
[LightGBM] [Info] Number of postive: 6879, number of negative: 1176868
[LightGBM] [Info] Number of data: 1183747, number of features: 960
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 31
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 31
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 30
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 31
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 30
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 30
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 28
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 28
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 28
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 28
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 30
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 28
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 28
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 31
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 30
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 30
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 30
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 31
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 31
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 31
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 34
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
LightGBM Warmup time: 27.529066
> temp_model <- warmup(lgb_data = lgb_data, sparse = TRUE)
[LightGBM] [Info] Number of postive: 6879, number of negative: 1176868
[LightGBM] [Info] Number of data: 1183747, number of features: 960
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 30
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 33
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 31
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 32
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 29
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 44
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 38
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 201
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 211
[LightGBM] [Info] No further splits with positive gain, best gain: -inf, leaves: 205
LightGBM Warmup time: 103.549416

@Laurae2 sorry. Fixed.

@guolinke Re-did all benchmarks using your bux fix 60f6c9f . Small fluctuations, but sparse_aware = true is slower. Added Higgs 500 iterations also + AUC check. Singlethread performance is excellent.

Higgs 500 iterations (learning rate = 0.10)
Timings:

Threads
Commit
1
6
12

sparse_aware = false
60f6c9f
2935.89
848.85
790.65

sparse_aware = false
d085c16
2412.94
763.14
744.15

sparse_aware = true
60f6c9f
2180.98
760.63
838.84

sparse_aware = true
d085c16
2123.12
760.17
822.43

none
master
3003.66
820.09
730.93

AUC check for 50 iterations:

Threads
Commit
AUC

sparse_aware = false
60f6c9f
0.821919

sparse_aware = false
d085c16
0.821919

sparse_aware = true
60f6c9f
0.821919

sparse_aware = true
d085c16
0.821919

none
master
0.821919

Bosch 500 iterations (learning rate = 0.02)
Timings:

Threads
Commit
1
6
12

sparse_aware = false
60f6c9f
1016.10
432.66
512.29

sparse_aware = false
d085c16
1022.78
454.63
512.42

sparse_aware = true
60f6c9f
1141.91
422.74
507.54

sparse_aware = true
d085c16
1096.04
415.92
504.73

none
master
1534.08
673.57
560.71

Bosch 50 iterations (learning rate = 0.20)
Timings, run 5 times when standard deviation is provided:

Threads
Commit
1
6
12

sparse_aware = false
60f6c9f
107.33 + 1.07
46.53 + 0.83
53.39 + 1.44

sparse_aware = false
d085c16
109.68 + 1.08
48.28 + 0.29
53.29 + 0.45

sparse_aware = true
60f6c9f
132.08 + 2.25
51.31 + 1.59
57.75 + 0.34

sparse_aware = true
d085c16
136.37 + 8.95
51.62 + 1.13
58.02 + 2.00

none
master
153.83 + 4.03
68.73 + 0.50
54.90 + 0.85

Bosch 50 iterations (learning rate = 0.05)
Timings, run 5 times when standard deviation is provided:

Threads
Commit
1
6
12

sparse_aware = false
60f6c9f
67.07 + 0.36
30.14 + 0.69
33.90 + 1.05

sparse_aware = false
d085c16
67.83 + 0.96
31.12 + 0.51
34.56 + 0.15

sparse_aware = true
60f6c9f
100.25 + 0.71
37.96 + 0.78
43.95 + 0.46

sparse_aware = true
d085c16
102.19 + 1.47
39.53 + 1.90
42.97 + 1.12

none
master
99.73 + 2.28
45.25 + 0.72
33.63 + 0.47

close this due to i cannot find a good solution for multi-threading optimization.
welcome to leave your comments if you have any ideas.
Thanks.


Philadelphia

Philly We Rise has all of the information about the Philly city budget and the names and email addresses of city council people, and I think they would benefit from an easy defund12.org link. See Philly We Rise's work here: http://phillywerise.com/defundpolice/

We are currently handling a lot of requests - if you could include a detailed (but succinct) message it would greatly speed up our addition of Philly!
Thank you!!

Dear Philadelphia City Council Members,
My name is [x] and I am a resident of the city of Philadelphia. Our Mayor Jim Kenney has proposed a city budget for FY21 that slashes $370 million from public services while funneling nearly $23 million in new funds to law enforcement. I am emailing today to demand that you vote No on the Mayor's proposed budget. Furthermore, I urge you to pressure the office of the mayor towards an ethical and equal reallocation of the Philadelphia expense budget, away from PPD and towards social services and violence prevention programs that support your fellow Philadelphians. At a moment when our country is coming to grips with the realities of police violence, the City of Philadelphia should lead by example by making a fiscal dedication to uplift communities and not cops.
Thank you,
[x]

I will close this for now, as we have a few letters for Philly now live on the site. We are currently discussing how do deal with multiple different letters for individual cities. I will close this for now, but if you find any language lacking let us know!
Thank you!


Required validator now accepts false value as valid

No testing done
Patch for #156

Added test

Codecov Report

Merging #288 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #288      +/-   ##
==========================================
+ Coverage   99.54%   99.55%   +<.01%
==========================================
  Files          26       26
  Lines         443      445       +2
==========================================
+ Hits          441      443       +2
  Misses          2        2

Impacted Files
Coverage Δ

src/validators/common.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

👍


uv_os_tmpdir behavior on windows when TMP is empty string

On windows it seems that uv_os_tmpdir's behavior when the environment variable TMP is set to an empty string is  incorrect, the function returns fine and no error is raised, even though the sz and buffer look to contain random chars.

I have no way to test right now butuv_os_tmpdir() calls out to GetTempPath(). If what you're saying is true, that would indicate a bug in that function but that seems unlikely.
Perhaps you can add some debug printfs and see what it says? It's in src/win/util.c.

I would check  the  size of the buffer returned by uv_os_tmpdir , since nBufferLength returns 1 when calling  GetTempPath() directly, but when calling uv_os_tmpdir the size argument returns 6 for some reason?

I tested from nodejs (12.4.0), and os.tmpdir() seems to behave correctly (returns 'C:\Windows\temp')

@vtjnash  is this with TMP set to the empty string?  I tested both of these function within julia, and changed the environment variable within Julia as well; i.e. ENV["TMP"]="".

Yes, do you perhaps have another influential environment variable set (or not set)?

julia> ENV["USERPROFILE"] = ""
""

julia> ENV["TEMP"] = ""
""

julia> ENV["TMP"] = ""
""

# the following uses GetTempPath

julia> tempdir()
"剈"

julia> tempdir()
"\0"

julia> tempdir()
"ఠ"

But it seems unlikely that GetTempPath has a bug

I tested from nodejs (12.4.0), and os.tmpdir() seems to behave correctly (returns 'C:\Windows\temp')

Node doesn't use uv_os_tmpdir().

Ah, ok. I can confirm that GetTempPathW does return garbage.
julia> path = ones(UInt16, 1024); ccall(:GetTempPathW, stdcall, UInt32, (UInt32, Ptr{UInt16}), length(path), path)
0x00000001

julia> transcode(String, path)
"\x01\x01\x01\x01\x01\x01..."

So looks like a GetTempPathW  bug? Pretty odd since when all those environment variables are unset it should return option 4. The Windows directory, according to their docs.

OTOH the function is not guaranteed to return a valid path.

So, what do we do? According to the docs a value > 0 means success but since the path is terminated by a backslash (and thus must be at least two chars long), should we also treat 1 as an error?

Does it make sense to either:

Return the empty string
Return The Windows directory. (see https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-gettemppatha#remarks)

In fact if someone sets the TMP variable to an empty string I think it would be the most consistent to just return  an empty string instead of error. For one, GetTempPathW doesn't error so it is consistent with that behavior. And since GetTempPathW returns gargbage, it seems ok to just return an empty string, since the docs say  the path is not guaranteed to be valid.

yes, seems like it's an unintentional error in it's attempt to form an absolute path, so anything less than X:\ (3 char) is actually invalid

Who is volunteering to PR a fix and regression test? :-)
/me steps away

uv_os_homedir has a similar problem when USERPROFILE or HOME is the empty string

bump

not stale


Unqualified name resolution

The status quo is that any short name is ultimately resolved to some fully-qualified name in the following manner:

Look for a match to the short name in the current module (typically default, but it can be changed).
Look for a match to the short name in the std module.

(taken from our docs as of 1.0 Alpha 2)
Why is this an issue at all?
module default {
    type Position {
        required property x -> float64;
        required property y -> float64;
    }

    function to_str(val: Position) -> str {
        using (
            SELECT '(' ++ <str>val.x ++ ', ' ++ <str>val.y ++ ')'
        );
    }
}

Consider how the following two queries should be resolved:
SELECT to_str(Position);
SELECT to_str(datetime_current(), 'Mon DDth, YYYY');
This is fairly unambiguous w.r.t. types and other entities with globally unique names as for any given unqualified name there's only one possible match in each of the modules, so basically we check the current module and then fallback to std.
Things get a bit less straightforward with functions which are identified by their name + signature. So when looking for a function by name only we necessarily must allow multiple matches as a possible outcome. There are at least two way of interpreting the rule above:

Look for all polymorphic versions of the function with the specified name in the current module. If such functions are found, that's the set of polymorphic functions that we resolved. Otherwise, if and only if no function by that name exists in the current module, fallback to std and check there. Given that set of polymorphic function versions pick the one matching the call signature.
Find all the functions with distinct signatures that match the specified name in the current module and in std (as long as the std function is not masked by an identical signature function from the current module). Then from this set of polymorphic functions pick the one matching the call signature.

Basically the approach 1) treats all versions of the function of the same name but different signature as a single entity, a single polymorphic function (which is consistent with the polymorphic function abstraction). This reduces functions to the same status as other objects regarding having at most one with a given name in any module and the resolving logic is consequently identical.
Approach 2) treats every function with different signature as it's own separate object (which is consistent with the schema where polymorphic variants are defined through separate definitions and exist as separate objects). Unique names are not necessary, but instead it's the name + signature which have to be unique. So under this definition it makes sense that as long as functions in std have different signatures from the ones found in the current module, they should not be masked and must be resolved as valid polymorphic options for the given name.
Another perspective to consider is what "std is always available" really means if we were to try to rephrase it:

Imagine all modules as separate pages. When resolving things, pick the "current" page, check it, and only if you don't find things, pick up std page and check there. Kinda like looking through a paper booklet.
Imagine that you have a blank slate. First copy everything from std onto it. Then copy and possibly overwrite (for masking objects) everything from the current module onto it. This is your working namespace for unqualified names. Kinda like a couple of transparencies superimposed over each other.

Personally, I have been thinking of implicit inclusion of std as similar to how imports work in other languages. I have been given the explanation of "this is like copy-pasting the contents of one file into another" for how includes/imports/etc. (#include "foo.h", import * from foo, using namespace foo) work in many programming languages. At least how they work in terms of an equivalent mental model, if not actually literal manipulation. This is evident if you have name clashes and things get masked in order of appearance of imports/includes/etc. or can be masked by a definition in the current module. So I favor interpretation 2).
As a useful feature, this interpretation allows extending the built-in utility functions to custom user-defined types in a fairly natural way (like the to_str example) without breaking existing functionality (because none of the existing code would use the new type and wouldn't require that polymorphic function variant).
The way I see it, the whole reason for deliberately giving your function a name matching a std function is when the intent is to indicate that it basically does the same thing for your type. So the intent is to extend the existing patterns, not to mask them. On the other hand, intentional masking of existing std function with an incompatible one is a less clear use case to me.

Victor, thanks for neatly and clearly summarizing the proposal in the first message.
First, I want to ask to refrain from using other languages in this discussion as justifications for one or another approach. I do that myself sometimes and now I see how it distracts us from thinking in the "EdgeQL box". C++/Python/PostgreSQL all have their own type systems, philosophies, restrictions, and goals. We can draw inspiration from other languages, but we shouldn't aim to copy their functionality. When we are discussing a new feature we should try to see how exactly it would benefit EdgeDB users within our type system constraints and EdgeQL capabilities. Let's try to dissect this feature proposal that way.
Currently we resolve functions using "interpretation 1" as you defined it. Let's do an exercise and see what happens if we adopt the "interpretation 2".  On the surface it looks like it would enable better polymorphism: essentially users would be able to overload generic std:: functions such as to_str() which is handy.
Given the schema you defined previously:
module default {
    type Position {
        required property x -> float64;
        required property y -> float64;
    }

    function to_str(val: Position) -> str {
        using (
            SELECT '(' ++ <str>val.x ++ ', ' ++ <str>val.y ++ ')'
        );
    }
}

the  SELECT to_str(Position) query is indeed unambiguous. So far so good.
Let's now evolve the schema a bit by adding another module and subtyping the Position type.  After all, EdgeDB implements multiple inheritance and we're thinking of many ways of how we can have reusable libraries of types and functions:
module default {
    type Position { ... }
    function to_str(val: Position) -> str { ... }
}

module tagged {
    type TaggedPosition extending Position {
        required property tag -> str;
    }

    function to_str(val: TaggedPosition) -> str {
        using (
            SELECT val.tag ++ '(' ++ <str>val.x ++ ', ' ++ <str>val.y ++ ')'
        );
    }
}

Now the SELECT to_str(Position) query is not so easy to interpret. What if there are objects of TaggedPosition in the DB?  What to_str implementation would the system call?
Using the "interpretation 2" that you're suggesting, the default::to_str() function would always be called, both for Position and TaggedPosition objects.
Is that what the user actually wanted to do? If I were that user, it would certainly be not. I'd expect the default::to_str to be called on Position objects and tagged::to_str to be called on TaggedPosition objects. And when it would not happen, I'd blame EdgeQL for being poorly designed, because it gave me an illusion of proper polymorphic overloading of std:: functions, whereas in reality it's quite limited.
This is the deal breaker I see with the "interpretation 2". It would basically "force" users to have just one module (maybe most users would have one module anyways, but that's not the point). Essentially having only the "default" module is the only way how you'd enable overloading of std:: consistently and predictably.
For what it's worth I don't think this problem is solvable by allowing you to specify multiple "current modules", e.g. with WITH MODULE default, MODULE tagged SELECT to_str(Position).  Again, it appears as if this would fix it, but not really. As soon as you yet another module with another subtype of Position and yet another to_str overload, you'd be forced to go and update all your queries to add , MODULE newmodule to them.
There are other ways of solving the problem, like having no module for functions at all (making the global objects). But I'm afraid that ship has sailed. I really want us to stop changing the semantics of EdgeQL and focus on shipping a stable version of the product.
That said, in the future it's likely we will want to solve this problem. Once we have a GIS extension users would likely want std::to_str to support the GIS types (at least that's my current expectation). For that to happen I think we'll need to figure out how to allow to overload std::to_str directly in extensions, and maybe in regular modules for regular types. That would give you true flexibility in overloading std:: stuff. And it would be a backwards compatible feature.

To sum up, given the above complication of "interpretation 2" I'm -1 on the proposal. There's nothing wrong with the current approach. It works, it's well defined, it's consistent, and it does not create false illusions of things we don't properly support.

@elprans We need to decide on this in the next 2 weeks so that we have enough time before a4.

We've decided to keep the status quo: we don't implement cross-module function matching by short name.
We do, however, need to eventually implement a concept similar to Rust's traits: a way to define a to_str trait for your types. Potentially traits would be a special kind of functions implementing single dispatch by their first argument. Because of that we do want to make sure that functions don't name-clash with other objects: it's invalid to have a function sharing a short name with a type, just as it would be invalid to have a regular function sharing a short name with a trait.
I'm going to close this issue and open two new ones for adding traits and prohiniting name clashing.


Unable to create account with a secure password

I was just about to create an account with the following passwords:
»,àî´æ=`"((Ý#±«"ü×%'yWðÍ&îPqØTX;¯þ;¿×æXËµ¾ÖÛDþí,Á_+*Ä¬Ê<µ¾¡f'»êÎÖp¢e_P°óZk@XñÊ7ÒÊÖ©mðÂÝs5jÛCCýZ-C¹ÎÖúÃ'ô½¡7§îW(ÂcT_*Jo©h9>9Ãèh[Í
pw_E}]kz#uEnn`Lr@[FF{jfS+~M*rd/52iWxja%jobADqcWX\oaZ[;=bPM].5Kc(gJH-_+okZbeQ'wQ_nVVQV-C{r3/7}+%#:{,->y.K,'A-M/fR9gw%*H}!H3=LY!{u
Shortening the password to 50 chars works. However I would still like to use the max number of chars available in my password manager

Wrong repo?
Gruss

Is there a repo for the ollama.ai website? If so I will move my issue of course

This is the right place

We appreciate anyone who is as concerned with security as we are which is why we have a very secure maximum of 50 characters. A password with 18 characters will take 500 million years to crack. By the time quantum computers become a threat we will have changed the scheme we use entirely.

@FairyTail2000 we'll get this fixed – stay tuned 😊

Thank you

This should be fixed now @FairyTail2000. Feel free to re-open or create another issue if the problem persists!


Builder does not place ColossalChests' chest wall block correctly

Versions:

forge-1.10.2-<IP_ADDRESS>5
mcjtylib-1.1x-2.3.4
rftools-1.1x-5.81
CyclopsCore-1.9.4-0.9.0
ColossalChests-1.10.2-1.4.2
compatlayer-1.10-0.1.7

Pictures: Imgur Link
How to reproduce:

setup a builder to place blocks in an area.
put diamond variant chest wall blocks from ColossalChests mod into the input chest.
give power and redstone signal to the builder block.
see invisible blocks get placed in the designated area.
break one of those invisible blocks, see them all turn into iron variant chest wall blocks. (only those in a valid position to form a ColossalChest will be updated to iron variant chest wall blocks)

Not much I can do about this. Many modded blocks work, many modded blocks don't. It is too hard to special case every block there is


Update Configure-Additional-Authentication-Methods-for-AD-FS.md

@billmath  I don't believe we allow 3rd party links or content in our documentation, but Bill is our AD-FS writer and he would be in a better position to say whether I'm correct. Thanks for taking the time to make the change!

All the integration links on that page are 3rd party links and all I did was added our integration doc link to the list
Rohan
Sent from my iPhone

On Sep 8, 2020, at 11:48 AM, Elizabeth Ross<EMAIL_ADDRESS>wrote:

@billmath I don't believe we allow 3rd party links or content in our documentation, but Bill is our AD-FS writer and he would be in a better position to say whether I'm correct. Thanks for taking the time to make the change!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Checking with engineering

Hi @rohanpinto
Unfortunately I haven't heard back from engineering yet.  So, I am going to go ahead and create a work item to track this.
For now, I am going to go ahead and close the PR and I will re-open it once I have heard back.
Thanks!
Bill
#please-close

Sure No worries Bill,
The pull request is a simple one. All it has is us listed as one of the
providers that ADFS can integrate with as additional authenticators and a
link to the documentation and a description of the offering like all the
other 19 providers listed on this page :
https://docs.microsoft.com/en-us/windows-server/identity/ad-fs/operations/configure-additional-authentication-methods-for-ad-fs
In my opinion this was one of the simplest pull requests I've ever made.
Would appreciate it if you could merge/approve it.
regards
Rohan
#pleasemerge
Rohan Pinto
cell:<PHONE_NUMBER>
<EMAIL_ADDRESS>On Thu, Oct 22, 2020 at 1:07 PM Bill Mathers<EMAIL_ADDRESS>wrote:

Hi @rohanpinto https://github.com/rohanpinto
Unfortunately I haven't heard back from engineering yet. So, I am going to
go ahead and create a work item to track this.
For now, I am going to go ahead and close the PR and I will re-open it
once I have heard back.
Thanks!
Bill
#please-close
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/windowsserverdocs/pull/4763#issuecomment-714633671,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAATBGEF4TPQQ2DNW436MHTSMBRGPANCNFSM4QPAOPDQ
.

Any Update on the requested changes to be merged ?
Rohan Pinto
cell:<PHONE_NUMBER>
<EMAIL_ADDRESS>On Thu, Oct 22, 2020 at 1:16 PM Elizabeth Ross<EMAIL_ADDRESS>wrote:

Closed #4763
https://github.com/MicrosoftDocs/windowsserverdocs/pull/4763.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/windowsserverdocs/pull/4763#event-3910246170,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAATBGDRBV4RBGVSGCJU7ADSMBSHNANCNFSM4QPAOPDQ
.


jdk5 support

There is still a lot of jdk5 program live.
I wonder why pinpoint dont support it. Is there any technical difficulty ?
I think Jdk5 has had instrumentation Interface.
Looking forward your response. Thank you?

It is too old JDK
We have no plans to support

Can you tell me why? Does it need a lot of huge work to do?
I think it just need to involve jdk5 to compile. Maybe I'm wrong.

I do not know because I was not interested in jdk 1.5.
Try it yourself to find out the problem.


ci: add selene as a linter

TL;DR
Added Selene Lua linter to pre-commit hooks and configured it for Vim/Neovim development.
What changed?

Updated .pre-commit-config.yaml to include Selene as a local hook
Added selene.toml configuration file to set the Vim standard
Created vim.toml to define Vim-specific globals and functions for Selene

How to test?

Install Selene: cargo install selene
Run pre-commit hooks: pre-commit run --all-files
Verify that Selene lints Lua files without errors
Make changes to Lua files and ensure Selene catches any issues

Why make this change?
Integrating Selene as a Lua linter improves code quality and consistency in Vim/Neovim plugin development. It helps catch potential errors and enforces best practices specific to the Vim environment.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#13
#12
#11
#10
#9  👈
#8
next

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @AliSajid and the rest of your teammates on  Graphite

Merge activity

Oct 19, 11:32 PM EDT: A user started a stack merge that includes this pull request via Graphite.


macOS llvm and libc errors

Hi,
apparently there are linker errors when trying to compile this on macOS.
However, there seems to be a solution that I would like to share here – in case anyone else is trying the same thing:

Install llvm with homebrew: $ brew install llvm
Make sure the commandline tools are installed and check whether libclang is available at /Library/Developer/CommandLineTools/usr/lib/libclang.dylib.
Running cargo build now unfortunately gives the following error:

error: failed to run custom build command for `soapysdr-sys v0.7.2 (/Users/<user>/rust-soapysdr/soapysdr-sys)`

Caused by:
  process didn't exit successfully: `/Users/<user>/rust-soapysdr/target/debug/build/soapysdr-sys-a03975fe81e5e189/build-script-build` (signal: 6, SIGABRT: process abort signal)
  --- stderr
  dyld: Library not loaded: @rpath/libclang.dylib
    Referenced from: /Users/<user>/rust-soapysdr/target/debug/build/soapysdr-sys-a03975fe81e5e189/build-script-build
    Reason: image not found

Build the project using $ export DYLD_LIBRARY_PATH=/Library/Developer/CommandLineTools/usr/lib/ cargo build

For some reason, the clang library can't be found automatically and we have to help the linker (see https://github.com/rust-qt/ritual/issues/75)
Hope this helps.
@kevinmehall thanks for making this project available!

This probably related to rust-bindgen 0.52 features changes. PR #20 should already fixed it, but I don't have macOS to verify.


Create file to check if script was executed before

Prompt user if it should be executed again.

Not necessary anymore.


Intermittent devshell test failures

from time to time, i've started seeing devshell-related test failures, like this:
[~/gh/oauth2client] {master} $ tox -e py27
GLOB sdist-make: /Users/craigcitro/gh/oauth2client/setup.py
py27 inst-nodeps: /Users/craigcitro/gh/oauth2client/.tox/dist/oauth2client-1.4.11.zip
py27 runtests: PYTHONHASHSEED='1896158765'
py27 runtests: commands[0] | nosetests --ignore-files=test_appengine\.py
.........EException in thread Thread-1:
Traceback (most recent call last):
  File "/Users/craigcitro/ext/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/Users/craigcitro/gh/oauth2client/tests/test_devshell.py", line 63, in run
    resp_1 = s.recv(6).decode()
error: [Errno 35] Resource temporarily unavailable

...................................................................................................................................................................
======================================================================
ERROR: test_handles_ignores_extra_fields (tests.test_devshell.DevshellCredentialsTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/craigcitro/gh/oauth2client/tests/test_devshell.py", line 122, in test_handles_ignores_extra_fields
    creds = DevshellCredentials()
  File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 113, in __init__
    self._refresh(None)
  File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 116, in _refresh
    self.devshell_response = _SendRecv()
  File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 83, in _SendRecv
    raise CommunicationError('saw no newline in the first 6 bytes')
CommunicationError: saw no newline in the first 6 bytes

----------------------------------------------------------------------
Ran 173 tests in 11.581s

FAILED (errors=1)
ERROR: InvocationError: '/Users/craigcitro/gh/oauth2client/.tox/py27/bin/nosetests --ignore-files=test_appengine\\.py'
________________________________________ summary ________________________________________
ERROR:   py27: commands failed

it's not consistent -- something is flaky. @aalexand does this look familiar?

I haven't seen this, but I'll take a look.
On Fri, May 22, 2015 at 11:00 AM, Craig Citro<EMAIL_ADDRESS>wrote:

from time to time, i've started seeing devshell-related test failures,
like this:
[~/gh/oauth2client] {master} $ tox -e py27
GLOB sdist-make: /Users/craigcitro/gh/oauth2client/setup.py
py27 inst-nodeps: /Users/craigcitro/gh/oauth2client/.tox/dist/oauth2client-1.4.11.zip
py27 runtests: PYTHONHASHSEED='1896158765'
py27 runtests: commands[0] | nosetests --ignore-files=test_appengine.py
.........EException in thread Thread-1:
Traceback (most recent call last):
File "/Users/craigcitro/ext/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()
File "/Users/craigcitro/gh/oauth2client/tests/test_devshell.py", line 63, in run
resp_1 = s.recv(6).decode()
error: [Errno 35] Resource temporarily unavailable
...................................................................................................................................................................
ERROR: test_handles_ignores_extra_fields (tests.test_devshell.DevshellCredentialsTests)
Traceback (most recent call last):
File "/Users/craigcitro/gh/oauth2client/tests/test_devshell.py", line 122, in test_handles_ignores_extra_fields
creds = DevshellCredentials()
File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 113, in init
self._refresh(None)
File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 116, in _refresh
self.devshell_response = _SendRecv()
File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 83, in _SendRecv
raise CommunicationError('saw no newline in the first 6 bytes')
CommunicationError: saw no newline in the first 6 bytes

Ran 173 tests in 11.581s
FAILED (errors=1)
ERROR: InvocationError: '/Users/craigcitro/gh/oauth2client/.tox/py27/bin/nosetests --ignore-files=test_appengine\.py'
________________________________________ summary ________________________________________
ERROR:   py27: commands failed
it's not consistent -- something is flaky. @aalexand
https://github.com/aalexand does this look familiar?
—
Reply to this email directly or view it on GitHub
https://github.com/google/oauth2client/issues/188.

Is this local or Jenkins runs or both?
On Fri, May 22, 2015 at 11:21 AM, Alexey Alexandrov<EMAIL_ADDRESS>wrote:

I haven't seen this, but I'll take a look.
On Fri, May 22, 2015 at 11:00 AM, Craig Citro<EMAIL_ADDRESS>wrote:

from time to time, i've started seeing devshell-related test failures,
like this:
[~/gh/oauth2client] {master} $ tox -e py27
GLOB sdist-make: /Users/craigcitro/gh/oauth2client/setup.py
py27 inst-nodeps: /Users/craigcitro/gh/oauth2client/.tox/dist/oauth2client-1.4.11.zip
py27 runtests: PYTHONHASHSEED='1896158765'
py27 runtests: commands[0] | nosetests --ignore-files=test_appengine.py
.........EException in thread Thread-1:
Traceback (most recent call last):
File "/Users/craigcitro/ext/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()
File "/Users/craigcitro/gh/oauth2client/tests/test_devshell.py", line 63, in run
resp_1 = s.recv(6).decode()
error: [Errno 35] Resource temporarily unavailable
...................................................................................................................................................................
ERROR: test_handles_ignores_extra_fields (tests.test_devshell.DevshellCredentialsTests)
Traceback (most recent call last):
File "/Users/craigcitro/gh/oauth2client/tests/test_devshell.py", line 122, in test_handles_ignores_extra_fields
creds = DevshellCredentials()
File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 113, in init
self._refresh(None)
File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 116, in _refresh
self.devshell_response = _SendRecv()
File "/Users/craigcitro/gh/oauth2client/oauth2client/devshell.py", line 83, in _SendRecv
raise CommunicationError('saw no newline in the first 6 bytes')
CommunicationError: saw no newline in the first 6 bytes

Ran 173 tests in 11.581s
FAILED (errors=1)
ERROR: InvocationError: '/Users/craigcitro/gh/oauth2client/.tox/py27/bin/nosetests --ignore-files=test_appengine\.py'
________________________________________ summary ________________________________________
ERROR:   py27: commands failed
it's not consistent -- something is flaky. @aalexand
https://github.com/aalexand does this look familiar?
—
Reply to this email directly or view it on GitHub
https://github.com/google/oauth2client/issues/188.

i've only seen it locally on my mac. (maybe it's OSX-specific?)
haven't seen it on travis; we don't have a jenkins setup.


Require that users provide a given name

We need at least one name so we know who it is, however for many people a single name will suffice. Treat this as their given name rather than enforcing it being a first name to provide them a bit more freedom.
If we were going full https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/ I'd drop the 'last_name' field and just have the one field, but this is probably sufficient.

I'd drop the 'last_name' field and just have the one field, but this is probably sufficient.

If you look in the git history, I did actually have that originally for this project. However, it doesn't play nicely with allauth if we want names to be populated from OAuth, so I ended up swapping the model back for something more standard.

Oh, I'd forgotten that you had a custom model. I had just been thinking about not showing/asking for the last name in the form, rather than on the model.


Save dummy outputs when runner script raises an exception

When running a script via the Hera Runner, if it raises an error, the declared outputs of the (script) template are not created as files in the container, leading to confusing Argo logs such as:
msg="cannot save parameter /tmp/hera-outputs/parameters/my-parameter"
argo=true
error="open /tmp/hera-outputs/parameters/my-parameter: no such file or directory"`

We should catch the exception in the runner, write dummy values (i.e. empty string/null values), then pass the exception up.

Released in 5.14.0


configparser.NoSectionError: No section: 'tox'

If tox.ini exists and does not have a [tox] section, tox-pip-extensions causes an error.
/usr/lib/python3.8/site-packages/tox_pip_extensions.py:51: in tox_configure
    for k, v in cfg.items('tox'):

This prevents building test cases like those in the main tox repo which dont include a [tox] section.

yeah this was written long before tox files could be valid without a [tox] section -- are you interested in sending a patch to make that optional?


AbstractMatterNodeDevice class method device_info is returning None instead of Clusters.Basic or Clusters.BridgedDeviceBasic

This error seems to be related to chip.clusters.Objects.Basic not existing so when the get_cluster function runs it doesn't find anything

Just some extra info on this issue I don't know if this behavior happens when querying a native matter device or just a matter bridge device cuz in this particular case I'm using the hue bridge.

Can you paste the log instead of attaching an image? Thanks!

2023-01-26 07:38:30.018 INFO (SyncWorker_1) [homeassistant.util.package] Attempting install of python-matter-server==2.0.1
2023-01-26 07:38:40.768 INFO (MainThread) [matter_server.client.connection] Connected to Matter Fabric 1<PHONE_NUMBER>0900546008), Schema version 1, CHIP SDK Version 2023.1.0
2023-01-26 07:38:40.768 INFO (MainThread) [homeassistant.setup] Setting up matter
2023-01-26 07:38:40.768 INFO (MainThread) [homeassistant.setup] Setup of domain matter took 0.0 seconds
2023-01-26 07:38:40.773 INFO (MainThread) [matter_server.client.connection] Connected to Matter Fabric 1<PHONE_NUMBER>0900546008), Schema version 1, CHIP SDK Version 2023.1.0
2023-01-26 07:38:40.778 INFO (MainThread) [matter_server.client] Matter client initialized.
2023-01-26 07:38:40.781 INFO (MainThread) [homeassistant.components.sensor] Setting up sensor.matter
2023-01-26 07:38:40.783 INFO (SyncWorker_0) [homeassistant.loader] Loaded binary_sensor from homeassistant.components.binary_sensor
2023-01-26 07:38:40.784 INFO (SyncWorker_3) [homeassistant.loader] Loaded light from homeassistant.components.light
2023-01-26 07:38:40.785 INFO (MainThread) [homeassistant.setup] Setting up binary_sensor
2023-01-26 07:38:40.785 INFO (MainThread) [homeassistant.setup] Setup of domain binary_sensor took 0.0 seconds
2023-01-26 07:38:40.788 INFO (MainThread) [homeassistant.setup] Setting up light
2023-01-26 07:38:40.789 INFO (SyncWorker_4) [homeassistant.loader] Loaded switch from homeassistant.components.switch
2023-01-26 07:38:40.790 INFO (MainThread) [homeassistant.components.binary_sensor] Setting up binary_sensor.matter
2023-01-26 07:38:40.794 INFO (MainThread) [homeassistant.setup] Setup of domain light took 0.0 seconds
2023-01-26 07:38:40.798 INFO (MainThread) [homeassistant.setup] Setting up switch
2023-01-26 07:38:40.798 INFO (MainThread) [homeassistant.setup] Setup of domain switch took 0.0 seconds
2023-01-26 07:38:40.801 INFO (MainThread) [homeassistant.components.light] Setting up light.matter
2023-01-26 07:38:40.805 INFO (MainThread) [homeassistant.components.switch] Setting up switch.matter
2023-01-26 07:39:10.867 ERROR (MainThread) [homeassistant.components.matter] Unexpected exception: 'NoneType' object has no attribute 'nodeLabel'
Traceback (most recent call last):
  File "/workspaces/core/homeassistant/components/matter/__init__.py", line 131, in _client_listen
    await matter_client.start_listening(init_ready)
  File "/home/vscode/.local/lib/python3.9/site-packages/matter_server/client/client.py", line 282, in start_listening
    self._handle_incoming_message(msg)
  File "/home/vscode/.local/lib/python3.9/site-packages/matter_server/client/client.py", line 323, in _handle_incoming_message
    self._handle_event_message(msg)
  File "/home/vscode/.local/lib/python3.9/site-packages/matter_server/client/client.py", line 338, in _handle_event_message
    self._signal_event(EventType.NODE_ADDED, node)
  File "/home/vscode/.local/lib/python3.9/site-packages/matter_server/client/client.py", line 369, in _signal_event
    callback(event, data)
  File "/workspaces/core/homeassistant/components/matter/adapter.py", line 61, in node_added_callback
    self._setup_node(node)
  File "/workspaces/core/homeassistant/components/matter/adapter.py", line 80, in _setup_node
    self._create_device_registry(bridge_device)
  File "/workspaces/core/homeassistant/components/matter/adapter.py", line 98, in _create_device_registry
    name = basic_info.nodeLabel
AttributeError: 'NoneType' object has no attribute 'nodeLabel'
2023-01-26 07:39:10.909 INFO (MainThread) [matter_server.client.connection] Connected to Matter Fabric 1<PHONE_NUMBER>0900546008), Schema version 1, CHIP SDK Version 2023.1.0
2023-01-26 07:39:11.338 INFO (MainThread) [matter_server.client] Matter client initialized.
2023-01-26 07:39:11.338 INFO (MainThread) [homeassistant.components.binary_sensor] Setting up binary_sensor.matter
2023-01-26 07:39:11.338 INFO (MainThread) [homeassistant.components.light] Setting up light.matter
2023-01-26 07:39:11.338 INFO (MainThread) [homeassistant.components.sensor] Setting up sensor.matter
2023-01-26 07:39:11.339 INFO (MainThread) [homeassistant.components.switch] Setting up switch.matter
2023-01-26 07:39:11.339 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Matter for matter
Traceback (most recent call last):
  File "/workspaces/core/homeassistant/config_entries.py", line 382, in async_setup
    result = await component.async_setup_entry(hass, self)
  File "/workspaces/core/homeassistant/components/matter/__init__.py", line 109, in async_setup_entry
    await matter.setup_nodes()
  File "/workspaces/core/homeassistant/components/matter/adapter.py", line 53, in setup_nodes
    self._setup_node(node)
  File "/workspaces/core/homeassistant/components/matter/adapter.py", line 80, in _setup_node
    self._create_device_registry(bridge_device)
  File "/workspaces/core/homeassistant/components/matter/adapter.py", line 98, in _create_device_registry
    name = basic_info.nodeLabel
AttributeError: 'NoneType' object has no attribute 'nodeLabel'

I think we need to update the models to use clusters.BasicInformation instead of clusters.Basic as that was renamed to clusters.BasicInformation
Here:
https://github.com/home-assistant-libs/python-matter-server/blob/f353c273ed7213f18931b2dfed908fb6529c2ec6/matter_server/common/models/node_device.py#L25-L47
https://github.com/home-assistant-libs/python-matter-server/blob/f353c273ed7213f18931b2dfed908fb6529c2ec6/matter_server/common/models/node.py#L200-L218

It would be great to get a diagnostics dump from the bridge device as we're lacking tests for bridge devices. :+1:

We can dump diagnostics from Home Assistant when running core-2023.2.0b0+. Dump the diagnostics of the config entry and all the commissioned nodes will be included.

Oh okay I'll do that in the morning

I was trying to dump the diagnostics and it appears the NoneType error is still there in some cases, it looks like its only happening on the bridge device itself now and not on all bridged devices.
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 382, in async_setup
    result = await component.async_setup_entry(hass, self)
  File "/usr/src/homeassistant/homeassistant/components/matter/__init__.py", line 109, in async_setup_entry
    await matter.setup_nodes()
  File "/usr/src/homeassistant/homeassistant/components/matter/adapter.py", line 53, in setup_nodes
    self._setup_node(node)
  File "/usr/src/homeassistant/homeassistant/components/matter/adapter.py", line 80, in _setup_node
    self._create_device_registry(bridge_device)
  File "/usr/src/homeassistant/homeassistant/components/matter/adapter.py", line 98, in _create_device_registry
    name = basic_info.nodeLabel
AttributeError: 'NoneType' object has no attribute 'nodeLabel'


Add support for BizTalk 2009

Add support for BizTalk 2009
This work item was migrated from CodePlex
CodePlex work item ID: '4060'
Assigned to: 'tfabraham'
Vote count: '1'

[UnknownUser@5/14/2009]
Associated with changeset 19525.

[UnknownUser@5/15/2009]
Resolved with changeset 19544.

[UnknownUser@5/18/2009]

[UnknownUser@5/18/2009]
Resolved with changeset 19581.

[UnknownUser@2/21/2013]

[UnknownUser@5/16/2013]


[ENHANCEMENT] Add in a proxy for unsaved datasources

Description
Add ability to proxy unsaved datasources
This adds the ability to proxy unsaved datasources. This is effectively
the same as the existing proxy functionality, but loading the datasource
from a spec in the request body rather than from the database. This is useful
for testing datasources before saving them, and for using local datasources
before the dashboard has been saved.
In order to not make this an open proxy, we authenticate calls to the
proxy endpoint, ensuring that users have create datasource permissions.
This is a bit awkward to do in the proxy, because it required another middleware
to extract the claims, but it seems to work - I'd appreciate any comments
on making that cleaner.
Checklist

[x] Pull request has a descriptive title and context useful to a reviewer.
[x] Pull request title follows the [<catalog_entry>] <commit message> naming convention using one of the
following catalog_entry values: FEATURE, ENHANCEMENT, BUGFIX, BREAKINGCHANGE, DOC,IGNORE.
[x] All commits have DCO signoffs.

Updated this to use the new proxy routes. The authentication is a lot cleaner.


Check to see if object is None before traversing

Closes #2915
When using the C API directly, the intended way to call visitproc is via the Py_VISIT macro, which checks to see that the provided pointer is not null before passing it along to visitproc. Because PyO3 isn't using the macro, it needs to manually check that the pointer isn't null. Without this check, calling visit.call(&obj) where let obj = None; will segfault.

I read through the contributing guide and I think I did the newsfragment correctly. If it isn't right, feel free to either let me know what I did wrong or just do whatever needs to be done to fix it.

The failed CI jobs do not seem related to my changes, so I don't plan on addressing them.

Can you add a test? Your example in https://github.com/PyO3/pyo3/issues/2915 should do nicely. You can put it in a test function similar to https://github.com/PyO3/pyo3/pull/2914/files#diff-e28c611e920921574b15af9f361787212c273d1b4327337593639e619176bd6f

The failed CI jobs do not seem related to my changes, so I don't plan on addressing them.

That's just because some diagnostics have changed in today's new Rust version. If you rebase after https://github.com/PyO3/pyo3/pull/2922 they should pass.

Looks good to me, thanks - I think rebasing will fix CI (new rust release).

@mejrs is right, a test write be appreciated 😂

Rebased and unit test added.

bors r+


Issue #37 resolution: New Reaction Workflows

Summary
Making my discord bot obtain a list of users who reacted to a message was a bit unintuitive at first. Then I noticed the open issue #37 related to adding new functionality to reactions and decided to tackle this issue so that my bots and others like it can take advantage of the new workflows.
Example Workflows:
Lets say you're hosting a giveaway and want people to enter for different prize pools 🟥 and 🟢 based on their reaction:
giveaway_message.all_reaction_users
=> { '🟥' => [<User bob>, <User jack>], '🟢' => [<User bob>, <User jane>] }
Additionally, it is no longer required to resolve a reaction to a string to use it with Message#reacted_with:
giveaway_message.reacted_with(<Reaction 🟥>, limit:100)
=> [<User bob>, <User jack>]
Resolves #37

Added

Implemented Message#all_reaction_users which returns a hash of reactions and users who used it
Added rspec tests for additions and changed features

Changed

added to_s coercion for reaction argument in Message#reacted_with

Thanks!


Try to cover all CWE List

Here is a patch to avoid using the stdlib for importlib.resources:
diff --git a/requirements.txt b/requirements.txt
index e69de29..7e49a26 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -0,0 +1,2 @@
+importlib_resources==5.10.2
+zipp==3.11.0
\ No newline at end of file
diff --git a/setup.cfg b/setup.cfg
index 1e0645c..2addd47 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -40,8 +40,10 @@

 setup_requires = setuptools_scm[toml] >= 4

-python_requires = >=3.6.*
+python_requires = >=3.7

+install_requires =
+    importlib_resources>=5.10.2

 [options.packages.find]
 where = src
diff --git a/src/cwe2/mappings.py b/src/cwe2/mappings.py
index 02428f3..ba5cf9c 100644
--- a/src/cwe2/mappings.py
+++ b/src/cwe2/mappings.py
@@ -5,7 +5,7 @@
 # See https://github.com/nexB/cwe2 for support or download.
 # See https://aboutcode.org for more information about nexB OSS projects.
 #
-import importlib.resources
+import importlib_resources
 import os

@@ -24,12 +24,12 @@
     :raises FileNotFoundError: In case the file in `resource` is not
                                found in the package.
     """
-    # Guard against non-existing files, or else importlib.resources.path
+    # Guard against non-existing files, or else importlib_resources.path
     # may raise a confusing TypeError.
-    if not importlib.resources.is_resource(package, resource):
+    if not importlib_resources.is_resource(package, resource):
         raise FileNotFoundError(f"Python package '{package}' resource '{resource}' not found.")

-    with importlib.resources.path(package, resource) as resource_path:
+    with importlib_resources.path(package, resource) as resource_path:
         return os.fspath(resource_path)


The rule 'OCLint:compiler warning' does not exist.

使用了提供的插件，扫描报错
log：
1:59:49.754 WARN: Metric 'lines' is an internal metric computed by SonarQube. Provided value is ignored.
11:59:49.890 INFO: Sensor Objective-C Squid Sensor [objectivec] (done) | time=2322ms
11:59:49.890 INFO: Sensor Objective-C OCLint Sensor [objectivec]
11:59:49.891 INFO: parsing /Users/Jenkins/workspace/Sonar-project-alfar-iOS/oclint.xml
11:59:50.468 DEBUG: Collecting issues for /Users/Jenkins/workspace/Sonar-project-alfar-iOS/Alfar/Megvii/Extension/NSArray+ALFExtension.h
11:59:50.468 DEBUG: File /Users/Jenkins/workspace/Sonar-project-alfar-iOS/Alfar/Megvii/Extension/NSArray+ALFExtension.h was found in the project.
11:59:50.494 INFO: ------------------------------------------------------------------------
11:59:50.494 INFO: EXECUTION FAILURE
11:59:50.494 INFO: ------------------------------------------------------------------------
11:59:50.495 INFO: Total time: 6.963s
11:59:50.570 INFO: Final Memory: 46M/331M
11:59:50.570 INFO: ------------------------------------------------------------------------
11:59:50.570 ERROR: Error during SonarQube Scanner execution
The rule 'OCLint:compiler warning' does not exist.
11:59:50.571 DEBUG: Execution getVersion
11:59:50.572 DEBUG: Execution stop
Build step 'Execute shell' marked build as failure
同时下载了https://github.com/mjdetullio/sonar-objective-c 的源码，编译报错，少两个文件

添加OCLint 0.13版jar包 , 使用新包即可.


Move approver to maintainer for rekor-monitor

I'd like at least two active maintainers per repo.

Summary

Release Note

Documentation

fyi @znewman01
cc current maintainers @bobcallaway @asraa , and tsc @priyawadhwa @trevrosen for approval and merge


tests appear to be failing

will investigate shortly

fixed: https://github.com/ef4/broccoli-uglify-sourcemap/pull/10


Change password warning copy

what
Updated strings for change password warning copy.
Fixed bug where confirm and new password were swapped.
Fixed save disabled icon color.
Changed logic for showing warning.
Updated tests.
see

 Password conditional copy


Linking.addEventListener not working

Please provide all the information requested. Issues that do not follow this format are likely to stall.
Description
Please provide a clear and concise description of what the bug is. Include screenshots if needed.
Please test using the latest React Native release to make sure your issue has not already been fixed: https://reactnative.dev/docs/upgrading.html
React Native version:
Run react-native info in your terminal and copy the results here.
Steps To Reproduce
Provide a detailed list of steps that reproduce the issue.

Expected Results
Describe what you expected to happen.
Snack, code example, screenshot, or link to a repository:
Please provide a Snack (https://snack.expo.io/), a link to a repository on GitHub, or provide a minimal code example that reproduces the problem.
You may provide a screenshot of the application if you think it is relevant to your bug report.
Here are some tips for providing a minimal example: https://stackoverflow.com/help/mcve
hi
in android platform when my app in background and  receive a share intent from another apps, nothing happens. in other words Linking.addEventListener not working. this is mycode
componentDidMount(){
Linking.getInitialURL().then((ev) => {
if (ev) {
this._handleOpenURL(ev);
}
}).catch(err => {
console.warn('An error occurred', err);
});
Linking.addEventListener('url', this._handleOpenURL);
}

is there any update about it?