Images uploaded via the SDK are twice as large as those uploaded via the web interface

My actions before raising this issue

[x] Read/searched the docs
[x] Searched past issues

Steps to Reproduce (for bugs)

Select some images to be uploaded via web interface and also SDK
Using the web interface, create a task with those images
Using the SDK, create a task and upload those images
Compare the size of the images inside the docker volume

Current Behaviour
I am creating tasks and uploading images programmatically, but I realized that a project I expected to be 20 GB in size was finally 40 GB. Initially, I thought it might be because of parameters like zip_chunks or cache, but it's not.
I selected three images of 77.6MB, 56.9MB, and 42.8MB, created a CVAT task from the web interface, and uploaded these images. I have done the same process but with the SDK, and as a result, I can see that the images uploaded with the SDK occupy twice as much space in the docker volume.
This is the configuration used in the web interface:

This is the configuration used in SDK:
data_params = {"image_quality": 70,
                "use_zip_chunks": True,
                "use_cache": True}

This is the comparison of size between task created in web interface (253) and task created using the SDK (255):

Is it a bug or am I missing a parameter?
Your Environment

CVAT VERSION: 2.7.0
CVAT SDK: 2.7.0
Docker version docker version (e.g. Docker 17.0.05): 20.10.25
Operating System and version (e.g. Linux, Windows, MacOS): Amazon Linux

Try to turn off the Prefer zip chunks toggle.

Try to turn off the Prefer zip chunks toggle.

My problem (double image size) occurs when uploading images with the SDK, not with the web interface.
I have tried to upload the images (via sdk, api) without the zip chunks option and the problem persists.

Also observing this issue but with manifest files.
I found that this happens if the file size is above 2.5Mb. In this case django starts to use TemporaryUploadedFile instead of InMemoryUploadedFile. And in this case the file is written (in append mode) twice.
It appears that the file is written to disk first time by ClientFile model and the second time by append_files  (UploadMixin).
When the size is below 2.5Mb (FILE_UPLOAD_MAX_MEMORY_SIZE Django option) the append_files actually writes 0 bytes (to the already created file). If the size is bigger then append_files writes full file size. Probably in case of memory file the file pointer is preserved at the end of the "file" (that is already read by that moment) and is reset to the beginning in case of TemporaryUploadedFile.
The workaround I'm going to use now is to increase the FILE_UPLOAD_MAX_MEMORY_SIZE  (haven't tried yet).

This variable is part of Django setting: https://docs.djangoproject.com/en/4.2/ref/settings/. I used approach described here to overwrite it: https://opencv.github.io/cvat/docs/administration/advanced/ldap/
But used settings.py with this contents:
from cvat.settings.production import *

FILE_UPLOAD_MAX_MEMORY_SIZE = 100 * 1024 * 1024

The docker-compose.override.yml is the same as in the documentation referenced above:
services:
  cvat_server:
    environment:
      DJANGO_SETTINGS_MODULE: settings
    volumes:
      - ./settings.py:/home/django/settings.py:ro

