Implement support for azw3 ebooks

This isn't very conducive to the web publishing aspect of Bibi, but I use it as a local offline ebook reader to read Japanese novels. I buy almost all my ebooks through Amazon, and it'd be nice if I could use those files without having to deal with converting to EPUB. The structure of azw3s are rather similar to EPUBs, so theoretically implementation would be rather simple. Thanks for making such an awesome reader!

Thanks!
I'll consider if it can, but I think that azw3 files bought at Amazon are protected with DRM. (...are not?)

while yes, books straight from amazon have drm, i personally use epubs converted azw3s to read japanese books on a kindle.On Dec 26, 2020 11:37 AM, "Satoru Matsushima (℠)"<EMAIL_ADDRESS>wrote:
Thanks!
I'll consider if it can, but I think that azw3 files bought at Amazon are protected with DRM. (...are not?)
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.


Rename "Jump in" tag to "good first issue"

Currently we have the jump in tag for the good-to-start issues. Recently GitHub team introduced the good first issue label for such issues and documented it everywhere:

https://help.github.com/articles/about-labels/#using-default-labels
https://help.github.com/articles/finding-open-source-projects-on-github/#searching-using-labels

Therefore, I suggest to rename the tag and set it to a default color. We'll follow the convention so new members will be able to recognize this tag much easier.
@moodmosaic @adamchester Any objections?

👍 Sounds good

Done.

Fire a PR on this site:
https://github.com/up-for-grabs/up-for-grabs.net

Done. Fired: https://github.com/up-for-grabs/up-for-grabs.net/pull/812


Finish portfolio

Today I:

Added the recent-works section
Added the about section
Added dividers to the CSS file using comments
Removed irrelevant code
Added styles to the recent-works section
Added styles to the about section
Learned how to use Flex box, Grids and even about the z-index in CSS.

Updates for this branch

Replaced div tags with section tags in the places most suited.
Will further investigate when to use section tags.


Add example code to README

Hi @t4sk ! Thanks for the PR!
Merging!
We should update to redis 0.16 as the PR I did some time ago for adding async_std support is already merged. I wll take the task.

This is awesome! Thanks for merging.
For your info, I've ran the code using latest redis image from docker, here is the command
docker run --name my-redis --rm -d -p 6379:6379 redis:latest


[FancyZones][Draft] Open window on active monitor

Summary of the Pull Request
By default most newly created windows are opened on primary desktop (certain applications introduce their own custom positioning). If we have zone history for some application on secondary monitor, and that monitor is active, application window will be opened there, otherwise we fallback to default windows behavior and that window is opened on primary monitor. This PR introduces new functionality that will open window on secondary monitor (if secondary monitor is active) even if there is no application zone history.

PR Checklist

[x] Applies to #4357
[x] CLA signed. If not, go over here and sign the CLA

Validation Steps Performed
Use multi monitor configuration, and preferably different scaling on different monitors. Try opening same application on different monitors. Application should not be resized in any way unless window can't fit the screen. Also, try with portrait / landscape positioned monitors.

Draft PR, more changes will come. No need to review the code yet, but if You notice some unexpected behavior please let me know.

When I my monitors' DPIs to 100% and 150% (the first one being primary), after running a console app on the first one and dragging it to the second, and running it from the second, the windows' sizes visibly don't match, the other one got its width reduced.

When I my monitors' DPIs to 100% and 150% (the first one being primary), after running a console app on the first one and dragging it to the second, and running it from the second, the windows' sizes visibly don't match, the other one got its width reduced.

I've seen the same thing with cmd.exe (height is the same, but the width is bit different), even if looking at the code there is no reason for it to be like that. Haven't seen that with notepad or some other programs for example.

Let's resolve the conflicts

@enricogior @ivan100sic @stefansjfw PTAL so we can push this one forward.

Some windows utilities which are running in administrator mode (e.g. eventmgr) or don't respond to FZ even when running as admin (e.g. winver), don't respond to the move. Everything else works fine.

Is that the case for all applications running in administrator mode or only these few windows utilities? Also, do these windows utilities respond to "conventional" assigning to zones within layout ?

@vldmr11080
They are exactly those apps that don't trigger FZ anyway.

@vldmr11080
They are exactly those apps that don't trigger FZ anyway.

Oh, OK, than we're all good to merge this one.

With Firefox the flickering is too bad. Also the command prompt seems to be effected (it wasn't flickering in the first implementation).
We either find a way to avoid the flickering or we simply accept that some application are not supported.
Beside the flickering, sometimes Firefox also gets some part of the UI with the wrong DPI (probably because it starts drawing it while in one monitor and completes it while on the other monitor with a different DPI).
I would say, let's remove the code that tries to fix Firefox so we can merge it, and then we will figure out a way to support Firefox and any other app that presents the same behavior.

Also, please move the option one position above

@enricogior removed retries in custom positioning. We can create follow up task. Also, I've moved setting one position above (in both settings).
Shall I merge ?


Documentation for contrib.sqla.ModelView.get_query should mention overriding get_one

The documentation for contrib.sqla.ModelView.get_query reminds the user to override get_count_query as well. It should also mention to override get_one as well, for example like this:
def get_one(self, id):
    """Return an element with limited to the elements returned by get_query."""
    query = self.get_query()
    return query.filter(self.model.id == id).first()

If it is not done this way, some elements might be filtered in the list view, but can still be accessed in the edit view by simply changing the id in the url. This potentially allows users to see/edit elements they should not be allowed to see/edit.

Thanks @lapseofreason. Could you make a pull request?

Unfortunately it took a bit, but here you go ;)


I guess I fixed it. Could you please check again?

@ozgeonay thank you so much for contribution 🔥


Fixes some v2 yaml parsing 🐹

This PR does two things:
Store config version in project 🐮
This is needed for networks and volumes support as we are gonna need to know the version of the config file to act based on it.
Some yaml refactoring/magic and config updates 🐹
Doing several things:

Split into smaller files (with test) to make it easier to read.
Add a Build type that handle some Build magic
Add an External type that handle some external magic (networks, volumes)
Add Networks/Network type that handle some Networks magic
Refactor the Ulimit types to be simpler and not user reflection

Also adds a merge_fixtures_test.go and testdata folder with some existing compose file to make sure it parses it well (should serve as quick regression tests in the future too).
/cc @joshwget (master of the yaml :joy: :stuck_out_tongue_closed_eyes:)
Fixes  #291
Needed for #277 and #288 implementations
🐸 🐸

Returning the config version is definitely a good idea. Awesome work with all of the new types. Hopefully that wasn't too tedious!
Just one comment, but LGTM other than that.


Update Exchange Rate Sources

Update Exchange Rate Sources to allow additional sources and other fiat currencies.  Commented out those not supporting Bitcoin Cash.

Hi - this branch is dead.  Can you do a PR for either python3 branch (3.0) or master (soon-to-be 3.1)

Okay, I'll do that on master soon.


mass subscribe results in "DL_INVALID_ADDRESS"

I tested a mass subscribe via subscribe node but always get "DL_INVALID_ADDRESS". E.g. Path = ["framework/metrics/system/cpu-utilisation-percent","framework/metrics/system/memavailable-mb"]
when using the resulting string directly it is working:
https://<IP_ADDRESS>:8443/automation/api/v2/events?nodes=framework%2Fmetrics%2Fsystem%2Fcpu-utilisation-percent%2Cframework%2Fmetrics%2Fsystem%2Fmemavailable-mb&publishIntervalMs=100
I checked the code but not figure out why it is not working. Path is created in CtrlxDatalayerSubscription.js line 118

Finally added with #71


Fix minor typos in code and docs

Objective
I found several words in code and docs are incorrect. This should be fixed.
Solution

Fix several minor typos

Bors r+


Adding a license?

Howdy!
Love this game. I know it’s an older repo, but I was curious if you’d like to add a license to it, so people don’t have to worry about getting sued if people use it?😆
Here’s a tutorial on how to add one: https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository
Thank you !

Added, thanks for beinging it up!
That being said, I don't really suggest basing any projects on this, given how messy the code is. It was my first real game in PICO-8, and doesn't follow a lot of what could be considered best practices for the engine.


Analyzer - Data Analysis

Define specific analysis objectives based on your project goals.
Implement statistical or machine learning techniques to extract insights from the data.
Analyze trends, correlations, patterns, or anomalies within the dataset.

Analysis Objective

Analyse Price of A car by the fields of Brand, Mode, Mileage, Body type, Condition, Fuel type, Transmission, Engine capacity,  Year of Manufacture, Trim / Edition
Analyse price of a car over time


How to create infinite listview - graphql pagination

How we can implement infinite listview something like FutureBuilder/StreamBuilder with ListView, so when user scroll down to list it will call graphql pagination query to load more data.

My way is using listview with scrollcontroller. When the listview is scrolled to the bottom, the notification of the controller would call a async function which will loading more data with graphql client and save to a variable. The listview will build from this variable.

@jxltom Would be awesome if you could provide an example of that so we can extend the documentation.

I will try to make a PR for that, updating a example under example directory.

what is status for this issue?

I will close this issue since there was no example provided and the original question got an answer.


Initial Port Work to 1.14.2

Sorry for the unnecessary work, maybe create an issue before next time.

Sorry for the unnecessary work, maybe create an issue before next time.

nah, i only ported it for myself.  BTW, your 'mods.toml' is not right ;)


Change the IO relationship between UwbDevice and UwbSession to go through UwbDeviceConnector

Type

[ ] Bug fix
[X] Feature addition
[x] Feature update
[x] Breaking change
[ ] Non-functional change
[ ] Documentation
[ ] Infrastructure

Goals

UwbDevice publishes its UwbDeviceEventCallbacks to UwbDeviceConnector, and likewise UwbSession publishes its UwbSessionEventCallbacks to UwbDeviceConnector
UwbDeviceConnector is now responsible for deciding which callback to call given UwbNotificationData
** This is implemented in UwbDeviceConnector.cxx:UwbDeviceConnector::HandleNotifications
Changed the interfaces UwbSessionEventCallbacks and UwbDeviceEventCallbacks to simply be structs of lambdas, instead of pure virtual interfaces. This could allow users of the interface to more easily instantiate callbacks to pass around.
Changed the interface UwbSessionEventCallbacks to not require the UwbSession *pointer. Instead it will be captured in the lambda closure.
** This means that instead of passing the callbacks to the UwbSession when you first create it, instead you pass it in when you configure the UwbSession. This is reflected in tools/cli/NearObjectCliHandler.cxx

