Phenopackets differences & alignment

In the current data models, many schemas are either directly compatible to
Phenopackets v2 building blocks
or at least reflect them in spirit. The following lists elements with notes
regarding their Phenopackets compatibility.
While the Beacon v2 default model's schemas do not per se have to reflect
PXF schemas, we target an as-close-as-possible alignment to promote/leverage GA4GH-wide
standardization.
This issue here serves for a general review regarding current and possible future
alignment, with individual changes being processed in separate PRs/issues.
Top-level differences
The Phenopackets model is centered around the Phenopacket, which is the collector
and integrator of all sub-schemas (with the addition of the external Family and
Cohort schemas). While Phenopacket usually describes information related to a
subject -  which is defined in an Individual - and the top level elements in
Phenopacket relate to a specific proband (measurements as "Measurements performed
in the proband"), the phenopacket itself does not explicitely represent an individual.
In contrast, the Beacon v2 default model uses a hierarchy in which biosamples
reference individuals directly (if existing). For most purposes one can equate Beacon's
Individual with a merge of Phenopacket's core Phenopacket and Individual parameters.
Beacon v2 == PXF v2
Age

PXF Age
Beacon v2 Age

AgeRange

PXF AgeRange
Beacon v2 AgeRange

Evidence

PXF Evidence
Beacon v2 Evidence

KaryotypicSex

PXF
Beacon

ReferenceRange

PXF ReferenceRange
Beacon v2 ReferenceRange

While unit in Beacon points to a Unit definition, this is itself an OntologyTerm i.e. structurally the same.
Value

PXF Value
Beacon v2 Value

Beacon v2 =~ PXF v2 (e.g. renamed or additional parameters)
ComplexValue

PXF ComplexValue
Beacon v2 ComplexValue

Renamed ComplexValue.TypedQuantity.quantityType compared to GA4GH Phenopackets v2 ComplexValue.TypedQuantity.type due to problematic use of type as parameter
ExternalReference

PXF ExternalReference
Beacon v2 ExternalReference

Renamed ExternalReference.notes compared to GA4GH Phenopackets v2 ExternalReference.description due to problematic use of description as parameter
Measurement

PXF Measurement
Beacon v2 Measurement

Added notes and date.
PhenotypicFeature

PXF PhenotypicFeature
Beacon v2 PhenotypicFeature

Beacon
Phenopackets

featureType
type

severityLevel  (re-used definition reflecting an ontology term)
severity (ontology class)

notes

Procedure

PXF Procedure
Beacon v2 Procedure

Beacon
Phenopackets

procedureCode
code

ageAtProcedure  (TimeElement)
performed  (TimeElement)

dateOfProcedure  (ISO date)

TimeElement

PXF TimeElement
Beacon v2 TimeElement

The specific parameters have been aligned w/ some differences in naming or use of general parameters.

Beacon
Phenopackets

ageGroup
ontology_class

age
age  (Age)

ageRange
age_range  (AgeRange)

gestationalAge
gestational_age  (GestationalAge)

timestamp  (TimeStamp)

interval  (TimeInterval)

Treatment

PXF Treatment
Beacon v2 Treatment

Beacon still has an ageOfOnset parameter (?).
Beacon v2 ~ PXF v2 (e.g. multiple/complex differences)
Disease
Pedigree
While the Beacon & Phenopackets schemas for "pedigree" representation are not aligned, they may become superseded by the GA4GH pedigree standard currenty under development.
Sex
Beacon directly uses the (IMO preferable) representation through an ontology term, while PXF uses an ordinal mapping
2022-03-17: Updated for last adjustments (KaryotypicSex, Treatment ...)
2022-01-18: Updated w/ "Top-level differences"

Are the Treatment differences still correct? These look to be the same now e.g. they both use an array of DoseInterval.

@julesjacobsen Yes, the notes here were the initial comparison. While I've added some changes after adjustments we'll document the relation to Phenopackets in the documentation (https://github.com/ga4gh-beacon/beacon-v2-unity-testing/blob/main/docs/formats-standards.md or page linked from there).
(@mrueda @laurenfromont)

The comparison has been added to the documentation: http://docs.genomebeacons.org/formats-standards/#phenopackets.
We'll update there and through individual issues/PRs.


Google Drive authentication: Handle disabled cookies scenario.

Fix un-initialized alerg dialog, caused by failure to wait for full document load on startup.


Update issue templates

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.github/ISSUE_TEMPLATE/Bug_report.md
:white_check_mark:Succeeded

.github/ISSUE_TEMPLATE/feature_request.md
:white_check_mark:Succeeded

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


cygwin 64 builds appear broken in latest tl 216 cygwin64 release

using a fully updated tl216, the new biber does not run at all, I get
$ type biber
biber is hashed (/usr/local/texlive/2016/bin/x86_64-cygwin/biber)

$ biber --help
Can't load '/tmp/par-646176696463/cache-128a18f7440676b8f4632879a6f42b099bad8a05/79c777c9.dll' for module Text::BibTeX: No such process at /loader/HASH(0x6001b60f8)/DynaLoader.pm line 193, <DATA> line 1.
 at /loader/HASH(0x600217310)/PAR/Heavy.pm line 120.
Compilation failed in require at /tmp/par-646176696463/cache-128a18f7440676b8f4632879a6f42b099bad8a05/inc/lib/Biber.pm line 40, <DATA> line 1.
BEGIN failed--compilation aborted at /tmp/par-646176696463/cache-128a18f7440676b8f4632879a6f42b099bad8a05/inc/lib/Biber.pm line 40, <DATA> line 1.
Compilation failed in require at script/biber-cygwin line 17, <DATA> line 1.
BEGIN failed--compilation aborted at script/biber-cygwin line 17, <DATA> line 1.
Unknown Text::BibTeX function: "cleanup" at -e line 0.
END failed--call queue aborted, <DATA> line 1.

I use --help above but essentially any arguments (or no arguments) do the same.
I tried removing /tmp/par* to force it to rebuild cache but no change.
The file is
-rwxr-xr-x 1 davidc Domain Users 22189400 Sep 14 23:20 /usr/local/texlive/2016/bin/x86_64-cygwin/biber.exe

I think this was solved by email with Ken.


Search is available?

Search for a textfield like jquery datatable?
Pass api url for order, search?

I don't understand

Ok, excuse me!
vue-tables have feature like jquery datatables: search, order from server?

As you can see in the docs there are 2 separate components for the client and the server side.
Please read the docs.

I know, but don't understand how use this feature :(
You have some example?

There is an example in the docs how to use the server component.
On the server side of course you need to write your own code to manage the request and return the correct response. You can see an example for this in the eloquent implementation that I have included. All of this is mentioned in the docs.


Fixes #158

@hhaidar @sibartlett we should merge this ASAP

Seems like a good idea. Should rebase on master.

This is being punted


The windows task log displays a coding error

This problem does not occur in linux, and this problem occurs in Windows, which is related to encoding. Currently, ignore this character exception


snapshot issue

hi the snapshot link not found https://download.farcaster.xyz/snapshots/MAINNET/DB_SCHEMA_X/latest.json

same error


Renamed Component System to Entity Component System as per issue #22

Hopefully haven't missed anything!

I'm having a massive fail Monday!

Success!

@danielcirket Remind me to show you how to sync remote repositories next time I stream. :)

@smudge202, sounds good, tbh I'm still a Git noob.

Hopefully I've not missed anything else and we can :shipit:


Remove CopyEmailsCommandTest.java

Remove CopyEmailsCommandTest.java

Codecov Report

Merging #66 (d65213c) into master (a68d4d3) will decrease coverage by 0.50%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master      #66      +/-   ##
============================================
- Coverage     72.83%   72.32%   -0.51%
+ Complexity      458      455       -3
============================================
  Files            77       77
  Lines          1384     1384
  Branches        147      147
============================================
- Hits           1008     1001       -7
- Misses          332      341       +9
+ Partials         44       42       -2

Impacted Files
Coverage Δ

...eedu/address/logic/commands/CopyEmailsCommand.java
0.00% <0.00%> (-33.34%)
:arrow_down:

Continue to review full report at Codecov.

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


Update operator deployment yaml to use apps/v1, not extensions/v1beta

The YAML for this project needs to be updated to use latest versions of kubernetes resources

PR has been merged. Looks like I forgot to add the resolves syntax


Handling error messages

Hello sir, I would like to know what messages can the onConnectionFailedRtmp receive?
I would like to know if the messages are local, that is, generated by your library or are mixed where they can be generated by the library, by exceptions of the OS and / or possibly server responses?
I am trying to find the most the possible causes in which onConnectionFailedRtmp can be executed and thus take a measure as the case may be.

Hi, You can see all onConnectionFailed cases here:
https://github.com/pedroSG94/rtmp-rtsp-stream-client-java/blob/master/rtmp/src/main/java/com/github/faucamp/simplertmp/io/RtmpConnection.java
Go this class and filter with onConnectionFailed. You will find 12 different cases.


channels: custom hooks

PR Checklist

[ ] Includes changes to desk files
[ ] Describes how you tested the PR locally (test ship vs livenet)
[ ] If a new feature, includes automated tests
[ ] Comments added anywhere logic may be confusing without context

A comment about the folder structure: normally mark folders do not user plural names. Thus we have /mar/contact, /mar/channel etc. We should stick with this convention for hooks as well.
For the same reason it should be /ted/hook not /ted/hooks, since when these are invoked from dojo plurals do not make sense in the context of the command (we are adding a single hook, not many)

@mikolajpp going to mark resolved here as I do these, but will post a PR with the actual changes later.


[Bug]: Generate page with Data - Created Queries are hidden in the dropdown and not immediately visible to user

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Queries created through generate page with data are not immediately visible - though they are present in the number dropdown on the right side.
Steps To Reproduce
https://www.loom.com/share/4b1b131253784b1f9dec875d8bf827f4
Public Sample App
No response
Environment
Release
Issue video log
No response
Version
Cloud

internal tracking: https://www.notion.so/appsmith/Test-party-New-IDE-457ce3d37cbc44c08f4a8b877de2f984?p=ba5c0e79ed224a61ad8265c29f6b05d9&pm=s

Solved with IDE tabs Revamp


segfault on the queue

Region: us-west-2
   TotReqs   TotBytes    AvgTime    AvgReq/s  (post)unzip
     44271     1.8 GB     0.352s       31.50panic: runtime error: invalid memory address or nil pointer dereferenceTotErrors
    3.583s     0.103s          0  [signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x147e1e1]

                         goroutine 379 [running]:
                                                 github.com/goadapp/goad/queue.SQSAdaptor.Receive(0xc4203d4068, 0xc4203beea0, 0x5a, 0xc4201fc188)
                                                                	/private/tmp/goad-20170731-18597-cbyzjk/src/github.com/goadapp/goad/queue/sqsadaptor.go:80 +0x4b1
Press cgithub.com/goadapp/goad/queue.aggregateFromSqs(0xc4207d17a0, 0xc4200fc630, 0xc4203beea0, 0x5a, 0xf4240, 0x64)
                                   	/private/tmp/goad-20170731-18597-cbyzjk/src/github.com/goadapp/goad/queue/aggregation.go:124 +0x14d
                                                          created by github.com/goadapp/goad/queue.Aggregate
                           	/private/tmp/goad-20170731-18597-cbyzjk/src/github.com/goadapp/goad/queue/aggregation.go:106 +0x12f
                                                  $

see if we can include AirBrake or NewRelic for tracking this

I agree, there is some really bad error handling in parts of the cli and even the lambda function.
I'm not sure about the idea to add some third-party metrics tracking. Wouldn't that require a paid plan on those platforms and some kind of terms of service agreement sending user-data to those services?
How about for now we add a global recover function in goad that prints out something like this:
signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x147e1e1]
goroutine 379 [running]:
github.com/goadapp/goad/queue.SQSAdaptor.Receive(0xc4203d4068, 0xc4203beea0, 0x5a, 0xc4201fc188)
/private/tmp/goad-20170731-18597-cbyzjk/src/github.com/goadapp/goad/queue/sqsadaptor.go:80 +0x4b1
github.com/goadapp/goad/queue.aggregateFromSqs(0xc4207d17a0, 0xc4200fc630, 0xc4203beea0, 0x5a, 0xf4240, 0x64)
/private/tmp/goad-20170731-18597-cbyzjk/src/github.com/goadapp/goad/queue/aggregation.go:124 +0x14d
created by github.com/goadapp/goad/queue.Aggregate
/private/tmp/goad-20170731-18597-cbyzjk/src/github.com/goadapp/goad/queue/aggregation.go:106 +0x12f

