Remove Null class

As of PHP7, this class name is reserved an cannot be used.  Given that PHP < 7 is essentially EOL at this point (there's only a couple months of security support left), it's probably time to remove this.

Generally I'm fine with this change but my only reservation is that this breaks compatibility and thus would require a new major version release. Since I'm not involved with the project (or PHP in general) so much anymore I leave it to @afk11 or @Spomky to decide whats the best way forward with this PR :)

As the version 2.x of the library requires PHP 7.0+, from my POV there is no risk to remove that class.

Agree with spomky here, it shouldn't be possible for people to install without 7.0, where it's impossible to use


Add Feed for Releases and Tags

Fixes #19091
Add Feed for Releases and Tags, can be accessed through reponame/releases.rss, reponame/releases.atom, reponame/tags.rss, and reponame/tags.atom
Below is the example of generated feed for rss:
<rss version="2.0">
<channel>
<title>Releases for testuser/testrepo</title>
<link>http://localhost:3000/testuser/testrepo/release</link>
<description>This is the test repo</description>
<pubDate>Sun, 06 Nov 2022 14:38:35 +0700</pubDate>
<item>
<title>v1.0</title>
<link>
http://localhost:3000/testuser/testrepo/releases/tag/v1.0
</link>
<description/>
<content:encoded>

Release v1.0

This is the description!
 Yes

</content:encoded>
<author>testuser</author>
<guid>
1: http://localhost:3000/testuser/testrepo/releases/tag/v1.0
</guid>
<pubDate>Sun, 06 Nov 2022 14:37:57 +0700</pubDate>
</item>
</channel>
</rss>

For atom:
<feed>
<title>Releases for testuser/testrepo</title>
<id>http://localhost:3000/testuser/testrepo/release</id>
<updated>2022-11-06T14:43:59+07:00</updated>
<subtitle>This is the test repo</subtitle>
<link href="http://localhost:3000/testuser/testrepo/release"/>
<entry>
<title>v1.0</title>
<updated>2022-11-06T14:37:57+07:00</updated>
<id>
1: http://localhost:3000/testuser/testrepo/releases/tag/v1.0
</id>
<content type="html">

Release v1.0

This is the description!
 Yes

</content>
<link href="http://localhost:3000/testuser/testrepo/releases/tag/v1.0" rel="alternate"/>

<author>
<name>testuser</name>
<EMAIL_ADDRESS></author>
</entry>
</feed>

Below is the specification of the feed header:

Title: Releases for (name of the repository)
Link: Link to the list of releases / tags
Description: Description of the repo
Created: Time of the feed generated

Below is the specification of the feed items:

Title: Name of the tag / release
Link: Link to the release / tag
Created: Date / time of tag / release creation
Author: User who created the tag / release
ID: ID and the link to release / tag
Content: The description of the release / tag in escaped HTML format