Test Results
I've verified it compiles fine on Windows. I will do the nocli uwb start range command as a sanity check.
Reviewer Focus
The reason that I made the UwbSessionEventCallbacks interface capture the UwbSession *pointer in the lambda closure was because UwbSessionEventCallbacks needs to somehow lookup the UwbSession in order to execute the callback. There three alternatives that I considered.

If I leave the interface as it is, I could either make UwbDeviceConnector a friend of UwbDevice, or the other way around, since the GetSession function is a private member of UwbDevice. However this would either mean

that UwbDevice would have access to the private member functions of UwbDeviceConnector that handle talking to the DDI, which would render the Connector pointless,
or that UwbDeviceConnector would have access to the ability to functions like InitializeImpl, which would also be undesireable

I could also have UwbDeviceConnector maintain a set of UwbSession so it will have its own private member function GetSession(). However, this means that now either we have two sets of UwbSession (which would be terrible to maintain consistency), or we no longer have UwbDevice maintaining a set of UwbSession, and instead only have UwbDeviceConnector doing so. If we do the latter, this means that we would somehow have to notify UwbDeviceConnector every time UwbDevice tries to CreateSession, which essentially means that one of the two classes needs to be friends of the other.
The last option I considered was to add another struct PreparedUwbSessionEventCallbacks that esentially is just UwbSessionEventCallbacks, but prepared with the lambda closure. The idea is that upon construction, UwbSession takes in UwbSessionEventCallbacks and turns it into PreparedUwbSessionEventCallbacks, which it then stores. This solves the problem of the interface change affecting a lot of files, but also introduces the question of who owns the event callbacks. Originally, whoever created the UwbSession would be in charge of cleaning up the callback, but now UwbSession is in charge of cleaning it up. This may not be that bad, and so I am leaving this option open for the future.

Future Considerations
Maybe it makes sense to make the UwbDeviceConnector have a redefined role as "the stuff that actually talks to the driver, as well as the stuff that dispatches the callbacks". This would mean that aside from the DDI specific stuff, much of the code for UwbDeviceConnector could be pushed to the generic implementation and available for the linux side. I believe this makes sense because right now there is nothing that invokes the UwbDevice event callbacks in the base implementation and hence the linux side.
Checklist

[x] Build target all compiles cleanly.
[x] clang-format and clang-tidy deltas produced no new output.
[x] Newly added functions include doxygen-style comment block.

https://github.com/microsoft/nearobject-framework/issues/96

related:
https://github.com/microsoft/nearobject-framework/issues/126

Future Considerations
Maybe it makes sense to make the UwbDeviceConnector have a redefined role as "the stuff that actually talks to the driver, as well as the stuff that dispatches the callbacks". This would mean that aside from the DDI specific stuff, much of the code for UwbDeviceConnector could be pushed to the generic implementation and available for the linux side. I believe this makes sense because right now there is nothing that invokes the UwbDevice event callbacks in the base implementation and hence the linux side.

This is a good observation; we'll have to think about this a bit more. What you have here is good for now, though.


Dataset list: schema not allowed to filter

On the Datasets page, I cannot search by utilizing the SCHEMA filter.
How to reproduce the bug

Go to 'Data -> Datasets'
Choose from the 'SCHEMA' drop down list.
See error

Expected results
Should be work.
Actual results
It just says 'HTTP 400 bad requests' ...
Screenshots

Superset log:
[23/Nov/2022:16:34:12 +0800] "GET /api/v1/dataset/?q=(filters:!((col:schema,opr:eq,value:information_schema)),order_column:changed_on_delta_humanized,order_direction:desc,page:0,page_size:25) HTTP/1.1" 400 58 "http://superset.k8s-dev/tablemodelview/list/?filters=(schema:(label:information_schema,value:information_schema))&pageIndex=0&sortColumn=changed_on_delta_humanized&sortOrder=desc" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36"

Environment
(please complete the following information):

superset version: 2.0.0

we have the same problem as well, would be great to get a fix for this one.

I confirmed that this issue is present on 2.0 but fixed in master, so I'm going to close this as resolved, and we'll get the fix out in 2.0.2 or 2.1.0. Thanks for flagging it!


[calibration] Calibrate a RIG of cameras from an existing reconstruction using natural features #12

same as poparteu/openMVG#12 but with SIFT and SIFT_CCTAG
For this we just need to adapt #12 so that we can switch from cctag_localizer to voctree_localizer.

[x] Create a common Interface ILocalizer between cctag_localizer and voctree_localizer

[x] move the init() method to constructor of each class
[x] create a common base for the parameters
[x] modify localize() method to use parameters from the proper class

[x] add a flag for the command line script to chose which mode to use

it is now done (to be tested!) with e009d873fba3d8f256c33c509ffc96f76603bab3


Add labels to pull requests

It would be nice to classify a pull request by adding

Library update
Sbt plugin update
Test library update

Such that you could do automatic patch releases by using mergify (auto-merge) + rancher (auto-tag) + sbt-release-early. I would only release a new artifact if there is a Library update

I like this idea. Customisation of the labels (or disabling/enabling this feature) could be configured via .scala-steward.conf.

Hello there, are we talking about Github labels here? Push access seems to be required to add labels to issues (PRs are also issues in Github api context). That could be a problem.

Yes, I assumed GitHub labels. An alternative could be to just add "labels" to the PR body as plain text like this: labels: library-update. Other tools might be able to work with such labels too.

Putting labels into PR body as plain text should work, yes. I may give this a go in coming days if i get to have some free time.

I added #1471 as follow-up issue for adding GitHub labels, in case there's others interested in that feature.


Remove unimplemented function

Description
Removing some dead code. This function is declared in src/ so this removal is not observable by users.

Oops my bad this is used. I could have sworn CI passed in a previous run. Nothing to see here!


Bump sqlalchemy-stubs

Latest version is 0.4.

Thanks💫

For sure! I would also totally recommend using Dependabot so that the updates become automatic!

Looks nice, does dependabot have integration with poetry?

It has!
Thanks for such a good advice🙂

Yup, it does!


blemesh: generic level functionality doesn't work

Hi,
I'm trying to test blemesh sample using SiLabs Android App. The generic on/off model work fine but generic level. I don't see any generic level set events.
Is it a blemesh issue or the SiLabs App's?

Hi,
On Wed, 16 May 2018 at 10:20, Sharan Avati<EMAIL_ADDRESS>wrote:

Hi,
I'm trying to test blemesh sample using SiLabs Android App. The generic
on/off model work fine but generic level. I don't see any generic level set
events.
Is it a blemesh issue or the SiLabs App's?

This is SiLabs issue but we have workaround for this and application
recently merged: https://github.com/apache/mynewt-core/pull/1063
\Łukasz

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/apache/mynewt-core/issues/1095, or mute the thread
https://github.com/notifications/unsubscribe-auth/ACjTjxffsMGYsbMMwwkMsKHtZpJ73M2bks5ty-FfgaJpZM4UA2Z0
.


tag cicompatible tests

What does this PR do?
Marks tests that are compatible with the CI pipeline so they can be run with a single command rather than listing them.
Fix "merge main branch" bug for sas token.
All Submissions:

[x] Have you followed the guidelines in our Contributing document?
[x] Have you successfully ran tests with your changes locally? Including container validation.
[x] Have you lint your code locally prior to submission?
[x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?
[x] Have you labelled this PR correctly? E.G. major, milestone, breaking, breaking-change, minor, feature, enhancement, patch, fix, chore, refactor etc

Changes to Core Features:

[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your core changes, as applicable?

Should we change playwright tests to run only the ones weith a tag

that's in another PR


[CT-2823] [Feature] Run Downstream models on-schema-change

Is this your first time submitting a feature request?
No

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt functionality, rather than a Big Idea better suited to a discussion

Describe the feature
I have a project that has incremental models that have the on_schema_change = 'append_new_columns' config.
Downstream of these models I have views that use the dbt_utils.star macro to dynamically "hard code" a list of columns for each view. We use the dbt_utils.star macro  this instead of just a simple SELECT * FROM {{ ref(incremental_model') }}  so that our views in Snowflake don't break as soon as a schema change occurs in the underlying incremental model.
Up until a few days ago we were just running the views in our main job. So the views were always recreated right after the incremental model which means they would always include any new columns that were added to the incremental model. However, I realized that we're essentially wasting compute by doing this. We have hundreds of views and we run our job hourly. By contrast, we might only see one column added to one of the incremental model every week or so.
I was wondering if theres a way of running downstream models only when a schema change occurs in the upstream ref?
Describe alternatives you've considered
My first thought was to just do deferral/`state:modified comparison, but I actually haven't been able to get that to work in this scenario. I think state:modified comparison looks at the body of the sql file. Since the body of the sql file isn't actually changing (its still just calling a macro), state comparison doesn't pick it up. Forgive me if this functionality is currently possible.
Another sort of hacky idea was to just have the views disabled by default, and actively enable them during runtime. I didn't really get too far into actually conceptualizing how this would even work because it seems not possible on the face of it:
https://github.com/dbt-labs/docs.getdbt.com/discussions/1310
Right now, we've just removed the views from our hourly job. We now just have a separate job for the views that runs every 12 hours. This is a sort of "eventually consistent" approach which is probably fine for our use case. Realistically the consumers of the views probably don't even know a new column exists, so the lag between the column being available in our incremental table to it being exposed in the view is fine.
Who will this benefit?
People that have lots of views on top of incremental models that have fluid schemas.
Are you interested in contributing this feature?
No response
Anything else?
No response

Thanks for detailing this enhancement! I think there are a few potential solutions here - it would be great if you could share a basic, reproducible example so that I can understand the full details.
The way Snowflake handles select * from ... views is different from other warehouses, where the select * from ... view breaks if the underlying table's schema changes - so it makes sense that you're trying to use the dbt_utils.star macro here.
I think there are a few ways you can handle this with current dbt-core functionality:

Instead of using state:modified to select the models that have changed, you could use state:modified+ which would select the models that have changed and their downstream dependencies. While this may occasionally over-select views (imagine you've modified the incremental model's logic, but haven't actually added any new columns... the downstream views will still be re-created), this will always include all of the views you need and would be a performance improvement over running all of the views in your project.
You could add a contract to your incremental models, and then use state:modified.contract+ to select models with changes to their contacts and their downstream dependencies. This would further slim down the number of views/models that are selected, because state:modified.contract is limited to changes in the name and data_type of columns on a contracted model.
Instead of using the dbt_utils.star macro, you could just hard-code the columns in your views (select column_a, column_b, column_c from {{ ref('my_incremental_model') }}. This way, if you add a new column to your incremental model, you will also have to change the code in your downstream views to add the new columns - in that case it will be selected by state:modified.

I'm going to close this as not planned because I think you should be able to solve this with the current dbt-core functionality, but let me know if there's any context I'm missing or if you run into any further issues!


What happened to Cloudlock?

Cisco Cloudlock doesn't show up when I search for it in the gallery.  Has it been removed?

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

ID: e255d9e8-992a-7dcc-0b84-4a156db2a18e
Version Independent ID: 8b553918-8242-edf5-568f-c4db43ba30ba
Content: Tutorial: Azure Active Directory integration with Cisco Cloudlock
Content Source: articles/active-directory/active-directory-saas-ciscocloudlock-tutorial.md
Service: active-directory
GitHub Login: @jeevansd
Microsoft Alias: jeedes

@gdrapp The application name is recently changed to The Cloud Security Fabric.
We will update the name of the application in the article.

@chetansriv and @v-nagta Please update the name of the app in this article. Correct app name is The Cloud Security Fabric.

Application name is updated.
#Please-Close

@gdrapp We will now proceed to close this thread. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


feat: codecov

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@95c08f8). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main       #2   +/-   ##
=======================================
  Coverage        ?   47.22%
=======================================
  Files           ?        6
  Lines           ?      108
  Branches        ?        0
=======================================
  Hits            ?       51
  Misses          ?       57
  Partials        ?        0

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


Content provider

Since this is based on content provider, is Tray required to declare in manifest as Content Provider does with  tag? My concern is usability across apps.

Ok. I saw that in lib manifest.


output signal 11 and aborted

I run GraphChainer on a gfa file built using seqwish and a fasta file of reads simulated from one of the genome used to construct the Graph.
I used the command GraphChainer -g graph.gfa -f reads.fa - a alignment.json
I got the following message
GraphChainer Branch master commit c083580a2ca5c9d3772da41d2106d0795de500e6 2022-03-30 09:59:42 +0300
GraphChainer Branch master commit c083580a2ca5c9d3772da41d2106d0795de500e6 2022-03-30 09:59:42 +0300
Co-linear chaining on splits=(35,35,10000)
Load graph from graph.gfa
Build alignment graph
5992064 original nodes, 2996032 in one strand
6131490 split nodes, 3065745 in one strand
0 ambiguous split nodes
21011356 base pairs (total characters), 10505678 in one strand
9087448 edges, 4543724 in one strand
1518594 nodes with in-degree >= 2, 759297 in one strand
Build MPC Index
2 connected components
cid = 0 path #0 : 33195 33195 5950803
cid = 0 path #0 : 33193 16597 5934206
cid = 0 path #0 : 33193 15714 5918492
cid = 0 path #0 : 5125 5125 5913367
cid = 0 path #0 : 5123 2562 5910805
cid = 0 path #0 : 5123 2414 5908391
Signal 11. Read: ��0�4��. Seed: 0+,0,0,0
Aborted

can you help solve this issue?

Please see https://github.com/algbio/GraphChainer/issues/3


Fixed #56

Changed buildNumber from an int to a long and added example to unit test

Ah...there is the oraclejdk7 left which is not available anymore on travis..


Remove tests folder

As indicated in the correction, the test folder should not exist.

closed in #23


Patchelf version is not recognized on Linux/OSX.

Describe the bug
The patchelf utility returns the utility's name with a version instead of a plain x.y.z version - patchelf 0.18.2.
This results in a string mismatch compared with the required version string.
Environment

OS: Linux/OSX
Compiler: N/A

To Reproduce
Steps to reproduce the behavior:
docker run -it --platform=linux/arm64 debian:11
Then in container
root@ce3d8e4b9c21:/# apt-get update
root@ce3d8e4b9c21:/# apt-get install patchelf -y
root@ce3d8e4b9c21:/# patchelf --version
patchelf 0.12 <---- here's the string

Or it can be reproduced when package is installed.

./vcpkg install "icu[core,tools]:arm64-osx"
See error. It tries to download patchelf but missing URLs.

-- Found patchelf('patchelf 0.18.0') but at least version 0.14.5 is required! Trying to use internal version if possible!
CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:123 (message):
  vcpkg_download_distfile requires a URLS argument.
Call Stack (most recent call first):
  scripts/cmake/vcpkg_find_acquire_program.cmake:626 (vcpkg_download_distfile)
  scripts/cmake/z_vcpkg_fixup_rpath.cmake:2 (vcpkg_find_acquire_program)
  scripts/cmake/z_vcpkg_fixup_rpath.cmake:57 (z_vcpkg_fixup_rpath_in_dir)
  scripts/ports.cmake:150 (include)

Repro code when
Expected behavior
The installed patchelf is correctly determined and used by the vcpkg pipeline.

This issue does not occur in Linux and osx.


Error reading msh file from a re-mesher

Hello,
I encounter an error while trying to read a mesh file (.msh) which is a gmsh file re-meshed in a tool, mmg https://www.mmgtools.org/ .
MFEM abort: Non-positive element attribute in Gmsh mesh!
... in function: void mfem::Mesh::ReadGmshMesh(std::istream&)
... in file: mesh/mesh_readers.cpp:1172
Aborted (core dumped)

I enlcose the concerned mesh files too.
meshFiles.zip
the one named msphere.msh is the re-meshed one.
You can try a general case, if you want to confirm it with of your working .msh files, by:
download the mmg3d_O3 executable from the website and,
$ mmg3d_O3  -in .msh -out .msh [-options]
-options can be found by -h or use -noinsert
Please let me know if you need more information.
I don't think this is a bug at mmgtools, as I use their meshes in the platform I am working on.
Regards,
Tom

Hello @tomathew, thank you very much for your follow-up. We have an effort to update our mesh readers and I have a PR undergoing review that should help, as I was able to read your mesh examples.  https://github.com/mfem/mfem/pull/763. Although, most of the attention was applied
to gmsh 4.0,4.1 files, I do have a small patch for v2.2 files (see commit https://github.com/mfem/mfem/pull/763/commits/d0ab423582d5b4de65cc8cb3427fea5ad3a5a4ae). So, expect to see these changes in a future release, but I encourage you to apply these changes to your local snapshot, or fetch my branch https://github.com/jonesholger/MFEM/tree/holger/feature/gmshv4. Keep us in the loop as you make progress. Thanks again.

Dear @jonesholger,
Thank you very much !
Best regards,
Tom


CosmosException Response status code 404: query '$resolveFor' is invalid

I get the databaseId and collectionId from parsing a DocumentCollectionUri from v2 and try to use them as such in v3:
GetContainer("RZwRAA==", "RZwRAPxiyBg=")
For operations like CreateItemAsync or get queries this works but for ReadItemAsync and DeleteItemAsync it throws this exception:
Response status code does not indicate success: 404 Substatus: 0 Reason: (The value 'dbs/RZwRAA==/colls/RZwRAPxiyBg=/docs/6b2ef134-6a46-4e40-b7a0-c1ba1f458d04' specified  for query '$resolveFor' is invalid.ActivityId: 5c054fdf-b901-42b9-a32f-14466e36a1e3, Windows/10.0.17134 cosmos-netstandard-sdk/3.4.1).
GetContainer(databaseName, containerName)
If the get container operation is made in this way, ReadItemAsync and DeleteItemAsync work fine.
The database provisioning is made by a 3rd party service and I only receive the DocumentCollectionUri without knowing the databaseName and containerName.
Am I missing something or this scenario is not valid?

V3 is named based. You need to use the container name and database name rather than the resource id.

Then why it works for CreateItemAsync and GetItemLinqQueryable with the id?

Are you talking about the document rid or the document id?


Latest trained data file crashed upon init when using tesseract 3.02 for several languages

Hi,
My Android app is still using an older version of tess two library, which was based on tesseract 3.02. Last time it used to work because it uses trained data for version 3.02, but since tesseract has moved to github seems like we could only download the latest version of trained data now.
I tested with english and several european languages trained data and it works perfectly fine, however when I try Arabic, Japanese and Chinese the app crashes straightaway upon tesseract init.
My questions are, is the latest trained data in github only works with latest 3.05 version of tesseract? If so, is there a way to download the older versions of trained data? If not what could be the problem for the crash?
Thanks!

You can't use a trainddata which was prepared with a version of Tesseract that is newer than the version you use to do OCR.

https://sourceforge.net/projects/tesseract-ocr-alt/files/
https://github.com/tesseract-ocr/tesseract/blob/master/CONTRIBUTING.md

Thanks for the quick response! Cheers

i have the same question,i will try~~~


smctl should allow skipping ssl validation

When service-manager is deployed with a self-signed certificate the smctl will fail to make requests as it will validate the signature.
smctl should provide an option like cf cli --skip-ssl-validation

To be fixed with https://github.com/Peripli/service-manager-cli/pull/18


[RESOLVED] High ICMP ping response time

Problem started at 15:29:29 on 2023.05.11
Problem name: High ICMP ping response time
Host: HP_iLO
Severity: Warning
Operational data: Value: 492ms
Original problem ID: 20558
Event details in Zabbix: http://<IP_ADDRESS>/tr_events.php?triggerid=23268&eventid=20558

Problem has been resolved in 3m 0s at 15:32:29 on 2023.05.11
Problem name: High ICMP ping response time
Host: HP_iLO
Severity: Warning
Original problem ID: 20558


Can't connect ARO based OpenShift cluster to Azure Arc Monitor

This page is linked from this page:
"https://learn.microsoft.com/en-us/azure/openshift/"
=> "Monitoring and logging"
=> "Azure Monitor for containers"
=> "Configure Azure Monitor container insights for Azure Red Hat OpenShift 4"
I tried to follow the doc but from my point of view are there some missing parts. When I try to execute the the following command get I this message.
DEBUG: cli.azure.cli.core.sdk.policies: {"error":{"code":"ResourceNotFound","message":"The Resource 'Microsoft.Kubernetes/connectedClusters/${CLUSTER} ' under resource group '${RESOURCEGROUP}' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}

az aro get-admin-kubeconfig \
  --name ${CLUSTER} \
  --resource-group ${RESOURCEGROUP}
# creates kubeconfig

az connectedk8s connect \
  --name ${CLUSTER} \
  --resource-group ${RESOURCEGROUP} \
  --distribution openshift --kube-config kubeconfig

The connected cluster command looks neccessary for that command.
az k8s-extension create \
  --name azuremonitor-containers \
  --cluster-name ${CLUSTER} \
  --resource-group ${RESOURCEGROUP}\
  --cluster-type connectedClusters \
  --extension-type Microsoft.AzureMonitor.Containers

Here the az and oc versions.
az version
{
  "azure-cli": "2.50.0",
  "azure-cli-core": "2.50.0",
  "azure-cli-telemetry": "1.0.8",
  "extensions": {
    "connectedk8s": "1.3.20",
    "k8s-extension": "1.4.2"
  }
}
#
oc version
Client Version: 4.12.0-202306261055.p0.gea7c11a.assembly.stream-ea7c11a
Kustomize Version: v4.5.7
Server Version: 4.12.23
Kubernetes Version: v1.25.11+c43ddea

I have also enabled the following features and providers
az feature register --name AKS-IngressApplicationGatewayAddon --namespace microsoft.containerservice
az feature register --namespace Microsoft.ContainerService --name AKS-PrometheusAddonPreview
az feature register --namespace Microsoft.Compute --name EncryptionAtHost
az feature register --namespace Microsoft.RedHatOpenShift -n AdminKubeconfig
az feature register --namespace Microsoft.RedHatOpenShift -n UserDefinedRouting
az feature register --namespace Microsoft.RedHatOpenShift -n PrivateClusters
az feature register --namespace Microsoft.KubernetesConfiguration -n ExtensionTypes
az feature register --namespace Microsoft.KubernetesConfiguration -n Extensions
az provider register --namespace Microsoft.Kubernetes
az provider register --namespace Microsoft.KubernetesConfiguration
az provider register --namespace Microsoft.ExtendedLocation
az provider register -n Microsoft.RedHatOpenShift

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

ID: 8c59f336-757a-37b5-a6be-6d9d9cf7fd53
Version Independent ID: 96a77f05-8d0b-d6d3-b073-818e0cf7c9ff
Content: Monitor Azure Arc-enabled Kubernetes clusters - Azure Monitor
Content Source: articles/azure-monitor/containers/container-insights-enable-arc-enabled-clusters.md
Service: azure-monitor
Sub-service: containers
GitHub Login: @bwren
Microsoft Alias: bwren

@git001
Thanks for your feedback! We will investigate and update as appropriate.

My problem was that I have used the bash emulation on windows instead of the MS cmd for the az commands. After I switched to the MS cmd interface the connection was possible and successfully.


Reharmonize TCH* rules with flake8-type-checking

There recently have been a whole bunch of contributions to flake8-type-checking made by yours truly which greatly decreased the rate of false positives/negatives and added new rules, as well as better support for SQLAlchemy.
Ruff independently added one of the rules which is slated to be added to flake8-type-checking in the next release as TC010 (string union syntax), whereas in Ruff the rule is TCH006.
Considering there's no longer a naming conflict in the TC* range (tryceratops kindly changed its code to match ruff's) I would suggest deprecating the TCH* rules and keep aliases around for backwards compatibility. At the same time we can reharmonize the rule numbering and make TCH006 alias to TC010.
I can take a stab at porting some of the improvements from flake8-type-checking to Ruff, although I'm still a Rust novice, so I can't guarantee I will be able to contribute in a meaningful manner any time soon.

I think this makes sense, I don't know if it will be part of 0.2.0 or not. \cc @zanieb

@AlexWaygood Could we fit this into the 0.8.0 release (i.e. renaming TCH to TC while leaving redirects)?
Otherwise I will need to wait until the TCH006 -> TCH010 redirect gets removed before I can implement TC006.
I'm happy to open a PR myself.

@Daverball unfortunately I'm already somewhat behind on my tasks for this release, so I won't be able to work on this myself. I'd be very happy to review a PR targeting the ruff-0.8 branch, however.
I can't immediately find the PRs in the past where we've remapped rules, but there have been some -- if you can find them, they should be a good template to use

This change will be released as part of Ruff 0.8


Feature Suggestion: File Upload

Hi, thanks for the library.
Thoughts on implementing $_FILES superglobal testing?

I've never had need for it, but I can see the usefulness of it. I might argue that if you've got a lot of file handling logic that you may want to unit test a handler rather than use integration testing... but I can envision some scenarios where it would be good to test with these.
If you'll send along a PR with some tests, we'll bring it in.


can't parse some URL

when i use github theme by stylus extension, I can enjoy this theme very comfortably.
however, i can't parse this URL https://www.zhihu.com/ very well

how can i solve this problem? ths

And you are sure its the github theme thats causing this?

And you are sure its the github theme thats causing this?

yes, when I turn this style off, the site becomes normal:)

Thats weird. Could be the RegEx ig

And you are sure its the github theme thats causing this?

yes, when I turn this style off, the site becomes normal:)

I can't reproduce the same behaviour.

Thats weird. Could be the RegEx ig

It's not, it doesn't capture the site.

Hi there!
I just pushed (#41) because the Stylus theme was applying some styles globally. This should be fixed now, please let us know if the issue persists.


[ETFE-2566] Adding Item Quantity page

Requires EPC and Commodity Code to be saved in the Items answers array as it uses this combination to call the Reference Data to retrieve the Unit of Measure code.
The CnCodeInformationConnector has been taken from Report Receipt FE.

https://github.com/hmrc/emcs-tfe-create-movement-frontend/assets/16954819/a9acf595-0d03-43f0-abe8-84c5dbb3ca01


Dockerized TO integration tests

What does this PR do?
This wraps the "api tests" in a docker container and runs them. The container returns the exit status of the tests.
Which TC components are affected by this PR?
Won't affect anything until it is added to the Jenkins pipeline.
The primary focus of this PR though is traffic ops.
What is the best way to verify this PR?
I used two tabs to run my containers like so:
docker-compose up --build db trafficops-perl trafficportal trafficops
docker-compose -f docker-compose.totest.yml up --build integration

Not sure if -x or -r is necessary to test for? (see to_integration/run.sh:36)
RUN apt-get update && apt-get install -y netcat curl dnsutils net-tools vim && apt-get clean
This is from the enroller. Why were these chosen for the install? Afaik I only need curl. Looking for confirmation.
Check all that apply

[x] This PR includes tests
[ ] This PR includes documentation updates
[ ] This PR includes an update to CHANGELOG.md
[x] This PR includes all required license headers
[ ] This PR includes a database migration (ensure that migration sequence is correct)
[ ] This PR fixes a serious security flaw. Read more: www.apache.org/security

@dangogh

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2621/
Test PASSed.

@mitchell852 This is not added the the Jenkins pipeline directly, but it does allow the Jenkins pipeline to run the "api tests" with minimal dependencies (ie. Docker). The unit tests are currently in the pipeline, and yes, this does leverage cdn-in-a-box.

How does this fit in with the Docker stuff in https://github.com/apache/trafficcontrol/tree/master/traffic_ops/testing/api/docker?

/testing/api/docker was created for the same purpose, but never used. I didn't quite realize it existed when I started work on this PR. This version is updated and the other should be removed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2661/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2662/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2663/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2683/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2714/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2745/
Test PASSed.


conda update requires downgrade of scipy

Hi,
I'm interested in using one of the newer wavelet forms included in pywavelets. It doesn't appear to exist in my current version (0.5.2).  However when I do 'conda update pywavelets' it gives me (clipped):
The following packages will be DOWNGRADED:
blas:           1.1-openblas                  conda-forge --> 1.0-mkl
numpy:          1.13.3-py36_blas_openblas_201 conda-forge [blas_openblas] --> 1.13.3-py36ha266831_3
scipy:          1.0.1-py36_blas_openblas_200  conda-forge [blas_openblas] --> 0.19.1-np113py36_0

Proceed ([y]/n)? n
Any idea why scipy would need to be down downgraded from 1.0.1 to 0.19.1?
Jon

If you are looking for things implemented more recently than the 0.5.2 release, those will not be on conda-forge which only packages the official releases.  To build from the latest master branch you would need to uninstall any existing conda package for PyWavelets  (conda uninstall pywavelets).  You can then download this source repository and build the package by running pip install . from within the root directory of the package (i.e. the location of setup.py).  You will need a C compiler, Cython and Numpy to build the package from source.

Hi Gregory,
Thanks for your reply.  The information you provided, i.e. that pywavelets
doesn't depend on scipy, is important in this case.
Jon
On Wed, May 16, 2018 at 11:54 AM Gregory R. Lee<EMAIL_ADDRESS>wrote:

Please raise conda-related issues over at the conda-forge feedstock:
https://github.com/conda-forge/pywt-feedstock. That said, in this case, I
don't think your problem is related to PyWavelets itself. PyWavelets only
depends on Python itself and Numpy so should have nothing to do with what
scipy package is chosen. It looks like something is causing your BLAS
implementation to switch from OpenMP to MKL, but this also should not be
coming from from PyWavelets.
You can probably work around the above by forcing installation of
PyWavelets without updating its dependencies by specifying.
conda install -c conda-forge pywavelets --no-deps
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/PyWavelets/pywt/issues/372#issuecomment-389570595,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAnXY971EhHB07OiFWnJiY0l1UpGI6PCks5tzEufgaJpZM4UAQOh
.

So 0.52 is the latest release?  That wasn't clear to me.  Is that listed
somewhere? I guess the fact that the only versioned branch is 0.5.x should
be a clue.
Jon
On Wed, May 16, 2018 at 12:00 PM Jonathan Slavin<EMAIL_ADDRESS>wrote:

Hi Gregory,
Thanks for your reply.  The information you provided, i.e. that pywavelets
doesn't depend on scipy, is important in this case.
Jon
On Wed, May 16, 2018 at 11:54 AM Gregory R. Lee<EMAIL_ADDRESS>wrote:

Please raise conda-related issues over at the conda-forge feedstock:
https://github.com/conda-forge/pywt-feedstock. That said, in this case,
I don't think your problem is related to PyWavelets itself. PyWavelets only
depends on Python itself and Numpy so should have nothing to do with what
scipy package is chosen. It looks like something is causing your BLAS
implementation to switch from OpenMP to MKL, but this also should not be
coming from from PyWavelets.
You can probably work around the above by forcing installation of
PyWavelets without updating its dependencies by specifying.
conda install -c conda-forge pywavelets --no-deps
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/PyWavelets/pywt/issues/372#issuecomment-389570595,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAnXY971EhHB07OiFWnJiY0l1UpGI6PCks5tzEufgaJpZM4UAQOh
.

It may be about time for a new release. @grlee77 will you be at the SciPy conference? Would be nice to meet up.

Yes, I agree that we should do a new release soon and have some time to work on it.  If you are available to help finalize some things that would be great.
I just returned from an academic conference overseas and unfortunately couldn't fit scipy into my travel budget for this year. I can call in or connect remotely, though, if you want to chat. My schedule is pretty flexible.

Also, a potential workaround to the problem in this PR is to pin numpy and scipy to the versions on conda-forge. At least on linux, this is done by adding lines such as the following to the .condarc file located in your home account:
pinned_packages:
  - conda-forge::numpy
  - conda-forge::scipy

I have seen this attempt to switch to MKL versions from defaults in the past in other contexts not related to PyWavelets and pinning seems to resolve it.

I'm very busy till SciPy starts next Wednesday, but should have some bandwidth after that. How about we have a chat around July 15-18 and try to come up with a plan?

I think there should be a better solution than pinning (not sure if there is one though). I've seen this conda downgrade stuff in a number of installs before, it's very annoying/confusing.....

Talked to the conda-forge team, apparently there's no better solution for the time being. The issue is caused by the dependency resolver, which (among other things) tries to minimize the number of "features" used. OpenBLAS is a feature, so can be "optimized out", even if one doesn't request any package install related to MKL/OpenBLAS.


feat: WithParams option for every component

Adds option to set the entire Parameters structure for each component.
For more context, see https://github.com/celestiaorg/go-header/pull/30#issue-1670071993 and https://github.com/celestiaorg/go-header/pull/30#issuecomment-1510449680.

Codecov Report

Merging #31 (727440c) into main (a0b2334) will increase coverage by 0.18%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #31      +/-   ##
==========================================
+ Coverage   65.50%   65.68%   +0.18%
==========================================
  Files          35       35
  Lines        2760     2763       +3
==========================================
+ Hits         1808     1815       +7
+ Misses        798      795       -3
+ Partials      154      153       -1

Impacted Files
Coverage Δ

p2p/options.go
43.66% <100.00%> (+4.77%)
:arrow_up:

store/options.go
60.60% <100.00%> (+5.43%)
:arrow_up:

sync/options.go
85.71% <100.00%> (+3.36%)
:arrow_up:

... and 1 file with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Combine supported and non-supported parts

Supported parts are now auto-detected from filename; merging would be the next step.


updating tagging section for project-management.rst

The branch has a build on https://redata.readthedocs.io/en/tagging-project-management/project-management.html#versioning-and-tagging


False-positive MULTIPLE_INIT_BLOCKS when properties are assigned in init block using local variables

Describe the bug
class Credentials(auth: String) {
    val gitHubUserName: String
    val gitHubAuthToken: String

    init {
        val splitAuth = auth.split(":")
        if (splitAuth.size != 2) {
            """Incorrect value is passed with 'auth' property.
                    | It should contain user and auth-token separated by a colon (':').
                    | This option is needed to extend the limit of requests.""".trimMargin() logAndExit 8
        }
        gitHubUserName = splitAuth[0]
        gitHubAuthToken = splitAuth[1]
    }
}

Now diktat suggests to move property assignments outside of the init block, but a local variable is used for this assignments, so this refactoring is too complicated. Diktat should not emit a warning in this case.
Environment information

diktat version: 0.4.2

Should be fixed by #967


Feature/build and pr comment methods

Made the following changes:

Breaking change: changed existing post_build_status method to post_build_status_legacy.
Replaced existing post_build_status method with a new one that supports the new build status endpoint. This changed the function arguments.
Added several new methods for interacting with PR Comments and and Tasks.
Removed BuildStatisticResource object. The related methods now just return the direct dictionary.
Added PullRequestCommentResource and changed TaskResource to inherit from that object.
Coverage Unit Test changes to support those changes.

@JoeStanleySEL I've put together my outstanding changes. Let me know if these methods will work for you.

@JasonKempSEL, I think these additional changes are excellent, and will cover the use-cases that I've been considering. It all looks valuable to me!
Thank you!

@JasonKempSEL, I think these additional changes are excellent, and will cover the use-cases that I've been considering. It all looks valuable to me!
Thank you!


Remove trusty from tests

We don't use Trusty, so let's remove it.

We still have 52 servers at yelp that run trusty and synapse per mco facts lsbdistrelease -C synapse_simple::install

@solarkennedy, itest-trusty suddenly stopped working for the master, e.g. see https://travis-ci.org/Yelp/synapse-tools/jobs/560794207, are you sure that that really worth fixing?

We are going to have to live with these trusty boxes for a while, migrating them is outside of our control. Yes, we need to fix it because if we don't, we won't be able to upgrade synapse on these servers.

@solarkennedy can you or somebody else from SF please fix that, so I could merge my DAR-related fix #72 tomorrow?


Building with Python 3.3.2 on Windows gives Unicode errors

When I attempt to build the project, I get this error:
c:\git\mediaelement\src>python Builder.py
building MediaElement.js
Traceback (most recent call last):
  File "Builder.py", line 32, in <module>
    code += src_file.read() + "\n"
  File "C:\Python32\lib\encodings\cp1252.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x8f in position 443: character maps to <undefined>

To fix this, 'UTF-8' encoding should be specified when reading and writing the internationalized source files.

@camflint Closing old issues. If you'd like to reopen this, let us know. Thanks!


Archives are not reproducible across Windows/Linux

When using reproducibleFileOrder=true in, e.g., a Jar task, building the same project on Windows and on Linux creates jars with different file orders due to Windows being case-insensitive.
Expected Behavior
Jar entries should be in the same order when built on Windows or Linux when  reproducibleFileOrder=true.
Current Behavior
File order differs on Windows and Linux, e.g.:
built-on-windows.jar
A1.txt
a2.txt
B1.txt

built-on-linux.jar
A1.txt
B1.txt
a2.txt

Cause of Bug
The implementation of org.gradle.api.internal.file.collections.ReproducibleDirectoryWalker relies on java.io.File.compareTo(), which is OS-dependent as also stated in its API: "Compares two abstract pathnames lexicographically. The ordering defined by this method depends upon the underlying system. On UNIX systems, alphabetic case is significant in comparing pathnames; on Microsoft Windows systems it is not."
Suggested Fix
Force case (in-)sensitive file ordering on all platforms. Therefore replace
File[] children = file.listFiles();
if (children != null) {
	Arrays.sort(children);
}

with something like:
File[] children = file.listFiles();
if (children != null) {
	Arrays.sort(children, new Comparator<File>() {
		@Override
		public int compare(File o1, File o2) {
			//return o1.getName().toLowerCase().compareTo(o2.getName().toLowerCase()); // case insensitive on all platforms
			return o1.getName().compareTo(o2.getName()); // case sensitive on all platforms
    		}
	});
}

@ap-actoron would you be willing to submit a PR for this change?

@big-guy Sure. As I've never done a PR for gradle before: anything I need to adhere to in terms of coding style, commit message etc.?

Yep, some of that is here.  For the most part, it's follow what you find and accept the defaults of the IDE.  We have some Checkstyle/Codenarc rules that catch other things.
For this issue, I think you're in the right area WRT ReproducibleDirectoryWalker.  We can get a case-insensitive file comparator from commons-io, I think.  I would expect some changes to ReproducibleArchivesIntegrationTest to demonstrate a jar with different cased entries (files, directories and sub-directories) and how that interacts with the filesystem case-sensitivity.  You can look at test case reproducible #taskName for directory - #files for inspiration.
You can run these tests with ./gradlew core:integTest --tests "ReproducibleArchivesIntegrationTest" or from the IDE (we all use IntelliJ).  Please be sure to run ./gradlew <subproject>:check on the subprojects that you change when you submit the PR.  We'll look over it and then trigger a full test build.
Let me know if you have any questions. Thanks in advance.

@ap-actoron Are you still planning on submitting a PR for this?  I ran into the same issue today, and will be happy to take a stab at making the change if you have no plans to do this anytime soon.

@miokowpak I'm not currently working on a PR and would be happy if you do it.

Fixed by #9416.


Applied patches from MSYS2 distro

For more info see:
https://github.com/msys2/MINGW-packages/tree/bbba91bfc550cc702ae4f74eab0539c5fffac16d/mingw-w64-glfw

Thank you! I can't accept the import suffix change but I'll gladly merge the bindir one.

@elmindreda, for example, please look what filename the autoconf-based zlib -project produce (see Files: sections).
Many other projects have similar .a files for static libraries and .dll.a for shared libraries.

Thank you! I can't accept the import suffix change but I'll gladly merge the bindir one.

@elmindreda, then please merge #1884.


[Bug] SLM - mlc_chat convert_weight has errors with q4f16_ft quantization

🐛 Bug
When using the  mlc_chat convert_weight method on llama-2-7b-chat-hf with q4f16_ft quantization, it throws the following exception:
$ mlc_chat convert_weight models/Llama-2-7b-chat-hf  --quantization q4f16_ft --output Llama-2-7b-chat-hf-q4f16_ft

[2024-02-07 17:57:15] INFO auto_config.py:115: Found model configuration: models/Llama-2-7b-chat-hf/config.json
[2024-02-07 17:57:17] INFO auto_device.py:76: Found device: cuda:0
[2024-02-07 17:57:17] INFO auto_device.py:85: Not found device: rocm:0
[2024-02-07 17:57:18] INFO auto_device.py:85: Not found device: metal:0
[2024-02-07 17:57:19] INFO auto_device.py:85: Not found device: vulkan:0
[2024-02-07 17:57:20] INFO auto_device.py:85: Not found device: opencl:0
[2024-02-07 17:57:20] INFO auto_device.py:33: Using device: cuda:0
[2024-02-07 17:57:20] INFO auto_weight.py:70: Finding weights in: models/Llama-2-7b-chat-hf
[2024-02-07 17:57:20] INFO auto_weight.py:120: Found source weight format: huggingface-torch. Source configuration: models/Llama-2-7b-chat-hf/pytorch_model.bin.index.json
[2024-02-07 17:57:20] INFO auto_weight.py:143: Found source weight format: huggingface-safetensor. Source configuration: models/Llama-2-7b-chat-hf/model.safetensors.index.json
[2024-02-07 17:57:20] INFO auto_weight.py:106: Using source weight configuration: models/Llama-2-7b-chat-hf/pytorch_model.bin.index.json. Use `--source` to override.
[2024-02-07 17:57:20] INFO auto_weight.py:110: Using source weight format: huggingface-torch. Use `--source-format` to override.
[2024-02-07 17:57:20] INFO auto_config.py:153: Found model type: llama. Use `--model-type` to override.
Weight conversion with arguments:
  --config          models/Llama-2-7b-chat-hf/config.json
  --quantization    FTQuantize(name='q4f16_ft', kind='ft-quant', quantize_dtype='int4', storage_dtype='int8', model_dtype='float16', group_size=None, num_elem_per_storage=2, max_int_value=7)
  --model-type      llama
  --device          cuda:0
  --source          models/Llama-2-7b-chat-hf/pytorch_model.bin.index.json
  --source-format   huggingface-torch
  --output          Llama-2-7b-chat-hf-q4f16_ft
[2024-02-07 17:57:20] INFO llama_model.py:51: context_window_size not found in config.json. Falling back to max_position_embeddings (4096)
[2024-02-07 17:57:20] INFO llama_model.py:71: prefill_chunk_size defaults to context_window_size (4096)
Traceback (most recent call last):
  File "/usr/local/bin/mlc_chat", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/__main__.py", line 28, in main
    cli.main(sys.argv[2:])
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/cli/convert_weight.py", line 87, in main
    convert_weight(
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/interface/convert_weight.py", line 169, in convert_weight
    _convert_args(args)
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/interface/convert_weight.py", line 68, in _convert_args
    model, quantize_map = args.model.quantize[args.quantization.kind](
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/model/llama/llama_quantization.py", line 37, in ft_quant
    model = quantization.quantize_model(
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/quantization/ft_quantization.py", line 134, in quantize_model
    model = mutator.visit(name_prefix, model)
  File "/usr/local/lib/python3.10/dist-packages/tvm/relax/frontend/nn/visitor.py", line 140, in visit
    setattr(node, key, self.visit_module(_get_child_name(name, key), value))
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/quantization/ft_quantization.py", line 123, in visit_module
    return FTQuantizeLinear.from_linear(node, self.config)
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/quantization/ft_quantization.py", line 329, in from_linear
    quantized_linear = FTQuantizeLinear(
  File "/usr/local/lib/python3.10/dist-packages/mlc_chat/quantization/ft_quantization.py", line 298, in __init__
    (in_features, tir.ceildiv(out_features, config.num_elem_per_storage)),
  File "/usr/local/lib/python3.10/dist-packages/tvm/tir/op.py", line 3053, in ceildiv
    return _ffi_api._OpCeilDiv(lhs, rhs, span)  # type: ignore
  File "tvm/_ffi/_cython/./packed_func.pxi", line 332, in tvm._ffi._cy3.core.PackedFuncBase.__call__
  File "tvm/_ffi/_cython/./packed_func.pxi", line 263, in tvm._ffi._cy3.core.FuncCall
  File "tvm/_ffi/_cython/./packed_func.pxi", line 252, in tvm._ffi._cy3.core.FuncCall3
  File "tvm/_ffi/_cython/./base.pxi", line 182, in tvm._ffi._cy3.core.CHECK_CALL
  File "/usr/local/lib/python3.10/dist-packages/tvm/_ffi/base.py", line 481, in raise_last_ffi_error
    raise py_err
tvm._ffi.base.TVMError: Traceback (most recent call last):
  [bt] (7) /usr/local/lib/python3.10/dist-packages/tvm/libtvm.so(TVMFuncCall+0x68) [0xffff606fac08]
  [bt] (6) /usr/local/lib/python3.10/dist-packages/tvm/libtvm.so(+0x1ff1bb4) [0xffff5f6f1bb4]
  [bt] (5) /usr/local/lib/python3.10/dist-packages/tvm/libtvm.so(tvm::runtime::TVMMovableArgValueWithContext_::operator tvm::PrimExpr<tvm::PrimExpr>() const+0x94) [0xffff5e8fc5e4]
  [bt] (4) /usr/local/lib/python3.10/dist-packages/tvm/libtvm.so(tvm::runtime::PackedFuncValueConverter<tvm::PrimExpr>::From(tvm::runtime::TVMPODValue_ const&)+0x4c) [0xffff5e8efafc]
  [bt] (3) /usr/local/lib/python3.10/dist-packages/tvm/libtvm.so(tvm::runtime::ObjectRef tvm::runtime::TVMPODValue_::AsObjectRef<tvm::runtime::ObjectRef>() const+0x254) [0xffff5e8efa84]
  [bt] (2) /usr/local/lib/python3.10/dist-packages/tvm/libtvm.so(+0x11e7588) [0xffff5e8e7588]
  [bt] (1) /usr/local/lib/python3.10/dist-packages/tvm/libtvm.so(tvm::runtime::detail::LogFatal::Entry::Finalize()+0x68) [0xffff5e8ece78]
  [bt] (0) /usr/local/lib/python3.10/dist-packages/tvm/libtvm.so(tvm::runtime::Backtrace[abi:cxx11]()+0x30) [0xffff60742820]
  File "/opt/mlc-llm/3rdparty/tvm/include/tvm/runtime/packed_func.h", line 785
TVMError: In function tir._OpCeilDiv(0: PrimExpr, 1: PrimExpr, 2: Span) -> PrimExpr: error while converting argument 0: [17:57:20] /opt/mlc-llm/3rdparty/tvm/include/tvm/runtime/packed_func.h:2080: InternalError: Check failed: type_code_ == kTVMObjectHandle (11 vs. 8) : expected Object but got str

The same model/install works with the previous mlc_llm.build method using q4f16_ft.   And q4f16_1 quantization works with the SLM mlc_chat model builder, but later encounters issue https://github.com/mlc-ai/mlc-llm/issues/1551#issuecomment-1932575775 during runtime.
Environment

Platform (e.g. WebGPU/Vulkan/IOS/Android/CUDA):   CUDA
Operating system (e.g. Ubuntu/Windows/MacOS/...):  Ubuntu 22.04
Device (e.g. iPhone 12 Pro, PC+RTX 3090, ...)   Jetson AGX Orin
How you installed MLC-LLM (conda, source):  Source (commit d840de5)
How you installed TVM-Unity (pip, source):  Source
Python version (e.g. 3.10):  3.10
GPU driver version (if applicable):   JetPack 6.0
CUDA/cuDNN version (if applicable):  CUDA 12.2
TVM Unity Hash Tag (python -c "import tvm; print('\n'.join(f'{k}: {v}' for k, v in tvm.support.libinfo().items()))", applicable if you compile models):
Any other relevant information:

Hi @dusty-nv, thanks for reporting the issue! Was able to reproduce it on my end; I'm looking into it and will update a fix soon.
Meanwhile, as a workaround for q4f16_ft, you could manually change llama_model.py:

From self.lm_head = nn.Linear(config.hidden_size, "vocab_size", bias=False)
to self.lm_head = nn.Linear(config.hidden_size, config.vocab_size, bias=False)

From self.embed_tokens = nn.Embedding("vocab_size", config.hidden_size)
to self.embed_tokens = nn.Embedding(config.vocab_size, config.hidden_size)

Regarding the runtime issue, I commented on the other issue. If you are using prebuilt pip package for TVM, updating it should suffice. If you are building from source, updating to head and rebuilding it should work (to be safe, you can rm -rf build and follow these steps again).

Thanks @CharlieFRuan, will try this!

The issue for q4f16_ft is fixed via https://github.com/mlc-ai/mlc-llm/pull/1731 (i.e. you do not have to manually change the code now). Let us know if there are further issues!

Really appreciate reporting the regression @dusty-nv! We'll look into this.

Bumping on this!

Hi @dusty-nv @srikanthsrnvs! With these 2 PRs that just got merged:

https://github.com/mlc-ai/mlc-llm/pull/1774
https://github.com/mlc-ai/mlc-llm/pull/1775

We were able to increase decode from 214 tok/s to ~227 tok/s on RTX 4090 for Llama 2 7B q4f16_ft.
We aligned most of the performance, but there is still a minor gap with the old flow due to SLM currently not having CUDA graph support. We will follow up with that.

Thanks @CharlieFRuan, I've confirmed with MLC @ 6cf63bb that the performance has improved!   This was on Jetson AGX Orin:

MLC @ 6cf63bb, mlc_chat compile, llama-2-7b-q4f16_ft -> 45 tokens/sec
MLC @ 3feed05, mlc_llm.build, llama-2-7b-q4f16_ft -> 47 tokens/sec

So yea, that is close, thank you!   Please update this topic when the CUDA graphs have been added to mlc_chat.build
p.s. in this latest build I have started having errors with mlc_llm.build (https://github.com/mlc-ai/mlc-llm/issues/1779) so hope we can resolve the open issues with migrating to mlc_chat compile soon 👍

Thanks @CharlieFRuan
Im curious to know what performance can we expect from Mistral 8x7B on an Orin vs Mistral-7B. The Mixtral model gives me performance closer to a 13B model when using non-mlc implementations. However right now, I am just getting 7 tokens/s on Mixtral, vs 45 tokens/s with a 7B model.
Curious if the Cuda graph is the reason behind this, but I suspect that is just a minor 5% improvement. Any ideas?
@dusty-nv perhaps you've tested out Mixtral as well?

Hi, @srikanthsrnvs! Unfortunately, I am not too familiar with Mixtral in MLC. Feel free to open a separate issue for this and people with more knowledge on this could respond. Thank you!!

just bumping on this, is Mixtral fully optimized on MLC? or are there optimizations to be made still? Would love it if you could point me in the direction so I could take a look myself!

Hi @srikanthsrnvs, Mixtral on CUDA should be mostly optimized. Here is another piece we observed that might be helpful for performance recently https://github.com/mlc-ai/mlc-llm/pull/1866 -- we can leverage thrust sort for the expert selection. After this getting merged, Mixtral should be well optimized I think. We are happy to dig more if there is any perf regression or there are some perf issue popping up.

Thank you @srikanthsrnvs for following up. Given thurst is not the focus of this issue, I'm gonna close this one. We can follow up the discussion in 1866


Release 10.0

After 9.0 release, which is right around the corner which is already done, we should start thinking about the next release. Current list of tasks:

[x] Fully working Swift 4.0 support (means upgrading RxSwift/ReactiveSwift versions)
[ ] ~Sample data refractor (see issue #1126 and discussion #1285). We could think about availability of an external plugin (out of the core) that saves stubs (if we can do something to let people create this one)~ Delayed
[x] Propagate parameter encoding error for URLRequest mapping (PR: #1248)
[x] Remove default parameters from Endpoint (see issue #1247, PR: #1289)
[x] Update NetworkActivityPlugin to pass Target in the networkActivityClosure (see issue #1184, PR: #1290)
[x] Add Moya.Response extension for Decodable types (see issue #1118, PR: #1335)
[ ] Add Task case to handle request with Encodable type (see issue: #1325, PR: #1349)
[x] SPM PackageDescription API migration from v3 to v4 (see issue #1240, PR: #1266)
[x] Remove all deprecatations from 9.0.0 (PR: #1320)

We still have a good amount of time to work on 10.0 but I think it's important to note that the RxSwift/ ReactiveSwift support should be the top priority. We can always iterate quickly by shipping 10.0 and then 11.0 soon after.
The reason I say this is because I've given a lot of thought to the sample data refactor (#1126) and IMO I only see two good solutions. I think it's important that the initial PR for this receives input from a handful of Moya contributors.
Essentially, let's not rush any core API decisions to get full Swift 4.0 / reactive support 😃

Sure! This list is rather something we could potentially do, so few of them might not get into the list of features in 10.0. I agree that we should release the next version around the time Swift 4.0 comes out officially.

Hey all, I've also created a branch that is completely Swift 4.0.0-compatible! Branch name is 10.0.0-dev. So install step for CocoaPods would be one of the following:
pod 'Moya/RxSwift', :git => 'https://github.com/Moya/Moya.git', :branch => '10.0.0-dev'
# or
pod 'Moya/ReactiveSwift', :git => 'https://github.com/Moya/Moya.git', :branch => '10.0.0-dev'

Hey all! I'm thinking that after Decodable/Encodable extensions and removing deprecated methods we could release a beta. I'm not sure we can get the sample data refactor in the 10.0 as I know @SD10 had some troubles with that one and it might be a lot bigger than expected. What do you guys think?

Yes, let's delay the sample data refactor again and move it to Moya 11.0. It's worth taking the time to find a long-term solution and one that will play well with Harvey. In #1285, I suggest a short-term solution to keeping sampleData in the Test Target for those who are concerned.

Please publish 10.0 as soon as possible. I have a cocoapod with a dependency on Moya and RxSwift and I'm not able to publish my Swift 4 version.
https://github.com/evermeer/EVReflection/issues/236

Hey @evermeer I'm really sorry for the inconvenience. We're trying to get a 10.0 beta out ASAP. I'll ping you with more updates as I have them
Sent with GitHawk

It looks like it could be difficult to find the right solution for #1325 in a timely manner. Does anyone this we should delay this until the next version? It would be nice to group more breaking changes into this release but we probably want to cut an official beta release with Swift 4 support by now

@SD10 there were some troubles, but the PR is there: #1349. I found a way to make the API call a little more user-friendly without casting to AnyEncodable and it seems to be working fine. After that one we are ready to 🚢 beta version! 🎉

Alrighty! Today, after #1349 & #1350 are merged, we should aim for releasing 10.0.0-beta.1!

10.0.0-beta.1 released! 🎉 Just before the release RxSwift 4.0.0-rc.0 just came out so I've updated all package managers to cover it as well. Thus, to use Moya/RxSwift you need 4.0.0-rc.0 version of RxSwift as well. For CocoaPods, it means:
pod 'RxSwift', '4.0.0-rc.0'
pod 'Moya/RxSwift', '10.0.0-beta.1'

Congratulations everyone 💪 🎉 Thank you for moving this forward @sunshinejr 😃!
cc @evermeer

@sunshinejr is there anything we still need to do for 10.0 except waiting for stable RxSwift and ReactiveSwift releases?

Fix bugs if there are any! 😄 But other than that we are good to go @BasThomas :)

Okay guys, the bug fix is there, I'm gonna try to push a release in the next few hours or so 😉

Moya 10.0.0 released! You can see the release here. Big ❤ to everyone involved:
@devxoul @SD10 @LeLuckyVint @afonsograca @AndrewSB @BasThomas @pedrovereza @sunshinejr (sorry if I forgot about someone)
🎉 🎉 🎉
I'm closing this one, but every problem/question about 10.0.0 let's just create new issue 😉


UI: Design and UX improvements of hotkeys

Proposal

Cleaned design of hotkeys popup
unified css and js for news and hotkeys
chunk_lib=>render_infopanel wrapper for popups
bottom corner hint about hotkeys
hotkey list shows just shortcuts, relevant to current page
minor changes in hotkey descriptions

hmmm, maybe ... it makes sense. But it uses the same logic as news. And news may be longer than screen. Then there will be the logic for news and another one for hotkeys.
But OK, i'll check it

Can be closed ?


'bow attacks fire additional arrows' not factoring into tornado shot damage

The "bow attacks fire additional arrows" mod is not affecting the damage of tornado shot.
So far, have tested:

The explicit mod on rare quivers
The implicit corrupted mod on both rare quivers and rare bows
As well as the additional arrows from the skill gem 'greater multiple projectiles' (only the negative damage from this gem is calculated into tornado shot damage).

None of these are affecting tornado shot damage in PoB.
(As a side note, these mods and/or skills are creating primary projectiles, not secondary projectiles.  Secondary projectiles can only hit a target once for each primary arrow fired.  If I fire 1 primary projectile, whether that primary has 3 secondary projectiles or 10, only 1 of those secondary projectiles will factor into single target dps.  ie, something like the tornado shot helm enchant, which creates 2 additional secondary projectiles, should not affect single target dps since only 1 secondary projectile per primary projectile can hit a single target; whereas using the skill gem greater multiple projectiles should add on 4 more primary projectiles, allowing 1 secondary from each to damage a single target.)
According to https://pathofexile.gamepedia.com/Tornado_Shot
Multiple projectiles: When Tornado Shot fires additional projectiles, such as when supported by Lesser Multiple Projectiles Support, the arrows are fired side by side, each exploding and releasing three arrows. Enemies can be hit by secondary arrows released by different primary arrows. This makes Tornado Shot with additional projectiles particularly effective against single targets.
Edits: clarifying points and cleaning up language

As far as I know PoB only shows damage for one projectile on everything. So if you have multiple arrows you have to multiply it by the amount of projectiles.


Use globally qualified type name when generating TypeInference

The code-generated TypeInference type resides in a custom namespace.
Any types that it refers to in user code must be qualified using the "global::" prefix
to avoid type \ namespace conflicts.
Fixes https://github.com/aspnet/AspNetCore/issues/12116

🆙 📅

Bump

🆙 📅


Bump version to 0.2

May I ask you to draft a new release with the latest changes?
I bumped the minor version since it's technically a breaking change: we made gpio optional and switched to dual-license.

Sure. Can I add you as contributor to the cargo package somehow? Or can we set up CI to automatically push git tags?

Sure. Can I add you as contributor to the cargo package somehow?

It looks like we can: https://doc.rust-lang.org/cargo/reference/publishing.html#cargo-owner

$ cargo owner --add Shatur
    Updating crates.io index
error: failed to invite owners to crate `litex-hal` on registry at https://crates.io

Caused by:
  the remote server responded with an error: could not find user with login `Shatur`

@pepijndevos I should probably login first :D
Could you try it again?

Done


refactor(blockifier): move functions to state maps

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#2175
#2174
#2173  👈 (View in Graphite)
#2172
main

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

Merge activity

Nov 20, 9:55 AM EST: A user started a stack merge that includes this pull request via Graphite.


Raises on failure to run a process (Fixes #3517)

This changes the behavior of Process.new to block until execvp is performed and raise an exception if it fails. Previous behavior was to return immediately and let the forked process exit with 127. See #3517.
Before:
it "returns status 127 if command could not be executed" do
  process = Process.new("foobarbaz")
  process.wait.exit_code.should eq(127)
end

After:
it "raises if command could not be executed" do
  expect_raises Errno do
    Process.new("foobarbaz")
  end
end

GTG?

@asterite ping?

Any update on this?

@lbguilherme will you continue working on this PR?

Would be great if someone could pick up this abandoned PR

Can be closed since #6501 was merged.


Replace mock data in NationwideSummaryHeaderContainer with subscription to the Data Model.

The puzzle 1-e93337f7 from #1 has to be resolved:
https://github.com/codeforthailand/election-live/blob/843128114e9e7345e8a2d3156089c89d841bb352/src/pages/index.js#L19-L20
The puzzle was created by Thai Pangsakulyanont on 20-Mar-19.
If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

@0pdd the puzzle #57 is still not solved.

The puzzle 1-e93337f7 has disappeared from the source code, that's why I closed this issue.

@0pdd 2 puzzles #57, #62 are still not solved.

@0pdd 4 puzzles #57, #62, #63, #64 are still not solved.

@0pdd 2 puzzles #57, #62 are still not solved; solved: #63, #64.

@0pdd the puzzle #57 is still not solved; solved: #62, #63, #64.

@0pdd 2 puzzles #57, #75 are still not solved; solved: #62, #63, #64.

@0pdd all 5 puzzles are solved here: #57, #62, #63, #64, #75.


[SPARK-24443][SQL] comparison should accept structurally-equal types

What changes were proposed in this pull request?
When comparing struct type values, it's a little hard to make the field names same. Simple queries like
SELECT (a, b) = (1, 2) FROM t may fail because the field names do not match.
In Postgres, when comparing struct type values, it will do safe type coercion and ignore field name difference
# create table t(i smallint, j smallint);
CREATE TABLE

# select Row(i, j) = Row(1, 1) from t;
 ?column?
----------
 t
(1 row)

# select Row(i, j) < Row(1, 1) from t;
 ?column?
----------
 f
(1 row)

# select Row(i, j) = Row(j, i) from t;
 ?column?
----------
 t
(1 row)

This PR follows Postgres and accept structurally-equal types in comparison.
This also fixes the test failures in https://github.com/apache/spark/pull/21442 .
TODO:

check Hive and Presto.
think about array/map type. Postgres doesn't support type coercion for elements in array/map when comparison.

How was this patch tested?
new test cases.

Test build #91355 has started for PR 21470 at commit 3555e0f.

cc @gatorsmile @dbtsai @dongjoon-hyun @viirya

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution/3737/
Test PASSed.

Test build #91355 has finished for PR 21470 at commit 3555e0f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/91355/
Test PASSed.

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/12282/
Test PASSed.

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/15758/
Test PASSed.


convenience functions 'get_latest_session, get_latest_subject'

It would be convenient when setting up a new subject / session to quickly get the most research subject / session from remote, in case you forgot what session you are on. e.g.
project.get_latest_ses("sub-004")

'the latest session for sub-004 is: on remote: ses-010, on local: ses-002. Last push to remote was: xx-xx-xx'

(e.g. a case where setting up on a ephys computer where the last session was session 2, then 8 behavioural sessions have been run on a different computer and pushed to remote)
This could work by connecting to remote and checking metadata for most recent session.

Should we rely on remembering the session number? Could we query and then set up session.next()?

yes I'm not sure how to proceed with that, at one level it is very nice and convenient, but there are cases where it might be difficult and result in generating the wrong session:
e.g. if a user is collecting data across 2 computers (local) and pushing to remote. For some reason the transfer to remote fails on one of the computers, and the next day from a different computer the next session is generated (the only available information to the local computer will me the local last session, and remote last session, but not the other local computer last session). There will then be some duplication across local computers.
These kind of cases make me lean towards not auto-generating this ourselves, rather informing the user of the current status of the project 'as best we can tell' (i.e. most recent local session, most recent remote session) and make them make the final decision so they can't get mad at us.

These kind of cases make me lean towards not auto-generating this ourselves, rather informing the user of the current status of the project 'as best we can tell' (i.e. most recent local session, most recent remote session) and make them make the final decision so they can't get mad at us.

Probably a good idea. I do think people will ask for a "next" function though. Could we have some confirmation:
Setting up next session....

Latest session pushed to remote is "010", on 2022-11-07, 17:35.

If this is not the last session, please ensure all data is synced to remote. Otherwise data may be corrupted.

Proceed with setting up session "011"? (y/n)

yes thats really nice, we can offer config to turn the warning on / off ('at your own peril'...)

query local, query remote for list of subject / session numbers
if any gaps (e.g. ses-001, ses-003) then throw a warning, this should never happen
suggest the next one, show message as Adam above.


Git extension bug: All files display change on Windows Os but normal on linux

VSCode Version: Code 1.12.2 (19222cdc84ce72202478ba1cec5cb557b71163de, 2017-05-10T13:20:36.315Z)
OS Version: Windows_NT ia32 10.0.15063
Extensions:

Extension
Author
Version

logcat
abhiagr
0.0.7

code-gnu-global
austin
0.2.2

GBKtoUTF8
bukas
0.0.2

compulim-vscode-dictionary
Compulim
0.0.5

java-debug
DSnake
0.0.2

vscode-javac
georgewfraser
0.0.41

CppSnippets
hars
0.0.9

start-git-bash
McCarter
1.2.1

vscode-csscomb
mrmlnc
4.0.1

cpptools
ms-vscode
0.11.0

PowerShell
ms-vscode
1.0.0

vscode-icons
robertohuertasm
7.7.0

vscode-header-source
ryzngard
1.0.4

code-settings-sync
Shan
2.7.0

guides
spywhere
0.7.0

java-imports-snippets
tushortz
0.0.1

java-snippets
tushortz
0.0.1

cmake
twxs
0.0.17

vscode-react-native
vsmobile
0.3.2

intelligence-change-case
zhengxiaoyao0716
1.1.0

vscode-proto3
zxh404
0.1.1

Problem description:
I have a project code, it store at centos7 install VMware Workstation.
Sometime I open it on the host os(Windows) by the share file way(Such samba, so we can access the project through the local network), but the same file, display changed on Windows but linux is normal.
The vscode is used the same version.
on windows(host):

on Linux(Guess):

see that,
Please help me check it.

This is likely related to the line endings git is configured for.

Glad to hear to answer, But I try to set 'git config --global core.autocrlf true',
But it doesn't work.
Could you tell me the way to solve this?
thanks.

Ok, I try git diff on Windows, But it still show a lot changed files.
So I think it doesn't the problem of the vscode.
Finally, I find a solution on the Internet.
Refs to: http://stackoverflow.com/questions/14564946/git-status-shows-changed-files-but-git-diff-doesnt
add git config: "git config core.fileMode false"
But thank you all the same.

👍


How to customize the sendTransaction method？

excuse me :
I have such a requirement, I need to take over the sendTransaction method, I will do some other operations when the user initiates this method, such as popping up a pop-up window, etc. I noticed that hooked-wallet.js seems to allow me to Define the method of sending the transaction, but I only see some operations through signTransaction, what should I do? Please give me some suggestions!

@silence-may
Hi!,
If you want to show a pop-up are anything like that yes you have to do it in the signTransaction method in hooked-wallet.js, here web3 send the tx params and then you could play with and most important sign the tx with the private key of the user.
Best.

in metamask we don't use the hooked-wallet and just wrote our own custom hooks


update the Changelog

Codecov Report

Merging #2395 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2395   +/-   ##
=======================================
  Coverage   85.89%   85.89%
=======================================
  Files         119      119
  Lines        8945     8945
=======================================
  Hits         7683     7683
  Misses        934      934
  Partials      328      328

Continue to review full report at Codecov.

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


mix tailwind.install rewrites custom tailwind.config.js

Hello.
We have a custom tailwind.config.js which is overwritten by mix tailwind.install. As far as I understand, this command is invoked during fetching the dependencies and first set up of the dependency.
The problem, however, comes when we're running the compilation (we're using distillery releases) in CI, because it will rewrite all customizations and breaks the build.
Could you please clarify a bit the way the problem should be addressed? I believe the simplest solution is check whether file exists there: https://github.com/phoenixframework/tailwind/blob/master/lib/tailwind.ex#L225 and not rewrite it.
This is a duplicate of https://github.com/phoenixframework/tailwind/issues/5 (was a bit late for me, haven't noticed), so probably it will be better to close it and address it within the main issue.

Closing as a duplicate of #5, sorry for inconvenience

Closing as a duplicate for #5


Drop nexmo SMS support. Reverts 58b3cc1d.

I have no idea if this is actually a thing that is still used. I can't imagine that Rippled really needs to be able to send SMSs.
If I'm wrong, please just close this. Otherwise, here, have a patch that makes rippled one tiny iota simpler :heart:
Reviewers: @vinniefalco @rec @ahbritto

circle test fails 'cuz I still had that hook enabled on my fork, its safe to ignore.

I'm in favor of this, however we should probably deprecate the feature, wait for a release cycle and then drop it entirely.
Other than that, I give it a :+1:

How exactly DO we deprecate a feature, anyway?

@rec: by adding "Version a.b.c deprecates the SMS feature. The feature will be removed with version b.c.d" in the release notes.

Apparently this means contacting @yana-novikova

"We should make sure integration has no objection. This isn't a major or really supported feature so the barrier to removing might not be high as other things.
I posted to architects, I'm not entirely sure if contacting you is "integration"?  :-)

I will follow-up with integration

I am marking this as HOLD. @rec, if this passes technical muster, then tag it as passed. I'm signing off on this instead of Vinnie.

@tdfischer: please run scons vcxproj on this, then squash and push.

@nbougalis done. is the scons vcxproj supposed to be squashed as well? I thought it was meant to always be a separate commit.

Nope, put 'em altogether.  Otherwise, there'd be a point between the two commits where the state of the project was inconsistent!

Merged as a90bb53cd295ad5558cbf63441351e8038a78862


Update name of "MCP23S17"

Resolves https://github.com/arduino/library-registry/pull/905

Actually, the removal was not necessary because there wasn't any valid release


⚠ Bofrost.be has degraded performance

In 272c6ec, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1476 ms

Resolved: Bofrost.be performance has improved in 30dad01 after 16 minutes.


Overriding Eloquent\Builder's where method's return type

Larastan Version: 0.6.12
--level used: 5

Description
So I use a custom EloquentBuilder to ease my migration from another framework which allowed ->where("column_id", [1, 2, 3]) to build an IN query block.
/**
 * Class EloquentBuilder
 *
 * @package App\Builders
 * @template TModelClass of \App\Models\BaseModel
 * @extends Builder<TModelClass>
 * @implements \IteratorAggregate<TModelClass>
 */
class EloquentBuilder extends Builder implements ArrayAccess, IteratorAggregate,Countable
{
	/**
	 * Add a basic where clause to the query.
	 *
	 * @param  Closure|string|array|Expression  $column
	 * @param  mixed  $operator
	 * @param  mixed  $value
	 * @param  string  $boolean
	 * @return $this
	 */
	public function where($column, $operator = null, $value = null, $boolean = 'and')
	{
		if ($operator instanceof Selection || $operator instanceof Collection || is_array($operator)) {
			return parent::whereIn($column, $operator); //
		}

		if ($operator instanceof BaseModel) {
			return parent::where($column, $operator->getKey());
		}

		if ($operator instanceof EloquentBuilder) {
			return parent::whereIn($column, $operator->pluck("id")->keys());
		}

		return parent::where($column, $operator, $value, $boolean);
	}
}

I needed to override the possible return type of overriden where() because if I don't, Laravel is screaming on line return parent::whereIn($column, $operator);:
phpstan: Method App\Builders\EloquentBuilder::where() should return $this(App\Builders\EloquentBuilder) but returns Illuminate\Database\Eloquent\Builder<Illuminate\Database\Eloquent\Model>.

So when I change the return type hint,
 * @return $this|EloquentBuilder<TModelClass>|\Illuminate\Database\Query\Builder

it screams
phpstan: Return type (App\Builders\EloquentBuilder<TModelClass of App\Models\BaseModel>|Illuminate\Database\Query\Builder) of method App\Builders\EloquentBuilder::where() should be compatible with return type ($this(Illuminate\Database\Eloquent\Builder)) of method Illuminate\Database\Eloquent\Builder<TModelClass of App\Models\BaseModel>::where()
How do I override the return type correctly?

Hi,
Can you share the piece of code that produces the error?

Hi,
Can you share the piece of code that produces the error?

This line
	public function where($column, $operator = null, $value = null, $boolean = 'and')

This line
	public function where($column, $operator = null, $value = null, $boolean = 'and')

Can you try with @return $this<TModelClass> or @return self<TModelClass>?

Can you try with @return $this<TModelClass> or @return self<TModelClass>?

@return $this<TModelClass> was probably enough! Thanks!

@return $this<TModelClass> was probably enough! Thanks!

We are very happy to help you :)

We are very happy to help you :)


BUG: CircleCI cache problem

@jaeilepp I noticed that CircleCI doesn't actually cache /home/ubuntu/mne_data, leading to lots of re-downloading. Do you know why?
Maybe we should try caching individual directories like mne_data/MNE-sample-data or so. WDYT?

No idea. I remember having a similar problem when I was starting up the circle builds, but then it magically fixed itself.

Maybe we should try caching individual directories like mne_data/MNE-sample-data or so. WDYT?

I think it's worth a try.

It still doesn't explain why the cache doesn't work for our master. At least part of the cache now works for my fork.

The most recent master build is the one where you told it not to use a cache. We haven't merged anything since then.

Yes. We should try  merging something :)

I think this is still an issue on our master branch.

This seems weird. The master build here seems to use cache from pull 3377, which is empty because unmerged pull requests don't have the data present. I wonder if we can somehow tell the build which cache to use.

So it seems that the caching is working, but is lost since the master builds aren't using them.

We could try deleting the existing CircleCI integration on the web
interface (I think it wipes all history and associated information) and
then re-enable it

It seems to have caught sample and bst_auditory in some of the merges. See https://circleci.com/gh/mne-tools/mne-python/1604.
Maybe we can populate the cache now by making some small changes to some examples and merging it after it has cached the stuff.

I noticed that, I guess it's fixed now (?!).

Well, depends how you look at it. I think eventually it will get populated, but until then, it will keep downloading the other datasets on every merge.

Ahh, I see what you mean. So you suggest to make a PR that adds the last dataset checks and touches the examples that use them, and then merge it? Fine by me.

Yeah, it's not the cleanest of solutions, but just to see if it works.