Sorry, looks like goad has crashed. We are currently working hard to make goad more reliable.
Please open an issue on our github repository. [Link to issues page on github]

@cwaltken-edrans let's plan for a parameter in the INI file with a default key from/paid by OLX (commented out)
if someone wants to let us know about the problem, has to uncomment it, and the feature will activate and send us the data


generate key pair and publish the public part

On first use, a keypair should be generated and both the private and the public part needs to be stored in a folder on Nextcloud.
The public part needs to be made public on a URL, for instance
https://example-nextcloud-server.com/index.php/apps/peppol/well-known/public-key.txt
And then we set a rewrite rule so that it also becomes available at a well-known URL we choose, for instance:
https://example-nextcloud-server.com/.well-known/as4-direct
This same well-known URL will then be used in #97.

@br0kk0l1 can you provide a snippet of PHP code that calls openssl to do the key generation?
@navid-dada can you integrate this in the app so that it gets called on first use?


feature: add IstZiegelGleich(n) and NichtIstZiegelGleich(n)

so: how difficult will it be to add this feature?

it's almost done, but I am so tired ... just need a little bit of concentration to finish the code to blocks converter

wow, this was actually quite not such a bad experience


DO NOT MERGE - introducing ConcurrentDictionary in SharedDictionary class

Description:
To prevent performance problem on large sites.
Summary
Please, let me know if you see anything wrong in the proposed change. I just took care of introducing ConcurrentDictionary in place the non-thread-safe Dictionary previously used. Actually SharedDictionary is wrapping a ConcurrentDictionary now.
I also created a fake Lock controller to avoid read locks, since ConcurrentDictionary is supposed to be safe for read access by concurrent threads.
This is just a test branch, not expected to be merged.

What is the purpose of the FakeLockController.  If this is purposful, and not designed as a Fake for testing, I believe at a minimum it should NOT be named Fake*.
For example if the purpose is to prevent locks, naming it DisabledLockController, or NonLockingLockController would be more appropriate.  As the term "Fake" typically only relates to items added for unit testing

If this is purposful, and not designed as a Fake for testing, I believe at a minimum it should NOT be named Fake*.

I would typically call such class a NullLockController, as reference to the null object pattern.

Since this is a "do not merge" pull request I am going to close this.  If it is still needed please let me know.


[ARPA] Be able to delete a workbook

On Thursday meeting, partners asked for the ability to delete a workbook upload. Users would accidentally upload, or get to chains of ~20 uploads long, and wanted to clear the screen. They received a lot of feedback from the agencies about this.

@trumanc @ajhyndman an alternative can be to "archive" workbooks from the screen, but still have them around in the db if that's easier. But if there are parallel efforts in play to redesign the backend anyways, I do think a full deletion is better (keeps our disk usage lower, is more transparent to the users)

@TylerHendrickson skipping Design for this because the UX will be minimal (some icon or button), the blocker right now is figuring out what the eng implications of deleting a workbook are (they are currently not deletable due to other things relying on them in the database). Once we have that I think we can have a more fruitful discussion about possible solutions!

Deletion would be ideal; is there a technical reason that wouldn't be possible (or especially difficult)?
Product question: when a reporting period is closed, should it be possible to delete a workbook?

1-pager here

Closing in favor if #1268


django dbapi2 instumentation results in InterfaceError connection already closed

Describe the bug:
django requests are failing because dbapi2 instumentation seems to result in an InterfaceError Exception, Exception Value: connection already closed
Traceback:

File "/opt/venv/lib/python3.9/site-packages/django/db/backends/base/base.py" in _cursor
  237.             return self._prepare_cursor(self.create_cursor(name))

File "/opt/venv/lib/python3.9/site-packages/django/utils/asyncio.py" in inner
  33.             return func(*args, **kwargs)

File "/opt/venv/lib/python3.9/site-packages/django/db/backends/postgresql/base.py" in create_cursor
  236.             cursor = self.connection.cursor()

File "/opt/venv/lib/python3.9/site-packages/elasticapm/instrumentation/packages/dbapi2.py" in cursor
  263.         return self.cursor_proxy(self.__wrapped__.cursor(*args, **kwargs), self._self_destination_info)

The above exception (connection already closed) was the direct cause of the following exception:

File "/opt/venv/lib/python3.9/site-packages/django/core/handlers/exception.py" in inner
  47.                 response = get_response(request)

File "/opt/venv/lib/python3.9/site-packages/django/core/handlers/base.py" in _get_response
  181.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/usr/local/lib/python3.9/contextlib.py" in inner
  79.                 return func(*args, **kwds)

File "/opt/venv/lib/python3.9/site-packages/django/views/decorators/csrf.py" in wrapped_view
  54.         return view_func(*args, **kwargs)

File "/opt/venv/lib/python3.9/site-packages/django/views/generic/base.py" in view
  70.             return self.dispatch(request, *args, **kwargs)

File "/opt/venv/lib/python3.9/site-packages/rest_framework/views.py" in dispatch
  509.             response = self.handle_exception(exc)

File "/opt/venv/lib/python3.9/site-packages/rest_framework/views.py" in handle_exception
  469.             self.raise_uncaught_exception(exc)

File "/opt/venv/lib/python3.9/site-packages/rest_framework/views.py" in raise_uncaught_exception
  480.         raise exc

File "/opt/venv/lib/python3.9/site-packages/rest_framework/views.py" in dispatch
  506.             response = handler(request, *args, **kwargs)

File "/code/utils/decorators.py" in decorated_method
  73.             return old_method(self, request, serializer)

File "/code/api/views.py" in post
  177.             serializer.update(my_user, serializer.validated_data)

File "/code/api/serializers.py" in update
  683.             device = Device.objects.get(tracking_id=my_user.tracking_id,

File "/opt/venv/lib/python3.9/site-packages/django/db/models/manager.py" in manager_method
  85.                 return getattr(self.get_queryset(), name)(*args, **kwargs)

File "/opt/venv/lib/python3.9/site-packages/django/db/models/query.py" in get
  431.         num = len(clone)

File "/opt/venv/lib/python3.9/site-packages/django/db/models/query.py" in __len__
  262.         self._fetch_all()

File "/opt/venv/lib/python3.9/site-packages/django/db/models/query.py" in _fetch_all
  1324.             self._result_cache = list(self._iterable_class(self))

File "/opt/venv/lib/python3.9/site-packages/django/db/models/query.py" in __iter__
  51.         results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)

File "/opt/venv/lib/python3.9/site-packages/django/db/models/sql/compiler.py" in execute_sql
  1173.             cursor = self.connection.cursor()

File "/opt/venv/lib/python3.9/site-packages/django/utils/asyncio.py" in inner
  33.             return func(*args, **kwargs)

File "/opt/venv/lib/python3.9/site-packages/django/db/backends/base/base.py" in cursor
  259.         return self._cursor()

File "/opt/venv/lib/python3.9/site-packages/django/db/backends/base/base.py" in _cursor
  237.             return self._prepare_cursor(self.create_cursor(name))

File "/opt/venv/lib/python3.9/site-packages/django/db/utils.py" in __exit__
  90.                 raise dj_exc_value.with_traceback(traceback) from exc_value

File "/opt/venv/lib/python3.9/site-packages/django/db/backends/base/base.py" in _cursor
  237.             return self._prepare_cursor(self.create_cursor(name))

File "/opt/venv/lib/python3.9/site-packages/django/utils/asyncio.py" in inner
  33.             return func(*args, **kwargs)

File "/opt/venv/lib/python3.9/site-packages/django/db/backends/postgresql/base.py" in create_cursor
  236.             cursor = self.connection.cursor()

File "/opt/venv/lib/python3.9/site-packages/elasticapm/instrumentation/packages/dbapi2.py" in cursor
  263.         return self.cursor_proxy(self.__wrapped__.cursor(*args, **kwargs), self._self_destination_info)

Exception Type: InterfaceError at /api/xyz
Exception Value: connection already closed

To Reproduce
I don't know how to reproduce, this doesn't happen very often like once or twice a day
Environment (please complete the following information)

OS: debian bullseye
Python version: 3.9
Framework and version: Django 3.2.13
Agent version: 6.8.1

Note: This error appeared first time after upgrading from elastic-apm==6.6.1 to elastic-apm==6.7.2.