Just a note, we have a PR to add a setting to disable feeds (#21622). When one PR is merged, the other will have to be modified
cc @xin-u

https://github.com/go-gitea/gitea/pull/21622 was merged.

Added support for disable feed with the same configuration as #21622

Can we add a RSS icon to releases and tags, similar to how it's done for repos? Might want to wait until https://github.com/go-gitea/gitea/pull/21712 is merged as it does quite a few tweaks around the release HTML.

Thought I guess the feed is for all releases/tags so it's not suitable for display at individual releases/tags.

Can we add a RSS icon to releases and tags, similar to how it's done for repos?

@silverwind Added RSS icon next to the releases / tags button like below

🎺 🤖


BUG: GeoJSON driver returning StringList for a string containing a list

Code to create the file:
import fiona

schema = {
    "properties": {
        "time_range": "str",
    },
    "geometry": "Point",
}
with fiona.open(
    "fio_test.geojson", "w", driver="GeoJSON", schema=schema, crs="EPSG:4326"
) as fds:
    fds.writerecords(
        [
            {
                "id": 1,
                "geometry": {"type": "Point", "coordinates": [0.0, 0.0]},
                "properties": {
                    "time_range": '["2020-01-01", "2020-01-02"]',
                },
            }
        ]
    )

file contents:
{
"type": "FeatureCollection",
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
"features": [
{ "type": "Feature", "properties": { "time_range": [ "2020-01-01", "2020-01-02" ] }, "geometry": { "type": "Point", "coordinates": [ 0.0, 0.0 ] } }
]
}

ogrinfo -so fio_test.geojson fio_test

...
time_range: StringList (0.0)

fio info fio_test.geojson

WARNING:fiona.ogrext:Skipping field time_range: invalid type 5
{"driver": "GeoJSON", "schema": {"properties": {}, ...

It is strange that the original type was a string and it was converted to a StringList type.
Also helpful to note that this is not an issue with the GPKG driver.
version information
Fiona version: 1.8.21
GDAL version: 3.5.1
PROJ version: 9.0.1

OS: Linux 5.15.0-47-generic
Python: 3.10.5

Looks like the same results with OGR:
from osgeo import ogr

driver = ogr.GetDriverByName('GeoJSON')
data_source = driver.CreateDataSource('ogr_test.geojson')
layer = data_source.CreateLayer('ogr_test', geom_type=ogr.wkbPoint )
feature_defn = layer.GetLayerDefn()
feature_defn.AddFieldDefn(ogr.FieldDefn("time_range", ogr.OFTString))
feature = ogr.Feature(feature_defn)
feature.SetField("time_range", '["2020-01-01", "2020-01-02"]')
feature.SetFID(0)
geom = ogr.CreateGeometryFromWkt("POINT(1 2)")
feature.SetGeometry(geom)
layer.CreateFeature(feature)

Thoughts about adding support for the string list type?


Fixed #28624 -- Added attribute allow_duplicate to manytomany field

added attribute which surpresses unique constraint

Closing as "wontfix" per ticket.


MergeViaRelationship

Hi Simon,
I've been working with Ben on some improvements to the cypher extensions. This pull request allows the ability to merge nodes via a relationship.
It includes tests.
Cheers.

Hi @CormacdeBarra
Looks like a good addition, minor notes, update and I'll get it in.
cheers

Hi simon,
Sorry about the delay. I have updated this PR. I merged in the master branch from your repo to git rid of the conflicts. It should be good to go now.
Thanks,
Cormac

@CormacdeBarra looking good, just need to resolve a conflict, thanks if it is the assembly version, just bump to 1.1 thanks

@simonpinn
Version bumped. thanks.


SSL handshake error on using az universal package publish

Hello Team,
I'm using az cli version 2.8.0, and facing SSL Handshake errors while publishing a universal package to my organization's feed.
I'd like to mention that, the path in the exception thrown (C:\Users\VSSADM~1) is something not a specific path to my machine. Would like to know, if this is a defect on the az cli ? Please do let me know, as it is a blocker for me, or please direct me to do this activity appropiately
The command failed with an unexpected error. Here is the traceback:

HTTPSConnectionPool(host='274vsblobprodsin130.vsblob.vsassets.io', port=443): Max retries exceeded with url: /artifacttool/artifacttool-win10-x64-Release_0.2.198.zip?sv=2019-07-0
b&sig=higoj5xPr7xVIu5mvUYfsBFOUe5fCl8I5XHwEGncGa8%3D&spr=https&se=2021-11-14T11%3A43%3A25Z&sp=r&P1=1636889905&P2=11&P3=2&P4=Ff2V3QgsxcZxOE7Vam%2fjWpxaxM411Li6NHlO%2bmt8amM%3d (Ca
by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)",),))
Traceback (most recent call last):
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\contrib\pyopenssl.py", line 456, in wrap_socket
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\pyOpenSSL\OpenSSL\SSL.py", line 1915, in do_handshake
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\pyOpenSSL\OpenSSL\SSL.py", line 1647, in _raise_ssl_error
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\pyOpenSSL\OpenSSL\_util.py", line 54, in exception_from_error_queue
OpenSSL.SSL.Error: [('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\connectionpool.py", line 600, in urlopen
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\connectionpool.py", line 343, in _make_request
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\connectionpool.py", line 839, in _validate_conn
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\connection.py", line 344, in connect
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\util\ssl_.py", line 347, in ssl_wrap_socket
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\contrib\pyopenssl.py", line 462, in wrap_socket
ssl.SSLError: ("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)",)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\requests\requests\adapters.py", line 449, in send
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\connectionpool.py", line 638, in urlopen
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-aq7acbhx\urllib3\urllib3\util\retry.py", line 399, in increment
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='274vsblobprodsin130.vsblob.vsassets.io', port=443): Max retries exceeded with url: /artifacttool/artifacttool-win10-x6
ease_0.2.198.zip?sv=2019-07-07&sr=b&sig=higoj5xPr7xVIu5mvUYfsBFOUe5fCl8I5XHwEGncGa8%3D&spr=https&se=2021-11-14T11%3A43%3A25Z&sp=r&P1=1636889905&P2=11&P3=2&P4=Ff2V3QgsxcZxOE7Vam%2
axM411Li6NHlO%2bmt8amM%3d (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)",),))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\knack\knack\cli.py", line 215, in invoke
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 654, in execute
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 718, in _run_jobs_serially
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 709, in _run_job
  File "C:\Users\gmylavarapu\.azure\cliextensions\azure-devops\azext_devops\dev\common\exception_handler.py", line 31, in azure_devops_exception_handler
    reraise(*sys.exc_info())
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\six\six.py", line 703, in reraise
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 688, in _run_job
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 325, in __call__
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\__init__.py", line 545, in default_command_handler
  File "C:\Users\gmylavarapu\.azure\cliextensions\azure-devops\azext_devops\dev\artifacts\universal.py", line 56, in publish_package
    return artifact_tool.publish_universal(organization, project, feed, name, version, description, path)
  File "C:\Users\gmylavarapu\.azure\cliextensions\azure-devops\azext_devops\dev\common\artifacttool.py", line 54, in publish_universal
    return self.run_artifacttool(organization, args, "Publishing")
  File "C:\Users\gmylavarapu\.azure\cliextensions\azure-devops\azext_devops\dev\common\artifacttool.py", line 58, in run_artifacttool
    artifacttool_dir = self._artifacttool_updater.get_latest_artifacttool(organization)
  File "C:\Users\gmylavarapu\.azure\cliextensions\azure-devops\azext_devops\dev\common\artifacttool_updater.py", line 43, in get_latest_artifacttool
    artifacttool_binary_path = self._get_artifacttool(organization)
  File "C:\Users\gmylavarapu\.azure\cliextensions\azure-devops\azext_devops\dev\common\artifacttool_updater.py", line 74, in _get_artifacttool
    _update_artifacttool(release_uri, release_id)
  File "C:\Users\gmylavarapu\.azure\cliextensions\azure-devops\azext_devops\dev\common\artifacttool_updater.py", line 98, in _update_artifacttool
    response = requests.get(uri, stream=True)
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\requests\requests\api.py", line 75, in get
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\requests\requests\api.py", line 60, in request
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\requests\requests\sessions.py", line 533, in request
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\requests\requests\sessions.py", line 646, in send
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-363drsgw\requests\requests\adapters.py", line 514, in send
requests.exceptions.SSLError: HTTPSConnectionPool(host='274vsblobprodsin130.vsblob.vsassets.io', port=443): Max retries exceeded with url: /artifacttool/artifacttool-win10-x64-Re
_0.2.198.zip?sv=2019-07-07&sr=b&sig=higoj5xPr7xVIu5mvUYfsBFOUe5fCl8I5XHwEGncGa8%3D&spr=https&se=2021-11-14T11%3A43%3A25Z&sp=r&P1=1636889905&P2=11&P3=2&P4=Ff2V3QgsxcZxOE7Vam%2fjWp
11Li6NHlO%2bmt8amM%3d (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)",),))

To open an issue, please run: 'az feedback'

Thanks and regards,
Goutama

@goutam1206 Thanks for reaching out. It seems like you're running into an issue executing the az artifacts universal publish command. I couldn't help but notice that the version you currently have installed, 2.8.0 is pretty old, and could be worth upgrading to the latest version 2.30.0, unless you are bound by this specific version of Azure CLI.
Since the issue is around behavior of specific Azure CLI commands, it would be best addressed in the Azure/azure-cli repository. Please run the az feedback command from your local machine and add the generated template to the GitHub issue to add the complete error details along with your environment details.
We will now proceed to close this thread as this channel (the Azure CLI Docs repository) is only for driving improvements related to the Azure CLI documentation. However, if there are any further questions regarding the Azure CLI docs, please tag me in your reply and we will be happy to continue the conversation.

Thank you @BhargaviAnnadevara-MSFT. Would do the appropriate


Supporting null as valid values in validation

As per https://github.com/swagger-api/swagger-spec/issues/229, it seems like the current 2.0 spec doesn't have a way to let you specify whether you allow nulls as valid values. There are valid use cases either way but right now it seems that all null values will fail validation.
Any possibility to add support for this in swagger tools, with/without support from spec?

If the Swagger spec does not allow nulls, neither will swagger-tools as we use the JSON Schema from Swagger to do the first pass (structural) validation.  As for making swagger-tools work with nulls, I don't see how without having a custom JSON Schema and I don't think that's a good idea.  I also would rather be Swagger compliant if it were up to me.
Sorry about this but as soon as Swagger supports it, swagger-tools will.

Couldn't swagger-tools support a x-nullable property like other implementations did? (for OpenAPI 2 specification)

OpenAPI 3.0 adds support for nullable, which seems relevant to this issue.

Yes, but sadly swagger-tools doesn't support this version of the specs (yet ?) :(
In this SO answer it is advised to put an array as the value of the type field (type: ['string','null']) but I don't think that it works with swagger-tools at is not in the 2.0 specs.
This SO answer advises to use the vendor extension x-nullable (but that is not supported by swagger-tools).
But this nullable feature is asked by many people on Stackoverflow & the internet...


Fix nondeterministic compiler crash in debug builds

So as it turns out, the Swift compiler’s MergeModules phase (which SwiftPM uses in Debug builds) has a known issue with dependency cycles between separate source files — it rarely triggers, but when it does, swiftc hits an assertion complaining about a deserialization failure.
The v0.0.1 of Swift Collections happens to include such a cycle, but it only triggers the assertion on a small fraction of machines. I don’t yet know what exactly makes it nondeterministic, but it is reproducible by randomly reshuffling the source filenames of the OrderedSet implementation — a couple dozen randomizations will eventually lead to a state where it happens in every build.
The workaround is to put OrderedSet’s Sequence and RandomAccessCollection conformances in the same file. (OrderedSet uses the standard IndexingIterator, which requires a Collection conformance, while Collection itself refines Sequence — I believe this is the dependency cycle that is causing all this problem.)
Unfortunately, until we figure out what triggers the nondeterminism (or until the MergeModules action is fixed or replaced with something that actually, you know, works, this issue may keep randomly reoccurring. None of this makes much sense, but here we are. 😝
Resolves #7. (Verified by rebuilding the package with a couple thousand different file orderings.)
Checklist

[X] I've read the Contribution Guidelines
[X] My contributions are licensed under the Swift license.
[X] I've followed the coding style of the rest of the project.
[ ] I've added tests covering all new code paths my change adds to the project (if appropriate).
[ ] I've added benchmarks covering new functionality (if appropriate).
[X] I've verified that my change does not break any existing tests or introduce unexplained benchmark regressions.
[ ] I've updated the documentation if necessary.

@swift-ci test

@swift-ci test


Deprecation warnings for django 4.0

Hi @aleksihakli
I just found a deprecation warning for the upcoming django 4.0

site-packages\axes\signals.py:20: RemovedInDjango40Warning: The providing_args argument is deprecated. As it is purely documentational, it has no replacement. If you rely on this argument as documentation, you can move the text to a code comment or docstring.

Might be worth fixing right now?
Best regards
Ronny

I've put in a PR for this. #627


allow NONE color

this pr makes fzf gutter work for default background color NONE:
let g:fzf_colors = {
\   'gutter':  ['bg', 'Conceal']
\}

highlight Conceal ctermbg=NONE

before

after

Thanks, but this is not compatible with the current model where you can specify multiple highlight groups.
let g:fzf_colors = {
\   'gutter':  ['bg', 'Conceal', 'Normal', 'Comment']
\}

highlight Normal ctermbg=233
highlight Conceal ctermbg=NONE

['bg', 'Conceal', 'Normal', 'Comment'] translates to "Use the background color of the first highlight group that has a background color", and that is 233 of Normal. But with your patch, it will choose -1 for Conceal, ignoring the rest of the list.


Issue 1139: Patch fixing text2image's --only_extract_font_properties mode to print variant kerning spacing

https://code.google.com/p/tesseract-ocr/issues/detail?id=1139
Reported by<EMAIL_ADDRESS>Apr 8, 2014
The ok_count == 2 part of the test always failed, which prevented the kerning variations from ever being printed. As far as I can tell
it wasn't doing anything useful, but my C++ is (still) rusty, so
some light checking would be wise.
The patch also updates the function description to be in line with the current output.
Apr 24, 2014
#1 theraysmith
This could significantly change results after training.
Going to apply this change in a carefully controlled environment.
Apr 25, 2014
#2<EMAIL_ADDRESS>This patch did make the example in the comments (A+V) output as expected, but it doesn't seem to have affected the fact that no kerning variations are printed for any ancient greek digrams. I'm not sure why, whether it's the ancient greek font, or there is something still not right about the code.
(http://web.archive.org/web/20150510031850/https://code.google.com/p/tesseract-ocr/issues/detail?id=1139)

@theraysmith, should we close this PR?

I think so. Even the legacy engine didn't use that data much, the new engine doesn't use it at all.

@zdenop, please close this PR.


Chapters 1 - 5

Since I didn't start tracking my work in GH issues, this is one for archival purposes, just to be complete.

Done a long time ago...


net: TestCgoLookupIP fails on brillo

Reproducible on Qualcomm Dragonboard 410c, Brillo image built with BDK 7.5.4.
go_android_exec: adb shell mkdir -p /mnt/media_rw/tmp/net.test-55266
go_android_exec: adb push /var/folders/00/1b8h8000h01000cxqpysvccm005d21/T/go-build559449628/net/_test/net.test /mnt/media_rw/tmp/net.test-55266/net.test-55266-tmp
1358 KB/s (5223788 bytes in 3.754s)
go_android_exec: adb shell cp '/mnt/media_rw/tmp/net.test-55266/net.test-55266-tmp' '/mnt/media_rw/tmp/net.test-55266/net.test-55266'
go_android_exec: adb shell rm '/mnt/media_rw/tmp/net.test-55266/net.test-55266-tmp'
go_android_exec: adb shell export TMPDIR="/mnt/media_rw/tmp/net.test-55266"; export GOROOT="/mnt/media_rw/goroot/"; export GOPATH="/mnt/media_rw/gopath/"; cd "/mnt/media_rw/goroot/src/net"; '/mnt/media_rw/tmp/net.test-55266/net.test-55266' -test.short=true -test.timeout=6m0s; echo -n exitcode=$?
--- FAIL: TestCgoLookupIP (0.01s)
    cgo_unix_test.go:19: lookup localhost: No address associated with hostname
    cgo_unix_test.go:22: lookup localhost on [::1]:53: read udp [::1]:58014->[::1]:53: read: connection refused
FAIL

Holding the fix for this one, Brillo should include a minimal hosts file with localhost similar to Android.

Hey @rakyll shall we close this issue perhaps, as Brillo got refocused? Thanks.


upgrage to react-router-dom v6

Describe the bug
React Router Dom package upgrade.
this application is using version 5 of react-router-dom I would upgrade it to version 6.
Expected behaviour
React router dom v6
Screenshots
No response
Additional context
No response

Go ahead @aklite 🙌

hey ya @Kanika637 have a look 😊


Last item / image renders as first item instead of first image / item

Guidelines for posting a new issue
Is anyone here have experienced this issue i encountered recently. the desktop view-port dont have a problem like this. This issue only exists on mobile viewport.

this is the desktop:

it seems like the supposed last item or thumb of the slider is being displayed as first and the text were okay its in order but the thumbs in mobile doesnt. the desktop has the correct order of the image but in the mobile doesnt.. the only problem i had is the image. Im not sure why is this happening. I already removed my custom css but the issue still persists on mobile. its seems like there is some miss ordering in the mobile viewport or something... if you want to see the issue in action kindly visit the page i made https://vintahan.com/ compare it from desktop to mobile.
I think there is an issue with my responsive settings array. because when i removed the responsive settings array the issue is gone.
Please replicate your issue with this CodeSandBox and provide a link to it along with the issue description

closing this issue because its related to ssr https://github.com/akiran/react-slick/issues/1245


Add SlaTimer

just the code. Documentation will follow when we can agree on the code ;)

hvorfor er det jeg ikke kan få ctor overload til at fungere? jeg gider ikke skrive
 timer = new Timer(MonitorConfig.Build("Test"), () => stopwatch, "");

When would you use this monitor? Why choose this over processing the values, after they are stored somewhere?

I would use this monitor when I know I have explicit SLA's in my system and I need to identify when they happen. The SLA is pr. request and not an aggregated value that the existing Timer provide

Good point about the aggregation. Why do you want to store both the request below and above the SLA?

Good point about the aggregation. Why do you want to store both the request below and above the SLA?

Fair question. My thinking was a few scenarios

if it goes bad, how bad is it
if we are within SLA - how close are we to the threshold
I want some "historical facts" - I would guess often the SLA breach happens in periods, and I want to be able to understand how a "normal" day looks like in comparison to when it goes bad.

tests are failing. is it related to my code? i dont have access to see the error

I've restarted the build is has nothing to do with you

Just move the line to the SlaTimer type

I cannot get the compiler to accept that change.

Just move the line to the SlaTimer type

I cannot get the compiler to accept that change.

I've pushed the necessary change to your branch

@kbilsted yes it would make sense to rename it

Done

LGTM, please add some documentation and update the changelog, then it can be merged

forgot changelog


Add GHA sample code to subdirs

This change is

Moving to #333 for final reviews & discussions.


fix(OpenStack): Changes for AD hostname for the requirement

fix(OpenStack): Use only first part of fqdn for host name
if the host name contains "." character which is not supported for
windows OS as host name or the host name is an FQDN we use only
first part of domain name as host identifier for openstack
refactor: use builtin operator to merge dictionary
mhcfg section from provisioning-config is default
and could be extended by user provided mhcfg section
from metadata, thus using this order for | operator

Updated to use builtin is_windows_host(host)

Hello @pvoborni  please have a look on #FIXME comments in code.

Also the fact that there are 4 of them in a small commit tells that this PR should not be merged in this state.

The FIXME comments were meant to show why and what change is needed and NOT to point to unfinished work or whatever else you have understood. Lets just say this is a communication issue and we misunderstood each other probably because my comments are not well written.


Animatable ScrollThumb

Feature request
Thumb component's unmounting state of Scroll Area primitives to be animatable with stitches.
Overview
I tried to animate the opacity of Thumb component's unmount state with stitches but couldn't. So one of your maintainers suggested me to add an issue.

import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
const ScrollAreaScrollbar = styled(ScrollAreaPrimitive.Scrollbar, {});

const show = keyframes({ '0%': { opacity: 0 }, '100%': { opacity: 1 } });

const fade = keyframes({ '100%': { opacity: 1 }, '0%': { opacity: 0 } });

export const ScrollAreaThumb = styled(ScrollAreaPrimitive.Thumb, {
  flex: 1,
  borderRadius: 6,
  backgroundColor: '#aaa',
  position: 'relative',
  [`${ScrollAreaScrollbar}[data-state="visible"] &`]: {
    animation: `${show} .2s forwards linear`,
  },

  //I want something like this

  [`${ScrollAreaScrollbar}[data-state="hidden"] &`]: {
    animation: `${fade} .2s forwards linear`,
  },
});

Examples in other libraries
Checkout the thumb animation here. They are using perfect-scrollbar.
https://demos.creative-tim.com/black-dashboard-pro-react/?_ga=2.257667595.1079478053.1638938139-485400365.1601043380#/admin/dashboard

Who does this impact? Who is this for?
Anyone specially me who want a beautiful smooth scrollbar.

Additional context

@tawhidurrahman I know I requested this ticket because I forgot to add Presence to the thumb but, in case it helps your use-case, you can animate the whole scrollbar instead https://codesandbox.io/s/laughing-darwin-9sdcd?file=/src/App.js

That'll do for now. Thank you. But whenever you can please try to add this feature.


ESP32-S3 compatable?

Great library and I'm wondering if it is compatable with the ESP32-S3 hardware?
I am using the sketch here: https://www.youtube.com/watch?v=ExFxuvfCbAU&t=445s and it works with the ESP32 TTGO board that uses ble 4.2. It does not work on the newer ESP32-S3 hardware that has ble 5.0 but the library could be fine and be an issue on the wiresless ble Xiaomi modules. Not sure and I'm new to ble.
Thanks again!

Hello, yes this library is compatible with the s3.


nixos/xfce: fix after #369419 removed with lib

@Stunkymonkey @vcunat
https://github.com/NixOS/nixpkgs/pull/369419#issuecomment-2566653830
Things done

Built on platform(s)

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

[x] Tested, as applicable:

NixOS test(s) nixosTests.xfce and nixosTests.xfce-wayland.

[x] Fits CONTRIBUTING.md.

nixosTests.xfce evaluates fine for me now.  No idea whatever else has broken.


chore: remove cargo-machete package metadata

#2824  👈
main

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

Join @overlookmotel and the rest of your teammates on  Graphite


Not able to install extensions in Visual Studio Code (VSC)

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version:
OS Version:

Steps to Reproduce:

VSC version is latest (1.79.2)
My computer has Windows 10
I have installed multiple times VSC in last 2 days, and every time I have the following error when opening VSC:  "[error] Error scanning user extensions: Unexpected non-whitespace character after JSON at position 718"
No VSC extension is installed, since every time I try to install an VSC extension I am getting the error "[error] SyntaxError: Unexpected non-whitespace character after JSON at position 718"
I have tried various solutions found on Internet, without success:

added Code.exe to Windows 10 Firewall
checked that my computer does not have proxies in the System (and User) Environment Variables
used same Settings.json file as another computer  on which VSC extensions can be installed
uninstalled and installed VSC on another computer, on which VSC extensions can be installed

Thank you for assistance

It was closed by mistake

I suggest you use F1 > Open Extensions Folder
then open  extensions.json and look for problems at position 718.

Related on Stack Overflow: Not able to install extensions in Visual Studio Code (VSC)

Thank you gjsjohnmurray for suggestion.
I have removed the entire folder (indicated by  F1 > Open Extensions Folder), and this solved the problem.


Docsy template: feature-state shortcode broken

This is a Bug Report

Problem:
With the draft Docsy version of the Kubernetes website, documentation that uses a feature-state shortcode doesn't have the right user interface.
For example, visit https://kubernetes-hugo-staging.netlify.com/docs/concepts/policy/pod-security-policy/ and click on beta.
Here's what I see:

Proposed Solution:
Fix the draft Docsy templating

Thanks for the link to the draft docsy version. I had no idea!

Looks like this is sorted.
/close


Avoid empty task warning

Ansible complains that tasks/preflight.yml "is empty and had no tasks
to include". As it is indeed empty, we can safely remove the include
and empty file.

I agree that this shouldn't be an empty file. However I disagree with deleting it.
Closing in favor of #35


Update terminal_tutorial.md

Made link to fastai github repo clickable

That's not quite how markdown links work. I'll fix it directly - thanks for pointing it out!


gboard gestures in brackets

Describe the bug
There was a slight problem when after typing the first bracket I wanted to move the cursor to the right but couldn't, but if I moved to the left it worked normally.for curly brackets it is also normal to pass through the right and left sides, but when the brackets are inside a curly bracket block, the cursor can pass through the right and left brackets
To Reproduce
Steps to reproduce the behavior:
to reproduce it like a video I tap the editor anywhere then go back between the brackets then I slide with the space bar then it can go through normally
Expected behavior
can skip the right side brackets normally when shifting the cursor with space
complete the following information):

Device: [e.g. Vivo Y15 2019]
OS: [e.g. Funtouch OS 9]
Android Version [e.g. Android 11]
https://github.com/user-attachments/assets/d1f4d11b-9048-4422-9949-26eed4dca83b

Describe the bug There was a slight problem when after typing the first bracket I wanted to move the cursor to the right but couldn't, but if I moved to the left it worked normally.for curly brackets it is also normal to pass through the right and left sides, but when the brackets are inside a curly bracket block, the cursor can pass through the right and left brackets
To Reproduce Steps to reproduce the behavior: to reproduce it like a video I tap the editor anywhere then go back between the brackets then I slide with the space bar then it can go through normally
Expected behavior can skip the right side brackets normally when shifting the cursor with space
complete the following information):

Device: [e.g. Vivo Y15 2019]
OS: [e.g. Funtouch OS 9]
Android Version [e.g. Android 11]
https://github.com/user-attachments/assets/d1f4d11b-9048-4422-9949-26eed4dca83b

This seems to be an upstream issue with sora-editor and is likely tied to how the editor handles certain input events within bracketed blocks. this is not a very serious issue


need all the work completed for the sprint 2

please upload all the completed work to the sprint 2 file in the repository

I have completed the use case diagram will be confirmed by tonight in the meeting.

I have finished creating user stories. It has been published to the repository. I will define use cases by 1/03/2024 and then focus on creating class diagram.

need to do the some updates to the diagram, planning to upload by tonight.

upgrades are done and all have been uploaded to the GitHub.

around 99% of the work is done at the moment. keep it up guys!! @OldManny @Nahid-os @MingmaSherpa1 @mohebulh @sachindra2000


:bar_chart: migrate JSON data page for happiness report

Migrate JSON-based Data page to ETL-based Data page by adding metadata to its grapher step. I tried to match the original Data page as closely as possible, which means some metadata fields might not adhere to our guidelines. I moved FAQs to its GDoc and used official topic tags names.
@spoonerf  could you please check the Data Page for any issues? You are also encouraged to update metadata in the YAML file according to guidelines. Commented lines are metadata from the ETL dataset, you should delete them if they're not helpful. Add commits to this PR as you wish!
You can test it by running
ENV=.env.mojmir etl happiness/2023-03-20/happiness --grapher

and visiting the data page.
Parent issue https://github.com/owid/etl/issues/1666

As far as the metadata is concerned this one is good - apart from there is a missing image on the first FAQ, but will that be solved once it's on live?

I hope it should be. I'll check it once this gets deployed.


NW version dependent include list during deserialization

Problem
I have the use case where I want to implement a new feature in one of my open source projects.
Unfortunately I have to inherit a SAP standard clause for the feature. Unfortunately this class does only exist starting with NW 750.
My idea
Create a new interface which will be implemented in the class which inherits from the SAP class.
In the coding I will create the new class dynamically
DATA: interface_in_class TYP REF TO zif_static_interface.

TRY.
    CREATE OBJECT intf_type TYPE ('ZCL_NW_DEPENDENT').
  CATCH cx_sy_create_object_error.
ENDTRY.

Proposal
Obviously the class ZCL_NW_DEPENDENT cannot not be activated in systems with NW < 750.
I would propose to add a new file to the root of an abapGit repository called .abapGit_src_filters.json.
This file would have the following structure:
{
  "deserialize": [
    {
      "minimum_nw_version": 750,
      "files": [
        {
          "type": "CLAS",
          "name": "ZCL_NW_DEPENDENT"
        }
      ]
    }
  ]
}

As the name of the property include suggests, we could also add a property exclude to filter out specific source files, depending on the NW version - not quite sure if there is use case for that ;).
During deserialization abapGit would check the files against this mapping file. Basically it is just a a more fancy ignore file.

@stockbal can this issue be closed?

I think so.


make dataset.

Describe the bug
A clear and concise description of what the bug is.
Which branch you use
Only issues of the dev and nerfw branches will be considered currently!
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Screenshots
If applicable, add screenshots to help explain your problem.
hello, I see that you place the Silica on  the bed and move camera to capture image with iphone, I have a question that if fix the camera location and adjust the Silica pose to capture image, can this setting work correctly.

It's generally not recommended to move the object. It's better to fix the object and move the camera around. You can check general photogrammetry guidelines for taking good pictures.


Adds install info when installing through MSI

What does this PR do?

Creates install_info file when installing through the Windows MSI Installer
Removes it during uninstall.

Motivation

Allow users to track their installation methods
Allows Datadog to make stats on installation methods

Additional Notes

The intended behavior is:

At install time, add an entry to the registry with msiexec version.
When the agent starts,  if install_info doesn't exist and the registry value can be found, create the install_info file and populate it with the adequate information.
At uninstall time, remove the install_info file.

Creating the file at install time is not advisable so we have to resort to this workaround, similar to the one done for populating the datadog.yaml file.
We fail if msiexec version is not found in the registry so that we do not create the file for agents that have been upgraded.

Describe your test plan

(Using the msi installer) Install the Agent
Check the registry for msiexec_version
Check that the install_info file has been created with the appropriate information
Uninstall the Agent and check that the install_info file was removed
Create dummy install_info and ensure that it is kept the same after a new installation

Closing this since we are not going to get the msiexec version and focus only in the GUI, will open a new PR.


Foolproof prevention via strict tuples. Fixes #573

In 3.3.0 options were broken by messing up tuples and lists

Someone need to fix travis: "InterpreterNotFound: python3.4" and flake8 exited with 1

python34 is EOL. so no issue


⚠ Bofrost.de has degraded performance

In f0d8246, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1735 ms

Resolved: Bofrost.de performance has improved in 78c2ceb.


Take bool env var values into account instead of presence

Description
When the Airmail team modifies boolean environment variables, I don't know whether they actually remove them or update the values, so I'd be more comfortable shipping that PR before the next Airmail releases.
How was this PR tested?

Added unit test

Well spotted. I will fix those and merge the PR.


A question about manylinux compliance for Hugo binaries

@bep
Hi! Thanks for setting this tool up. I am trying to build a Python (pip-installable) binary distribution for Hugo at https://github.com/agriyakhetarpal/hugo-python-distributions/ that embeds binaries for the extended version of Hugo for various platforms and architectures, which will be a subset of Hugo's own platform set owing to the lack of tooling for platform tags for BSD-like platforms for Python.
I am using cibuildwheel to build and package these wheels in CI and plan to upload these to PyPI (edit: have done so for Hugo 0.121.1 and 0.121.2), so that one can run the command pip install python-hugo and run commands like hugo version and hugo server --disableFastRender just like they would normally. I know that Python is not the first choice for most packagers and users of Hugo, but with this distribution I wanted to learn if it's possible to embed Go binaries in Python packages, and I have succeeded so far :)
While building Linux amd64 wheels (and arm64/aarch64 wheels under QEMU emulation), I am able to obtain the correct specification for the wheel, but the ABI tags for the wheel are constrained due to manylinux policies (see below). I was wondering if some information can be shared w.r.t the version of GLIBC being used to build Hugo from source, e.g., GLIBC has backward compatibility but not forward compatibility, so I can explore using an older manylinux2014 base Docker image with an older GCC to compile, or I'm not sure if this is coming from the Go toolchain (I am using 1.21.5 since the minimum version was bumped to 1.20 recently).
This is what I get when I run auditwheel, a tool for Linux wheel repair for Python wheels, locally:
Output

python_hugo-0.120.4-cp310-cp310-linux_x86_64.whl is consistent with
the following platform tag: "linux_aarch64".

The wheel references external versioned symbols in these
system-provided shared libraries: libgcc_s.so.1 with versions
{'GCC_3.0'}, libresolv.so.2 with versions {'GLIBC_2.2.5'}, libdl.so.2
with versions {'GLIBC_2.2.5'}, libm.so.6 with versions
{'GLIBC_2.2.5'}, libc.so.6 with versions {'GLIBC_2.4', 'GLIBC_2.2.5',
'GLIBC_2.14'}, libpthread.so.0 with versions {'GLIBC_2.2.5',
'GLIBC_2.3.2'}, libstdc++.so.6 with versions {'CXXABI_1.3',
'GLIBCXX_3.4.18', 'CXXABI_1.3.5', 'GLIBCXX_3.4.11', 'GLIBCXX_3.4.9',
'GLIBCXX_3.4'}

This constrains the platform tag to "linux_aarch64". In order to
achieve a more compatible tag, you would need to recompile a new wheel
from source on a system with earlier versions of these libraries, such
as a recent manylinux image.

(This is coming from the Hugo unix executable file in the wheel).
On a macOS arm64 machine, this is what I get from otool when I run it on the executable:
Output

otool -L hugo-0.120.4-darwin-arm64
hugo-0.120.4-darwin-arm64:
        /usr/lib/libresolv.9.dylib (compatibility version 1.0.0, current version 1.0.0)
        /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 2048.1.255)
        /System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 61040.1.3)
        /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 1600.151.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1336.0.0)

