[Python][Parquet] timestamp[s] does not round-trip parquet serialization.

Describe the bug, including details regarding any error messages, version, and platform.
Timestamps with second resolution get upcasted to millisecond resolution when serializing and deserializing. They should either round trip, or there should be a warning/error when attempting to serialize them.
from datetime import datetime
import pyarrow as pa
import pyarrow.compute as pc
from pyarrow import parquet

dates = [
    datetime(2021, 1, 1, 0, 0, 3),
    datetime(2021, 1, 1, 0, 0, 4),
    datetime(2021, 1, 1, 0, 0, 5),
]

table = pa.table({"time": pa.array(dates, type=pa.timestamp("s"))})
print(table.schema)  # timestamp[s]
parquet.write_table(table, "timestamp_roundtrip.parquet")
table2 = parquet.read_table("timestamp_roundtrip.parquet")
print(table2.schema)  # timestamp[ms]

Tested with pyarrow 16.0.0
Component(s)
Parquet

I guess this is expected: https://github.com/apache/arrow/blob/main/docs/source/python/parquet.rst#storing-timestamps

Of course one can perform a cast, the issue is that the time resolution of the data carries meaning, which is lost.
If Bob has a timeseries with second resolution and sends it to Alice as a .parquet file, then Alice sees timestamps with millisecond resolution. Alice might append some data that is not rounded to seconds and send the file back to Bob. Now suddenly Bob's pipeline breaks because he attempts to safe-cast to second resolution.
So, if pyarrow can't support round-tripping of timestamp[s], then imo there should be a warning when attempting to serialize timestamp[s] data, or even a straight up exception.

ParquetWriter currently has the option coerce_timestamps, but it is enabled by default and cannot be disabled. As an end-user, I'd expect serialization/deserialization to not silently mess with the data types.

"SECOND" have no equivalent parquet logical type, see: https://github.com/apache/parquet-format/blob/master/LogicalTypes.md#deprecated-timestamp-convertedtype . This is the main reason for this
"coerce_timestamps" current not support second, this may need some extra work

Maybe you can applying "cast" as a workaround first

So, if pyarrow can't support round-tripping of timestamp[s], then imo there should be a warning when attempting to serialize timestamp[s] data, or even a straight up exception.

Personally, I think a warning might be annoying for most users where this difference in timestamp unit is not critical.
(we could certainly better document this limitation of the Parquet file format in our python docs)
For example, until very recently, we were also casting nanoseconds to microseconds by default (because only more recent Parquet versions support nanoseconds, and for compatibility with other readers it was best to not yet use this feature). But warning for this (except if actual data would be truncated) would be rather noisy (especially given pandas using nanoseconds by default; this is of course not the case for seconds)
In theory we could actually restore the original seconds resolution upon reading the Parquet file, because we store the original Arrow schema in the Parquet metadata (e.g. to allow restoring timezone). But, that would mean we do an actual cast after reading incurring a cost for everyone (and not only for those who manually choose to do this)
We could also add a keyword to control this, although I am hesitant to do this given we already have so many keyword (and also, if this would actually preserve the current behaviour as default, you still need to do something manually to get the roundtripping, and then you could also just cast manually)


Unicode combining characters cause unnecessary warnings

On formatting the following code with rustfmt:
fn main() {
    println!("{}", "क्षिक्षिक्षिक्षिक्षिक्षिक्षिक्षिक्षिक्षि");
}

It formats it as:
fn main() {
    println!("{}",
             "क्षिक्षिक्षिक्षिक्षिक्षिक्षिक्षिक्षिक्षि");
}

but outputs: src/lib.rs:3: line exceeded maximum length (sorry), when the line is clearly shorter than the threshold.
I think the problem lies in that rustfmt uses len_utf8() to calculate line length. It should probably use unicode grapheme clusters, but the underlying string buffer type doesn't support this.

Yeah, this is annoying, sorry.
Dup of #6


blob.upload_from_filename blocks for upwards of an hour.

I am using the following code to upload files to GCS.
    blob = bucket.blob(gcs_filepath)
    logging.info('Uploading file "%s" to "%s".', filepath, gcs_filepath)
    blob.upload_from_filename(filepath)
    logging.info('Uploaded file "%s" to "%s".', filepath, gcs_filepath)

This works most of the time. However, it has been stuck uploading for the last hour and has not raised an exception yet. It seems like this method should have a timeout or something for situations like this. It would also be helpful if it had the option to log the progress of the method for further diagnosis.

Duplicate of #3442, which has more information.

Hmm, not a duplicatie.

@tseaver @tweeter0830 It may be somewhat of a duplicate if the real answer is that httplib2 + threading == a bad time.

I am using this is a thread.

@tweeter0830 Or switch to using a separate Client instance per thread (they should be relatively cheap to construct).

@tweeter0830 I'm closing this out as that is the culprit. As @tseaver said, you'll want Client instances to be thread local (for now). We will soon be dumping httplib2 altogether (for requests).

I moved the client into a single thread and I am still having this issue.

@tweeter0830 Can you provide some example code so we can discuss the implementation?

I'm seeing similar issues. I'm creating new Client Objects each time I want to upload a file.

Thanks for the snippet @GEverding. I'm not a regular user of Celery so I'm not sure what the implications are here. Are you saying you put this in a Python module at global scope and then point Celery at that module?

@dhermes Yes the function is in the global scope. We run each task on a separate process so there should only be one thread calling this piece of code.

Sorry, I was mistaken. I appears to have fixed the issue.

same problem. 100mb upload ~3-4 minutes. using webbrouser gui ~less than 20 sec
storage_client = storage.Client()     bucket = storage_client.get_bucket(GOOGLE_BUCKET)     blob = bucket.blob(file_name)     blob.upload_from_filename(os.path.join(local_path, file_name))

@kain64 It appears you have a different issue than the original reporter. It's likely that the webbrowser GUI is using multiple threads to upload the file in chunks simultaneously (but I'm not sure).
If you'd really like fast uploads, I recommend looking into gsutil (we would like to speed up our uploads, but gsutil is fast today).


StringConcatentation in InvocationExpression

ExceptionAssert.Throws<RoutePatternException>(
    () => RoutePatternParser.Parse(template),
    "There is an incomplete parameter in the route template. Check that each '{' character has a matching "
    + "'}' character."
);
// should probably be
ExceptionAssert.Throws<RoutePatternException>(
    () => RoutePatternParser.Parse(template),
    "There is an incomplete parameter in the route template. Check that each '{' character has a matching "
        + "'}' character."
);

That's very much a maybe. We indent binary operators normally right? This might not be a bad thing in functions with lots of parameters - it would make it clear this is not a new parameter when scanning vertically down quickly.

#37 does take care of indenting the +


Range-Error in sdStreams.pas when Element.text is greater than 32k

Hi, there is a problem within the function tsdBufferWriter.write:
A tByteArray is used for the WriteChunk call but the tByteArray has a limit of 32k. In my case, I have disabled the ChunkWrites:
function TsdBufferWriter.Write(const Buffer; Count: Integer): Longint;
var
Idx, Siz: integer;
begin
// index in the source buffer
Idx := 0;
// remaining size
Siz := Count;
fSource.WriteBuffer(Buffer, Count); // write everything at once
{ // code starting from here makes problems with big content!
// surplus
while FRawPosition + Siz >= FChunkSize do
begin
Move(TByteArray(Buffer)[Idx], FRawBuffer[FRawPosition], FChunkSize - FRawPosition);
WriteChunk(FChunkSize);
dec(Siz, FChunkSize - FRawPosition);
inc(Idx, FChunkSize - FRawPosition);
FRawPosition := 0;
end;
// copy the raw buffer
Move(TByteArray(Buffer)[Idx], FRawBuffer[FRawPosition], Siz);
}
inc(FRawPosition, Siz);
Result := Count;
end;

Changed all :integer declarations in the unit to :longint and the problem is gone so far.

Changed all :integer declarations in the unit to :longint and the problem is gone so far.

But LongInt is equal to Integer under Windows, are you sure that fixed the problem?


Docs: document physics bake in artist pipelines

There is light but unintuitive mention of this + a link in the manifest:
https://docs.webaverse.com/docs/create/manifest-api
No mention in the artist pipelines:
https://docs.webaverse.com/docs/create/import-blender

https://docs.webaverse.com/docs/create/bake-physics


User search endpoint convert mongo query to beanie

users/search
users/prefixSearch

I saw @lmarini you already converted the endpoints to beanie. Closing this issue


Piraeus Annual Review Evaluation and next steps

Related: https://github.com/cncf/toc/pull/1119/files. & https://github.com/piraeusdatastore/piraeus/issues/147
I am the TOC member assigned to conduct the Evaluation of Piraeus' Annual Review.   At this time the TOC is requesting a roadmap that details the dates and actions for the project to improve its overall health and continued progress towards incubation.  This roadmap should address the findings below with anticipated dates of resolution. The Roadmap is due to the TOC by January 31st 2024 and may be provided as a comment on this issue within the TOC repo and tagging @TheFoxAtWork.
Please note the findings listed below are not all encompassing and are intended to focus specifically on bringing the project into alignment with expectations of a Sandbox project. For more information, please refer to the TOC Archival process.
The following were findings from the evaluation of the Annual Review:

Project needs to adopt the CNCF code of conduct. The governance file states it is aligned with the CNCF code of conduct however the CoC in the repository is the contributor covenant. Currently, TAG Contributor Strategy recommends projects link directly to the CNCF CoC within their own CoC file so they inherit any changes made in the future.
While there are new contributors to the project, it does not appear to be achieving the anticipated velocity to make substantial progress towards the stated goals and towards incubation.
While the project's README indicated active discussions take place in Slack, a quick review of Piraeus slack shows very little discussion on going beyond periodic requests for assistance in the default channel (about once a week).  This is not indicative of a growing community.
The project does not appear to hold meetings to engage in synchronous discussions with contributors, adopters, community members, perform project planning, or any other content. If meetings or discussions are happening in other channels, or platforms, the project must update its documentation to reflect these discoverable and public communication mediums.
The project does not appear to engage in any long term planning.
While development is ongoing, there does not appear to be additional planning towards future releases, no open issues tracking progress or discussions on outstanding areas of improvement, etc. It does not appear tags or milestones are used.
issues with the project have been open for an extensive period of time with discussions, if they occurred, remaining unresolved.

Additional recommendations for the project:

review the definition of adopters in the TOC repo and update the adopters listing for this project to ensure those types of adopters are properly captured. A few of the adopters listed do not appear to meet this definition.
Engage with TAG Contributor Strategy to explore opportunities to increase the pool of contributors, identify potential emerging maintainers, improve retention and increase activity of existing contributors
Engage with TAG Storage to determine any additional insights and recommendations the TAG may have in bringing closure to its open goals and work areas.

@WanzenBug @alexzhc @JoelColledge @rck checking in here on the status of this.

Project needs to adopt the CNCF code of conduct. The governance file states it is aligned with the CNCF code of conduct however the CoC in the repository is the contributor covenant. Currently, TAG Contributor Strategy recommends projects link directly to the CNCF CoC within their own CoC file so they inherit any changes made in the future.

Addressed with 99a926d322bdbff9bd8152f139563d47e88caa03