Yes, 6.6.1 version run over 3 months, no errors.
Just to be sure I will be downgrading to 6.6.1 I'll let you know the result after some time.
On another note, I tried disabling dbapi2 by setting environment to SKIP_INSTRUMENT_DBAPI2=True, but I still get the same exception.

I am having a similar problem. I have downgraded the elasticapm version in my environment to 6.6.1 but am still experiencing the issue.
Describe the bug
Occasionally calls are failing with either InterfaceError('connection already closed') or OperationalError('SSL SYSCALL error: EOF detected\n'). Stack trace can be found here.
Reproducing
Unfortunately this is similar behavior, as in not reliably reproducable. It mostly (95%) happens with code that runs at night when there has been a couple of hours of low to no usage on the system if that helps. I wasn't yet able to verify if either of the two errors disappear once I completely disable elasticapm, that is another point on my troubleshooting list.
Environment
OS: debian bullseye (inside of a container)
Python version: 3.8.13
Framework and version: Django 3.2.14
Agent version: 6.6.1 and 6.9.1 confirmed

Can confirm issue still happens after downgrading to 6.6.1.

After diving this a bit, I don't think it's a bug in our agent.
In our dbapi2 instrumentation, we wrap the Connection and the Cursor objects so we can create spans when queries are executed through the cursor.
Django is requesting a cursor object from the postgres connection:
cursor = self.connection.cursor()

Our ConnectionProxy object passes that through to the wrapped connection (self.__wrapped__.cursor(*args, **kwargs)):
https://github.com/elastic/apm-agent-python/blob/a81a90f1ffd256a974bdd6206e778d47179fc407/elasticapm/instrumentation/packages/dbapi2.py#L265-L266
At which point postgres throws the connection already closed error.
The presence of elasticapm in the stacktrace is a red herring, I think. Can you try removing the agent for a time and see if the problem persists?

Closing for now. Please keep me posted if you are having this issue with the agent present, and it goes away when you remove the agent. Otherwise I think it's worth trying to track down why the connection is closing unexpectedly.


chore: Rename Tab_for_more => tap_for_more

Hi everyone!
There is a slight typo with the tab_for_more translation which should be tap_for_more.
This PR just renames it.

Codecov Report

Merging #4324 (89091be) into develop (b03f60b) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff            @@
##           develop    #4324   +/-   ##
========================================
  Coverage    10.81%   10.81%
========================================
  Files          287      287
  Lines        14223    14223
========================================
  Hits          1538     1538
  Misses       12685    12685

Impacted Files
Coverage Δ

...ges/smooth_app/lib/pages/product/summary_card.dart
0.00% <0.00%> (ø)

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

Sadly this will wipe all translations as we only upload the app_en to crowdin, but yeah makes sense

Arf :/
But there are few translations for this one. I will manually copy/paste them again in Crowdin