which doesn't help a lot (note that I am mangling the executable name to conform to the platform and architecture rather than lipo-ing it). I tried on a Docker image and received these symbols:
Output from ldd

```
ldd hugo-0.120.4-linux-arm64
        linux-vdso.so.1 (0x0000ffff84bc2000)
        libresolv.so.2 => /lib/aarch64-linux-gnu/libresolv.so.2 (0x0000ffff84b6b000)
        libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffff84b3a000)
        libstdc++.so.6 => /usr/lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffff84962000)
        libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffff848b7000)
        libdl.so.2 => /lib/aarch64-linux-gnu/libdl.so.2 (0x0000ffff848a3000)
        libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffff8487f000)
        libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffff8470b000)
        /lib/ld-linux-aarch64.so.1 (0x0000ffff84b92000)
```

I can manually modify the platform tag in the filename(s) to adhere to such compliance, given that the Hugo binary and its commands are working without any issues, but there are risks to this approach and make wheels non-reproducible and non-compliant on older Linux platforms, due to issues such as old system-provided libraries, missing or unresolved symbols, and the like. If the newer versions of the Hugo binaries are supposed to work just on modern systems, then there shouldn't be a problem with manually overwriting these tags – but I thought I should ask around first. Another option I am considering is to use a very old Docker image that comes with a very old GLIBC for this purpose, but building Hugo from source might break in that case. I'm not as familiar with Golang and building packages with it, which is diametrically on the other end in comparison to my experience with Python tooling, and therefore this is a new area for me – I would appreciate a response :))