While there are new contributors to the project, it does not appear to be achieving the anticipated velocity to make substantial progress towards the stated goals and towards incubation.

Thank you for pointing this out. Our expectation with making this a CNCF (sandbox) project is to increase the velocity.

While the project's README indicated active discussions take place in Slack, a quick review of Piraeus slack shows very little discussion on going beyond periodic requests for assistance in the default channel (about once a week).  This is not indicative of a growing community.

Thank you for pointing this out. That is a consequence of the README being outdated. Addressed that with d77d8cf080dbbe5e7809d1e928e6ee423e641c9b

The project does not appear to hold meetings to engage in synchronous discussions with contributors, adopters, community members, perform project planning, or any other content. If meetings or discussions are happening in other channels, or platforms, the project must update its documentation to reflect these discoverable and public communication mediums.

Piraeus Datastore is just a glue component between LINSTOR and Kubernetes. People interested in Piraeus Datastore are also interested in LINSTOR and DRBD. LINBIT organizes about 4 community meetings every Year.
In these meetings we regularly have updates about the Pireaus Operator and a synchronous live discussion in a Zoom meeting that is also live streamed via YouTube.
Addressed with d77d8cf080dbbe5e7809d1e928e6ee423e641c9b

The project does not appear to engage in any long term planning.

Piraeus Datastore’s long-term plan is to stay current with Kubernetes, LINSTOR, and DRBD developments. I think that is obvious for people looking at it from a technical perspective.

While development is ongoing, there does not appear to be additional planning towards future releases, no open issues tracking progress or discussions on outstanding areas of improvement, etc. It does not appear tags or milestones are used.

Frequently, Piraeus Datastore’s releases are triggered by LINSTOR releases. I think that is obvious for people looking at it from a technical perspective.

issues with the project have been open for an extensive period of time with discussions, if they occurred, remaining unresolved.

We like to keep issues open until the underlying issues are resolved or the original author marks the issue as resolved. Oftentimes, this means the issue stays open after initial activity: we try to resolve all reported issues, but we sometimes have a hard time pinpointing the reported issues. In that case, we are dependent on the creator to provide enough information.
Unlike many Kubernetes-related projects, we do not deploy a bot that automatically closes issues after a set period of inactivity. If that is desired, we can set it up.
PS: We love creating great software, but we need help with foundation bureaucracy.

@Philipp-Reisner  Thank you for taking the time to respond and thank you for quickly addressing those recommendations.

Our expectation with making this a CNCF (sandbox) project is to increase the velocity.

This is a reasonable, Sandbox projects are expected to experiment, innovate, and mature towards incubation. However projects are expected to take steps towards incubation, build a sustainable community of contributors and maintainers, and continue to mature the technology alongside their development practices. For some projects, that velocity may be slower due to dependencies or alignment with other projects - this is fine. We want to ensure that our sandbox projects are set up for success and heading in the right direction, thus our periodic check-ins (such as what spawned this Issue).

Piraeus Datastore’s long-term plan is to stay current with Kubernetes, LINSTOR, and DRBD developments. I think that is obvious for people looking at it from a technical perspective.

I genuinely believe every project in the CNCF is intending to stay current with developments in the projects they are dependent upon or interoperate with. The TOC leverages long-term planning as an indicator of evolving project maturity.
In some cases, potential contributors look at project planning to understand if a particular feature or proposal is already planned to be worked, underway, or delayed until a future release. Visibility and transparency into where the project is headed and the open work before them is a good mechanism to attract potential contributors and adopters.

Frequently, Piraeus Datastore’s releases are triggered by LINSTOR releases. I think that is obvious for people looking at it from a technical perspective.

I would recommend adding additional documentation describing the release process for the project so newly come contributors or interested community members can learn about the process and support the maintainers in conducting releases for the project. Kubernetes SIG-Release has a lot of good information for the K8s project does this, it is a heavy for a project like Piraeus however there may be good information for the project to use.

We like to keep issues open until the underlying issues are resolved or the original author marks the issue as resolved. Oftentimes, this means the issue stays open after initial activity: we try to resolve all reported issues, but we sometimes have a hard time pinpointing the reported issues. In that case, we are dependent on the creator to provide enough information.

Makes complete sense, does Piraeus plan to work on all open issues or are some slated for work after certain LINSTOR releases make a feature set or capability available? Its these kinds of planning and engagement activities we look for as indicators of maturity towards incubation.  I would recommend adding some clarity to the contributor guide around this to set expectations with individuals submitting issues and PRs (there is a lot of good content in the contributing guide but additional clarity in how the project manages issues and PRs for planning releases is always beneficial).

Unlike many Kubernetes-related projects, we do not deploy a bot that automatically closes issues after a set period of inactivity. If that is desired, we can set it up.

That is up to the project to determine. If you are facing significant issue sprawl and there are known issues that aren't going to be worked, an inactivity bot can take some of the burden off maintainers in closing them, particularly if the submitter is no longer responsive. It just depends on how the project chooses to perform and subsequently document their issue and PR management activities.

PS: We love creating great software, but we need help with foundation bureaucracy.

Fantastic Piraeus love making great software!  Amazing cloud native projects have wonderful documentation to go with their great software, both for their current and potential contributors looking to get more involved in the project, as well as for adopters and their organizations looking to understand more about the project, its processes, how it functions, etc. This can support adopters in making informed decisions about the project before committing to a cycle of development, integration and testing, and finally production deployment.
Given your request for assistance in understanding the criteria and expectations for projects in the CNCF, I would recommend reaching out to TAG Storage and participating in one of their meetings as well as reaching out to TAG Contributor Strategy to talk through some of potential discoverability and visibility recommendation which remove ambiguity from the project documentation and processes. CC TAG Storage Chairs: @chira001 , @raffaelespazzoli , @xing-yang & TAG CS Chairs: @jberkus , @CathPag , @geekygirldawn
Regarding the obvious nature of discerning project activity, direction, and planning:
Although these project areas may be obvious to maintainers, it may not be to individuals who are not involved in the day-to-day functions and operations of the project, individuals like users or other engineers looking to contribute - particularly those individuals interested in contributing to a project but are hampered from doing so by the lack of specificity or explicitness in their documentation on how to engage.
I didn't see you listed as a maintainer for the project @Philipp-Reisner, if this is a role you have with the project would you also ensure the MAINTAINERS.md file is up-to-date based on the project's governance?

Hi @Philipp-Reisner, let us know if you want to come to one of TAG Storage meetings and discuss about Piraeus.
cc @chira001  @raffaelespazzoli

Sorry for the late response.

The TOC is requesting an update from the project on its current lack of activity and alignment with CNCF project expectations. Is this project still active?

Yes it is still active. Just last week, we launched an update to our documentation page: https://piraeus.io/docs/
We've also had a presence at Open Source Summit Europe, including a talk on how we integrate Kustomize with our Piraeus Operator.

it appears only components supporting LINSTOR and DRBD are active.

Sorry to be snide here, but this is like saying there has been not much activity in the Rook project apart from components supporting Ceph and NFS. Now of course we are talking about completely different project sizes here.
LINSTOR and DRBD are the core of Piraeus Datastore. It's what makes it run. So of course the main activity will be focused on them.


Do not check with React.Children.only

<EMAIL_ADDRESS>allows us to render strings, numbers, and arrays. But this line kills it.
Isn't return this.props.children(this.state.currentStyle); enough? React pre 0.16 already throws error about invalid children types

ReactMotion expects only one child element that should be a function, so check is still completely legit


Allow posting of multiple sensor values in a single request

As per information I got from Jan the API currently only allows posting a single value per request.
Please allow posting of multiple values from different sensors in a single request.

Added new endpoint /boxes/:boxId/data which allows posting arrays of json data
https://github.com/sensebox/OpenSenseMap-API/blob/master/app.js#L557-L567


Fix navigation on PageProposal

to

Thx for going the extra mile with multiple screenshot. This makes it really easy to understand the change!


VectorTiles - fade transition

Is it possible to have fade transition when changing vector tiles, or at least when Text labels appear and disappear on different zoom levels (difference is visible in these screenshots - 1st one is OpenLayers, and 2nd one is MapBox).

Currently this is not possible. The way the renderer is set up, and given the low frame budget we have to render anything, this would not work well with the current Canvas 2D renderer. We know that this would be a nice improvement, but please don't expect it to happen any time soon. If someone wants to give it a try, we'd of course appreciate a pull request, and I should be able to provide a little guidance.

@ahocevar  Can you pls. tell me which part of the code to look into (which functions)?

@bojanv55 That would be in src/ol/renderer/canvas/VectorTileLayer, in the renderFrame method or functions called by it.

I was just now trying to make something usable. Had to go over the code since I cannot find documentation nowhere. The thing is that I have separate VectorLayer with labels, so I need only to animate that one.
I saw that inside Zoom.js I can adjust for debug purposes duration of zoom:
 view.animate({
                    zoom: newZoom,
                    duration: 1000,// this.duration_,
                    easing: easeOut,
                });