Should do the trick, afaik we upload the translations at midnight (don't know in which timezone) you can just check when the crowdin Action is run in github actions

That's strange, Crowdin is not synced.
Let's wait another day


Create a Declarative Pipeline demo

There is no Declarative Pipeline demo for the Vanilla packaging. It would be great to have one so that later it can be used for test automation.

https://github.com/jenkinsci/jenkinsfile-runner/tree/master/demo/declarative-pipeline implements it


Some driver improvements

Hiya, your driver actually had a few bugs so I needed to dive into the code anyway. I took the liberty to fix those bugs clean up your headers and make the thing use a device handle rather than a static struct, so now you can theoretically have multiple devices on multiple I2C buses. It's a fair few changes if you look at the entire pull request, but most of them is me moving headers around; I've attempted to split the things I did into several merges so you can look at those individually if you want to know what I did exactly.

I very much appreciate your contribution to this project. I believe this PR will improve the developer experience and reflect proper Espresiff standards in the codebase.
The PR is missing an update to the example file however, but I will update this myself after merging.


[doc, UX] split our binaries from the Sui crate by use case

huitseeker@dapple.local➜~/tmp/sui(main)» ls sui/src/bin                                                                                [20:04:15]
bench.rs       key_tool.rs    rest-server.rs rpc-server.rs  sui-move.rs    sui.rs         validator.rs   wallet.rs
huitseeker@dapple.local➜~/tmp/sui(main)» rg -A3 '\[\[bin\]\]'                                                                                [20:04:19]
faucet/Cargo.toml
29:[[bin]]
30-name = "sui-faucet"
31-path = "src/main.rs"

I count 7 binary targets outside of the faucet crate. So :

the command in the doc is correct, what comes after "this will put three binaries" isn't,
where as we were mentioning three binaries being installed, we should now list and document up to 7,
except some of those are probably not useful to most (e.g. validator, bench),
so we should separate our binaries by use-case first, and then update the doc on how they work.

One easy first iteration would be to group the 3 binaries we were documenting already (sui, wallet, rest-server) in a separate crate, and the rest elsewhere.
Originally posted by @huitseeker in https://github.com/MystenLabs/sui/pull/1611#discussion_r860335449

Q: is there value in always shipping validator binary, (or at least full node) to reinforce the message this is a decentralized network?

Doc issue here:
https://github.com/MystenLabs/sui/issues/1733


feat(cli): add --symlinks to allow symbolic walking

#3244  👈
main

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

Join @Boshen and the rest of your teammates on  Graphite


Close popup on save in edit resource dialog [#100175262]

@scytacki Thanks for the heads up about remote_form_for()

:+1:  Wow I didn't think it would that simple. Nice.


Update README.md

This change is

Previously, unbrice (Brice Arnould) wrote…
> #### Update README\.md

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Coverage remained the same at 72.845% when pulling 75d1220faad0623a2e27bad16655714580dec2b8 on unbrice:master into 0974717fe1bf7daa40d3597403db2bbc253b14c4 on criteo:master.


How to send a custom message with screenshots from GitLab ?

Hello @YOU54F , I'm trying to send a custom Slack message with some links to screenshots.
I did some tries but could not get a result as expected. Can you help me with it?
1  Screenshots generated from the screenshot-dir option with the wrong custom-url:
npx cypress-slack-reporter --useOnlyCustomUrl --vcs-provider=none --ci-provider=custom --custom-url=$CI_PIPELINE_URL/ --screenshot-dir=cypress/screenshots  --report-dir=cypress/reports --only-failed --verbose --custom-text='DONT WORRY ITS JUST A TEST'
Results:
The Test Report button points to the correct pipeline URL from the GitLab pipeline(but I need to point to the job URL, not the pipeline URL), and screenshot links are created with the wrong pattern. - OK
like this:
https://gitlab.com/xxxxx/qat/video-outstream-automation/-/pipelines/981281470/cypress/screenshots/playerFunctions.feature/Video Outstream player functions tests -- Check that video is rendered with different vast versions vast2 (example #1) (failed) (attempt 2).png
2. Screenshots generated from screenshot-dir option:
npx cypress-slack-reporter --useOnlyCustomUrl --vcs-provider=none --ci-provider=custom --custom-url=$CI_JOB_URL/ --screenshot-dir=artifacts/file/cypress/screenshots  --report-dir=cypress/reports --only-failed --verbose --custom-text='DONT WORRY ITS JUST A TEST'
Logs:
 ciProvider:- custom
 customUrl:- https://gitlab.com/[MASKED]/qat/video-outstream-automation/-/jobs/4951955526/
 vcsProvider:- none
 reportDirectory:- cypress/reports
 videoDirectory:- cypress/videos
 screenshotDirectory:- artifacts/file/cypress/screenshots
 useOnlyCustomUrl:- false

Results:
The Test Report button is pointing to the correct job URL from GitLab pipeline, but links are not created at all:

3.  Screenshots generated from the screenshot-dir option with $CI_JOB_URL:
npx cypress-slack-reporter --useOnlyCustomUrl --vcs-provider=none --ci-provider=custom --custom-url=$CI_PIPELINE_URL/ --screenshot-dir=$CI_JOB_URL/artifacts/file/cypress/screenshots  --report-dir=cypress/reports --only-failed --verbose --custom-text='DONT WORRY ITS JUST A TEST'
Logs:
ciProvider:- custom
 customUrl:- https://gitlab.com/[MASKED]/qat/video-outstream-automation/-/pipelines/981495599/
 vcsProvider:- none
 reportDirectory:- cypress/reports
 videoDirectory:- cypress/videos
 screenshotDirectory:- https://gitlab.com/[MASKED]/qat/video-outstream-automation/-/jobs/4952194755/artifacts/file/cypress/screenshots
 useOnlyCustomUrl:- false

Results:
The Test Report button points to the correct pipeline URL from GitLab pipeline, 'screenshotDirectory' in logs points to the correct screenshots dir, but links are not created at all. The same as above:

4.  Add a $CI_JOB_URL link to the custom text:
npx cypress-slack-reporter --useOnlyCustomUrl --vcs-provider=none --ci-provider=custom --custom-url=$CI_PIPELINE_URL/ --screenshot-dir=$CI_JOB_URL/artifacts/file/cypress/screenshots  --report-dir=cypress/reports --verbose --custom-text='Check https://sorry-cypress-dashboard.dev-itx5.itx5.eqtv.dev/video-outstream-automation/runs|sorry-cypress-dashboard Check <$CI_JOB_URL/artifacts/browse/cypress/screenshots|Screenshots> for failing tests'
Results:
Variable $CI_JOB_URL is not resolved:

Hello @YOU54F,
A little update from my side:
I was able to send the screenshot's artifacts URL with the CI_JOB_URL variable to the custom-text option with this pattern:
--custom-text=\"- Check <given_1_url|reports> from the tests execution.\n- Check <$CI_JOB_URL/artifacts/browse/cypress/screenshots|screenshots> from the failing tests (if there were!).\"",
But still, it will be a good improvement to create automatically screenshot links from pattern like this:
screenshot-dir=$CI_JOB_URL/artifacts/file/cypress/screenshots
What about a block functionality? Is it ready to use?

Hey bud,
Kinda, half-baked, I don't know when I'll get round to finishing it off.
The new cli is here
https://github.com/YOU54F/cypress-plugins/blob/master/cypress-slack-reporter/src/index.ts
which uses the https://github.com/raycharius/slack-block-builder to support building blocks
the slack client calls a messageConstructor which supports customBlocks
You are welcome to use the code as inspiration and build it out. The slack-block-builder project is really nice to work with


Zero max_fee_per_blob_gas test is ineffective

Test test_invalid_tx_max_fee_per_blob_gas is passing even when there is an issue in the verification logic as in this commit here: https://github.com/ethereum/go-ethereum/pull/28470/commits/5f39342a76ed32059bf340a8679d6f56fef9d4d9
The reason is that the state root included in the test is not the same as the one calculated by geth with the faulty verification logic, because the transaction is executed, and t8n, when there is an invalid transaction in the list of transactions, simply skips the execution and outputs an state root as if the transaction was never executed, but this will almost never be the case if there is a faulty verification, and therefore the block will be still rejected, and the test will pass and won't detect the issue.
There are multiple things that we can do to improve this:

Better check the error that the client returns when the blockchain test is executed, and verify that the client detected the invalid transaction
Include the test type TransactionTest in execution-spec-tests for this kind of tests, and also StateTest

Running the corrected fixture against faulty-geth and fixed-geth yields an unexpected result (I expected to only see the state root mismatch):

Fixed geth:

########## BAD BLOCK #########
Block: 1 (0x10f6e56581d45416420f2e4b4604fbc843d48d0fde3b48d972d0631975c05c85)
Error: could not apply tx 0 [0x1fa8a76ca36772db403565286e21b752256abfe3fae514e5ab368f705a8910e1]: max fee per blob gas less than block blob gas fee: address 0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B blobGasFeeCap: 0, blobBaseFee: 1

Faulty geth:

########## BAD BLOCK #########
Block: 1 (0x10f6e56581d45416420f2e4b4604fbc843d48d0fde3b48d972d0631975c05c85)
Error: invalid gas used (remote: 0 local: 21000)

What's happening here is that, since t8n was not able to execute the transaction, it did not "correctly" populate the following fields:

The state root is incorrect
The tx root hash is incorrect
The block gas used is incorrect
The receipt hash is incorrect

The tx root we can calculate ourselves, but the other three I think it would be very difficult for us to calculate, plus, we can have multiple combinations of these values, depending on how the faulty client executes the faulty block.
I think the core distinction we need to make in the invalid blocks is, instead of only checking the stateroot, was the client able to execute all transactions or not.


Fix mouse highlight and add custom border color

Mouse hover plugin did not show when items were being used ( Item -> Object ).
Also added config for border color.

Thanks


Delete Product images when deleted from Edit Product Page

What
Calls the Delete Product service when product images are removed from the list of images.
Why
#190

See issue comment for reasoning around closing the PR.


⚠ ku-s has degraded performance

In dceb0cc, ku-s ($KU_API_STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 7008 ms

Resolved: ku-s performance has improved in a87c60e after 9 minutes.


Storage v2

This is a draft of the rewrite of the storage subsystem I've been working on. All the tests are now passing and there is a 40% improvement in the load benchmark. Unfortunately there are some performance regressions, mostly in the save benchmark but also a small regression in the replay benchmark. I'm confident these can be addressed as I've done no optimisation yet.
I'm posting this PR for people who are curious. This is a lot of code and I am planning on adding a lot of documentation and splitting the patch into a smaller series of commits to make it easier to review. I'm also happy to synchronously walk through the code with anyone who is interested.
Due to this being a very large change I have implemented this behind a feature flag, which should make it easier to experiment with without comitting us to a giant new change immediately. To use it enable the automerge/storage-v2 or automerge-wasm/storage-v2 feature flags.
The top level objective of this PR is the following:

Improve the performance of the load benchmark by streaming operations directly into the OpTrees as they are read from the document, and by reconstructing changes without an extra encode/decode step to get the change graph. The entry point for this is the Automerge::load_with method and the automerge::storage::load::reconstruct_document module
Make the parsing logic more robust in the face of incorrect encodings (this mostly means introducing a new Decodable trait which returns Result<T, ..>  rather than just T.
More completely implement the columnar storage format. This includes types which allows to iterate over columns we don't expect, which leads on to the next point:
Lay a basic set of types (those in columnar_2 and particularly in columnar_2::column_range::generic) which give us an API for more easily representing arbitrary columns at runtime. Using the columnar representations at runtime is the next step once this work is merged. This will hopefully give us performance improvements but more importantly (IMO) will mean that we can operate on documents with unknown columns.
Making compression of document chunks optional (via Automerge::save_nocompress)

Still on my todo list:

Documentation
Fixing performance regressions
Improve the API of DecodeColumnError
Improve the storage::parse module:

Make the error API easier to use
Add a wrapper around the input type which records the position in the
input slice so that it's easier to write parsers which produce
Range<usize>

Really a lot more documentation

I got a code walk-through from @alexjg and I am excited about this change. I'm too much of a Rust beginner to comment on the actual code, but there are several things I like:

Adding support for preserving unknown columns, which is an important part of the forward-and-backward-compatibility story for Automerge docs, and which is one thing (perhaps the last thing?) that is currently keeping automerge-rs from feature parity with the JS implementation
Laying the groundwork for using columnar encoded data in the OpTree, which has the potential to make it a lot more memory-efficient
Faster document loading

BTW Alex, if you need a test case for a change containing unknown columns, you can find one here.

Alright folks, this PR is ready for review. I've tried to split it up into hopefully discrete enough commits. Particular things I would like review of:

@jkankiewicz I've made a few changes to automerge-c to accomodate a new ScalarValue::Unknown variant. Hopefully what I've done is sensible but would be great to get your eyes on it. I've also not made any attempt to run the tests for automerge-c with a storage-v2 feature flag enabled.
@jeromegn I've introduced an Automerge::save_nocompress method. I recall that compression was costing you quite a lot - if that's still the case I would be curious to see if this helps.

Once we merge this I would like to have a few people test it with realistic workloads and then fairly quickly remove the old storage code and the feature flag. The main reason for the feature flag is to make it easy for people to test alongside the existing implementation. I don't want it to stick around long term.

I've made a few changes to automerge-c to accomodate a new ScalarValue::Unknown variant. Hopefully what I've done is sensible but would be great to get your eyes on it. I've also not made any attempt to run the tests for automerge-c with a storage-v2 feature flag enabled.

@alexjg, if I have to revise your changes to the C API then should I submit a PR against the "storage-v2" branch?

That's probably the best way yeah.

That's probably the best way [to revise my changes to the C API] yeah.

@alexjg, I've opened PR #415.

Right, I've updated this. Here are the changes:

Remove the storage-v2 feature flag and all the old parsing and decoding/encoding logic
Allow incremental loads in automerge::Automerge::load_incremental to
continue in the presence of partial loads.
Rename Change::compressed_bytes -> Change::bytes

Obviously the biggest change is removing the feature flag. This is as per a discussion with @orionz where we decided that it didn't make sense to maintain the feature flag going forward (although it has been useful whilst developing this patch). I've elected to leave the feature flag in for most of the commits and add a commit at the end which removes it. This makes it a bit easier to follow the reasoning of the commits.

 Will try and fix this weekend.

I've incorporated the changes @jkankiewicz helped me figure out to get the C tests passing.  This is now ready to merge.


[bam]How the teacher annealing is implemented in this code?

I noticed in the paper that the lambda hyperparameter is used to balance the model prediction and the true label.Also noticed that the lambda hyperparameter is linearly increased during the trainning,since the paper did not explain the linearly increasing lambda strategy,I am looking ofrward to find it in the code.However, I did not find the hyperparamter setting of lambda and the implementation of teacher annealing.All I noticed is that in the configure.py,there is a lambda=0.5,but this is used when there is no teacher annealing.
Anyone knows how the teacher annealing is implemented in the code?Or has the similiart problem with me?

@clarkkev


[enhancement request] runtime configuration of reserved (invalid) usernames and patterns

Currently, the list of invalid usernames and username patterns is defined in source code and compiled into Gitea.
There should be a configuration variable where one could place additional restrictions based on local requirements.
Description
...
Screenshots

Ideally gitea should be able to optionally run external command that would check the name according to any rules or by querying external sources, and exit with proper return value.

These reserved names should be stored on database and Admin UI could operate them.


Styling - Tables

Make the styling of the tables more pleasing and modernized to look at. Essentially make it aesthetic. Up to designer discretion.

Closing issue due to:

Issue to be merged with #84
Jacob to take lead on CSS/Styling.


Tracing

Hello,
I couldn't find a way to enable tracing in this bundle.
Is there a way to still enable this?

Hi @airoude, correct, tracing support was built in the base PHP SDK version 3 which this bundle is not using yet, follow #374 for progress.


Rename structs with too generic names

Based on API feedback, we should rename this type:
https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/keyvault/Azure.Security.KeyVault.Certificates/src/Action.cs#L12
https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/keyvault/Azure.Security.KeyVault.Certificates/src/Certificate.cs#L12
https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/keyvault/Azure.Security.KeyVault.Certificates/src/Contact.cs#L11
https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/keyvault/Azure.Security.KeyVault.Certificates/src/ContactList.cs
https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/keyvault/Azure.Security.KeyVault.Certificates/src/Error.cs#L11
https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/keyvault/Azure.Security.KeyVault.Certificates/src/Issuer.cs#L14

I'm tracking this internally with all our other edits. This is tracked as one large issue #8035.


feat/allow_disabling_mic_meter_ipc

the speech client mic meter is only used by the debug cli, it writes a lot to disk!
should the default value be set to False or do we keep the mycroft-core default?

You could have a 3rd possible value akin to "on when cli is active".
I believe there were some animations using it as input data. I don't think any of them are currently in use just mentioning it as a possible other reason for that data to exist.


Changed font size and style

Changed the font style and font size in the "What is TTM?" section of the landing page.

Changed the font style and font size in the "What is TTM?" section of the landing page.

Im not sure what the change is here .... i just see a space before the question mark is added

Changed the font style and font size in the "What is TTM?" section of the landing page.

Im not sure what the change is here .... i just see a space before the question mark is added

@rishFilet you know what man, I think I made a mistake. Seems like the changes I made were already merged. Not sure what happened on the last push but all I changed was the font and font size for the first section of the landing page. I'm going to double check and if it is, I will just close this PR.

Changes previously merged.


Velocity nodes

This adds the support for motion nodes. The branch also includes many fixes and cleanups to the existing easing/animations.

Tested on my machine (Linux, Windows), tests pass. Other than my remarks (and the offline ones), LGTM.


AnimateDiff now broken.

It seems that something is updated and now animatediff workflows do not work anymore. I have local version and online version that has not been modified for a while and it suddenly stopped working.
Every workflow, even when used on Replicate form gives this error:
Executing node 41, title: Load AnimateDiff LoRA 🎭🅐🅓, class type: ADE_AnimateDiffLoRALoader
!!! Exception during processing!!! AnimateDiffLoraLoader.load_motion_lora() missing 1 required positional argument: 'name'
Traceback (most recent call last):
File "/src/ComfyUI/execution.py", line 152, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
File "/src/ComfyUI/execution.py", line 82, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
File "/src/ComfyUI/execution.py", line 75, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
TypeError: AnimateDiffLoraLoader.load_motion_lora() missing 1 required positional argument: 'name'
Prompt executed in 1.54 seconds
outputs:  {}
Seems to relate to motion lora loader.
I have trained one own model and that still works, so this new bug has come after i trained that. Workaround for me is to use my own model for every workflow. Downside is that my own model has constant cold boots and can be really slow to use.

Can you share an example prediction or workflow? My guess is that the animate diff motion lora custom node has changed

Looks like you need to just pass in the name of the motion lora too?
https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved/blob/c5c27807f0ba15507b8c9a7a650a04837351753a/animatediff/nodes_lora.py#L17

It used to be lora_name, now it's just name

It was the name change problem. Now there is another problem for me:

HighRes-Fix Script 241:

Value not in list: control_net_name: '' not in []
Value not in list: pixel_upscaler: '' not in []

HighRes-Fix Script used to work by leaving those empty as i'm only doing latent upscaling and those would just load extra files. Now it does not run trough if some value is empty. Is there workaround for that?
Thanks for checking this out!
Next time i'll try to remember to check the commit changes before posting here.

It used to be lora_name, now it's just name

Changing lora_name to name gives this error: - Value not in list: name: '16000_cseti_4507345_general-70vid_mv2.safetensors' not in []
So it still checks is the name on some list before using it.
Are Motion loras copied to wrong directory?:
16000_cseti_4507345_general-70vid_mv2.safetensors exists in ComfyUI/models/animatediff_loras
That file should go to: ComfyUI\models\animatediff_motion_lora

I think this commit will fix it (I haven't pushed latest to Replicate yet)
https://github.com/fofr/cog-comfyui/commit/ca4ae0ec76a54874320797e4155d355872465c58

Fixed motion lora directory


YT vid not responsive

The YT videos are not responsive when switching from desktop view to mobile view.

I embedded twitter posts instead


WorkItem Assignee: Unassign not working

How to reproduce?

Click on assignee search bar. A drop down menu will appear.
Select an assignee.
Again click on assignee search bar. A drop down menu will appear.
Click on Unassign.

It is working on prod-prev. @naina-verma can you please verify this.

@vikram-raj @naina-verma now its working for me as well. I will close this one.


Introduce hydra-tx library

Introduces hydra-tx library.

Introduces hydra-tx:testlib with Arbitrary instances and generators namespaced away from the main library.
Moves many things to Hydra.Tx module namespace.

Next:

Move observation code to Hydra.Tx
Standardise generators. Stop using a mix of generators and Arbitrary
Remove IsTx constraints on  Hydra.Tx types and decouple ledger code from Snapshot types.

[ ] CHANGELOG updated or not needed
[ ] Documentation updated or not needed
[ ] Haddocks updated or not needed
[ ] No new TODOs introduced or explained herafter

I would like to merge this despite the disagreements on module namespacing and Arbitrary instances that we can resolve over time so that we are not blocking others.


Auto-generate a unique id for every content item

In brief, every content item generated by Velite should have an id key auto-generate.
For example:
.velite/posts.json
[
  {
    "_id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",
    "title": "...",
    "description": "...",
    "type": "...",
    "date": "2024-04-06T19:00:00.000Z"
  }
]

This feature existed briefly in earlier versions, but was later removed.
Because I think the ID is the only identifier of the content, random uuids or others have no practical significance for the production environment.
If Velite wants to assign a constant ID to each content, It needs to agree on the content structure, such as the same title or other fields. This goes against the original intention of "Velite does not determine the content structure".
So I think the unique identifier should not be determined by Velite, but by the user himself, such as:
export default defineConfig({
  collections: {
    posts: {
      name: 'Post',
      pattern: 'posts/**/*.md',
      schema: s
        .object({
          id: s.string(), // hardcode in files, recommended!!!
          title: s.string().max(99),
          slug: s.slug('posts'),
          // ...
        })
        .transform((data, { meta }) => ({
          id: hash(data.title), // or slug / meta.path
          ...data,
        }))
    },
    // ...
  }
})

Thank you for the help.


How to check if string contains value? i.e. where x like "%value%"

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the SQLModel documentation, with the integrated search.
[X] I already searched in Google "How to X in SQLModel" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to SQLModel but to Pydantic.
[X] I already checked if it is not related to SQLModel but to SQLAlchemy.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
statement = select(Event).where(Event.user_public_id == user.public_id)
if suggested_by:
     statement.filter(Event.suggested_by.contains(suggested_by))

Description
using SQLAlchemy I would do this
if suggested_by:
     query.filter(Event.suggested_by.contains(suggested_by))

assuming I have a statement like this:
statement = select(Event).where(Event.user_public_id == user.public_id)
if suggested_by:
     statement.filter(Event.suggested_by.contains(suggested_by))

As seen above I still use the SQLAlchemy logic in the above because I couldn't figure out any way to do this with SQLModel. Is there any way to perform a where/like query with this library?
Operating System
macOS
Operating System Details
No response
SQLModel Version
0.0.4
Python Version
3.9.7
Additional Context
No response

I am looking for a way to achieve this, too. In sqlalchemy, it is possible to do this with something like User.name.ilike(search), but I am using vscode with this option "python.analysis.typeCheckingMode": "basic" and it has squiggly lines on it. The work-around I have seems a bit messy. Hope something gets implemented to solve this soon. Other than that I really like sqlmodel

Kindly try this, it work for me.
select(User).where(User.name.like(’%’+ keyword + ‘%’))

Yup, as i stated in the OP, i can reach for the underlying sqlalchemy api and do this. But this doesn't give me the same kind of type safety and editor completion as I would get otherwise.

Given this is a few months later, there may have been improvements in SQLModel. The following seems to work by importing col and explicitly wrapping the column before using contains.
select(Event).where(col(Event.suggested_by).contains(suggested_by)

Thanks, @johnziebro your solution made it really simple.
    query = select(User).where(and_(User.role_id == role.id, or_(col(User.first_name).contains(name), col(User.last_name).contains(name)))).order_by(User.first_name)

@johnziebro while your solution works beautifully, would it be possible to also make it case-insensitive?

It did not worked for me (I mean vscode has squiggly lines on it too). But this worked for me:
...
from sqlmodel import column
...
_contents = session.query(Content).filter(column("link").contains("something")).order_by(ordering).offset(offset).limit(limit).all()

But it would be better with "Class.column" implementation :/

@mrsakkaro
A bit late, but using regexp_match(value, "i") instead of contains(value) does the trick.


"TypeError: col.shouldDisableInsert is not a function" prevents inserts with<EMAIL_ADDRESS>and<EMAIL_ADDRESS>

First of all, thanks for your work with this great package!
I have encountered with an issue using the latest drizzle packages,
when trying to insert rows which contains fields with drizzle-postgis models.
My schema is:
const locationTable = createTable('location', {
  id: uuid('id')
    .default(sql`gen_random_uuid()`)
    .primaryKey(),
  coordinate: gis.point('coordinate', { srid: 4326 }).notNull()
})

and the code for the insert:
import { type db } from '@/server/db'
import { location } from '@/server/db/schema'

import { faker } from '@faker-js/faker'
import { Point } from 'drizzle-postgis'

const point = { type: "Point", coordinates: [faker.location.longitude(), faker.location.latitude()] } satisfies Point
const rows = [{
      id: faker.string.uuid(),
      coordinate: point
}]

await db.insert(location).values(rows)

Running the code above the following exception is thrown:
Stacktrace:
TypeError: col.shouldDisableInsert is not a function
    at <anonymous> (D:\Projects\dh\node_modules\src\pg-core\dialect.ts:459:94)
    at Array.filter (<anonymous>)
    at PgDialect.buildInsertQuery (D:\Projects\dh\node_modules\src\pg-core\dialect.ts:459:68)
    at QueryPromise.getSQL (D:\Projects\dh\node_modules\src\pg-core\query-builders\insert.ts:307:23)
    at <anonymous> (D:\Projects\dh\node_modules\src\pg-core\query-builders\insert.ts:322:35)
    at Object.startActiveSpan (D:\Projects\dh\node_modules\src\tracing.ts:27:11)
    at QueryPromise._prepare (D:\Projects\dh\node_modules\src\pg-core\query-builders\insert.ts:317:17)
    at <anonymous> (D:\Projects\dh\node_modules\src\pg-core\query-builders\insert.ts:332:16)
    at Object.startActiveSpan (D:\Projects\dh\node_modules\src\tracing.ts:27:11)
    at QueryPromise.execute (D:\Projects\dh\node_modules\src\pg-core\query-builders\insert.ts:331:17)

By checking drizzle's source code here, I think the column class has been extended with a new method shouldDisableInsert, which is not found on the custom columns generetad by this package.

Thanks for raising this issue and including your preliminary investigation!
The weird thing to me is that we use the customType utility as described here
https://github.com/Schmavery/drizzle-postgis/blob/c0e2ded226ab27af4f7af7ad35f1394f3d38c220/src/models.ts#L103-L118
So I'd expect other peoples stuff to be breaking too? Any chance you can copy paste one of the examples from the drizzle customType docs and see if that works on your setup?

I've the same issue trying to use a polygon field in my schema. Interestingly when I copy the polygon custom type code from the package into my schema file everything works...


fix(dart): remove hardcoded path to flutter SDK

This is unnecesary since hover search flutter in the path
Emacs says that file does not exists when I try to run any flutter command and I can't override flutter-sdk-path on the config file.
Removing these lines everything works fine

Thanks for your help!


Remove Prices from 'Fee Schedule' in favor of store prices

Ref #24 need to remove prices from 'Fee Schedule ' and rename button.

then force prices from store.
Verify create and renew badges are pulling right prices.

Almost done,  just need to redo fee structure for badge types.   Ugg

This should be good,  need to test Creating new different types of users, and renewing different types of users.

Broke on the first try. See email reply b/c I was told to never paste the full address on github.

OK, we are ready for another round of testing.


Change to parameters and curl

Updated doc to match changes in trial architecture, adding a route, updating curl and updating the response.


Support "extract function" refactoring in C files

Hope the Clangd can support extracting the code fragment to a new function for C language.

Transferred to the clangd repo since this is a server-side enhancement.

That's Great.
Transferred to the clangd repo since this is a server-side enhancement.
Thank your patience,  your time and all the effort you did for this case.

Sorry for bother, if have time plan for this enhancement feature, could share it ?  I really need this feature


Add a has_block method to check if a dialogue contains a given block

I ran into this issue when I was trying to add multiple dialogues in the same file and separate them using blocks, but the start function gives an error if called with a block name that does not exist, so I though it could use a has_block method to check if a given block exists.
For example, one could use it to default to a "default block" when a block with the given name does not exist.
if dialogue.has_block(block_name):
    dialogue.start(block_name)
else:
    dialogue.start("default_block")

There might be some other use cases for it, and since it only requires two accessor methods I though it would be a useful addition.

Hello. Thanks. This makes sense.


Add issue-making guidelines to CONTRIBUTING.md

Since github asks uses to look at the contributing guidelines before making an issue, it would be nice to include a) a quick FAQ and b) a link to the website and some other info to consider before making an issue.

Some things that it'd be nice to have in there in addition:

Giant disclaimer about the everlasting Firefox issue
Is this a bug with Picturefill or with Responsive Images?
The veritable bible of understanding srcset/sizes is a must-have: https://ericportis.com/posts/2014/srcset-sizes/
A link to a place where people can ask rudimentary questions about responsive images to redirect them from PF issues, because, well, I can see why people can get confused if they haven't looked into it in much detail. Actually I'm not too sure where I'd go outside my company. Are forums still a thing? What year is this?


Establishing cross project monthy communication mechanism

Hi everyone. Today we had an active governance office hours today with myself @fperez @jasongrout @afshin @willingc @Zsailer @tgeorgeux in attendance. One of the topics that @willingc brought up was the challenge of cross org/repo communications. Jupyter is a vast project now, and it can be nearly impossible for any individual to follow everything that is going on. Communication around governance is one part of this, but it impacts all work on the project.
In the conversation, an idea began to emerge about establishing a lightweight mechanism to enable the Jupyter community to follow what is going on across our orgs, repos, and working groups on monthy basis. Here is the rough sketch (please help us iterate on this):

Create a GitHub repo for collection and presentation of monthly update information (see below for more details about what type of information we are thinking about).

We talked about reusing our existing jupyter/newsletter for this, but maybe another makes more sense?
Publish the relevant markdown docs in this repo using GitHub pages.

Have each GitHub organization under the Jupyter umbrella (see question 1 below) appoint a communications person that would own the collection of the monthly information for that org.

That person could work with contributors on that org however they see fit to collect the information. For example, on a big org, they could delegate other people who provide information for individual repos.

Once a month, the communications person would:

Work with the org-level contributors to collect the information.
Submit a PR to the appropriate markdown document on the central repo.

What type of information?

We want the information to be easy to write, collect and publish–in the form of bullet points in complete-ish sentences with a link.
Under the broader umbrella of "what interesting work is going on?", bullet points should address the following types of questions:

What work has the org/repo done over the last month?
What releases have the org/repo made over the last month?
What work is happening over the next month?
Big questions or challenges the org/repo is wrestling with, especially those with cross project impact?
What ongoing meetings is the org/repo having that others can attend.

Questions:

For this purpose, do we want to include "adjacent" open source project that are not formally under Jupyter's governance (model QuantStack, nteract, etc.)?
@Zsailer may be willing to help us get this started as the coordinator. It would be helpful to have others help in this - maybe the communications person for the orgs can rotate monthly?
Should the non-GitHub working groups (governance, inclusion and diversity, jupyter community workshops, jupytercon, etc.) also report (I don't see why not)?
What repo should we use?
What are the monthly dates for reminders, the PR submission, etc.
How should we organize the markdown documents into folders across dates and project areas?

Just my 0.2 cents, prior to working on Jupyter I have been working at Apache projects for a little while (over 10 years)... Apache had similar issues, around growth and community/project oversight, and they have in place a great structure that has been working for a while, enabling board oversight while still giving the projects autonomy to govern themselves.
Making a parallel to Jupyter community:

Project communities (Jupyter Org) provide reports due a week before the monthly meeting (see bottom of the minutes for project reports)
Monthly public Jupyter Steering Council meetings review and provide feedback to the project/communities.
All then is available in minutes and can be observed by the overall community.

Based on that, it could also help shape the relationship between Jupyter (umbrella organization) and it projects (Jupyter related project organizations) where each org has a project management committee (probably the core contributors) that are responsible for governing the org and reporting/summarizing back to the council.

I'm happy to help with this, and I'm happy to be a point person for JupyterLab if needed.

In general I think that this is a great idea - my main concern about this is around the extra labor we'll create for the people that are sitting on this meeting. In my experience, wrangling information from people can be stressful and a lot of work in volunteer organizations, especially under-resourced ones.
Some quick thoughts for your questions:

For this purpose, do we want to include "adjacent" open source project that are not formally under Jupyter's governance (model QuantStack, nteract, etc.)?

IMO any project that is primarily building tools in the jupyter space and interested/willing to follow the communication model that the community agrees upon should be welcome to join.

@Zsailer may be willing to help us get this started as the coordinator. It would be helpful to have others help in this - maybe the communications person for the orgs can rotate monthly?

This seems like a good idea, I am a fan of making this an explicit role that people fill. I feel like the rotation timeline should be left up to the sub-projects but suggestion of bi-monthly seems reasonable.

Should the non-GitHub working groups (governance, inclusion and diversity, jupyter community workshops, jupytercon, etc.) also report (I don't see why not)?

IMO yes, this meeting isn't about diving into technical discussions, it's about giving a high-level info-sharing opportunity. (right?) Sharing information across the "non-coding" parts of the project seems important to me.

What repo should we use?

Why not add to the jupyter/jupyter community docs repo? Alternatively we could make a jupyter-wide "team-compass" repo and add this as a sub-folder to it?

How should we organize the markdown documents into folders across dates and project areas?

Arbitrary suggestion: have one markdown file per day, each file starts with a table that has the name of the orgs present in the doc, and a link to the section for that org. Could either be organized as a pure-github repository, or rendered as a website (happy to help with that, we could jupyter book if folks are interested, but other SSGs would work just fine as well).

@choldgraf Some context. My first suggestion to the group was to create a lightweight hackmd that could be edited within a timeframe and then posted where each org would share 3-5 bullets.
It's been difficult to highlight new accomplishments or cool new projects by the Project in my keynotes because there is no centralized way to do so. I'm less interested in detailed updates and more interested in key accomplishments and what is currently being worked on that folks are excited about.

@willingc I totally agree that this information would be quite valuable to have. I like the idea of having checkpoints w/ low-maintenance burden to informally set a cadence of releases / reflection / etc. It'd also make it easier to do things like write annual updates from projects or write grants etc.

Maybe I misunderstood the initial issue, as I was thinking more about the governance aspect of the multiple projects. This does sound much more like a periodical newsletter where different projects provide a community update, more towards advertising or bringing something up for discussion.
How about collecting the info in someplace (shared dropbox, HackMD, etc) and just using the Jupyter Community Forum to publish? I would maybe avoid using GitHub, as I am foreseeing everybody coming on the last couple days and providing a ton of update (prs) and there is going to be a lot of possible merge conflicts to deal with.
Having said that, then I don't think we should include governance-related items on these newsletters (the original issue did mention some items that might be more towards governance such as issues/challenges).
And yes, non-GitHub projects and initiatives should report as well.

@choldgraf What if we had a topic on the Discourse Forum, as @lresende mentions, that is titled Project News or Announcements where there could be a pinned post for each org (or affiliated project).

I think this could be a nice way to get around the extra burden of pull/modify/commit/PR that would come with a git repository. We could create a thread in the forum that people can reply to with updates, or create a single "wiki-style" thread that people can edit. Maybe put it in the community section?

There are a couple of layers here that have slightly different needs:

The people writing/collecting the bullet points within a specific
org. For these people, I agree this should be as lightweight, quick,
and collaborative as possible - hackmd is a great option for this
part. At the same time, I am fine leaving it entirely up to each org
to decide how the bullet points are written and collected
(standardizing on markdown is probably a good idea).
Aggregation across different orgs–this is where the central
coordinator comes in. If each org is authoring/collecting and given
the central coordinator markdown, the tool for that collection can
also be flexible. It could be a master hackmd file, a markdown
document on a repo. I imagine a small amount of grouping into
sections, etc. will be needed, but the hard point won't be the editing
as much as the cat herding.
How to publish the information. The group who consumes this
information will be much broader than the core folks helping to
collect the information, so I think this should be as broad a venue as
possible. Possibilities include discourse, githhub pages, jupyter
blog. An issue we are already running into with posting governance
meeting minutes on discourse is that the information is not very
discoverable.
Archiving. I think it makes sense for this information to be
archived in an appropriate manner. For markdown, GitHub seems to be a
good option.

On Thu, Sep 26, 2019 at 1:15 PM Chris Holdgraf<EMAIL_ADDRESS>wrote:

I think this could be a nice way to get around the extra burden of pull/modify/commit/PR that would come with a git repository. We could create a thread in the forum that people can reply to with updates, or create a single "wiki-style" thread that people can edit. Maybe put it in the community section?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

--
Brian E. Granger
Principal Technical Program Manager, AWS AI Platform<EMAIL_ADDRESS>On Leave - Professor of Physics and Data Science, Cal Poly
@ellisonbg on GitHub

re: quick bullet points, I've been using a little mini-CLI tool I wrote for grabbing GitHub activity information. I just packaged it up in case others would find it useful for this kind of thing: https://discourse.jupyter.org/t/a-tool-for-quickly-generate-markdown-summaries-of-github-activity/2248
for aggregation and archiving, it's one reason I like Discourse - the aggregation step could be "post in this community forum thread" and then it's already archived and searchable. Then you could just maintain an index page somewhere that links out to each of these updates. We've done this a few times in the Binder docs and I think it's a nice balance of ease-of-use and flexibility.

So, we have this guy Tony Hist that has been doing a good job on a monthly newsletter around Jupyter News.  Maybe we could reach out to him and try to help him expand his efforts with more content and more easily discoverable? See this thread.
Having said that, and being a little naive, I would love to be able to see on these newsletters opportunities to come and help collaborate on the community, so it's not about new functionality, but maybe things like we are starting the new effort on feature blah, and we have meetings every week at 9 AM PST for the interested parties or things like Meetups, upcoming talks from contributors/community members.

Tony Hirst's newsletter is awesome @lresende and a wonderful asset to our community.
Personally, what I was looking are high level important accomplishments or things being worked on for release in 3 months or so, specifically on Jupyter projects.

One of the things we'd talked about as a part of the wider conversations on governance is the importance of recognizing significant/ongoing contributions. It's a bit of a tangent on the original question posed here but as we brainstorm ideas around structures and roles such as the one being discussed here of a communications person I want to add this into the conversation.  I ran into a Jupyter evangelist yesterday who asked us to do something like the Docker Captain program. https://www.docker.com/blog/inside-look-docker-captains-program  - and I think it's brilliant. Fitting in with the design concept created over the summer for the Jupyter website: (scroll to bottom to see design mock) something space related for the title would be fun. Jupyter Mission Specialist? https://en.wikipedia.org/wiki/Astronaut_ranks_and_positions

It might be my military bias, but I like Jupyter Captain better. ;).  It might also read better on a resume.  Mission Commander implies a single mission to me.  Either way, this sounds like a fantastic program to emulate for our community, thanks Ana!
Regards,
Steve
Sent from Phone

From: Ana Ruvalcaba<EMAIL_ADDRESS>Sent: Friday, October 4, 2019 1:57 PM
To: jupyter/governance
Cc: Subscribed
Subject: Re: [jupyter/governance] Establishing cross project monthy communication mechanism (#67)
One of the things we'd talked about as a part of the wider conversations on governance is the importance of recognizing significant/ongoing contributions. It's a bit of a tangent on the original question posed here but as we brainstorm ideas around structures and roles such as the one being discussed here of a communications person I want to add this into the conversation. I ran into a Jupyter evangelist yesterday who asked us to do something like the Docker Captain program. https://www.docker.com/blog/inside-look-docker-captains-program - and I think it's brilliant. Fitting in with the design concept created over the summer for the Jupyter websitehttps://github.com/jupyter/jupyter.github.io/issues/331: (scroll to bottom to see design mock) something space related for the title would be fun. Jupyter Mission Specialist? https://en.wikipedia.org/wiki/Astronaut_ranks_and_positions
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/jupyter/governance/issues/67?email_source=notifications&email_token=AAP735BFF5PPGZ33F26LSQLQM6GZRA5CNFSM4I2DRRMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEAMS2SI#issuecomment-538520905, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AAP735FJXE527BBDTE6X3NTQM6GZRANCNFSM4I2DRRMA.


Fastest

Hi!
Thanks for your amazing library, it's very well documented, appreciated.
I'd like to ask an advise from you.
I can see in one example that you Insert a Struct (I mean 2x i32) types directly in the Db with:
pub fn put_reserve<K: AsLmdbBytes + ?Sized, V: FromReservedLmdbBytes + Sized>(
Is it faster to insert & retrieve a Struct like you did or use a String with "/" and split the elements at retrieval?
What's your intake?
I have maybe 5-6 data to store in the value, JSON is slow... I'd like to avoid parsing as much as I can so a basic split is nice but I'm really surprised to see that in your example you insert directly your Struct.
Thank you very much!

Tried many different things, can't retrieve the value I've inserted in the DB later on, String is not valid UTF-8, how can I retrieve my struct as it was inserted? :)

access.get::<str,str> doesn't work to fetch back a u32 in my case, I must be doing something wrong

Writing a struct directly is the fastest option as it is as fast as just initialising the struct in memory. However, it has pretty serious ramifications so I would advise against going that route unless either (a) you're comfortable with reasoning about how the compiler lays structs out in memory and are willing to bear the maintenance burden of coupling your database data to those structs, or (b) you're only using the database within the one single process that builds it.
Otherwise, my suggestion is to use Serde in conjunction with one of the binary codecs — bincode is a good option if your database doesn't need to be read by anything but your own application, otherwise there's a number of "binary JSON" variants like CBOR or MessagePack (which I don't have substantial personal experience with). In this route, you'd be using Serde to turn your data into byte arrays and then using &[u8] values with lmdb-zero.

Thanks so much!
Problem is I have about 2-3 millions to read everything seconds, I'm scared Serde is too slow for that.
"this will almost certainly lead to undefined behaviour." in your article, do you mean the data could be incorrect?
I would use the same struct among processes.

I assume you're talking about this paragraph:

If the tagged type contains pointers of any kind, they will be stored in and retrieved from the database, which has serious ramifications, especially when the FromReservedLmdbBytes implementation is used. If the type contains Rust references, this will almost certainly lead to undefined behaviour.

If your struct contains pointers of any kind, including references, the pointer itself, not the data being pointed to, gets written. This means you could read it back in with the wrong lifetime, or after the thing it points to has been dropped. In the case of put_reserve, it will also make visible pointers with whatever value happened to be there before. What happens then if those pointers are anything other than raw pointers is unpredictable and entirely depends on your code and how LLVM optimises it.
I would be surprised if serde with bincode is too slow for your use case.

Very interesting! Your lib is quite amazing I'm impressed.
I have 1+Millions insert / second and Bincode I'm a bit scared it will put the CPU 100% for a while.


Improve onboarding experience

This adds a contributor guide (leaning on Flux.jl's), makes some updates to the README, and adds a developer guide for running tests and documentation.

Thanks for the comments!

What's the difference between DEVELOPING.md and developing.md?

That was just an old version that wasn't renamed; i removed it


block_parents_index is too big

Bug description
On the shimmer beta chronicle instance, this index is almost 8GB. This is much too large. We must find a way to provide the benefits of an index without trying to keep all of that in memory. Perhaps a materialized view?
Chronicle version

Chronicle version: 1.0.0-beta.36

This may be an unfixable issue, simply a fact of life for big data storage. However, eventually we may need to consider options for managing the size of our data.


[OnePlus 7T] Segmentation Fault and Demuxer 'video': stream disabled due to connection error

[x] I have read the FAQ.
[X] I have searched in existing issues.

Environment

OS: Windows
scrcpy version: 2.4
installation method: Windows Release
device model: OnePlus 7T
Android version: 10

Describe the bug
I have tested on Google Pixel 4 and everything works fine but when I run it on the OnePlus 7T, it does not work.
I have looked through many issues that mentioned the replacing of scrcpy-server for this issue but it does not work for me.
When I run .\scrcpy, I get the error ROR: Demuxer 'video': stream disabled due to connection error.
Also, when I run .\scrcpy --list-encoders, I get Segmentation Fault.
.\scrcpy
scrcpy 2.4 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     -->   (usb)  XXXXXXXX                        device  HD1900
C:\Users\Ivan\Downloads\platform-tools_r35.0.0-windows\pla...file pushed, 0 skipped. 244.8 MB/s (69047 bytes in 0.000s)
[server] INFO: Device: [OnePlus] OnePlus HD1900 (Android 10)
[server] WARN: Audio disabled: it is not supported before Android 11
INFO: Renderer: direct3d
WARN: Demuxer 'audio': stream explicitly disabled by the device
ERROSegmentation fault
R: Demuxer 'video': stream disabled due to connection error
ERROR: Demuxer error

.\scrcpy --list-encoders
scrcpy 2.4 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     -->   (usb)  ef7dd1f1                        device  HD1900
C:\Users\Ivan\Downloads\platform-tools_r35.0.0-windows\pla...file pushed, 0 skipped. 253.1 MB/s (69047 bytes in 0.000s)
[server] INFO: Device: [OnePlus] OnePlus HD1900 (Android 10)
Segmentation fault

I guess the Segmentation fault occurs on the device.
Could you check adb logcat?
adb logcat -c    # clean logs
scrcpy …   # a command with a segfault
adb logcat


XAML generator error when DataTemplate is in ResourceDictionary

This issue has been moved from a ticket on Developer Community.

There are no errors when when the very same DataTemplate resides in the page XAML file.

Original Comments
Visual Studio Feedback System on 6/1/2020, 00:48 AM:
We have directed your feedback to the appropriate engineering team for further evaluation. The team will review the feedback and notify you about the next steps.

Original Solutions
(no solutions)

I'm pretty sure I also posted a screen shot of the problem...

@mc0re unfortunately there isn't enough information in this issue to make it actionable. can you provide a repro or more details ?

Please find the provided screen shot in the ticket mentioned above,

I'm sorry, I don't see any screenshots in the attached link. could you put the screenshot in this github issue?


Update glossary

Specify about managed logging
Signed-off-by: Smriti S<EMAIL_ADDRESS>

Preview environment: https://hdh.pr.harness.io/pr-1063


”Lupăria”, ”Valea Racului”, ”Zbereni” are listed in the drop-down menu

Description:
When user writes ”Lupăria”, ”Valea Racului”, ”Zbereni” the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Lupăria"

Expected results
The location appears in the drop-down menu as "Sat Lupăria, IAȘI (Cotnari)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Valea Racului"

Expected results
The location appears in the drop-down menu as "Sat Valea Racului, IAȘI (Cotnari)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Zbereni"

Expected results
The location appears in the drop-down menu as "Sat Zbereni, IAȘI (Cotnari)".


Some small fixes in config and tests (4-3-stable)

In service of #246 (only fixes test never finishing)
Addresses #178
Addresses #278
Still seeing occasional failure of the test as described in #246 but this at least makes it so that the test can fail after a while. Will continue to investigate that.
Tests passed.

Whoops - renamed the failure_function to timeout_function inconsistently. Running tests again after fixing that up, plus the review comments...

Awaiting test results.

Tests passed after fixing all the silly mistakes. :)

Squash to taste.

Squashed

#'d. Mergin


fix typos, homogenize docstrings

A really minor contribution, feel free to locally recreate the changes if merging is too annoying. ;)

Coverage remained the same at 92.938% when pulling 1ced9b0d2bceb430a1e7935cebdcc12aeef06506 on kannes:improve-bounds2-docs into 3cce6d72dd00355fabcd7fd6977718ecc87f8510 on darribas:master.

Excellent!!! Thank you very much @kannes!!! Merging right away...


Issue with ports that install a python versioned binary and building multiple flavors

I'm not sure if this is actually a poudriere issue or if this is something to do with the way python ports and flavors work so I'm not 100% sure where to post this but hopefully you don't mind or can give me some direction on where to ask.
Take security/ py-certbot for example. If python 2.7 is the default it will install the binary as "certbot-2.7" with a "certbot" symlink. Same idea if python 3.6 is the default, etc.
However, if building multiple flavors then it will only create the certbot symlink for the default version of python but no symlink for the non-default version. So, for example, on my poudriere setup I have a FreeBSD 11.1 jail that has python 3.6 set as the default version but I build all packages for both python 2.7 and 3.6. So, py36-certbot is fine, it installs both "certbot-3.6" and a symlink certbot -> certbot-3.6 but  py27-certbot only installs "certbot-2.7" with no symlink. I've noticed this with textproc/py-chardet and devel/py-setuptools and probably others but I haven't looked further.

What symlink are you expecting in the 3.6 default case, for 2.7? If certbot is already taken by 3.6 then what could 2.7 add? (It's not a Poudriere issue)

I'm not installing both versions on the same system. We have some jails
that need Python 2.7 and some that need 3.6 so I build both flavors.
3.6 is the default so the 3.6 flavor creates a symlink however 2.7 does
not. If I make 2.7 the default then that is reversed.
I thought it might not be poudriere. Also, probably not something most
people ever have to deal with so don't run into often. Guess I'll just have
to work around it.
On Mon, Jun 4, 2018, 16:34 Bryan Drewery<EMAIL_ADDRESS>wrote:

What symlink are you expecting in the 3.6 default case, for 2.7? If
certbot is already taken by 3.6 then what could 2.7 add? (It's not a
Poudriere issue)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/freebsd/poudriere/issues/616#issuecomment-394507175,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APLGzhGZ8aRQGD6cTvVZTbcxgDitgVtVks5t5aftgaJpZM4UZwXK
.

It has nothing to do with poudriere, and I would really say it is not a bug.
Only the default version gets a symlink, so that the packages do not conflict.

Ah I see now. It's the lack of an alternatives system. The default has to be known at build time currently. We have no runtime support for changing the default unfortunately. Either way it's an issue outside of Poudriere. Sorry about that.


Can't delete Lambda layer

Before opening, please confirm:
I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
I have searched for duplicate or closed issues.
I have read the guide for submitting bug reports.
I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
How did you install the Amplify CLI?
No response
If applicable, what version of Node.js are you using?
No response
Amplify CLI Version
4.48
What operating system are you using?
Windows
Amplify Categories
function
Amplify Commands
delete
Describe the bug
I added a Lambda layer, assigned an existing Lambda function to use it, then need to get rid of it. Removed it from the function. Then tried to delete the layer. At that point I get the error:
Resource cannot be removed because it has a dependency on another resource
Dependency: Lambda:xeroIntergration
Error: Resource cannot be removed because it has a dependency on another resource
at C:\Users\pete\AppData\Roaming\npm\node_modules@aws-amplify\cli\src\extensions\amplify-helpers\remove-resource.ts:130:19
at Array.forEach ()
at C:\Users\pete\AppData\Roaming\npm\node_modules@aws-amplify\cli\src\extensions\amplify-helpers\remove-resource.ts:126:32
at Array.forEach ()
at deleteResourceFiles (C:\Users\pete\AppData\Roaming\npm\node_modules@aws-amplify\cli\src\extensions\amplify-helpers\remove-resource.ts:124:18)
at runMicrotasks ()
at processTicksAndRejections (internal/process/task_queues.js:93:5)
at Object.executeAmplifyCommand (C:\Users\pete\AppData\Roaming\npm\node_modules@aws-amplify\cli\node_modules\amplify-category-function\src\index.ts:240:3)
at executePluginModuleCommand (C:\Users\pete\AppData\Roaming\npm\node_modules@aws-amplify\cli\src\execution-manager.ts:175:3)
at Object.executeCommand (C:\Users\pete\AppData\Roaming\npm\node_modules@aws-amplify\cli\src\execution-manager.ts:28:5)
at Object.run (C:\Users\pete\AppData\Roaming\npm\node_modules@aws-amplify\cli\src\index.ts:139:5)
Expected behavior
The layer should be removed as according to the CLI there is no dependency there yet it still thinks there is.
Reproduction steps
create a layer with amplify add function
assign the layer to an existing function via amplify update function
realise that you can't mock a function with a layer...swear a bit...then get down to removing it
run amplify update function and remove the layer from your existing function by unselecting it
run that command again just to be doubly sure that it no longer shows any layer being linked to this function
run amplify remove function and delete the layer
BOOM! Error about an existing dependency.....gurrrr (shakes fist)
GraphQL schema(s)
No response
Log output
No response
Additional information
No response

I should add that I tried pushing after removing the layer from the function and then deleting it to see if that would clear it but nope, nothing.

Closing this as a duplicate of https://github.com/aws-amplify/amplify-cli/issues/5961


Maximum number of App Service Domains in a subscription

Hello. Do we have a limit on the number of App Service Domains that a subscription can keep? Thank you.

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

ID: 9dc61ea4-6040-6143-c279-db71f9fda02a
Version Independent ID: d45201fb-c603-b878-b7d2-191db4b589e5
Content: Buy a custom domain name - Azure App Service
Content Source: articles/app-service/manage-custom-dns-buy-domain.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

@euyuil Thanks for asking question! Yes, you are correct we have limit, you may refer to this link:
https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits#app-service-limits

Hi @SnehaAgrawal-MSFT
Thanks for the reply. However, I didn't mean the limit of the custom domains per app. What I meant was the limit of the number of App Service Domains in a subscription.
Having an App Service Domain doesn't require associating it with an App Service. I can configure DNS records of it for any services including App Services.
App Service Domains are a kind of resources in Azure, so I was wondering if there's a limit, like other resources, for example, the limit of resource groups per subscription is 980. (It's documented here.)

@euyuil Thanks for the clarification! As mentioned in this doc. The current limit for purchasing domains in subscription is 20.

@SnehaAgrawal-MSFT Thank you for the investigation. I think it would be better if such information could be documented in a centralized place.
And one more related question: Is the number 20 a hard limit, or is it possible for someone to contact support to increase the limit? I came up with this question because from the doc I learnt that for some kinds of resources it's possible to increase the limit by requesting support tickets (for example).

@euyuil  Yes, if You have reached the limit for purchasing domains on your subscription.
you may request an increase to the limit, by contacting  Azure support.
Reference: https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/app-service/troubleshoot-domain-ssl-certificates.md#you-cant-purchase-a-domain
Thanks for bringing this to our attention. I have shared the feedback with content owner of this doc. We will now close this issue. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


Check cycles in directed graphs

It should be possible to use topological sort to detect cycles in a graph. Can you assign this to me? Thanks.

Hi, thank you for contributing.
I think that topological_sort is fulfilling its responsibilities in its current form and should not be expanded. It's true that the topological sort can identify if the graph contains cycles or not (if not all vertices are visited, it does) but identifying which vertices and arcs are forming cycles is less trivial. I think that this algorithm based on DFS is more simple and efficient for both these problems. If it suits you, I suggest implementing it under the name oriented_cycle_detection ?
The basic thing is returning true at the first cycle found and false at the end of the algorithm.
Now, the tricky part is providing a method .found_cycle() that allows iterating on the arcs of the cycle found with a view. You can find an example of how I think its feasible in the method .path() of the Dijkstra's algorithm.


fix: include styles.css in npm bundle

Follow up to https://github.com/rainbow-me/rainbowkit/pull/727
@markdalgleish The change was great but the folder is not included in the NPM bundle - it works in the monorepo but does not work for outside projects.

Thanks for your commitment to support different build tools.

Thanks again! Fix is out now in v0.6.1.


Convert to UML diagram

Should be helpful to iterate over the architecture alongside the PBMP (Paint + BitMaP)  stack

PBMP is out dated, JPEG is the new hip image stack, it has so many backing support already, there will never be a better image format

@mcharytoniuk Welcome here, Thanks for your amazing idea, I hope we all can change the world and possibly eliminate rust users [is this a task too?] I do not want to offend anyone.

@Kishlay-notabot It's counterintuitive to eliminate Rust users as we use them to power the perpetual motion machine
If there are no more Rust Users, there is no more perpetual motion


Fixes Beta (PortfolioStatistics) calculation

In CreateBenchmarkDifference method, a list of values of banchmark daily performance were not created properly. It added an extra zero entry in the beggining of the list and did not include the last day. That caused an one-day lag between the algorithm and benchmark performances.
Reference: Strange backtester beta results
Changes RegressionTests to reflect this correction.

Great stuff!


Fix warnings shown with pytest

Worked my way through the warnings shown by pytest.
Fixes:

in plot.hist_plot_1d(), check that bins is a str before comparing to ['knuth', ...], as str <-> numpy comparison is broken
in utils.insertion_p_value(), replace indexes with np.array(indexes), to avoid the need to slice using .iloc if indexes is a DataFrame
Add missing method parameter to WeightedDataFrame to match the same method of DataFrame

Pandas warnings:

add level=0 to samples.drop('chain') when reading Cobaya and GetDist chains. This could also be dealt with by sorting before dropping, something to consider?
use .loc[boolean_mask] where appropriate

Pandas deprecations:

replace iteritems() with items()
replace inplace=True with copy=False for DataFrame.set_axis()

Changes to tests:

test_gui.test_gui(): Skip references to button.observers if matplotlib>=3.6.0, as this no longer exists TODO: discuss what new test should be
test_labelled_pandas.py: All the tests using the ABCDEFGHIK and vowel/consonant example cause Pandas to complain that the MultiIndex should be lexicographically sorted for performance (i.e. consonant before vowel). I've suppressed these with a warning filter, alternatively the index could be reordered BCDFGHJAEI.
test_samples.test_beta_with_logL_infinities() sets the first ten elements of logL to -np.inf, which causes logL <= logL_birth and therefore the corresponding warning, which I have suppressed.
More cases of .loc[boolean_mask]
More cases of adding level=0 to samples.drop()

Personal preference, but I much prefer black as a formatting workflow...

First pass at changing test_labelled_pandas.py to use pytest.fixtures.
For now, I've just commented out the return statements which are never used.


Go over critical reviews in Play Store and address them

Probably just over the last 3 months ones

These will all be fixed if we put out an update to the Tinker app with the new SDK and setup lib.

Yea but I prefer to be proactive and answer negative reviews caused by failed setup with suggestions how to get support

Agreed!  I just meant that the code issues creating most of the critical reviews have been addressed, and we could respond to many of the reviews with a message notifying them of an app update.