Multifiles #73 prototype

Solved conflicts (multifiles now full functional yet, missing correct price calculation for each board)


Add a limit order test

Describe your changes and provide context

add a dex module test for multiple matching limit orders

Testing performed to validate your change

lgtm, pending nit comments


ibm_db_sa 0.3.4 -import the DB API module 'No driver found for dialect 'ibm_db_sa+pyodbc400'' but failed

** While creating the engine for 'ibm_db_sa+pyodbc400://u026607:*****@<IP_ADDRESS>:446/t10050bp', SQLAlchemy tried to
** import the DB API module 'No driver found for dialect 'ibm_db_sa+pyodbc400'' but failed.

**  + This is because 1 of 2 reasons:
**  1.) You forgot to install the DB API module 'No driver found for dialect 'ibm_db_sa+pyodbc400''.
**  --> (Try: 'pip install No driver found for dialect 'ibm_db_sa+pyodbc400'')
**  2.) If the above step fails, you most likely forgot to
**  --> install the actual database driver on your local
**  --> machine! The driver is needed in order to install
**  --> the Python DB API ('No driver found for dialect 'ibm_db_sa+pyodbc400'').

This dialect is for IBMi ODBC driver to be used with ibm_db_sa.
Please open a new issue if the issue continues to exists or you need help with respect to pyodbc400 dialect.
Thanks


Updated test_draw_samples function to include docstring/comments

Addresses issue #82

Also changed n_s parameter to sample_size in draw_samples function per peer feedback in R repo to make parameter name more intuitive


Populate new file/stream/video claim metadata

The Issue
https://github.com/lbryio/types/blob/a6f2fd6d5f382f0012383b9076d650c1f6791ada/v2/proto/claim.proto#L29
This includes:
file hash/name/size
video height/width/duration (from video metadata?)
release time (is this set to the current time if left blank, or let apps handle that?)
System Configuration

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

Anything Else

Screenshots

Internal Use
Acceptance Criteria

Definition of Done

[ ]  Tested against acceptance criteria
[ ] Tested against the assumptions of user story
[ ] The project builds without errors
[ ] Unit tests are written and passing
[ ] Tests on devices/browsers listed in the issue have passed
[ ] QA performed & issues resolved
[ ] Refactoring completed
[ ] Any configuration or build changes documented
[ ] Documentation updated
[ ] Peer Code Review performed

Is this ticket to update the publish API call? It looked like it might be, so I grouped it with the tag-based discovery epic. If I misunderstood, a ticket to update publish should be created and associated with the aforementioned epic.

We are missing file hash, and adding more metadata to video/image/audio files

This is now fixed in 0.36


[docker-compose] Move Camuda 8.5 files from camunda/camunda-platform to this repo

This pull request introduces several changes to the GitHub workflows
I copy all related docker-compose with GitHub workflows
and I change the path of the docker-compose file in docker-compose/camunda-8.5

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@EzzOps Thanks for your effort :raised_hands:
We need the following:

Preserve the Git history by using camunda/camunda-platform as a remote (don't just copy the files).
Remove everything outside the docker-compose/camunda-8.5 dir (yes, remove the GHA workflows too).

@aabouzaid Thanks for your message ❤
I am Done with it
If you have any additional requirements, feel free to let me know 🙏

@EzzOps Thanks for your contribution :raised_hands:
I just found that we need to move all versions at the same time to avoid conflicts. So I will close this PR.
Please find another task, and sorry for the inconvenience.


Add an extra bound T: ::core::marker::Copy for each generic parameter T when deriving Enumerable on generic data types, as a workaround for #51

This should avoid #51 for now. #51 should be kept open for a while.


Applications is Damaged after rebranding

After rebranding the Munki v<IP_ADDRESS>74 Beta using munkirebrand

The app opens via /Applications/ right click and open

I saw in the slack channel why it breaks , please ignore the issue logged , sorry


Provide support for Azure Search

The current templates (optionally) deploys an Elastic Search cluster. This adds 3 VMs to the overall cost of the template. By adding Azure Search we should be able to provide better functionality with a lower maintenance overhead and lower cost.

An Azure Search plugin is available now here: https://github.com/catalyst/moodle-search_azure
We are currently evaluating if we should replace the dependency on Apache Tika by Indexing Documents in Azure Blob Storage with Azure Search (https://docs.microsoft.com/en-us/azure/search/search-howto-indexing-azure-blob-storage)

[Moving some notes from @nimojg-microsoft  on #64
Here is the link on GitHub https://github.com/catalyst/moodle-search_azure and it is also in the Moodle plugin directory here: https://moodle.org/plugins/search_azure
Here is the ARM Quickstart for having an Azure Search Service: https://azure.microsoft.com/en-us/resources/templates/101-azure-search-create/

Fixed by #81


abandon the current Pomodoro, and set an intention for a new one

How do you envision the behavior of this?

Create a new intention for a shorter Pomodoro that ends at the same time as the abandoned one
Create a new Pomodoro that would push back the schedule until the next long break
Something else

How do you envision the behavior of this?

Create a new intention for a shorter Pomodoro that ends at the same time as the abandoned one
Create a new Pomodoro that would push back the schedule until the next long break
Something else

This is for the nexus model (as everything now is) rather than the fixed-pomodoros model, and it should work the same as the cut-short behavior of evaluating the final interval as "succeeded" (i.e.: cut the current pomodoro short, start a break) except that this should break the streak rather than continuing it.
Right now setting abandoned does nothing to any currently-running interval, which is just a bug.


[NG] Page size change was not triggering a state change (#1752)

During 0.9 -> 0.10 refactoring, the refresh has no longer been managed locally in the datagrid component, but delegated to the state provider service. Thus, we're no longer listening to page.change events directly.
StateDebouncer calls added to the size setter, similar to the current setter.
Tests are checking initial size change (from not set), then transition from one size to another, finally a size reset.

@Jinnie
This is ready to go! Can you backport to 0.13?


Added caveat about the auth token

@nickbp I'm not yet sure if this text can appear on the open site as well as enterprise, but either way, could you please read this over and make sure it's accurate?

LGTM. I don't have access to merge.

@alberts Will an auth token be required for Open clusters at any point in the future? It's just that I'm trying to figure out if I need to create a separate uninstall page for enterprise, or if I can add this caveat about the auth token and eventually it will become relevant to an Open user.

@joel-hamill I made those change. The "you need" wasn't necessary, but wasn't a mistake -- I meant "to get the auth token that you need". Unless you feel differently, I'd like to merge this and revisit if it turns out that the auth token caveat will never be relevant to an Open user.

@sascala i believe core.dcos_acs_token is enterprise only. you should be able to verify by spinning up an open cluster and running. if so, we'll need to split this topic out between enterprise and OSS.

Ahh OK. I’ll test and make sure

Right you are:
calico:~ suzanne$ dcos config show core.dcos_acs_token
Property 'core.dcos_acs_token' doesn't exist
calico:~ suzanne$


Makedatasets: option to pad images < target size, and downsize images > target size

when presented with a given TARGET_SIZE, makedatasets could optionally be used to pad (with zeros) any image/label pair that are smaller than TARGET_SIZE
Images larger than TARGET_SIZE would still be downsized, like now

not supported by tf.keras.preprocessing.image.ImageDataGenerator
one option would be to modify the images in place ... before being passed to tf.keras.preprocessing.image.ImageDataGenerator

I think this should be a stand-alone utility that creates a new set of images that are padded

I have made a new utility function (utils/pad_folder_of_images.py) that will read each image and label pair, and create new copies of each that are either padded, or downsized by preserving the aspect ratio, then padded. The result is an image with TARGET_SIZE that preserves the aspect ratio of every image, regardless of size

this is now provided as utils/pad_folder_of_images.py


with large font sizes, Terminal prompt can have odd left-offsets

taken at maximum font zoom:

this is due to a margin-left: 1em on the "right elements" part of the Input component.


Remove unused import

There are too many unused_import warning on Parabeac-Core. I removed all unused_import warning. but still 308 problems on my vscode 😭

Dang! Thank you for helping clean up!

Thanks for your review 👍


[1.16] Crash when Eidolon is installed

As the title.
Any version of Forgery 3.1+ causes a crash when Eidolon is installed.
Happens in a clean instance with only the two mods (Plus eidolon's prereq, curios).
latest.log uploaded here.
https://gist.github.com/Weedoof/dbb27a7f4a1adc5f1d72059f68a19f0b
(Oh, and on a more personal note - thanks for still updating 1.16!)

set utility.mob_ids to banned. (of if you use limit_runtime_configs it can be false).

Well, mixed news.
Setting mob_ids to banned didn't work for eidolon, but false with limited runtime configs worked.
Only issue is that now there are other mods causing issues. They did earlier too, I just didn't notice them earlier since they were buried under a small mountain of errors. Those other mods being Simple Planes and Twilight Forest.
I assume the errors are the same, but if not here's the latest.log for each.
https://gist.github.com/Weedoof/4f3291a219d210991fc98c675c5e30b7 - Simple planes
https://gist.github.com/Weedoof/6ab1815094c84a7cb59517ec3b892522 - Twilight Forest

that would be because it wasn't actually mod_ids and i missed the actual reason in the original log


StartVoiceRequest - Exception ApiAiSDK.AIServiceException: Cannot access a disposed object.

I am using Xamarin Forms instead of developing each individual platform. I have implemented the code and everything works perfectly fine on the android platform, but it is not quite working on the iOS platform. The error I am receiving is as follows:
SpeaktoitRecognitionService: StartVoiceRequest - Exception ApiAiSDK.AIServiceException: Cannot access a disposed object.
Object name: 'System.Net.Sockets.NetworkStream'. ---> System.ObjectDisposedException: Cannot access a disposed object.
Any ideas how to approach this issue?

This error happens after the AiService_ListeningStarted function is executed.


fix(test): updated tests after latest upstream changes

What this PR changes/adds
Fixes the DataPlaneStoreTest.
Why it does that
Incorporate latest upstream changes.
Further notes

The CosmosDataPlaneStoreTest does not override the DataPlaneStoreTestBase because there, time limits are set hard coded to 500 ms, which is too short for Postgres@CosmosDB. Unfortunately there also is no way to override a nested test class.

Linked Issue(s)
Closes # <-- insert Issue number if one exists

Codecov Report
Patch and project coverage have no change.

Comparison is base (08e1aad) 69.04% compared to head (e58a5b3) 69.04%.
Report is 1 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #55   +/-   ##
=======================================
  Coverage   69.04%   69.04%
=======================================
  Files          26       26
  Lines         646      646
  Branches       22       22
=======================================
  Hits          446      446
  Misses        197      197
  Partials        3        3

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


Does this plugin still work?

I tried using this plugin to export my page.

The plugin opens
I'm able to choose the options I want
I press export and pick a filename
No file is created afterwards

Any suggestions?

Still works on my machine...
1.Spotlight run 'Console'
2. Library/Logs > com.bohemiancoding.sketch3 > plugin log.log
3. find relevant error message?

Experiencing a weird issue with installing this plugin.
Opening from the plugin file, or dragging into the plugin manager results in nothing.
Tried others, like Confetti by Yummygum, and no worries.
Have completely uninstalled SketchApp, setup anew and re-done registration. Still nothing.
Any ideas?


Displaying large dates

Pandas' datetime formatting options make a lot of sense for contemporary dates (ISO8601 format) like 2023-01-18 21:23:06.  This makes little sense in a paleo context, so we need a way to display dates in the dataframes that takes advantage of units/context.
Currently,  Pyleoclim bypasses this issue by assigning the time variable as a new axis to the pd.Series object for display purposes. Is this the best strategy? It also seems like we could be leveraging the NumPy view() functionality with something like .view("M8[100Y]").  Think big: if I have a series of 2 Ga every with a data point every 50 million years, how would we display this?

I'd suggest just displaying self.time and self.time_unit, pandas' repr of datetimeindex is unlikely to change anytime soon

Yes, that's what is currently being done in __repr__ and .view(). Closing this as we've got better things to do.


What is the license?

What license is this repo released under? Can you add a LICENSE file?

Sure. 113567ba71d696fd31c28a48bdbd1a72e9b6ee0c


feat(handlers): support kernel modifier

Fixes #142
I don't know how to properly test this, so please let me know if I missed something 🙏🏼

Will be available in next minor release sorry took long!


Log collection

We should have a way to collect and analyze the logs from the containers, particularly as they get increase in number.

Hubado now comes with a built-in Loki+Grafana stack.


Reject non-declared params

It would be nice if grape could reject a non-declared param. Something along the lines of:
params do
  requires :first_name, type: String

  reject_non_declared
end

If we specify age, it is rejected since because it has not been declared.
curl -d '{"first_name": "dave", "age": 32}' \
       'http://localhost:9292/statuses' \
       -H Content-Type:application/json \
       -v
# => HTTP 400

Here's my hacky solution for the time being:
module Helpers
  def extra_params
    @extra_params ||= begin
      declared_params = declared(params, include_missing: true).to_h
      params.to_h.reject { |k, v| declared_params.key?(k) }
    end
  end

  def reject_extra_params
    unless extra_params.empty?
      msg = "Unrecognized parameter(s) provided: #{extra_params}"
      raise Grape::Exceptions::Base.new(message: msg, status: 400)
    end
  end
end

class Foo < Grape::Api
  helpers Helpers

  post do
    reject_extra_params
    params
  end
end

This is a dup, sSee issues #810, #1603, and previous PR #1158. There's a new PR being attempted for this in https://github.com/ruby-grape/grape/pull/1606, you should check it out, seems like a cleaner solution than what you propose here.

K, thx. sry about the dup.

No worries @dhulihan!


Best practice for events (and for R-Ladies organizers in general)

Tips, published blog posts, etc.

R-Ladies Madrid organisers have gathered some info of what we think worked for us best:

Organise the year in advanced. Even if you change your plan in the middle is always good to know what to except of this year to know what worked or not.
Find speakers at least two months before the talk. Even if it is a 5 minutes talk, it will give you peace of mind and time for people to prepare their talk.
Remember always there's a CoC and you are not afraid to use it! Minorities will feel at home if there's someone there to guard their safe space.

@chucheria could you clarify what "you are not afraid to use it" means? E.g. not being afraid to exclude people from the meetup because they broke the CoC?

(and thanks a ton!!)

@maelle exactly that, sometimes can be very intimidating tell someone to shut up or that they are not welcome but the CoC actually gives you the authority to do it without being a personal issue.

Thank you, and awesome phrasing!

In the First Annual Meeting of the Mexican Chapters, I took note of this rather brilliant tip for inclusion:
Making an event inclusive can mean to be explicit about things you thought might go without saying, for instance, if kids are able to attend the meeting, say it! Chances are people with kids will show up; or, you might wanna tell people without a personal computer they can come with a notebook and a pencil and write down some ideas and that you will have a few printed handouts for them (pairing people could also be an option or hosting your event at a library/working space with available computers to loan)

Thank you @silviaegt ! 😀

R-Ladies Cotonou has to adapt a lot to make things work. I don't know if these are best practices but it could help a chapter in an area with few resources. The main points that helped us move one are:

"Members": in order to have people following our meetups we created a form that provides us with basic contact (email, how they want to contribute, what they expect) of people globally interested by R-Ladies Cotonou.

Communication/Advertisement: We reach out people by email and a WhatsApp group we created to easily reach people. Twitter and Meetup are not commonly used here so we mainly advertise by sending flyers by email to members. We also share them using WhatsApp statuses and asking our personal and professional contacts. But we still post on Twitter and Meetup.

Speakers: We encourage participants to make a short presentation of what they like the most about R or would like to know. We support them during the process. (

Inclusion: There are few orgs promoting women in Science or Tech here so we focus, for now, on having only female speakers and participants. I use "women" because our society is still very strict with gender but I make sure to explain to participants that we include all gender minorities.

Funds: So far, only our personal contacts helped us have snacks. We reached with flyers and mention we are opened to any contribution.

Logistics: Places to meet have been on the main campus of Cotonou so far. Some lecturers support us by allowing us to use their conference rooms and provide with the needed equipment (but not laptops). We manage to have snacks to make it look more welcoming and promote people talking to each other.

Online meetups: Since the beginning of the pandemic we did not have online meetups using Zoom because of the costly price of good internet and the bad network issues. However, we opted for WhatsApp meetup (still testing), we send by email the presentation and we set a time for Q&A in the WhatsApp group. Another expensive option I am exploring is to offer a data bundle to participants using the R Consortium grant, when we receive funds, to have a Zoom meetup.

I believe best practices depend on how the chapter organisers can adapt to their reality to make people comfortable at coming to the meetups and also being speakers. I hope you find something helpful! 🙂

@sbnadejda thank you, I am digesting your awesome tips. Is your flyer (used to contact sponsors) public? If so I'd add a link to it.

You are welcome. Yes, I just uploaded it here on GitHub, you can view them using this link.

mille mercis @sbnadejda

Closing because

I have digested the awesome tips from this thread;
I now have a strategy of asking more precise questions.


Delete take part’s frontend parts

Deletes:

styles
template
controller
test assertions for rendered show pages

While the controller isn’t needed as Whitehall is no longer serving these routes, the route itself needs to be kept. We rely on the routes defined in config/routes.rb to generate methods which give us the public URLs for those things. If we want to remove the routes, which we should, then we need to create substitutes for those methods ourselves.
A separate story to address this: https://trello.com/c/wvdvAKek/
For now the route has been left in, with a comment. @jamiecobbett and I considered the work to resolve this too large, and shouldn't block this clean-up PR. It will affect any format being migrated where we wish to remove old frontend code in Whitehall.
https://trello.com/c/TLCjyX9x/269-take-part-remove-any-frontend-code-in-whitehall
cc @dsingleton @boffbowsh @gpeng @benlovell

As mentioned in person, it may be good to move app/views/take_part_pages/_take_part_page.html.erb to app/views/home/ so it's closer to get_involved.html.erb, which is the only place where it's used.

@benilovj Done in 542a2c7

:+1:


BIDC Information

Created a wiki page that describes the process for working within the BIDC space.
Hopefully we can keep this updated with process for working at BIDC, using the 3D printers, and current access list.
Feel free to add to this page or drop any comments.

Has all the main info we were looking to add, so LGTM


Add ArcFace loss.

System information.
TensorFlow version (you are using): 2.8
Are you willing to contribute it (Yes/No) : No (but willing to provide starter if required.)
Describe the feature and the current behavior/state.
ArcFace, or Additive Angular Margin Loss, is a loss function used mainly in face recognition tasks. It is used to obtain highly discriminative features. This loss function can be used in both vision task and nlp task. So, I think its general for keras_cv and keras_nlp.
Paper: https://arxiv.org/pdf/1801.07698.pdf,
TL,DR, https://paperswithcode.com/method/arcface
Citation: 2939  (current)
Will this change the current api? How?

tf.keras.losses.SparseArcFace
tf.keras.losses.CategoricalArcFace

Who will benefit from this feature?
keras practitioners.
Contributing

Briefly describe your candidate solution(if contributing):

https://github.com/4uiiurz1/keras-arcface

ArcFace, or Additive Angular Margin Loss, is a loss function used mainly in face recognition tasks

What are some NLP use cases? It seems like it might be a good fit for KerasCV specifically.

Sorry I miswrote, it should be only CV task.
Could you please move this issue to KerasCV?


feat: add deadline selection for termins

Add the option to be notified only if an appointment is available before a specified deadline.
The user is prompted to specify a the number of days n, and they will only be notified if an appointment is available within the next n days.
This is useful because appointments are frequently available in several months in the future, while we are only interested in more immediate appointments and don't want to be notified otherwise. See #10.

Merged with #70, sorry for taking so long :(
Thanks for contribution!


[HDFS-15202] boost short circuit cache

Improve HDFS-client reading performance.
The idea: create few instances ShortCircuit caches instead of one.
It helps avoid locks and increases performance.

Hi! I'am newbe here, looks like it the first PR here)
How to propse this PR like all it is doing?

Found, sorry for bothering)


Image size increases if the uploaded image is compressed image

I have noticed when a compressed image is uploaded and if the image quality save is set to 100 then uploaded image size increases significantly.

If the compressed size is 100 KB and uploaded to server using intervention package with save method and option of '100' image quality then the uploaded image's size increased significantly 700-800KB.

$thumbnailImage->save($originalPath . $uploadFileName, 100);
Original Compressed Image Size
100 KB
After uploading to server via Intervention Package
704 KB
**Environment **

PHP Version: 7.4
OS: Windows 10
Intervention Image Version: 2.7

The previous compression and optimization is discarded during the decoding and encoding process. This is normal behavior.
The deciding factor is the quality parameter, which in your example is 100, resulting in a very large file size.  You can reduce the file size by lowering the value of the parameter. The additional compression optimization must then be done again.


Add a loading spinner on the test-connection screen

It takes a bit to validate the connection on the "test-connection" screen. During that time the screen is empty. we should add some loading spinner.

Yes sure, thanks for the info.


Added nomis-production to the hmpps-production.json

Include the new nomis environment in the hmpps-production.json file.

Change ported in a later pull


About how to change the default value

Hi, Thanks for sharing the data and source code!
I want to ask how can I change the default values of k1 and b in msmarco passage retrieval (k1=0.82 and b=0.68)?https://github.com/castorini/anserini/blob/master/docs/experiments-msmarco-passage.md
Thank you!

This is clearly specified here: https://github.com/castorini/anserini/blob/master/src/main/java/io/anserini/search/SearchMsmarco.java#L59


Windows 10 Version 1511 Samples

The win10-0507 branch is a servicing branch for Version 1507 samples. (Sorry, I named it incorrectly. Should be win10-1507, not win10-0507. I'll fix that.) Please do not pull 1511 samples into the 1507 branch.


dialyzer errors don't seem to get passed through correctly

seems that the return value of dialyzer doesn't get passed back to the shell correctly:
===> Doing success typing analysis...
===> Analyzing 16 files with "/Users/evan/src/xxxxxxx/_build/.rebar3.otp-17.4.plt"...
xxxxxxx_app.erl:24: Function start/2 has no local return
$ echo $?
0

The dialyzer provider uses the dialyzer Erlang API, not the CLI, so there is no exit value to pass through. When I wrote the provider I didn't error when warnings were produced because technically dialyzer produces warnings, and not errors. This was probably a mistake. Should the provider error if any warning occurs?

IMO, yes.  While they're warnings (does dialyzer ever produce errors?), the dialyzer tool does seem to return 1 when they occur.  Not doing so would definitely lessen the usefulness of this provider in terms of automated tooling.
Additionally, I noticed this:
===> Adding 261 files to "/Users/evan/src/xxxxxxxx/_build/.rebar3.otp-17.4.plt"...
Unknown function dbg:ctp/1
Unknown function dbg:p/2

.... bunch of stuff here

Unknown type ssl:erl_cipher_suite/0
Unknown type ssl:verify_type/0
erlcloud_util.erl:30: Call to missing or unexported function crypto:sha256/1  <=== this should maybe also be an error?
===> Doing success typing analysis...

I don't know if this is the same issue, or is an easy thing to catch, but it's definitely worrying if deps have clear errors, even if we're not analyzing them.

Maybe it should be a simple option to error on warn? It is useful for use in CI.
I guess speaking of "errors" is confusing with dialyzer. But it would be nice to be able to fail if dialyzer isn't clean for a run. rebar3 dialyzer --fail-on-warn or something.

Though I'd argue failing should be the default. If someone wants it to continue on there would then be a flag to not consider it a failure.

A dialyzer run can carry out 4 separate PLT operations (remove from, check, add to and success typing analysis) on a single run. Warnings can also be produced by the provider itself if it can't find a beam file. Should a warning in any fail the provider immediately? Or only at the end of all operations should the provider fail?
@evanmcc: I am unsure if this is an example or not but you can add extra apps to the PLT. The provider uses applications in .app files to find deps. If deps are not listed then the provider does not know that they should be in the PLT. You can add extra applications to the PLT such as (I can see you are missing these two):
{dialyzer_plt_apps, [ssl, runtime_tools]}.

I think that it should exit on an error immediately in add, remove, or check.  It should accumulate as many warning messages as it can from the analysis step, then return them and exit with an error.
Warnings about undefined functions and types (what step are those from, check?) should of course be displayed, but I was mostly concerned about the line:
erlcloud_util.erl:30: Call to missing or unexported function crypto:sha256/1

That's a problem in a way that undefined types are not, so maybe error there and exit at the end of that phase?

Ok, as the flags currently defines 2 phases (updating plt and success analysis) we can use those two phases and fail at the end of a phase if warnings are produced. This means success analysis can be done even if updating the plt produces warnings and "fails" by skipping the update phase.

@evanmcc actually we don't want it to error on a problem with a dep unless you explicitly say to check that dep.

@fishcakez does that makes sense? That we error only on warnings for project apps or deps explicitly included in what should error.
Do we have an easy way to ignore warnings? It is common for people to use a file of warnings and grep them out of the result https://github.com/basho/riak/blob/develop/Makefile#L156
Would be nice if we can not error but consider it a successful run and return status code 0 if the warnings are ones we want to ignore.

@tsloughter it already exists when building a PLT: {dialyer_plt_warnings, false}.

Oh my bad I got confused that only works to ignore warnings for deps. We can add a similar feature to the ignore warnings file, though likely we should bring in some tests before doing that.

This can be moved to another ticket.
For this issue simply need to abort with status code 1 if Warnings isn't empty in success typing. I think that is what the default functionality should be and then the user has to explicitly say they want to abort if there are warnings in building the plt.
Does that sound right? I always get confused with terms when discussing dialyzer, haha.

I can handle this ticket (fail on warnings) some time in the next few days. I think we should take the  following approach:

Split warnings into unknowns types (aka "unknowns") and other warnings (aka "errors"). We already do this when formatting the warnings because "unknowns" are prefixed with ":0:" as they have no file/line number.
Exit at the end of the PLT building phase IF there were "errors". Currently no "errors" are returned if dialyzer_plt_warnings is false (but there may be "unknowns").
Exit after success typing analysis IF there are "errors".

That sounds good to me.

This should be resolved by #132 and #152.

Thanks, @fishcakez, I'll check this out as soon as I am able, which should be sometime Tuesday.

@evanmcc @fishcakez can we close this?

yup, it looks like it works as expected, thanks!


Extremely unhelpful.

This page is ab-so-lutely unhelpful. It only gave me information that I already read in my debugging error list.
Why not suggest some common causes or ways to fix the issue?

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

ID: 6967b409-0e48-d72e-8ed6-1c429ecead02
Version Independent ID: 0b6ebb5b-d15c-5e37-4a9d-0d81aba9f2cc
Content: Linker Tools Error LNK1120
Content Source: docs/error-messages/tool-errors/linker-tools-error-lnk1120.md
Product: visual-cpp
Technology: cpp-diagnostics
GitHub Login: @corob-msft
Microsoft Alias: corob

@alexjheck
Sorry you didn't find this helpful. There's only one way to fix error LNK1120, which is by fixing all the preceding LNK2001 and LNK2019 errors. Information on how to identify and fix these errors is found in the linked topics. LNK1120 can't appear as the only linker error, and it can't be resolved independently.
Is there some other information you were hoping to see here?

Colin,
Thank you for getting back to me. I figured out the problem with my code,
thank you. At the time there was only the one error message and it was
confusing.
As a student, I visit the Microsoft Docs help page frequently and have felt
on multiple occasions that the site needs to provide more information about
error messages and how to fix them. Many times I have come across a page
that tells me no more than what my error message says. In that case, I
would find that page unhelpful and a waste of time.
Thanks again for the response and for considering my request for the
elaboration of errors on your help page.
-Alex
On Mon, Jul 22, 2019 at 3:35 PM Colin Robertson<EMAIL_ADDRESS>wrote:

@alexjheck https://github.com/alexjheck
Sorry you didn't find this helpful. There's only one way to fix error
LNK1120, which is by fixing all the preceding LNK2001
https://docs.microsoft.com/cpp/error-messages/tool-errors/linker-tools-error-lnk2001
and LNK2019
https://docs.microsoft.com/cpp/error-messages/tool-errors/linker-tools-error-lnk2019
errors. Information on how to identify and fix these errors is found in the
linked topics. LNK1120 can't appear as the only linker error, and it can't
be resolved independently.
Is there some other information you were hoping to see here?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/cpp-docs/issues/1360?email_source=notifications&email_token=AKYESINRBBT7V7HVGKMG2SDQAYDZ3A5CNFSM4IFPU7D2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2Q5TVQ#issuecomment-513923542,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKYESILA4BKQ3E265IU5J2LQAYDZ3ANCNFSM4IFPU7DQ
.

Resolving, as a request for general improvements is pretty much what we're doing all the time. 🍰

we can tell... (sarcasm)


Automatically run matching program when renamed or symlinked

This is a feature request based on what busybox does when linked to the filename of any of its applets. Would be really neat and useful for Conty to support something like that considering all the programs included within it.
So, if I made a link to conty.sh called wine, then the version of Wine included within should run.

Good idea, will try to implement this.

Nice idea, but IMHO the symlinks should not conflict with the real programs in $PATH, so a user defined destination directory for the symlinks would make sense.
To manually create symlinks for all built in programs (here in $PWD) you could simply do:
while read -r line; do ln -s ./conty.sh "$line";done <<< "$(./conty.sh ls -1 /usr/bin)"

Implemented. Also added AUTOSTART and AUTOARGS variables. AUTOSTART variable has a higher priority than a symlink name.


refact: PartialDeep alignment for different structures

Summary
Align type gaps for different structures:

[x] Map/ReadonlyMap/WeakMap
[x] Set/ReadonlySet/WeakSet
[x] Promise
[x] Unknown
[x] Function/Date
[ ] RegExp?
[ ] Error?

Why
There are a lot of gaps in the implementation, I've covered all of them with tests
Let me know what happens with types that are extended (e.g. Error can be extended and usually people do that so I didn't include it in the list)

cc @gvergnaud @ecyrbe let me know what you think, I do agree this type can be simple enough, but it has a lot of gaps that I'm happy to fix (I can do it for all deep types that are implemented)

@Beraliv Thanks for fixing all of these edge cases, that looks great! What do you think about  generalizing the PartialDeep function into a TransformDeep one taking a mapper function to run on every object level?
Pushed a few commits to your branch with a proof of concept of this. It's lacking doc comments as well as unit tests, but if you find it interesting I'll let you take it from there :)

Absolutely, let me have a look at it later today and I will try to play with it this week

Fixed the remaining things, added doc and reformatted tests. I don't think we need to care too much about intersections with primitive types until we have an explicit feature request for this


Magic Eden and Unisat throw Method Not Supported/ provider.request is not a function

Is there an existing issue for this?

[X] I have searched the existing issues

SATS-CONNECT Version
2.8.3
Current Behavior
Running the Sats connect example here
https://sats-connect.netlify.app/
when i click the "connect account" 2 options are provided xverse and unisat
selecting the unisat option throws an error
code -32001
message: Method not supported by selected wallet.
Expected Behavior
The unisat dialog should pop up.
Steps To Reproduce
go to https://sats-connect.netlify.app/
Click "Connect Account"
Select unisat
Link to Minimal Reproducible Example (CodeSandbox, StackBlitz, etc.)
No response
Anything else?
From a Local Run Applies to ME/Unisat also throw an error.
const provider = await getProviderById("unisat");
       console.log(provider);
       const response = await request(
           'getAccounts', {
               purposes:[AddressPurpose.Ordinals, AddressPurpose.Payment],
               message: 'Please share your public address to connect your wallet'
               }
               ,"unisat"
       );

 const provider = await getProviderById("magicEden.bitcoin");
        console.log(provider);
        const response = await request(
            'getAccounts', {
                purposes:[AddressPurpose.Ordinals, AddressPurpose.Payment],
                message: 'Please share your public address to connect your wallet'
                }
                ,"magicEden.bitcoin"
        );

sats-connect.js?v=4467d633:8082 Uncaught (in promise) TypeError: provider.request is not a function
    at request (sats-connect.js?v=4467d633:8082:35)
    at async magicEdenConnect (Header.tsx:53:26)

on ME using this works
await getAddress({
getProvider: getBtcProvider,
payload: {
purposes: [AddressPurpose.Ordinals, AddressPurpose.Payment],
message: "Address for receiving Ordinals and payments",
network: {
type: BitcoinNetworkType.Mainnet,
},
},
onFinish: (response) => {
console.log("onFinish response, ", response.addresses);
            // do some action like updating your app context
            //connectionStatus?.setAccounts(response.addresses as unknown as Account[]);
        },
        onCancel: () => {
            alert("Request canceled");
        },
    });

Which is an example from their website, however getAddress in sats-connect is marked as deprecated.

Closing this as unisat and ME dont support the new interface.


bigint and certain decimals returned as string

Implementing dbt-exasol I am following dbt-labs test suite to verify functionality of the dbt-exasol adapter.
In this test suite and also regarding a previous issue equality test dbt-utils, we have noticed a behaviour of the pyexasol, that I am not sure whether this is by design or accident.
When testing two relations to be equal, the adapter test is checking row counts and bi-directional EXCEPT query to realize the test:
with diff_count as (
    SELECT
        1 as id,
        COUNT(*) as num_missing FROM (
            (SELECT {columns} FROM {relation_a} {except_op}
             SELECT {columns} FROM {relation_b})
             UNION ALL
            (SELECT {columns} FROM {relation_b} {except_op}
             SELECT {columns} FROM {relation_a})
        ) as a
), table_a as (
    SELECT COUNT(*) as num_rows FROM {relation_a}
), table_b as (
    SELECT COUNT(*) as num_rows FROM {relation_b}
), row_count_diff as (
    select
        1 as id,
        table_a.num_rows - table_b.num_rows as difference
    from table_a, table_b
)
select
    row_count_diff.difference as row_count_difference,
    diff_count.num_missing as num_mismatched
from row_count_diff
join diff_count using (id)

Executing the test using test tables outputs the BIGINT column from the row_count_diff.difference CTE as follows:
('0', 0)

In dbt standard adapters (SQLAdapter as base class), isinstance(row[0]) is being used to figure that first column value is a string, because pyexasol delivers BIGINT and decimal with precisions > 18 in quotes / as strings.
These standard equality tests then fail, because assertion on '0' failed because expected difference in row count is 0.
To then test the pyexasol with different datatypes, I created the following test python script to confirm behavior of pyexasol:
import pyexasol

TEST_SQL = """
with testsql as (
    select
        cast(1 as INTEGER) as value_int,
        cast(1 as decimal(18,0)) as value_decimal18,
        cast(1.111 as float) as value_float,
        cast(1.111 as decimal(6,3)) as value_decimal,
        cast(1 as decimal(19,0)) as value_decimal19,
        cast(1 as BIGINT) as value_bigint,
        cast('test' as VARCHAR(2000000)) AS value_text,
        cast(9999999999111111111111111.111 as double precision) as value_double,
        cast(true as boolean) as value_bool,
        cast(date'2022-01-01' AS date) AS value_date,
        cast(timestamp'2022-01-01 20:00:00.000' AS timestamp) AS value_ts,
        cast('2022-01-01 10:00:00.199' AS TIMESTAMP WITH LOCAL TIME ZONE) AS value_ts_tz
)
select * from testsql
"""

C = pyexasol.connect(dsn="localhost:8563", user="sys", password="start123")

stmt = C.execute(sql)

for row in stmt:
    print(row)
    print(
        "{}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}".format(
            type(row[0]),
            type(row[1]),
            type(row[2]),
            type(row[3]),
            type(row[4]),
            type(row[5]),
            type(row[6]),
            type(row[7]),
            type(row[8]),
            type(row[9]),
            type(row[10]),
            type(row[11]),
        )
    )
    assert isinstance(row[0], int)
    assert isinstance(row[1], int)
    assert isinstance(row[2], float)
    assert isinstance(row[3], float)
    assert isinstance(row[4], float)
    assert isinstance(row[5], int)
    assert isinstance(row[6], str)
    assert isinstance(row[7], float)
    assert isinstance(row[8], bool)
    assert isinstance(row[9], str)
    assert isinstance(row[10], str)
    assert isinstance(row[11], str)

C.close()

Using a exasol 7.1.11 on my local machine, I am getting the following output for the print(row) statement:
(1, 1, 1.111, '1.111', '1', '1', 'test', 9.99999999911111e+24, True, '2022-01-01', '2022-01-01 20:00:00.000000', '2022-01-01 10:00:00.199000')

This shows that INTEGER, DECIMAL(18,0) and FLOAT are represented as numbers - which leads to correct interpretations isinstance python method.
But the DECIMAL(6,3), DECIMAL(19,0) and  BIGINT numbers are being returned as strings and asserts will fail using isinstance.
My question is why is pyexasol showing this behaviour - is it by design?
The standard SQL adapter implementation from dbt-labs is assuming that isinstance is delivering correct datatypes to detect text columns. This is why with pyexasol BIGINT and some DECIMAL datatypes are being treated as strings by default.
One solution would be to change the default SQLAdapter's behaviour to actually use schema information delivered by pyexasol instead of using the isinstance method. But I wanted to understand why pyexasol seems to be behaving differently than Postgres, Snowflake and Redhisft.
Regards, Torsten

This behaviour is dictated by Exasol Websocket protocol. It uses basic JSON for data transport, and it is not possible to represent big integers and decimals with fractions part in basic JSON without using strings.
Pyexasol does not transform any data by default and returns everything "as is".
However, you may change it by passing a custom function to fetch_mapper connection option.
You may use this mapper or create your own.
Example: https://github.com/exasol/pyexasol/blob/master/examples/a04_fetch_mapper.py

Please note, some transformations are expensive and will noticeably reduce fetching performance, which might be a problem for large data sets.

Thanks for the answer. Since this is something out of the scope of pyexasol and I agree that adding this mapper to every fetch is probably an unnecessary overhead in the dbt-exasol adapter, I would rather try to overwrite the above-mentioned logic in SQLAdapter - where only for these specific cases (big integers and decimals with fraction) I would replace isinstance with using schema information to determine whether a cell is of type string.
But one more question. Can you confirm that BIGINT and DECIMALs with fraction are the only datatypes that the Exasol Websocket Protocol is converting into strings? Just to make sure - do you have a link to a resource that describes the problem with Exasol Websocket protocol and "basic JSON" to use strings?
Thx, Torsten

@tglunde Here is the specification of the websockets-api . However, I am not sure, if it states, how the types get encoded, but my guess, everything that can't be represented by JSON without loss, will be a string.

@tglunde I found actually a description of what values you can expect in the JSON.
<string | number | true | false | null>
And a number only has a limited precision in JSON, so if the Column needs more precision, the value will be a string. And, types like HASHTYPE or GEOMETRY are then also strings.
https://github.com/exasol/websocket-api/blob/master/docs/commands/fetchV1.md

Hi. I have implemented the workaround in dbt-exasol adapter, overwriting the get_result_from_cursor method, where I convert strings that have decimal or bigint into Decimal within python. Since this is only used for test results I am sure there will not be any use case with HASHTYPE or GEOMETRY coming up soon. (https://github.com/tglunde/dbt-exasol/pull/33/files# - in connections.py)
Therefore we can close this issue here.


Remove express from the peerDependencies

but make it clear in the docs that it is required if you want to use the built in router

Looks good to me.  I'll bump version to 2.0 since this is potentially a breaking change (although it would be silly for this module to be the only way a project was including express).
Thanks


update operator CR kind.

Update CR kind from MultiClusterGlobalHub to MulticlusterGlobalHub
Signed-off-by: morvencao<EMAIL_ADDRESS>

/lgtm


Fix logger include path

Fix the path for logger.hpp, otherwise make install fails.
Change-Id: I50aa9667e512c4fdf6de471dc16312d9eb3dbe30

Good catch, thank you!


Workspace.getActiveEditor is deprecated.

Call ::getActiveTextEditor instead
Workspace.getActiveEditor (/Applications/Atom.app/Contents/Resources/app/src/workspace.js:999:12)
Ex.write (/Users/seark/.atom/packages/ex-mode/lib/ex.coffee:117:28)

Thanks for the report, tracked as #42, and closed as of v0.5.0. Please notify me of any other non-compliance!


Verify open-close-open DLC channel behaviour

Actually finishes #50.
We should eventually also add assertions for the LN balances and DLC collateral values for all tests where the action results in creating a DLC.

👍
Sorry for borsing your other PR prematurely, I thought was done 🙈

Hahaha all good, I think it was done. This is just a bit more verification.

bors r+


flawfinder

Project description
Flawfinder is a simple program that scans C/C++ source code and reports potential security flaws. It can be a useful tool for examining software for vulnerabilities, and it can also serve as a simple introduction to static source code analysis tools more generally. It is designed to be easy to install and use. Flawfinder supports the Common Weakness Enumeration (CWE) and is officially CWE-Compatible.
Metadata

homepage URL: http://dwheeler.com/flawfinder/
source URL: https://github.com/david-a-wheeler/flawfinder
license: gpl2
platforms: unix, linux, darwin

@houstdav000, could you please test https://github.com/NixOS/nixpkgs/pull/117417? Thanks

Works for me on NixOS. I wrote a simple c program that it found the vuln in:
#include <stdio.h>

int main() {
  char *buffer;

  gets("%s, &buffer);
  printf("%s", buffer);

  return 0;
}

where it gave:
main.c:6:  [5] (buffer) gets:
  Does not check for buffer overflows (CWE-120, CWE-20). Use fgets() instead.


MJ3: 's subscript and superscript are in the middle, not bottom/top

Issue Summary
In MJ3, <msubsup>'s subscript does not align to the bottom of the base. Similarly, <msubsup>'s superscript does not align to the top of the base.
https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msubsup
Steps to Reproduce:

Go to https://codepen.io/alexedgcomb/pen/zYmmXwo

Observed: Subscript a and superscript b are in the middle

Expected: Subscript a to be at the bottom and superscript b to be at the top, like in MJ2:
https://codepen.io/alexedgcomb/pen/GRYYLwe

Technical details:

MathJax Version: 3.2.2
Client OS: Mac OS 13.2.1
Browser: Firefox 113, Chrome 113, Safari 16.3

I am NOT using a following MathJax configuration and loading MathJax via
<script type="text/javascript"<EMAIL_ADDRESS>
Supporting information:
MJ4 has the same issue: https://codepen.io/alexedgcomb/pen/rNqqbmL
MathML in Firefox looks as expected: https://codepen.io/alexedgcomb/pen/ExddJKg. Chrome doesn't.

Thanks for the report.  The TeX rules for placing super- and subscripts specify that if the base is a single character, then its height and depth are to be ignored (so that super-and subscripts all align if used on different letters), which is what is causing this problem.  Because TeX doesn't treat stretchy characters in the same way as MathML, MathJax has to make some exceptions to this rule (e.g., for large operators like \sum and \int), but it should also make exceptions for stretched characters like this.
I will make a PR to resolve the issue.

@dpvc , thank you for explaining!
The workaround doesn't typeset due to JS errors: https://codepen.io/alexedgcomb/pen/VwEVPme
I tried fixing, but failed: https://codepen.io/alexedgcomb/pen/bGmQgqY
MathJax = {
  startup: {
    ready() {
      baseCharZero = (n) => {
        const largeop = !!this.baseCore.node.attributes.get('largeop');
        const sized = !!(this.baseCore.node.isKind('mo') && this.baseCore.size);
        const scale = this.baseScale;
        return (this.baseIsChar && !largeop && !sized && scale === 1 ? 0 : n);
      };
      const {ChtmlScriptbase} = MathJax._.output?.chtml?.Wrappers?.scriptbase ?? {};
      if (ChtmlScriptbase) ChtmlScriptbase.prototype.baseCharZero = baseCharZero;
      const {SvgScriptbase} = MathJax._.output?.svg?.Wrappers?.scriptbase ?? {};
      if (SvgScriptbase) SvgScriptbase.prototype.baseCharZero = baseCharZero;
      MathJax.startup.defaultReady();
    }
  }
};

Changes:

Fixed JS errors via ending const {ChtmlScriptbase} and const {SvgScriptbase} lines with ?? {}
Fixed not typesetting via ending ready() with MathJax.startup.defaultReady();

Thanks for the fixes.  I was moving too quickly and didn't test as well as I should have.

Thanks for the corrections.  I was working too quickly, and was doing my testing in Firefox, and without the defaultReady() call, MathJax didn't run, and Firefox's native MathML did the rendering, and I didn't realize it and though it was fixed.  Sorry about that.
In addition to the two errors you pointed out, I was working from the v4 code, which has normalized the names of the internal objects like ChtmlScriptbase, but in v3 it should be CHTMLscriptbase.  Also, the replacement function must be a function (n) {...} not (n) => {...} in order to have the correct this value.
Here is a corrected (working) version:
MathJax = {
  startup: {
    ready() {
      baseCharZero = function (n) {
        const largeop = !!this.baseCore.node.attributes.get('largeop');
        const sized = !!(this.baseCore.node.isKind('mo') && this.baseCore.size);
        const scale = this.baseScale;
        return (this.baseIsChar && !largeop && !sized && scale === 1 ? 0 : n);
      };
      const CHTMLscriptbase = MathJax._.output?.chtml?.Wrappers?.scriptbase?.CHTMLscriptbase;
      if (CHTMLscriptbase) CHTMLscriptbase.prototype.baseCharZero = baseCharZero;
      const SVGscriptbase = MathJax._.output?.svg?.Wrappers?.scriptbase?.SVGscriptbase;
      if (SVGscriptbase) SVGscriptbase.prototype.baseCharZero = baseCharZero;
      MathJax.startup.defaultReady();
    }
  }
};

@dpvc , thank you! The v3 workaround works. I actually did happen to be interested in a v4 workaround, sorry for the confusion. I modified the v3 workaround, but I seem to be missing something:
https://codepen.io/alexedgcomb/pen/gOBQQGm

a and b are still in the middle
Right-clicking on the typeset to open the context menu throws an error

OK, for v4.0.0-alpha.1, there is a little more to be done.  There is a bug where a stretchy base doesn't get its bounding box updated when it is stretched, and that needs to be fixed as well.  I was working in the current development branch where that is already fixed, but for the alpha release, that also needs to be patched.
Here is an updated configuration for v4.0.0-alpha.1 with SVG output.
MathJax = {
  startup: {
    ready() {
      const SvgScriptbase = MathJax._.output.svg.Wrappers.scriptbase.SvgScriptbase.prototype;
      SvgScriptbase.baseCharZero = function (n) {
        const largeop = !!this.baseCore.node.attributes.get('largeop');
        const sized = !!(this.baseCore.node.isKind('mo') && this.baseCore.size);
        const scale = this.baseScale;
        return (this.baseIsChar && !largeop && !sized && scale === 1 ? 0 : n);
      };
      const SvgMo = MathJax._.output.svg.Wrappers.mo.SvgMo.prototype;
      Object.assign(SvgMo, {
        _setDelimSize: SvgMo.setDelimSize,
        setDelimSize(c, i) {
          this._setDelimSize.call(this, c, i);
          this.childNodes[0].invalidateBBox();
        }
      });
      MathJax.startup.defaultReady();
    }
  }
};

I think that will work for you.


Remove unnecessary double-double quotes

Signed-off-by: Doug Davis<EMAIL_ADDRESS>

LGTM :+1:
/cc @thaJeztah

byebye quotes
LGTM

docs failure is not related


DogeAPI Down

From the website:
"omeone was attacking the site, which lead to a technical error that caused our wallet to become corrupt, then overwritten. They never got access to the server, it was basically a DDOS. We have some of the coin in cold storage and have backups of the wallet. We have recovered the overwritten file and extracted the private keys, recovering pretty much all of the coin in that wallet.
We haven't had the resources to properly take care of DogeAPI for a while now. We haven't made any money running it. With the constant attacks and problems that come with running a site like this one we can't just let it be without actively working on it and defending it. So we are shutting it down. The service will not come back online. Users of the site will get an email within the next week detailing how to withdraw their doge.
We could resume the service and put the site back up. But we feel it is only a matter of time before a bug or hacker causes a problem we cannot fix and our users lose their doge. This is the last thing we want to happen, so in the best interest of everyone involved, we are calling it quits.
We will probably release a simplified version of the site open source so that the community can run their own APIs. We love the dogecoin community and we are sorry to all of those who built services on our API.
Do not send doge to any addresses hosted by DogeAPI. You will probably not be able to recover any funds sent after the downtime began.
We hope you understand,
The DogeAPI Team"

AltLayer Airdrop Season One Announcement

Exciting news! AltLayer token (ALT) is set to launch on Binance on January 25, 2024. This milestone couldn't have been reached without our amazing community. Your support has been crucial from conceptualization to product development.
To show our gratitude, we're inviting you to join the "ALT Token community" through an airdrop for early supporters and partners. Below is a summary:

Total Allocated ALT Tokens: 300,000,000 (3% of total supply)
Distribution Categories:

NFT Holders
Altitude Campaign Participants
EigenLayer Restakers
EigenLayer Ecosystem Partners
Celestia Stakers and others

For detailed criteria and information, check the full announcement here.
Claim opens from January 25 to February 25, 2024. Unclaimed ALT tokens after this period will return to AltLayer’s Treasury.
Thank you for being part of AltLayer's success! More to come in Season One, stay tuned.
Note: Certain regions are restricted from the airdrop. Please review the disclaimer before participating.
whatthebrain, @bolerovt, @mftrhu, @bedomax, @nladart, @rgenchev, @mucanyu, @cherepivsky, @sontl, @thalex, @MonojitBanerjee, @jhonndabi, @KelseyDH, @eueung, @evasnowind, @cryptoB0T, @alexhartley, @acarnage, @willwangcc, @jaydeep-lchauhan


[fix][broker] fix replicated subscriptions for transactional messages

https://github.com/apache/pulsar/pull/22452

/pulsarbot rerun-failure-checks

/pulsarbot rerun-failure-checks


Develop to Main

Midaz Pull Request Checklist
Pull Request Type

[ ] Ledger
[ ] Auth
[ ] Mdz
[ ] Transaction
[x] Pipeline
[ ] Documentation

Checklist
Please check each item after it's completed.

[ ] I have tested these changes locally.
[ ] I have updated the documentation accordingly.
[ ] I have added necessary comments to the code, especially in complex areas.
[ ] I have ensured that my changes adhere to the project's coding standards.
[ ] I have checked for any potential security issues.
[x] I have ensured that all tests pass.
[ ] I have updated the version appropriately (if applicable).
[ ] I have confirmed this code is ready for review.

Additional Notes

LGTM


Switzer font

This PR adds the Switzer font.

Codecov Report

Merging #668 (07857cf) into main (230439b) will not change coverage.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@           Coverage Diff           @@
##             main     #668   +/-   ##
=======================================
  Coverage   93.23%   93.23%
=======================================
  Files          16       16
  Lines         473      473
  Branches       63       63
=======================================
  Hits          441      441
  Misses         32       32

see 1 file with indirect coverage changes

Thanks for the PR! As we've been working on the new V5 release, a lot will be changing and this repository won't be storing any packages for that.
Feel free to recreate this PR in the fontsource/font-files  repository. Please follow the CONTRIBUTING.md when doing so as there are a few little differences from the current process.
There shouldn't be any major changes to make compared to this PR, only that the CLI will ask you for a bit more license information. 👍


Fan controller not added to plugin

Hi I’m trying to add Fan controller to the Plugin. but in status it's showing that

'No plugin was found for the platform "Homebridge-tuya" in your config.json. Please make sure the corresponding plugin is installed correctly'.
Kindly help me out on this

Thank you


Recommended architecture for micro services

Please answer these questions before submitting your issue.

Why do you submit this issue?
[X] Question or discussion
[ ] Bug
[ ] Requirement
[ ] Feature or performance improvement

Question

What do you want to know?

What is the recommended production configuration for micro service architecture?
I have about 100 services hosted on a VPC where in we are looking to bring an APM to monitor and manage performance for all services. When I look at Skywalking cluster setup, my understanding is the the collectors serve as backend for all the metrics and data working in conjunction with zookeeper for stage and ES for persistence. However I have a problem understanding the overall approach with java agents when it comes to decoupling the application instances from the collector themselves. I am not sure if the java agents themselves should talk to the central collector/s as then we need to know their IP's before configuring the agents (agent.conf)
This becomes a major roadblock as at any point in time the APM gets refreshed or redeployed I don't intent to restart all my applications to pick the new collector. We don't allow any static ip's configuration in our hosted AWS environment. Also DNS CNAMES have proved to be a problem as the clients typically cache them. This restricts a lot on the client/application side as this architecture is not flexible to constantly changing environments. I can think of launching a collector in every instance but not sure if the whole dependency of zookeeper and ES on every application node makes sense.
Unless I misunderstand any part of Skywalking it seems we need a light weight client/agent collector configured on every application instance that can simply allow local connections from any application (Java, SB, Nodejs, Go, Python etc). These will be responsible to buffer and send data to central collectors. In case of a central infra outage only the client/agent collector needs to be restarted to pick new IP's. The application in itself is not impacted from this outage and doesn't require a restart.

Which company or project?
Researching APM solution for various projects - Currently POC

Requirement or improvement

Please describe about your requirements or improvement suggestions.
As suggested above an agent collector will help loosely couple the application with the central APM infra. Tools like consul have a similar architecture and has worked well in my experience.

I can give you more details about the architecture.

Zookeeper is for collector cluster to detect each other. So agent don't need it. Collectors in cluster mode share the same zookeeper and elasticsearch cluster.
Agent always need some IPs and hosts to connect collector, right? What do you prefer to use? The IPs or hosts in your settings could be considered as service discovery service provided in cluster, agent uses this to query the real collector cluster IPs, and pick one in random. In agent settings, you could set more than one IP or hostname. Even use zookeeper in agent(of course we don't), you need the whole IPs of zookeeper. So there is no difference between set the collector IPs and set zookeeper IPs. In underlying, that is same service discovery mechanism.
I don't understand what is your meaning about central apm infra. APM backends need to collect, aggregate and analysis data, so, definitely they should run in a cluster. In any way, they must run a whole cluster. You can deploy collector in each VM and sharing the  same Zookeeper and elasticsearch, but I don't recommend that.

Hope this can help you to understand better.

You don't need to reboot agent to get new collector address, the collector naming service provided at the endpoint of you agent settings addresses. New cluster addresses list will be returned.

There is no central cluster node. Agent could connect anyone or some one in cluster, will get the full list finally.
And of course, this part is easy to enhance, if you have better solution for AWS.

By APM infrastructure I meant, skywalking modules comprised of Zk, Collector and ES. I am getting a good feel about how these components can discover themselves and form the quorum. This is perfect.
However the common problem that we have come across in our AWS VPC is that every hosted component is ephemeral in nature. They don't retain any state and in case of redeployments or failover they tend to come up as a new host, including new IP's. Now when we deploy the APM modules they are bound to have the same ephemeral nature. In case of a tear down/infra rebuild, due from datacenter failover, maintenance or upgrades, in some cases new hosts for Zk, Collector etc will be created and they are bound to have brand new IP's assigned.
Now all of a sudden the 100 odd skywalking java agents are going to freak out as there is no known Collectors available. Cant discover either as IP's of all Collectors have changed. At this point I don't see any other way than restart all my 100 applications (use puppet or ansiable) so that they register the new Collector IP's in the agent.conf.
If only we had a light weight stateless collector agent on each of these application hosts, they could have been restarted instead and the application is always configured to talk to this local collector agent. Sorry if I haven't been able to provide enough context on this issue.

Thanks for providing these detail info. As that, how do you think if we provide settings file change detected and  take effect at runtime? This is in our roadmap, I can speed up this feature.
If you want a sidecar, deployed at local, any http and grpc proxy could work.

And you could find more details in here: https://medium.com/@AsfSkyWalking/apache-skywalking-architecture-designs-a0d3a19409ff
I just wrote this tonight. Hope could help.

The TCP/gRPC proxy kind of makes sense. Will explore that option.

For more details considered, just a proxy for naming HTTP service should be enough. Upstream of the proxy should the collector naming service list.


Package collections are no longer in beta

For some reason, this needed a full snapshot update. No idea why. I looked hard at the diff with Kaleidoscope's "Difference" mode and couldn't see any highlighted areas. 🤷♂

Might have been due and OS or the Xcode 13 update 🤷

Might have been due and OS or the Xcode 13 update 🤷

I've updated nothing. Still running Xcode 13b5 as the project doesn't compile on RC (error building NIO) and I'm still running Big Sur.

But the package update you pushed last week fixed that, didn't it? I'm running RC and it builds and passes tests :)
https://twitter.com/johannesweiss/status/1440379995164065807

But the package update you pushed last week fixed that, didn't it? I'm running RC on BS and it builds and passes tests :)
https://twitter.com/johannesweiss/status/1440379995164065807

Ah, I pushed a package update but didn't realise that one was fixed! 🚀

Weird that tests are failing on the server, they run fine locally.


Fixing multiple github issues

#156, #156, #158, #159, #162

This pull request is now managed with CodeReviewHub. Refresh.

@brentschmaltz could you please review this?


Not Found. Thread not found error (with Google OAuth)

Describe the bug
I used Google OAuth for data persistence, and the login process worked correctly. However, after performing a query and getting a response, I continuously encounter the error “Not Found. Thread not found” during the process of saving the log on the left side. The @cl.oauth_callback function I used is as follows.
@cl.oauth_callback
def oauth_callback(
  provider_id: str,
  token: str,
  raw_user_data: Dict[str, str],
  default_user: cl.User,
) -> Optional[cl.User]:
  return default_user

I discovered a similar issue but couldn't find a solution, so I created a new issue.
To Reproduce
Steps to reproduce the behavior:

Add @cl.oauth_callback
Login using 'Continue with Google`
Entering prompt
Answers came out, but not saved the log on the left and error occured

Expected behavior
Screenshots

If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Mac M2
Browser: chrome
Version: chainlit == 1.1.400

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
I am using the @cl.password_auth_callback function for login instead of OAuth, and in this case, the same error "Not Found. Thread not found" occasionally occurs (but not always). Could the irregular occurrence of this error indicate that the cause is unrelated to OAuth authentication?
@cl.password_auth_callback
def auth_callback(username: str, password: str):
    # Fetch the user matching username from your database
    # and compare the hashed password with the value stored in the database
    if (username, password) == ('admin_id', 'admin_pw'):
        return cl.User(
            identifier="admin", metadata={"role": "admin", "provider": "credentials"}
        )
    elif (username, password) == ('tester1', 'tester1'):
        return cl.User(
            identifier="tester1", metadata={"role": "user", "provider": "credentials"}
        )
    elif (username, password) == ('tester2', 'tester2'):
        return cl.User(
            identifier="tester2", metadata={"role": "user", "provider": "credentials"}
        )
    elif (username, password) == ('tester3', 'tester3'):
        return cl.User(
            identifier="tester3", metadata={"role": "user", "provider": "credentials"}
        )
    elif (username, password) == ('tester4', 'tester4'):
        return cl.User(
            identifier="tester4", metadata={"role": "user", "provider": "credentials"}
        )
    elif (username, password) == ('tester5', 'tester5'):
        return cl.User(
            identifier="tester5", metadata={"role": "user", "provider": "credentials"}
        )
    else:
        return None

0806

Now, I'm not sure this is an OAuth problem. When I used just @cl.password_auth_callback without @cl.oauth_callback, I got the same error.
Plus, I'm using langgraph with chainlit and this error occurs irregularly. For example, (it's not clear) when the answers' lengths are long, the error occurs even if the processes are same.
Is there anybody who got the same error? please share your ideas... thanks


Confluence and Causal Invariance

Changes

Closes #458.
Adds a note with counterexamples showing that causal invariance and confluence are not equivalent, and do not imply one another.

Comments

There is some misinformation currently going on, this note is an attempt to address it.

Rendered version

Rendered version: Confluence and Causal Invariance.

This change is

@daneelsan, please use Reviewable for reviews (link is always at the bottom of the PR message). It makes it much easier to track comments.

I am going to wait for a review from @taliesinb and a possible review from Wolfram internal DQA before merging.

Wolfram DQA decided to review using notebooks, so I'm merging this for now. Any possible issues they find will be addressed in other PRs.


Port Scotland scraper

https://github.com/open-contracting/kingfisher-scrape/blob/master/ocdskingfisher/sources/scotland.py

 Port Scotland Scraper


Output of TF.lite.yolo should be 3d in Tflite.detectObjectOnImage?

Hi, cuz I'm using in flutter
I downloaded tflite-yolo4 here : https://github.com/hunglc007/tensorflow-yolov4-tflite/blob/master/android/app/src/main/assets/yolov4-416-fp32.tflite
I just commanded like below in flutter
res = await Tflite.loadModel(
model: "assets/yolov4-416-fp32.tflite",
labels: "assets/coco.txt",
);
var recognitions = await Tflite.detectObjectOnImage(
path: image.path,
model: "YOLO",
threshold: 0.3,
imageMean: 0.0,
imageStd: 255.0,
numResultsPerClass: 1);
But there was an error.

Caused by: java.lang.IllegalArgumentException: Cannot copy from a TensorFlowLite tensor (Identity) with shape [1, 2535, 4] to a Java object with shape [1, 13, 13, 425]

something more i type correctly in Tflite.detectObjectOnFrame?
actually this TFlite file
( https://github.com/iampawan/TFLite-Flutter/blob/master/assets/tflite/yolov2_tiny.tflite )
is working well and I don't know why it differs.. maybe the final output of TF-lite should be 3d? in flutter.detect? My downloaded TF-lite(and error now) has 4d final output of [1, 13, 13, 425]
And If I'm right... why my downloaded TF-lite-yolov4 has 4d output...?

Hi @SungmanHong
Which package are you using to load your models?

it's tflite 1.1.1 : https://pub.dev/packages/tflite
I tried load Object Detection model of YOLO.
actually, the YOLO model of https://github.com/iampawan/TFLite-Flutter/blob/master/assets/tflite/yolov2_tiny.tflite
can be loaded and performed well by the command like this:
-LOAD-
String res = await Tflite.loadModel(
model: "assets/mobilenet_v1_1.0_224.tflite",
labels: "assets/labels.txt",
numThreads: 1, // defaults to 1
isAsset: true, // defaults to true, set to false to load resources outside assets
useGpuDelegate: false // defaults to false, set to true to use GPU delegate
);
-PERFORM-
var recognitions = await Tflite.runModelOnImage(
path: filepath,   // required
imageMean: 0.0,   // defaults to 117.0
imageStd: 255.0,  // defaults to 1.0
numResults: 2,    // defaults to 5
threshold: 0.2,   // defaults to 0.1
asynch: true      // defaults to true
);
however, when i change the TF-lite model to https://github.com/hunglc007/tensorflow-yolov4-tflite/blob/master/android/app/src/main/assets/yolov4-416-fp32.tflite
the error comming out like this : Caused by: java.lang.IllegalArgumentException: Cannot copy from a TensorFlowLite tensor (Identity) with shape [1, 2535, 4] to a Java object with shape [1, 13, 13, 425]
I recognized the errored TF-file has a output format of 4d([1, 13, 13, 425])
and cuz the tflite 1.1.1 is a package that helps to perform the TF-lite via dart language... I think it's a compatibility issue...

Hi @SungmanHong
From what I can see, the issue is related to a 3rd party plugin rather than to Flutter itself. Please open the issue in the dedicated repository.
Closing, as this isn't an issue with Flutter itself.
If you disagree, please write in the comments,
providing your flutter doctor -v, your flutter run -v,  your pubspec.yaml
a minimal reproducible code sample that does not use 3rd party plugins,
and I will reopen it.
Thank you


ActivityNotFoundException (com.elringus.unitygoogledriveandroid.AuthorizationActivity) for Android API >= 30

Hello, and first of all thank you for this plugin.
My Android app throws an exception when the authorization screen should appear. This exception happens only when targetting Android API >= 30. It works perfectly when targeting API 29 and below.
Here is the complete stacktrace:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xyz.xyz/com.elringus.unitygoogledriveandroid.AuthorizationActivity}: android.content.ActivityNotFoundException
	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3645)
	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3782)
	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
	at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:138)
	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2307)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loopOnce(Looper.java:201)
	at android.os.Looper.loop(Looper.java:288)
	at android.app.ActivityThread.main(ActivityThread.java:7924)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)
	Caused by: android.content.ActivityNotFoundException
	at net.openid.appauth.AuthorizationService.prepareAuthorizationRequestIntent(AuthorizationService.java:372)
	at net.openid.appauth.AuthorizationService.getAuthorizationRequestIntent(AuthorizationService.java:267)
	at net.openid.appauth.AuthorizationService.getAuthorizationRequestIntent(AuthorizationService.java:296)
	at com.elringus.unitygoogledriveandroid.AuthorizationActivity.onCreate(AuthorizationActivity.java:50)
	at android.app.Activity.performCreate(Activity.java:8342)
	at android.app.Activity.performCreate(Activity.java:8321)
	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1417)
	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3626)