Then I found out that text labels are actually scheduled for rendering inside TextBuilder.js as
this.instructions.push([CanvasInstruction.DRAW_IMAGE

which is in the end rendered inside Executor.js :
case CanvasInstruction.DRAW_IMAGE:

Now, the problem I have is that Zoom.js animation is already complete (even if I put it to 1 second), and only then I have I think 2 frames of this DRAW_IMAGE animation. Is it possible to make this longer?
But even with 2 frames, the effect looks much better as you can see:

Currently there is no way of knowing when a label is showing up for the first time, because we do not track labels throughout the render process. Label decluttering is done together with symbol decluttering for every frame, and there is no information about what was decluttered in the previous frame. But the decluttering process will lead to the same result for a subsequent frame when it has the same center and zoom as the previous frame. Assuming that center and zoom do not change during the fade-in (which seems to be the case in your current implementation anyway), that could help. Fade-out of previously rendered labels is probably more tricky. And you always have to keep in mind that labels and symbols are decluttered in the same process, so I think it makes sense to do fade in/out also for symbols.

OK, I think I have some demo version working (my branch here https://github.com/bojanv55/openlayers/tree/Issue-12643).
Seems much nicer than no-fade version :)

I only did this for polygon and DRAW_IMAGE, not sure if it has to be done for more Geometries or layers. You can check the code and give some advice (there is also working example in that branch vector-label-animation.html).


Bug: cleardb command fails with ProtectedError when TransactionItem objects exist

What are you trying to achieve?
Add this code to cleardb command before executing orders deletion:
TransactionItem.objects.all().delete()
self.stdout.write("Removed transaction items")

Add proper unittest to prevent similar issues when new models are implemented
Steps to reproduce the problem

Setup Saleor v3.4.0 or higher
Run checkouts with payments to force TransactionItem objects creation
Run ./manage.py cleardb

What did you expect to happen?
TransactionItem model which has foreignKey to Order with on_delete=PROTECT
https://github.com/saleor/saleor/blob/be09b6c9435bc0445dea89a05af0dbe8d8f7460e/saleor/payment/models.py#L76
This relation block deleting orders in cleardb command when TransactionItem objects exists in the database.
ProtectedError comes from this line:
https://github.com/saleor/saleor/blob/be09b6c9435bc0445dea89a05af0dbe8d8f7460e/saleor/core/management/commands/cleardb.py#L55
Logs
ProtectedError
("Cannot delete some instances of model 'Order' because they are referenced through protected foreign keys: 'TransactionItem.order'.", {<TransactionItem: TransactionItem object (1)>, <TransactionItem: TransactionItem object (2)>, <TransactionItem: TransactionItem object (3)>})

saleor/core/management/commands/cleardb.py in handle at line 55
django/core/management/base.py in execute at line 398
django/core/management/base.py in run_from_argv at line 354
tenants/management/commands/domain_command.py in run_from_argv at line 51
django/core/management/__init__.py in execute at line 413
django/core/management/__init__.py in execute_from_command_line at line 419
manage.py in <module> at line 10

Environment
Saleor version: 3.11.5
OS and version: Saleor Cloud
Bug is present since:
https://github.com/saleor/saleor/pull/9564 https://github.com/saleor/saleor/releases/tag/3.4.0

This is now fixed in 3.14 and higher.


timeout waiting for 94

➜  daly_bms_bt git:(main) ✗ ./daly_bms_bt.py --bt 46:64:01:XX:XX:XX --hci hci1 --mqtt-user tempuser123--mqtt-password tempuser123 --mqtt-broker <IP_ADDRESS>
INFO     [daly_bms_bluetooth.py:24] Set up Bleak client, adapter hci1
INFO     [daly_bms_bluetooth.py:46] Bluetooth connecting...
INFO     [daly_bms_bluetooth.py:52] Bluetooth connected
WARNING  [daly_bms_bluetooth.py:134] Timeout while waiting for 94 response
WARNING  [daly_bms_bluetooth.py:134] Timeout while waiting for 94 response
WARNING  [daly_bms_bluetooth.py:134] Timeout while waiting for 94 response
ERROR    [daly_bms_bluetooth.py:77] 94 failed after 3 tries
ERROR    [base_events.py:1758] Task exception was never retrieved
future: <Task finished name='Task-1' coro=<main() done, defined at /home/adminsshuser/daly_bms_bt/./daly_bms_bt.py:123> exception=TypeError("a bytes-like object is required, not 'coroutine'")>
Traceback (most recent call last):
File "/home/adminsshuser/daly_bms_bt/./daly_bms_bt.py", line 132, in main
await con._data_point("Status", await con.bt_bms.get_status())
File "/home/adminsshuser/daly_bms_bt/modules/daly_bms_bluetooth.py", line 179, in get_status
return super().get_status(response_data=response_data)
File "/home/adminsshuser/daly_bms_bt/modules/daly_bms.py", line 252, in get_status
parts = struct.unpack('>b b ? ? b h x', response_data)
TypeError: a bytes-like object is required, not 'coroutine'
/usr/lib/python3.10/asyncio/base_events.py:1910: RuntimeWarning: coroutine 'DalyBMSBluetooth._read_request' was never awaited
handle = None  # Needed to break cycles when an exception occurs.
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
^CINFO     [daly_bms_bt.py:188] Keyboard break

➜  daly_bms_bt git:(main) ✗ ./daly_bms_bt.py --bt 46:64:01:XX:XX:XX --hci hci1 --mqtt --mqtt-user testuser123--mqtt-password testuser123--mqtt-broker <IP_ADDRESS> --log-level debug --keep
DEBUG    [daly_bms_bt.py:180] MQTT connecting
DEBUG    [client.py:2529] Sending CONNECT (u1, p1, wr0, wq0, wf0, c1, k60) client_id=b''
INFO     [daly_bms_bluetooth.py:24] Set up Bleak client, adapter hci1
DEBUG    [daly_bms_bt.py:128] Starting oneshot
INFO     [daly_bms_bluetooth.py:46] Bluetooth connecting...
INFO     [daly_bms_bluetooth.py:52] Bluetooth connected
DEBUG    [daly_bms_bluetooth.py:82] -- 94 ------------------------
DEBUG    [daly_bms.py:67] w a58094080000000000000000c1
DEBUG    [daly_bms_bluetooth.py:130] Waiting...
WARNING  [daly_bms_bluetooth.py:134] Timeout while waiting for 94 response
DEBUG    [daly_bms_bluetooth.py:90] got False
DEBUG    [daly_bms_bluetooth.py:72] 1. try failed, retrying...
DEBUG    [daly_bms_bluetooth.py:82] -- 94 ------------------------
DEBUG    [daly_bms.py:67] w a58094080000000000000000c1
DEBUG    [daly_bms_bluetooth.py:130] Waiting...
WARNING  [daly_bms_bluetooth.py:134] Timeout while waiting for 94 response
DEBUG    [daly_bms_bluetooth.py:90] got False
DEBUG    [daly_bms_bluetooth.py:72] 2. try failed, retrying...
DEBUG    [daly_bms_bluetooth.py:82] -- 94 ------------------------
DEBUG    [daly_bms.py:67] w a58094080000000000000000c1
DEBUG    [daly_bms_bluetooth.py:130] Waiting...
WARNING  [daly_bms_bluetooth.py:134] Timeout while waiting for 94 response
DEBUG    [daly_bms_bluetooth.py:90] got False
DEBUG    [daly_bms_bluetooth.py:72] 3. try failed, retrying...
ERROR    [daly_bms_bluetooth.py:77] 94 failed after 3 tries
ERROR    [base_events.py:1758] Task exception was never retrieved
future: <Task finished name='Task-1' coro=<main() done, defined at /home/adminsshuser/daly_bms_bt/./daly_bms_bt.py:123> exception=TypeError("a bytes-like object is required, not 'coroutine'")>
Traceback (most recent call last):
File "/home/adminsshuser/daly_bms_bt/./daly_bms_bt.py", line 132, in main
await con._data_point("Status", await con.bt_bms.get_status())
File "/home/adminsshuser/daly_bms_bt/modules/daly_bms_bluetooth.py", line 179, in get_status
return super().get_status(response_data=response_data)
File "/home/adminsshuser/daly_bms_bt/modules/daly_bms.py", line 252, in get_status
parts = struct.unpack('>b b ? ? b h x', response_data)
TypeError: a bytes-like object is required, not 'coroutine'
/usr/lib/python3.10/asyncio/base_events.py:1910: RuntimeWarning: coroutine 'DalyBMSBluetooth._read_request' was never awaited
handle = None  # Needed to break cycles when an exception occurs.
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
^CINFO     [daly_bms_bt.py:188] Keyboard break

Error handling is kind of rough in that script, agreed, but won't fix (error handling) as I switched to cable-serial-USB connection in my setup.
For this specific issue - there seems to be a communication issue between py-script (it doesn't get any response -> timeout), bluetooth (somewhere, I'm no expert here) and/or daly bms-system.
I have no daly bms in use anymore and did not follow their firmware updates (if any, which might trigger the need for changes here).
So, sorry, won't fix, as this is more a "proof of concept" for my personal setup. Feel free to fork and continue to develop.


feat: add separation between card elements static and reference values

Description

Add separation where create and update element values are static and setValue values are reference

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

[x] Not Applicable

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


sendAudio always send as audio/mpeg

I have read:

Usage information
Help information

I am using the latest version of the library.
Expected Behavior
let file = "...audio.opus"
let msg = await this.bot.sendAudio(msg.chat.id, file, {}, {
    filename: 'audio.opus',
    contentType: "audio/x-opus+ogg"
})
console.info(msg.audio.mime_type) // -> audio/x-opus+ogg

Actual Behavior
let msg = await this.bot.sendAudio(msg.chat.id, file, {}, {
    filename: 'audio.opus',
    contentType: "audio/x-opus+ogg"
})
console.info(msg.audio.mime_type) // -> audio/mpeg

this modules is always sending audio as audio/mpeg, so Telegram Client cannot recognize at 100% the content of file (example artist, album, etc) but if send the same file using telegram client, the files got the correct mimetype, and the correct metadata.
I also setted this environment variables before load module, without luck:
process.env.NTBA_FIX_319 = "1"
process.env.NTBA_FIX_350 = "1"

Steps to reproduce the Behavior
Send a .opus file using this module

sendAudio unfortunetely doesn't support opus, only m4a and mp3 files, see https://core.telegram.org/bots/api#sendaudio


alpine: force all packages to be upgraded

From http://wiki.alpinelinux.org/wiki/Upgrading_Alpine

The --available switch is used to force all packages to be upgraded,
even if they have the same version numbers.
Sometimes changes in uClibc require doing this.

It seems prudent to demonstrate canonical upgrade procedure in a security tool.

Hi and thanks for the PR,
as far as I can tell --available is recommended practice when upgrading to a new version of Alpine, but this isn't the case when building the image.
According to http://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management#Upgrade_a_Running_System
apk update && \
apk upgrade

will suffice.

ack. it's never been clear to me which was best practice to upgrade alpine.
i have observed that --- occasionally --- musl has an upgrade waiting on top of the base image.
@progrium @andyshinn are more familiar with the alpine image and may be willing to chime in.

Why even upgrade Alpine during image building anyways? Is this for security reasons? If so, wouldn't it be better the base image have the security implications handled instead?

Is this for security reasons?

mostly. some of us are obsessive-compulsive about updating.

wouldn't it be better the base image have the security implications handled instead?

that gets murky and leads to a discussion of tag proliferation.
on the one hand, it's nice if the base image is always up-to-date.
on the other hand, nightly builds of the base image have the potential to break reproducibility of downstream builds.
i thought there was a previous discussion of frequent builds at gliderlabs/docker-alpine but now i can't find it.
back to the point...let's pretend we do want to upgrade in the downstream image.
let's further pretend that an updated version of uclibc is in main relative to the base image.
is the --available switch recommended in that case? the alpine wiki is slightly ambiguous about it.
sorry if this PR is less than optimal for the discussion.
(in hindsight i should have just emailed the alpine list)

I think --available generally helps when there were breaking changes to musl or uClibc and packages had to be recompiled against the updated libc. In this case, upgrade would get you the updated libc and not the recompiled packages because their versions were not bumped.
This scenario can happen in edge. But I don't think Alpine would let it happen within a specific version (such as 3.2). Breaking changes are more likely to be going from 3.2 to 3.3. In that case you would just be changing the image tag though so I don't know that --available makes sense in this case.

that certainly makes sense. thanks for chiming in!


Refactor

Nouns:
button, textbox, string, flashlight, sensor, AmbientLightSensor, lightintensity, luminosity, flux, hardware, communicationsystem, receiver, transmitter, sensorreading, encoding, settings, status, save
Verbs:
Encode, decode, turnon, turnoff, read, control, display, convert, transfer, transmit, receive, stop, start

Begin
prepare
receive
generate
accept
communicate
indicate
compare
differ
react
replace
enable
send
confirm
calculate
arrive
inform
translate
read
start
show
check
remove
watch
stop
save
fail
handle
press
finish
wait
display
cancel
connect
fix
size
sense
speed
exchange
complete
condition


Cilium 1.15 upgrade: Include NetworkPolicy CIDR fix setting

This is a placeholder / reminder that when Cilium 1.15 is released and is going into KubeOne (1.8? 1.9?), please make sure to include the fix for https://github.com/cilium/cilium/issues/20550 - i.e. make sure (and validate!) that the setting to enable the fix is turned on.

as per discussion with @embik, this issue is not considered a release blocker anymore

/remove-lifecycle stale


helm chart for KubeArmor

Thanks @SujithKasireddy for the PR. The DCO CI check is failing since we require signed commits .. Can you amend the commit message with the Signed-Off tag? Please click on DCO Details to check further.

Thanks @SujithKasireddy for the PR. The DCO CI check is failing since we require signed commits .. Can you amend the commit message with the Signed-Off tag? Please click on DCO Details to check further.

Hi @nyrahul Signed-off from commit messages.

Can we please keep the helm charts in deployments/helm/ folder?
Please provide deployments/helm/README.md that explains how to use it.

@nyrahul I have made changes as you requested, please review it

Which environment is this helm chart based on? Don't we need to have multiple conditions to change mounting paths (to support multiple environments)?

@nam-jaehyun I have made helm chart using generic template

@SujithKasireddy Can you have another option "--set environment.name={generic,docker,k3s,microk8s,minikube,gke,eks} (default: generic)"?
@nyrahul How do you think about this option?

@SujithKasireddy Can you have another option "--set environment.name={generic,docker,k3s,microk8s,minikube,gke,eks} (default: generic)"? @nyrahul How do you think about this option?

Yes, this would be needed. I was not aware that we can have conditional statements inside helm.

Please squash multiple commits into a single commit. Thanks

@SujithKasireddy can you refer to this commit, which is the one that removed helm charts a long time ago?

@SujithKasireddy can you refer to this commit, which is the one that removed helm charts a long time ago?

@nyrahul @nam-jaehyun I have updated helm chart for all environments. Please review it

@SujithKasireddy , please squash the commits into a single one.

@SujithKasireddy , please squash the commits into a single one.

@nyrahul I have pushed it  as one commit.

Tested for k3s env and namespace option and it works fine. Thanks


Work around requirement that objects match exactly

what

Work around requirement that objects match exactly when used in a tertiary conditional expression

why

We do not want to predict or limit the structure of a remote state

references

https://github.com/hashicorp/terraform/issues/23364

/test all


Integrate yaegi with delve -> adds yaegis' interpreter to a debug session

Proposal
Wouldnt it be possible to combine yaegi with delve such, that in a debug session e.g. halted at a break point, all available variables etc. (which could be retrieved from dlv) are available in an interpreter session?
Start your dlv debug session (e.g. in vscode), halt at a breakpoint, execute interpreted go code, using local variables of the debugged code, ideally also being able to call the programs other functions.
Background
When debugging in an interpreter language, one has the possibility to execute some commands on the current program state (e.g. export some variables for plotting, working with variables etc.).
To me it seems that, based on yaegi, this should be possible or do I have a misunderstanding?
Workarounds

@alexpGH fyi, I started working on a OSS project (palimbo)with a similar goal.  I am working on an IDE extension that allows for modifications of functions , rewinding stacks and proceed with changed behaviour or changed state. I hope the yaegi debugger can do the heavy lifting.

You can also use https://github.com/traefik-contrib/yaegi-debug-adapter

You can also use https://github.com/traefik-contrib/yaegi-debug-adapter

Hi maintainers and contributors, I started working on the idea I mentioned and would like discuss ideas and challenges I find. What medium is best to use to ask those questions? Slack? other?

Hi, I started working on the idea I mentioned and would like discuss ideas and challenges I find. What medium is best to use to ask those questions? Slack? other?

The best place will be https://github.com/traefik/yaegi/discussions


Fix: Allow colors to be updated dynamically

Issue: If color is updated in state, or changed via hot reload, the color stays as what it was initially.
Example:
<RemixIcon name="account-box-fill" color="black"/>

This will initially render black as expected. But if we then change it from "black" to "white", the component does not rerender. In expo, you have to restart the app in order to see the change. Adding the color to the dependency array fixes this and automatically updates the color as it changes.

@rudziktv


PDX Services API

Description:
As a PDXFinder developer, I want PDXFinder to have API to enhance PDXFinder functionality as a resource.
Architectural changes discussed: https://docs.google.com/document/d/1jR6O31RcdeOj9h8FPqk2z7132WDcEsQo1wmp5DarSNU/edit#
An old Jira ticket PDXI-772
Acceptance criteria:

[ ] implementation discussed
[ ] API in place

Done, closing.


VS2022 17.2.1 Build started... and freeze

Describe the bug
Can't build blank template project.
Same issue with another more evolved project.
On another computer with older version of VS 2022 it worked.
Steps to reproduce the bug
Create a new Windows App SDK project in Visual Studio and try to build it.
Expected behavior
Project should build.
Screenshots
No response
NuGet package version
1.0.0
Packaging type
Packaged (MSIX)
Windows version
Windows 10 version 20H2 (19042, October 2020 Update)
IDE
Visual Studio 2022 v17.2.2
Additional context
No response

I tried to reproduce this problem using VS 17.2.2, and I had no issues. The fact that you said this works on another computer with another version of VS indicates to me that this isn't a Windows App SDK issue, but is an issue with either VS or your specific installation.
You could try reinstalling VS on that machine, and if that doesn't work, I'd recommend you report a problem in VS. Perhaps you could try some troubleshooting using https://docs.microsoft.com/en-us/answers/questions/276699/visual-studio-always-hangs-and-freezes.html or StackOverflow.

I should add that if you can supply more information that points to this being something specific to Windows App SDK, please feel free to reopen this bug with the additional information.
Ryan

Ok, thanks for looking into it. Very likely something wrong with my VS setup then. Maybe I'm missing a package somehow...


feat: Show artifacts in UI DAG. Fixes #8324

Signed-off-by: Alex Collins<EMAIL_ADDRESS>Fixes #8324
This PR:

Introduces 3 new endpoints to help work with artifacts.

GetArtifact which superceeds the existing API. Supports name/uid and input/output.
GetArtifactDescription which return information such as filename, content-type, and list of items any tgz contains. .tgz is VERY common (the default in fact) so this is more than just a utility.
GetArtifactItem which returns a single file from within an artifact.

Supports new UI elements which use the new APIs to display artifacts.

The DAG looks a bit clunky and it's hard to distinguish nodes vs. artifacts

I think we can work on that. I've some idea.

How to support rendering additional formats other then plain text files?

I'm polling users to find out what they want support for.

Should we not enable this by default?

If we enable by default, should be able to disable it (persistently, e.g.  using cookie).
If we disable by default, we need to figure out how to make the feature discoverable.


feat: prevent node movement by label modification

What type of PR is this?
/kind feature
What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #1382
Special notes for your reviewer:

add a validation webhook for node:
user can not change apps.openyurt.io/desired-nodepool if node has been added in noodpool
user can not change apps.openyurt.io/nodepool directly, only yurt-manger can change this label
Does this PR introduce a user-facing change?

other Note

/hold

/unhold

@y-ykcir please fix github action's errors.

@rambohe-ch It seems that in e2e testing, the nodepool, yurtappdaemon, and yurtappset tests will remove nodes from the nodepool by deleting the NodePoolLabel at the beginning and end of each test. Should we modify such behavior in e2e to use join command and is there any obstacle to do this?

@rambohe-ch It seems that in e2e testing, the nodepool, yurtappdaemon, and yurtappset tests will remove nodes from the nodepool by deleting the NodePoolLabel at the beginning and end of each test. Should we modify such behavior in e2e to use join command and is there any obstacle to do this?

@y-ykcir would you like to have to try to improve e2e tests? but i think that yurtadm join command can not be used in kind cluster.

@y-ykcir I think we only need to make sure apps.openyurt.io/desired-nodepool label of node can not be changed, no matter which component changes this label.
at the same time, we don't need to verify apps.openyurt.io/nodepool label, because NodePool controller will make sure apps.openyurt.io/nodepool label is equal to apps.openyurt.io/desired-nodepool label.

@rambohe-ch The code logic has been simplified. Is it possible to add reset and join way in the Kind cluster? If it's not feasible, I am currently thinking of the following handling methods:

Modify to run all tests in an unchanged nodepool distribution (nodepool tests may have to change nodepool)
Temporarily disable this webhook in e2e testing

/lgtm


Image processing strips out HDR data

What version of Hugo are you using (hugo version)?

hugo v0.132.1+extended darwin/arm64 BuildDate=2024-08-13T10:10:10Z VendorInfo=brew

Does this issue reproduce with the latest release?
Yes
Description
The image processing functions of Hugo seem to strip out the necessary metadata to display an image with High Dynamic Range (HDR).
When I open the source image in Google Chrome, the image shows correctly in HDR. When I view the same image on a site generated from Hugo, it is displayed normally /  SDR.
I'm not an HDR expert, but from what I understand, Google's Ultra HDR (used with Pixel phones) stores the HDR data in XMP metadata in the image. I believe there are also "Gain Maps" embedded in the image.
Additional Info
Here is a source image you can test with: test image
This is from Gemini:

Android's Ultra HDR Image Format: This format uses XMP metadata to define multiple images and their relationship to create the HDR image. Details
XMP Metadata: A common method for storing additional data in images is using XMP (Extensible Metadata Platform) metadata. This allows for the storage of structured information within the image file.
Gain Maps: Some HDR formats use gain maps to represent the difference between the HDR image and a standard dynamic range (SDR) image. This information is embedded alongside the main image data.

thanks for raising this, there are currently many efforts in implementing UltraHDR support into image processing frameworks, like Python Pillow, LibVips, ImageMagick and various HDR image viewers.
The usual approach is to integrate libultrahdr, but this is certainly not the route Hugo want's to take. Since it's a C / C++ library.
But this might be a good starting point to raise an issue with a Golang imaging library or even the one provided by default...

Some notes from me:

Hugo (mostly) uses the image encoders in Go.
None of them support any metadata.
We have a new image metadata library that can read XMP.
It's unlikely that I want to take the route of implementing metadata writing myself, as that would take too much time.

That said, I'm pretty interested in photography (currently with a Sony A7r IV), but not so much into HDR ... But that may change.


tfa.seq2seq - tensorflow.python.framework.errors_impl.InvalidArgumentError: Exception encountered when calling layer "embedding" (type Embedding).

I am following closely the Seq2seq for translation tutorial here https://www.tensorflow.org/addons/tutorials/networks_seq2seq_nmt#define_the_optimizer_and_the_loss_function. I meet an error when instantiating the Encoder which is defined as
class Encoder(tf.keras.Model):
  def __init__(self, vocab_size, embedding_dim, enc_units, batch_sz):
    super(Encoder, self).__init__()
    self.batch_sz = batch_sz
    self.enc_units = enc_units
    self.embedding = tf.keras.layers.Embedding(vocab_size, embedding_dim)

    ##-------- LSTM layer in Encoder ------- ##
    self.lstm_layer = tf.keras.layers.LSTM(self.enc_units,
                                   return_sequences=True,
                                   return_state=True,
                                   recurrent_initializer='glorot_uniform')

  def call(self, x, hidden):
    x = self.embedding(x)
    output, h, c = self.lstm_layer(x, initial_state = hidden)
    return output, h, c

  def initialize_hidden_state(self):
    return [tf.zeros((self.batch_sz, self.enc_units)), tf.zeros((self.batch_sz, self.enc_units))]

It is falling when testing here
# Test Encoder Stack
encoder = Encoder(vocab_size, embedding_dim, units, BATCH_SIZE)

# sample input
sample_hidden = encoder.initialize_hidden_state()
sample_output, sample_h, sample_c = encoder(example_input_batch, sample_hidden)

The error is the following
Traceback (most recent call last):
  File "C:/Users/Seq2seq/Seq2seq-V3.py", line 132, in <module>
    sample_output, sample_h, sample_c = encoder(example_input_batch, sample_hidden)
  File "C:\Users\AppData\Local\Programs\Python\Python39\lib\site-packages\keras\utils\traceback_utils.py", line 67, in error_handler
    raise e.with_traceback(filtered_tb) from None
  File "C:/Users/Seq2seq/Seq2seq-V3.py", line 119, in call
    x = self.embedding(x)
tensorflow.python.framework.errors_impl.InvalidArgumentError: Exception encountered when calling layer "embedding" (type Embedding).

indices[12,148] = 106 is not in [0, 106) [Op:ResourceGather]

Call arguments received:
  • inputs=tf.Tensor(shape=(64, 200), dtype=int64)

TF 2.0

@neqkir .
I was able to execute the code in latest stable v2.8 without any issues.Please find the gist here.Can you please update to latest tensorflow version and test your code.It helps.Thanks!

Thanks, I found out, I miscounted the number of elements in the vocabulary. thanks for your feedback

@neqkir ,
Could you please confirm if the issue is resolved. if yes, please feel free to move this issue to closed status


opendmarc[122]: ignoring connection from

Im trying tos send emails from my application and getting bounced. I am able to send via the docker-mailserver container just not via any of the other containers within the network.
Belo is the error message I am receiving.
mail_1       | Mar 19 14:57:18 mail postfix/submission/smtpd[1151]: connect from irec_php-fpm_1.irec_default[<IP_ADDRESS>]
mail_1       | Mar 19 14:57:18 mail opendmarc[123]: ignoring connection from irec_php-fpm_1.irec_default
mail_1       | Mar 19 14:57:18 mail postfix/submission/smtpd[1151]: disconnect from irec_php-fpm_1.irec_default[<IP_ADDRESS>] ehlo=0/1 quit=1 commands=1/2
config
HOSTNAME=mail
DOMAINNAME=irecordtime.co.uk
CONTAINER_NAME=irec_mail
PERMIT_DOCKER=network
ENABLE_FAIL2BAN=0
ENABLE_SRS=0
SPOOF_PROTECTION=1

You need to send email on 587 port and not through 25.
See https://github.com/tomav/docker-mailserver#exposed-ports

I am using port 587
.env
HOSTNAME=mail
DOMAINNAME=irecordtime.co.uk
CONTAINER_NAME=irec_mail
OVERRIDE_HOSTNAME=irecordtime.co.uk
DMS_DEBUG=1
ONE_DIR=0
POSTMASTER_ADDRESS=
PERMIT_DOCKER=network
TLS_LEVEL=modern
SPOOF_PROTECTION=1
ENABLE_SRS=0
ENABLE_POP3=
ENABLE_CLAMAV=0
ENABLE_FAIL2BAN=0
ENABLE_MANAGESIEVE=
POSTSCREEN_ACTION=enforce
SMTP_ONLY=
SSL_TYPE=
VIRUSMAILS_DELETE_DELAY=
ENABLE_POSTFIX_VIRTUAL_TRANSPORT=
POSTFIX_DAGENT=
REPORT_RECIPIENT=0
REPORT_INTERVAL=daily
ENABLE_SPAMASSASSIN=0
SA_TAG=2.0
SA_TAG2=6.31
SA_KILL=6.31
ENABLE_FETCHMAIL=0
FETCHMAIL_POLL=300
ENABLE_LDAP=
LDAP_START_TLS=
LDAP_SERVER_HOST=
LDAP_SEARCH_BASE=
LDAP_BIND_DN=
LDAP_BIND_PW=
LDAP_QUERY_FILTER_USER=
LDAP_QUERY_FILTER_GROUP=
LDAP_QUERY_FILTER_ALIAS=
DOVECOT_TLS=
DOVECOT_USER_FILTER=
DOVECOT_PASS_FILTER=
ENABLE_POSTGREY=0
POSTGREY_DELAY=300
POSTGREY_MAX_AGE=35
POSTGREY_TEXT=Delayed by postgrey
ENABLE_SASLAUTHD=0
SASLAUTHD_MECHANISMS=
SASLAUTHD_MECH_OPTIONS=
SASLAUTHD_LDAP_SERVER=
SASLAUTHD_LDAP_SSL=
SASLAUTHD_LDAP_BIND_DN=
SASLAUTHD_LDAP_PASSWORD=
SASLAUTHD_LDAP_SEARCH_BASE=
SASLAUTHD_LDAP_FILTER=
SASL_PASSWD=
SRS_EXCLUDE_DOMAINS=
SRS_SECRET=
docker-compose
mail:
build: ./build/mail
hostname: mail
domainname: irecordtime.co.uk
ports:
- "25:25"
- "143:143"
- "587:587"
- "993:993"
environment:
- DMS_DEBUG=${DMS_DEBUG}
- ENABLE_CLAMAV=${ENABLE_CLAMAV}
- ONE_DIR=${ONE_DIR}
- ENABLE_POP3=${ENABLE_POP3}
- ENABLE_FAIL2BAN=${ENABLE_FAIL2BAN}
- ENABLE_MANAGESIEVE=${ENABLE_MANAGESIEVE}
- OVERRIDE_HOSTNAME=${OVERRIDE_HOSTNAME}
- POSTMASTER_ADDRESS=${POSTMASTER_ADDRESS}
- POSTSCREEN_ACTION=${POSTSCREEN_ACTION}
- REPORT_RECIPIENT=${REPORT_RECIPIENT}
- REPORT_INTERVAL=${REPORT_INTERVAL}
- SMTP_ONLY=${SMTP_ONLY}
- SSL_TYPE=${SSL_TYPE}
- TLS_LEVEL=${TLS_LEVEL}
- SPOOF_PROTECTION=${SPOOF_PROTECTION}
- ENABLE_SRS=${ENABLE_SRS}
- PERMIT_DOCKER=${PERMIT_DOCKER}
- VIRUSMAILS_DELETE_DELAY=${VIRUSMAILS_DELETE_DELAY}
- ENABLE_POSTFIX_VIRTUAL_TRANSPORT=${ENABLE_POSTFIX_VIRTUAL_TRANSPORT}
- POSTFIX_DAGENT=${POSTFIX_DAGENT}
- ENABLE_SPAMASSASSIN=${ENABLE_SPAMASSASSIN}
- SA_TAG=${SA_TAG}
- SA_TAG2=${SA_TAG2}
- SA_KILL=${SA_KILL}
- SA_SPAM_SUBJECT=${SA_SPAM_SUBJECT}
- ENABLE_FETCHMAIL=${ENABLE_FETCHMAIL}
- FETCHMAIL_POLL=${FETCHMAIL_POLL}
- ENABLE_LDAP=${ENABLE_LDAP}
- LDAP_START_TLS=${LDAP_START_TLS}
- LDAP_SERVER_HOST=${LDAP_SERVER_HOST}
- LDAP_SEARCH_BASE=${LDAP_SEARCH_BASE}
- LDAP_BIND_DN=${LDAP_BIND_DN}
- LDAP_BIND_PW=${LDAP_BIND_PW}
- LDAP_QUERY_FILTER_USER=${LDAP_QUERY_FILTER_USER}
- LDAP_QUERY_FILTER_GROUP=${LDAP_QUERY_FILTER_GROUP}
- LDAP_QUERY_FILTER_ALIAS=${LDAP_QUERY_FILTER_ALIAS}
- DOVECOT_TLS=${DOVECOT_TLS}
- DOVECOT_USER_FILTER=${DOVECOT_USER_FILTER}
- DOVECOT_PASS_FILTER=${DOVECOT_PASS_FILTER}
- ENABLE_POSTGREY=${ENABLE_POSTGREY}
- POSTGREY_DELAY=${POSTGREY_DELAY}
- POSTGREY_MAX_AGE=${POSTGREY_MAX_AGE}
- POSTGREY_TEXT=${POSTGREY_TEXT}
- ENABLE_SASLAUTHD=${ENABLE_SASLAUTHD}
- SASLAUTHD_MECHANISMS=${SASLAUTHD_MECHANISMS}
- SASLAUTHD_MECH_OPTIONS=${SASLAUTHD_MECH_OPTIONS}
- SASLAUTHD_LDAP_SERVER=${SASLAUTHD_LDAP_SERVER}
- SASLAUTHD_LDAP_SSL=${SASLAUTHD_LDAP_SSL}
- SASLAUTHD_LDAP_BIND_DN=${SASLAUTHD_LDAP_BIND_DN}
- SASLAUTHD_LDAP_PASSWORD=${SASLAUTHD_LDAP_PASSWORD}
- SASLAUTHD_LDAP_SEARCH_BASE=${SASLAUTHD_LDAP_SEARCH_BASE}
- SASLAUTHD_LDAP_FILTER=${SASLAUTHD_LDAP_FILTER}
- SASL_PASSWD=${SASL_PASSWD}
cap_add:
- NET_ADMIN
- SYS_PTRACE
volumes:
- maildata:/var/mail
- mailstate:/var/mail-state
- ./config/:/tmp/docker-mailserver/

May have used 25 while messing around / trying to debug and see if I got any different results.
Codeignitor config
$config = Array(
'protocol' => 'smtp',
// 'smtp_host'=> '<IP_ADDRESS>',
'smtp_host'=> 'mail',
// 'smtp_port'=> '465',
'smtp_port'=> '587',
'mailtype' => 'html',
'charset'  => 'utf-8',
'newline'  => "\r\n"
);
    $this->load->library('email', $config);

And?

and it still doesnt work :0

and when you use a normal email client?

Hi there, same issue here.
I try sending emails from a PHP app, using SSL protocol and port 465.
Here is what I get.
Mar 22 15:38:27 mail postfix/smtps/smtpd[2992]: connect from md-forum-prod.docker_default[<IP_ADDRESS>] Mar 22 15:38:27 mail postfix/smtps/smtpd[2992]: Anonymous TLS connection established from md-forum-prod.docker_default[<IP_ADDRESS>]: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits) Mar 22 15:38:27 mail opendmarc[258]: ignoring connection from md-forum-prod.docker_default Mar 22 15:38:27 mail postfix/smtps/smtpd[2992]: lost connection after CONNECT from md-forum-prod.docker_default[<IP_ADDRESS>] Mar 22 15:38:27 mail postfix/smtps/smtpd[2992]: disconnect from md-forum-prod.docker_default[<IP_ADDRESS>] commands=0/0
Same result on port 587 (except for the second log line, "Anonymous TLS connection established...", which does not appear).
I will let you know if I find something.

Well, I ended up using plain text authentication on port 25.
As this is one of my containers getting in touch with the mail server on the same host, I guess that this should not be a problem... should it?

You have SSL_TYPE= which means that SSL is disabled. Without SSL certificates you cannot use SSL connections (ports 587 and 465).

This issue was closed due to one or more of the following reasons:

Age
Contributor inactivity
The issue seems to be resolved

If you think this happened by accident, or feel like this issue was not actually resolved, please feel free to re-open it. If there is an issue you could resolve in the meantime, please open a PR based on the current master branch so we can review it.


Update to script.js: download data from a URL rather than passing as a string

I think I found a solution to the comment about finding a better way to embed the data. Using a URL in my Google Cloud Storage bucket will allow me to write the data prep code so that the file is automatically updated whenever I change the data prep process. It also allows the script.js file to be smaller.

On my local machine, I get a CORS error:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://storage.googleapis.com/waterloo-region-data-visualization-tools/reported_crime_data.csv. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 200.

This can be a tricky issue when using client-side code to fetch resources from another server. Can you confirm if you see the same error?

Hi Sam -- I didn't get the error but I tried running the code directly on
Github. (Not exactly a best practice -- I temporarily put the change in
main, checked that it was working, then reverted and put it in a pull
request for transparency.) What are you using to work locally btw? I should
learn how to do that, since trying to make the changes on Github was a bit
annoying.
I have to head off to a meeting right now, but I did a quick search and it
looks like I can change the CORS settings on that Google Cloud Storage
bucket, so I'll try that after work today.
On Wed, Aug 2, 2023 at 10:51 AM Sam Nabi @.***> wrote:

On my local machine, I get a CORS error:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the
remote resource at
https://storage.googleapis.com/waterloo-region-data-visualization-tools/reported_crime_data.csv.
(Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code:
200.
This can be a tricky issue when using client-side code to fetch resources
from another server. Can you confirm if you see the same error?
—
Reply to this email directly, view it on GitHub
https://github.com/craig-sloss/python_widgets/pull/1#issuecomment-1662357517,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A4A2K3LZNLONXKNUXUOFIX3XTJSQRANCNFSM6AAAAAA3ATHSPU
.
You are receiving this because you authored the thread.Message ID:
@.***>

Hi Sam -- looked into this a bit more today, and just leaving some notes here while they are fresh in my memory. (Obviously there is no need to look at this while you're on vacation!) I think there were actually two problems and I think I've resolved them both:

As you mention there was a CORS issue, so I updated the CORS settings on the Google Cloud Storage Bucket.
The second is that when the file is coming from a remote source, the Papa.parse function doesn't actually return anything. It only works if a callback function is provided, and I couldn't figure out a way to use this to create an output that has the same format as the one produced by the function when the input is a string.
My solution to the above was to just read the CSV from GCS and dump it into a string -- then everything else works as-is.

With these changes I was able to get it working on my local machine; let me know if the code in this branch is working for you.


Change 'Lists of petitions' to use a details elements

Not sure how to fix these tests or why they are failing :unamused:

The tests are looking finding 2 instances of things like Rejected petition so don't know ow which one to select.
It's messy.  X path constraints....  I had to hack a test script helper to tell it where to look for a similar problem.
When I say "I",  I mean @h-lame

Taking a look.

Did a thing, should be green and mergable now.

LGTM


Bump digitalmarketplace-utils dependency to v46.1.2, update misc other dependencies

This is non-essential but should bring in the improved /_status logging noted as a problem in https://trello.com/c/CqTPp8E0

Interesting that it's failing the snyk test - the issue that snyk is citing actually appears to apply to all 1.2 versions of sqlalchemy, but they've got it in their db as 1.2.17+

(I've dropped them a note about it)

Think I should "ignore" that vuln for now?

If we're already vulnerable then ignoring would leave us no worse off?

The vulnerability is a bit of a "sqlalchemy lets you shoot yourself in the foot" vulnerability, and I don't think we use the functionality that is vulnerable. There is a fix merged to master but it hasn't made it to a release yet.


Use the Loc Lift instance now available in th-orphans

The th-orphans package has Lift instances for most template haskell types, now including Loc.  Better to use that one than risk duplicate instance errors.

thanks!


Create Create Count the pair with given target in O(n) approach.py

Description
Greetings sir/ma'am,
I am LGMSOC participant I have added the code for Create Count the pair with given target in O(n) approach
Fixes #593
Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

@jahnvisrivastava100 this is same as https://tutorialspoint.dev/data-structure/hashing-data-structure/count-pairs-with-given-sum


Data decryption

The data returned when I request Amazon is encrypted, how should I decrypt the data? Thank you for your guidance

hi @yexueping,
I have just make a commit to the master repository with Feed Upload, Download, Encryption, and Decryption all functionalities are implemented.
It just needs an approving review from @lyubo-slavilov to be available to everyone.

hi @yexueping,
I have just make a commit to the master repository with Feed Upload, Download, Encryption, and Decryption all functionalities are implemented.
It just needs an approving review from @lyubo-slavilov to be available to everyone.

thank you very much

thank you very much

I want to request getReports method,but The return value needs to be decrypted, can the decryption be encapsulated?

I want to request getReports method,but The return value needs to be decrypted, can the decryption be encapsulated?

@yexueping yes, your required functionality is also implemented under Feed->downloadFeedProcessingReport() function. it will download the report and decrypt it.

@yexueping yes, your required functionality is also implemented under Feed->downloadFeedProcessingReport() function. it will download the report and decrypt it.

Hi guys,
First of all let me say thanks to @MST1122 for cracking this.
The code is perfectly fine, but we need to make some refactoring in order it to fit the autogenerated process used to generate the clients.
Me and @MST1122 already had  Google Meet call and discussed the details. So ETA end of the day we could have new version for the client ;)
Thanks again.

Hi guys,
First of all let me say thanks to @MST1122 for cracking this.
The code is perfectly fine, but we need to make some refactoring in order it to fit the autogenerated process used to generate the clients.
Me and @MST1122 already had  Google Meet call and discussed the details. So ETA end of the day we could have new version for the client ;)
Thanks again.

@MST1122  thank you very much

@MST1122  thank you very much

@JasonYe88 PR is merged. New composer version v1.0.4 is released.

@JasonYe88 PR is merged. New composer version v1.0.4 is released.


Vacuum is failing for shared Data Cluster with GCS Storage

Steps to reproduce the behavior (Required)

Create a shared data cluster with GCS as storage.

I1218 16:42:52.858620   960 vacuum.cpp:88] Deleting staros://15149/meta/0000000000003B2E_0000000000000001.meta(2/2)
W1218 16:42:52.861732 26832 vacuum.cpp:102] Fail to delete: Internal error: starlet err [RequestID=]Delete objects error: Unable to parse ExceptionName: NotImplemented Message: A header or query you provided requested a function that is not implemented.