(P.S. This is a problem on just the Linux wheels I have been trying to compile. I have packaging infrastructure for Windows amd64 wheels and macOS arm64 + amd64 wheels set up—with universal2 wheels too for the latter—I tested the Hugo binary for 0.120.4 manually and it works on Intel MacBooks as old as those released in 2015!)

I hope to have posted this in the right forum for release-related discussion. Lest it is to be flagged as a discussion elsewhere that is more appropriate or visible, please feel free to close this here and direct me to a different location for posting this query. Thanks!

@agriyakhetarpal sorry for the late reply, I have to many repositories on my watch list.
What you ask about is a little bit technical even from me. But if I understand the core of your problem is GLIBC version compatibility.
I have struggled with this myself, with build hosts (Vercel, Netlify) that has relatively old Linux build setups.
There are some insights in this thread: https://github.com/gohugoio/hugo/issues/11414#issuecomment-1721455798
Which lead me to maintain my own Docker image for the latest Go version:
https://github.com/bep/dockerfiles/blob/master/ci-go/Dockerfile
Which uses the buster-scm -- which is compatible with Amazon Linux 2.

Hello @bep, I thank you for your response and I do not mind the delay in receiving it. Thanks for the thread you linked as well, could not have found it myself with much ease.
I think Vercel and Netlify have Linux builds that despite being older are still relatively newer than what is defined in the manylinux2014 specification, so a solution to my issue with the specification's compliance would be to rather not go forward with it and choose something newer like manylinux_2_28 for my wheel tags – but this is something I will consider doing in the longer term, since the current implementation does not seem to have issues and I don't think anyone would be running Hugo on a Linux distribution where one would have a too-old GLIBC (Amazon Linux is more recent than manylinux2014 IIUC). Unfortunately, I cannot use the Dockerfile you provided, since it won't contain the versions of Python I use for building the wheels with cibuildwheel. I do install Golang with a small helper bash script and keep its version in sync with the version upstream Hugo is using (the CHANGELOG and the release notes help with this, thanks for keeping them apposite!).
In the meantime before your response and my initial opening of this issue, I was able to retrieve the hugo name on PyPI, add more reliable build procedures and various improvements to the package itself, ensure Hugo's Apache license compliance for all build artifacts (both source and binary distributions) – and I published these pip-installable wheels for Hugo 0.121.2 and the recent Hugo 0.122.0.
I am open to the inclusion of this PyPI package hugo as another suitable and official distribution channel for Hugo via pip besides other package managers such as Chocolatey and Homebrew and also keep maintaining it after every release – I am happy to liaise with you and other Hugo developers on this regard. If this is a possibility that entices you, please let me know: I will be willing to improve the packaging infrastructure, the documentation I wrote for it, the executable runner, and other repository areas of interest as per your requirements. This will not only enhance the visibility of the package I wrote but also provide Hugo users with an easy-to-install, isolated build of it through popular use cases in Python tooling.

Update: I have started to use the manylinux_2_28 Docker images that correspond to GLIBC version 2.28 for fixing the Hugo wheels, since that is what the Python community is going to migrate to anyway after June 2024 when manylinux_2014/manylinux_2_17 will get deprecated and reach EOL status.
Doing so revealed that an additional manylinux_2_24 wheel tag is applicable, i.e., the Hugo binaries have been linked GLIBC 2.24 or earlier on the latest Go version. This has completely fixed the issue at hand here, and I can now remove any workarounds that I was previously using – while also ensuring proper, robust compliance with the most recent (and older) Linux distributions. In the meantime, I also vastly improved the packaging infrastructure to establish a cleaner install via pip and pipx through both source and binaries. Thank you so much for the help you offered here, @bep! I am more than happy to keep publishing and maintaining these wheels and I am still open to the inclusion of them as an official distribution channel shall you be open to it and if you and the other Hugo developers would like that, as discussed in the comment above.
Please feel free to close this issue, since my initial query has been answered and resolved.