Is there a way to fix this?
Thank you very much for your answer

Make sure to use latest versions of the auth libs.

I ran into this exact issue a while back. Sorry, I should have written up a StackOverflow answer for it.
The problem is that with API 30+ you need to give your app permission to "Query Chrome":
You do this by adding Query to a Custom Manifest:

If you don't give it this permission, when the API tries to query Chrome it can't find the activity

Make sure to use latest versions of the auth libs.

What and where are the 'auth libs'?

https://github.com/Elringus/UnityGoogleDrive/blob/master/Assets/UnityGoogleDrive/Editor/Dependencies.xml

Also google play services resolver grabs something, iirc.

Hello, and first of all thank you for this plugin.
My Android app throws an exception when the authorization screen should appear. This exception happens only when targetting Android API >= 30. It works perfectly when targeting API 29 and below.
Here is the complete stacktrace:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xyz.xyz/com.elringus.unitygoogledriveandroid.AuthorizationActivity}: android.content.ActivityNotFoundException
	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3645)
	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3782)
	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
	at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:138)
	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2307)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loopOnce(Looper.java:201)
	at android.os.Looper.loop(Looper.java:288)
	at android.app.ActivityThread.main(ActivityThread.java:7924)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)
	Caused by: android.content.ActivityNotFoundException
	at net.openid.appauth.AuthorizationService.prepareAuthorizationRequestIntent(AuthorizationService.java:372)
	at net.openid.appauth.AuthorizationService.getAuthorizationRequestIntent(AuthorizationService.java:267)
	at net.openid.appauth.AuthorizationService.getAuthorizationRequestIntent(AuthorizationService.java:296)
	at com.elringus.unitygoogledriveandroid.AuthorizationActivity.onCreate(AuthorizationActivity.java:50)
	at android.app.Activity.performCreate(Activity.java:8342)
	at android.app.Activity.performCreate(Activity.java:8321)
	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1417)
	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3626)