The above errors are getting constantly repeated.
StarRocks version (Required)
3.1.5

confirmed that google gcs doesn't support aws s3 deleteObjects interface, need to make change to adapt this compatibility issue.

Is this issue fixed. We are also facing the same issue !

please watch this issue's status, it will be fixed in next release.

fixed in #37696

done


Set-CsOnlineVoiceApplicationInstance

Docs Build status updates of commit 412ae1b:
:clock10: Full build: the average full build time is 14 min(s) 17 sec(s), this is based on the last 109 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

Docs Build status updates of commit 412ae1b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Set-CsOnlineVoiceApplicationInstance.md
:white_check_mark:Succeeded
View (skype-ps)

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

Docs Build status updates of commit 9768ddf:
:clock10: Full build: the average full build time is 14 min(s) 12 sec(s), this is based on the last 137 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

Docs Build status updates of commit 9768ddf:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Set-CsOnlineVoiceApplicationInstance.md
:white_check_mark:Succeeded
View (skype-ps)

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


KZG point eval precompile

PR description
Adds a new precompile as part of EIP-4844 which allows contracts to evaluate KZG commitments.
Fixed Issue(s)
fixes #4822
Documentation

[X] I thought about documentation and added the doc-change-required label to this PR if
updates are required.

Changelog

