Wrong (outdated) folder name

To enable MD5 for password hash synchronization, perform the following steps:
Go to %programfiles%\Azure AD Sync\Bin.
Correct one is:
C:\Program Files\Microsoft Azure AD Sync\Bin

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

ID: c900f942-4456-5238-9f4c-a7a5bd685c04
Version Independent ID: a5d7d971-765f-0977-f531-232ea5924121
Content: Implement password hash synchronization with Azure AD Connect sync
Content Source: articles/active-directory/hybrid/how-to-connect-password-hash-synchronization.md
Service: active-directory
Sub-service: hybrid
GitHub Login: @billmath
Microsoft Alias: billmath

@bkeski Thanks for the feedback! We are currently investigating and will update you shortly.

Thanks @bkeski ! I made a pull request to fix this. https://github.com/MicrosoftDocs/azure-docs-pr/pull/92650


Support for LVM thin provisioned volumes/pools

Are LVM thin provisioned pools/volumes currently (optionally) supported in topolvm? At least I didn't find any mention of thinprov in the docs..
Thanks!

Thin-provisioned volumes are not supported off the shelf because
lvmd, an underlying gRPC service to run LVM commands, does not
use thin-pools.
You can replace lvmd with anything that implements the same protocol
to use thin-pools or even to use losetup on normal files.
If you want to add support for thin-provisioning to lvmd, we welcome your
pull request.  A good first issue, I think.

This is also needed to snapshot functionality IIRC

LVM provides snapshot functionality in two ways; by dm-snapshot or dm-thin.
topolvm now uses dm-linear, which can provide snapshot functionality by dm-snapshot.

working on #448


Selectable Columns

Hi, thanks to the creators of this great plugin. I was wondering how is it possible to implement sortable columns like here
http://iamisti.github.io/mdDataTable/ section sortable columns new
http://ng-table.com/#/columns/demo-visibility
Thanks in advance

Sorry for duplicate. Figured out
http://codepen.io/anon/pen/vymbOJ


support extraNames in x509Subject. Fixes #4424

Pull Request Motivation
Some of the X509Subject fields are not supported like GN and DC and it would be nice to have these officially supported instead of using workarounds.
Kind
feature
Release Note
Support extra Subject Name fields as part of the CertificateSpec in a generic manner by allowing the caller to pass in an asn1 OID string and value.

/assign @wallrj

/test pull-cert-manager-make-test

/retest

/retest

@wallrj Hi Richard, is there any interest in taking a look at this PR? Thanks!

Sorry, just want to keep you in the loop: I'm really busy currently and I'm on holiday next week, so I can't take a look any time soon. It might be worth asking again in #cert-manager-dev on slack for a review.
Wish I had more time but I just don't! Sorry!

@munnerz I pushed up most of the changes discussed. Thanks a lot for the suggestions and review!
I added some tests and fixed some of that code. I left the name ExtraNames field as I couldn't really think of a better name than what the go library is using, but I did update the comment in an attempt to try to make it more clear.
I gave some thought to what happens if you pass the same OID multiple times with different values and the ordering. I suppose we could try to be clever and maybe copy the array and remove items from it as we find them... or some sort of pattern like that, but I thought that might be too fancy, or it might be I'm just too lazy to do something like that. I did put a unit test in there with a TODO that says it would be nice to have. Passing an array with the same OID and different values is a foreign concept to me - though I do see it seems to have a use-case according to the RawSubject PR.
One more thing I need to check on is what happens if you provide an OID for say CommonName in the ExtraName object. Does it over-ride the CN set?

I've done an initial pass/review - it'd also be great to see some extra tests to ensure that CSRs generated by the requestmanager controller actually contain these fields in the x509 CSR that it creates 😊
I'm also still a bit nervous about exposing such raw values here - could someone use this to set a dnsName by using the OID of dnsSANs here, etc?

This is an interesting point so I did some testing using CommonName. Yes, it seems one could use that OID (in this case, "<IP_ADDRESS>") to overwrite the CommonName passed in through the original CertificateSpec. This has the effect of the CertificateSpec having the original CommonName and CSR having the one from ExtraNames. This would cause validation to fail.
I don't know if that's something we should guard against by trying to strip out all officially supported fields from ExtraNames passed in or just warn the user that is the behavior. I also don't see in the code where the CSR is generated so I can do that sort of filtering.
Thoughts?

The bazel thing failed again. I definitely ran hacks/update-bazel.sh. I am almost positive that if I remove that file I added, "keyusage_test.go" this error goes away as that's what fixed it for me before, as perplexing as that is.

I've done an initial pass/review - it'd also be great to see some extra tests to ensure that CSRs generated by the requestmanager controller actually contain these fields in the x509 CSR that it creates 😊
I'm also still a bit nervous about exposing such raw values here - could someone use this to set a dnsName by using the OID of dnsSANs here, etc?

It's actually interesting what the golang lib does here:
// ToRDNSequence converts n into a single RDNSequence. The following
// attributes are encoded as multi-value RDNs:
//
//  - Country
//  - Organization
//  - OrganizationalUnit
//  - Locality
//  - Province
//  - StreetAddress
//  - PostalCode
//
// Each ExtraNames entry is encoded as an individual RDN.
func (n Name) ToRDNSequence() (ret RDNSequence) {
	ret = n.appendRDNs(ret, n.Country, oidCountry)
	ret = n.appendRDNs(ret, n.Province, oidProvince)
	ret = n.appendRDNs(ret, n.Locality, oidLocality)
	ret = n.appendRDNs(ret, n.StreetAddress, oidStreetAddress)
	ret = n.appendRDNs(ret, n.PostalCode, oidPostalCode)
	ret = n.appendRDNs(ret, n.Organization, oidOrganization)
	ret = n.appendRDNs(ret, n.OrganizationalUnit, oidOrganizationalUnit)
	if len(n.CommonName) > 0 {
		ret = n.appendRDNs(ret, []string{n.CommonName}, oidCommonName)
	}
	if len(n.SerialNumber) > 0 {
		ret = n.appendRDNs(ret, []string{n.SerialNumber}, oidSerialNumber)
	}
	for _, atv := range n.ExtraNames {
		ret = append(ret, []AttributeTypeAndValue{atv})
	}

	return ret
}

func (n Name) appendRDNs(in RDNSequence, values []string, oid asn1.ObjectIdentifier) RDNSequence {
	if len(values) == 0 || oidInAttributeTypeAndValue(oid, n.ExtraNames) {
		return in
	}

	s := make([]AttributeTypeAndValue, len(values))
	for i, value := range values {
		s[i].Type = oid
		s[i].Value = value
	}

	return append(in, s)
}

func oidInAttributeTypeAndValue(oid asn1.ObjectIdentifier, atv []AttributeTypeAndValue) bool {
	for _, a := range atv {
		if a.Type.Equal(oid) {
			return true
		}
	}
	return false
}

If I'm not mistaken, it looks like it will append values unless the value already exists, then it just returns itself - at least for the known fields is has like CommonName. So it kind of keeps itself from overwriting values in the RDNSequence. However, when it gets to the ExtraNames, it doesn't care and just throws everything in, so it would overwrite anything in their if you've provided a clashing OID. At least that's how I'm interpreting this code. I don't know if there's any precedent for this behavior, but I found this doc for an Erlang project and it basically describes exactly what I'd like to do here.
That being said, maybe it's enough to just document the behaviors and give fair warning?
https://hexdocs.pm/x509/X509.RDNSequence.html
Note that this module implements a commonly used subset of RDNSequence values. It supports only a single attribute type/value pair for each element in the sequence, and it implements the attribute types specified in RFC5280, section <IP_ADDRESS>, with a few extensions from LDAP:

countryName (C)
organizationName (O)
organizationalUnitName (OU)
dnQualifier
stateOrProvinceName (ST)
commonName (CN)
serialNumber
localityName (L)
title
name
surname (SN)
givenName (GN)
initials
pseudonym
generationQualifier
domainComponent (DC)
emailAddress (E)
This module encodes values as UTF8String where possible, or else PrintableString/IA5String where required.

@munnerz I think I have this PR in good condition now. I added some tests and all tests are passing.
The basic idea is that you pass in the ExtraNames, you then get those added to the CSR and if signed, you get a certificate back where you can see everything back in the Subject.Names field. For my use case, I'm passing the CSR to another entity using an external provider (EJBCA) I created based off the aws/google examples.
It might be a little confusing, but due to how the GO pkix lib handles Names vs ExtraNames during marshaling and unmarshaling from DER, I think this is the best we can do. I basically throw all the ExtraNames into Names right before signing as a workaround for the below to get back those fields in Names in the parsed Certificate object. This means the developer will need to know to look in Names vs ExtraNames for those fields, which is a little confusing, but seems like the best option without re-writing parts of the pkix lib. Here is the documentation for those fields, which is why I decided to take this approach:
	// Names contains all parsed attributes. When parsing distinguished names,
	// this can be used to extract non-standard attributes that are not parsed
	// by this package. When marshaling to RDNSequences, the Names field is
	// ignored, see ExtraNames.
	Names []AttributeTypeAndValue

	// ExtraNames contains attributes to be copied, raw, into any marshaled
	// distinguished names. Values override any attributes with the same OID.
	// The ExtraNames field is not populated when parsing, see Names.
	ExtraNames []AttributeTypeAndValue