Status of Hosting category is always 'Create' when using CI/CD.

Describe the bug
Hosting category always have 'Create' status when using CI/CD configuration, no matter how many times you execute amplify push.
Additionally, ./amplify/backend/hosting directory only contains an 'amplifyhosting' empty directory.
Weirdly, Amplify CLI uses that directory to determine if hosting has been configured from CLI (If you delete the 'hosting' directory and execute amplify hosting update it will tell you that hosting has not been configured from CLI but from the Amplify console).
Amplify CLI Version
4.24.0
To Reproduce
amplify init
amplify hosting add
> Hosting with Amplify Console (Managed hosting with custom domains, Continuous deployment)
amplify push (at least two times)
Expected behavior
Hosting category to have 'No Change' status on successive amplify status or amplify push executions.
Screenshots

Desktop (please complete the following information):

OS: macOS 10.15.5
Node Version: 14.4.0

Additional context
None.

Additional note: Executing amplify pull when there is no changes other than Hosting will make the process hang on Fetching updates to backend environment: dev from the cloud.

This issue persists in v4.25. It disappeared for some time, after deleting and re-initializing my Amplify App, but now it has appeared again after adding a secondo backend environment from CLI. I also disconnected a branch and connected it again from the Amplify console, but I'am not sure of exactly when the issue appeared again.

Hi,
same here. For me it appears all the time.

+1 same as above. After too much time trying to resolve this, it must be a bug.
For now, will just treat 'create' on category hosting as meaning there is nothing to do.

Looks like the issue is that lastPushTimeStamp doesn't get set for category "hosting" with option "Hosting with Amplify Console" (i.e. in amplify/backend/amplify-meta.json).
This is presumably because there is nothing to be pushed via the CLI as this hosting option is managed directly in the Amplify Console web interface. Since there is no lastPushTimeStamp it is always considered as having never been pushed, therefore needing to be 'created'.
Probably need some special handling surrounding resources which require no 'push' such as in this case. While the lastPushTimeStamp could simply be set, this is a bit misleading where no change has been pushed. Probably better to track the plugin has no configuration required and provide the status accordingly (i.e. 'Not Applicable' or simply 'No Change').
Interestingly though, amplify/#current-cloud-backend/amplify-meta.json does contain a lastPushTimeStamp for hosting, and so there is inconsistency between the local and cloud configuration due to this.

I'm also seeing this issue. The empty amplify/backend/hosting/amplifyhosting is particularly problematic because it doesn't get recreated on fresh git clones. My temporary fix is to make it a file, since the check is an fs.exists.
rm -rf amplify/backend/hosting/amplifyhosting
touch amplify/backend/hosting/amplifyhosting

+1 same situation for me.
sometimes I resolved to do like
$ amplify pull --appId {appId} --envName {envName}

For more information on AWS Profiles, see:
https://docs.aws.amazon.com/cli/latest/userguide/cli-multiple-profiles.html

? Do you want to use an AWS profile? Yes
? Please choose the profile you want to use {awsprofile}
Amplify AppID found: {appId}. Amplify App name is:{AmplifyAppName}
Backend environment prod found in Amplify Console app: {AmplifyAppName}
? Choose your default editor: Visual Studio Code
? Choose the type of app that you're building javascript
Please tell us about your project
? What javascript framework are you using react
? Source Directory Path:  src
? Distribution Directory Path: build
? Build Command:  npm run-script build
? Start Command: npm run-script start

? Do you plan on modifying this backend? Yes  # <-- look at this carefully. choose "Yes"

Successfully pulled backend environment {envName} from the cloud.
Run 'amplify pull' to sync upstream changes.

$ amplify status

Current Environment: {envName}

| Category | Resource name                        | Operation | Provider plugin   |
| -------- | ------------------------------------ | --------- | ----------------- |
| Hosting  | amplifyhosting                       | Create    |                   |
| Auth     | kendrabuttonhosting___               | No Change | awscloudformation |
| Function | kendrabuttonhosting____PreSignup     | No Change | awscloudformation |

after doing this,
$ amplify pull

Pre-pull status:

Current Environment: prod

| Category | Resource name                        | Operation | Provider plugin   |
| -------- | ------------------------------------ | --------- | ----------------- |
| Hosting  | amplifyhosting                       | Create    |                   |
| Auth     | kendrabuttonhosting___               | No Change | awscloudformation |
| Function | kendrabuttonhosting____PreSignup     | No Change | awscloudformation |

Local changes detected.
Pulling changes from the cloud will override your local changes.
? Are you sure you would like to continue? Yes
✔ Successfully pulled backend environment prod from the cloud.

Post-pull status:

Current Environment: {envName}

| Category | Resource name                        | Operation | Provider plugin   |
| -------- | ------------------------------------ | --------- | ----------------- |
| Hosting  | amplifyhosting                       | No Change |                   |
| Auth     | kendrabuttonhosting___               | No Change | awscloudformation |
| Function | kendrabuttonhosting____PreSignup     | No Change | awscloudformation |

but sometimes no luck.
Which point can I check this is "Create" Operation state or not? I have no clue!

If you went through these steps:
amplify add hosting -> Amplify Console -> Continuous deployment (Git-based deployments)
The CLI will open up the Amplify Console webpage, and you will connect to your Github project there, once that's done, come back to your  local dev terminal, and hit enter.
I'm not able to reproduce the issue with the latest CLI version though. If you somehow get into this situation, you can run amplify pull --restore to get synchronized and consistent amplify status report in your local environment.


Impossible get subdivisions

From GeoIP2-City.mmdb I need subdivisions. I use next line
{subdivisions, [<<"subdivisions">>, <<"names">>, <<"en">>], <<>>},
but subdivisions is list of proplist
[{<<"subdivisions">>, [[{<<"names">>, [{<<"en">>, <<"....">>}]}]]}]
so i get <<>>

I'll have a look in a couple of days

hi,
please check the newest version 1.1.1, it now allows deep schema for proplist data. See the test_deepchema test as an example. Please let me know if it works for you.
Side note: it was possible to get subdivisions prior to this change with just {subdivisions, [<<"subdivisions">>], <<>>} and parse the deep list in the calling code.

Thanks.
I have another question.
Are project support DAT format?

Hi,
No, it does not support legacy format. As fas as I know there's no documentation for the old format. So MMDB only.


CFCR(Cloud foundry container runtime) auto scaling(horizontal and vertical) by BOSH command on cluster level

Hi everyone,
We are using CFCR(Cloud foundry container runtime), so can we perform auto scaling(horizontal and vertical) by BOSH command on cluster level(Based on some metrics) not on application level. Application level auto scaling can be achieved by kubectl command itself or kubernetes dashboard.

@mukeshrajmca bosh core itself is not planning to add auto scaling functionality, however, one can build automation on top of existing bosh apis to do horizontal and vertical autoscaling. our hope is that an open source implementation emerges based on agreed upon conventions. if you are interested describing your specific use case, please head over here: https://github.com/cloudfoundry/bosh-notes/issues/32

Closing as a duplicate of https://github.com/cloudfoundry/bosh/issues/1652. Please redirect any further comments to that issue.
Best,
@jfmyers9 && @jaresty, CF BOSH


Render Word documents as images

Ref #47, adding functionality to render Word documents as images. This makes the functionality for Word documents on par with the functionality for PDF documents, where images of each page are also generated.

@dotnet-policy-service agree company="Cillco"

can you add some docs

I certainly can, I added some PNG exports from Word files as well as a short description of the verification of Word files to the Readme.md file. Or were you thinking of something more substantial?


GSLUX-639: Export style panel

JIRA issue
https://jira.camptocamp.com/browse/GSLUX-639
Description
PR exports the style panel for integration in v3 and removes a condition in v4 app that does not seem necessary anymore.

Thx for the work! I found a minor bug (tested on github pages): I can open style editor panel and catalog panel at the same time (clickin on the theme icon in the header), but I don't think this is related to your work.

Good catch, I've added a commit to fix this issue :-)

And one for fixing a similar issue in v3 (where the style panel did not open anymore once the theme grid had been opened).


Injecting the service into routes

LGTM, waiving test here because I haven't tested dependency injection yet.


[Bug]: CamGear.read() blocks unnecessarily.

Description
When THREADED_QUEUE_MODE is enabled CamGear.read() will block for an excessive duration (default is 5 min) when attempting to read past the end of a stream.
Issue Checklist

[x] I have searched open or closed issues for my problem and found nothing related or helpful.
[X] I have read the Documentation and found nothing related to my problem.
[X] I've read the Issue Guidelines and wholeheartedly agree.

Expected behaviour
CamGear.read() will return None immediately when the end of the stream has been reached.
Actual behaviour
CamGear.read() will hang for THREAD_TIMEOUT before returning None
Steps to reproduce

Read a video file with THREADED_QUEUE_MODE enabled (it is enabled by default)
Call CamGear.read() as quickly as possible

Terminal log output
No response
Python Code
No response
VidGear Version
0.2.6
Python version
3.8.10
OpenCV version
4.6.0
Operating System version
Windows 11
Any other Relevant Information?
CamGear.read() will always hang if it is called again after the last frame has been returned because self.__queue.get() blocks until the queue is not empty, or until self.__thread_timeout
https://github.com/abhiTronix/vidgear/blob/6e4eaf6e8f29f4145afabf96d3fc30c8b81f69fc/vidgear/gears/camgear.py#L515-L516
Checking if the queue is empty and the stream has terminated partially solves the issue.
        while self.__threaded_queue_mode:
            if self.__queue.empty() and self.__terminate.is_set():
                return None
            return self.__queue.get(timeout=self.__thread_timeout)

However, this now becomes a race condition. Take the scenario where CamGear.read() is called while the queue is empty and there are no frames left in the stream, but the producers have not yet terminated. The consumer will continue to block after the producers terminate because it has already passed the guard-clause and is now blocking at self.__queue.get().
The self.__queue.get() will need to be re-implemented inside of CamGear.read() so the guard-clause can be moved inside the blocking-loop of Queue.get().

When THREADED_QUEUE_MODE is enabled CamGear.read() will block for an excessive duration (default is 5 min) when attempting to read past the end of a stream.
@linkoid That's a typo in comments, there's no 5mins timeout. It blocks thread when your source is not responding. Check you source not Camgear, if it is blocking set THREAD_TIMEOUT value in its optional parameter.