[X] I thought about the changelog and included a changelog update if required.

Loading from classpath is fine, and user will be able to override that later.  We are still waiting on retesteth updates to cover it.

I don't like how the KZG files are being brought in. Especially if we already have hard-coded a default as part of the library. It's a config for one precompile so it shouldn't impact the configuration of the base EVM.
Also, once it's up and running how often will alternate KZGs be brought in? Do we really need configurability?

Yeah, the cart may be before the horse. I'm gonna remove configurability for interop, and we can add it back in if we actually discover a use case for it.


Insight can't load transactions for this testnet address

I'm trying to load this page but it just never finishes loading:
https://test-insight.bitpay.com/address/mq48weNketL7CaQTXDZmZ1d6B1pAno4zu6
Other addresses seem to work fine.

This issue should be resolved as performance has been improved.


🐛[BUG] : Missing mouse animation on Review page

Description
Mouse animation is missing on the Review page .
Screenshots

Any additional information?
No response
What browser are you seeing the problem on?
Chrome
Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I'm a GSSoC'24-Extd contributor
[X] I'm a Hacktoberfest'24 contributor
[X] I am willing to work on this issue (optional)

@vishanurag please assign me this issue.


Add css keyframes animation helper

Fixes #52. Very simple to use:
var pulseAnimation = Radium.animation({
  '0%': {width: '10%'},
  '50%': {width: '50%'},
  '100%': {width: '10%'}
});