Is there a way to fix this? Thank you very much for your answer

Were you able to resolve this issue already?

I ran into this exact issue a while back. Sorry, I should have written up a StackOverflow answer for it.
The problem is that with API 30+ you need to give your app permission to "Query Chrome":
You do this by adding Query to a Custom Manifest:
If you don't give it this permission, when the API tries to query Chrome it can't find the activity

@Elringus, is this the proper way to resolve this issue?

Hello, sorry for my late answer, and thank you for your answers.
Unfortunately, the solution given by @DavidJH2 doesn't work for me: adding the <queries> item in Manifest gives me the same exception.
@elringus, what are the latest version of the auth libs? I'm using 1.3.0, as shown in the file you provided

No idea, but definitely above the ones specified in the project.

Indeed!
I updated Android AppAuth version to 0.11.1, which seems to be the last one, but I still have the exception. However, this one slightly changed:
AndroidJavaException: java.lang.ClassNotFoundException: com.elringus.unitygoogledriveandroid.AuthorizationActivity$OnAuthorizationResponseListener
java.lang.ClassNotFoundException: com.elringus.unitygoogledriveandroid.AuthorizationActivity$OnAuthorizationResponseListener
	at java.lang.Class.classForName(Native Method)
	at java.lang.Class.forName(Class.java:454)
	at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
	at com.unity3d.player.UnityPlayer.access$300(Unknown Source:0)
	at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:83)
	at android.os.Handler.dispatchMessage(Handler.java:102)
	at android.os.Looper.loopOnce(Looper.java:201)
	at android.os.Looper.loop(Looper.java:288)
	at com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
	Caused by: java.lang.ClassNotFoundException: com.elringus.unitygoogledriveandroid.AuthorizationActivity$OnAuthorizationResponseListener
	... 9 more
	at UnityEngine.AndroidJNISafe.CheckException () [0x00000] in <00000000000000000000000000000000>:0

