TCP, FramedTCP message send is not truly async

As seen in TODO comment and behaviour on io::ErrorKind::WouldBlock.
In server case this blocks communication with other clients.
I stumbled upon a situation when a faulty virtual network tunnel doesn't process sent data and whole program gets stuck in this loop and has 100% CPU utilization.  It causes issues and delays in other situations too with large messages.
https://github.com/lemunozm/message-io/blob/master/src/adapters/tcp.rs#L187

    fn send(&self, data: &[u8]) -> SendStatus {
        // TODO: The current implementation implies an active waiting,
        // improve it using POLLIN instead to avoid active waiting.
        // Note: Despite the fear that an active waiting could generate,
        // this only occurs in the case when the receiver is full because reads slower that it sends.
        let mut total_bytes_sent = 0;
        loop {
            let mut stream = &self.stream;
            match stream.write(&data[total_bytes_sent..]) {
                Ok(bytes_sent) => {
                    total_bytes_sent += bytes_sent;
                    if total_bytes_sent == data.len() {
                        break SendStatus::Sent
                    }
                }
                Err(ref err) if err.kind() == io::ErrorKind::WouldBlock => continue,

                // Others errors are considered fatal for the connection.
                // a Event::Disconnection will be generated later.
                Err(err) => {
                    log::error!("TCP receive error: {}", err);
                    break SendStatus::ResourceNotFound // should not happen
                }
            }
        }
    }

Hi, thanks for bringing this issue to light!
Yes, if the way of unlocking the receiver queue is in the same thread as this, then it will cause 100% of the CPU without the possibility of unlocking it. That should definitely be fixed using a POLLIN

Fast workaround implementation of AsyncFrameAdapter: https://github.com/lemunozm/message-io/compare/master...PPakalns:message-io:async_framed_tcp
Of course, this adds additional cost of storing queue of buffers to be sent over the network.

Great! Feel free to open a PR with this new adapter. It can be interesting for users using tcp as you.


Project management basics

[x] Complete Flutter build documentation
[x] Start survival-guide CI/CD
[x] Link Discord with survival-guide

@moronizacmel  Hey, I will be working on CI/CD part of it so you can offload some of your work

@moronizacmel  Just linked Github with Discord too

@moronizacmel  Looks like Discord needs to be set up correctly. I will ask @MiriamJB  to link it correctly. Thank you!

@DereckAn @moronizacmel, I think we have done pretty solid work here. And could mark this issue as done

Closing per:  commit 12f87d5


MSFT_xBLTpm: Add Unit Tests for xBLTpm

Pull Request (PR) description
Adds Unit Tests for xBLTpm
Task list

[x] Added an entry under the Unreleased section of the change log in the README.md.
Entry should say what was changed, and how that affects users (if applicable).
[ ] Resource documentation added/updated in README.md.
[ ] Resource parameter descriptions added/updated in README.md, schema.mof
and comment-based help.
[ ] Comment-based help added/updated.
[ ] Localization strings added/updated in all localization files as appropriate.
[ ] Examples appropriately added/updated.
[x] Unit tests added/updated. See DSC Resource Testing Guidelines.
[ ] Integration tests added/updated (where possible). See DSC Resource Testing Guidelines.
[x] New/changed code adheres to DSC Resource Style Guidelines and Best Practices.

This change is

Codecov Report

Merging #29 into dev will decrease coverage by 0.28%.
The diff coverage is 25.8%.

@@            Coverage Diff            @@
##              dev     #29      +/-   ##
=========================================
- Coverage   26.08%   25.8%   -0.29%
=========================================
  Files           3       3
  Lines          92      93       +1
=========================================
  Hits           24      24
- Misses         68      69       +1

Impacted Files
Coverage Δ

DSCResources/MSFT_xBLTpm/MSFT_xBLTpm.psm1
3.57% <3.57%> (-0.14%)
:arrow_down:

...s/MSFT_xBLAutoBitlocker/MSFT_xBLAutoBitlocker.psm1
42.3% <42.3%> (ø)
:arrow_up:

...Resources/MSFT_xBLBitlocker/MSFT_xBLBitlocker.psm1
7.69% <7.69%> (ø)
: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 b5d39bc...c2bf30a. Read the comment docs.


Support multiple simultaneous logins with cluster-ssh

I have a small shell script that I use to login to multiple vagrant VMs simultaneously using csshX; perhaps molecule could investigate the system for the presence of such tools and do something similar if no <host> parameter is provided to molecule login:
#!/bin/sh

: init
PROGNAME=`basename $0`
TMPFILE=`mktemp -t $PROGNAME`
trap 'rm -f $TMPFILE' EXIT
vagrant ssh-config > $TMPFILE
CSSH="csshX --ssh_args='-A -F $TMPFILE'"

: enumerate
CONTROLLERS=`awk '($1 == "Host" && $NF ~ /^controller/) { print $NF }' $TMPFILE`
COMPUTE_NODES=`awk '($1 == "Host" && $NF ~ /^compute/) { print $NF }' $TMPFILE`

# invocation is "controller", "compute", or "all"
case "$1" in
    all)
        eval $CSSH ${CONTROLLERS} ${COMPUTE_NODES} ;;
    con*)
        eval $CSSH ${CONTROLLERS} ;;
    *)
        eval $CSSH ${COMPUTE_NODES} ;;
esac

I don't see us implementing anything of this nature in the near future.  At least not within molecule.  However, you should be able to retain your wrapper script by updating your script with:
VAGRANT_VAGRANTFILE=molecule/vagrantfile vagrant ssh-config > $TMPFILE


Fixed License Link Typo

Fixed License Link Typo
The license link in the README was incorrectly labeled as "Licence" instead of "License." This PR corrects the typo, ensuring the link works as intended.

Thank you for your attention to our package! But this pull request does not make much sense because both variants are correct. Will wait your further contributions.

@Budalebah my apologies. Thank you for the pull request.

Thank you ser


Fix references to LTLMoP Github organization

@johnyf , whenever you get the chance, I suggest that you fix the references to LTLMoP since the organization has been renamed to https://github.com/VerifiableRobotics
Github will automatically redirect them, so this is not urgent.

Thanks for the update, I relied on the redirects. As of cdb6d03194c1ee41718b05d27a9db9b6152cfb6c, slugs is not used.

Roger. I may give omega a try (pure Python :heart: )


Strange errors from HASS when running automactions/scripts, even with no adaptive lighting lights.

Home Assistant Adaptive Lighting Issue Template
Bug Reports
If you need help with using or configuring Adaptive Lighting, please open a Q&A discussion thread here instead.
Before submitting a bug report, please follow these troubleshooting steps:
Please confirm that you have completed the following steps:

[X] I have updated to the latest Adaptive Lighting version available in HACS.
[X] I have reviewed the Troubleshooting Section in the README.
[X] (If using Zigbee2MQTT) I have read the Zigbee2MQTT troubleshooting guide in the README.
[X] I have checked the V2 Roadmap and open issues to ensure my issue isn't a duplicate.

Required information for bug reports:
Please include the following information in your issue.
Issues missing this information may not be addressed.

Debug logs captured while the issue occurred. See here for instructions on enabling debug logging:

2023-07-26 09:21:53.110 ERROR (MainThread) [homeassistant.components.automation.ep1_1_control] While executing automation automation.ep1_1_control
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/components/automation/__init__.py", line 659, in async_trigger
    await self.action_script.async_run(
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/script.py", line 1569, in async_run
    return await asyncio.shield(run.async_run())
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/script.py", line 420, in async_run
    await self._async_step(log_exceptions=False)
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/script.py", line 470, in _async_step
    self._handle_exception(
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/script.py", line 493, in _handle_exception
    raise exception
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/script.py", line 468, in _async_step
    await getattr(self, handler)()
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/script.py", line 703, in _async_call_service_step
    response_data = await self._async_run_long_action(
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/script.py", line 665, in _async_run_long_action
    return long_task.result()
           ^^^^^^^^^^^^^^^^^^
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/core.py", line 1965, in async_call
    response_data = await coro
                    ^^^^^^^^^^
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/core.py", line 2005, in _execute_service
    return await cast(
           ^^^^^^^^^^^
  File "/home/homeassistant/.homeassistant/custom_components/adaptive_lighting/hass_utils.py", line 46, in service_func_proxy
    await intercept_func(call, data)
  File "/home/homeassistant/.homeassistant/custom_components/adaptive_lighting/switch.py", line 1939, in _service_interceptor_turn_on_handler
    adaptive_switch = _switch_with_lights(self.hass, [entity_id])
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/homeassistant/.homeassistant/custom_components/adaptive_lighting/switch.py", line 307, in _switch_with_lights
    switches = _switches_with_lights(hass, lights)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/homeassistant/.homeassistant/custom_components/adaptive_lighting/switch.py", line 291, in _switches_with_lights
    switch._expand_light_groups()
  File "/home/homeassistant/.homeassistant/custom_components/adaptive_lighting/switch.py", line 977, in _expand_light_groups
    all_lights = _expand_light_groups(self.hass, self.lights)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/homeassistant/.homeassistant/custom_components/adaptive_lighting/switch.py", line 624, in _expand_light_groups
    manager = hass.data[DOMAIN][ATTR_ADAPTIVE_LIGHTING_MANAGER]
              ^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'data'

Your Adaptive Lighting configuration:

adaptive_lighting:
- name: "Frontdoor AL"
  lights: [light.esp6_led_ring]
  prefer_rgb_color: false
  transition: 30
  initial_transition: 0.5
  interval: 300
  min_brightness: 60
  max_brightness: 100
  min_color_temp: 3300
  max_color_temp: 6000
  sleep_brightness: 10
  sleep_color_temp: 2500
  sunrise_time: "06:45:00" # override the sunrise time
  sunrise_offset: "00:00:00"
  sunset_time: "19:30:00"
  sunset_offset: "00:00:00" # in seconds or '00:15:00'
  take_over_control: true
  detect_non_ha_changes: false
  only_once: false
- name: "Our Bedroom AL"
  lights: [light.led_wheel]
  prefer_rgb_color: false
  transition: 30
  initial_transition: 0.5
  interval: 300
  min_brightness: 40
  max_brightness: 100
  min_color_temp: 3300
  max_color_temp: 5500
  sleep_brightness: 10
  sleep_color_temp: 2500
  sunrise_time: "06:45:00" # override the sunrise time
  sunrise_offset: "00:00:00"
  sunset_time: "19:30:00"
  sunset_offset: "00:00:00" # in seconds or '00:15:00'
  take_over_control: true
  detect_non_ha_changes: false
  only_once: false
- name: "Up Lighter AL"
  lights: [light.led_uplighter]
  prefer_rgb_color: false
  transition: 30
  initial_transition: 1
  interval: 300
  min_brightness: 75
  max_brightness: 100
  min_color_temp: 2500
  max_color_temp: 5000
  sleep_brightness: 10
  sleep_color_temp: 2500
  sunrise_time: "06:45:00" # override the sunrise time
  sunrise_offset: "00:00:00"
  sunset_time: "19:30:00"
  sunset_offset: "00:00:00" # in seconds or '00:15:00'
  take_over_control: true
  detect_non_ha_changes: false
  only_once: false
- name: "Kitchen RGB AL"
  lights: [light.kitchen_led]
  prefer_rgb_color: true
  transition: 30
  initial_transition: 1
  interval: 300
  min_brightness: 25
  max_brightness: 100
  min_color_temp: 2500
  max_color_temp: 4750
  sleep_brightness: 10
  sleep_color_temp: 2500
  sunrise_time: "06:45:00" # override the sunrise time
  sunrise_offset: "00:00:00"
  sunset_time: "19:30:00"
  sunset_offset: "00:00:00" # in seconds or '00:15:00'
  take_over_control: true
  detect_non_ha_changes: false
  only_once: false
- name: "WinDoor RGB AL"
  lights: [light.wled_window,light.wled_door]
  prefer_rgb_color: false
  transition: 30
  initial_transition: 1
  interval: 300
  min_brightness: 25
  max_brightness: 100
  min_color_temp: 2500
  max_color_temp: 4750
  sleep_brightness: 10
  sleep_color_temp: 2500
  sunrise_time: "06:45:00" # override the sunrise time
  sunrise_offset: "00:00:00"
  sunset_time: "19:30:00"
  sunset_offset: "00:00:00" # in seconds or '00:15:00'
  take_over_control: true
  detect_non_ha_changes: false
  only_once: false
- name: "TV WLED AL"
  lights: [light.wled_tv]
  prefer_rgb_color: true
  transition: 30
  initial_transition: 1
  interval: 300
  min_brightness: 20
  max_brightness: 25
  min_color_temp: 2500
  max_color_temp: 4750
  sleep_brightness: 10
  sleep_color_temp: 2500
  sunrise_time: "06:45:00" # override the sunrise time
  sunrise_offset: "00:00:00"
  sunset_time: "19:30:00"
  sunset_offset: "00:00:00" # in seconds or '00:15:00'
  take_over_control: true
  detect_non_ha_changes: false
  only_once: false

(If using Zigbee2MQTT), provide your configuration files (remove all personal information before posting):

devices.yaml
groups.yaml
configuration.yaml ⚠; Warning REMOVE ALL of the PERSONAL INFORMATION BELOW before posting ⚠;

mqtt: server:
mqtt: user:
mqtt: password:
advanced: pan_id:
advanced: network_key:
anything in log_syslog if you use this

Brand and model number of problematic light(s)

Describe the bug and how to reproduce it:
Run any automation or script that changes state of a light, weather the light is in the adaptive lighting config or not.

Steps to reproduce the behavior:
Run any automation or script that changes state of a light, weather the light is in the adaptive lighting config or not.

This is the EP1-1 automation
- alias: EP1-1 Control
  initial_state: 'true'
  trigger:
  - platform: state
    entity_id: binary_sensor.ep1_1_occupancy
  action:
    - service_template: >-
        {% if trigger.to_state.state == 'on' %}
          light.turn_on
        {% else %}
          light.turn_off
        {% endif %}
      entity_id: light.ep1_1_status_led

This seems to be httpcore==0.17.1 kinda issue as i'm running unsupported ubuntu pip install.


DNS Resolver (Unbound) not working for me

This is an excellent project.   I got all the exmaples to work except for the this one.   terraform says the plan works but I cannot see the results in the GUI or the config file.   Is there a trick to viewing this?

Did you add include-toplevel: /var/unbound/conf.d/* to the DNS Resolver custom options input? The pfsense_dnsresolver_configfile resource simply writes files to that file path and upon apply Unbound includes the contents as a part of the main config.

Sorry, I should have read your docs more closely.  Tried may times with your v0.3 and no dice.   ff success but no resources to see.
I think upgraded to your v0.4 and getting some error messages around this:
INPUT:
pfsense_dnsresolver_configfile.example will be created

resource "pfsense_dnsresolver_configfile" "example" {

apply   = true
content = <<-EOT
server:
local-zone: "subdomain.example.com" redirect
local-data: "subdomain.example.com 3600 IN A <IP_ADDRESS>"
EOT
name    = "wildcard-record-example"
}
OUTPUT:
Error: Error creating config file
│
│   with pfsense_dnsresolver_configfile.example,
│   on main.tf line 66, in resource "pfsense_dnsresolver_configfile" "example":
│   66: resource "pfsense_dnsresolver_configfile" "example" {
│
│ unexpected error: failed to create config file, unable to parse config file
│ response, client validation, config file name must only consist of lowercase
│ alphanumeric characters (with dashes)

Hmmm... state rm the resource and try again. I have not documented this, but any release below v1.0.0 is considered breaking. Assuming you are able to then get the resource to create/update, you can test your change by running the command nslookup one.two.three.subdomain.example.com with an expected response of <IP_ADDRESS>.

Magic!  thank you.
nslookup one.two.three.subdomain.example.com
Server:		<IP_ADDRESS>
Address:	<IP_ADDRESS>#53
Name:	one.two.three.subdomain.example.com
Address: <IP_ADDRESS>


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target/pull/115 is merged into live branch.
Auto archive content to https://github.com/OPS-E2E-PPE/docs-archive-test-target.git

Docs Build status updates of commit 35fa720:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Archive_master_2019-09-30-03-02-26 has been deleted or has been force pushed: fatal: Couldn't find remote ref Archive_master_2019-09-30-03-02-26

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Rule for checking name of input of a mutation end with "Input" only at top level

Allow
type Mutation {
createEmployee(input: EmployeeInput)
}

input EmployeeInput {
id: String,
details: EmployeeDetails
}

input EmployeeDetails {
name: String
}

This rule is what are you looking for? https://the-guild.dev/graphql/eslint/rules/input-name

No @B2o5T, the rule that you pointed out is checking for all occurrences of inputs. We want to check it only for top level input which is defined within mutation in parenthesis. If you see in the example, our input is nested in which EmployeeDetails is also an input but we don't want to apply this rule on EmployeeDetails but want to apply on the top level input which is EmployeeInput.
EmployeeInput
   - id
   - details
        - name

@B2o5T, do you have plan to implement this?

@dimaMachina , also the rule is checking for <mutationName>Input, it would be good if rule can be configured for <anyName>Input but check that input name ends with Input. Any plans to implement this?

@gituserjava accepted, maybe via a new option for an existing rule?

yes I think we can add an option to existing rule.


Immediately create order members after transactions are created

Resolves https://github.com/opencollective/opencollective/issues/7075
Moving above await sendThankYouEmail(order, transaction); should solve the issue and should also explain why it always happens with PayPal and not with Stripe.
Either way, I'm executing the side effects in parallel immediately after transactions are created and making it consistent across PayPal and Stripe.

and should also explain why it always happens with PayPal and not with Stripe.

This was explained in https://github.com/opencollective/opencollective/issues/7075#issuecomment-1798006750


Update library loading error message [ECR-3035]

Overview
Update the error message in case of library loading failure
so that it contains up-to-date instructions
for a packaged application.
Also, throw an exception with a full error message to make it
available even if no logging is configured.

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

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

Coverage decreased (-0.2%) to 85.61% when pulling 8da08a8cde1f37cd5b9c81245f5e79e89b21e589 on dmitry-timofeev:update-loading-instructions-ECR-3035 into 3eb3cb7a7585092df7753c233c3b66f59c2bb2f8 on exonum:master.


chore: added migration tests

Description of changes

added test for deletion cases

Issue #, if available

Description of how you validated changes
Checklist

[ ] PR description included
[ ] yarn test passes
[ ] Tests are changed or added
[ ] Relevant documentation is changed or added (and PR referenced)
[ ] New AWS SDK calls or CloudFormation actions have been added to relevant test and service IAM policies
[ ] Pull request labels are added

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

:exclamation: No coverage uploaded for pull request base (feat/replace-lambda-callouts@affa7ad). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@                       Coverage Diff                       @@
##             feat/replace-lambda-callouts   #12683   +/-   ##
===============================================================
  Coverage                                ?   47.75%
===============================================================
  Files                                   ?      847
  Lines                                   ?    38513
  Branches                                ?     7904
===============================================================
  Hits                                    ?    18391
  Misses                                  ?    18488
  Partials                                ?     1634

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Do not automatic cancel job please!

Print lot of photos.
In progress, printer ink empty.
Nothing stock of ink.
Order ink, arrived and received in after 2 days.
Set ink to the printer, then printer is hung-up.
Check cups Web interface, then job is automatic cancelled.
Drop about 100yen of a photo paper and printed ink.
Mottainai!
Do not automatic cancel job please!

You may adjust server settings, if this is required for you:
MaxJobTime seconds
    Specifies the maximum time a job may take to print before it is canceled.
    Set to "0" to disable cancellation of "stuck" jobs. The default is "10800" (3 hours).

If you set PreserveJobFiles you can also prevent from erasing the job files from your server. In this case, even if the job gets canceled, you can just restart it.


UCF101

Hi, Can you provide UCF101 configs?

To finetune the UCF101 with Kinetics400 pretrained model, our configs are similar to the Kinetics400. The only difference is the learning rate and learning schedule as follows.
optimizer
optimizer = dict(type='SGD', lr=0.001, momentum=0.9,
weight_decay=0.0005, nesterov=True)
optimizer_config = dict(grad_clip=dict(max_norm=40, norm_type=2))
learning policy
lr_config = dict(
policy='step',
step=[10, 20])
total_epochs = 25


update vite to 2.3.6

Before submitting the PR, please make sure you do the following

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[ ] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpx changeset and following the prompts

clean update to 2.3.6, superseeds https://github.com/sveltejs/kit/pull/1622

Tests pass, deploy failures seem unrelated, so I think this is good to merge


fix(aboutmodal): add content body wrapper

fixes https://github.com/patternfly/patternfly-next/issues/1771

Deploy preview for pf-next ready!
Built with commit 0e758c8c0a0523494c10d2d7b63612c4e4eb2b96
https://deploy-preview-1772--pf-next.netlify.com

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Increase code coverage to >=80% on Quest module

Describe the Issue
The current ranking is at ~54% for the Quest module on Codcov

[ ] 1.  We need to add code coverage reporting for the quest module codebase.
[ ] 2.  Fix failing/flakey tests to be able to add/improve coverage percentage
[ ] 3.  Fix ignored tests
[ ] 4.  Go through the individual tests and in some cases refactor the code.
[ ] 5.  Write more tests on the Quest module to increase its code coverage

@ahsanbhatti49 kindly note that I have renamed branch 1894-increase-code-coverage-to->80 to 1894-increase-code-coverage-to-more-than-80, mainly because I have received some reports that > symbol doesn't work on windows


How can i run it?

just installed the app,how i start it?
theres no launcher,i cant start it on cmd or python terminal

Hi, please just run it into your terminal:
computerassistant

Hi can you try this python script. Your error caused by your python installation actually (Adding Path).
@joshcheic @MaelMatos @dannylank
from gpt_computer_assistant import start

start()


Allow user choose frequency for loading new photos

Would be cool to have an option which would let use use the same image the whole day.
Maybe you could also add a "quote of the day" a la Momentum Dash?
Nice extension btw!

Thank you! In a future release there would be an option to load photos every day or every hour in addition to the current behaviour.
For now, I don't have any plans to add quotes to the extension. But let's see if there are more requests for this.

https://github.com/ayoisaiah/stellar-photos/commit/7a5bc8787eddfef05bd816f3a4ee75cd795aa4ac


Implement computeDryBaseline for RenderChip

Also, use getDryLayout for the first pass of the label layout.
The computeDryBaseline stuff doesn't have a test because there're asserts making sure it returns the same result as computeDistanceToActualBaseline. I have tried adding +1 to the return expression and flutter test fails.
Pre-launch Checklist

[ ] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[ ] I read the Tree Hygiene wiki page, which explains my responsibilities.
[ ] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[ ] I signed the CLA.
[ ] I listed at least one issue that this PR fixes in the description above.
[ ] I updated/added relevant documentation (doc comments with ///).
[ ] I added new tests to check the change I am making, or this PR is test-exempt.
[ ] I followed the breaking change policy and added Data Driven Fixes where supported.
[ ] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

The _RenderDecoration class does not support dry layout.

Looks like this will have to wait until _RenderDecoration.computeDryBaseline is implemented.


[BUG, RR2] Inconsistent worker list under load

I tried this code:
rr workers -i

I expected to see this happen:
See all available workers.
Instead, this happened:
Workers of [activities]:
+---------+-----------+---------+---------+--------------------+
|   PID   |  STATUS   |  EXECS  | MEMORY  |      CREATED       |
+---------+-----------+---------+---------+--------------------+
|   38776 | ready     |       0 | 28 MB   | 1 minute ago       |
|   59188 | ready     |       0 | 28 MB   | 1 minute ago       |
|   28228 | ready     |       0 | 28 MB   | 1 minute ago       |
|   30288 | ready     |       0 | 28 MB   | 1 minute ago       |
|     688 | ready     |       0 | 28 MB   | 1 minute ago       |
|   45720 | ready     |       0 | 28 MB   | 1 minute ago       |
|   24028 | ready     |       0 | 28 MB   | 59 seconds ago     |
|    6260 | ready     |       0 | 28 MB   | 59 seconds ago     |
|   41024 | ready     |       0 | 28 MB   | 59 seconds ago     |
|   50300 | ready     |       1 | 31 MB   | 59 seconds ago     |
+---------+-----------+---------+---------+--------------------+
Workers of [workflows]:
+---------+-----------+---------+---------+--------------------+
|   PID   |  STATUS   |  EXECS  | MEMORY  |      CREATED       |
+---------+-----------+---------+---------+--------------------+
+---------+-----------+---------+---------+--------------------+

Missing workflow worker (sounds like it's under load).
The version of RR used: v2.0.0-beta25

Fixed with new worker container by providing a copy of the pointers to the actual workers to RO (read-only) operations like workers -i.

@wolfy-j Please confirm that the bug was fixed in the latest RC.2

The bug gone. List looks stable now.


fix ingress upgrade from v1beta to v1 by adjusting the changes according to: https://kubernetes.io/docs/concepts/services-networking/ingress/

#45 contained a error. It does not update some naming which was changed from v1beta to v1.
and resulted in an error:
[ValidationError(Ingress.spec.rules[0].http.paths[0].backend): unknown  field "serviceName" in io.k8s.api.networking.v1.IngressBackend,  ValidationError(Ingress.spec.rules[0].http.paths[0].backend): unknown  field "servicePort" in io.k8s.api.networking.v1.IngressBackend,  ValidationError(Ingress.spec.rules[0].http.paths[0]): missing required  field "pathType" in io.k8s.api.networking.v1.HTTPIngressPath]

@georglauterbach my last PR contained a error, this PR will fix the problem, can you have a short look at it ?

LGTM, thank you for supplying the fix!


Update the wiki

Check all entries of the wiki if they need to be updated. Add more examples and more explanations. Make it easier to get all basic questions answered. Add a FAQ

Hope that will help you guys to get started easier 👍

Feel free to add your top 3 questions so I don't forget them in the FAQ

I mentioned it in my multiple pool ticket, but I think adding the proper way to restart a game to the FAQ would be useful.

I'd probably also add:

Test Teardown
An explanation of the various OnEntity behaviors

Added a new section for Attributes.

Updated Attributes to reflect the latest release.

Awesome! Thanks for your help

It would be nice to have at least a single non-unity example project.

No problem, I think it would be nice if the project had some solid docs. Would you like to use something like ReadTheDocs? I could start working on that.

Here's a mockup of what I have in mind. It would also share the same file with the wiik, that way both the wiki and the site get updated at the same time. Let me know if you like the idea.

@carlos-avila Nice! We can use that in the future

It's cool but i prefer this wiki because text is CENTERED in the screen
I have a large screen ....

It would be helpful for the wiki to include more info on;

Features (vs Systems)

I second the motion for a non-unity based example. I cannot figure this thing out 😢

I second the request for a non-Unity example project, even one sans graphics that simply outputs to a log file.


How to send it to new contacts not present in recent chats?

Hey,
I have some new contacts, whom I haven't sent anything before so they are not appearing on the feed. But for this program, it is able to detect people who are present on the feed and not the contacts. So how do I change that thing?

You have to search the contact person name or person phone number in the search input and then search.. wait for some time, till the search result appears.


Supporting host rewrites with the dynamic forward proxy

We have a use case for the dynamic forward proxy in which we want to rewrite the host and use the rewritten host as the upstream endpoint. The following won't work:

set a host_rewrite on the RouteAction -- it's apparently too late, so it doesn't take effect
removing/adding the :authority or host headers -- that's not allowed

Does this sound like a reasonable use case? If so, I'll see what it takes to make option 1) work. Thoughts?
cc: @mattklein123  @fishcakez

If you want to do this with no code changes I think you could just install a small Lua filter to change the host/authority in front of the dynamic proxy filter and it would probably work.
The alternative I think would probably be supporting the host_rewrite route option directly inside of the dynamic proxy filter? This is a little strange in the sense that the router would try to rewrite it again to the already rewritten value, but I think it would work.

Yeah thought about the filter way in front of the dynamic proxy (C++ tho, not Lua), but if possible I'd rather have host_rewrite just work.  I'll take a look, thanks!

Hi @rgs1
can you please share sample filter


Bump node and buildx

Trying to get frontend-image to work in the arm64 build that is failing in deploy. Also sets a 90m timeout since the build is running the full default 360m (6hrs) until bailing.

Hoping this fixes the AMD64 build fails in deploy https://github.com/nexodus-io/nexodus/actions/workflows/deploy.yml

LGTM


"Ploscoș" commune is listed in the drop-down menu

Description:
The commune is listed in the drop-down menu according to the law
Preconditions : the website (https://peviitor-ro.github.io/ui.orase/) is up and runing. After every step delete the text you typed from the search bar.

Step 1:
Write in the search bar "Ploscoș"
Expected results:
The location appears in the drop-down menu as "Comuna Ploscoș, CLUJ"


[MINOR] docs: modify the default value of rss.coordinator.select.partition.strategy

What changes were proposed in this pull request?
Modify the default value of rss.coordinator.select.partition.strategy in docs.
Why are the changes needed?
The current document is wrong.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
No need

LGTM, maybe we should back port this to branch 0.9.

Done


#638: Fix for serializing DNS packet panic with empty authority name

Addresses submitted issue #638.
A recent commit (https://github.com/google/gopacket/commit/65567310658fb392f4408da7d375b10e7343eb83#diff-4d9bce33bc5ccd203264657a890010dc) computeSize in dns.go adds an 11 or 12 byte offset to account for packet fields based on if the resource record Name field is empty or not.  This function is used to calculate the required destination buffer size for the serialized data.  However when encoding the data during serialization, the encode function in dns.go would always report it had consumed 12 bytes (1 + 11).  This was causing the caller of the encode function to incorrectly advance the offset by 1 extra byte each time an authority resource record was encoded having an empty Name field and would eventually cause a panic for an "index out of range" condition.
A simple adjustment was made to the code to ensure the number of consumed bytes being returned is correct in all cases to prevent the panic.

Thanks for the fix.


Improved kCAS

Racy threads cooperate to complete the kCAS. See #1.

Sorry I didn't get a chance to look at this for so long.
This looks like an improvement, but still not quite lock-free. If I
understand correctly, only the thread that started the kCAS can perform the
final commit or rollback of a transaction, which means that other threads
may still block waiting for another thread to acknowledge that its
transaction is finished (and set the state back to Idle).
Stephen
On Thu, Sep 10, 2015 at 5:33 PM, KC Sivaramakrishnan <
<EMAIL_ADDRESS>wrote:

Merged #5 https://github.com/ocamllabs/reagents/pull/5.
—
Reply to this email directly or view it on GitHub
https://github.com/ocamllabs/reagents/pull/5#event-406173268.

Right. The current implementation does rely on a specific thread making progress. The protocol should allow any racing thread, not just the one that initiated the transaction, to complete the transaction by performing the commit (InProgres _ to Idle new_value) or abort (InProgress _ to Idle old_value).


Problem with hot module reloading & createGlobalStyle

System:

OS: macOS Sierra 10.12.6
CPU: x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
Memory: 105.95 MB / 16.00 GB
Shell: 3.2.57 - /bin/bash

Binaries:

Node: 10.1.0 - ~/.nvm/versions/node/v10.1.0/bin/node
Yarn: 1.6.0 - /usr/local/bin/yarn
npm: 6.1.0 - ~/.nvm/versions/node/v10.1.0/bin/npm
Watchman: 4.7.0 - /usr/local/bin/watchman

npmPackages:

styled-components: ^4.0.0-beta.10 => 4.0.0-beta.10

Hi there, not sure if I would call this a bug but thought it was worth pointing out.
I have started using the createGlobalStyle function in v4, but have run into some issues relating to Hot Module Reloading. Whenever a reload is triggered by something outside the createGlobalStyle function, all of its comprising css rules are lost. Here is a simple project which demonstrates this:
https://github.com/frednomoon/styled-hot-reload
It seems from this behaviour that its necessary to reload the module containing the global styles every time the page changes. But, of course, this doesn't happen unless you actually change something inside that module.
I'm guessing its probably possible to solve this with some additional config in my bundler, but obviously would be great to avoid things like that.

Interesting. I'll try and look tonight. There have been a lot of annoying edge cases around HMR lately :/

Ok figured it out. Vanilla HMR replaces the whole file, which is a problem because we keep a counter for cGS to know when to remove global styles when all instances have been removed. If you use react-hot-loader in conjunction with parcel's HMR it works correctly.
import React from 'react';
import ReactDOM from 'react-dom';
import { hot } from 'react-hot-loader';

import styled, { createGlobalStyle } from 'styled-components';

const GlobalStyle = createGlobalStyle`
  span {
    color: red;
  }
`;

const Container = styled.div`
    display: flex;
    padding: 100px;
    justify-content: center;
    > span {
        font-size: 2rem;
    }
`;

const App = hot(module)(() => (
    <Container>
        THIS SHOULD BE RED
        <GlobalStyle />
    </Container>
));

ReactDOM.render(<App />, document.getElementById('app'));

thanks @probablyup this works great now

This happens in Next.js 😕 It's pretty annoying especially since I can't just add react-hot-loader I don't think... /cc @timneutkens
Will reopen this, maybe there's a better way to make createGlobalStyle HMR-able from our side?

I think we need to figure out how to refactor away the counting mechanism.
Part of the issue is the old component gets unmounted late during HMR, and
the new component has already rendered, so it sees a count of one due to
the HMR reset and kills the styles.
On Tue, Oct 9, 2018 at 9:10 AM Max Stoiber<EMAIL_ADDRESS>wrote:

Reopened #2074
https://github.com/styled-components/styled-components/issues/2074.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/styled-components/styled-components/issues/2074#event-1892942779,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAiy1h7jqMmnx--TdJDKNzd0eBwO-76qks5ujK5AgaJpZM4XNMyT
.

Give 4.0.0-beta.11.1-hmr2 a shot. It's the change here: https://github.com/styled-components/styled-components/pull/2084

This still happens to me with<EMAIL_ADDRESS>

This happens to me too with Gatsby JS with the same version as @vitalybe. Re-opening issue :)

This is happening to me as well :(
<EMAIL_ADDRESS>

I am also having an issue with RHR.
const Test = styled.div<{ bgColor: string }>`
    background-color: ${({ bgColor }) => bgColor};
`;

Test.defaultProps = {
    bgColor: 'yellow'
};

Changing the default props does not re-render the component and it gets stuck no longer updating at all at that point.
However, hot-reloading is working fine in my project for other components where I change the defaultProps. The following reloads just fine:
const Test = ({ name }: { name: string }) => Hello ${name}!`;
Test.defaultProps = {
name: 'Rick'
};`
To me this tells there is something up with Styled-Components.
Any ideas? Could it be the same problem as OP?

This is happening to me as well :(, using Razzle
<EMAIL_ADDRESS>

As my collegue @gl0gl0 mention above. We where having this styles bug on localhost, using razzle.
We where also having this warning on our console that said "Uncaught Error: only one instance of babel-polyfill is allowed". So we delete the import for babel from our hydrate() file on the client side, and this change fixed the styles issue!
Hopefully this can help so users with the same problem. Check that you don't have two babel-polyfill instances being loaded.

This is happening with<EMAIL_ADDRESS>Changing the padding prop and saving triggers a hot reload, but the padding CSS property stays the same.
import React from 'react';
import ReactDOM from 'react-dom';
import styled from 'styled-components';

const Title = styled.h1`
  padding: ${props => props.padding ? props.padding : null};
`;

const App = () => (
  <Title padding="0 40">I am a title</Title>
);

if ((module as any).hot) {
  (module as any).hot.accept();
}

ReactDOM.render(<App />, document.getElementById('app'));

You need to supply a unit
On Tue, May 7, 2019 at 2:17 PM Anthony Langford<EMAIL_ADDRESS>wrote:

This is happening with<EMAIL_ADDRESS>Changing the padding prop
and saving triggers a hot reload, but the padding CSS property stays the
same.
import React from 'react';
import ReactDOM from 'react-dom';
import styled from 'styled-components';
const Title = styled.h1  padding: ${props => props.padding ? props.padding : null};;
const App = () => (
I am a title
);
if ((module as any).hot) {
(module as any).hot.accept();
}
ReactDOM.render(, document.getElementById('app'));
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/styled-components/styled-components/issues/2074#issuecomment-490219993,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAELFVVI5V7TNUJU34TIUWDPUHIWPANCNFSM4FZUZSJQ
.

A unit was supplied in the tested code. The issue remains.

Does anyone have any temporary work arounds for this? This is also still happening for me using<EMAIL_ADDRESS>

Any update on this? Same issue with storybook.

Any update on this? Same issue with storybook.

Same issue here too with Storybook

Please stop with the "same issue" stuff - provide a fresh reproduction and we'll look into it

Please stop with the "same issue" stuff - provide a fresh reproduction and we'll look into it

Sorry about that. The issue has been resolved, I just had to upgrade to<EMAIL_ADDRESS>Cheers.

FYI: while it's fixed in 4.3.2, it seems to persist in v5.0.0-beta.8.

FYI: while it's fixed in 4.3.2, it seems to persist in v5.0.0-beta.8 (both in conjunction with GatsbyJS).

Same here...  "styled-components": "^5.0.0-beta.8" is working properly, thanks!

Yup, can verify that it's not working in v5.0.0-beta.8.

any solution guys or, maybe, workarounds? (Except manual reloading =) )

Gatsby Fix
This is the solution to fix that actually provided by gatsby but it's not easy to find it.
After Adding to gatsby-config.js
resolve: `gatsby-plugin-styled-components`,
      options: {
        // Add any options here
      },
    },

and adding to package.json as dependencies  those fixes the hard reload issue on export.
"gatsby-plugin-styled-components": "^3.3.0",   "styled-components": "^5.1.0"
also added
"devDependencies": {     "babel-plugin-styled-components": "^1.10.7"   }
Drop Like if that helps someone that uses gatsby and styled-components when questions let me know.

Still happening :/

I did read the whole issue here, but dont quite know if thats the problem i have as well.
Having a styled-component wrapped component passed to hot() reloads the whole tree even components which are next to the styled component rather than within.
I commented createGlobalStyle out but that does not have an effect in any way. Should i make a new issue here?
Or is this related to it?
Greetings, Alex

@frednomoon Could you try out styled-components@test and let me know how it goes? (v5)


Failure to connect to cameran when invalid adapter in mix

I have an invalid network adapter in the mix of network adapters which causes a connection attempt to the camera to fail.  This is a situation that will be relatively common.  I put in the following fix
    private async void Search(string st, TimeSpan? timeout = null)
    {
        Log("Search - " + st);

        var ssdp_data = new StringBuilder()
            .Append("M-SEARCH * HTTP/1.1").Append("\r\n")
            .Append("HOST: ").Append(MULTICAST_ADDRESS).Append(":").Append(SSDP_PORT.ToString()).Append("\r\n")
            .Append("MAN: ").Append("\"ssdp:discover\"").Append("\r\n")
            .Append("MX: ").Append(MX.ToString()).Append("\r\n")
            .Append("ST: ").Append(st).Append("\r\n")
            .Append("\r\n")
            .ToString();

        // MP! changed: added next line
        ConnectionProfile connectionProfile = NetworkInformation.GetInternetConnectionProfile();

        // was: only this
        var adapters = TargetNetworkAdapters ?? await GetActiveAdaptersAsync().ConfigureAwait(false);

        // added: next line so network connection adapter is scanned also
        adapters.Add(connectionProfile.NetworkAdapter);

...

Thanks for the report.
I have a question and a request.

What does "invalid" adapter mean here? Just means that Locana fails to discover camera on the adapter in such situation?
Can you check how is the network adapter classified in the foreach block of SsdpDiscovery#GetActiveAdaptersAsync()?
https://github.com/kazyx/kz-ssdp-discovery/blob/master/Project/SsdpDiscovery.cs#L255

The problem is during the enumeration phase of adapters.  After this call:
        var adapters = TargetNetworkAdapters ?? await GetActiveAdaptersAsync().ConfigureAwait(false);

The list of adapters contains two items on the system with the problem.  Neither of those adapters is associated with my WiFi connection.  That is the problem.  The enumeration was short circuited because of one of the Virtual network adapters.  There is a Microsoft note about this well known issue out there somewhere.
The fix I provided isn't quite right.  The code should check to see if one of the adapters in the list returned from the enumeration corresponds to the WiFi adapter.  If the WiFi adapter is not in the list, it should be added.  I'm not that good with HashSets, so I did not know of a nice way to do linq style query.
Here's a simplistic solution to this problem that is logically correct.
        // Get a reference that holds the systems WiFi adapter.
        ConnectionProfile connectionProfile = NetworkInformation.GetInternetConnectionProfile();

        // Get a list of adapters.
        var adapters = TargetNetworkAdapters ?? await GetActiveAdaptersAsync().ConfigureAwait(false);

        // If the WiFi adapter is no in this list for some reason, add it.
        bool HasWiFiAdapter = false;
        foreach(var adapter in adapters)
        {
            if (adapter.NetworkAdapterId == connectionProfile.NetworkAdapter.NetworkAdapterId)
            {
                HasWiFiAdapter = true;
                break;
            }
        }

        if (!HasWiFiAdapter)
            adapters.Add(connectionProfile.NetworkAdapter);

If you know of a way to do a linq statement against the hashset, that would read more nicely since efficiency isn't really needed here.

One further note.  Even though this is not something you are seeing on your systems, adding this extra bit will save you a lot of device connection headaches down the road.  If all is good, the code does nothing in its revised form.

NetworkInformation.GetInternetConnectionProfile(); may return mobile internet connection adapter, and it should be avoided to send SSDP packet into such networks in most cases.
I want to know the "fact" how the adapter was short circuited in your environment at first.
Only the following three patterns should be checked.

https://github.com/kazyx/kz-ssdp-discovery/blob/master/Project/SsdpDiscoveryUwp.cs#L135
https://github.com/kazyx/kz-ssdp-discovery/blob/master/Project/SsdpDiscoveryUwp.cs#L147
https://github.com/kazyx/kz-ssdp-discovery/blob/master/Project/SsdpDiscoveryUwp.cs#L150

I hope your report lead us to the better solution.


Queue functions

Sorry if I missed this, but where are the buttons for deleting a task that are in the original program. At least copy this functionality from there. Delete selected, delete everything.
PS +moove up/down single/group

uh, yes. can you try older versions if the buttons are there? not sure when they disappeared?

Older version - i mean ripme-1.


Scroll to click position

When clicking on an element that is not in the screen, chromeless should scroll to that position

Should it just scroll until the entire element is in view or should it scroll past the element - until its at the beginning of the view?

@ericnkatz I think until it's completely in the view. Because currently, we click into the middle of the element


transform much slower in 2.0.1 than 1.9.6

I'm using python 3.6.7 on ubuntu 18.04.1. I installed each version of pyproj via pip install pyproj==x.y.z.
I'm using pyproj via geopandas. I recently upgraded from <IP_ADDRESS> to 2.0.1 and noticed that calls to to_crs which uses pyproj.transform via shapely.ops.transform got much slower.
It seems like there is a large overhead on the call to transform now. When calling transform with large arrays, the difference in less pronounced, but when called on individual coordinates it is quite large.
I tested with individual x,y pairs; arrays of 10 elements each to simulate usage with a "normal" sized geometry; and a test of 1,000,000 elements each which is unrealistic unless you're working just with points and not more complex geometry.
This was the setup:
import pyproj
proj_in = pyproj.Proj({'init': 'epsg:2263'}, preserve_units=True)
proj_out = pyproj.Proj({'init': 'epsg:4326'}, preserve_units=True)

Testing on Individual coordinate pairs, 2.0.1 is ~1000x slower than <IP_ADDRESS>:
%%t -n50 -r50
pyproj.transform(proj_in, proj_out, random.randint(80000, 120000), random.randint(200000, 250000))

<IP_ADDRESS> - 13.9 µs ± 5.82 µs per loop
1.9.6 - 14.6 µs ± 6.52 µs per loop
2.0.0 - 945 µs ± 152 µs per loop
2.0.1 - 8.77 ms ± 915 µs per loop

For arrays of 10 coordinates each:
%%t -n50 -r50
pyproj.transform(proj_in, proj_out, np.random.randint(80000, 120000, 10), np.random.randint(200000, 250000, 10))

1.9.6 - 25.1 µs ± 16.8 µs per loop
2.0.1 - 8.81 ms ± 798 µs per loop

And for arrays of 1,000,000:
%%t -n5 -r5
pyproj.transform(proj_in, proj_out, np.random.randint(80000, 120000, 1000000), np.random.randint(200000, 250000, 1000000))

1.9.6 - 689 ms ± 7.57 ms per loop
2.0.1 - 1.18 s ± 24.9 ms per loop

I wonder if the C lib is just slower?  Don't see that much has changed in the pyproj.transform interface.

Looks like most of the extra time is in setting up the data structures that the new pyproj.transform needs (specifically the TransProj object).  That's why the speed difference goes down as you increase the size of the arrays.

We could allow for a TransProj instance to be created outside of transform, and then re-use it for multiple calls.  Something like this:
import pyproj
proj_in = pyproj.Proj({'init': 'epsg:2263'}, preserve_units=True)
proj_out = pyproj.Proj({'init': 'epsg:4326'}, preserve_units=True)
proj_trans = pyproj.TransProj(proj_in, proj_out)
pyproj.transform2(proj_trans, random.randint(80000, 120000), random.randint(200000, 250000))

The cost of pyproj.transform2 should then be quite similar to pyproj.transform in 1.9.6.

If most of the added overhead is in the instantiation of TransProj then yeah, that would be perfect.

Thoughts using a class based approach? This would mean that the TransProj could be a property on the class and would not need to be generated by the user.
from pyproj import Transformer, Proj

proj_in = Proj({'init': 'epsg:2263'}, preserve_units=True)
proj_out = Proj({'init': 'epsg:4326'}, preserve_units=True)
transformer = Transformer(proj_in, proj_out)
transformer.transform(random.randint(80000, 120000), random.randint(200000, 250000))

Plus, it would be fun to have a class called Transformer.

I like it! Preserves backwards compatibility too.

Sounds great. I think going this route could also make supporting proj pipelines possible:
transformer = Transformer.from_proj(proj_in, proj_out)
transformer = Transformer.from_pipeline("PROJ pipeline projection string")

New version times:
import numpy as np
from pyproj import Transformer

transformer = Transformer.from_proj(2263, 4326)

Test 1:
%%timeit -n50 -r50
transformer.transform(np.random.randint(80000, 120000), np.random.randint(200000, 250000))

36.4 µs ± 7.27 µs per loop (mean ± std. dev. of 50 runs, 50 loops each)

Test 2:
%%timeit -n50 -r50
 transformer.transform(np.random.randint(80000, 120000, 10), np.random.randint(200000, 250000, 10))

The slowest run took 4.05 times longer than the fastest. This could mean that an intermediate result is being cached.
63.5 µs ± 33.6 µs per loop (mean ± std. dev. of 50 runs, 50 loops each)

%%timeit
transformer.transform(np.random.randint(80000, 120000, 10), np.random.randint(200000, 250000, 10))

30.8 µs ± 1.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)

Test 3:
 %%timeit -n5 -r5
transformer.transform(np.random.randint(80000, 120000, 1000000), np.random.randint(200000, 250000, 1000000))

1.94 s ± 21.9 ms per loop (mean ± std. dev. of 5 runs, 5 loops each)

But, this is on my machine. Curious to know how it performs on yours when 2.1.0 is released.

pyproj==2.1.0 is released with the fix. Mind giving it a go?

Closing as the issue has been addressed. Thanks for the report!

Hi @snowman2, we are still seeing severe performance degradation when using transform in pyproj 2.1.1 compared to 1.9.6. The change in execution time seems to be on 2-3 orders of magnitude. We are still investigating, but the only fix so far has been to revert back to 1.9.6.

Just to be sure, you are following the recommendation here: https://pyproj4.github.io/pyproj/html/optimize_transformations.html?

If so, it might be related to #128.

Got a chance to test out the new Transformer functionality and it brings the runtime back down to 1.9.6 levels. Thanks for the quick fix @snowman2!

Fantastic, this is good news!

@andrerav could fix this without reverting?
I just upgraded  pyproj  {1.9.6 (defaults/win-64) -> 2.6.0 (conda-forge/win-64)}
I need to iterate over dataframes with 100ks of rows. In 1.9.6 this would take about 30s. After upgrading, performance drop was orders of magnitude. After applying https://pyproj4.github.io/pyproj/stable/advanced_examples.html#optimize-transformations performance increased a little but is still at 14it/s, so it would take ~2h. Also read #128 but could not solve it from there.

See: https://github.com/geopandas/geopandas/issues/1400

@RadMagnus can you show some code that you are using? Maybe we can spot something that might be wrong (or even ideally a reproducible example that is slow for you)

I must apologise, i can't seem to reproduce my error from yesterday.
I again followed: https://pyproj4.github.io/pyproj/stable/advanced_examples.html#advanced-examples and this time it worked flawlessly.
As i can't rollback to 1.9.6 i cannot reproduce computational speed from that version running the old code. However as docmarionum1 already mentioned speed is up to 1.9.6 levels again. But i will post the old & new code with reproducible examples nontheless.
Thank you for the quick replies!
Code from 1.9.6
running at ~12it./s in 2.6.0
# original imports
import pandas as pd
import geopandas as gpd
from shapely.geometry import Point
from pyproj import transform, Proj
import tqdm
tqdm.tqdm.pandas()

# create test data
import numpy as np
import pandas.util.testing as tm

np.random.seed(444)
df = pd.DataFrame(np.random.rand(1000,2))
df.index = pd.date_range('2020/01/01', freq = 's', periods = df.shape[0])
df = df.rename(columns={0:'longitude', 1:'latitude'})

# lon, lat are given in epsg:4326 and need to be epsg:25832
# specify projections, the 1.9.6 way:
inProj = Proj(init='epsg:4326')
outProj = Proj(init='epsg:25832')

# turn df into geodataframe in epsg_25832 projection
def createGeoDf(df, inProj, outProj):
    # transform coordinates using 'def coordinateTransoform' and store as tuple in series
    df['epsg_25832'] = df.progress_apply(lambda x: coordinateTransform(x['longitude'], x['latitude'], inProj, outProj),axis=1)
    # turn coordinates into geodataframeable geometries using shapely Points
    points = df.progress_apply(lambda row: Point(row.epsg_25832[0], row.epsg_25832[1]), axis=1)
    # create gdf & set crs
    geo_df = gpd.GeoDataFrame(df, geometry=points)
    geo_df.crs = {'init': 'epsg:25832'}
    return geo_df

# project car coordinates from inProj (epsg:4326) to  outProj (epsg:25832)
def coordinateTransform(longitude, latitude, inProj, outProj):
    trans_x, trans_y = transform(inProj,outProj,longitude,latitude)
    return trans_x, trans_y

def main():
    geo_df = createGeoDf(df, inProj, outProj)

if __name__ == "__main__":
    main()

Code for 2.6.0
running at 29375it/s, so as fast as in 1.9.6🙂
# original imports
import pandas as pd
import geopandas as gpd
from shapely.geometry import Point
from pyproj import Transformer, transform
import tqdm
tqdm.tqdm.pandas()

# create test data
import numpy as np
import pandas.util.testing as tm
np.random.seed(444)

df = pd.DataFrame(np.random.rand(100000,2))
df.index = pd.date_range('2020/01/01', freq = 's', periods = df.shape[0])
df = df.rename(columns={0:'longitude', 1:'latitude'})

# lon, lat are given in epsg:4326 and need to be epsg:25832
# specify projections, the 2.6.0 way:
transformer = Transformer.from_crs(4326, 25832)

# turn df into geodataframe in epsg_25832 projection
def createGeoDf(df, transformer):
    # transform coordinates using 'def coordinateTransoform' and store as
    df['epsg_25832'] = df.progress_apply(
        lambda x: coordinateTransform(x['longitude'], x['latitude'], transformer),axis=1)
    # turn coordinates into geodataframeable geometries using shapely Points
    points = df.progress_apply(
        lambda row: Point(row.epsg_25832[0], row.epsg_25832[1]), axis=1)
    # create gdf & set crs
    geo_df = gpd.GeoDataFrame(df, geometry=points)
    geo_df.crs = {'init': 'epsg:25832'}
    return geo_df

# project car coordinates from inProj (epsg:4326) to  outProj (epsg:25832)
def coordinateTransform(longitude, latitude, transformer):
    trans_coord = transformer.transform(longitude, latitude)
    return trans_coord[0], trans_coord[1]

def main():
    geo_df = createGeoDf(df, transformer)

if __name__ == "__main__":
    main()

@RadMagnus good to hear that it is solved!
BTW, what you are doing is very similar to what GeoDataFrame.to_crs provides. But I suppose you are doing the projection first manually before creating the GeoDataFrame, because this might be faster?
That should be generally true (if you do it on the full array instead of applying over the rows), but with your code above, there is actually almost no difference, based on a quick check:
Using your createGeoDf function:
In [29]: %%timeit df = pd.DataFrame(np.random.randn(10000, 2), columns=['longitude', 'latitude'])
    ...: createGeoDf(df, transformer)
    ...:
556 ms ± 7.74 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

Using geopandas to convert to different CRS:
In [33]: %%timeit df = pd.DataFrame(np.random.randn(10000, 2), columns=['longitude', 'latitude'])
    ...: points = df.apply(lambda row: Point(row.longitude, row.latitude), axis=1)
    ...: geo_df = gpd.GeoDataFrame(df, geometry=points, crs={'init': 'epsg:25832'})
    ...: geo_df.to_crs(epsg=25832)
    ...:
559 ms ± 7.85 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

And using the upcoming geopandas release with the optional pygeos dependency (currently in master), it's actually much faster:
In [5]: %%timeit df = pd.DataFrame(np.random.randn(10000, 2), columns=['longitude', 'latitude'])
   ...: geo_df = geopandas.GeoDataFrame(geometry=geopandas.points_from_xy(df['longitude'], df['latitude']), crs="EPSG:4326")
   ...: geo_df.to_crs(epsg=25832)
   ...:
69 ms ± 4.84 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

@jorisvandenbossche
I honestly was just not aware of GeoDataFrame.to_crs in this context. I had the coordinates before having a geodataframe, so converting first and then creating the gdf was just a little more obviuos to me.
I actually looked into pygeos based on your talk https://jorisvandenbossche.github.io/talks/2019_FOSS4GBE_pygeos/#39 before responding to this issue. Mainly to speed up Point in Polygon operations. It looked very promising but then i figured you are going to incorporate it in geopandas 0.8 and decided to wait for that release before re-writing non-urgent code twice. I'm thrilled to see those speedups happening. Thanks for all the effort!


Optimized deb packages installed in Docker

I optimized the Deb packages installed in Docker, making the installation of the development libraries temporary for the installation of the Python requirements and leaving the one package needed to run psycopg permanent.
I have also removed the installation of unnecessary packages. Updating pip is an extra layer that should be addressed by updating the official Python image used as a base.
The final image is thus reduced by 50% for the same features.
Before
(takahe) paulox@net:~/Projects/takahe$ docker image ls
REPOSITORY        TAG                  IMAGE ID       CREATED              SIZE
takahe            latest               c9901e63c721   About a minute ago   980MB
postgres          15-alpine<PHONE_NUMBER>d9   3 days ago           243MB
python            3.11.0-slim-buster   20d9cc821c50   2 weeks ago          121MB

After
(takahe) paulox@net:~/Projects/takahe$ docker image ls
REPOSITORY        TAG                  IMAGE ID       CREATED          SIZE
takahe            latest               28f8faab0ad9   12 seconds ago   528MB
postgres          15-alpine<PHONE_NUMBER>d9   3 days ago       243MB
python            3.11.0-slim-buster   20d9cc821c50   2 weeks ago      121MB

This may be a good candidate for switching to the alpine base image, which would drop the base image size from 50mb to 15mb.

Alpine images for Python it's a bad idea IMO
https://pythonspeed.com/articles/alpine-docker-python/

FWIW this LGTM, but it does make these steps a little harder to parse visually and thus possibly slightly more prone to maintenance errors. No big deal but I would think an alternative might be to use a multi-stage build; we could download and install all the deps in a build stage, install them into a specific target directory, and then in the final stage, copy them from the build stage. In that case, no cleanup is required, because whatever build tools were installed into the build stage are omitted from the final stage.

I tried doing this as a multi-stage build based on the previous one of those, but doing it without having a virtualenv (because I want to use system packages for some Python stuff in future) proved very hard to get working.

A tried to modify the file as little as possible with maximum reduction of size without change base image and without made a radical change (like multistage).
But I think a multi stage approach can be a good idea, maybe in an another PR.
In the meantime this PR cut in half the size ( from ~1GB to ~500MB)

Alpine images for Python it's a bad idea IMO https://pythonspeed.com/articles/alpine-docker-python/

This article was pretty disputed at the time, and most of its points are moot as of 2022, FYI.

I still don't think Alpine is not a good idea. But for sure I would propose that change in another PR.

I tried doing this as a multi-stage build based on the previous one of those, but doing it without having a virtualenv (because I want to use system packages for some Python stuff in future) proved very hard to get working.

I think the python:* images use a compiled python and not system one as default. Trying to leverage system packages while also using the tag specified version might be problematic.

I'll be happy to review other PRs with the various approaches I've read about here.
But in my opinion for the moment it would be useful to merge this PR since it removes the installation of totally useless packages (eg: python-dev) and at the end of the build process it leaves only libpq for Psycopg2 in the image.
P.S. when Django 4.2 will be released we will also have the backend for Psycopg v3 and we will be able to install the C compiled version without needing to install any compiler or development library.

I still want to stick with a Debian base for now, out of personal preference for working with it if nothing else.
I'll get this one merged in though - thanks!


Timeline semaphore sample not available on Windows

Due to a kernel bug the timeline semaphore sample was disabled on windows:

Not enabled on Windows at this time due to bugs.
Out-of-order submission in presentation causes kernel level issues,
and need to be figured out before this sample can be enabled on Windows.

We should reevaluate this and if it works on Windows now, the sample should be enabled for that platform again.

Right now, the sample is disabled using a define in the CMake file. So in order to build this on windows, you need to remove the if statement at https://github.com/KhronosGroup/Vulkan-Samples/blob/master/samples/extensions/timeline_semaphore/CMakeLists.txt#L18

Just tried again on an up-to-date Windows 10, and the sample still hangs for me in such a manner that I can't even quit it anymore. Looks like the kernel hang is still there :(

I tried that on Win10, using an NVIDIA RTX A3000 Laptop GPU, and it runs fine!
The window looks a bit strange:

and it seems to wait indefinitely on resize/maximize, but besides that, it seems to work on my end.

Just checked again with everything updated, using the latest Vulkan developer driver and I still get a kernel hang. Maybe it's not related to the GPU but something on the CPU side instead? I'm on an AMD Ryzen 5 3600.

I've got the same issue with enabled VK_LAYER_KHRONOS_validation on Ubuntu 22.04.
vulkaninfo output:
Instance Layers: count = 11
---------------------------
VK_LAYER_INTEL_nullhw             INTEL NULL HW                                       1.1.73   version 1
VK_LAYER_KHRONOS_profiles         Khronos Profiles layer                              1.3.239  version 1
VK_LAYER_KHRONOS_synchronization2 Khronos Synchronization2 layer                      1.3.239  version 1
VK_LAYER_KHRONOS_validation       Khronos Validation Layer                            1.3.239  version 1
VK_LAYER_LUNARG_api_dump          LunarG API dump layer                               1.3.239  version 2
VK_LAYER_LUNARG_gfxreconstruct    GFXReconstruct Capture Layer Version 0.9.16-unknown 1.3.239  version 36880
VK_LAYER_LUNARG_monitor           Execution Monitoring Layer                          1.3.239  version 1
VK_LAYER_LUNARG_screenshot        LunarG image capture layer                          1.3.239  version 1
VK_LAYER_MESA_device_select       Linux device selection layer                        1.3.211  version 1
VK_LAYER_MESA_overlay             Mesa Overlay layer                                  1.3.211  version 1
VK_LAYER_NV_optimus               NVIDIA Optimus layer                                1.3.224  version 1

Devices:
========
GPU0:
        apiVersion         = 1.3.224
        driverVersion      = 5<IP_ADDRESS>
        vendorID           = 0x10de
        deviceID           = 0x1e84
        deviceType         = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
        deviceName         = NVIDIA GeForce RTX 2070 SUPER
        driverID           = DRIVER_ID_NVIDIA_PROPRIETARY
        driverName         = NVIDIA
        driverInfo         = 525.89.02
        conformanceVersion = <IP_ADDRESS>
        deviceUUID         = 206486a7-29c4-1513-f19e-f861dcdaf4dd
        driverUUID         = 5f84013f-2322-5221-9dc0-81d43e19382b

@avpdiver: So you get a kernel hang on Linux? If so this may hint at a general problem with the sample, rather than an issue with isolated setups.

After updating to Windows 11 I no longer get a kernel hang, but the sample still does not work. It just displays a blank window, if a toggle between other windows and back to the sample I get something displayed, but it's never updated :(

I tried to debug this, and it looks like the sample only does the first submit and then gets stuck waiting for something forever. If I remove the lock guard.
If we're not able to fix this sample maybe we can add a more basic timeline semaphore sample that's guaranteed to work.

If it still hangs the kernel, that means Windows still has not been fixed. Not sure what I can do.

To make the sample more robust, I'd suggest removing the wait-before-signal. That's the real problem on Windows. If there is a stalled queue (does not have to be the present queue itself) that cannot make forward progress when vkQueuePresentKHR is called, the entire system locks up.

I am hitting seemingly the same issue in a hobby project. (wip commit)

If there is a stalled queue (does not have to be the present queue itself) that cannot make forward progress when vkQueuePresentKHR is called, the entire system locks up.

So this might occur because the semaphores wait values are invalid (i.e too high) and therefore can not render the next frame?
... Or are you talking about any vkQueuePresentKHR waiting for a stalled vkQueueSubmit that is again waiting on a timeline semaphore? I would guess this would be normal use-case of timeline semaphores?

vkQueuePresentKHR waiting for a stalled vkQueueSubmit that is again waiting on a timeline semaphore

Any queue, yes. The behavior seems to be as-if the present on Windows does a full device-wide wait-for-idle instead of just waiting for the present queue. That will indeed deadlock, but it also violates the Vulkan specification.

Thanks for the clarification. Do we know if this will be fixed any time soon?

Do we know if this will be fixed any time soon?

No idea. It's been known for years at this point.


Should the End of stream's NAL type id is 11, not 12?

Should the End of stream's NAL type id is 11, not 12?

You're right, my bad, I looked at http://www.itu.int/rec/T-REC-H.264-201610-I and saw it's in fact 11.


Mfa branch

Changes for MFA

looks like you'll need to resolve some conflicts before it can merge btw, have you done that before?


Deactivate modes

In trying to remove a mode from the UI, shouldnt // at AddLine in function uiModes in modes.js do the trick?
This time its not working.

This works when I try it:
    var modes = [
        modeAddPoint(context),
        // modeAddLine(context),
        modeAddArea(context)
    ];

Make sure you rebuild the iD.js bundle too.  If you start your local server with npm run start this should happen automatically and complete in a few seconds.

Oh snap, I forgot to rebuild! Thank you!


Disjoint Set Union (Data Structure)

Description
DSU is a data structure with the following capabilities

Combine any two different sets of elements.
Tell in which set a specific element is present.

Deliverables

Code
Proper comments for better understanding of algorithms

Language
C++
@amritansh22  Can you please assign this to me?

@yash30201 Done

@amritansh22 can I work on this issue

@Aman2632 Yes sure. Have assigned it to you.


Added body-parser, graphql, multer to dependencies

Not sure if it's complete now. Relates to issues #1, #2 and #3.

Merged! Thanks @sandervanhooft

Hmm not sure if this is actully the correct approach.  BodyParser isn't required by this package.  It seems kind of hacky to handle it this way

@thebigredgeek I think you're right. People might use a different body parser or a different middleware than multer to process uploaded files. But I'm not sure about graphql.
Anyway, I'm very new to the whole npm ecosystem. I don't have much experience with maintaining open-source libraries yet, so any help is greatly appreciated. What do you suggest we do in this case?


Failed to activate the omnisharp-atom package

Attempting to update Omnisharp Package
Atom Version: 0.196.0
System: Microsoft Windows 8.1 Pro
Thrown From: omnisharp-atom package, v0.4.10
Stack Trace
Failed to activate the omnisharp-atom package
At spacePen is not defined

ReferenceError: spacePen is not defined
  at Object.<anonymous> (C:\Users\rratzlaff\.atom\packages\omnisharp-atom\lib\omnisharp-atom\views\tooltip-view.ts:47:4)
  at Module._compile (module.js:452:26)
  at Object.loadFile [as .ts] (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\typescript.js:99:19)
  at Module.load (module.js:347:32)
  at Function.Module._load (module.js:302:12)
  at Module.require (module.js:357:17)
  at require (module.js:376:17)
  at Object.<anonymous> (C:\Users\rratzlaff\.atom\packages\omnisharp-atom\lib\omnisharp-atom\features\lookup.ts:5:19)
  at Module._compile (module.js:452:26)
  at Object.loadFile [as .ts] (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\typescript.js:99:19)
  at Module.load (module.js:347:32)
  at Function.Module._load (module.js:302:12)
  at Module.require (module.js:357:17)
  at require (module.js:376:17)
  at new Feature (C:\Users\rratzlaff\.atom\packages\omnisharp-atom\lib\omnisharp-atom\omnisharp-atom.ts:16:20)
  at C:\Users\rratzlaff\.atom\packages\omnisharp-atom\lib\omnisharp-atom\omnisharp-atom.ts:79:72
  at arrayMap (C:\Users\rratzlaff\.atom\packages\omnisharp-atom\node_modules\lodash\index.js:1449:25)
  at Function.map (C:\Users\rratzlaff\.atom\packages\omnisharp-atom\node_modules\lodash\index.js:6769:14)
  at OmniSharpAtom.loadFeatures (C:\Users\rratzlaff\.atom\packages\omnisharp-atom\lib\omnisharp-atom\omnisharp-atom.ts:79:26)
  at OmniSharpAtom.activate (C:\Users\rratzlaff\.atom\packages\omnisharp-atom\lib\omnisharp-atom\omnisharp-atom.ts:47:34)
  at Package.module.exports.Package.activateNow (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\package.js:222:19)
  at C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\package.js:203:30
  at Package.module.exports.Package.measure (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\package.js:147:15)
  at Package.module.exports.Package.activate (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\package.js:195:14)
  at PackageManager.module.exports.PackageManager.activatePackage (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\package-manager.js:434:21)
  at C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\node_modules\settings-view\lib\package-manager.js:270:29
  at exit (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\node_modules\settings-view\lib\package-manager.js:41:16)
  at triggerExitCallback (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\buffered-process.js:213:47)
  at ChildProcess.<anonymous> (C:\Users\rratzlaff\AppData\Local\atom\app-0.196.0\resources\app.asar\src\buffered-process.js:235:18)
  at emitTwo (events.js:87:13)
  at ChildProcess.emit (events.js:169:7)
  at Process.ChildProcess._handle.onexit (child_process.js:1057:12)

Commands
     -4:19.6.0 core:copy (atom-text-editor.editor)
     -4:12.1.0 settings-view:check-for-package-updates (atom-workspace.workspace.scrollbars-visible-always.theme-one-dark-syntax.theme-one-dark-ui)

Config
{
  "core": {
    "disabledPackages": [
      "autocomplete",
      "autocomplete-plus-async"
    ],
    "autoHideMenuBar": true,
    "projectHome": "c:\\code"
  }
}

Installed Packages
# User
atom-yeoman, v0.2.0
autocomplete-plus, v2.12.1
color-picker, v1.7.0
jsonlint, v1.1.1
language-csharp, v0.5.0
language-mediawiki, v0.1.0
language-powershell, v2.0.1
language-typescript, v0.15.0
linter, v0.12.1
minimap, v4.8.0
omnisharp-atom, v0.4.10
project-manager, v1.15.5

# Dev
No dev packages

Thanks for reporting. Should be fixed in v0.4.12. Please re-open if it isn't.

I just updated to 0.4.33 and got this error

I'm having this error too

Just got redirected to this issue while updating to 0.5.3

Also got redirected to this issue while updating to 0.5.3

Can't reproduce this.

Same here after updating to 0.5.5.

I just wiped all my packages from ~/.atom/packages and reinstalled omnisharp-atom and it's working.

Looks like an issue with the update or something very old that causes the plugin to crash. I had the same issue, removing and reinstalling worked. +1

It's possible that if you're running solution and updating at the same time that there are locked files causing a problem?  I know atom typescript has a similar issue.
Is that the case here?  If it is, we can probably attempt to shutdown any active servers when atom announces its updating us.

Just repro again after removing and reinstalling.

same problem has occurred. after removing and reinstalling.

Hopefully fixed by #431


Create location model

Create model file:
title: CharField, max=128
street: CharField, max=128
street2: CharField, max=128
city: CharField, max=128
postcode: CharField, max=12
state: CharField, max=128
capacity: IntegerField
Once finished, please cross the issue off in list stored at #1 Create initial DB models and migrations

Robime na tejto issue - vlavo od vchodu do miestnosti - nesiahat! :)

Resolved by #25


WebView.UnviewableContentIdentifiedEventArgs

The UnviewableContentIdentifiedEventArgs derives from NavigationEventWithReferrer and is missing the properties from that base class

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview/UnviewableContentIdentifiedEvent.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Remove version: Brave.Brave version <IP_ADDRESS>

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: https://updates-cdn.bravesoftware.com/build/Brave-Release/x86-rel/win/<IP_ADDRESS>/brave_installer-ia32.exe
Response Error: The remote server returned an error: (403) Forbidden.
(Automated message - build 673)

URL: https://updates-cdn.bravesoftware.com/build/Brave-Release/x86-rel/win/<IP_ADDRESS>/brave_installer-ia32.exe
Response Error: The remote server returned an error: (403) Forbidden.
(Automated message - build 673)


Fix #7038

Description of change
Fixes #7038.

Changed calculations in Rectangle.ceil() to improve precision of width and height. This is technically not necessary if (2) is applied.
Ensure the viewport frame is on the grid, i.e., integer. gl.viewport() converts it's arguments to GLint/GLsizei as float would be in C. That's why tiny rounding errors have an undesirable effect. This is an another bug that has actually the opposite effect of (3), which is not visible in the pictures in #7038.

gl.viewport(64.00001, 63.99999, 128.00001, 127.99999);
console.log(gl.getParameter(gl.VIEWPORT)); // => Int32Array [64, 63, 128, 127]

Fixed a bug in RenderTexture.resize() that set the width/height wrong that not only caused the flop texture to double in size, but caused what is depicted in #7038.
The canvas source frame has now the correct dimensions in case of non-integer resolutions, because screen is slightly too large in that case: view.width == Math.floor(screen.width * resolution) and view.height == Math.floor(screen.height * resolution).

Pre-Merge Checklist

[x] Lint process passed (npm run lint)
[x] Tests passed (npm run test)

Need to find previous commit, where that ceil was introduced in that place. There was another demo, I remember
X-Files is my label dedicated to those problems.

@ivanpopelyshev ceil was added here #4722

Could you give this a higher priority as well? I noticed that it's not always just 1 pixel offset per filter as mentioned in #7038. In the case of just one blur filter the results can be extreme. https://www.pixiplayground.com/#/edit/GTjTs7MveUFknBd-FRR2r

@ivanpopelyshev @SukantPal what do you want to do about this PR? Been here for awhile would like to come to some conclusion.

I actually identified a bunch of rounding related issues a while back, but I never got around to push it and eventually forgot. I'm not sure if this PR is the right place to push it to. Let me know how you would like to see it.


Support removing a relationship

Currently only adding relations is supported by passing an array of oid tokens. We also need to support removing relations. Possible solution would be to pass an array of tuples (oid token, intention) for each relation. https://github.com/versionone/VersionOne.SDK.JavaScript/blob/master/src/transformDataToAsset.js Possible solution looks something like:
[
    { "idref": "Story:123", "act": "add" },
    { "idref": "Story:456", "act": "remove" }
]

I like that...
Another thought:
{
  add: ["Story:123", "Story:125"],
  remove: ["Story:456", "Story:898"]
}

Sorry come to find out if you pass it an array of strings it assumes adding a relation, but if you need to remove a relation you can pass it { "idref": "Story:123", "act": "remove" }

Hmm, i wasn't suggesting passing that, but translating to the more verbose syntax just in time before the Post

@JogoShugh, yeah passing two arrays was considered. I didn't realize the sdk already supported removing and adding relations so I closed the issue.


Standard hardware security not supported, if  SystemGuard is enabled

Today I have tested many options creating of new registry key , removing key  with device guard enabled with dTPM 2.0,
After many tests, i conformed that "Standard hardware security not supported" under device security is displayed. That happens only if add systemguard key with enabled is set to 1.
But if delete "Enabled" value, then the laptop shows Your device exceeds the requirements for enhanced hardware security. I have  reported this  problem through feedback HUB

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

ID: 31d623d9-316c-0ef1-b6be-c3773d77ca21
Version Independent ID: 83ddb59d-0cfc-34f2-e666-8927d86a04a7
Content: System Guard Secure Launch and SMM protection (Windows 10)
Content Source: windows/security/threat-protection/windows-defender-system-guard/system-guard-secure-launch-and-smm-protection.md
Product: w10
Technology: windows
GitHub Login: @Dansimp
Microsoft Alias: dansimp

@RAJU2529 - Thank you for submitting feedback.
Can you please share what specific issue you have with this doc? Or are you having some technical issues which requires technical support?
If you have some issues with this doc, we would really appreciate if you are able to help by providing more details as to what should be edited and/or included. Thank you!

@mypil . Points should be added if system gaurd enabled in registry key , then standard  hardware security  not available for Intel i5 7200U processor

Hello @RAJU2529
Once again you need to be a bit more specific. Please recommend that part/items should be modified on the given article so we can proceed to add/discard the changes. thank you.

@j0rt3g4. the below point should be added only , after other windows users should check in their laptops or desktop with atleast  intel 7th generation processors
point is
"if system gaurd enabled in registry key , then standard hardware security not available for Intel i5 7200U processor"

@RAJU2529 - From our understanding, the issue has been resolved based on this merged commit https://github.com/MicrosoftDocs/windows-itpro-docs/commit/dc5ef67ba54687655f973d9c7aa490fca8f772c0.
Thank you for your contribution to make the docs better! Much appreciated!


Allow the Value() class to take a dynamic string directly and set it on the form output?

You are not able to use variables without setting the variable type to Value().
If for example a user wanted to dynamically color a cell they would need to be able to set "red" or "green" to the variables in the form.
One way around this that @DanielTOsborne showed me was to use .picture = "mystring" - and this works but in my opinion it is not intuitive.
myVar = Value("mystring")

and
myVar = "mystring"

I would recommend something like this, but I can see how the latter would be difficult given when the locals() are loaded in (before the form).
What ended up working per Daniels suggestion was
myVar = Value()
myVar.picture = "mystring"

Use Case
#FORM

#ENDFORM
#DEF
projectStatus = Value()
projectStatus.picture = "red"
#ENDDEF

I'm worried about unintended side affects if we did something like this automatically.
However, what might be the better option is to allow any python type to be referenced in the FORM section.
This could be done by checking the type (or look for pop attribute) at report.py#L76, and if it's not Value, then just call str (as if it were just a scalar).
This would make it more intuitive to use, and eliminate a potential source of confusion with Value's behavior.


Panes misalign when handling combining characters in directory names

What system are you running Yazi on?
Windows
What terminal are you running Yazi in?
wezterm 20240203-110809-5046fc22
yazi --debug output
Yazi
    Version: 0.4.3 (2770e02 2024-12-27)
    Debug  : false
    Triple : x86_64-pc-windows-msvc (windows-x86_64)
    Rustc  : 1.83.0 (90b35a62 2024-11-26)

Ya
    Version: 0.4.3 (2770e02 2024-12-27)

Emulator
    Brand.from_env      : Some(WezTerm)
    Emulator.detect     : Emulator { kind: Left(WezTerm), light: false, cell_size: None }
    Emulator.detect_full: Ok(Emulator { kind: Right(Unknown { kgp: false, sixel: false }), light: false, cell_size: None })

Adapter
    Adapter.matches: Iip

Desktop
    XDG_SESSION_TYPE           : None
    WAYLAND_DISPLAY            : None
    DISPLAY                    : None
    SWAYSOCK                   : None
    HYPRLAND_INSTANCE_SIGNATURE: None
    WAYFIRE_SOCKET             : None

SSH
    shared.in_ssh_connection: false

WSL
    WSL: false

NVIM
    NVIM          : false
    Neovim version: program not found

Variables
    SHELL           : None
    EDITOR          : None
    VISUAL          : None
    YAZI_FILE_ONE   : Some("C:\\Program Files\\Git\\usr\\bin\\file.exe")
    YAZI_CONFIG_HOME: None
    YAZI_ZOXIDE_OPTS: None
    FZF_DEFAULT_OPTS: None

Text Opener
    default     : Some(Opener { run: "hx %*", block: true, orphan: false, desc: "helix", for_: None, spread: true })
    block-create: Some(Opener { run: "hx %*", block: true, orphan: false, desc: "helix", for_: None, spread: true })
    block-rename: Some(Opener { run: "hx %*", block: true, orphan: false, desc: "helix", for_: None, spread: true })

Multiplexers
    TMUX               : 0
    tmux version       : program not found
    tmux build flags   : enable-sixel=Unknown
    ZELLIJ_SESSION_NAME: None
    Zellij version     : program not found

Dependencies
    file          : 5.45
    ueberzugpp    : program not found
    ffmpeg/ffprobe: 7.1 / 7.1
    pdftoppm      : 24.08.0
    magick        : 7.1.1-43
    fzf           : 0.57.0
    fd/fdfind     : 10.2.0 / program not found
    rg            : 14.1.1
    chafa         : program not found
    zoxide        : 0.9.6
    7z/7zz        : 23.01 / program not found
    jq            : 1.7.1

Clipboard
    wl-copy/paste: program not found / program not found
    xclip        : program not found
    xsel         : program not found

Describe the bug
The bug occurs when a directory name contains combining characters (e.g., COMBINING BREVE (U+0306), COMBINING ACUTE ACCENT (U+0301) and so on). This causes the panes in yazi to render incorrectly after navigating to or past such directories.
The bug manifests as follows:

Panes misalign vertically and shift to the left, breaking the expected visual boundaries of the interface.
The first pane (showing the previous directory) overflows its left boundary, leaving residual artifacts outside its designated area.
Panes overlap each other, leading to a distorted view where their layout breaks down.

The effect resembles "refraction" when crossing boundaries, with panels "breaking" at the boundary between two mediums. This results in a distorted layout, overlapping panes, and persistent rendering artifacts.
This behavior is observed with directory names containing Unicode combining characters, such as:

Голицынский (й = U+0438 + U+0306)
examplé (é = U+0065 + U+0301)
resumé (é = U+0065 + U+0301)

Minimal reproducer

Create a directory with a name that includes combining characters. Examples:

Голицынский Ю.Б. (й = U+0438 + U+0306)
examplé (é = U+0065 + U+0301)

Navigate to the parent directory of the created directory. Open yazi in the parent directory
Navigate into and out of the problematic directory or pass the folder that contains problematic directory. Observe how the panes render.

For example, here I created a directory with the name of the book: stacked̀̂ (à̂ = U+0061 + U+0300 + U+0302, COMBINING GRAVE ACCENT + COMBINING CIRCUMFLEX ACCENT). But it is not necessary to have exactly two symbols. Let's say Голицынский Ю.Б. is also enough.
https://github.com/user-attachments/assets/1ad9b3fc-53e3-4ee4-9ea6-64069335fb3c
Anything else?
No response
Checklist

[X] I tried the latest nightly build, and the issue is still reproducible
[X] I updated the debug information (yazi --debug) input box to the nightly that I tried
[X] I can reproduce it after disabling all custom configs/plugins (mv ~/.config/yazi ~/.config/yazi-backup)

My knowledge of Unicode is quite limited, and I've never used these characters myself, so it's hard to say how to fix this.
I'll add the "help wanted" tag and count on the community to help with this.

Note that Yazi doesn't handle text rendering itself, but relies on the underlying TUI framework ratatui. So this issue may need to be fixed upstream rather than in Yazi.
It might be related to or a duplicate of https://github.com/sxyazi/yazi/issues/1714


add the possibility to overload icon url

For now, the notification center displays le icon based on type.
It would be interesting to allow to overload displayed icon with icon Url.

Closing this issue because it has been inactive for a few months. This probably means that it is not reproducible or it has been fixed in a newer version.
Please reopen if you still encounter this issue.
Thank you!


ci(github): add pull request workflow

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@be734f9). Click here to learn what that means.
Patch has no changes to coverable lines.

:exclamation: Current head 8a0c32f differs from pull request most recent head 321543e. Consider uploading reports for the commit 321543e to get more accurate results

Additional details and impacted files
@@          Coverage Diff           @@
##             main     #13   +/-   ##
======================================
  Coverage        ?   0.00%
======================================
  Files           ?       3
  Lines           ?      35
  Branches        ?       0
======================================
  Hits            ?       0
  Misses          ?      35
  Partials        ?       0

Flag
Coverage Δ

unittests
0.00% <0.00%> (?)

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Added Contributing members section as per #issue72

README Before

README After Contributing Section

LGTM. Thanks @iasadk

LGTM. Thanks @iasadk

My pleasure


go build seems to operate entirely in its $out directory, preventing debugging

If the build fails (as it is for me), I typically run with -K and then poke around the build directory. Unfortunately, it has nothing in it, because I think most of the work happens in $out, which gets cleared out on a failed build regardless of -K.

cc @cstrahan

I run nix-build -K -A go, then the build fails (that's an issue with my setup, and not what I'm reporting here).
When the build fails, it says
note: keeping build directory '/path/to/your/tmp'

so I cd into there. I usually find extract build files in there and env-vars, and can poke around the broken build to find out what's wrong.
The go build, on the other hand, only has env-vars in there, because it does all its work in the $out directory.
Does that make more sense?

Yes, it makes sense to move everything to the tmpdir and at the end mv to $out.

This is go itself, not a go package, and at least in my branch (up to date with master as of yesterday), 1.4.nix doesn't use buildGoPackage for the compiler itself.

Ah ok, confused because buildGoPackage does something similar.

Ah, so they should probably both be fixed. I won't have time to put against this for a while (still spending most of my time on the darwin stdenv improvements) but will take it if nobody gets to it in the next few weeks :smile:

(triage) still a problem? cc @copumpkin @lethalman

(triage) 👋 checking in again. status of this? @copumpkin @lethalman @cstrahan

I can only say that buildGoPackage is broken anyway and should probably receive an overhaul.

Any news on this issue?

Closing, no reaction for too long.


SyntaxError: 'return' outside of function

The node parser doesn´t allow 'return' outside of a function (see https://github.com/nodejs/node-v0.x-archive/issues/6254) and throws SyntaxError: 'return' outside of function.
When I get this right it is necessary to have a return at the beginning of the main.js. Is there a solution for this?

Perhaps using app.quit()' instead of return... will try that

Added to README courtesy of @nimerix . Thanks for the report.