var styles = {
  root: {
    animation: pulseAnimation + ' 3s ease 0s infinite'
  },
};

Does anyone else think this should be called Radium.keyframes instead?

Yes

Rename done! Fixed up all my crazy commits caused by using the Sync button in GitHub for Mac.

@ianobermiller: Any way we can get this in without depending on vendor-prefix? I'd like to mull that one over a bit more.

We could, but it wouldn't be terribly useful, as @keyframes still requires a prefix on Chrome and Safari.


fix: emit the error instead of slient swallow it

I got kafka-node:zookeeper Exception: CONNECTION_LOSS[-4] error
sometimes, and the error sliently swallowed so it can not be catched
I thought the error should be thrown instead of been sliently swallowed.

Thanks! @xujihui1985


fixed Dark mode icon is not properly arrange in login section

Related Issue
[Cite any related issue(s) this pull request addresses. If none, simply state “None”]
Fixes:  #2854

Description
This pull request addresses the bug where the dark mode icon is not properly arranged in the login section. The issue caused the icon to overlap with other elements, leading to a poor user experience. This fix adjusts the CSS styling to ensure that the dark mode icon is correctly positioned and aligned within the login section.
Motivation and Context: Proper alignment of the dark mode icon enhances usability and visual consistency across the application.
Dependencies: No external dependencies are required for this change.

Type of PR

[x] Bug fix
[ ] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)
[Attach any relevant screenshots or videos demonstrating the changes. Make sure to attach before & after screenshots in your PR.]
Checklist:

[ x] I have made this change from my own.
[x] I have taken help from some online resources.
[x ] My code follows the style guidelines of this project.
[ x] I have performed a self-review of my own code.
[x ] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x ] My changes generate no new warnings.
[ ] I have tested the changes thoroughly before submitting this pull request.
[x ] I have provided relevant issue numbers and screenshots after making the changes.

i have created a pull request and solved problem #2854 Please review it and approve it as a gsooc contribution.


Enviro_Weather hangs - Random, no indication as to why.