I also manually checked the csr and certs in pem format using openssl and verified the additional fields show up as expected there. Openssl must have facilities to read the OIDs and map them to the short names (i.e., <IP_ADDRESS> -> GN.
Of course, this all assumes the code is doing what I think it's doing., which I've spent a lot of time studying, so I'm hoping I am right.
Let me know your thoughts. Thanks!

/retest

/milestone v1.9

I think the functionality you require is exposed by https://github.com/cert-manager/cert-manager/pull/5002 so I will close this issue. Let me know if it's insufficient


cursor positon error and decorator broke in IME mode in v0.11.3

i am developing an chat editor using draft-js, but it still have some unexpected bugs that i can not deal with
draft-js: v0.11.3
Chromium: 78.0.3904.113
demo online to show these problems: https://codepen.io/luqihao/pen/MWYKMbq

i am using decorator to replace all twemoji, whatever you are typing, pasted or insert emoji text, but the cursor jump to the incorrect position, why? (😀😄😆😅)

i insert an immutable entity and use a decorator to display a image, and then i typing chinese(IME mode) after this decorator, this decorator will broke and i get the entityMap of null, is so weird?

i hope someone can me the solution about these problems

same problem

insert an emoji as immutable entity
typing japanese(IME mode)
entity broken

Thought I'd have a look at this and I think I've finally figured it out. Will push a fix soon.

@mrkev I found that the editor in twitter has no these bugs, do you know how twitter to handle these

Is there any plan to fix this problem?
This problem has occurred since upgrade to version 0.11.0，and it is find in version 0.10.5
@mrkev

I found the reason is that it uses the mutationObserver since update to v0.11.x
@mrkev @claudiopro

I got the same issue and ended up downgrading my draft-js to v0.10.5.


Add Support for async requests or http3 Async Client

Bug description
Prisma internals do not support async requests client or http3 protocol for making async requests to external APIs and other fastapi endpoints.
How to reproduce
from fastapi import FastAPI
from pydantic import BaseModel
import http3

class HealthResponse(BaseModel):
    status: str

app = FastAPI()

@router.get("/users")
async def list_all_users():
    async with Prisma() as db:
        users = await db.user.find_many(take=1)
    return users

@app.get("/health", response_model=HealthResponse, tags=["Health"])
async def check_health():
    client = http3.AsyncClient()
    response = await client.get("http://localhost:8000/users")
    if response.status_code == 200:
        return {"status": "healthy"}
    return {"status": "unhealthy"}

Expected behavior
The engine connection should work with async requests.
Reinstalling h11 to lower version that prisma supports fix the errors for now.
Prisma information
generator client {
  provider  = "prisma-client-py"
  interface = "asyncio"
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

enum Role {
  USER
  ADMIN
}

model User {
id       String         @id             @default(dbgenerated("gen_random_uuid()")) @db.Uuid
email    String         @unique
password Bytes
disabled Boolean        @default(false)
role     Role           @default(USER)
}

Environment & setup
[tool.poetry]
name = "backend"
version = "1.0.0"
description = ""
authors = ["Ali Parandeh<EMAIL_ADDRESS>
[tool.poetry.dependencies]
python = "^3.9"
fastapi = "^0.79.0"
prisma = "^0.6.6"
SQLAlchemy = "^1.4.40"
uvicorn = "^0.18.2"
black = "^22.6.0"
python-multipart = "^0.0.5"
bcrypt = "^3.2.2"
aiohttp = "^3.8.1"

[tool.poetry.dev-dependencies]

[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"

OS: MacOS Monterey
Database: PostgreSQL
Python version: 3.9.10
Prisma version: ^0.6.6

ERROR
      Because httpx (0.23.0) depends on httpcore (>=0.15.0,<0.16.0)
   and httpx (0.22.0) depends on httpcore (>=0.14.5,<0.15.0), httpx (0.22.0 || 0.23.0) requires httpcore (>=0.14.5,<0.16.0).
      And because httpx (0.21.3) depends on httpcore (>=0.14.0,<0.15.0), httpx (0.21.3 || 0.22.0 || 0.23.0) requires httpcore (>=0.14.0,<0.16.0).
      And because httpx (0.21.2) depends on httpcore (>=0.14.0,<0.15.0)
   and httpx (0.21.1) depends on httpcore (>=0.14.0,<0.15.0), httpx (0.21.1 || 0.21.2 || 0.21.3 || 0.22.0 || 0.23.0) requires httpcore (>=0.14.0,<0.16.0).
      And because httpx (0.21.0) depends on httpcore (>=0.14.0,<0.15.0)
   and httpx (0.20.0) depends on httpcore (>=0.13.3,<0.14.0), httpx (0.20.0 || 0.21.0 || 0.21.1 || 0.21.2 || 0.21.3 || 0.22.0 || 0.23.0) requires httpcore (>=0.13.3,<0.16.0).
      Because httpx (0.19.0) depends on httpcore (>=0.13.3,<0.14.0)
   and no versions of httpx match >0.19.0,<0.20.0 || >0.20.0,<0.21.0 || >0.21.0,<0.21.1 || >0.21.1,<0.21.2 || >0.21.2,<0.21.3 || >0.21.3,<0.22.0 || >0.22.0,<0.23.0 || >0.23.0, httpx (>=0.19.0,<0.20.0 || >0.20.0,<0.21.0 || >0.21.0,<0.21.1 || >0.21.1,<0.21.2 || >0.21.2,<0.21.3 || >0.21.3,<0.22.0 || >0.22.0,<0.23.0 || >0.23.0) requires httpcore (>=0.13.3,<0.14.0).
      Thus, httpx (>=0.19.0) requires httpcore (>=0.13.3,<0.16.0).
      Because httpcore (0.15.0) depends on h11 (>=0.11,<0.13)
   and no versions of httpcore match >0.15.0,<0.16.0, httpcore (>=0.15.0,<0.16.0) requires h11 (>=0.11,<0.13).
  (1) Thus, httpx (>=0.19.0) requires h11 (>=0.11,<0.13) or httpcore (>=0.13.3,<0.15.0).

      Because no versions of httpcore match >0.14.5,<0.14.6 || >0.14.6,<0.14.7 || >0.14.7,<0.15.0
   and httpcore (0.14.5) depends on h11 (>=0.11,<0.13), httpcore (>=0.14.5,<0.14.6 || >0.14.6,<0.14.7 || >0.14.7,<0.15.0) requires h11 (>=0.11,<0.13).
      And because httpcore (0.14.6) depends on h11 (>=0.11,<0.13)
   and httpcore (0.14.7) depends on h11 (>=0.11,<0.13), httpcore (>=0.14.5,<0.15.0) requires h11 (>=0.11,<0.13).
  (2) So, because httpx (>=0.19.0) requires h11 (>=0.11,<0.13) or httpcore (>=0.13.3,<0.15.0) (1), httpx (>=0.19.0) requires h11 (>=0.11,<0.13) or httpcore (>=0.13.3,<0.14.5)

      Because no versions of httpcore match >0.14.0,<0.14.1 || >0.14.1,<0.14.2 || >0.14.2,<0.14.3 || >0.14.3,<0.14.4 || >0.14.4,<0.14.5
   and httpcore (0.14.0) depends on h11 (>=0.11,<0.13), httpcore (>=0.14.0,<0.14.1 || >0.14.1,<0.14.2 || >0.14.2,<0.14.3 || >0.14.3,<0.14.4 || >0.14.4,<0.14.5) requires h11 (>=0.11,<0.13).
      And because httpcore (0.14.1) depends on h11 (>=0.11,<0.13)
   and httpcore (0.14.2) depends on h11 (>=0.11,<0.13), httpcore (>=0.14.0,<0.14.3 || >0.14.3,<0.14.4 || >0.14.4,<0.14.5) requires h11 (>=0.11,<0.13).
      And because httpcore (0.14.3) depends on h11 (>=0.11,<0.13)
   and httpcore (0.14.4) depends on h11 (>=0.11,<0.13), httpcore (>=0.14.0,<0.14.5) requires h11 (>=0.11,<0.13).
  (3) So, because httpx (>=0.19.0) requires h11 (>=0.11,<0.13) or httpcore (>=0.13.3,<0.14.5) (2), httpx (>=0.19.0) requires h11 (>=0.11,<0.13) or httpcore (>=0.13.3,<0.14.0)

      Because no versions of httpcore match >0.13.3,<0.13.4 || >0.13.4,<0.13.5 || >0.13.5,<0.13.6 || >0.13.6,<0.13.7 || >0.13.7,<0.14.0
   and httpcore (0.13.3) depends on h11 (>=0.11,<0.13), httpcore (>=0.13.3,<0.13.4 || >0.13.4,<0.13.5 || >0.13.5,<0.13.6 || >0.13.6,<0.13.7 || >0.13.7,<0.14.0) requires h11 (>=0.11,<0.13).
      And because httpcore (0.13.4) depends on h11 (>=0.11,<0.13)
   and httpcore (0.13.5) depends on h11 (>=0.11,<0.13), httpcore (>=0.13.3,<0.13.6 || >0.13.6,<0.13.7 || >0.13.7,<0.14.0) requires h11 (>=0.11,<0.13).
      And because httpcore (0.13.6) depends on h11 (>=0.11,<0.13)
   and httpcore (0.13.7) depends on h11 (>=0.11,<0.13), httpcore (>=0.13.3,<0.14.0) requires h11 (>=0.11,<0.13).
      And because httpx (>=0.19.0) requires h11 (>=0.11,<0.13) or httpcore (>=0.13.3,<0.14.0) (3), httpx (>=0.19.0) requires h11 (>=0.11,<0.13)
      Because no versions of http3 match >0.6.7,<0.7.0
   and http3 (0.6.7) depends on h11 (>=0.8.0,<0.9.0), http3 (>=0.6.7,<0.7.0) requires h11 (>=0.8.0,<0.9.0).
      Thus, http3 (>=0.6.7,<0.7.0) is incompatible with httpx (>=0.19.0).
      And because prisma (0.6.6) depends on httpx (>=0.19.0)
   and no versions of prisma match >0.6.6,<0.7.0, http3 (>=0.6.7,<0.7.0) is incompatible with prisma (>=0.6.6,<0.7.0).
      So, because backend depends on both prisma (^0.6.6) and http3 (^0.6.7), version solving failed.

INFO:     <IP_ADDRESS>:62948 - "GET /users/ HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/prisma/engine/query.py", line 161, in spawn
    data = await self.request('GET', '/status')
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/prisma/engine/http.py", line 96, in request
    resp = await self.session.request(method, url, **kwargs)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/prisma/_async_http.py", line 28, in request
    return Response(await self.session.request(method, url, **kwargs))
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpx/_client.py", line 1527, in request
    return await self.send(request, auth=auth, follow_redirects=follow_redirects)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpx/_client.py", line 1614, in send
    response = await self._send_handling_auth(
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpx/_client.py", line 1642, in _send_handling_auth
    response = await self._send_handling_redirects(
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpx/_client.py", line 1679, in _send_handling_redirects
    response = await self._send_single_request(request)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpx/_client.py", line 1716, in _send_single_request
    response = await transport.handle_async_request(request)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpx/_transports/default.py", line 353, in handle_async_request
    resp = await self._pool.handle_async_request(req)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpcore/_async/connection_pool.py", line 253, in handle_async_request
    raise exc
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpcore/_async/connection_pool.py", line 237, in handle_async_request
    response = await connection.handle_async_request(request)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpcore/_async/connection.py", line 90, in handle_async_request
    return await self._connection.handle_async_request(request)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpcore/_async/http11.py", line 105, in handle_async_request
    raise exc
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpcore/_async/http11.py", line 84, in handle_async_request
    ) = await self._receive_response_headers(**kwargs)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/httpcore/_async/http11.py", line 156, in _receive_response_headers
    headers = event.headers.raw_items()
AttributeError: 'list' object has no attribute 'raw_items'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/uvicorn/protocols/http/h11_impl.py", line 403, in run_asgi
    result = await app(self.scope, self.receive, self.send)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/uvicorn/middleware/proxy_headers.py", line 78, in __call__
    return await self.app(scope, receive, send)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/fastapi/applications.py", line 269, in __call__
    await super().__call__(scope, receive, send)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/starlette/applications.py", line 124, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/starlette/middleware/errors.py", line 184, in __call__
    raise exc
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/starlette/middleware/errors.py", line 162, in __call__
    await self.app(scope, receive, _send)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/starlette/exceptions.py", line 93, in __call__
    raise exc
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/starlette/exceptions.py", line 82, in __call__
    await self.app(scope, receive, sender)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 21, in __call__
    raise e
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
    await self.app(scope, receive, send)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/starlette/routing.py", line 670, in __call__
    await route.handle(scope, receive, send)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/starlette/routing.py", line 266, in handle
    await self.app(scope, receive, send)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/starlette/routing.py", line 65, in app
    response = await func(request)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/fastapi/routing.py", line 227, in app
    raw_response = await run_endpoint_function(
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/fastapi/routing.py", line 160, in run_endpoint_function
    return await dependant.call(**values)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/./routes/users.py", line 16, in list_all_users
    async with Prisma() as db:
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/prisma/client.py", line 212, in __aenter__
    await self.connect()
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/prisma/client.py", line 248, in connect
    await self.__engine.connect(
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/prisma/engine/query.py", line 109, in connect
    await self.spawn(file, timeout=timeout, datasources=datasources)
  File "/Users/aliparandeh/Documents/Github/BYAI/backend/.venv/lib/python3.9/site-packages/prisma/engine/query.py", line 180, in spawn
    raise errors.EngineConnectionError(
prisma.engine.errors.EngineConnectionError: Could not connect to the query engine

Resolved Package List that allows Prisma to work with HTTP3
aiohttp==3.8.1; python_version >= "3.6"
aiosignal==1.2.0; python_version >= "3.6"
anyio==3.6.1; python_version >= "3.7" and python_full_version >= "3.7.0"
async-timeout==4.0.2; python_version >= "3.6"
attrs==22.1.0; python_version >= "3.6"
bcrypt==3.2.2; python_version >= "3.6"
black==22.6.0; python_full_version >= "3.6.2"
certifi==2022.6.15; python_version >= "3.7" and python_full_version >= "3.7.0"
cffi==1.15.1; python_version >= "3.6"
charset-normalizer==2.1.0; python_full_version >= "3.6.0" and python_version >= "3.6"
click==8.1.3; python_version >= "3.7" and python_full_version >= "3.7.0"
colorama==0.4.5; python_version >= "3.7" and python_full_version >= "3.7.0" and platform_system == "Windows"
fastapi==0.79.0; python_full_version >= "3.6.1"
frozenlist==1.3.1; python_version >= "3.7"
greenlet==1.1.2; python_version >= "3" and python_full_version < "3.0.0" and (platform_machine == "aarch64" or platform_machine == "ppc64le" or platform_machine == "x86_64" or platform_machine == "amd64" or platform_machine == "AMD64" or platform_machine == "win32" or platform_machine == "WIN32") and (python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0") or python_version >= "3" and (platform_machine == "aarch64" or platform_machine == "ppc64le" or platform_machine == "x86_64" or platform_machine == "amd64" or platform_machine == "AMD64" or platform_machine == "win32" or platform_machine == "WIN32") and (python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0") and python_full_version >= "3.5.0"
h11==0.12.0; python_version >= "3.7" and python_full_version >= "3.7.0"
httpcore==0.15.0; python_version >= "3.7" and python_full_version >= "3.7.0"
httpx==0.23.0; python_version >= "3.7" and python_full_version >= "3.7.0"
idna==3.3; python_version >= "3.7" and python_full_version >= "3.7.0"
jinja2==3.1.2; python_version >= "3.7" and python_full_version >= "3.7.0"
markupsafe==2.1.1; python_version >= "3.7" and python_full_version >= "3.7.0"
multidict==6.0.2; python_version >= "3.7"
mypy-extensions==0.4.3; python_full_version >= "3.6.2"
pathspec==0.9.0; python_full_version >= "3.6.2"
platformdirs==2.5.2; python_version >= "3.7" and python_full_version >= "3.6.2"
prisma==0.6.6; python_full_version >= "3.7.0"
pycparser==2.21; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6"
pydantic==1.9.2; python_full_version >= "3.7.0"
python-dotenv==0.20.0; python_version >= "3.5" and python_full_version >= "3.7.0"
python-multipart==0.0.5
rfc3986==1.5.0; python_version >= "3.7" and python_full_version >= "3.7.0"
six==1.16.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.3.0"
sniffio==1.2.0; python_version >= "3.7" and python_full_version >= "3.7.0"
sqlalchemy==1.4.40; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0")
starlette==0.19.1; python_version >= "3.6" and python_full_version >= "3.6.1"
tomli==2.0.1; python_full_version < "3.11.0a7" and python_full_version >= "3.6.2" and python_version >= "3.7"
typing-extensions==4.3.0; python_version >= "3.7" and python_full_version >= "3.7.0" and python_version < "3.10"
uvicorn==0.18.2; python_version >= "3.7"
yarl==1.8.1; python_version >= "3.7"

@Ali-Parandeh Sorry you're running into this, dependency resolution in Python can be hell sometimes.
Is there a reason you need to use aiohttp? Removing that dependency works for me.

@RobertCraigie I was trying to implement a /health endpoint where I send an async GET request to /users to get some data in FastAPI from the DB using prisma-python to check that everything is working.

If the request is not async then FastAPI just hangs.

@Ali-Parandeh Ah okay, in that case you could switch to using httpx instead as that is what Prisma Client Python uses internally and they have async support: https://www.python-httpx.org/async/.
Actually I've just realised that http3 is actually just an old version of httpx, you should definitely upgrade to use httpx.

@Ali-Parandeh can this be closed now?

Ahhh I see. Thank you I will use that instead. Yes please you can close this issue


Pass in the current LLDB module whenever a Swift scratch context is r...

…equested.
Using the scratch context for dynamic type resolution has uncovered a
couple of omissions in the original fallback mechanism
implementation. This patch adds a few convenience accesors that make
it easy to always get access to the most appropriate Swift scratch
context in all situations.
The testcase causes the scratch context to get destroyed by a
conflict that is triggered via dynamic type resolution via "frame variable".
rdar://problem/42554384

@swift-ci test

@swift-ci test and merge


fix(elasticsearch): fix ELASTICSEARCH_HOST in setup job

Aslo upgrade elas…ticseach-exporter dependency.

cc @maxime1907


ERROR 2027 (HY000): Malformed packet

Server version: 5.7.32-log MySQL Community Server (GPL)
执行show slave hosts；mysql版本5.7.32遇到下列报错，mysql版本5.7.20可以正常运行
root@mysqldb 15:54:40 [(none)]> show slave hosts;
ERROR 2027 (HY000): Malformed packet

suspecting I use the wrong MySQL version so this issue is not fixed 😂

not fixed, see https://github.com/pingcap/ticdc/issues/3419#issuecomment-996431072

We need more tests for that 😔


Sort order of plugins is not stable

Following #145, it is noticable that plugins are not sorted in a stable manner. Running tests repeatedly with the slow tests result handler enabled demonstrates this when the output order changes with the regular output summary and slow tests summary sometimes changing order between runs.

Closed by #155.


vis-thresholds not applying to graph correctly

Hi.
I am trying to add a threshold line to a timeseries graph, and although it is appearing, it is appearing in the wrong place and with d3 library errors.
Code below, and screenshots attached
<px-vis-timeseries height="300" width="800" prevent-resize="true" selection-type="xy" enable-tooltip="true" register-location="top" chart-data='[         {"x":1397177400000,"upper":"2","lower":"1","value":"1.5"},         {"x":1397228040000,"upper":"2","lower":"1","value":"2.14"},         {"x":1397248260000,"upper":"2","lower":"1","value":"1.89"},         {"x":1397291280000,"upper":"3","lower":"2","value":"2.895"},         {"x":1397318100000,"upper":"3","lower":"2","value":"2.21"},         {"x":1397342100000,"upper":"4","lower":"3","value":"3.5"}         ]' include-all-series="true"         event-data='[{"id":"ThresChange","label":"ThresChange","x":"1397291280000"}]'         event-config='{"ThresChange":{"color":"blue","icon":"fa-camera","type":"fa","offset":[0,0]}}'         time-data="Date"         x-axis-config='{"title":"Created Date","labelPosition":"center","orientation":"bottom"}' y-axis-config='{"title":"Recoded Value","labelPosition":"center","orientation":"left"}'         ></px-vis-timeseries>

All your numbers are cast as strings. Please remove the quotes. That undoubtable is why the timestamp is wrong.
Also FYI, you're using Events, not Thresholds. That is a separate component.

closing for now


net: openthread: Refactor openthread entropy otPlatEntropyGet.

This comit removed direct entropy device driver calss to sys_csrand_get, which is recommended way of getting crypto secure random buffer.

Nit: some typos in commit message (comit, calss).
Also the wording is a bit odd, maybe change "removed ... to" to "replaces ... with".


Adding Prettier

It uses the same setup as the Berty app. Are we okay with this?
To see it running:
make lint

Signed-off-by: Iuri Pereira<EMAIL_ADDRESS>

I pushed two commits to use Eslint for linter and prettier rules, so we have only one source of truth: .eslintrc.cjs file.
Is-it good for you?


Changefeed Fails to Replicate 'Drop Primary Key' DDL

What did you do?
When a table with a primary key (PK) is replicated by Changefeed, the 'Drop Primary Key' DDL command of it is not replicated as expected.
This resulted in the subsequent Add Primary Key operation failing to replicate because the table downstream still retained the old Primary Key.
What did you expect to see?
Both Drop PK and Add PK DDL can be replicated.
What did you see instead?
as above.
Versions of the cluster
Upstream TiDB cluster version (execute SELECT tidb_version(); in a MySQL client):
(paste TiDB cluster version here)

Upstream TiKV version (execute tikv-server --version):
(paste TiKV version here)

TiCDC version (execute cdc version):
v8.0.0

😇 How to reproduce?
First:
CREATE TABLE t1 (
id INT PRIMARY KEY /*T![clustered_index] NONCLUSTERED */,
name VARCHAR(255),
email VARCHAR(255) UNIQUE
);

INSERT INTO t1 (id, name, email) VALUES (1, 'Alice Smith', 'alice.smith@example.com');
INSERT INTO t1 (id, name, email) VALUES (2, 'Bob Johnson', 'bob.johnson@example.com');
INSERT INTO t1 (id, name, email) VALUES (3, 'Charlie Brown', 'charlie.brown@example.com');
// All dml above are replicated

And then:
alter table t1 drop primary key; // Was not replicated

INSERT INTO t1 (id, name, email) VALUES (4, 'dongmen', 'dongmen@example.com');   // Was not replicated

alter table t1 add primary key (id); // Was not replicated

The current workaround to this issue involves setting force-replicate=true in the changefeed configuration. This allows the replication of the ineligible table.
It's important to note that after executing the drop primary key ddl, all Data Manipulation Language (DML) operations on table t1 are ignored. This is because the table has become ineligible (a table without a primary key and a non-null unique key). As a result, all DML operations between drop pk and add pk may be lost.

Workaround
The current workaround to this issue involves setting force-replicate=true in the changefeed configuration. This allows the replication of the ineligible table. And no ddl or dml will be lost by the way.
Solution
Solution 1:
One potential solution is to replicate the Drop Primary Key DDL on a table that only has the dropped primary key and no other non-null unique key. However, this could potentially result in data loss. Upon executing the Drop Primary Key DDL, all subsequent DML operations on table t1 are ignored. As described in the official documentation, by default, changefeed only replicates tables with valid indexes, where valid indexes refer to primary keys or non-null unique indexes. Because this table only has primary key as a valid index, after dropping primary key, the table's DML is no longer replicated. Consequently, all DML operations conducted between Drop Primary Key and Add Primary Key may be lost.
Solution 2:
Another possible solution is as follows: When replicating a table with only one valid index, if TiCDC receives a DDL to delete this valid index, it should terminate the changefeed and report an error. The error message should warn the user that this is a potentially risky operation that could lead to data loss, so we refuse to do it. If the user needs to continue replication, they need to modify the changefeed configuration to force-replicate=true to avoid data loss. However, this operation may lead to data redundancy, please refer to the official documentation. Lastly, our documentation needs to provide a detailed explanation of this behavior.

@Benjamin2037 What do you think about @asddongmen 's suggestion? BTW, I prefer solution 2. Because data lost is a more serious situation.

Thank you for your valuable input.

Does dropping one index and adding another index in the same transaction avoid this problem?

The TiDB does not support executing multiple DDL in a same transaction.

Do we recommend they add the second index beforehand, and then later drop the original index?

Yes, this is a feasible way to avoid this problem. We can include this in the documentation.
@benmeadowcroft
cc @flowbehappy

/found customer


Exception when attempts count is reached in Prompt

Why the Prompt<T, U> throws an Exception if attempts count is reached? How caller code should recognize that case? Even the PizzaBot sample fails if you try to enter Today instead of day of week three times.
Maybe it'll be better to replace it on call of Done passing default value of T?
context.Done(default(T))

In the callback specified when the Prompt is called, the await on the IAwaitable should propagate the exception, so you should be able to detect that case.
If you're suggesting "exceptions as control flow" is not appropriate, that's a reasonable position to take - I don't understand what you mean yet.

Well, let me try to explain again:

It isn't clear that caller code should surround the await result; statement with try ... catch to handle the too many attempts case in the resume handler. (I just found the clue)
Thrown exception is of too unspecified type to be clear when it was a logic error or the too many attempts case. (You can compare the exception message though, but that's not a good practice)
If you forget to use the try ... catch, then whole the pipeline fails, so the await context.PostAsync(this.MakePrompt(context, promptOptions.TooManyAttempts)); actually doesn't make sense. Otherwise, you can post ex.Message right from your catch block.

So, yes, the bottom line is to avoid using of exception as control flow here. Another option is to use a dedicated exception type and to make it more clear in the comments for Prompt.

I'll go with the "use a dedicated exception type and to make it more clear in the comments for Prompt" options for now - I agree with the "exception as control flow" comment, but that will take a larger change.

Well, better than nothing.
Could you clarify please why call of Done passing default value of T doesn't work? For me that pretty small change should fix the problem without major harm to compartibility.
Do you expect introduction of a default option in the PromptOptions for the full fix? If you are able to explain this I'm glad to contribute with implementation PR.

Done(default(T)) seems like "swallowing the error".  For example, if T were an Int32, and the user typed "a" too many times, should we silently return default(T) which is 0?
For references types, it may be better, though it pushes a TooManyAttemptsException now into a NullReferenceException later.
It seems like the best solution is to have it return an Option type, where there is a clear signal between Success and Failure.

That explanation is much more clear and sounds reasonable, thank you. Actually, I didn't take in account any cases of T type except bool, string or an enum, and all of them should work with default(T).
So, what do you think, is the team able to push an effort for this in the nearest future? If no, are you guys open for contributions here?

Which solution are you thinking?  The one based on the Option type?

Yes, I assume it is acceptable and looks good to me.

Sorry for the delays - I've been thinking of the backward compatibility story.  We could have overloads of the Prompt methods, one which takes the delegate with the IAwaitable argument and another that takes the IAwaitable<Option> argument (Option for "expected" failure due to retry exhaustion, IAwaitable for "unexpected" failures) so that a prompt caller could declare their intention to handle retry exhaustion without exceptions.

Closing this issue. Thanks!


Fix a NullPointerException when configuration.secret is omitted.

The OpenID Connect specification defines “none” as follows:
https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication
but the Discovery spec makes no mention of “none” under
https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata
token_endpoint_auth_methods_supported and so some IDPs - AWS Cognito
explicitly - leave “none" out, and pac4j follows the secret path and crashes.
Add support for "none", and use it when the secret is not provided.

Thanks for your contribution.


ERROR: for saleor_db_1  Cannot start service db: b'driver failed programming external connectivity on endpoint saleor_db_1 (86c7db8721dc655b347d72cb576c2b9ebfe8868f8571643f3a07c2060fedd921): Error starting userland proxy: mCreating saleor_redis_1 ... error
ERROR: for saleor_redis_1  Cannot start service redis: b'driver failed programming external connectivity on endpoint saleor_redis_1 (724d0440d73565b25df5cfc3e45583cf457a0ae9064e9ae1a1cca87ab29a0cd3): Error starting userland proxy: mkdir /port/tcp:<IP_ADDRESS>:6379:tcp:<IP_ADDRESS>:6379: input/output error'
ERROR: for db  Cannot start service db: b'driver failed programming external connectivity on endpoint saleor_db_1 (86c7db8721dc655b347d72cb576c2b9ebfe8868f8571643f3a07c2060fedd921): Error starting userland proxy: mkdir /port/tcp:<IP_ADDRESS>:5432:tcp:<IP_ADDRESS>:5432: input/output error'
ERROR: for redis  Cannot start service redis: b'driver failed programming external connectivity on endpoint saleor_redis_1 (724d0440d73565b25df5cfc3e45583cf457a0ae9064e9ae1a1cca87ab29a0cd3): Error starting userland proxy: mkdir /port/tcp:<IP_ADDRESS>:6379:tcp:<IP_ADDRESS>:6379: input/output error'
ERROR: Encountered errors while bringing up the project.`
The docker-compose.override.yml file looks like this:
`version: '2'
services:
web:
tty: true
stdin_open: true
ports:
  - 8000:8000
command: python manage.py runserver <IP_ADDRESS>:8000
volumes:
  - ./saleor/:/app/saleor:Z
  - ./templates/:/app/templates:Z
  - ./tests/:/app/tests
  # prevents overshadowing of build-time assets
  # - /app/saleor/static/assets
  - ./webpack-bundle.json:/app/webpack-bundle.json
  # - /app/templates/templated_email/compiled
  # shared volume between celery and web for media
  - saleor-media:/app/media

db:
ports:
- 5432:5432
redis:
ports:
- 6379:6379
celery:
volumes:
- ./saleor/:/app/saleor:Z
- ./templates/:/app/templates:Z
# prevents overshadowing of build-time assets
# - /app/templates/templated_email/compiled
# shared volume between celery and web for media
- saleor-media:/app/media
volumes:
saleor-media:
`
It only works if I remove the line in override file with the web bind mount - ./webpack-bundle.json:/app/webpack-bundle.json
Does anyone has any idea why is this happening. I cannot run Saleor locally with Docker as I cannot mount the assets for local development and building the project for each amendment is time consuming at least.
Thanks

I still face this issue in my system - can someone help

./webpack-bundle.json:/app/webpack-bundle.json is not there

Anoops-MacBook-Air:tapchief_saleor anoopsethu$ docker-compose run --rm web python3 manage.py migrate
Starting **_saleor_redis_1 ...
Starting **_saleor_db_1    ... error
Starting **_saleor_redis_1 ... done
ERROR: for **_saleor_db_1  Cannot start service db: Ports are not available: listen tcp <IP_ADDRESS>:5432: bind: address already in use
ERROR: for db  Cannot start service db: Ports are not available: listen tcp <IP_ADDRESS>:5432: bind: address already in use

Hi @anoopsethu you have already installed and run postgreSQL in background. This local program use port 5432.
Please try:
sudo service postgresql stop sudo update-rc.d postgresql disable

I have the same problem with redis. I tried to stop, disable, shutdown redis, close ports etc. but nothing seemed to work.
My error code:
Starting saleor-platform_jaeger_1 ... done
Starting saleor-platform_redis_1  ... done
Starting saleor-platform_redis_1  ... error
ERROR: for saleor-platform_redis_1  Cannot start service redis: driver failed programming external connectivity on endpoint saleor-platform_redis_1 (265da4dd1358b200ab4f1859c420df6a5561bf94ba9438e48f85cbfacf97c8e7): Error starting userland proxy: listen tcp <IP_ADDRESS>:6379: bind: address already in use
ERROR: for redis  Cannot start service redis: driver failed programming external connectivity on endpoint saleor-platform_redis_1 (265da4dd1358b200ab4f1859c420df6a5561bf94ba9438e48f85cbfacf97c8e7): Error starting userland proxy: listen tcp <IP_ADDRESS>:6379: bind: address already in use
ERROR: Encountered errors while bringing up the project.

@nurhesen thanks bro, after I removed Redis from the software center it's work fine.

It worked after I uninstall postgresql.

sudo kill -9 $(sudo lsof -t -i:6379) works


Always assign locale in detect_locale()

Turns out there are scenarios when session["language"] is set but not assigned to the respective piscsi_cmd and file_cmd object members.
This change always executes said assignment in detect_locale().

I don't understand why the CI job is failing. Tried running with debug logging but it did not give any insights that I could spot.

I ran the web ui integration tests locally and they passed

To capture a Discord discussion: It was failing because Flask 2.3.x removed support for Python 3.7. Bumping the container to Bullseye gets us Python 3.9.


[Acceptance tester] Add command birthday format

As seen from the picture, the birthday format is incomplete in the Example that shows to the user.

Fixed!

Alright! I will close this issue then! Thanks!


Add "data dominates" quote by Pike

See https://github.com/hbz/elag2019-bootcamp/issues/2 @fsteeg, please take a look if you think this improves the slides and merge if yes.

@acka47 +1, and I tweaked the header (and the previous one for formatting), please merge if OK.


HMR Does Not Perform Swap

Hello Guillaume, and great work! Loving Kotatsu and I hope you maintain it for a long time to come.
I'm having an issue using Kotatsu with HMR -- kotatsu start --es2015 index.js prints:
[kotatsu] (v0.13.0)
[kotatsu] Compiling...
[kotatsu] Done!
[kotatsu] Starting your script...
[kotatsu] HMR connected.

index.js is as follows:
import app from './config/express';
import http from 'http';

const server = http.createServer(app);
const debug = require('debug')('ms-boilerplate:index');

server.listen(8888);

// listen on port config.port
if (module.hot) {
	module.hot.accept('./config/express.js', () => {
		server.removeListener('request', app);
		let express = require('./config/express.js');
		server.on('request', express);
		debug('Server reloaded.');
	});
}

export default app;

express.js contains the standard express configuration, where the usual middleware etc. gets set up. When I edit and save express.js however, HMR doesn't seem to rebuild the bundle. It's worth mentioning that nodemon also appears to fail; it doesn't trigger the tasks (in gulp) that it should trigger. I thought this might have been an issue with OS X, so I spun up a fresh VM and tried again -- but the same issue results with both kotatsu and nodemon.
All routes work when I test them with swagger-ui; but HMR (or the file watcher) seems to refuse to rebuild on any changes.
Any help would be greatly appreciated. Cheers!

Hello @iantanwx. This is quite strange indeed. Can you try to change this line:
let express = require('./config/express.js');

into this:
let express = require('./config/express.js').default;

and tell me whether this does the trick?

@Yomguithereal Unfortunately that doesn't solve the problem. It might be a problem with OS X...

Can you send me a whole use case so I can test this on my end and find the issue?

@Yomguithereal Most certainly sir, let me clone my info, remove my tokens, and I'll put you on it.

Ok, I added you to the repo @Yomguithereal

Ok, so I tried the repo, installed the deps, started the server and, after I changed this line:
let express = require('./config/express.js').default;

the HMR does work (else it will fire an error because without the default you are trying to attach an undefined handler and the event emitter does not like that).

@Yomguithereal I think it's an issue with OS X on this particular machine. I ran the same repo on my MBP and everything worked out fine. It seems it's just this machine, sorry for the hassle.


Trouble with Storyboard Segues

Hi there,
I have an instance of a OnboardingViewController named HomeViewController on my Storyboard and it is set to be the 'Initial View Controller', followed the example here: https://github.com/mamaral/Onboard/issues/31#issuecomment-75390136
It's showing the Onboarding flip-book, but when I try to use a Segue after they hit the last button it chucks up the error:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Receiver (<HomeViewController: 0x7fc8cbdaaf70>) has no segue with identifier 'GO''

This is how the page is created:
OnboardingContentViewController *firstPage = [[OnboardingContentViewController alloc] initWithTitle:@"Welcome" body:@"This is a demo."
Is there a way to do this?  I would much rather do it this way than the appDelegate way.  It all seems to be working except for pushing to the next view controller.
Many thanks

Have you set the segue identifier for "Go" in interface builder?

Yes its a Push segue with the identifier "GO"

hmm perhaps that's the problem. I'll have to look again at the example you posted a link to, but whenever I've implemented this the transition from the onboarding to the app itself has never been a push, it's always been a direct swap of the root view controller of the app. I don't mess around with storyboards and segues often, so I don't know how much I would be able to help without maybe a sample app to run?

If you could get me a sample project I could tinker with, I'll try and see what's going on. In the meantime - I'm going to close this until there's an update.


Support GKE authentication for v1.26+

What problem are you facing?
GKE is moving to a dedicated gke-gcloud-auth-plugin for cluster authentication. From the announcement:

This new binary, gke-gcloud-auth-plugin, uses the Kubernetes Client-go Credential Plugin mechanism to extend kubectl’s authentication to support GKE. Because plugins are already supported by kubectl, you can switch to the new mechanism now, before v1.26 becomes available.

How could Crossplane help solve your problem?
Ensure that our gke authentication flow will still be compatible with GKE for versions 1.26+

Having this same issue. I'm working on a fix on my fork, but unsure how to change the Makefile so that the provider gets packaged with the controller + the plugin binary


feat(StudyList.js): replacing double click to single click

What
Replacing double click when selecting a study to single click
Why
There is an opened issue that explains the reason: #506

LGTM 👍
Preview: https://deploy-preview-87--ohif-react-viewerbase.netlify.com/components/study-list


fix empty site detection, not populating menu

I'm wondering if all the === '' should be changed to a more reliable empty detection.  I used "empty()" for this instance.
the === '' was failing and skipping the section where the sites were pulled.
Another thing I noticed was that if the controller url doesn't include the protocol (https://), version detection fails.  Maybe this should be prepended automatically if it's missed?  If I remember correctly, the example in the config template seems to suggest that just the ip and port is fine.  Let me know if I should create an issue or separate pull request for that.

Yeah, makes sense! That's one of those things that sneaks in in the early stages of the development cycle and never get's noticed... until someone like you comes by:wink:
BTW, I was reading up on some stuff this afternoon and saw some benchmarks that isset() is fractionally faster than empty():
http://www.phpbench.com/
Interesting read.
I'll merge this PR, and if you have a suggestion for the url "validation" please submit a new PR and I'll merge that in as well.
Thanks!

Great, thanks! Make sure you look closely at both isset() and empty();
isset will only return false if the variable is NULL or hasn't been set at
all. It won't match FALSE or an empty string. I use either one, depending
on the use case.  empty might be a small bit slower, but it seems to be a
better fit in this instance. What do you think? Hope that helps.
On Jun 16, 2017, at 11:45 AM, malle-pietje<EMAIL_ADDRESS>wrote:
Yeah, makes sense! That's one of those things that sneaks in in the early
stages of the development cycle and never get's noticed... until someone
like you comes by😉
BTW, I was reading up on some stuff this afternoon and saw some benchmarks
that isset() is fractionally faster than empty():
http://www.phpbench.com/
Interesting read.
I'll merge this PR, and if you have a suggestion for the url "validation"
please submit a new PR and I'll merge that in as well.
Thanks!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/malle-pietje/UniFi-API-browser/pull/30#issuecomment-309061341,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADzhQKhkHpz2FuNFOvcBhRP91Pj9d6c4ks5sEqMNgaJpZM4N8jYs
.

I surely do and agree that it fits the purpose well in your PR :thumbsup: I wrote my response when I was busy with something else so it wasn't that precise and more meant as a general comment:wink:


Add license_file and rerender

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

Tests pass now.

Thanks @isuruf .


Docs improvements

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

Project coverage is 52.08%. Comparing base (4e06e41) to head (9959f36).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #84      +/-   ##
==========================================
+ Coverage   51.91%   52.08%   +0.17%
==========================================
  Files          15       15
  Lines        3057     3068      +11
  Branches      137      137
==========================================
+ Hits         1587     1598      +11
  Misses       1425     1425
  Partials       45       45

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


Result.fetch seems not to release memory

Bug Report
Hello I had an usecase where I have to traverse whole database and do some action. For that I open a long running transaction that would query all of the results and return a cursor that would give me access to fetch all of the results.
In the example below I am using fetch() to get the next 100 records from the query. This runs fine but the memory is growing into gigabytes and finally crashes the script. Is there something I am missing here or the fetch() does not really release some buffers while fetching the next part?
from neo4j import GraphDatabase

neo4j_host = "localhost"
neo4j_port = "7687"
neo4j_user = "neo4j"
neo4j_password = "xxxxxxx"
batch_size = 100

print(f"Connecting to {neo4j_host}")

driver = GraphDatabase.driver(f"bolt://{neo4j_host}:{neo4j_port}", auth=(neo4j_user, neo4j_password), encrypted=False)

with driver.session() as session:
    with session.begin_transaction() as transaction:
        total = transaction.run("MATCH (a) RETURN COUNT(a) AS count").single().data().get('count')
        result = transaction.run("MATCH (a) RETURN a")

        print(f"Total records to process is {total}")

        nodes = result.fetch(batch_size)

        while len(nodes) > 0:
            nodes = result.fetch(batch_size)

driver.close()
print("Done")

My Environment
Python Version: 3.11.2
Driver Version: 5.6.0
Server Version and Edition: 5.3.0 community
Operating System: macOs 13.2.1 (22D68)

Hi and thanks for reaching out. Admittedly, I was unsure what's going on here myself at first. I then loaded a db with dummy data and tried your code. I was able to reproduce it and quickly realized the culprit: you are querying nodes. The driver will in the background track all graph types (nodes and relationships) and build an in-memory graph. This enables very convenient things like getting some_ralationship.start_node if that start node was anywhere in the result set. But sure enough it comes at the price of higher memory requirements.
What you can do to alleviate this: don't return the full node. You could, for example change
MATCH (a) RETURN a

to something along the lines of
MATCH (a) RETURN a {.*, labels: labels(a)}

. This assumes that no node has an attribute labels, else, that'd just be overwritten in the output.

Hello @robsdedude,
After further debugging we found this growing graph variable and were supposed to tell but you were faster :)
I changed the query following your suggestion and now its perfect.
Thanks for the fast support!


Empty Future response for successful DeploymentsClient.CreateOrUpdate

When running the Go quickstart for VMs (https://docs.microsoft.com/en-us/go/azure/azure-sdk-go-qs-vm) against the latest SDK, the quickstart crashes because it makes the assumption that results returned from deployments will contain data. The offenders appear to be:
	err = deploymentFuture.Future.WaitForCompletion(ctx, deploymentsClient.BaseClient.Client)
	if err != nil {
		log.Fatalf("Error while waiting for deployment creation: %v", err)
	}
	return deploymentFuture.Result(deploymentsClient)

	result, err := createDeployment()
	if err != nil {
		log.Fatalf("Failed to deploy correctly: %v", err)
	}
	log.Printf("Completed deployment: %v", *result.Name)

The deployment has completed, according to a CLI query:
{
  "id": "/subscriptions/.../resourceGroups/GoVMQuickstart/providers/Microsoft.Resources/deployments/VMDeployQuickstart",
  "name": "VMDeployQuickstart",
...
    "provisioningState": "Succeeded",

This crash can be avoided by removing the Printf statement here, but this is a breaking change from a release in mid-February and indicates that the SDK may not be properly retrieving information from successful operations. It is unclear if this affects other responses retrieved from futures.

I think this is a regression introduced in the fix for https://github.com/Azure/azure-sdk-for-go/issues/1000

This seems an issue for all clients, container instance has the same problem.
I see the referenced issue had this question

What is the correct was to determine whether or not we need to perform a final GET to retrieve the result of an async operation? Originally we predicated this based on the polling method, i.e. if the method is Location (returns Location header) then the final response will contain the value, else if it's AsyncOperation (returns Azure-AsyncOperation header) then perform a GET. In this case the 202 returns both Location and Azure-AsyncOperation headers so the code assumes the polling method is AsyncOperation and attempts to perform a GET which is incorrect.

AFAIK Azure-AsyncOperation uri will never return the provisioned resource, regardless it is from a 202 response or 201 response. To get the resource properties, I think we should preform GET on the original resource uri itself.

This has been fixed in v17.0.0 of the SDK, https://github.com/Azure/azure-sdk-for-go/releases/tag/v17.0.0


Tablet  and Desktop views

Added  Tablet and Desktop view to a mobile-first website to make it fully responsive.

Please I need more explanation
On Wed, Oct 23, 2024, 11:57 AM Umar Lawan Sani @.***>
wrote:

@.**** requested changes on this pull request.
Hi @musyelevateher https://github.com/musyelevateher
Good job so far!
You still need to work on some issues to get your project approved, but
you are almost there!
[image: Remote Collaboration]
https://camo.githubusercontent.com/7cf1ba8db9cd08f454a9651e48128c064a4440a59881658c8593a41a8de243f3/68747470733a2f2f6d656469612e67697068792e636f6d2f6d656469612f744b797263304e546c4563475764546870342f67697068792e676966
To Highlight 💯

Clean code 👍
Good use of Gitflow 👍
Implemented some project requirements 👍

Required Changes ♻

Make your website especially the section which i will attach the
image below to be centrallly aligned

image.png (view on web)
https://github.com/user-attachments/assets/58f8ae76-61a9-4f75-a541-547d01c6a3b7

Try adjusting the blue blurry image to avoid making the website to
overflow i.e.(Making your website moving horizontally, moving left to right)

Optional Suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this
PR. However, I strongly recommend you to take them into account as they can
make your code better.
Cheers and Happy coding! 👏👏👏
Feel free to leave any questions or comments in the PR thread if
something is not 100% clear. Please, remember to tag me in your question so
I can receive the notification.
—
Reply to this email directly, view it on GitHub
https://github.com/musyelevateher/TRAVEL-WEBSITE-II/pull/2#pullrequestreview-2388208676,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BKEFODDTK5Z3C4PGJ457NYTZ456JRAVCNFSM6AAAAABQDLU2QGVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDGOBYGIYDQNRXGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Sorry just seeing this, please reach out to me on slack to know where your
having issues.
Thanks
On Wed, Oct 23, 2024 at 12:35 PM musyelevateher @.***>
wrote:

Please I need more explanation
On Wed, Oct 23, 2024, 11:57 AM Umar Lawan Sani @.***>
wrote:

@.**** requested changes on this pull request.
Hi @musyelevateher https://github.com/musyelevateher
Good job so far!
You still need to work on some issues to get your project approved, but
you are almost there!
[image: Remote Collaboration]
<
https://camo.githubusercontent.com/7cf1ba8db9cd08f454a9651e48128c064a4440a59881658c8593a41a8de243f3/68747470733a2f2f6d656469612e67697068792e636f6d2f6d656469612f744b797263304e546c4563475764546870342f67697068792e676966>

To Highlight 💯

Clean code 👍
Good use of Gitflow 👍
Implemented some project requirements 👍

Required Changes ♻

Make your website especially the section which i will attach the
image below to be centrallly aligned

image.png (view on web)
<
https://github.com/user-attachments/assets/58f8ae76-61a9-4f75-a541-547d01c6a3b7>

Try adjusting the blue blurry image to avoid making the website to
overflow i.e.(Making your website moving horizontally, moving left to
right)

Optional Suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this
PR. However, I strongly recommend you to take them into account as they
can
make your code better.
Cheers and Happy coding! 👏👏👏
Feel free to leave any questions or comments in the PR thread if
something is not 100% clear. Please, remember to tag me in your question
so
I can receive the notification.
—
Reply to this email directly, view it on GitHub
<
https://github.com/musyelevateher/TRAVEL-WEBSITE-II/pull/2#pullrequestreview-2388208676>,

or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/BKEFODDTK5Z3C4PGJ457NYTZ456JRAVCNFSM6AAAAABQDLU2QGVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDGOBYGIYDQNRXGY>

.
You are receiving this because you were mentioned.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://github.com/musyelevateher/TRAVEL-WEBSITE-II/pull/2#issuecomment-2431822311,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A3SWBV427ZIWLOVXZMUFHLLZ46CYLAVCNFSM6AAAAABQDLU2QGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZRHAZDEMZRGE
.
You are receiving this because you commented.Message ID:
@.***>


feat: throw an error if unable to find downstream actor index during the scaling process.

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Under the latest table resize policy, there are occasional instances of not being able to find downstream actor information from the dispatcher.
During the resize process, it is necessary to build an actor index. However, a peculiar phenomenon was observed during the organization of the no-shuffle dependency.
Theoretically, the table fragments obtained by the fragment manager should contain all actor information. However, while traversing each actor's dispatcher, there are occasional incidents where the downstream actor id corresponding actor cannot be found, hence existing a ghost actor.
At present, this problem has only occurred a few times and is difficult to reproduce. Therefore, this PR has changed the warning here to throw an error and directly return. The expected impacts will be on the auto scale and alter parallelism statements.
Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

The root cause hasn't been identified yet, simply retry on recovery by returning error here could lead to endless recovery loop, which is quite dangerous. According to the problematic scenarios, the cluster can still get recovered even though these warnings were emitted. I suggest not to change it for now and keep investigating.


C cpp

Description 📜
This is the code for reversing a linked list without using a stack in C
Fixes #956

Type of change 📝

[x] Documentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[x] C/CPP
[x] DSA

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

[Reversal.txt](https://github.com/girlscript/winter-of-contributing/files/7202732/Reversal.txt)

Make a new pull request from "a branch of YOUR FORK"


How to aquire images continuously?

I would like to continuously acquire images as fast as possible, and use a function to process that. How can I set up such an acquire event? Is there any example?

Maybe I should use core.start_continuous_sequence_acquisition()? Is it efficient enough to acquire images fast?

Acquisition class is calling that under the hood.
Check out:
https://pycro-manager.readthedocs.io/en/latest/hardware_triggering.html
For on the fly processing youll be limited to 100 MB/s (see supplementary info in the publication for more info)


XML Literals

I would very much like to see proper syntax highlighting and indentation for XML literals.

Even just proper indentation would be nice. I just realized I accidentally indent-region'ed a whole file yesterday, so I'll have to go through and manually reindent everything that broke.

this is a deprecated language feature


pkgsCross.wasi32.haskell.compiler.{ghcHEAD,ghc961}: new wasm backend

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Exciting! Thanks @sternenseemann

Progress report: A first step is done with https://github.com/NixOS/nixpkgs/pull/241739 which updates LLVM and wasilibc which are both a requisite for building GHC's wasm backend in nixpkgs. This doesn't get allow us to build GHC yet, though:

GHC requires custom patches for wasi-libc that are not particularly well documented, but integral to how GHC's rts achieves its normal behavior under the strange memory conditions of WASM: https://gitlab.haskell.org/ghc/ghc/-/blob/53ed21c5d142961848f4b24fa8d5f45d500b9494/rts/wasm/OSMem.c#L1-49
Additionally, GHC upstream has custom patches for LLVM and wasi-libc, among other things injecting mimalloc into wasi-sdk's LLVM build. I'm not certain if or how required these are—this is made more difficult by the fact that nixpkgs doesn't rely on wasi-sdk at all.
Building a WASM GHC also requires to apply patches to GHC: https://gitlab.haskell.org/ghc/ghc/-/blob/cc25d52e0f65d54c052908c7d91d5946342ab88a/.gitlab-ci.yml#L816-821
It also requires a custom libffi with a very crude build system that luckily was easy enough to package.

All of this leads me to conclude that the WASM backend is a technology preview in a very different sense to the JS backend. Consequently, I'm quite unenthusiastic about packaging this at the moment, since there is not really a clean way to do so. We'd need something akin to a pkgsCross.wasi32-ghc with a lot of weird patches—I'd rather wait for GHC upstream finding more permanent solutions or getting their changes into an upstreamable shape (i.e. I get the impression that the changes made for GHC's benefit would break other code).

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/how-to-get-haskell-wasm-work-for-haskell-flake/38318/3


Draft: making contributing easier

Hi! First of all, thank you very much for this project! I wanted to write such a thing for a while but never managed to get to it.
As I do not consider this PR ready (will explain with a short list what I think we miss),  it is not meant to be merged yet. It is more a proposal and I find polite to bring some code in when proposing changes to an open source project.
I like the project a lot and would like to add a few things I believe are good way  to increase the chances people will contribute to it.
I'm going to make an initial list of things I would love to help with:

[ ] Makefile
I already added a draft of the Makefile I would add in the PR so it is easier to discuss about it. I use a similar solution in all the golang projects I work on and it works nicely.
[ ] Adding a CONTRIBUTING.md
Some documentation about how to get the project up and running locally using the Makefile we have just discussed
[x] Adding a code of conduct
I start off  http://contributor-covenant.org/ an awesome project that makes it very easy for people to add a good code of conduct to their projects. I consider it good practise too, it shows care and increases the chances of getting people to contribute to your project
[ ] Update the README
It makes sense to link the contributing.md and the code of conduct

Right now, make test shows this output to me:
go test  -cover $(glide novendor) -run . -timeout=30s
ok      github.com/goreleaser/releaser/config   0.025s  coverage: 51.7% of statements
ok      github.com/goreleaser/releaser/config/git       0.068s  coverage: 100.0% of statements
?       github.com/goreleaser/releaser/pipeline [no test files]
ok      github.com/goreleaser/releaser/pipeline/brew    0.022s  coverage: 16.3% of statements
?       github.com/goreleaser/releaser/pipeline/build   [no test files]
ok      github.com/goreleaser/releaser/pipeline/compress        0.036s  coverage: 6.5% of statements
ok      github.com/goreleaser/releaser/pipeline/release 0.118s  coverage: 16.1% of statements
ok      github.com/goreleaser/releaser/split    0.027s  coverage: 100.0% of statements
ok      github.com/goreleaser/releaser/uname    0.021s  coverage: 100.0% of statements
?       github.com/goreleaser/releaser  [no test files]

I personally love I can get a sense of the coverage right away!
The make lint command reports interesting findings too:
errcheck $(glide novendor)
config/config_test.go:35:10:    os.Chdir("./.test/1")
config/config_test.go:36:16:    defer os.Chdir(cwd)
config/config_test.go:49:10:    os.Chdir("./.test/2")
config/config_test.go:50:16:    defer os.Chdir(cwd)
config/config_test.go:63:10:    os.Chdir("./.test/3")
config/config_test.go:64:16:    defer os.Chdir(cwd)
config/config_test.go:77:10:    os.Chdir("./.test/4")
config/config_test.go:78:16:    defer os.Chdir(cwd)
config/config_test.go:91:10:    os.Chdir("./.test/5")
config/config_test.go:92:16:    defer os.Chdir(cwd)
main.go:52:9:   app.Run(os.Args)
pipeline/compress/compress.go:44:18:    defer file.Close()
pipeline/compress/compress.go:46:16:    defer gw.Close()
pipeline/compress/compress.go:48:16:    defer tw.Close()
pipeline/compress/compress.go:65:18:    defer file.Close()
pipeline/release/release.go:72:18:      defer file.Close()

I generally get some helpers to fix the ones in the tests (we can discuss that in a separate PR if you want!) and just handle the errors in production code.
All my proposal took me a few minutes as I am already using pretty similar solutions so do not worry too much saying no to it if this is not the direction you would like to take. Your projects your rules!
If you like it though I'd be gladly go over a feedback loop with you in order to get it merged. Thank you again for your time!

I did not notice you are using travis CI. If you like the idea (it comes with some costs though) I would add using make ci in the travis config to the list. In the end, that's the purpose of the command :)

Hey @lucapette , thanks for the PR :)
I like the idea of adding a CONTRIBUTING.md and a Code of conduct.
The Makefile seems good too but I guess we need to change some stuff as pointed out on the reviews 👍
It would also be good to wire the makefile in the CI.
Overall, good PR, thanks 🍻

hey @lucapette , check #32

@caarlos0 looks good! Should we close this one? How do you prefer to proceed? I can still draft a contributing doc based on the Makefile we're working on together. Apart from that the only thing missing is using make ci in the travis config I think

@lucapette I think we can merge #32 and sure, you can work on the CONTRIBUTING.md if that's ok to you..

@caarlos0 that sounds great!


Mail chimp API isn't up to Apple's default security standards for iOS 9

https://developer.apple.com/library/prerelease/ios/technotes/App-Transport-Security-Technote/
Work around:
Add the following to info.plist
     <key>NSAppTransportSecurity</key>
     <dict>
          <key>NSAllowsArbitraryLoads</key><true/>
     </dict>

You don't want to do this, you should explicitly define the URL's you allow the system to use.


Added links to full code under each of the snippets.

Summary
This is a proposed solution to this issue: https://github.com/algorand/docs/issues/100 and could be applied to this issue later too: https://github.com/algorand/docs/issues/57
Problem
Some of the code snippets are better understood within the context of the full code example, which is located at the bottom of the page. We received feedback that people didn't even know about this full example.
Proposed Solution
Put a header above the full code example at the bottom of the page so that it shows up in the Table of Contents and becomes linkable. Then place a link to it underneath each code snippet.
Alternatives Considered
There are a number of ways you could solve this problem. I've listed two below but you can imagine variations of these too. It's not clear which one is best. I chose the most subtle one with the assumption that it would at least help to solve the problem and we can always do something more drastic later if needed.

Place the link above the code snippet - Thought it was better for the user to see the focused code snippet first. Otherwise they could click the link, see the code for all the other examples, and not necessarily know where to look.
Place the full code example at the top of the page so users are anchored in knowing that there is a full code example behind each code snippet they see thereafter. The full code example was not optimized (with commenting for example) but the walkthrough was. Therefore, I think it is a better user experience to see the walkthrough first. A compromised variation of this could be to link to the full code example at the top so people are aware of it, without it taking over whole the page. We can always add this text now or later too.

Testing

I like this idea! I also sometimes forget about the complete example at the end.
I think the alternative to move the complete example at the beginning has the following additional issue: if you're looking for a very specific part of the documentation (or arrived there with an anchor link), you would also miss completely the complete example on top.


Plug-in for editors

Plug-in for editors to display errors in yaml-files and continuously generating code.

@vlidholt  released vscode extension

We saw it. :) The part that we've written is the code analyzer for the yaml-files, we will have a second look at your stuff to see if we can use it for starting/stopping the server!

Official vscode extension available here: https://marketplace.visualstudio.com/items?itemName=serverpod.serverpod


Modules broken

I'm currently having issues getting modules to work. I'm no expert in Python, but I have added my __init__.py files.

I believe i fix the Issue


Do not emit BOM characters in views.

@kichalla @muratg
https://github.com/aspnet/IISIntegration/issues/199
I'll have to make minor updates to Diagnostics and Hosting as well.

https://github.com/aspnet/Diagnostics/commit/1b1bd34b8d1e42f74a2a438b2ed87af28b5dd016

No changes required for Hosting.

@rynowak


Prevent empty search

If someone tries to search without typing anything in, there is a little message below the search bar to "Please enter a search term".
I've changed it in the two places, where the search bar is implemented and added a little css to the corresponding files.
Please review and merge.

It works for the 'empty search' (no input given) but no reminder is given for the empty string " " , it just searches for it anyways.

good point, I've fixed that now. Now it also shows the message if someone tries to search for only spaces, no matter how many, so any search string needs to contain at least one proper character


coloredlogs.install Does NOT Honor the Command Line Parser click's --debug or --quite Options

Hi,
It seems that coloredlogs.install does NOT honor the command line parser click's --debug or --quite options:
Given:
from coloredlogs import install as coloredlogs_install

    log.debug("debug")
    log.info("info")
    log.warning("warning")
    log.error("error")
    log.critical("critical")

    coloredlogs_install()
    log.info("coloredlogs_installed")

    log.debug("debug2")
    log.info("info2")
    log.warning("warning2")
    log.error("error2")
    log.critical("critical2")

If I run my script with click decorated --debug option:
2019-02-17 03:28:19,961 [DEBUG] debug
2019-02-17 03:28:19,961 [INFO] info
2019-02-17 03:28:19,961 [WARNING] warning
2019-02-17 03:28:19,961 [ERROR] error
2019-02-17 03:28:19,962 [CRITICAL] critical
2019-02-17 03:28:19 INFO coloredlogs_installed
2019-02-17 03:28:19 INFO info2
2019-02-17 03:28:19 WARNING warning2
2019-02-17 03:28:19 ERROR error2
2019-02-17 03:28:19 CRITICAL critical2

As you can see that the DEBUG debug2 output is missing after coloredlogs_installed
The similar issue could be verified if we run my script with click decorated --quiet option.
I am using Python 3.7, and coloredlogs 10.0. Thanks.

It turns out that --debug and --quiet were hijacked by our company's internal library. Closing this as invalid.


Mobile detection on iPad may be broken

According to @gregwfreedman, iPad OS 13+ has a user agent that doesn't say iPad, so our mobile detection may be broken there.

Cherry-picked to v2.5.9.

Out of interest, what's the point of differentiating between iPadOS and macOS Safari? I thought Apple intentionally made it hard to tell them apart so web applications treat them as normal desktop browsers.

In the current master branch and the upcoming v2.6 release, our default UI configuration depends on whether a device is mobile or not.  That's the only reason to detect iPadOS.
For mobile devices (which are primarily touch-based), we put a large play/pause button in the middle of the frame.  For desktop devices (which are primarily mouse-based), we put a small play/pause button next to the current time.
These are only the defaults, and apps can configure the UI however they wish, on any platform.  We provide video.ui.isMobile() for convenience if you want to have a mobile-dependent config like our default.


Pretty Print Tensors

@nathanielsimard I'm new to Rust so I figured I'd give #138 a shot, Let me know if this is somewhere in the ballpark of what you were thinking. I only implemented a pretty print for 2D Tensor structs composed of Ints (or at least that's what I think I did 🙃), and I can generalize to other types later.

@nathanielsimard I think this is pretty much done unless you can think of anything else. I just merged main so the branch is all up to date as well.

@agelas I think the only missing part is fixing the CI (mostly no_std support by importing stuff from alloc) and remove the size function from the tensor API.

@nathanielsimard Ok should be good now, although locally I can't seem to build because the compiler is complaining about the "use of unstable library feature 'unzip_option': recently added" in burn-core/src/optim/simple/adaptor.rs:86:63. Not sure if that will trip up the CI as well.

@nathanielsimard Ok should be good now, although locally I can't seem to build because the compiler is complaining about the "use of unstable library feature 'unzip_option': recently added" in burn-core/src/optim/simple/adaptor.rs:86:63. Not sure if that will trip up the CI as well.

@agelas I'm curious, what is your local Rust version? Maybe I used a newly stabilized function, and I should update the minimum required Rust version in the readme. The CI is always using the latest stable Rust version.

@nathanielsimard Oh I'm on 1.65.0, that might explain it.

@agelas You can run clippy and cargo fmt with the lastest Rust to fix most problems.
cargo clippy --fix
cargo fmt --all

@nathanielsimard clippy and fmt didn't seem to change anything. I added a few more imports from alloc  though hopefully that should fix it.

@nathanielsimard Ok we're getting a little bit closer 😆. The test-burn-ndarray one is strange. I've noticed that sometimes the backend comes back as ndarray, sometimes as tch, do you know what might be up with that?

@nathanielsimard Ok we're getting a little bit closer laughing. The test-burn-ndarray one is strange. I've noticed that sometimes the backend comes back as ndarray, sometimes as tch, do you know what might be up with that?

I think, the tests in ndarray will have ndarray as backend and the ones in tch will have tch. But backends can be used as dev dependencies just to run the tests, so it might change. I would sugest to update the test to use the TestBackend name directly.

I think, the tests in ndarray will have ndarray as backend and the ones in tch will have tch. But backends can be used as dev dependencies just to run the tests, so it might change. I would sugest to update the test to use the TestBackend name directly.

Sorry, not quite sure what you mean by using the TestBackend name directly. Do you mean explicitly doing something like let TestBackend = burn_ndarray::NdArrayBackend<f32>?

Sorry, not quite sure what you mean by using the TestBackend name directly. Do you mean explicitly doing something like let TestBackend = burn_ndarray::NdArrayBackend<f32>?

No I mean in the test, instead of hardcoding the name of the backward in the expected string, maybe use a format!("... backend: {:?}...", TestBackend::name())

@nathanielsimard I'm just gonna remove the doctest lol.

@nathanielsimard alright this time I'm 99% sure it should pass


Set name pointer

I tried to set the name pointer to a different name in my wallet but the button seems to be inactive:

The rest of the transactions with names work smoothly:
Register a name - pass
Name extend - pass

At the current stage of the wallet all this functionality is working. Feel free to reopen this issue, if it will pop up in next versions.


#get helper retrieve pages or posts correctly with tier restrictions

Issue Summary
When I {{#get}} either pages or posts and attempt to loop over them with {{#foreach}}, if those pages/posts are restricted to a specific tier, I don't get any {{content}} except the public preview (if any), whether the user has access to those items or not.
Steps to Reproduce
Create one a tier (link to Stripe to make this possible). I tested in Stripe's test mode.
Create posts/pages that are restricted to only that tier.  (I also created some free and "paid member" posts.)
Create a new page template that includes the following code:

        {{#get "pages" filter="tags:[grabme]"}}
        {{#foreach pages}}

            POST NAME: {{title}} LINK TO POST

            {{#if access }} {{content}}
            {{else}}You can't read this!, but try anyway:
{{content}}

            {{/if}}

Check post's specific status:
            {{#has visibility="public"}}
                This content is free

            {{/has}}

            {{#has visibility="paid"}}
            This content is paid

            {{/has}}

            {{#has visibility="filter"}}
            Filtered content for {{tier}}.

            {{/has}}

        {{/foreach}}
        {{/get}}

Create a new page (public) that uses the template with code above.
For a public post, I get the content at the top and the "This content is free" message.  For the paid post, I get the content at the top and the "This content is paid" message, if I'm logged in with a paid user.  For a 'paid members' post viewed as free user, I see the "You can't read this" message, followed by any public preview and CTA for that post.  That's all good.
However, when my loop goes over a post restricted to a specific tier, I get the "You can't read this" message, whether or not my test user has access.  I get the public preview (if any), but I don't get the protected content, NOR do I get a CTA, nor does the "Filtered content for {{tier}} message show up."  That's not the expected behavior.  I'd expect to see the content if my test user is allowed to see that content when navigating to the post directly, or to see a CTA and the message about filtering if my user is not allowed to see that content.
Ghost Version
Ghost Pro
Node.js Version
Ghost Pro
How did you install Ghost?
Ghost Pro
Database type
MySQL 8
Browser & OS version
No response
Relevant log / error output
No response
Code of Conduct

[X] I agree to be friendly and polite to people in this repository

That doesn't look right! A PR to fix this would be welcome 🙂

Upon debugging
When we make the call from the template which @cathysarisky provided we see no information about the tier.

So when we add include="tiers" in the get helper we can at least see the tier information in the frontend. (Hello is the name of the tier)

The tier information is not fetched due to no include="tiers" being given in the get helper due to which in content-gating.js the access is blocked because the post doesn't have the tier information.

Now let's say we are adding tier information also in include but then in content-gating.js, this checks where we are validating visibility with the member object fails.

Here when we go to the actual page (not getting data using get helper) with a user who has access to the tier, the member object has a products object which contains the tier information, whereas when getting data from the get helper, we don't see the products object inside the member but do see the subscriptions object which contains tier inside it (which is there in both the cases)
The next step can be

Include tier information as default in withRelated.
When getting a member object from get helper, also add the products object or use the subscriptions -> tier objects as a backup. Help here with deciding will be appreciated as I don't have much context about the codebase.

These changes will have an effect on other aspects of Ghost (which I don't have much info about), and will require some go-ahead to make them and create a PR.
cc: @daniellockyer @kevinansfield


missing ContentLength in s3.Object.get() response when requesting partial content

Steps to reproduce:
from moto import mock_s3
import boto3

file_path = "..."
with mock_s3():
    bucket = "test"
    object_key = "key"
    s3 = boto3.resource("s3")
    s3.create_bucket(Bucket=bucket)
    with open(file_path, "rb") as file:
        s3.Object(bucket, object_key).put(Body=file)

    file = s3.Object(bucket, object_key)
    response = file.get(Range="bytes=0-1024")
    print(response["ContentLength"])

Expected behavior:
1025

Actual behavior:
KeyError: 'ContentLength'

Additional information:
This only happens when requesting partial content. Possibly other important response's headers are ignored as well since the headers argument is not being used within _handle_range_header, as seen here.
Versions

moto                    1.3.14
boto                     2.49.0
boto3                   1.13.3
botocore              1.16.3

Greetings,
We're hitting this too, and it's breaking our tests. I see this has been open since May, and is labelled an "Enhancement." Is that just an oversight? Can we bump this up to "Bug?"

Hi @RonRothman, my definition of a bug (in Moto's context) is anything that behaves differently from boto3.
In this case, the entire implementation is missing - and therefore the enhancement-label is more suitable IMO.

Thanks @bblommers, that makes sense. And I see that a fix is on the way--thanks for that as well!

No problem @RonRothman!
This is now partof moto >= 1.3.16.dev79


Contrast Limited AHE (CLAHE)

TFA already includes a global histogram equalization function (tfa.image.equalize). I'm proposing adding a python implementation of CLAHE along side that.
Relevant information

Are you willing to contribute it (yes/no): Yes
Are you willing to maintain it going forward? (yes/no): Yes
Is there a relevant academic paper? (if so, where): Yes

S. M. Pizer, E. P. Amburn, J. D. Austin, et al.: Adaptive Histogram Equalization and Its Variations. Computer Vision, Graphics, and Image Processing 39 (1987) 355-368.

Is there already an implementation in another framework? (if so, where): Yes

OpenCV
ImageMagick

Was it part of tf.contrib? (if so, where): No

Which API type would this fall under (layer, metric, optimizer, etc.)
image
Who will benefit with this feature?
This specific feature was requested a few years ago in tensorflow main (https://github.com/tensorflow/tensorflow/issues/24181), but it looks like no one has taken it on yet. It's especially useful for enhancing features on some medical imaging data.
Any other info.
Originally asked for guidance on the tensorflow developers mailing list and was directed to open a PR here. I have a draft already and it looks like it will fit into tensorflow addons pretty well.

CLAHE or porting MCLAHE to TF2? See https://github.com/tensorflow/tensorflow/issues/24181#issuecomment-760990668

CLAHE or porting MCLAHE to TF2? See https://github.com/tensorflow/tensorflow/issues/24181#issuecomment-760990668

I'm proposing just normal CLAHE for grayscale or RGB images. The draft I have anticipates input shapes like ([batch_size], num_rows, num_columns, num_channels)

I'm proposing just normal CLAHE for grayscale or RGB images. The draft I have anticipates input shapes like ([batch_size], num_rows, num_columns, num_channels)

Ok we put this in the ecosystem review pipeline

Ok we put this in the ecosystem review pipeline

Notes from ecosystem review: We think tfa.image is a good home for this

Notes from ecosystem review: We think tfa.image is a good home for this

You can prepare a PR

You can prepare a PR

Awesome!  I'll plan on opening a PR sometime next week.

Awesome!  I'll plan on opening a PR sometime next week.

TensorFlow Addons is transitioning to a minimal maintenance and release mode. New features will not be added to this repository. For more information, please see our public messaging on this decision:
TensorFlow Addons Wind Down
Please consider sending feature requests / contributions to other repositories in the TF community with a similar charters to TFA:
Keras
Keras-CV
Keras-NLP


Execute Demo in CI

I allowed myself to open another issue. I think you already have a minor PoC. I would recommend merging this to master soon and also adjust the existing demos a little bit, so that your adjustments are executed in the CI.

Added a starting point that can be extended in this PR: https://github.com/olisystems/worker/pull/15


Rx 5 and .NET 5 for WPF application

I am trying to migrate a WPF application from .NET Core 3.1 with Rx 4.4.1 to .NET 5 and Rx 5.0.0
I am facing the following compilation issues
[CS0246] The type or namespace name 'DispatcherScheduler' could not be found (are you missing a using directive or an assembly reference?)
[CS1061] 'IObservable<long>' does not contain a definition for 'ObserveOnDispatcher' and no accessible extension method 'ObserveOnDispatcher' accepting a first argument of type 'IObservable<long>' could be found (are you missing a using directive or an assembly reference?)

I have read the v5.0 changes and #1315 and adapted my csproj as @clairernovotny recommended it:
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net5.0-windows10.0.19041</TargetFramework>
    <RuntimeIdentifiers>win-x64</RuntimeIdentifiers>
    <LangVersion>9.0</LangVersion>
    <OutDir>..\..\Output\</OutDir>
    <UseWPF>true</UseWPF>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="System.Reactive" Version="5.0.0" />
    <PackageReference Include="System.Reactive.Linq" Version="5.0.0" />
</Project>

but still get those compilation errors. So, what am I doing wrong?
I am also a bit confused by the sentence ".NET 5 with the Windows 10 19041 SDK (able to target earlier Windows versions)" on the README
What do I need to do if I want to have my application supported on Windows version supported by .NET 5 except Windows 7 SP1

OS
Version
Architectures
Lifecycle

[Windows Client][Windows-client]
7 SP1(*), 8.1
x64, x86
[Windows][Windows-lifecycle]

[Windows 10 Client][Windows-client]
Version 1607+(**)
x64, x86, Arm64
[Windows][Windows-lifecycle]

[Windows Server][Windows-Server]
2012 R2+
x64, x86
[Windows Server][Windows-Server-lifecycle]

[Windows Server Core][Windows-Server]
2012 R2+
x64, x86
[Windows Server][Windows-Server-lifecycle]

[Nano Server][Nano-Server]
Version 1809+
x64
[Windows Server][Windows-Server-lifecycle]

Thanks for your appreciated help!

You should not need a reference to System.Reactive.Linq, those are old type forwarders.
This works for me:
using System;
using System.Reactive.Concurrency;

namespace ClassLibrary4
{
    public class Class1
    {
        public Class1()
        {
            DispatcherScheduler scheduler;
        }
    }
}

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net5.0-windows10.0.19041</TargetFramework>
    <RuntimeIdentifiers>win-x64</RuntimeIdentifiers>
    <LangVersion>9.0</LangVersion>
    <OutDir>..\..\Output\</OutDir>
    <UseWPF>true</UseWPF>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="System.Reactive" Version="5.0.0" />
  </ItemGroup>
</Project>

You should not need a reference to System.Reactive.Linq, those are old type forwarders.

Oh ok, I could remove that reference without any issue 👍
I tried in a simplified WPF project and it didn't work at first, but when I loaded it in VS 16.8 it is worked! So, it seems that my problem was not coming from Rx but from Rider EAP! Adn after loading my full project into VS I could also compile it! Thanks a lot @clairernovotny
So, with those settings, would it mean that my WPF app would work on all .NET 5 supported version of Windows?

So, with those settings, would it mean that my WPF app would work on all .NET 5 supported version of Windows?

Yes

Fantastic @clairernovotny again BIG thanks to you for your major help!
It took us quite some work to go from .NET Framework to .NET Core 3.1 and couple of hours to .NET 5 😄

Can't fin ObserveOnDispatcher().
Lost 'Framework assembly' for nuget package 'System.Reactive'
ok target:
framework:
net480/net5.0-windows10.0.19041
error target:
OS: win7_sp1
framework:
net461/net5.0


Cannot add plugin through browse repositories

Here's the error I'm getting:
List of plugins was not loaded for following hosts: https://plugins.jetbrains.com/plugin/8117
Due to the following errors:
org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 3; The markup in the document preceding the root element must be well-formed.' for 'https://plugins.jetbrains.com/plugin/8117

Where do you get it? What IDEA version you use?

I'm using Android Studio which is using build 145.1617.8 of Intellij IDEA.

This was fixed a while ago I believe.

It may have been fixed a while ago, but I'm getting it now in WebStorm


Merge Canasta changes to Taqasta

I think we should try to avoid pulling RELEASE-NOTES and VERSION file from Canasta since it does not make much sense for having these in Taqasta: while modified RELEASE-NOTES from Canasta can be used somewhere in conjunction with the Taqasta release notes, the VERSION file is not applicable at all