Any thoughts on this...?
Thank you

Indeed!
I updated Android AppAuth version to 0.11.1, which seems to be the last one, but I still have the exception. However, this one slightly changed:
AndroidJavaException: java.lang.ClassNotFoundException: com.elringus.unitygoogledriveandroid.AuthorizationActivity$OnAuthorizationResponseListener
java.lang.ClassNotFoundException: com.elringus.unitygoogledriveandroid.AuthorizationActivity$OnAuthorizationResponseListener
	at java.lang.Class.classForName(Native Method)
	at java.lang.Class.forName(Class.java:454)
	at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
	at com.unity3d.player.UnityPlayer.access$300(Unknown Source:0)
	at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:83)
	at android.os.Handler.dispatchMessage(Handler.java:102)
	at android.os.Looper.loopOnce(Looper.java:201)
	at android.os.Looper.loop(Looper.java:288)
	at com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
	Caused by: java.lang.ClassNotFoundException: com.elringus.unitygoogledriveandroid.AuthorizationActivity$OnAuthorizationResponseListener
	... 9 more
	at UnityEngine.AndroidJNISafe.CheckException () [0x00000] in <00000000000000000000000000000000>:0

Any thoughts on this...?
Thank you

Did you delete your Library folder before rebuilding?

Ok, so after a lot of tests, it seems that I have solved the problem and discovered some things:

In Unity, 'Development build' has to be checked in Build Settings, otherwise exception is always thrown (probably because I don't use Google API in production mode for now, something like this)
On Android API <= 29, it works with AppAuth v0.7.+ and with Chrome not installed
On Android API > 30, it works with AppAuth v0.7.+ BUT Chrome has to be installed (and <queries> item probably needs to be included in Manifest)
On Android API > 30, it works with AppAuth v0.11.1 AND Chrome doesn't have to be installed (thus  item is useless)

I hope this is a bit clearer now!

Unfortunately, my problem is still there because if I uncheck 'Development Build' in Build Settings (what I need to do tu upload app on Play Store), even with AppAuth v0.11.1, Chrome installed and <queries> item included, the exception is thrown.
And it's not related to Google API 'Test mode' because I switched to 'Production mode'...
I'm stuck on this right now.

Unfortunately, my problem is still there because if I uncheck 'Development Build' in Build Settings (what I need to do to upload app on Play Store), even with AppAuth v0.11.1, Chrome installed and <queries> item included, the exception is thrown. And it's not related to Google API 'Test mode' because I switched to 'Production mode'... I'm stuck on this right now.

I have it working on Android so I know it's possible.
Try first to build for Android to work out the General kinks, then, if necessary, continue to try to fix for iOS.
In that vain, here is my setup:

I HAVE to use Unity 2023.1.17 in order to avoid a weird crash ONLY in Google Play Console testing ONLY on the Pixel 3
I Had to recreate the Custom manifest file by unchecking the box, deleting it and rechecking the box and then re-adding the Queries option (not sure if it's still needed at this point)
I have Chrome installed
Works with Both Dev builds AND Release (I can publish it on the Google Play Store which was a whole thing in itself)
Had to set Stripping level to minimal (Unity 2023.17 was breaking on build at Anything higher

Hope I didn't miss anything.
It took quite a bit of trial and error to get it building so I'm not sure an exact procedure to get it working, but we should be able to get yours building at least for Android and hopefully it will either just work on iOS or you can carry it on to it.

Unfortunately, my problem is still there because if I uncheck 'Development Build' in Build Settings (what I need to do to upload app on Play Store), even with AppAuth v0.11.1, Chrome installed and <queries> item included, the exception is thrown. And it's not related to Google API 'Test mode' because I switched to 'Production mode'... I'm stuck on this right now.

If you like, I could help you to troubleshoot this. It was a bit convoluted to get it working on the Published app, but we should be able to resolve it partly by looking at the differences between your project and mine. I had something like 4 separate issues I had to resolve to get it working, one being I HAD to use 2023.1.17.
Let me know if you want me to help you work through it

Thank you a lot!
First of all, i'm updating to Unity 2023.1.17 because I was using an older version.
For now I have some errors to fix, but hopefully it will work after the update.
I keep you updated
Thank you again for your help

It works!!
Thank you very much for your insights.
I made it work with Unity version 2023.1.17, and with minimal Stripping level.
I did a few tests (Android only), and with AppAuth version 0.11.1, you don't need to have Chrome anymore installed (thus the <queries> item is not needed). Apparently, the opened web page is opened with Firefox on my phone, but I guess it's opening with the default browser.
However, I still have an exception thrown (but it's less annoying), when I close the browser page without choosing the desired Google Account.
Ambiguous overloads found for onAuthorizationResponse with given parameters
UnityEngine.AndroidJavaProxy.Invoke (System.String methodName, System.Object[] args) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.AndroidJavaProxy.Invoke (System.String methodName, System.IntPtr javaArgs) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine._AndroidJNIHelper.InvokeJavaProxyMethod (UnityEngine.AndroidJavaProxy proxy, System.IntPtr jmethodName, System.IntPtr jargs) [0x00000] in <00000000000000000000000000000000>:0
Error Unity Rethrow as TargetInvocationException: UnityGoogleDrive.AndroidAccessTokenProvider+OnAuthorizationResponseListener.onAuthorizationResponse(System.Boolean,null,System.String,System.String,System.String)
Error Unity   at UnityEngine.AndroidJavaProxy.Invoke (System.String methodName, System.Object[] args) [0x00000] in <00000000000000000000000000000000>:0
Error Unity   at UnityEngine.AndroidJavaProxy.Invoke (System.String methodName, System.IntPtr javaArgs) [0x00000] in <00000000000

Maybe you managed to avoid this?
Thank you again

It works!!
Thank you very much for your insights. I made it work with Unity version 2023.1.17, and with minimal Stripping level.
I did a few tests (Android only), and with AppAuth version 0.11.1, you don't need to have Chrome anymore installed (thus the <queries> item is not needed). Apparently, the opened web page is opened with Firefox on my phone, but I guess it's opening with the default browser.
However, I still have an exception thrown (but it's less annoying), when I close the browser page without choosing the desired Google Account.
Ambiguous overloads found for onAuthorizationResponse with given parameters
UnityEngine.AndroidJavaProxy.Invoke (System.String methodName, System.Object[] args) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.AndroidJavaProxy.Invoke (System.String methodName, System.IntPtr javaArgs) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine._AndroidJNIHelper.InvokeJavaProxyMethod (UnityEngine.AndroidJavaProxy proxy, System.IntPtr jmethodName, System.IntPtr jargs) [0x00000] in <00000000000000000000000000000000>:0
Error Unity Rethrow as TargetInvocationException: UnityGoogleDrive.AndroidAccessTokenProvider+OnAuthorizationResponseListener.onAuthorizationResponse(System.Boolean,null,System.String,System.String,System.String)
Error Unity   at UnityEngine.AndroidJavaProxy.Invoke (System.String methodName, System.Object[] args) [0x00000] in <00000000000000000000000000000000>:0
Error Unity   at UnityEngine.AndroidJavaProxy.Invoke (System.String methodName, System.IntPtr javaArgs) [0x00000] in <00000000000

Maybe you managed to avoid this? Thank you again

Awesome, good to hear!
I'm not sure about this last exception.
I get it as well. I didn't know about it until now since I haven't reached the point of hard-core testing yet.
I agree, I'm not super concerned about it (yet!) since it seems very sensible. I'll let you know what I find out when I get there unless you find the answer first. Maybe not too far off.
We should create a new issue if it is not just our failiar to error check.
Good work!!

Hello,
I'll keep you updated if I find a solution. Also I'm going to create a new thread.
By the way, do you test your app on Desktop, with Unity Editor, before testing it on mobile?
That was I used to do, but with new recent updates I made, now I can't auth through Google (cf. this thread).
Maybe you have some thoughts about this!
Thank you :)

Hello, I'll keep you updated if I find a solution. Also I'm going to create a new thread.
By the way, do you test your app on Desktop, with Unity Editor, before testing it on mobile? That was I used to do, but with new recent updates I made, now I can't auth through Google (cf. this thread). Maybe you have some thoughts about this!
Thank you :)

Yes, I do test on Desktop with the Unity Editor. I've yet to have a problem with it.
I'll continue on the other thread


feat(useTimeoutEffect): Implement useTimeoutEffect

What new hook does?
Functions like setTimeout, except in hook form. Returns a method to cancel the timeout, and a method to restart the timeout. It does not cause any rerenders.
Checklist

[x] Have you read contribution guideline?
[x] Does the code have comments in hard-to-understand areas?
[x] Is there an existing issue for this PR?

https://github.com/react-hookz/web/issues/33

[x] Have the files been linted and formatted?
[x] Have the docs been updated?
[x] Have the tests been added to cover new hook?
[x] Have you run the tests locally to confirm they pass?

I was hesitant about including the cancel and reset return values. It is possible to get the same functionality by changing the timeout to undefined in order to cancel the function, and a reset is possible by either changing the timeout, or setting it to undefined and then back to the same value if necessary.
The downside of this is that these methods then require rerenders, which the original method didn't need, and the current cancel and reset methods also don't need in order for them to work correctly.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Added cancel behaviour to stub to emulate ATV320 behaviour

You could refactor similar to motor.hpp to reduce duplication

Will merge for now can discuss later and make changes.


Keyboard shortcut: Send Mail

Checklist

[X] I have used the search function to see if someone else has already submitted the same feature request.
[X] I will describe the problem with as much detail as possible.
[X] This issue only contains a request for one single feature, not multiple (related) features.

App version
6.602
Problem you are trying to solve
Keyboard Navigation currently doesn't support sending the edited mail (see: https://docs.k9mail.app/en/6.400/reading/managing/#keyboard-navigation).
I think that's just a oversight.
Suggested solution
Add the Keyboard shortcut for Sending Mail.
Screenshots / Drawings / Technical details
No response

Can you be more specific? What shortcut is not working for you?

Sorry for the late reply.
There is no keyboard shortcut for Sending Mail.
So if you go to compose a mail by using 'c',
there's no key(Ctrl+Return, or something similar) for sending that mail you just composed.


adding final step to delete files to remove parent folder if empty

The DeleteFiles task used to leave the source folder around, but now the caller can specify they want to delete it, too.

LGTM. Approve.


Overlay gather

Modified:

Gather.js

Added GatherOverlay component
Changed class name from 'App' to 'Gather'

Gather/styles.js

Added several styles for the overlay

localization/en.js and   - localization/es.js:

Fixed several errors with eslist and prettier.
Added strings for month names
Added strings for overlay button

New:

GatherOverlay.js

There's a known issue with StackNavigator and pushing several times the Gather screen. The issue will not be resolved on this branch, but in another one, and then it will be merged here.


refactor, change manager logic

Coverage decreased (-0.2%) to 94.903% when pulling 32b30c521bccf3824aa207aa0ffb4351682a3ed1 on new-logic into 3b4c2c542c5fca4e077f483ce023d6e08eee1f99 on master.


Ex mode key binding override issues.

Under Settings -> Ex Mode -> Keybindings, I have Keybinding enabled but the : operator still uses atom-vim-mode-plus's weird jump to n lines down feature. It looks like keybindings are not registered even though I have the box checked.

I am currently using:
Atom: 1.21.0
Ex-Mode: 0.18.0
Vim Mode Plus: 1.9.1
OS: MacOS Sierra 10.12.5

Found the issue. There was an setting from vim-mode-plus-ex-mode that was not properly cleaned up after uninstall in ~/.atom/keymap.cson


Updated CompilesConditionals.php

Hi @taylor and everybody else! I have a small feature proposal. Posted this in #internals on slack before submitting the PR.
When writing markup I always find myself writing stuff like this:
<select>
    <option name="foo" @if(old('foo', $bar->foo) selected @endif>foo</option>
    ... etc
</select>

I find this clutters my markup quite a bit. There might be a better way, but I'm not aware of one.
What I end up doing is copy/pasting the same custom blade directive in every project to slim this pattern down a little.
<!-- for select options -->
@selectedif($condition == true)

<!-- for checkboxes and radio buttons -->
@checkedif($condition == true)

What do you guys think about this?

just use the ternary, it looks clean enough for me
<option value="" {{ (old('foo') == $bar->foo) ? 'selected' : null }}>foo</option>

No plans to add for now.

Too bad, thanks for reviewing.


[Bug] [TuGraph] When creating RuGraphRAG, no chunk node and document node was created

Search before asking

[X] I had searched in the issues and found no similar issues.

Operating system information
MacOS(M1, M2...)
Python version information
3.10
DB-GPT version
main
Related scenes

[ ] Chat Data
[ ] Chat Excel
[ ] Chat DB
[X] Chat Knowledge
[ ] Model Management
[ ] Dashboard
[ ] Plugins

Installation Information

[ ] Installation From Source

[ ] Docker Installation

[ ] Docker Compose Installation

[ ] Cluster Installation

[ ] AutoDL Image

[ ] Other

Device information
CPU
Models information
LLM:qwen-72B
embedding: bge-large-zh
What happened
创建TuGraph知识库的时候不会创建 chunk node 和 document node，
创建的结构如下

What you expected to happen
应该在创建完成后，创建chunk node 和 document node
How to reproduce
使用的Markdown文件如下构建TuGraph知识库
小红帽的故事.md
Additional context
No response
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

GRAPH_STORE_TYPE=TuGraph
TUGRAPH_HOST=<IP_ADDRESS>
TUGRAPH_PORT=7687
TUGRAPH_USERNAME=admin
TUGRAPH_PASSWORD=73@TuGraph
GRAPH_COMMUNITY_SUMMARY_ENABLED=True  # enable the graph community summary
TRIPLET_GRAPH_ENABLED=True  # enable the graph search for the triplets
DOCUMENT_GRAPH_ENABLED=True  # enable the graph search for documents and chunks
KNOWLEDGE_GRAPH_CHUNK_SEARCH_TOP_SIZE=5  # the number of the searched triplets in a retrieval
KNOWLEDGE_GRAPH_EXTRACTION_BATCH_SIZE=20  # the batch size of triplet extraction from the text

GRAPH_STORE_TYPE=TuGraph
TUGRAPH_HOST=<IP_ADDRESS>
TUGRAPH_PORT=7687
TUGRAPH_USERNAME=admin
TUGRAPH_PASSWORD=73@TuGraph
GRAPH_COMMUNITY_SUMMARY_ENABLED=True  # enable the graph community summary
TRIPLET_GRAPH_ENABLED=True  # enable the graph search for the triplets
DOCUMENT_GRAPH_ENABLED=True  # enable the graph search for documents and chunks
KNOWLEDGE_GRAPH_CHUNK_SEARCH_TOP_SIZE=5  # the number of the searched triplets in a retrieval
KNOWLEDGE_GRAPH_EXTRACTION_BATCH_SIZE=20  # the batch size of triplet extraction from the text

I have already set up

check your graph db schema?


WIP debug

Why are the changes needed?

How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

Codecov Report

Merging #3401 (4d4ae06) into master (3adcebd) will decrease coverage by 0.00%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #3401      +/-   ##
============================================
- Coverage     51.46%   51.46%   -0.01%
  Complexity       13       13
============================================
  Files           480      480
  Lines         26611    26611
  Branches       3716     3716
============================================
- Hits          13696    13695       -1
- Misses        11573    11575       +2
+ Partials       1342     1341       -1

Impacted Files
Coverage Δ

...apache/kyuubi/engine/JpsApplicationOperation.scala
77.41% <0.00%> (-3.23%)
:arrow_down:

...rg/apache/kyuubi/ctl/cmd/log/LogBatchCommand.scala
78.00% <0.00%> (-2.00%)
:arrow_down:

...in/scala/org/apache/kyuubi/config/KyuubiConf.scala
96.89% <0.00%> (-0.09%)
:arrow_down:

...a/org/apache/kyuubi/service/TFrontendService.scala
91.47% <0.00%> (+0.29%)
:arrow_up:

...he/kyuubi/ha/client/etcd/EtcdDiscoveryClient.scala
68.12% <0.00%> (+0.62%)
:arrow_up:

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