Has happened a couple of times now where the board just hangs after a scheduled wakeup.  Not sure why as has gone days before without any issue.  Does not seem related to network as doe snot even attempt to connect to wifi, just the white LED pulses.
Logs are below and can see from  the wakup at 19:00 (marked with stars) it just hangs and then next log entry is when I removed power at 19:39 and plugged it in again.  No issue with battery as still at 3.9v.   Its set to take readings evey 10 minutes and using local MQTT for destination.
2022-11-08 18:50:02 [debug    / 118kB] > performing startup
2022-11-08 18:50:02 [info     / 124kB]   - wake reason: unknown
2022-11-08 18:50:02 [debug    / 122kB]   - turn on activity led
2022-11-08 18:50:03 [info     / 111kB] > 4 cache files need uploading
2022-11-08 18:50:03 [info     / 108kB] > connecting to wifi network 'VM2878914-5G_EXT'
2022-11-08 18:50:05 [debug    / 102kB]   - connecting
2022-11-08 18:50:08 [debug    /  89kB]   - connecting
2022-11-08 18:50:09 [info     /  86kB]   - ip address:  <IP_ADDRESS>
2022-11-08 18:50:10 [info     / 109kB]   - uploaded 2022-11-08T18:20:03Z.json to mqtt
2022-11-08 18:50:10 [info     / 102kB]   - uploaded 2022-11-08T18:30:03Z.json to mqtt
2022-11-08 18:50:11 [info     /  96kB]   - uploaded 2022-11-08T18:40:03Z.json to mqtt
2022-11-08 18:50:11 [info     / 117kB]   - uploaded 2022-11-08T18:50:03Z.json to mqtt
2022-11-08 18:50:11 [info     / 115kB] > going to sleep
2022-11-08 18:50:11 [debug    / 113kB]   - clearing and disabling timer and alarm
2022-11-08 18:50:12 [info     / 111kB]   - setting alarm to wake at 19:00pm
2022-11-08 18:50:12 [info     / 109kB]   - shutting down
**2022-11-08 19:00:02 [debug    / 118kB] > performing startup
**2022-11-08 19:00:02 [info     / 124kB]   - wake reason: unknown
**2022-11-08 19:00:02 [debug    / 122kB]   - turn on activity led
2022-11-08 19:39:09 [debug    / 118kB] > performing startup
2022-11-08 19:39:09 [info     / 124kB]   - wake reason: unknown
2022-11-08 19:39:09 [debug    / 122kB]   - turn on activity led
2022-11-08 19:39:10 [info     / 111kB] > going to sleep
2022-11-08 19:39:10 [debug    / 109kB]   - clearing and disabling timer and alarm
2022-11-08 19:39:10 [info     / 107kB]   - setting alarm to wake at 19:40pm
2022-11-08 19:39:10 [info     / 105kB]   - shutting down
2022-11-08 19:39:11 [debug    /  88kB]   - on usb power (so can't shutdown) halt and reset instead

Hi @dave-ct. Thanks for raising this. I suspect there is some internal error in the code that's not being logged. To help diagnose this, I have pushed change https://github.com/pimoroni/enviro/pull/113/commits/9d41d2d869d3711dc6ff0125f0e9103b40b4286b to the patch branch that captures any exceptions and logs them. If you are able to re-run with that change added (or all of the fixes from the patch branch) that would be appreciated.

Thanks, I have deployed the patch branch and will monitor to see it it happens with this version.  FYI the rain issue #70 looks to be fixed and working well now.

@ZodiusInfuser  Have had the patch verison running over the last 4 days and the issue has not happened again so suspect something in this has fixed it.  Will close this issue.

Thank you @dave-ct. The pessimist in my isn't entirely convinced it's fixed, but the last changes I did do let the board handle errors a bit more gracefully. If it comes up again, or you see anything interesting in the log, feel free to re-open this issue.


Player attack

Always try to add a little description of what/how you did @aaron1-z! But nice work.

Got it.


[FLINK-12455][python] Move the packaging of pyflink to flink-dist

What is the purpose of the change
This pull request moves the packaging of pyflink to flink-dist for the following reasons:

flink-dist is responsible for the packaging of flink, moving the packaging logic there is more straightforward
The pom.xml under flink-python can be removed and this makes flink-python a pure python module

Brief change log

Moves the packaging logic to flink-dist
Removes the pom.xml under flink-python

Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

@flinkbot approve all
Merging


Should throw Exception when there have API Error.

I try to modify contact remark in contact-bot.ts
The main code is:
for (let i = 0; i < contactList.length; i++) {
      const contact = contactList[i]
      if (contact.personal()) {
          log.info('Bot', `personal ${i}: ${contact.get('name')} : ${contact.id}`)
          const remarkUser = '测试' + contact.get('name')
          const ret = await contact.alias(remarkUser)
          if (ret) {
            console.log('ok')
          } else {
            console.error('failed')
          }
          await contact.refresh()
          log.info('Bot', 'get alias: %s', contact.alias())

      }
    }

Expected behavior
Remark should be modified,
And I got the log that tells me the remark is modified, however, in fact, the remark isn't modified.
Below is part of logs:
ok
07:23:31 INFO Bot get alias: INFO Bot get alias: %s 测试转世一瞬
07:23:31 INFO Bot personal 188: 花月正春风 : @4223c4c6f8f25f186f6501dc353e88d0ce5971e7faeef50e77933a44002d8da0 INFO Bot personal 188: 花月正春风 : @4223c4c6f8f25f186f6501dc353e88d0ce5971e7faeef50e77933a44002d8da0
ok
07:23:31 INFO Bot get alias: INFO Bot get alias: %s 测试花月正春风
07:23:31 INFO Bot personal 190: 会飞的灰灰^o^ : @a32609b330af4c163c67859147f833d5 INFO Bot personal 190: 会飞的灰灰^o^ : @a32609b330af4c163c67859147f833d5
ok
07:23:32 INFO Bot get alias: INFO Bot get alias: %s 测试会飞的灰灰^o^
07:23:32 INFO Bot personal 195: Chandelier : @0ae7ef3b90b50aae9338cf65e61b1879fe959035da8e348664ced6201d3cf977 INFO Bot personal 195: Chandelier : @0ae7ef3b90b50aae9338cf65e61b1879fe959035da8e348664ced6201d3cf977
ok
07:23:32 INFO Bot get alias: INFO Bot get alias: %s 测试Chandelier
07:23:32 INFO Bot personal 201: Jarrah - 100offer : @348213df31a64f2f2c9ab614851d2c759605f8868a1927f727799514e7c6a58a INFO Bot personal 201: Jarrah - 100offer : @348213df31a64f2f2c9ab614851d2c759605f8868a1927f727799514e7c6a58a

Actual behavior

You should wait for a while.
Becasue it change alias on web wechat, and it needs some time to synchronize to mobile wechat.

Btw, please change ` to ``` for your log info as I modified for your first comment.

It's related to #596 #412
After those issues, I start to think that we should throw an Exception if the operation failed, instead of return a false silently.
The related method should include(but not limited):

alias
say
accept
add
del
etc...

@lijiarui Thanks for your reply and support!
In fact, I have tried many times to change the remark. And only a few times was successful,
In most cases, it is failing. contact.alias(String) seems unstable.

@amyhuangxbd  YES it is unstable, do u have any workaround?

I can remark friend's alias in web version successfully, but the alias unable to synchronize to the phone.
I haven't found the reason why the web and the phone can't sync.

@amyhuangxbd You did not "remark friend's alias in web version successfully", it's only changed inside your browser, the server never accepted that.
If you refresh the browser or re-login, you will find out that the new "alias/remark" is lost.

I had changed some of the API to throw Exception when failed, and will changes others in the future.
Please let me know if you found any API need to refactor in the latest version of the master branch, PR will be awesome and welcome!
See: https://github.com/Chatie/wechaty/issues/1167


Full error message display from database server

The problem
When I use SQLTools with Postgres driver, I get very abbreviated error messages, compared to what I would get from the postgres console.
Example error from SQLTools:

Same error from psql client:
ERROR:  relation "model.relationship_type" does not exist
LINE 1: UPDATE model.relationship_type SET relationship_type_nodes =...
               ^
QUERY:  UPDATE model.relationship_type SET relationship_type_nodes = NULL
CONTEXT:  PL/pgSQL function unit_tests.relationship_type_propagation_test() line 54 at SQL statement

As a developer, I get complete information necessary to solve the problem from the client, but it is lost in SQLTools.
The work-around
I have created tasks for VSCode, which pipe the query directly to the client, which shows the desired error information (as well as other database messages, like NOTICE, WARNING, ERROR, etc).
    "tasks": [
        {
            "label": "psql",
            "type": "shell",
            "command": "cat ${file} | psql -h winhost -U kate -d ut -x -p 5433",
            "problemMatcher": []
        },
        {
            "label": "query",
            "type": "shell",
            "command": "echo \"$(cat << 'HEREDOC' \n${selectedText}\nHEREDOC\n)\" | psql -h winhost -U kate -d ut -x -p 5433",
            "problemMatcher": []
        },

Proposed solution
I would like to integrate the current work-around to become an option for SQLTools, using the active connection to construct the command line, and generate output.
Describe alternatives you've considered
Before I created my work-around, I have looked at every postgres extension for VSCode I could find. None of them show the full error.  I do not know yet, whether this is a postgres-only limitation, or exists for other drivers.
Additional context
I would like feedback from the community on the sanity of what I am proposing. If it sounds like a good idea, I'd love to implement it. Of all the extensions, SQLTools appears to be the most full-featured for a developer.  So I selected this one for my pet feature. I am not a VSCode expert yet, but I love what I have learned about extension development thus far.

Came here looking for the same thing! This would be fantastic to have supported

Taking a peek at the vscode devtools reveals that the full error details are accessible from this extension

All that would be needed is to print it all out. I think that would be a better approach than trying to run psql, which could be awkward for remote vscode-server setups.


Disable selecting files for a review in the editor tools (bug 1197261)

Fixes bug 1197261 (again)

@wagnerand could you please try that out with a few different scenarios, and let me know if it does work as expected? Thanks!

Updated, what do you think @muffinresearch ?
@wagnerand whenever you have time to double check that, please let me know! (or I merge it and you test it on -dev?)

@magopian lgtm

r+wc
Thank you!


Unable to use torch in preview

Describe the bug
[error] - Unhandled Promise rejection: failed to set flash mode ; Zone: <root> ; Task: null ; Value: {"message":"failed to set flash mode","errorMessage":""} fromNative@user-script:2:224:23
To Reproduce
CameraPreview.setFlashMode({ flashMode: 'torch' });
Expected behavior
Torch to turn on when previewing
Desktop (please complete the following information):
iOS
Smartphone
iPhone XS

Furthermore, trying to do it as the documentation describes:
const cameraPreviewFlashMode: CameraPreviewFlashMode = 'torch';
CameraPreview.setFlashMode(cameraPreviewFlashMode);

Just results in this error:
Argument of type '"torch"' is not assignable to parameter of type '{ flashMode: string; }'.

Furthermore, trying to do it as the documentation describes:
const cameraPreviewFlashMode: CameraPreviewFlashMode = 'torch';
CameraPreview.setFlashMode(cameraPreviewFlashMode);

Just results in this error:
Argument of type '"torch"' is not assignable to parameter of type '{ flashMode: string; }'.

I also tried changing it to {flashMode:'TORCH'} just in case.
[error] - Unhandled Promise rejection: Flash Mode not supported ; Zone: <root> ; Task: null ; Value: {"message":"Flash Mode not supported","errorMessage":""} fromNative@user-script:2:224:23

I also tried changing it to {flashMode:'TORCH'} just in case.
[error] - Unhandled Promise rejection: Flash Mode not supported ; Zone: <root> ; Task: null ; Value: {"message":"Flash Mode not supported","errorMessage":""} fromNative@user-script:2:224:23

Hello,
Same problem on Android, i can't use flash when camera is started in 'rear'.

Sorry to see that you had problems with the flash mode. I'm closing this issue as the torch flash mode does work (I'm using it daily). The documentation does need improving as it took me a few days to figure out how to make it work reliably.

Sorry to see that you had problems with the flash mode. I'm closing this issue as the torch flash mode does work (I'm using it daily). The documentation does need improving as it took me a few days to figure out how to make it work reliably.