```python
FILE_UPLOAD_MAX_MEMORY_SIZE = 100 * 1024 * 1024

Would it be the same to add it to the current DJANGO settings file in CVAT?
This file is cvat/settings/production.py, and I have tried to add this line:
FILE_UPLOAD_MAX_MEMORY_SIZE = 200 * 1024 * 1024
But I still have the same problem. Anyway, I don't understand why it would be something about this configuration, as I only see the problem if I upload images through the SDK, but not through the web interface.

Would it be the same to add it to the current DJANGO settings file in CVAT?
This file is cvat/settings/production.py, and I have tried to add this line:

Yes, should be the same.
I'm not sure if the issue is the same with images. I observed double file size for manifest.json uploaded via SDK (via cvat-cli to be precise).

OK, so that solution didn't work for me. Thank you very much for your help!
I hope I can solve it because it's quite a serious problem.

More information and experiments:

I have created a task using the SDK using a 2.4 MB image. When checking the cvat data volume, the image size is still 2.4MB.

I have created a task using the SDK using the initial test images and this new 2.4 MB image. Now, the image size is doubled.

This might indicate that it must be related not to the size of the file itself, but to the size of the set of uploaded images.
I have been doing a lot of tests and, as @dm0 said, this is happening when exceeding 2.5 MB. That is, if the file or set of files is less than 2.5MB, there is no problem. If it exceeds 2.5MB, all the files become duplicated in size.
By the way, @dm0 maybe your solution isn't working for me because I'm not doing it right. After editing the file, what commands should I run? Thank you very much for your help.

By the way, @dm0 maybe your solution isn't working for me because I'm not doing it right. After editing the file, what commands should I run? Thank you very much for your help.

It depends on how you run CVAT and edit the file. If you'r using docker compose and edit the file in the container then I believe it should be enough to restart the cvat_server container.
If just edit the settings file in your local copy of the CVAT repository and then use docker compose up — I think this will not work. You will need to build your own docker image (or edit the file inside the container).
By the way, I checked with a single 23Mb image this way:
cvat-cli create "test" --project_id 1  local 23m.png

And the file size appears to be duplicated (with the CVAT 2.7.1 without additional setup):
# ls -lh /home/django/data/data/56/raw/
total 45M
-rw-r--r-- 1 django django 45M Sep 21 08:45 23m.png

Assuming CVAT is not running (docker compose down). If I do the following (in the local CVAT repository root):

Create settings.py with the contents shown above.
Create docker-compose.override.yml with the contents shown above above.
Run CVAT_VERSION=v2.7.1 docker compose up -d

Then the file size is expected:
# ls -lh /home/django/data/data/57/raw/
total 23M
-rw-r--r-- 1 django django 23M Sep 21 08:51 23m.png

@dm0 Following your steps my problem is solved! Thank you very much for your help.
Anyway, I think this is a bug and must be solved, so I don't close the issue waiting for a developer to see it.

Thanks for the report, we will take a look.


Coveralls fixes

Coverage increased (+1.6%) to 90.737% when pulling 75bf7032c48a7e4cbf21ed26dff130ca5a54a28d on philipc:coveralls into 189a1f891b5c0fe9c9e8df79a10d56082d765a9e on gimli-rs:master.

Thanks!


Document Carina Debugging entry point

Describe the solution you'd like
Various changes to the a project that utilizes the Carina Framework for testing seems to have disabled or overridden the log4j logging options with no changes being applied to the maven carina template supplied files.  If there was a documented class that could be used for a debugging entry point we (QA Test devs) can follow the process from the onset and identify where there is an overlap in classes being provided and from where they are initialized would be ideal.
Additional context
This request is specifically for a documentation update regarding how to begin a debugging process where the carina framework is impacted by some dependencies in the testing project.  The first class that initializes the framework for the various types of tests such as GUI, API, Cucumber, DB or Mobile would be ideal with a quick example for good measure.

#1290

Need to check for language mistakes and text format
http://qaprosoft.github.io/carina/advanced/program_flow/


Multicell in Template

When in a template and using AutoSetPageBreak(true, 0) the template will only render the last page within the template. I am fully aware that the Tpl isn't intended to add new pages, so this isn't really a bug, however I would like to know if you put any thought into making it allow pages and any ideas you may have before I try tackling it.
Thanks!

Thanks for bringing this up. I wish @marcus-downing was still actively involved with this project or at least available to offer some suggestions.

Sorry...
The templates work as a sort of stamp: a group of elements that you add to a page, potentially with other elements such as a header/footer, background, overlay etc. If they flowed across multiple pages, you'd need to consider how and whether to duplicate elements. It sounds like what you need isn't so much a template as sub-document that can be slipped wholesale into one or more larger documents.
I can imagine adding a core function func (f *Fpdf) InsertPagesFrom(source *Fpdf, firstPage, numPages int) that dumped pages (and any associated images, templates, fonts etc) from a source document into the current document.
However, that functionality would likely run into the same unsolved problem with templates: font subsetting. When combining two documents that contain subsets of the same font, they should ideally notice this, merge the subsets then cut a new subset serving the pages in the new document. That's a big piece of work. And as with templates, one you can get away without doing... most of the time.

Good to hear from you, @marcus-downing -- thanks for your comments.

#216 Added the ability to extract templates by pagenumber from a template. @marcus-downing I would love it if you could look into this, as I don't have a complete understanding of the underlying mechanisms that enable the template feature. Hopefully this solution isn't too horrid.
If I'm given the green light by the two of you I will invest some time in making propery unit tests for this new feature.

That looks pretty good, actually.

If I'm following it, the current behaviour of the Bytes() method is preserved because you use the template's internal page number.
Is counting pages from 1 the convention throughout gofpdf? If so, a single empty byte[] is a small price to pay for making that work.
Needs a comment on the FromPages() method.

It doesn't address the question of framing the template on the outside, ie headers and so on, but I guess it's up to the person composing the outer document to make that decision.

Nice work, @d1ngd0, and thanks for your remarks, @marcus-downing.

Is counting pages from 1 the convention throughout gofpdf?

Yes. The internal page number starts at zero and is incremented with each new page.

Needs a comment on the FromPages() method.

The command line helpers ./check and ./cov should be run before committing. Sometimes I remember to actually do this.

I will invest some time into this in the next few days, adding comments, unit tests, etc.... I'll remove my pull request as well and make a new one so everything is in the same commit

Excellent. I look forward to including your changes, @d1ngd0.

I'll remove my pull request as well and make a new one so everything is in the same commit

That shouldn't be necessary, if you just rebase and force-push to the same branch.

Yes, I was planning on adding some unit tests.

Alright, Updated the comments, and created a testcase for it. I also squashed everything so we should be good to go?

Thanks, @d1ngd0 -- merged with ec1d4b07b1a618f55f4a229ef08b72e02b032228


Interactive and Command Line modes say "Min rlec version"

Interactive and command line modes ask for "Min rlec version". The product is no longer called RLEC.
Also the minimum the version should default to 5.0, not 5.2

min rlec version -> min redispack version?

How about min version in case someone changes their mind again? and then maybe have it in the description where it says "Minimum Redis Enterprise Pack version"? Changing descriptions, later on, is far less intrusive than changing code. Thoughts?

min version isn't a good idea, as the metadata is mostly used to describe a module, e.g. we've got a version attribute.
Thus min_version causes confusion.

We're removing the interactive mode completely anyway


Update discv5 dependency

Update discv5 dependency to latest version from @carver's branch following merge of related PR.

Okay whoops, missed #182, and forgot to update in trin-core, so I thought everything was fine. Looks like this is not part of latest release. Closing for now

forgot to update in trin-core

Ah, I was disturbed that this didn't cause a CI failure. Glad you pointed out the reason. 👍🏻 for waiting for the next discv5 release.


ClassyShark doesn't match APK Analyzer in Android Studio

Hello,
I have added org.altbeacon:android-beacon-library gradle dependency.
I have multidex turned on in my project.  APK Analyzer in Android Studio shows org.altbeacon.beacon.powersave gradle in classes.dex.  However, ClassyShark doesn't show the same in the classes folder.
Do you know what could be causing this?
Thank you,
Igor

Can you share the APK (via Google drive), and I take a look

Since the class org.altbeacon.beacon.powersave.BackGroundPowerSaver is not showing in classes.dex in ClassyShark, I get a NoClassDefFoundError at runtime.

I figured out the problem.  Since I am using Adobe Air framework to package my final APK, I must include jars manually in the libs folder (instead of just relying on gradle).  Since I didn't include altbeacon jar, it wasn't packaged as part of my final APK, and wasn't in classes.dex.
APK Analyzer shows these problematic packages as italicized.


Added docstrings to both the lambda and loop implementations -> Partial fix to (gran4#19)

Thank you

Thank you

No problem!


Project Structure For FrontEnd

Go to the Figma URL : https://www.figma.com/file/My0RMPXpc7Q5TAGcMgHaup/The-Blog---A-Web-Personal-Blog-(Community)?type=design&node-id=614%3A352&mode=dev&t=cz3p5pqR4MbedfNO-1

Understand and go through all the pages.

Make A proper folder,components,utils etc folder inside the app folder after analyzing the requirements from the FIGMA

4.add all the relevant folders and commit then push it. Only after verification it will be merged.!

@bishalde  Please assign this task to me under gssoc 24.


Can't build .so libraries using CMake 3.18.1

plugin version: 0.1.3
when running
./gradlew lib.hiddensecrets:assembleRelease --rerun-tasks --no-build-cache

> Task :lib.hiddensecrets:configureCMakeRelWithDebInfo[arm64-v8a] FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':lib.hiddensecrets:configureCMakeRelWithDebInfo[arm64-v8a]'.
> [CXX1405] error when building with cmake using C:\Users\user\projectname\lib.hiddensecrets\src\main\cpp\CMakeLists.txt: Build command failed.
  Error while executing process C:\Users\user\AppData\Local\Android\Sdk\cmake\3.18.1\bin\cmake.exe with arguments {-HC:\Users\user\projectname\lib.hiddensecrets\src\main\cpp -DCMAKE_SYSTEM_NAME=Android -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_SYSTEM_VERSION=23 -DANDROID_PLATFORM=android-23 -DANDROID_ABI=arm64-v8a -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a -DANDROID_NDK=C:\Users\user\AppData\Local\Android\Sdk\ndk\21.4.7075529 -DCMAKE_ANDROID_NDK=C:\Users\user\AppData\Local\Android\Sdk\ndk\21.4.7075529 -DCMAKE_TOOLCHAIN_FILE=C:\Users\user\AppData\Local\Android\Sdk\ndk\21.4.7075529\build\cmake\android.toolchain.cmake -DCMAKE_MAKE_PROGRAM=C:\Users\user\AppData\Local\Android\Sdk\cmake\3.18.1\bin\ninja.exe -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Users\user\projectname\lib.hiddensecrets\build\intermediates\cxx\RelWithDebInfo\166m5e59\obj\arm64-v8a -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=C:\Users\user\projectname\lib.hiddensecrets\build\intermediates\cxx\RelWithDebInfo\166m5e59\obj\arm64-v8a -DCMAKE_BUILD_TYPE=RelWithDebInfo -BC:\Users\user\projectname\lib.hiddensecrets\.cxx\RelWithDebInfo\166m5e59\arm64-v8a -GNinja}

If I specify the Cmake version (a one we used before, when it worked) explicitly, it works
    externalNativeBuild {
        cmake {
            version "<IP_ADDRESS>88404"
        }
    }

Thanks in advance!

Hello @denis-bezrukov ,
I don't understand what it your goal by running this command ?

@ben-j69 🤔 the goal is to build .so libraries. Usually it is transitively called when you try to build the app, the command I mention is a direct way to build it.

@denis-bezrukov do you succeed to use hidden secret in your app by following the readme ? I have never try this kind of build. Why would you like to build it separately like this ?

@ben-j69 yes, we successfully use it. After setting it up from readme (repeated calls ./gradlew lib.hiddensecrets:hideSecret -PkeyName=name -Pkey=key you usually call app:build / app:assemble or simply click Run in Android studio. All these commands internally call assemble on module that contain these secrets.

@denis-bezrukov indeed ./gradlew lib.hiddensecrets:assembleRelease does not work.
If you want to look deep into it feel free to submit a PR if it is relevant. What is your use case of building .so like this ?


Scroll to top

Simple fix to scroll to top of page when navigating routes.
Fixes https://github.com/project-koku/koku-ui/issues/479

Codecov Report

Merging #498 into master will decrease coverage by 0.07%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master     #498      +/-   ##
==========================================
- Coverage   84.32%   84.25%   -0.08%
==========================================
  Files         154      154
  Lines        2265     2267       +2
  Branches      357      358       +1
==========================================
  Hits         1910     1910
- Misses        317      319       +2
  Partials       38       38

Impacted Files
Coverage Δ

src/app.tsx
73.52% <0%> (-4.6%)
:arrow_down:

Continue to review full report at Codecov.

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


Sentry integration

We want to integrate Sentry as our errors/exceptions tracking tool, so for this I would like to build a Logger which would act as a wrapper for the sentry SDK with the following features:

An init function with easy-to-deal configuration

A Rocket fairing which tracks requests as breadcrumbs & report messages for unsuccessful responses (check status code & success property)

A "track_step" function which internally adds a breadcrumb to the current scope

A wrapper around Sentry logging Levels & breadcrumb types

A wrapper around Sentry from_message event logger

(Additional) A function which sets the user for the current scope and use it on the FromRequest implementation on AuthInfo

I've started to implementing it on https://github.com/security-union/rocket-sentry-logger
@security-union/dev The idea is to publish it as a crate on crates.io so we can just import it as a dependency on our code


Initial Data Representations

We wrapped up discussion on Numeric Representations in #95.   This item will track work on enumerated, flag and string representations, including bringing the current Context Item list into the new system.
I'm attaching my working spreadsheet including the finalized Numeric items and the other types to be agreed on.
DTDsForDiscussion.xlsx

Updated version following 21 June 2023 meeting.   Resolved items are in green and items yet to be discussed are in yellow.
DTDsForDiscussion.xlsx

Having added Sensor Latency per #98
DTDsForDiscussion.xlsx

Updating following 5 July discussion
-Renamed ContactType to TelecommunicationContactType.
-Added AddressContactType
-Flagged LoadType, OperationType & GNSSSourceType as partially discussed.
--@dubnemo  is reviewing another list for possible additions to LoadType.
--We will resume discussion on OperationType next time
--GNSSSourceType is not a valid list.  We need to define if that is really the information we want.
DTDsForDiscussion.xlsx

@knelson-farmbeltnorth reviewed the ArgoUML class diagram 20200428 Common Data Model.zargo, and recommend adding PlanterBox, Spreader, and Cart to the LoadType list.  These were the permissible transfers between known containers:

These tend to be container types, aka loads in a specific container which matches 100% to Traceable Resource Unit.

Updated with latest changes.
DTDsForDiscussion.xlsx

After some research and discussion with experts it does not seem there is a good list of GNSS source types or accuracy ratings. The best is within the NMEA standard on the CANBUS the CEA message would contain a numeric value for static accuracy rating (accuracy over 24 hours), and could group into centimeter, decimeter, or sub-meter. This would not address pass to pass accuracy (accuracy within 15 minutes). So maybe we use these categories for now and make sure a better list/definition is a deliverable of the soon to start field boundary GNSS Accuracy working group.

LoadType: Unknown, Tank, Field, Truck, Bale, Module is not accurate have been using bulk, discrete
ContainerUseType: Disposable, Reusable, Fixed, Mobile seems ok
After the review the team also provided the attached list of container types that was submitted a while back and should be added as another enumeration. The above values of LoadType seemed to be more a list of ContainerTypes, but incomplete compared to this list.
Container Controlled Vocabulary Submission Form - 20211117.xlsx

The Data Linking team also provided the attached CTE (Critical Tracking Event) type list that should be considered if the ADAPT Standard is planned to support CTEs and TRUs in the first release to enable traceability use cases.
Critical Tracking Event  Controlled Vocabulary Submission Form - 20210307ekw.xlsx

Agreement in 2 August 2023 meeting to discard Work Item Priority from the model and to make GNSS Source Type free text entry.   Agreement in 9 August 2023 meeting on a list of Operation Types (see #111).  Updated representations:
DTDsForDiscussion.xlsx

@knelson-farmbeltnorth is the enumerated sheet the 'approved' list of enumeration.  As @crakerb-ship-it notes, we don't believe LoadType is accurate.  Thank you for adding Critical Tracking Event and Container Type to the 'For Discussion' sheet.  Is it that we need to show up to one of the Meeting to state our requirements?

Updated sheet with bracketed unit syntax
DTDsForDiscussion.xlsx
@dubnemo Everything can still be revised, and we can work through issues here.   Loads, containers etc. are a topic for our scoping discussion #117 and we can also meet on this topic as I know our normal time does not work for you.

Updated sheet having removed Enumerations no longer part of the model.
DTDsForDiscussion.xlsx

Following recent decisions to remove calibration factors and sensor latencies from the model as residual machine-focused data points, should we also deprecate the workstate representation?   From the point of view of the field, is there ever a time when we need to know workstate of any implement that may have passed over a certain spot?   The presence of a polygon containing non-zero data for the relevant rate representation will tell us where the machinery was engaged.

Updated sheet having removed Enumerations no longer part of the model. DTDsForDiscussion.xlsx

For LoadType I thought the idea was to just use bulk or packaged. The LoadType list in the cleaned up sheet is a subset of the Container Type list in the context item tab. Or was the conclusion we need to come to consensus on the terminology between load, container, TRU and revisit this after we get consensus there?

Agreement 4 Oct 2023 meeting to remove "IsActive" boolean since this is leftover from tracking machine data.   The presence or absence of data reflects whether any given item was active.
DTDsForDiscussion.xlsx
Updated sheet:

Updated sheet as of 11 Oct 2023.
DTDsForDiscussion.xlsx
Next steps will be to model this in a json/xml file as a release candidate.

Initial json document:
DataTypeRepresentations.json
Do we need granular definition of numeric types SInt32, UInt16 etc.?  I made everything a double.  One or two items may be an int, but otherwise everything would be a Single or a Double.

Agreement in 18 October 2023 meeting to simplify Numeric Data Type to Double and Integer.

Leaving this open to revisit the decision with serialized file sizes in mind.

Final list published here:  https://github.com/ADAPT/Standard/blob/main/adapt-data-type-definitions.json

I still take the stance that the IDType defined is really a scheme, and IDSourceType is very confusing as both IDType and IDSourceType has GLN as an example.
A scheme defines the data representation, aka a formal descriptive way to parse and recognize the identifier, which in some case there will be logic in created the identifer.  UUID is a classic example, as GUID is the Microsoft way or scheme and DCE created another scheme.  There are many versions of each scheme as noted in RFC 9562.  Therefore the IDSource in these examples are actually Microsoft or DCE.  Just saying.
GTIN and GLN are other schemes, which the source is GS1.
I could go on an on.  I bought this up the first day of the ADAPT kickoff meeting in Bloomington, citing ANSI ASC X12 as the origin of these concepts.  UN/ECE spent considerable clock-cycles 'fixing this' with the notion of schemeId and schemeAgencyId, probably a LOT more human-hours spent debating this than we have spent in AgGateway.
ID Type in X12 was a business contextual name for the identifier, which is much different than a scheme since scheme is for the technical folks solving problems.  The UN ended up calling this typeCode instead.  I cannot remember if UN/EDIFACT also fixed the X12 submission to the UN/ECE but there were a lot of changes to address concerns like this.
Sorry I I did not see this earlier.

@dubnemo Can you create a new issue for this?   If we want to revisit our code lists, we built in flexibility to supersede codes as I just pointed out in #155.

#156


Page Transition Flutter Error

We are committed to trying to solve issues, but we need your help. Please take a few minutes to fill out the information below, and provide a concise, descriptive title.
Describe the Bug
Requesting page transition on Adobe XD and importing to Flutter does not work.
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: const Color(0xffa52121),
body: Stack(
children: [
Transform.translate(
offset: Offset(69.0, 436.0),
child: PageLink(
links: [
PageLinkInfo(
transition: LinkTransition.Fade,
ease: Curves.easeOut,
duration: 0.3,
pageBuilder: () => iPhone678Plus1(),
),
],
PageLink, I tried searching for the term, couldn't find it in the flutter documentation

To Reproduce
Specific steps to reproduce the behavior.
Screenshots and/or XD File
If possible, add a link to an XD file that demonstrates the problem in the simplest way possible (ie. isolate just the artboard and layer that is causing the problem). If applicable, add screenshots to help explain your problem.
Console Output
{
"resource": "/Users/amroel/Developer/AndroidStudioProjects/flutteradobe/lib/iPhone678Plus1.dart",
"owner": "dart",
"code": {
"value": "undefined_method",
"target": {
"$mid": 1,
"external": "https://dart.dev/tools/diagnostic-messages#undefined_method",
"path": "/tools/diagnostic-messages",
"scheme": "https",
"authority": "dart.dev",
"fragment": "undefined_method"
}
},
"severity": 8,
"message": "The method 'PageLink' isn't defined for the type 'iPhone678Plus1'.\nTry correcting the name to the name of an existing method, or defining a method named 'PageLink'.",
"source": "dart",
"startLineNumber": 17,
"startColumn": 20,
"endLineNumber": 17,
"endColumn": 28,
"tags": []
}
OS & XD Version:

OS:  MacOS 10.15.3]
XD: <IP_ADDRESS>

Other Information:
Any other information you think might be useful, or hunches you have on what's going wrong.

Please refer to the README file, under Flutter Dependencies. You should also get a warning informing you about the missing adobe_xd package. Please feel free to reopen if this doesn't address your issue.


call to undeclared function 'RCTTransformFromTargetRect'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]     CGAffineTransform transform = RCTTransformFromTargetRect(image.size, targetRect);

Environment
react-native:0.71.9
"@react-native-community/image-editor": "^2.3.0",
xcode:14.3
ios:16.4
Description
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:65:35: error: call to undeclared function 'RCTTransformFromTargetRect'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
CGAffineTransform transform = RCTTransformFromTargetRect(image.size, targetRect);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:65:35: error: declaration of 'RCTTransformFromTargetRect' must be imported from module 'React.RCTImageUtils' before it is required
In module 'React' imported from /node_modules/@react-native-community/image-editor/ios/RNCImageEditor.h:8:
/ios/Pods/Headers/Public/React-Core/React/RCTImageUtils.h:28:30: note: declaration here is not visible
RCT_EXTERN CGAffineTransform RCTTransformFromTargetRect(CGSize sourceSize, CGRect targetRect);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:65:35: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
CGAffineTransform transform = RCTTransformFromTargetRect(image.size, targetRect);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:65:35: error: conflicting types for 'RCTTransformFromTargetRect'
In module 'React' imported from /node_modules/@react-native-community/image-editor/ios/RNCImageEditor.h:8:
/ios/Pods/Headers/Public/React-Core/React/RCTImageUtils.h:28:30: note: previous declaration is here
RCT_EXTERN CGAffineTransform RCTTransformFromTargetRect(CGSize sourceSize, CGRect targetRect);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:66:29: error: call to undeclared function 'RCTTransformImage'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
UIImage *croppedImage = RCTTransformImage(image, targetSize, image.scale, transform);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:66:29: error: declaration of 'RCTTransformImage' must be imported from module 'React.RCTImageUtils' before it is required
In module 'React' imported from /node_modules/@react-native-community/image-editor/ios/RNCImageEditor.h:8:
/ios/Pods/Headers/Public/React-Core/React/RCTImageUtils.h:87:1: note: declaration here is not visible
RCTTransformImage(UIImage *image, CGSize destSize, CGFloat destScale, CGAffineTransform transform);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:66:29: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
UIImage *croppedImage = RCTTransformImage(image, targetSize, image.scale, transform);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:66:29: error: conflicting types for 'RCTTransformImage'
In module 'React' imported from /node_modules/@react-native-community/image-editor/ios/RNCImageEditor.h:8:
/ios/Pods/Headers/Public/React-Core/React/RCTImageUtils.h:87:1: note: previous declaration is here
RCTTransformImage(UIImage *image, CGSize destSize, CGFloat destScale, CGAffineTransform transform);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:72:20: error: call to undeclared function 'RCTTargetRect'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
targetRect = RCTTargetRect(croppedImage.size, targetSize, 1, resizeMode);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:72:20: error: declaration of 'RCTTargetRect' must be imported from module 'React.RCTImageUtils' before it is required
In module 'React' imported from /node_modules/@react-native-community/image-editor/ios/RNCImageEditor.h:8:
/ios/Pods/Headers/Public/React-Core/React/RCTImageUtils.h:21:19: note: declaration here is not visible
RCT_EXTERN CGRect RCTTargetRect(CGSize sourceSize, CGSize destSize, CGFloat destScale, RCTResizeMode resizeMode);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:72:20: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
targetRect = RCTTargetRect(croppedImage.size, targetSize, 1, resizeMode);
^
/node_modules/@react-native-community/image-editor/ios/RNCImageEditor.m:72:20: error: conflicting types for 'RCTTargetRect'

You need to add this to your compiler flags (e. g. in the xcconfig file or under User-Defined in the build settings):
WARNING_CFLAGS = -Wno-declaration-after-statement


border color on window splits

Hey! I can see there's no border when splitting windows:

Is this intended? If so, can we have an option to activate borders? I'd personally like keyword's color (purple) as the border color for a neon fashion style, but choosing it explicitly would be great too!

Hey! I can see there's no border when splitting windows:

There is, just not quite as visible as other elements to give a more seamless effect:

Is this intended?

yes :)

If so, can we have an option to activate borders?

Remember that a few hours ago I introduced the new API and added the functionality for overwriting colors and hi groups. Following the example in the README you could setup what you want:
local cp_api = require("catppuccino.api.colors")
local err, colors = cp_api.get_colors("neon_latte")

if err.status then -- good
	catppuccino.remap({},
	{
		VertSplit = { fg = colors.magenta },
	})
end

catppuccino.load()

And it'll look like:

Amazing! Ok thanks now I see how this works.


[GitHub Usage] Add telemetry to the GitHubIndexer Job

Add the following metrics for telemetry.
per repo:
totalDuration
findDuration --> numberOfFiles
checkoutDuration --> numberOfFiles
totalSearchDuration --> totalReposCount
Example telem: https://github.com/NuGet/NuGet.Jobs/blob/master/src/Monitoring.RebootSearchInstance/TelemetryService.cs

Verify with these artifacts and these configs.

This work is done and its deployment will be tracked by: https://github.com/nuget/nugetgallery/issues/7214


Incorrect result for identity matrix

The result of multiplying two identity matrixes should obviously be the identity matrix.  matrixmultiplication.xyz incorrectly gives a matrix of threes (or presumably ns).
Screenshots:

This is happening on Firefox.

As far as I can tell, it seems to treat all zeroes as ones.

Fixed. Thanks @Sanqui  and @Sentri


Node should automatically re-connect to DHT network

The Issue
For a number of reasons, a lbrynet client may disconnect from the DHT network resulting in these types of log messages:
Line 1973: 2018-06-12 09:13:59,752 WARNING  lbrynet.dht.node:635: This node doesnt know any other nodes
When this occurs, the client should attempt to rebind(if needed) it's UDP/TCP ports and rejoin the network.
System Configuration

LBRY Daemon version:
LBRY App version:
LBRY Installation ID:
Operating system:

Anything Else

Screenshots

Hi , This Works ?
https://github.com/lbryio/lbry/issues/971

@SiamakNemati that looks unrelated. We're you interested in tackling this issue?

@tzarebczan I've had issues with the daemon responding to some DHT-related calls after reconnecting or switching networks; the only (known) solution is to restart the daemon.  Is this the same issue?
This is an issue with claims that have previously been downloaded as well.


Feature Request:  Timestamp in logs

I think it would help debugging and performance optimization.  I find it hard to line up output from my own logs with the logs from the dask-scheduler/ dask-workers.

Dask uses the standard Python logging module.  This means that you can control logging today by modifying the settings there.
If you want to use Dask configuration, then this is customizable with the distributed.admin.log-format configuration value.  See https://docs.dask.org/en/latest/configuration.html
See
https://docs.python.org/3/library/logging.html#logrecord-attributes
https://github.com/dask/distributed/blob/0696a1f6456b8010b19ac47b14cd2dca0d859246/distributed/distributed.yaml#L99
cc also @TomAugspurger , who was asking about this

Perfect - thank you!
For what it's worth, I edited the distributed/distributed.yaml file as follows:
From:
log-format: '%(name)s - %(levelname)s - %(message)s'
To:
log-format: 'Dask Log -- %(asctime)s - %(name)s - %(levelname)s - %(message)s'


Add JSON_EMBED encoding flag

The JSON_EMBED encoding flag causes the opening and closing characters
of the top-level array ('[', ']') or object ('{', '}') to be omitted
during encoding. This feature makes it possible to concatenate multiple
arrays or objects in the stream output. It also makes it possible to
perform outputs of partial composes.
One such example of a partial compose is when outputting a JWE object.
The output is a JSON object. But it has one top-level attribute
("ciphertext") that can grow out of proportion with the rest of the
metadata. With the JSON_EMBED flag, the other metadata can be composed
ahead of time and dumped during the beginning of output, where the
"ciphertext" and "tag" attributes can be streamed out in chunks. Thus,
the header material can be composed with Jansson and the ciphertext
itself can be composed manually.

These tests appear to have failed due to a network connectivity issue with github.com. Can you please re-run them manually?

Coverage decreased (-0.1%) to 90.291% when pulling b8bb078cc291a387ecce03a7a62ded593f76b85e on npmccallum:embed into 3c51112063a09151390e93916a4637a7e0427b32 on akheron:master.

I was able to fix tests on windows, but the Travis CI tests are broken due to networking restrictions.

Coverage increased (+0.01%) to 90.407% when pulling b8bb078cc291a387ecce03a7a62ded593f76b85e on npmccallum:embed into 3c51112063a09151390e93916a4637a7e0427b32 on akheron:master.

I'm not sure why, but it now appears that all the Travis CI tests pass too. So this patch should be close.

Merged, thanks!


Enable SSH for libgit on Windows

The new VM in v 0.8.810 does not come with SSH enabled for libgit.

This is addressed in v0.8.817.
To load a private repository on Windows, first specify the keys:
| credentials store |
credentials := IceSshCredentials new
	host:  #'*';
	username: 'git';
	publicKey: 'PATH\TO\id_rsa.pub';
	privateKey: 'PATH\TO\id_rsa';
	"keyPassphrase: 'potential rsa passphrase';"
	yourself.
store := IceCredentialStore current.
store storeSshCredential: credentials forHostname: credentials host.
IceCredentialsProvider useCustomSsh: true.


rgba colors doesn't work

Defining backgroundColor prop as rgba color resets color to the default one. Opacity is not shown.

Solved in recent update.


[WFRP4e System] Melee(Parry) not showing as alternate skill for shield

As per Melee (Parry), it may be used in place of other melee skills for any weapon with the defensive skill. I have the skill and try to roll to defend with shield but it does not even show up as an alternate option in the skills tab. It would be good if this showed up conditionally or if all available melee skills showed up in that dropdownFrom<EMAIL_ADDRESS>3.3.1wfrp4e-core: 1.11wfrp4e-eis: 1.1.0wfrp4e-rnhd: 1.3.0wfrp4e-starter-set: 1.3.0

The intention here is to change the shield's group to Parry when you want to use the Parry skill.


Recommend fixing the solution file to be standalone

When downloading the theme and opening it in visual studio, a few things are wrong.

One one hand, it only opens correctly when there is a oqtane.framework folder side-by side
It also opens with a lot of errors - because it directly references DLL files

Experienced developers can work around this, but since it's probably meant for getting started, I recommend that these initial challenges are removed.

@iJungleboy for the past 5 years all of the sample projects in the Oqtane org (ie. Blogs, Wikis, etc...) follow the approach of requiring the project to be located side-by-side with the Oqtane Framework. It uses this approach because it is the exact same approach which the Module Creator takes when scaffolding code to create new modules or themes (which is the typical starting for most developers who are learning Oqtane). Some of the repos (ie. https://github.com/oqtane/oqtane.blogs ) include specific documentation to explain the structure - but perhaps it should be added to all repos.

@sbwalker I guess this makes sense.
But in that case if this is a convention it would be good that I explain it in the docs. Maybe a best-practice or something...
So should I put it in the docs that this is "the way"?

@sbwalker Just created some foundational docs about this.
I recommend we link to these in all modules.
https://docs.oqtane.org/guides/dev/index.html


[HtmlFormat] Add syndication links

Adds  elements for each additional output format in the  of HTML format output to allow RSS readers to find the actual feeds directly from the HTML page.
Closes #1298.

Thanks again for your contribution!
Sorry for breaking the links in the first place :yum:


fix(deps): update ava to 4.x

Requires #297
BTW it seems you can update @npmcli/map-workspaces too, although arguably they don't have a changelog.
Closes #292

🎉 Thanks for sending this pull request! 🎉
Please make sure the title is clear and descriptive.
If you are fixing a typo or documentation, please skip these instructions.
Otherwise please fill in the sections below.
Which problem is this pull request solving?
Example: I'm always frustrated when [...]
List other issues or pull requests related to this problem
Example: This fixes #5012
Describe the solution you've chosen
Example: I've fixed this by [...]
Describe alternatives you've considered
Example: Another solution would be [...]
Checklist
Please add a x inside each checkbox:

[x] I have read the contribution guidelines.
[x] The status checks are successful (continuous integration). Those can be seen below.

A picture of a cute animal (not mandatory but encouraged)

@erezrokah you can probably update @npmcli/map-workspace, see my OP :)

Triggered it in https://github.com/netlify/build-info/issues/2


activekey doesn't work for nested routers

i'm using core+web.
I have nested routes, when I try to go to a 3rd level route
such as AppNavigation/Dashboard/Claim the navigation state is only set until Dashboard

you can see that first route has index set to 4 (AppNavigation) then it has index set to 2 (Dashboard) but the Dashboard route index is set to =0 (Dashboard again)
It also causes navigating to 'Dashboard' show the url as AppNavigation/Dashboard/Dashboard

Please provide full code showing the issue


Firmware 2.6.0 brings local API

It seems, that with 2.6.0 the free@home SystemAccessPoints gets their own local API:
https://developer.eu.mybuildings.abb.com/fah_local/
Here the (german) changelog:
https://www.busch-jaeger.de/files/files_ONLINE/SysAP_ReleaseNotes_DE-EN_V11_2CKA000873B9732_BJE.pdf?download=1
Does that mean, that this API might not be needed anymore?

Yeah seems like we can finally also implement virtual devices. Still it is easier to use this library than implementing everything on your own, so I am aiming to migrate this library to the new API. This way we also don't need to change anything in the homebridge plugin and just use this library as usual.
We should also keep the old API code in place for SysAps with versions < 2.6.0 for backwards compatibility.

@mobilutz Where did you find the firmware? I could only find the v2.5.0 firmware on the BJ website.

SysAp v1
SysAp V2

@mobilutz Where did you find the firmware? I could only find the v2.5.0 firmware on the BJ website.

I am not 100% sure, but through Google I found this forum:
https://www.freeathome-forum.de/community/neue-funktionen-updates/

I just linked the product pages for each hardware revision where you can find the firmware download links.

😦
It seems, that the free@home local API can only be used on SystemAccessPoint v2
https://developer.eu.mybuildings.abb.com/fah_local/prerequisites/

Hmm, a shame that the API is not available for the AP v1. I only have the v1 and I don't plan to upgrade as there isn't much of a benefit. Unfortunately that also means that I can not implement the new AP because I am unable to test it. Although I think the new API doesn't bring any benefits besides virtual devices.

@henry-spanka Could imagine local API could also follow for Sysap v1. Why not reaching out to ABB developer team asking for v2 sample?

Does an upgrade to 2.6.0 still work with your current library?

Does an upgrade to 2.6.0 still work with your current library?

There is a 2.6.0-Firmware for the Sysap v1 available on this page: https://www.busch-jaeger.de/produktuebersicht?tx_nlbjproducts_catalog[action]=show&tx_nlbjproducts_catalog[catBjeProdukt]=42726&tx_nlbjproducts_catalog[controller]=CatStdArtikel&cHash=947308e3dfdc90b89eb854c601e0087a
The attached release notes mention the local API.
(I haven't tried to update my device using the image yet.)

There is a 2.6.0-Firmware for the Sysap v1 available on this page: https://www.busch-jaeger.de/produktuebersicht?tx_nlbjproducts_catalog[action]=show&tx_nlbjproducts_catalog[catBjeProdukt]=42726&tx_nlbjproducts_catalog[controller]=CatStdArtikel&cHash=947308e3dfdc90b89eb854c601e0087a
The attached release notes mention the local API.
(I haven't tried to update my device using the image yet.)

Does an upgrade to 2.6.0 still work with your current library?
Update.... I've updated to 2.6.0, and unfortunately it broke :( Api is not starting
Jan 01 20:42:50 pihome systemd[1]: Started freeathome API Service.
Jan 01 20:42:54 pihome systemd[1]: freeathome-api.service: Main process exited, code=exited, status=1/FAILURE
Jan 01 20:42:54 pihome systemd[1]: freeathome-api.service: Failed with result 'exit-code'.

Sorry to hear that. Maybe they removed the old (unofficial) API. Please start the API in debug mode and post the log here.

Does an upgrade to 2.6.0 still work with your current library?
Update.... I've updated to 2.6.0, and unfortunately it broke :( Api is not starting
Jan 01 20:42:50 pihome systemd[1]: Started freeathome API Service.
Jan 01 20:42:54 pihome systemd[1]: freeathome-api.service: Main process exited, code=exited, status=1/FAILURE
Jan 01 20:42:54 pihome systemd[1]: freeathome-api.service: Failed with result 'exit-code'.

Sorry to hear that. Maybe they removed the old (unofficial) API. Please start the API in debug mode and post the log here.

Hi! I'm running at 2.6.0 (.8089) (on Sysap v2) and the library works fine.
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Received SASL Challenge
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Sent SASL Challenge Response
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Received SASL Login Confirmation
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Successfully Authenticated
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Announced Capabilities to System Access Point
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Requested Master Data Structure from System Access Point
Jan 03 13:01:35 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:35 PM - INFO: Received Master Update from System Acccess Point
Jan 03 13:01:36 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:36 PM - INFO: Sent Subscription Request
Jan 03 13:01:36 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:36 PM - INFO: [192.168.X.X:58328]: Websocket connection established

I only got some
Jan 03 13:02:16 raspberrypi freeathome-api[20041]: 1/3/2021, 1:02:16 PM - INFO: [192.168.X.X:58334]: Command not understood
Jan 03 13:02:17 raspberrypi freeathome-api[20041]: 1/3/2021, 1:02:17 PM - INFO: [192.168.X.X:58334]: Command not understood

but I ignore them.

Hi! I'm running at 2.6.0 (.8089) (on Sysap v2) and the library works fine.
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Received SASL Challenge
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Sent SASL Challenge Response
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Received SASL Login Confirmation
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Successfully Authenticated
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Announced Capabilities to System Access Point
Jan 03 13:01:33 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:33 PM - INFO: Requested Master Data Structure from System Access Point
Jan 03 13:01:35 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:35 PM - INFO: Received Master Update from System Acccess Point
Jan 03 13:01:36 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:36 PM - INFO: Sent Subscription Request
Jan 03 13:01:36 raspberrypi freeathome-api[20041]: 1/3/2021, 1:01:36 PM - INFO: [192.168.X.X:58328]: Websocket connection established

I only got some
Jan 03 13:02:16 raspberrypi freeathome-api[20041]: 1/3/2021, 1:02:16 PM - INFO: [192.168.X.X:58334]: Command not understood
Jan 03 13:02:17 raspberrypi freeathome-api[20041]: 1/3/2021, 1:02:17 PM - INFO: [192.168.X.X:58334]: Command not understood

but I ignore them.

Did not have time to check it further, not at home for a while now. I did had a chance to look at the REST Api and Web Socket, and it seems to work really nice.
Here is some documentation about it:
https://developer.eu.mybuildings.abb.com/fah_local/samples/

Did not have time to check it further, not at home for a while now. I did had a chance to look at the REST Api and Web Socket, and it seems to work really nice.
Here is some documentation about it:
https://developer.eu.mybuildings.abb.com/fah_local/samples/

Question, maybe not related to this repository, but I also had similar issues a long time ago;
I am using the 2.6.0 sysap version with the REST api and web socket (as per BJ docu. example).
The REST Api (example's with cURL) work ok, albeit sometime very slow (takes around 15-30 seconds before a respons is received and the action is completed when using the cURL method. Not sure why, its not always..
Main concern is the web socket, it seems to disconnect all the time, and not sure why. See Syslog below..
Jan 21 19:12:36 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE
Jan 21 19:12:36 pihome systemd[1]: freeathome_ws.service: Failed with result 'exit-code'.
Jan 21 19:12:46 pihome systemd[1]: freeathome_ws.service: Service RestartSec=10s expired, scheduling restart.
Jan 21 19:12:46 pihome systemd[1]: freeathome_ws.service: Scheduled restart job, restart counter is at 363.
Jan 21 19:12:46 pihome systemd[1]: Stopped Busch and Jaeger Free at home websocket Service.
Jan 21 19:12:46 pihome systemd[1]: Started Busch and Jaeger Free at home websocket Service.
Jan 21 19:15:27 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE
Jan 21 19:15:27 pihome systemd[1]: freeathome_ws.service: Failed with result 'exit-code'.
Jan 21 19:15:37 pihome systemd[1]: freeathome_ws.service: Service RestartSec=10s expired, scheduling restart.
Jan 21 19:15:37 pihome systemd[1]: freeathome_ws.service: Scheduled restart job, restart counter is at 364.
Jan 21 19:15:37 pihome systemd[1]: Stopped Busch and Jaeger Free at home websocket Service.
Jan 21 19:15:37 pihome systemd[1]: Started Busch and Jaeger Free at home websocket Service.
Jan 21 19:18:28 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE
Jan 21 19:18:28 pihome systemd[1]: freeathome_ws.service: Failed with result 'exit-code'.
Jan 21 19:18:38 pihome systemd[1]: freeathome_ws.service: Service RestartSec=10s expired, scheduling restart.
Jan 21 19:18:38 pihome systemd[1]: freeathome_ws.service: Scheduled restart job, restart counter is at 365.
Jan 21 19:18:38 pihome systemd[1]: Stopped Busch and Jaeger Free at home websocket Service.
Jan 21 19:18:38 pihome systemd[1]: Started Busch and Jaeger Free at home websocket Service.
Jan 21 19:21:32 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE
Jan 21 19:21:32 pihome systemd[1]: freeathome_ws.service: Failed with result 'exit-code'.
Jan 21 19:21:42 pihome systemd[1]: freeathome_ws.service: Service RestartSec=10s expired, scheduling restart.
Jan 21 19:21:42 pihome systemd[1]: freeathome_ws.service: Scheduled restart job, restart counter is at 366.
Jan 21 19:21:42 pihome systemd[1]: Stopped Busch and Jaeger Free at home websocket Service.
Jan 21 19:21:42 pihome systemd[1]: Started Busch and Jaeger Free at home websocket Service.
Jan 21 19:24:19 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE

It's a python script as per example that ABB provides. When running it from the command line, it exits at an unexpected (no reason) disconnect..
Any idea's anyone?

Question, maybe not related to this repository, but I also had similar issues a long time ago;
I am using the 2.6.0 sysap version with the REST api and web socket (as per BJ docu. example).
The REST Api (example's with cURL) work ok, albeit sometime very slow (takes around 15-30 seconds before a respons is received and the action is completed when using the cURL method. Not sure why, its not always..
Main concern is the web socket, it seems to disconnect all the time, and not sure why. See Syslog below..
Jan 21 19:12:36 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE
Jan 21 19:12:36 pihome systemd[1]: freeathome_ws.service: Failed with result 'exit-code'.
Jan 21 19:12:46 pihome systemd[1]: freeathome_ws.service: Service RestartSec=10s expired, scheduling restart.
Jan 21 19:12:46 pihome systemd[1]: freeathome_ws.service: Scheduled restart job, restart counter is at 363.
Jan 21 19:12:46 pihome systemd[1]: Stopped Busch and Jaeger Free at home websocket Service.
Jan 21 19:12:46 pihome systemd[1]: Started Busch and Jaeger Free at home websocket Service.
Jan 21 19:15:27 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE
Jan 21 19:15:27 pihome systemd[1]: freeathome_ws.service: Failed with result 'exit-code'.
Jan 21 19:15:37 pihome systemd[1]: freeathome_ws.service: Service RestartSec=10s expired, scheduling restart.
Jan 21 19:15:37 pihome systemd[1]: freeathome_ws.service: Scheduled restart job, restart counter is at 364.
Jan 21 19:15:37 pihome systemd[1]: Stopped Busch and Jaeger Free at home websocket Service.
Jan 21 19:15:37 pihome systemd[1]: Started Busch and Jaeger Free at home websocket Service.
Jan 21 19:18:28 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE
Jan 21 19:18:28 pihome systemd[1]: freeathome_ws.service: Failed with result 'exit-code'.
Jan 21 19:18:38 pihome systemd[1]: freeathome_ws.service: Service RestartSec=10s expired, scheduling restart.
Jan 21 19:18:38 pihome systemd[1]: freeathome_ws.service: Scheduled restart job, restart counter is at 365.
Jan 21 19:18:38 pihome systemd[1]: Stopped Busch and Jaeger Free at home websocket Service.
Jan 21 19:18:38 pihome systemd[1]: Started Busch and Jaeger Free at home websocket Service.
Jan 21 19:21:32 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE
Jan 21 19:21:32 pihome systemd[1]: freeathome_ws.service: Failed with result 'exit-code'.
Jan 21 19:21:42 pihome systemd[1]: freeathome_ws.service: Service RestartSec=10s expired, scheduling restart.
Jan 21 19:21:42 pihome systemd[1]: freeathome_ws.service: Scheduled restart job, restart counter is at 366.
Jan 21 19:21:42 pihome systemd[1]: Stopped Busch and Jaeger Free at home websocket Service.
Jan 21 19:21:42 pihome systemd[1]: Started Busch and Jaeger Free at home websocket Service.
Jan 21 19:24:19 pihome systemd[1]: freeathome_ws.service: Main process exited, code=exited, status=1/FAILURE

It's a python script as per example that ABB provides. When running it from the command line, it exits at an unexpected (no reason) disconnect..
Any idea's anyone?

Latest update to 2.6.1 seems to solve the above issues, and the websocket is very stable.
On another machine I am also running Homebridge with the free@home plugin, however, that seems to be a lot more unstable, and in order to get communications back again I need to either login in free@home, or restart the homebridge.
[2/13/2021, 1:04:38 PM] [free@home] SysAp did not respond in time: 0007/odp0000/1
[2/13/2021, 1:04:38 PM] [free@home] If this issue persists please try to login as the API user in the free@home UI. The SysAp might disable websocket notifications if the connection is idle for too long.
[2/13/2021, 1:04:38 PM] [free@home] See: https://github.com/henry-spanka/homebridge-freeathome#tips--tricks

@henry-spanka
Would it be possible to implement at least a choice of how to connect the websocket? in the API you can now authenticate a user , and therefore it will not require the tips/tricks as re-login again.
If you like, i can try to assist you as  I have version 2.6.1 and possible a spare raspberry to fiddle around with..

Is this still relevant?

Hmm, a shame that the API is not available for the AP v1. I only have the v1 and I don't plan to upgrade as there isn't much of a benefit. Unfortunately that also means that I can not implement the new AP because I am unable to test it. Although I think the new API doesn't bring any benefits besides virtual devices.

Hi Henry. I also have Sys App v1 and don't want to upgrade to v2 since I just finished my house 4 years ago 😜 Do you have a solution for Sys App v1? I have you free@home bridge running and are able to control actuators once. What is missing is the status update. I need to reconnect to home bridge in order to have the correct status. Can this be solved with additionally installing your API? Thanks in advance. Best Regards, STeF

Hi @morningstar83. What firmware do you use?
I am running it very stable. There is some issue I couldn't find a solution for but a workaround. The SysAp does not send any updates sometimes which is what you are experiencing. HomeKit will not receive any responses and will timeout.
Please see the README. Under the section Tips & Tricks the workaround is documented.
Log in with the home bridge User into the SysAp and just control a accessory (e.g. turn light on and off). Then logout and restart home bridge. The connection should then be stable until you restart the SysAp.

Hi @morningstar83. What firmware do you use?
I am running it very stable. There is some issue I couldn't find a solution for but a workaround. The SysAp does not send any updates sometimes which is what you are experiencing.
Log in with the API user into the SysAp and just control a accessory (e.g. turn light on and off). Then logout and restart the API. The connection should then be stable until you restart the SysAp.

Hi @henry-spanka yesterday I updated to latest version V3.1.0. With log in into SysAp you mean "Home Owner" or "Configuration"? I guess "Home Owner" since you suggested to simply switch an actuator.  I don't have different (API) users, just one Admin. And what do you mean with restart the API after logout? You mean home bridge plugin?

Hi,
yeah, version 3.X has some breaking changes. I already have it running locally but did not fix it in upstream yet to preserve backwards compatibility.
I will get on it this week post here once a new version has been released.

please update the npm package. I have released a new version.

Hi, yeah, version 3.X has some breaking changes. I already have it running locally but did not fix it in upstream yet to preserve backwards compatibility.
I will get on it this week post here once a new version has been released.

Hi. How are you coming along with the release for v3.x? ;)

Hi. It is already released. Please update the freeathome-api package to v1.1.2.

The freeathome-api I simply install on top of my homebridge-freeathome? How can I make sure the API is running?

Is this still relevant?

I will close this issue, as I don't see any need to act upon the local API.
I just updated my SystemAccessPointv1 to 2.6.4 yesterday, and this package still works as expected.
I think I will try >=v3 in a couple of weeks.


Django 4.2.5 and Dynaconf 3.2.2 (AttributeError)

Describe the bug
When I try to access the Django admin, the Django log shows many error messages, such as:
During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/czar/.pyenv/versions/3.11.5/lib/python3.11/wsgiref/handlers.py", line 137, in run
    self.result = application(self.environ, self.start_response)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/contrib/staticfiles/handlers.py", line 80, in __call__
    return self.application(environ, start_response)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/core/handlers/wsgi.py", line 124, in __call__
    response = self.get_response(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/core/handlers/base.py", line 140, in get_response
    response = self._middleware_chain(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/core/handlers/exception.py", line 57, in inner
    response = response_for_exception(request, exc)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/core/handlers/exception.py", line 140, in response_for_exception
    response = handle_uncaught_exception(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/core/handlers/exception.py", line 181, in handle_uncaught_exception
    return debug.technical_500_response(request, *exc_info)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/views/debug.py", line 67, in technical_500_response
    html = reporter.get_traceback_html()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/views/debug.py", line 410, in get_traceback_html
    c = Context(self.get_traceback_data(), use_l10n=False)
                ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/views/debug.py", line 379, in get_traceback_data
    "settings": self.filter.get_safe_settings(),
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/django/views/debug.py", line 154, in get_safe_settings
    settings_dict[k] = self.cleanse_setting(k, getattr(settings, k))
                                               ^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/dynaconf/base.py", line 145, in __getattr__
    value = getattr(self._wrapped, name)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/czar/dev/projects/FuturesLab/flab-issue/.venv/lib/python3.11/site-packages/dynaconf/base.py", line 309, in __getattribute__
    return super().__getattribute__(name)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'HookableSettings' object has no attribute '_REGISTERED_HOOKS'

To Reproduce

Pop_OS 22.04
python 3.11.5
django 4.2.5
dynaconf 3.2.2

I'm using poetry in development, but when I use pip the problem also happens

Having the following folder structure

.
├── LICENSE
├── README.md
├── poetry.lock
├── poetry.toml
├── pyproject.toml
├── pytest.ini
├── requirements.txt
├── settings.yaml
├── src
│   ├── apps
│   │   ├── accounts
│   │   ├── area_skill
│   │   ├── base
│   │   ├── certified
│   │   ├── highlight
│   │   ├── post
│   │   └── profile
│   ├── conftest.py
│   ├── flab
│   │   ├── init.py
│   │   ├── asgi.py
│   │   ├── common.py
│   │   ├── settings
│   │   ├── urls.py
│   │   └── wsgi.py
│   ├── manage.py
│   └── tests
│       └── post
│           ├── test_post__status_code.py
│           ├── test_post__urls.py
│           └── test_post__views.py
└── www
├── assets
├── media
└── static

 Project structure
# settings.py

""" here are the other django settings """

import os
import dynaconf  # noqa

settings = dynaconf.DjangoDynaconf(
    __name__,
    ENVVAR_PREFIX="FLAB",
    SETTINGS_FILE_FOR_DYNACONF="../settings.yaml",
    SECRETS_FOR_DYNACONF="../.secrets.yaml",
)  # noqa

Having the following config files:

 Config files
/path/.env
ENV_FOR_DYNACONF="DEVELOPMENT"
# ENV_FOR_DYNACONF="PRODUCTION"

and
/path/settings.yaml
---
development:
  DEBUG: true
  ALLOWED_HOSTS:
    - localhost
    - <IP_ADDRESS>
    - testserver
  DATABASES:
    default:
      ENGINE: django.db.backends.postgresql_psycopg2
      NAME: ########
      USER: ########
      PASSWORD: ########
      HOST: ########
      PORT: ########
  EMAIL_BACKEND: django.core.mail.backends.console.EmailBackend

production:
  DEBUG: false
  ALLOWED_HOSTS:
    - localhost
    - <IP_ADDRESS>
  DATABASES:
    default:
      ENGINE: django.db.backends.postgresql_psycopg2
      NAME: ########
      USER: ########
      PASSWORD: ########
      HOST: ########
      PORT: ########

Having the following app code:

 Code
/path/src/app.py
from dynaconf import settings
...

Executing under the following environment

 Execution
$ poetry shell
$ src/manage.py runserver

Expected behavior
I hope the error messages stop appearing in the Django log.
Environment (please complete the following information):

OS: Linux/Pop_OS 22.04
Dynaconf Version 3.2.2
Frameworks in use Django 4.2.5

Additional context
Add any other context about the problem here.

Thank you for your help!

Hey, I am getting the same error when upgrading dynaconf from 3.2.1 -> 3.2.2 (django 4.1.11).
Also, for me it is not limited to the admin page. I hope this helps locating the issue.
Thanks for the great work!

I am working on it and hopefully the patch version is coming soon

Hey @cesargodoi @david-fischer we are planning a release with bugifx this week, can you confirm the fix works for you?
pip install https://github.com/dynaconf/dynaconf/tarball/master

Good afternoon friends!
Although I got a warning when running pip install (see
warning.png), apparently everything is fine (see django_log.png)
Thank you very much brothers for your help!
Guys, you are amazing!
Em ter., 12 de set. de 2023 às 15:54, Bruno Rocha @.***>
escreveu:

Hey @cesargodoi https://github.com/cesargodoi @david-fischer
https://github.com/david-fischer we are planning a release with bugifx
this week, can you confirm the fix works for you?
pip install https://github.com/dynaconf/dynaconf/tarball/master
—
Reply to this email directly, view it on GitHub
https://github.com/dynaconf/dynaconf/issues/1000#issuecomment-1716254115,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APDPD7OXHBGSYSBL4GZCBT3X2CVVDANCNFSM6AAAAAA4RRGI74
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
cesar godoi
11 98696.4171

Hi, I can confirm that the error is gone!
However, the install with poetry failed, so I had to use pip.


Questions about code design

I might be wrong, but I have the feeling that the code could be a lot faster than it is today. Whenever one cell attribute changes, we recompute the whole sheet. More than that, we make a deep copy of the data.
I also feel like adding the entire logic inside of the SheetModel and the SheetView could be wrong.
So, my questions are:

Is it possible to make the changes of the sheet more specific to the event that happened? I mean, if I only change the value of one cell, is it possible to only change the sheet data for this cell specifically?
Can we add cell logic (like events) inside of the CellModel, and would it make sense to have a CellView ?

Concerning my first question, there is a setDataAtCell method which makes it possible to specifically change the value of one cell. It also provides a way to update multiple cells at the same time, which could help when trying to update an entire cell range.
I guess this could be used from within a CellView class?

I think handsontable always rerenders the whole table, so no way around it right?

I hope not. I don't see why it would need to rerender the whole table just for changing one cell value?


How to use volumes mounted from other containers

Doc Location: https://docs.microsoft.com/en-us/azure/devops/pipelines/process/resources?view=azure-devops&tabs=schema#resources-containers
How to use volumes mounted from other containers

@trailstrider Thanks for your feedback; we appreciate it. To make sure we have all the information needed to address your issue, please provide more context.

If there is more than one container in the pipeline, how do we share volumes between them? Or even just mount folders from one container into another that we're operating in?

@trailstrider I'm sorry for the delay on this. You can find more information on volumes in our service container article. I'll add a link to it from the resources page.


Confidential notes

Hi there, first of all thanks for the excellent plugin. It has really enhanced my experience with Joplin!
I have some notes with "sensitive" content and it is not ideal to have a preview of them appearing in the note list. I was thinking that it would be nice to omit the preview or have a placeholder for such notes, perhaps a tag could be used to mark which notes are sensitive.
Thank you!

Yes, could possibly be implement with tags and note settings (context menu).
I will give it some thought.

This is exactly what I was thinking about! (also, das Mock sieht gut aus 😄 )


Optimize code base and supports (Pest, strict types, PHP 8.2, etc..)

Convert test to Pest
Add test in PHP 8.2 in Github action
Drop support Laravel 6 and 7
Drop support PHP 7.4
Use semantic version and set minimum version with latest patch
Use Laravel pint for formatter
Add declare_strict_types in pint (declare(strict_types=1))
Install rector
Enforce type hints
Use Spatie package tools
Add LaraBug facade in composer discovery
Use laravel Http facade

Hi @Cannonb4ll, please review my PR, I have some many improvements of the codebase, thank you

Also, if it is ok to apply this pint configuration setup?
https://gist.github.com/lloricode/175ceefd1b3b65d29250fa68d5faad86

Hi @Cannonb4ll,
I have plan to add phpstan here, but will separate it will different PR

will create separate split PR for this, see discord discussion


error message doesnt go away during market creation

the error message stays if it is triggered and then corrected...even if user moves forward between steps
to recreate....chose a market with a dropdown for the year in the future like 2021 (can do with NCAA BB who will win championship market)...when setting expiration date set it for 2020...this will trigger this message.  Then go and change the date to 2021....this will allow u to move forward, but the message doesnt disappear

fixed


import model on root-store file from models/index.ts is causing error

What's going on?
When i try to import a model in the root-store file from models/index.ts its throw the following error:
Error: [mobx-state-tree] expected mobx-state-tree type as argument 1, got undefined instead

Steps to reproduce

generate new model:  ignite generate model testing
import model in root-store:  import { TestingModel } from "../"

if i importing using the following syntax it works:  import { TestingModel } from "../testing/testing";
npx ignite-cli doctor results:
System
platform           win32
arch               x64
cpu                12 cores     Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
directory          myApp     D:\Projects\myApp
JavaScript (and globally-installed packages)
node               16.11.0      C:\Program Files\nodejs\node.EXE
npm                8.0.0        C:\Program Files\nodejs\npm.CMD
@nestjs/cli      8.1.4
nest-cli         0.0.5
npm              8.0.0
yarn               1.22.15      C:\Program Files (x86)\Yarn\bin\yarn.CMD
depcheck         1.4.2
expo-cli         4.12.11
ignite-cli       7.5.0
pm2              5.1.2
Ignite
ignite-cli         7.5.0        C:\Users\lomba\AppData\Local\Yarn\bin\ignite.CMD
ignite src         build        C:\Users\lomba\AppData\Local\Yarn\Data\global\node_modules\ignite-cli\build
Android
java               1.8.0_281    C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.EXE
android home       -            C:\Users\lomba\AppData\Local\Android\Sdk

Im not sure what's going on without more details on the structure of your project. This looks like more a problem of ts and import logic than ignite though

I am using the default ignite project structure.......Maybe is something related  with the tsconfig file.....

@ericklombardo can you please paste your npx ignite-cli doctor and your tsconfig.json in the project directory? That would be very helpful in providing us more information to better troubleshoot this issue.
I'm on Ignite v7.13.1 and just the same command and didn't have an issue (no changes were done to my tsconfig file since "igniting" the project).
My thought is this is using an older version of Ignite that was then on an older version of TS which would require you to do one of the following:

import { TestingModel } from "../index" to import from app/models/index.ts file
import { TestingModel } from "../testing/testing" to import from the generated app/models/testing/testing.ts file

@ericklombardo Thanks for that information. A couple follow up questions:

Your initial message pointed out you were using Ignite v7.5.0 from what I assume is a global package you installed (probably yarn global add ignite-cli. Can you confirm you've since deleted it and are using npx ignite-cli *? That error seems to be from our older versions that we've solved since.
Did my answer in regards to your import make sense? Does it solve your issue?

Hi, i just update to the latest version for ignite-cli, but i am still having the issue:

There has been a lot of changes since this issue last had activity. We have release a new major version of Ignite, codenamed Maverick. This is going to be closed for now, but please re-open if this still needs attention.


quicklinkbuttonamendment

Fixes issue #1364
👨💻 Changes proposed

Added transition+transformation to the buttons
changed the background color of buttons
Adjusted the margin and padding of the buttons

✔ Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

📄 Note to reviewers

📷 Screenshots

About
The FAQ quick link goes to the next line it does'nt look good, would want it in the same line
Also You have merge conflicts do resolve them..


Add a KBKDF minimum key length check for FIPS

FIPS mandates a minimum key length of 112 bits for KDF keys.

[x] documentation is added or updated
[x] tests are added or updated

Test failures aren't relevant, they are the same as from #25089.

rebased and updated the param array size, no other conflicts.
No timer reset.
I'm assuming approvals hold still.

Merged, thanks for the reviews.


NotifyIcon is not analyzed

[ ] Include the log file upgrade-assistant.clef that is produced in the working directory

upgrade-assistant.clef.txt
Describe the bug
A clear and concise description of what the bug is.
NotifyIcon depends on ContextMenu which is deprecated but no replacement is listed.
It's also unclear if deprecated items must be replaced or should be replaced
To Reproduce

Have a form with NotifyIcon
Exceptions (if any)

Further technical details

Windows version and bitness info (32-bit or 64-bit)
win10 64bit
Include the output of dotnet --list-sdks
Include the output of upgrade-assistant --version
0.3.256001+3c4e05c787f588e940fe73bfa78d7eedfe0190bd

Thanks @BobFrankston for filing the issue, I'll take a look to see if we can alert on NotifyIcon


Ignore http/https and anchor differences in URLs

Otherwise, sending someone a link to a sub-section of a page can make them unable to see the highlights.

Is there anything that needs to be done to account for sites that use hash-routing?

I was wondering the same thing. Even something like matrix.to for instance. I am not sure how to reconcile the two approaches, to be honest.

The only think I can think of is to make it user-configurable, probably with an "ignore anchor differences" default - maybe storing whether this site uses hash-routing in room-state somehow?

That sounds like a good way of doing it - I wonder where this would be stored, though. Account data? Some kind of matrix highlight space or room? Seems like the latter approach is cleaner.

It does seem like this data should be shared between clients, so yeah, I'd say in the state of whatever matrix-entity is representing the annotation target.


Show current function somewhere in UI

What is the feature you'd like to have?
I want to know what function I am currently inside of in my active pane within the UI.
Is your feature request related to a problem?
No.
Are any alternative solutions acceptable?
It doesn't matter to me where this information is visible, just that it is visible. It could be in the top bar of the pane (where we have the drop-downs for view type and stuff), it could be in the bottom-right where it shows the current selection, it could even just be an automatic scroll+highlight in the symbols pane (this might be annoying for other reasons, though). It just needs to be visible so I don't have to scroll the whole way to the top of my massive function to find the function name.
Additional Information:
Screenshot was provided in Slack. More than happy to provide more upon request.

We talked about this a little bit on Slack. I also like the idea of having the selection drop-down have "Show as..." and "Copy as..." as options that can be selected, rather than just having all of the copy options. A number of the copy options you can select could be useful to display in certain contexts instead of the current function.

Was this resolved with #3453 ?

Yeah, we can go ahead and close this. There are probably some edge cases where the sticky titlebar doesn't quite solve the problem, but until I hit them, there's no sense leaving this open. I'll just re-open or make a new issue if/when those edge cases come up.


Typegen fail in batch.

The exact same code can be run in git bash, but an error will be reported in batch:
json_typegen config/global_config.json -o code_template/rust/global_config.rs -n GlobalConfig --options "{ derives: 'Default, Debug, Clone, PartialEq, Serialize, Deserialize, Resource' }"
error:
The argument to 'derives' has to be a string literal, but remaining input was ''Default, Debug, Clone, PartialEq, Serialize, Deserialize, Resource' }'
That really confuse me.

I think the issue here is that the option parsing only supports double quoted string literals ("I am a string") and not single quoted strings ('I am a string') for option values, so the invocation should be
json_typegen config/global_config.json -o code_template/rust/global_config.rs -n GlobalConfig --options '{ derives: "Default, Debug, Clone, PartialEq, Serialize, Deserialize, Resource" }'
I might have a look at supporting single quoted string literals, but it might take a while before I get to that.


Add AUR Package

Hi! I love this project!
I created a PKGBUILD for the AUR. I put on README.md , if you don't like the place on the README.md I can change if needed.

Sure! I don't personally use Arch, but I think this would be really cool.


Add tests for orchestration-core

Add unit cases.

Pull Request Test Coverage Report for Build 5637

6 of 8 (75.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.1%) to 68.737%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/internal/state/service/DataSourceService.java
0
2
0.0%

Totals

Change from base Build 5636:
0.1%

Covered Lines:
8300

Relevant Lines:
12075

💛  - Coveralls


Want to integrate this source generator into your project as a 'experimental feature'?

A week ago, I developed this source generator in some hours for a experiment I thought was interesting, it uses the new .NET feature called 'Interceptors' to intercept the 'prototype-style queries' and turn them into the more 'boilerplate and fast' version as a method.
As an example, it will take this:
public class TestSystem : ISystem
{
    public static string SomeExternalSourceSearch(string searchFor)
        => searchFor + " found";

    [Optimize]
    public void Update(SystemProps props)
    {
        var (world, _) = props;

        var query = new QueryDescription()
            .WithAll<TestComponent, OtherComponent>();

        world.Query(query, (Entity entity, ref TestComponent test, ref OtherComponent other) =>
        {
            string searched = Optimizer.OutOfScope(() => TestSystem.SomeExternalSourceSearch("test")); // For any reason

            test.Value += 1;
        });
    }
    public void Draw(SystemProps props, SpriteBatch spriteBatch) { }
}
public struct TestComponent
{
    public float Value;
}
public struct OtherComponent;

(this ISystem is a part of a game I'm making with arch, it is a custom thing for my needs; the 'Optimize' attribute can be applied on any kind of function with as many queries as you would like)
And will turn into this:
public static class ProjectName_ComponentsUpdate_0_Interceptor
{
    [InterceptsLocation(@"C:\(...hiding my directories...)\Components\TestSystem.cs", 26, 15)]
     [MethodImpl(MethodImplOptions.AggressiveInlining)]
    public static void Intercept(this World world, in QueryDescription description, Arch.Core.ForEachWithEntity<ProjectName.Components.TestComponent, ProjectName.Components.OtherComponent> _)
    {
{
var searched=TestSystem.SomeExternalSourceSearch("test");
    foreach(var chunk in world.Query(description).GetChunkIterator())
    {
        var arr = chunk.GetFirst<ProjectName.Components.TestComponent, ProjectName.Components.OtherComponent>();
        foreach(var index in chunk)
        {
            ref var entity = ref chunk.Entity(index);
            ref var test = ref Unsafe.Add(ref arr.t0, index);
ref var other = ref Unsafe.Add(ref arr.t1, index);
        {

            test.Value += 1;
        }        }
    }
}
    }
}

(it's not being generated formatted currently, but it works and kinda the generated code is the same for all instances, so it should not produce any bugs)
So basically, what this does is take the closure AST and turn it into an actual boilerplate-like query, using the closure body as a simple C# block in the generated output. It also replaces any Optimzer.OutOfScope call with an actual out of scope variable, inlining the closure expression as the variable initializer (and the actual variable declaration as the, well, variable declaration).
I made some benchmarks, and it appear to have similar (or better) performance than the source generated queries, and in relation to the closure prototype non-optimized version they have marginal gains, and substantial gains when accessing objects out of the closure (I suppose because of the inlining).
These where some of my tests for it:
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22621.3007/22H2/2022Update/SunValley2)
Intel Core i5-10600KF CPU 4.10GHz, 1 CPU, 12 logical and 6 physical cores
.NET SDK 8.0.101
  [Host]     : .NET 8.0.1 (<IP_ADDRESS>001), X64 RyuJIT AVX2
  DefaultJob : .NET 8.0.1 (<IP_ADDRESS>001), X64 RyuJIT AVX2

Method
Mean
Error
StdDev
Code Size

DealDamageQuery
12.141 ms
0.0529 ms
0.0494 ms
7,815 B

DealDamageQueryOptimized
9.261 ms
0.0355 ms
0.0296 ms
9,577 B

DealDamageManuallyOptimized
9.391 ms
0.1259 ms
0.1178 ms
9,180 B

DealDamageManuallyOptimizedSimpler
10.483 ms
0.0896 ms
0.0794 ms
8,957 B

DealDamageQueryFromArchExtended
10.946 ms
0.0801 ms
0.0749 ms
9,415 B

The 'Query' version is the normal prototype one, the optimized is the prototype one with code generation and my interceptors, the manually optimized one is the version I wrote manually in place, the simpler is not using unsafe and instead querying manually from the entity each iteration, and the last is your version. I think the benchmarks can be enhanced, but it sounds promising from my tests.
I still want to do some improvements here and there, and cover some edge cases (as well as adding compiler errors for non static queries and automatically infering the static method calls to the source type without needing to specify it manually, and add some testing as well), but I thought this would interest you and I'm curious if you would want to export this project if I publish it or is willing to put it inside the extended repository.

It looks incredibly cool. Something I hadn't even thought about.
So it takes a standard World.Query and rewrites it into an optimized version? Does it replace the World.Query or does it just generate the optimized version and make it available? Or does it replace it? Does this only work for static methods or for everything in general?
This is very interesting! :)

This is super cool.
A few questions:

What happens if the lambda captures variables? Is there a way to grab those and put them in the interceptor?
Can the OutOfScope calling requirement be replaced by an automatic parameter-variable generator?
Can the Optimize attribute be removed, to automatically optimize the whole codebase?

So all in all this looks very very promising and I would be happy to either integrate it into Arch.System.SourceGenerator or offer it as a new package. Depending on what makes sense :)
Maybe you could even use similar techniques in some places to get even more out of Arch. We'll have to see about that.
Would you be willing to provide the project and add it to Arch.Extended? :)

So all in all this looks very very promising and I would be happy to either integrate it into Arch.System.SourceGenerator or offer it as a new package. Depending on what makes sense :)
Would you be willing to provide the project and add it to Arch.Extended? :)

Amazing! Yeah, I'm willing to provide it. I've published it to a repository, which I'll link here below for you. This way you can decide which approach you find the best: Integrating with the Arch.System.SourceGenerator or creating it as a new package
Repository
I was also working on some changes like this:

I also made a csproj analyzer to check for the interceptor configuration on the csproj, but it was kinda frustrating because apparently you cannot do code fixes or appropriate infos/warnings/errors in a .csproj, so I later removed it.

Maybe you could even use similar techniques in some places to get even more out of Arch. We'll have to see about that.

Do you have any suggestions about these other places? I'm interested in exploring the possibilities you may have in mind.

I had a quick look at your code and it looks great so far, good work :) I think it would make the most sense as a new package in Arch.Extended.
The only thing I would suggest for such an integration would be to split the code a bit more to make it more readable. You can use Arch.System.SourceGenerator as a guide. A model is created there which is processed further to generate code from it. Makes it a bit more readable (in my opinion). Or what do you think? :)

Hi!
Thanks for reviewing the code! And also apologies for the delayed response, my job made me particularly busy this last week.
I agree with your suggestion on enhancing the code. While I also value the readability of having what I need in one sequential place, I think this code as it is will benefit by being more split and organizing some things.
I'm commited to make these changes and align the style of the code to be more like Arch.System.SourceGenerator. I'll start making these adjustments this weekend when I can dedicate focused time on it.

Hi!
Thanks for reviewing the code! And also apologies for the delayed response, my job made me particularly busy this last week.
I agree with your suggestion on enhancing the code. While I also value the readability of having what I need in one sequential place, I think this code as it is will benefit by being more split and organizing some things.
I'm commited to make these changes and align the style of the code to be more like Arch.System.SourceGenerator. I'll start making these adjustments this weekend when I can dedicate focused time on it.

No problem, we're all busy sometimes! :) That sounds great so far, I can hardly wait. Let me know as soon as you make progress ^^

Hi!
Thanks for reviewing the code! And also apologies for the delayed response, my job made me particularly busy this last week.
I agree with your suggestion on enhancing the code. While I also value the readability of having what I need in one sequential place, I think this code as it is will benefit by being more split and organizing some things.
I'm commited to make these changes and align the style of the code to be more like Arch.System.SourceGenerator. I'll start making these adjustments this weekend when I can dedicate focused time on it.

Had time yet? :)

Hi! Yeah, last week not much hahaha, but I worked a bit on it, and today I finished. I used your project as a reference point and at the same time tried to keep it in line with how it was structured originally. I think it is more readable and easy to follow now! Please, take a look when you have some time and tell me what you think.

I apologize for the late reply, somehow I didn't get a notification. I'll take a look tomorrow and give you some feedback, I'm curious! :)

Hi, I'm back! No worries about the delay.
By the way, in this meantime I also envisioned an interesting thing I think that can get some use in future if I get to develop on it, it would be like a 'layer' on top of the C# compiler that will let developers use roslyn to actually modify code instead of just adding new code, I think it could be good for many things like eliminating the function calls interceptors still need and forcing inlining in some code (akin to what Kotlin does with the inline keyword), or maybe even to make deeper optimizations in the code (theoretically, even macros like in Rust would be possible, although simpler because they would need to have the shape of a method call, because IDE support for custom syntax is another beast). I have some ideas, but I'm still thinking on how it would be structured, but in case it advances I'll experiment with some arch projects to see how much performance it can extract (even if it runs only in release builds, it would be interesting I guess).
But anyway, let me know when you have the feedback of the code, I'm also curious!

I had a look at the code now, all in all it looks good! I would like to integrate it directly, but unfortunately I have a lot on my plate at the moment. But as soon as I have some free time again, I'll take advantage of it. Your other plans also sound very interesting ^^

No problem, thank you very much for the feedback!
I also developed this other concept a bit, like testing with static loop unrooling, and got in some conditions like 3x benefits on performance. I'm still conceptualizing how it would be working in a project-level and the best way to approach it for extensions support. But as you, I'm also being very busy lately, so when I have more free time I plan to proceed the development and test some more interesting concepts!


nullify_blank with type String fails

Hey there, I have found that nullify_blank option does not work with type of String, please see the gist attached:
https://gist.github.com/janjiss/3a09b4a51c8a54ed05c5
Let me know if this is an intentional behaviour or not. Maybe I can make a PR for this.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/13628216-nullify_blank-with-type-string-fails?utm_campaign=plugin&utm_content=tracker%2F144935&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F144935&utm_medium=issues&utm_source=github).

That's intentional, empty strings are not coerced to nils. You can see discussion in the PR which added this feature.

Alright, that makes sense!


Close kafka async producer error and cdc metric missing

What did you do?

Create kafka changefeed
Run workload and at the same time, inject kafka to cdc owner network partition for 40s every 5 miniutes, totally lasted for 1h.
Wait changefeed advance

What did you expect to see?
changefeed should advance finally, and metrics should uploaded correctly.
What did you see instead?
"Close kafka async producer error" error seen in log and cdc metric is missing
[2023/07/04 22:37:12.732 +00:00] [INFO] [processor.go:929] ["Processor drop sort engine successfully"] [namespace=default] [changefeed=kafka-open-protocol-task-1]
[2023/07/04 22:37:12.732 +00:00] [INFO] [processor.go:935] ["Processor try to close agent"] [namespace=default] [changefeed=kafka-open-protocol-task-1]
[2023/07/04 22:37:12.732 +00:00] [WARN] [server.go:498] ["topic handler returned error"] [error="[CDC:ErrWorkerPoolHandleCancelled]workerpool handle is cancelled"] [errorVerbose="[CDC:ErrWorkerPoolHandleCancelled]workerpool handle is cancelled\ngithub.com/pingcap/errors.AddStack\n\tgithub.com/pingcap/errors@v0.11.5-0.20221009092201-b66cddb77c32/errors.go:174\ngithub.com/pingcap/errors.(*Error).GenWithStackByArgs\n\tgithub.com/pingcap/errors@v0.11.5-0.20221009092201-b66cddb77c32/normalize.go:164\ngithub.com/pingcap/tiflow/pkg/workerpool.(*defaultEventHandle).GracefulUnregister.func1\n\tgithub.com/pingcap/tiflow/pkg/workerpool/pool_impl.go:230\ngithub.com/pingcap/tiflow/pkg/workerpool.(*defaultEventHandle).GracefulUnregister\n\tgithub.com/pingcap/tiflow/pkg/workerpool/pool_impl.go:252\ngithub.com/pingcap/tiflow/pkg/p2p.(*MessageServer).run.func2\n\tgithub.com/pingcap/tiflow/pkg/p2p/server.go:275\nruntime.goexit\n\truntime/asm_amd64.s:1598"]
[2023/07/04 22:37:12.732 +00:00] [INFO] [processor.go:941] ["Processor closed agent successfully"] [namespace=default] [changefeed=kafka-open-protocol-task-1]
[2023/07/04 22:37:12.732 +00:00] [INFO] [processor.go:950] ["processor closed"] [namespace=default] [changefeed=kafka-open-protocol-task-1]
[2023/07/04 22:37:12.732 +00:00] [WARN] [server.go:297] ["handler not found"] [topic=changefeed/default/kafka-open-protocol-task-1/agent]
[2023/07/04 22:37:21.466 +00:00] [WARN] [factory.go:210] ["Close kafka async producer error"] [namespace=default] [changefeed=kafka-open-protocol-task-1] [duration=9.149041831s] [error="kafka: Failed to deliver 894 messages."]
[2023/07/04 22:40:07.873 +00:00] [INFO] [grpc_pool_impl.go:244] ["recycle connections in grpc pool"] [address=upstream-tikv-0.upstream-tikv-peer.cdc-testbed-tps-1815963-1-904.svc:20160]
[2023/07/04 22:41:31.735 +00:00] [INFO] [middleware.go:48] [/api/v2/status] [status=200] [method=GET] [path=/api/v2/status] [query=] [ip=<IP_ADDRESS>] [user-agent=Go-http-client/1.1] [client-version=v7.3.0-alpha] [] [duration=35.171µs]
[2023/07/04 22:41:31.747 +00:00] [INFO] [middleware.go:48] [/api/v2/captures] [status=200] [method=GET] [path=/api/v2/captures] [query=] [ip=<IP_ADDRESS>] [user-agent=Go-http-client/1.1] [client-version=v7.3.0-alpha] [] [duration=10.817621ms]
[2023/07/04 22:45:47.388 +00:00] [WARN] [pd.go:152] ["get timestamp too slow"] ["cost time"=1.517581886s]
[2023/07/04 22:45:52.886 +00:00] [WARN] [pd.go:152] ["get timestamp too slow"] ["cost time"=1.01587244s]
[2023/07/04 22:51:16.855 +00:00] [INFO] [gc_manager.go:96] ["update gc safe point success"] [gcSafePointTs=442632815457861795]

Versions of the cluster
[2023/07/04 21:40:07.839 +00:00] [INFO] [version.go:47] ["Welcome to Change Data Capture (CDC)"] [release-version=v7.3.0-alpha] [git-hash=41fda209483e6d0d94cd5e09ce784b692b2a614a] [git-branch=heads/refs/tags/v7.3.0-alpha] [utc-build-time="2023-07-04 11:03:24"] [go-version="go version go1.20.5 linux/amd64"] [failpoint-build=false]

cdc log:
ticdc-0_1815963.log
ticdc-1_1815963.log

/found automation

/severity critical

/assign @hicqu

The case can pass now: https://tcms.pingcap.net/dashboard/executions/plan/1860800.
So we can close it as cant-reproduced.


Bug with Villager Trading

I'm playing on a multiplayer survival world with the Villager Cure Discount Stacking datapack. After trading a few times with a villager, the trading menu for this villager only got messed up. Not sure what to do.

What mods are you using with Legacy4J, besides dependencies? Also, what modloader and version are you using?

I'm only using Legacy4J and Architectury API on Forge. I'm playing on 1.20.4
On Sat, Jun 8, 2024 at 10:46 PM Wilyicaro @.***> wrote:

What mods are you using with Legacy4J, besides dependencies? Also, what
modloader and version are you using?
—
Reply to this email directly, view it on GitHub
https://github.com/Wilyicaro/Legacy-Minecraft/issues/454#issuecomment-2156299781,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BJBPPOBKIJFQNOF37VI5SXTZGPFXZAVCNFSM6AAAAABJAQOS32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJWGI4TSNZYGE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Fixed in version 1.7, thanks for reporting.


Fix "invalid proxy" problem with HTTP Client 5.2.2

HTTP Client 5.2.2 introduced "invalid proxy" problems, affecting go-gchat-notifier-0.5.8
See https://issues.apache.org/jira/browse/HTTPCLIENT-2308

Fixed by #32