This script is able to reliably reproduce the issue on my device. The videos files I ran it with are commonly used in research. If it does not block on your device as-is, increasing progress_interval will increase the chances of it blocking.
If the consumer makes read() calls fast enough, the thread is blocked. If print("Producing ending") is added to the end of CamGear.__update() it can be seen that the producer closes the stream, but the consumer continues to be blocked.
# import required libraries
import cv2
from vidgear.gears import CamGear
from tqdm import tqdm, trange

def test(source, progress_interval=0.1):
    """
    Test for blocking race-condition

    Parameters:
        source (based on input): The video source that is passed to CamGear for the test.
        progress_interval (float): The minimum time that must pass before an I/O operation can be performed by the progress bar.

    Schrödinger's Cat
        Performing I/O ops each iteration slows down the main thread too much
        for a race-condition to block, so `progress_interval` can't be decreased too much.
    """
    tqdm.write(f"Running test({repr(source)})")

    # open any valid video stream(for e.g `myvideo.avi` file)
    camgear = CamGear(source=source).start()
    length = int(camgear.stream.get(cv2.CAP_PROP_FRAME_COUNT))

    # create the progress bar
    t = trange(length+1, mininterval=progress_interval, miniters=1)

    # loop over
    while True:

        # read frames from stream
        frame = camgear.read()
        t.update()

        # check for frame if Nonetype
        if frame is None:
            tqdm.write("Reached end-of-stream")
            break

    # safely close video stream
    camgear.stop()
    t.close()

    tqdm.write(f"Completed test({repr(source)})")

if __name__ == '__main__':
    test("videos/news.mp4")
    test("videos/ice.mp4")
    test("videos/big_buck_bunny_scene.mp4")
    tqdm.write("Finished!")

@linkoid Yes blocking there is on purpose. If input is slower and output is faster, then frame skipping will happen, the consumer will consume all frames from queue immediately and thread will exit since it assumes input is already over, and you will get fewer frames than original. This problem is already discussed in issue https://github.com/abhiTronix/vidgear/issues/20, Since input frames from video is blocked by IO, as you cannot decode faster than what pace underline API is decoding(OpenCV VideoCapture in our case), you can only just access frame faster when it is available, that's what CamGear is doing currently.

Anyways, I'm depreciating CamGear soon in favor of more accurate, fast and agile FFmpeg based decoding library called deffcode in issue #148, So fixing bugs on depreciated CamGear API is not feasible anymore.

@linkoid OK I checked this and might have resolved this in the latest commit. Can you test your scripts again?

Successfully resolved and merged in commit https://github.com/abhiTronix/vidgear/commit/9f17025abd0bd8fd4ba840fab70af463ae63bf68


pyproject.toml, Hatch, and MIT license

This PR would:

Switch from setup.py to pyproject.toml, allowing for a cleaner project structure by combining a lot of tool configurations.
Switch build system from setuptools to hatch, removing developer dependencies on bumpversion and twine and moving all scripts from the makefile into pyproject.toml with isolated environments.
Switch to MIT license.

Codecov Report

Merging #64 (5a270ca) into main (6dc253d) will increase coverage by 3.77%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main      #64      +/-   ##
==========================================
+ Coverage   93.75%   97.52%   +3.77%
==========================================
  Files          12       20       +8
  Lines         512     1050     +538
  Branches       53        0      -53
==========================================
+ Hits          480     1024     +544
- Misses         23       26       +3
+ Partials        9        0       -9

see 10 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Does this actually work?

I was pretty excited to see I'd be able to make merge requests with this but the only thing I get is a sidebar which does nothing? Does any of this work yet, or are you still actively developing it?
Looking through the code it looks like nothing is really implemented yet. That's a shame :( Probably shouldn't be published in atom at the moment since none of the features are implemented yet.

@evoactivity now i don't have a time to develop it.
does you want to be a contributor?

@LestaD I am interested to contribute developping this plugin.

@mikaoelitiana you are contributor now

@LestaD great, thanks, let me check the plugin code and status.


Add a tutorial / demo for using GAN for image parametrization

I'm back a year later. I think some has suggested me to provide a tutorial of how to use the GAN parameterization and here is one.
I tried to create a notebook in the same format as the others and added a thumbnail for readme.
If you need, I could provide you the source Illustrator file for the thumbnail for you to unify the format.
BTW you may want to unify the image source at the end of the day, currently, some are hosted in my repo.

Kindly reminding you of this pull request! @greentfrapp
If you like you could review the new tutorial and merge with your repo

Hi @greentfrapp kindly reminding you of this pull request!