Yeah @pbowyer  in doc:
setFlashMode(options)
`const CameraPreviewFlashMode: CameraPreviewFlashMode = 'torch';
CameraPreview.setFlashMode(cameraPreviewFlashMode);` is not working.
Solved:
   const cameraPreviewFlashMode = { flashMode: 'off' };     CameraPreview.setFlashMode(cameraPreviewFlashMode); is working :)


Running SQLDatabaseChain adds prefix "SQLQuery:\n" infront of returned SQL by LLM, causing invalid query when ran on Database using chain

System Info
Running SQLDatabaseChain with LangChain version 0.0.319 and Snowflake return SQL query which is to be executed on snowflake database in next step. But returned query contains the prefix "SQLQuery:\n" which will broke the whole chain when the query gets executed on snowflake. How to get rid of this "SQLQuery:\n" prefix from query.
Note: Using AWS Bedrock endpoint with Anthropic Claudev2 LLM.
Using default prompt provided in the langchain:
`Given an input question, first create a syntactically correct {dialect} query to run, then look at the results of the query and return the answer. Unless the user specifies in his question a specific number of examples he wishes to obtain, always limit your query to at most {top_k} results. You can order the results by a relevant column to return the most interesting examples in the database.
Never query for all the columns from a specific table, only ask for a the few relevant columns given the question.
Pay attention to use only the column names that you can see in the schema description. Be careful to not query for columns that do not exist. Also, pay attention to which column is in which table.
Use the following format:
Question: Question here
SQLQuery: SQL Query to run
SQLResult: Result of the SQLQuery
Answer: Final answer here
`
Getting following response in debug/verbose mode:
"text": " SQLQuery:\nSELECT top 5 p.productname, sum(od.quantity) as total_sold\nFROM products p\nJOIN orderdetails od ON p.productid = od.productid \nGROUP BY p.productname\nORDER BY total_sold DESC\n" }
Any help would be appreciated.
Who can help?
No response
Information

[X] The official example notebooks/scripts
[ ] My own modified scripts

Related Components

[ ] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[ ] Agents / Agent Executors
[ ] Tools / Toolkits
[X] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
Just use SQLDatabaseChain with AWS Bedrock Anthropic Claude 2 to produce this one.

Hi @dosu-bot.
I have made your suggested changes in my prompt but still issue is there it still gives me text along with SQL query instead of just SQL query.
Use the following format:
Question: Question here
SQL Query to run
SQLResult: Result of the SQLQuery
Answer: Final answer here
Response:
"text": " Here is the SQL query and result to find the top 5 products with the highest sales:\n\nQuestion: Find the top 5 products with the highest sales.\n\nSQLQuery:\nSELECT p.productname, SUM(od.quantity) AS total_quantity\nFROM products p\nJOIN orderdetails od ON p.productid = od.productid  \nGROUP BY p.productname\nORDER BY total_quantity DESC\nLIMIT 5\n"
Suggest other ways or fixes to handle this scenario, I need only SQL query instead of this extra text.

hey @zahidiqbalnbs I'm running into this same issue using the AWS Bedrock endpoint with Anthropic Claudev2 LLM. Let me know if you make any progress on this. I've gotten it to somewhat work when modifying the prompt with the words "return only the generated SQL query and nothing else", but when that is done, the SQL query results are outputted, but no final human-readable answer. I'm also having trouble with the SQL agent... it repeatedly performs the sql_db_list_tables action and eventually times out. Interestingly enough, it is able to find the correct tables.

I am also facing the same issue. This is not only limited to Claudev2 LLM. I have tested with multiple LLMs and sharing my results.
I am using Titanic Dataset and using Amazon Athena as my backend DB. I am also testing with Amazon Bedrock SDK.
db_chain = SQLDatabaseChain.from_llm(textgen_llm, db, verbose=True)
response=db_chain.run(query)

> Entering new SQLDatabaseChain chain...
Total Passengers
SQLQuery:Question: Total Passengers
SQLQuery: SELECT COUNT(*) FROM titanic

Failed to execute query.
Traceback (most recent call last):
  File "/opt/homebrew/lib/python3.11/site-packages/pyathena/common.py", line 522, in _execute
    query_id = retry_api_call(
               ^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/pyathena/util.py", line 85, in retry_api_call
    return retry(func, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/tenacity/__init__.py", line 379, in __call__
    do = self.iter(retry_state=retry_state)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/tenacity/__init__.py", line 314, in iter
    return fut.result()
           ^^^^^^^^^^^^
  File<EMAIL_ADDRESS>line 449, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File<EMAIL_ADDRESS>line 401, in __get_result
    raise self._exception
  File "/opt/homebrew/lib/python3.11/site-packages/tenacity/__init__.py", line 382, in __call__
    result = fn(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/botocore/client.py", line 535, in _api_call
    return self._make_api_call(operation_name, kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/botocore/client.py", line 980, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.errorfactory.InvalidRequestException: An error occurred (InvalidRequestException) when calling the StartQueryExecution operation: line 1:1: mismatched input 'Question'. Expecting: 'ALTER', 'ANALYZE', 'CALL', 'COMMENT', 'COMMIT', 'CREATE', 'DEALLOCATE', 'DELETE', 'DENY', 'DESC', 'DESCRIBE', 'DROP', 'EXECUTE', 'EXPLAIN', 'GRANT', 'INSERT', 'MERGE', 'PREPARE', 'REFRESH', 'RESET', 'REVOKE', 'ROLLBACK', 'SET', 'SHOW', 'START', 'TRUNCATE', 'UNLOAD', 'UPDATE', 'USE', <query>

It fails because anything after SQLQuery: is sent to the Database... This includes the extra text Question: Total Passengers. The extra test can be anything like Here is the query:, etc, which is sent to the Database as it is.
Changing the prompt as well doesn't help as recommended by the bot @dosubot.
This behavior is the same with majority of the LLMs which I tested:

"anthropic.claude-v2"
"anthropic.claude-v1"
"anthropic.claude-instant-v1"

The following LLMs seems to work:

"ai21.j2-ultra-v1"
"ai21.j2-mid-v1"
"cohere.command-text-v14"

The output from Jurassic-2 series by AI21 Labs and Command by Cohere is working as expected, though it messes up sometimes too randomly.
> Entering new SQLDatabaseChain chain...
Total Passengers
SQLQuery:SELECT count(*) FROM titanic
SQLResult: [(891,)]
Answer:891
> Finished chain.
891

I think the same issue was with "gpt-3.5-turbo" and "gpt-4" but don't have any credits left to test it.

still facing the same problem , I wish they prioritize this issue

Can someone please solve this issue with SQLDatabaseChain as it is continuously appending text along with SQL query and code fails as it can execute only SQL code with out any text

@dosu-bot, modifying query.py and updating the _strip function didn't resolve it. It appears that that function is not called at all.

Any updates on this issue with Claude v2:1 on Bedrock ?


Resolve review comments for ResrouceMover

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.ResourceManager.ResourceMover


Introduce a Redis proxy compatible with ~>redis-3.0.

Resolves #213, #136, #190.
Root cause analysis is contained in #213.
In this new RedisProxy we just throw away the redis-store extensions to the plain redis interface. We have been using a similar approach in production for almost a year without issues. That being said, we only use the rate-throttling (and not the fail2ban) behaviour of rack-attack.
Let me know if you require further information or would like to make any amendments to the pull request.

I'm just debugging issues with non expiring keys in Rails 5.2 and built in Redis cache wrapper, and with this PR I found a working workaround.
Hopefully see it merged :+1:

BTW, looks like a duplicate of https://github.com/kickstarter/rack-attack/pull/280

Thank you @ryandv for taking the time to work on this pull request.
I am closing giving this is already fixed by https://github.com/kickstarter/rack-attack/pull/280.


After whitelisting the origin too, still it can able to access from other origin

Hi there,
I have added this stuff, but i m still able to use other origin
example :
public $allowedOrigins = ['domain.com'];
i have added this stuff
but from my local ip i can able to access the domain request.
could you plz help me solve this.
thanks.

Hello @mohamed-sedarglobal can you please share how scenario are u using with example?

I am test it, when whitlist with domain got error cors

Its working Bro !!!
Thanks.!!!


Bug: preview-generator tries to handle JSON files and fails

Description and expectations
Handing a file which has the mime type 'application/json' to preview-generator results in preview-generator trying to generate a preview using wand. This, however, fails and an exception of type wand.exceptions.MissingDelegateError is thrown. I would expect that JSON files are not being processed in any way and that an exception of type preview_generator.exception.UnsupportedMimeType is thrown.
How to reproduce
import json
from tempfile import NamedTemporaryFile
from preview_generator.manager import PreviewManager

cache_path = '/tmp/preview_cache'

with NamedTemporaryFile(mode='w+', suffix='.json') as fp:
    json.dump({'foo': 42, 'bar': 99}, fp)

    manager = PreviewManager(cache_path, create_folder= True)
    path_to_preview_image = manager.get_jpeg_preview(fp.name)
    print(path_to_preview_image)

Version information

Version: 0.29
Device / System: Debian Bullseye

Hello @hrittich
Sorry for the delay, the person originally in charge of the project is unfortunately no longer working with Algoo.
As the new person in charge of this project, it took me some time to understand the workings of the project.
After quite few researches, I've found that ImageMagick is indeed not processing JSON as an input but only as an output.


Child component of Canvas never unmounts

I'm trying RN Skia for the first time and seem to be stuck on a bug. At first I thought this might be https://github.com/Shopify/react-native-skia/issues/701 or https://github.com/Shopify/react-native-skia/issues/697 since I was using both useCanvas and useComputedValue but I can now reproduce this with even an empty functional component that is a child of <Canvas/>:
function Parent() {
  useEffect(() => {
    console.log('Parent Mounted');
    return () => console.log('Parent Unmounted');
  });

  return (
    <Canvas>
      <Child />
    </Canvas>
  );
}

function Child() {
  useEffect(() => {
    console.log('Child Mounted');
    return () => console.log('Child Unmounted');
  });

  return null;
}

When I use <Parent /> higher up and it mounts then unmounts, I get the console:
Parent Mounted
Child Mounted
Parent Unmounted

super nice catch :)

Thanks for the quick fix! When can I expect to be able to use the fixed version? I'm using Expo Go.


Bump-up Go version to 1.16 on CI

Bump-up Go version to 1.16 on CI

Bumped-up in following pull request: https://github.com/RedHatInsights/insights-results-aggregator-utils/pull/278