Hey @Animadversio thanks so much for your contribution! (and kudos to your perseverance!) Loving this and merging it to dev right now (I'll make a change to the image source in the README before merging to master)

Also just wanted to say sorry for the super delayed reply, I have no excuses, it was just pure procrastination :(


Dumping Il2cpp with Game Guardian

Sir As you mention that we can use GG. Then how to dump with that?
Because I am using GG from a long time making scripts for free fire using il2cpp offsets with it.
So can you please mention the steps of getting il2cpp.so dump with GG?
PLEASE

Why you closer?


Feat: Number Search

IMPORTANT: All PRs must be linked to an issue (except for extremely trivial and straightforward changes).
Fixes #435
Description
Clear and concise code change description.
Add support for Number search.
Alternative(s) considered
Have you considered any alternatives? And if so, why have you chosen the approach in this PR?
Followed a similar approach to strings
Type
Choose one: Feature
Checklist

[x] I have read and acknowledged the Code of conduct
[x] I have read How to Contribute
[x] I have read the Developer's guide
[x] I have signed the Google Individual CLA, or I am covered by my company's Corporate CLA
[ ] I have discussed my proposed solution with code owners in the linked issue(s) and we have agreed upon the general approach
[x] I have run ./gradlew spotlessApply and ./gradlew spotlessCheck to check my code follows the style guide of this project
[x] I have run ./gradlew check and ./gradlew connectedCheck to test my changes locally
[x] I have built and run the reference app(s) to verify my change fixes the issue and/or does not break the reference app(s)

What should we set as the threshold for the Approximate search prefix?

Will add tests to show that the SQL query works

Will finish this by today.

Pr ready for review

I'll make changes to the tests so that they are similar to the string search ones.

@kevinmost can you please leave a review because this is related to your work on indexing numbers. Thanks!

@jingtang10 LGTM, not sure if you wanted to approve before this lands.

Ran the integration tests they pass locally, can't figure out why they fail in the CI

I think something may be wrong with CI (again). I'm seeing CI fail on one of my PRs even though I don't think it should.

I checked the test results in the artifacts and the test in the reference app seems to be failing.

@epicadk , it seems there are some changes requested on this PR. Is there an ETA by when you think this can be closed?

@epicadk , it seems there are some changes requested on this PR. Is there an ETA by when you think this can be closed?

Yup working on it. Will be done by the end of the day.

 I hope that's okay?

@Tarun-Bhardwaj done with this, can focus on adding Date Search now

I checked the test results in the artifacts and the test in the reference app seems to be failing. Temporarily deleted the test to check if that is indeed the issue. cc @jingtang10

This is still failing removing it for now, we can add it back later. (It's just an example anyways.)


[Bug]: SpaceBetween and Each child in a list should have a unique "key" prop.

Browser
Chrome
Package version
v3.0.108
React version
17.0.2
Description
I know that SpaceBetween component can not be used with non-element children, per documentation:

This component only supports element children (components or HTML elements). Primitive values will cause React's missing key warning.  If you want to put a string or a number as a direct child, wrap it into a .

However, expressions that evaluate to false are not shown by React in any way, yet they result in the following error:
Warning: Each child in a list should have a unique "key" prop.

Check the render method of `InternalSpaceBetween`. See https://reactjs.org/link/warning-keys for more information.
    at div
    at InternalSpaceBetween (https://8z2crx.csb.app/node_modules/@cloudscape-design/components/space-between/internal.js:16:15)
    at SpaceBetween (https://8z2crx.csb.app/node_modules/@cloudscape-design/components/space-between/index.js:14:15)
    at App (https://8z2crx.csb.app/src/App.js:28:41)

To avoid this issue, one has to change expression such as:
{showSomeAlert && (
  <Alert>
    Some message.
  </Alert>
)}

into:
{showSomeAlert ? (
  <Alert>
    Some message.
  </Alert>
): null}

which is slightly less concise. Could SpaceBetween component filter out falsey children to avoid this issue?
Source code
See CodeSandbox below.
Reproduction

Go to https://codesandbox.io/s/vigilant-lake-8z2crx?file=/src/App.js
Remove character from the input and see missing key warning.

Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate problems

Hello Krzysztof,
Thanks for reporting your finding!
I am afraid that filtering out the falsy values might be dangerous at this point because there can be customers relying on that. It might be less relevant for an empty string but definitely can happen for a number 0. However, I will discuss with the team if we can reflect this case on our website.
Btw, there is one more way to avoid the issue - you can ensure the left-hand side of the && expression is a boolean:
{!!showSomeAlert && (
  <Alert>
    Some message.
  </Alert>
)}

Closing due to inactivity. Feel free to reopen if there are still some open questions


[flutter-web] In the newest flutter, it will cause flutter to show nothing

Flutter 3.7.6 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 12cb4eb7a0 (3 days ago) • 2023-03-01 10:29:26 -0800
Engine • revision ada363ee93
Tools • Dart 2.19.3 • DevTools 2.20.1

await ScreenUtil.ensureScreenSize(); will block the main process on web client.

I'm not sure if this is the cause of the plugin,

Did you tried to create a web client project, and run the code to see if it
really blocks it?
import 'package:get/get.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();

  () async {
    await ScreenUtil.ensureScreenSize();

    runApp(GetMaterialApp(
      initialRoute: RoutesMap.login,
      getPages: [
        GetPage(
            name: RoutesMap.location_management,
            page: () => const LocationManagementHomePage()),
        GetPage(name: RoutesMap.login, page: () => const LoginPage()),
      ],
      theme: ThemeData(
        primarySwatch: Colors.blue,
        ),
      ),
    ));
  }();
}

On Fri, Mar 10, 2023 at 2:23 PM LiZhuoyuan @.***> wrote:

I'm not sure if this is the cause of the plugin,
—
Reply to this email directly, view it on GitHub
https://github.com/OpenFlutter/flutter_screenutil/issues/462#issuecomment-1463333444,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEDE7LJXVROYY6K55CFL6ADW3LCHLANCNFSM6AAAAAAVPOU7K4
.
You are receiving this because you authored the thread.Message ID:
@.***>

https://docs.flutter.dev/release/breaking-changes/window-singleton

any update?

did anyone find a solution? I'm stuck. I am using GoRoute, and need to check the size for web & mobile before passing routes in Material.route

Can you provide a minimal example?

This is still an issue. The main function just stops here on web


Fix color legends allowed for boolean attributes

Related to https://github.com/CartoDB/support/issues/1647
Acceptance

Create a map with a layer having a boolean attribute (see sample dataset of Chicago at previous issue, with  a field called arrest)
Give the features a color using Style by value and select that attribute.
See available Legends.
Expected result: there are three available options, None, Category and Custom Legend. Notice how Choropleth is no longer available.
Check Category legend is working fine, like this...

Alter the Style of the layer (eg. change color for arrest == true) and see how the legend updates.

Legend is not being updated correctly after changing the styles in the layer. Working on it

Hi @ramiroaznar this is ready for acceptance at staging, with user: bool-legend (Chicago dataset has already been imported). See steps above 🔝

LGTM!


Could you please tell us more details

could you update readme.md to tell us the main difference between the pytorch detectron and your repo. will a tf2 edition be released?

Detectron2 is faster and has better performance. I am trying to transfer this project to detectron2, but I do not have the plan to transfer it to tf2.


Basic functions of rotation implementation

See code example in #166

this issue refers to something completely different

The goal here is to keep track of the orientation of bonds and molecules throughout the simulation; and eventually quantify whether/how they might rotate.
The first thing to do is find and define what atoms are "bonded" with each other based on distances. Under the assumption that such bonds do not break during the simulation (non-reactive MD), this can be done for a single frame. Eventually, if we want to allow for reactive-MD then we need to do this every frame, but that is not priority. Our current working code works for tetrahedral molecules (e.g. methane CH4 , or a thiophosphate molecular anion, PS4^3-). We input the 'central' and 'satellite' atom types and the code finds the nearest satellite neighbors to each central atom with some arbitrary cutoff. This could be generalized by either inputting a cutoff or guessing based on a library of atomic sizes for each atom.
Then, for each bond, the orientation is calculated by considering the vector difference between satelite and central atom, for each frame. this is expressed in spherical coordinates. this is the reduced data for the following analysis/visualisation.
The orientational probability density can be calculated analogously to the spatial probability density, by dividing spherical coordinates into a grid. This can be visualized as a map (used cartopy for this). This can be transformed to a free energy in the same way as the spatial probability density as well (and eventually pathways found and barriers calculated)
The auto-correlation function (or self-correlation function) quantifies the degree and dynamics of correlation between the original orientation of a bond and its orientation in time t. The dot product between the original and current orientation is calculated for each bond, for each frame and then typically averaged for each bond in the system. This function start at 1 by definition and decay. In a system where no rotation takes place it will plateau at some value >0.9 indicative of modest local libration. In a system where bonds reorient, this will typically decay to 0. In the latter case we can fit an exponential decay and extract a characteristic (de)correlation time which quantifies the rotational/reorientational speed and is a main observable for the study of such systems. In order to quantify the error in this analysis, we can apply a similar approach to the error analysis of translational diffusivity from MSD, i.e. split the self-corellation function, calculate multiple correlation times and derive a standard deviation.
I will follow up with some rough code as examples - partly in matlab and partly python-, as soon as I get to clean it up, too self-consious to share it as it is rn

Thanks for the extensive explanation, that helps a lot! I indeed mixed up the two themes.

please do let me know if any of the above is not clear.
it would be nice to have the first part of the satelllite_orb_matcher[...].m script integrated in gemdat rather quickly, since it's the basis for alot of things.


Terminal text selection is invisible

Minuit doesn't distinguish highlighted text in the terminal, which is a huge usability issue. I'd been spending ages trying to figure out which of my extensions were disabling mouse selection in the terminal – after a while of disabling and iteratively re-enabling I discovered it was Minuit theme which simply wasn't reflecting the selection visually! 😅
Unrelated to issue: I am such a massive fan of this theme – I've spent years experimenting with low-contrast light-on-dark themes that don't introduce such unnecessarily noisily distinctions between different language token types. I'd had some OK experience with even lower-distinction themes but recently I've been using a lot of nested language code (SQL/CSS-in-JS via es6-string-html and others, and Minuits at-a-glance colour differentiation between those languages is invaluable. Love the work, thank you!

Hey, thanks a lot for the "Unrelated to issue" part 😉 I'm glad you like the theme! Thanks for fixing this issue as well and sorry it caused you so much trouble haha I never realized this since I don't use VSCode built-in terminal. I just merged your PR and I'll publish the patched version tonight. Have a good one!


TEST-#7049: Add some sanity tests with pyarrow-backed pandas dataframes

What do these changes do?

[x] first commit message and PR title follow format outlined here

NOTE:  If you edit the PR title to match this format, you need to add another commit (even if it's empty) or amend your last commit for the CI job that checks the PR title to pick up the new PR title.

[ ] passes flake8 modin/ asv_bench/benchmarks scripts/doc_checker.py
[ ] passes black --check modin/ asv_bench/benchmarks scripts/doc_checker.py
[ ] signed commit with git commit -s
[x] Resolves #7049
[ ] tests added and passing
[ ] module layout described at docs/development/architecture.rst is up-to-date

Closed in favour of https://github.com/modin-project/modin/pull/7199


Inconsistent behavior when I modify a test

Testing #114932
When I modify this failing test, to make it pass, it seems to re-run the test,  but when I modify it to make it fail in a different way than before, then it displays the run icon.

That's because the sample extension is using the test name as a cache for the state. THere's an existing 2 + 2 = 4 test so it's marked as passed, but no 2 + 2 = 5 test so it's the 'unset' state.
This is an artifact of how the sample works, and I will be changing how states are dealt with next month, so closing this 'as designed' for now

That's because the sample extension is using the test name as a cache for the state. THere's an existing 2 + 2 = 4 test so it's marked as passed, but no 2 + 2 = 5 test so it's the 'unset' state.
This is an artifact of how the sample works, and I will be changing how states are dealt with next month, so closing this 'as designed' for now

https://github.com/microsoft/vscode/issues/115101

https://github.com/microsoft/vscode/issues/115101


[WIP] Initial offset management implementation.

Attempt at fixing #2.  This adds the following methods to Client:

CommitOffset(group, topic, partition, offset, metadata)
FetchOffset(group, topic, partition)

Notes

I still need to think about where to retry what.
We probably want to cache the offset coordinators in the client struct so we don't always do 2 requests.
I cannot get the metadata field to work. Not sure why, but it just always returns an empty string.
I would like to be able to submit multiple offsets in a single request. Not sure whether we should have an API that supports that, or implement batching internally.
This won't work for Kafka 0.8.1 obviously. We probably want to skip the tests based on what Kafka version we are running against.
You can also specify a timestamp when committing, but this API doesn't expose it.

@Shopify/kafka

The name of the topic is __consumer_offsets, and by default creates 50 partitions with replication factor 3.

Leaders are now cached
The functional test only runs on Kafka 0.8.2 and up.
Retry logic is in place, but needs a careful review.

I came to realize that we should use Config.ClientID instead of specifying a consumerGroup explicitly. That would mean you cannot use a single Client to monitor processing lag of a bunch of consumergroups though. Not sure if that is an issue?

I came to realize that we should use Config.ClientID instead of specifying a consumerGroup explicitly.

Why? They are entirely different fields in the request...

:+1: for splitting up the functional tests

I split up the functional tests in a separate PR (#388)

Updated:

Rebased on the latest master
Renamed getCoordinator() to Coordinator() and refreshCoordinator()
Use Version 1 of the OffsetFetch and OffsetCommit requests, so metadata now works.

I am happy with the Coordinator() method now. I may extract it out of this PR into a separate one.

Careful look at the usage of locks would be appreciated. Does making two different locks make sense?
I had to hardcode the retry Max and Backoff values, because initially Kafka has to create the _offsets topic which takes longer than our default settings allow for. Once this is done, the coordinator call usually is much faster,
I will add some unit tests for just this method to test the retry behavior.

I am still struggling with finding a nice API for the Fetch and Commit calls. I don't really want to add them to PartitionConsumer initially, because this requires you to have the PartitionConsumer instance to be in scope, which can easily not be the case (see #339). Also, it wouldn't allow for batching.
So I'd like to have a generic method on Client that allows you to commit/fetch multiple offsets at once, that handles discovering the coordinator, and dealing with retries. We can then build higher level APIs on top of that.

this requires you to have the PartitionConsumer instance to be in scope, which can easily not be the case

I'm not sure I agree - in 99% of cases the consuming code will be
for msg := range partitionConsumer.Messages() {
    // do whatever
}

and will trivially have both in scope. I'm wondering if we should perhaps rethink the consumer group API instead. We can discuss this offline at some point - a good first step is to split the Coordinator code into a separate PR since that's uncontroversial and useful on its own.

As mentioned in #339, a very common sue case will be to aggregate messages from different partitions into a single channel. Not just for the high level consumer, but for #366 it would be a problem as well.

I imagined #366 returning a []PartitionConsumer, not some magic new object.

Rewrote this based on the latest master (which has Coordinator), and changed the implementation to be more in line with GetOffset.
The questions around API design are still outstanding.

W.r.t. API design: I think we either need to move towards the model of having an integrated high-level consumer, or stick the the model of a low-level consumer with utility methods for now.
Moving towards a higher level consumer (using ZK, and/or later using the new APIs that kafka 0.8.3 or 0.9 will offer) would be in line with the JVM library. It would involve adding a new type (e.g. Consumergroup), that should expose the offset management methods.
If we are not ready to go down that path yet, I suggest we expose these methods as is on either the Client or Consumer type, so people can use them as they see fit on top of the low-level consumer we have now.

Reviving this. My preferred approach:

Update the implementation to batch calls together in a single request together. We may need to update the method signature to indicate that a commit call doesn't necessarily mean that the committed value has been flushed. (Client.Close() will always do a final flush, and maybe we want to add FlushCommits() to trigger one manually?)
As a separate PR, expose this on Consumer/PartitionConsumer.

I've been thinking more about where this code should go, and I maintain that the client is the wrong spot for it, but I'm coming to agree that the consumer (or partition-consumer) is also wrong.
There's actually going to be a fair bit of code involved in proper offset management, handling flushes per-time and per-offset, handling and rebatching retries when leadership moves. It will basically be a somewhat-simplified producer (I actually played with just adapting the producer code, but there are enough differences to make that impractical).
As such, I'm coming to the conclusion that it should just be its own separate object entirely (OffsetManager or something) that handles all that logic. A preliminary API might be something like:

NewOffsetManager(client, consumerGroup)
Offset(topic, partition) (int64, error)
Metadata(topic, partition) (string, error)
Commit(topic, partition, offset)
SetMetadata(topic, partition, string)
Flush()
Errors() <-chan error

Does this make sense at all or am I on the wrong track?

Having these "raw" API methods exposed would be great. I understand the point of batching, but having a straight-through low level method available would be a big help until Sarama matures to having proper handling of these, like @eapache suggests. It would also make it possible to implement different strategies depending on the use case.
Just out of curiosity - is there a chance of this being merged as-is?

If we are going to add raw methods. However, they should be able to accept offsets for multiple partitions, not just one, so we can use them as building blocks for higher level constructs like the offset manager that uses batching.

 The wrappers in this PR don't actually add that much in terms of abstraction.
It's also worth noting that the more advanced handling I suggested is actually fairly far along (see the branch https://github.com/Shopify/sarama/tree/offset-manager), I just need to find some time to clean it up and test it.

Ah, right, hadn't considered that approach. Thanks! Can't wait for the offset manager to be done :)


change full name for drpf template

Coverage remained the same at 91.174% when pulling bcd7ffe175a6baea4f596fa4ea46fb7c3e8e510a on update_drpf_parameters into 5a9daa5b7e019ea44d2c4ff02eb6b051e23ef604 on develop.


update name of function

This fixes #34 , fixes #31 , fixes #9
Tags:

Function Names:

Update:
creating insight to list feature that not complete
id will redirect to osm feature

@meomancer, I think we should the errors.

merge percentage and detail of completeness

@meomancer, could you omit the lines that say "clean".

LGTM


Docker + Deployment

Checkout README.md for instructions on how to deploy! Double-check it works for you too before approving this PR.

Outdated.


Provide quote optionality for macro params

the helper function by default wraps macro inputs in double quotes. This is fine for integers and column aliases-- however, for strings this will lead to conflicts if the inputs are already wrapped in double quotes. the 'workaround' is just to wrap the input in single quotes instead-- however it would be nice to automate this by adding a single/double quote param so that the logic will inject single quotes when user pattern is to double quote string inputs and vice versa (inject double quotes when user pattern is to single quote input).

Nice, interesting idea


Inherited struct methods should not be overwritten

We currently have an issue with the following webservice definition:
https://gold.datgroup.com/DATECodeSelection/services/VehicleSelectionService?wsdl
I extracted the problematic parts in a minimal WDSL to show the problem caused by the complexType / simpleContent / extension construct.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<definitions xmlns:xs="http://www.w3.org/2001/XMLSchema"
			 xmlns:tns="http://sphinx.dat.de/services/VehicleSelectionService"
			 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
			 xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata"
			 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
			 xmlns="http://schemas.xmlsoap.org/wsdl/"
			 targetNamespace="http://sphinx.dat.de/services/VehicleSelectionService" name="VehicleSelectionService">
	<types>
		<xsd:schema targetNamespace="http://sphinx.dat.de/services/VehicleSelectionService"
					xmlns="http://www.w3.org/2000/10/XMLSchema">
			<xs:complexType name="fieldString">
				<xs:simpleContent>
					<xs:extension base="xs:string">
						<xs:attribute name="nil" type="xs:boolean"/>
						<xs:attribute name="overwrite" type="xs:boolean"/>
						<xs:attribute name="origin" type="xs:string"/>
					</xs:extension>
				</xs:simpleContent>
			</xs:complexType>
			<xs:complexType name="fieldString1000">
				<xs:simpleContent>
					<xs:extension base="tns:fieldString"/>
				</xs:simpleContent>
			</xs:complexType>
			<xs:complexType name="getVersion">
				<xs:sequence>
					<xs:element name="request" type="tns:fieldString1000" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="getVersionResponse">
				<xs:sequence>
					<xs:element name="version" type="xs:string" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:element name="getVersion" type="tns:getVersion"/>
			<xs:element name="getVersionResponse" type="tns:getVersionResponse"/>
		</xsd:schema>
	</types>
	<message name="getVersion">
		<part name="parameters" element="tns:getVersion"/>
	</message>
	<message name="getVersionResponse">
		<part name="parameters" element="tns:getVersionResponse"/>
	</message>
	<portType name="VehicleSelectionService">
		<operation name="getVersion">
			<input wsam:Action="getVersion" message="tns:getVersion"/>
			<output wsam:Action="http://sphinx.dat.de/services/VehicleSelectionService/VehicleSelectionService/getVersionResponse"
					message="tns:getVersionResponse"/>
		</operation>
	</portType>
	<binding name="VehicleSelectionServicePortBinding" type="tns:VehicleSelectionService">
		<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
		<operation name="getVersion">
			<soap:operation soapAction="getVersion"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
	</binding>
	<service name="VehicleSelectionService">
		<port name="VehicleSelectionServicePort" binding="tns:VehicleSelectionServicePortBinding">
			<soap:address location="https://gold.datgroup.com/DATECodeSelection/services/VehicleSelectionService"/>
		</port>
	</service>
</definitions>

This will generate two fieldString struct classes with inheritance (which is correct):
class FieldString
}

class FieldString1000 extends FieldString
...
}

Here is where the problem occurs: The parent class has a setter method for the $_ property which accepts a string:
/** ... @param string $_ ... */
public function set_($_ = null)
{
    ...
}

The child class also has the $_ property which for some reason has the type of the parent struct:
public function set_(FieldString $_ = null)
{
    ...
}

This method will cause PHP warnings:
PHP Warning: Declaration of FieldString1000::set_(FieldString $_ = null) should be compatible with FieldString::set_($_ = null)
I created a functioning workaround by removing the inherited properties from the child class (which makes sense IMO) but I'm unsure if this is correct:
https://github.com/Intera/PackageGenerator/commit/e912af7d26e1ef8169fe2487422742dc84b83820
I'm happy to help out with the solution if you can point me to the right direction :)
Cheers,
Alex

What I could find out is that the native SoapClient class returns these types:
[183] => struct fieldString {
 string _;
 boolean nil;
 boolean overwrite;
 string origin;
}
    [184] => struct fieldString1000 {
 fieldString _;
}
    [185] => struct fieldString2 {
 fieldString _;
}
    [186] => struct fieldString30 {
 fieldString _;
}
    [187] => struct fieldString5 {
 fieldString _;
}
    [188] => struct fieldString10 {
 fieldString _;
}
    [189] => struct fieldString4 {
 fieldString _;
}
    [190] => struct fieldString8 {
 fieldString _;
}
    [191] => struct fieldCharacter {
 fieldString _;
}
    [192] => struct fieldString9 {
 fieldString _;
}
    [193] => struct fieldString6 {
 fieldString _;
}
    [194] => struct fieldString3 {
 fieldString _;
}
    [195] => struct fieldString17 {
 fieldString _;
}
    [196] => struct fieldString15 {
 fieldString _;
}
    [197] => struct fieldString4000 {
 fieldString _;
}
    [198] => struct fieldString80 {
 fieldString _;
}
    [199] => struct fieldString40 {
 fieldString _;
}
    [200] => struct fieldString50 {
 fieldString _;
}
    [201] => struct fieldString12 {
 fieldString _;
}
    [202] => struct fieldString20 {
 fieldString _;
}
    [203] => struct fieldString100 {
 fieldString _;
}
    [204] => struct fieldString60 {
 fieldString _;
}

As you can see, it is declared that each fieldString* struct contains the _ property of type fieldString, the very first one struct.
This is why you end up with such classes.
IMHO, the current usage of the fieldString* structs is not very useful as they don't define any additional information from the base fieldString.
I currently don't see any improvement that would work around this type of issue.
Let me know what you think.

Thank you for the quick feedback.
I agree that these fieldString* structs do not make much sense. Unfortunately the service is a third party product and we have no influence on the provided WSDL / data structure.
I tested the creation of the webservice client with wsdl2java of Apache CXF and this is generated:
public class FieldString {
    @XmlValue
    protected String value;
    ...
}

public class FieldString9 extends FieldString
{
}

As far as I understand it the value property is the equivalent of the underscore _ property in PHP. And it is only present in the parent class.
So I guess removing the property in the child classes is the way to go.
There might be an edge case when there are additional constraints for the string provided in the child types. Then you would need a setter set_() in the child class that validates those constraints. But then the setter should still be for the type string and not for the parent class as it is at the moment.
I hope this makes any sense :)

We are experiencing the same problem

We are experiencing the same problem

I presume the duplicated property and the duplicated setter/getter in the child classes could be removed meaning the parent classes would force the parameter type for every child class which could be restrictive if wrongly defined in the WSDL.
I must check amongst the existing WSDL in the unit tests in order to see if it would change anything or if it would finally be a rare case (such as yours) and thus not so impactful.
Let me know if you have any additional thought :wink:

I presume the duplicated property and the duplicated setter/getter in the child classes could be removed meaning the parent classes would force the parameter type for every child class which could be restrictive if wrongly defined in the WSDL.
I must check amongst the existing WSDL in the unit tests in order to see if it would change anything or if it would finally be a rare case (such as yours) and thus not so impactful.
Let me know if you have any additional thought :wink:


ci: fix nx cache issue with run-on-yarn update

Overview

PR Checklist

[ ] Related to designs:
[ ] Related to JIRA ticket: [ABC-123]
[ ] I have run this code to verify it works
[ ] This PR includes unit tests for the code change
[ ] This PR includes testing instructions tests for the code change
[ ] The alpha package of this PR is passing end-to-end tests in all relevant Codecademy repositories

Testing Instructions

Don't make me tap the sign.
PR Links and Envs

Repository
PR Link
PR Env

Monolith
Monolith PR
Monolith Env

Portal
Portal Link
Portal Env

Another Repo
Another Link
Another Env

🚀 Styleguide deploy preview ready!https://671670038771da5d1f505cfb--gamut-preview.netlify.appDeploy Logs


Synapse march release RP and fix the package.json issue

Fix the issue mentioned here

Do we need a change in the generator for this?

I think so, @MaryGao please open a issue in autorest.typescript repo to track this.

Do we need a change in the generator for this?

I think so, @MaryGao please open a issue in autorest.typescript repo to track this.

Sure will do that


Cloud App name for conditional access incorrect

The Cloud App name under the "## Using Conditional Access" section is not correct. In my AAD this is "Microsoft Azure Linux Virtual Machine Sign-In" not "Azure Linux VM Sign-In" as per the current document.
Hope this helps.
Thanks

@stevensoave : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

@cynthn: I'm sorry - only the author of this article, @SanDeo-MSFT, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.