InlineKeyboardButton example not working

I've tried this:
var keyboard = new InlineKeyboardMarkup(new[] {
new[] // first row
{
new InlineKeyboardButton(""),
new InlineKeyboardButton(""),
},
new[] // second row
{
new InlineKeyboardButton(""),
new InlineKeyboardButton(""),
}
});
                    telegramClient.SendTextMessageAsync(e.Message.Chat.Id, "Choose",
                        replyMarkup: keyboard);

doesn't seem to work since I can't create a new InlineKeyboardButton :/
Screenshot: http://prntscr.com/gsv5dv

Have the same problem...please help

I have resolved that with this:
InlineKeyboardMarkup keyboard = new InlineKeyboardMarkup(new[] {                             new[] // first row                             {                                 new InlineKeyboardCallbackButton("Add Agent", "btnAddAgent"),                                 new InlineKeyboardCallbackButton("Remove Agent", "btnDelAgent"),                                 new InlineKeyboardCallbackButton("List Agents", "btnListAgents"),                             },                             new[] // second row                             {                                 new InlineKeyboardCallbackButton("Add Blacklist Agent", "btnAddBlacklistAgent"),                                 new InlineKeyboardCallbackButton("Remove Blacklist Agent", "btnRemoveBlacklistAgent"),                             },                             new[] // first row                             {                                 new InlineKeyboardCallbackButton("List Blacklist Agents", "btnListBlacklistAgents"),                             }                         });

This will be fixed soon. For now updated examples are available in my fork https://github.com/karb0f0s/telegram.bot.examples. Soon it will be merged into main branch.

var inlineKeyboard = new InlineKeyboardMarkup(new[]
{
new []
{
InlineKeyboardButton.WithCallbackData("1.1"),
InlineKeyboardButton.WithCallbackData("1.2","test"),
}
});
            await Bot.SendTextMessageAsync(
                message.Chat.Id,
                "Choose",
                replyMarkup: inlineKeyboard);

it just send message without eny inline button please help me

you can discuss this question in our group chat


Flaky test: tests/chainer_tests/links_tests/connection_tests/test_deconvolution_2d.py

https://jenkins.preferred.jp/job/chainer/job/chainer_pr/1497/TEST=chainer-py2,label=mn1-p100/testReport/junit/tests.chainer_tests.links_tests.connection_tests.test_deconvolution_2d/TestDeconvolution2DParameterShapePlaceholder_param_16_{use_cudnn='always', nobias=True, deconv_args=((None, 2, 3, 2, 1), {})%7D/test_backward_gpu/

This seems related to #7695 so I will take over it.

Update CuDNN to 5.1 for python2 jenkins tests should solve this issue.
@kmaehashi volunteered to do it.

Fix in https://github.com/chainer/chainer-test/pull/514

Reoccurred in convolution_nd. Most likely not fixed yet.
https://github.com/chainer/chainer/issues/7695#issuecomment-517100236

Reoccurred https://jenkins.preferred.jp/job/chainer/job/chainer_pr/1930/
It's the functions and not the link test though.

Let me reopen this ticker.

Pending the backport, master already merged.


Create a way to link related issues

Issues that can be reproduced and fixed the same way should not need multiple entries in the website. Eg.: same exception in many django versions

Maybe someone from the core team could try to run the fix against many versions of Django, through tor or something alike and when submitting an answer could mark versions that answer applies to


search_after query optimization with missing value comparison

Description
With #8391 we skip search_after short cutting in case of missing is specified, but actually no matter user specifies missing in request or not,  the default missing value is _last. This PR takes missing value into consideration of search_after query optimization, for example, if we sort result in asc order and even though min/max value is out of range, the target shard can match in case of missing value is larger than search_after value.
Related Issues
Resolves #14824 #14825

Check List

[x] Functionality includes testing.
[x] API changes companion pull request created, if applicable.
[x] Public documentation issue/PR created, if applicable.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@msfroh @reta  would you mind taking a look at this if you get a chance? If this doesn't make sense to you, I will close this PR.


chore(requirements): update gunicorn to 19.7.1

Minor bug fixes, see http://docs.gunicorn.org/en/stable/news.html#id1

Codecov Report

Merging #1272 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1272      +/-   ##
==========================================
- Coverage   87.29%   87.26%   -0.03%
==========================================
  Files          44       44
  Lines        3887     3887
  Branches      675      675
==========================================
- Hits         3393     3392       -1
- Misses        326      327       +1
  Partials      168      168

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 24675b5...429a645. Read the comment docs.


Remove secure IPC channel requirement

Fixes failures to run integration tests from Test Explorer.

After a bunch of internal review, we determined that the default security settings for this configuration is to only allow the current user access to the named pipe used for IPC.


Domain Section Does Not Work

As title says
Client Area:

Proof that account has a domain:

Source Code on live site:

Source Code uploaded to site:

You need to completely update mofhy installation to work

Still not working after fresh install

Now it is fixed


Improve SGE settings

We need to be able to specify the SGE project for our production environment. There should be no change in behaviour when --project is not specified.
The second commit is probably unnecessary (I don't think h_rt is applied until the held job is started, so it doesn't need one more minute than the dependencies – it just needs 1 minute total). However, the current implementation implies that it's trying to do "one more minute" and this was broken when using a non-default value, so I fixed that too.

By the way, the default branch for this repo is still master, so PRs default to being based on that.

Thanks!
Due to holidays there will be some delay merging into master (early Januari).

Thanks, will look out for it.


Confirm there is no SDFS/vfat support for files > 4GB? (IDFGH-13768)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
Fixed some BLE bugs 240826 on ESP32C3 (8ce789b) (v5.3)
Espressif SoC revision.
ESP32 S3 (not chip specific)
Operating System used.
Windows
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
PowerShell
Development Kit.
ESP32S3
Power Supply used.
USB
What is the expected behavior?
Either ftello and fseeko return a 64 bit value, (off_t, _off_t, off64_t, _off64_t, _fpos_t, _fpos64_t, etc)
or implementations for e.g. fseeko64 and ftello64
What is the actual behavior?
fseeko64 and ftello64 are not defined
any offset type without an explicit "64" in the name is always sizeof(x) == 4
ftello and fseeko always return a 32 bit value
(so for files > 4gb you get only the 32bit remainder of the file size)
Steps to reproduce.

FATFS directly supports 64 bit operations, but you take a performance hit for going that route.
Is there any way to get 64 bit support through the POSIX/VFS layer?
Failing that, any pointers on what must be done to get similar speeds out of FATFS directly?
Thanks,
J

File size limit on FAT32 is 4GB, so I think this would be relevant only if you were to use exFAT. However since exFAT requires a license we only officially support up to FAT32 (current VFS implementation supports only 32-bit operations). You could theoretically write your own VFS driver where you use 64-bit LBA.

File size limit on FAT32 is 4GB, so I think this would be relevant only if you were to use exFAT. However since exFAT requires a license, so we only officially support up to FAT32 (current VFS implementation supports only 32-bit operations). You could theoretically write your own VFS driver where you use FATFS with 64-bit LBA.

Hi, thanks for getting back.
I figured the VFS driver might be the case.
Are there any performance gains associated with going through the VFS layer (dma, etc), or would that all have to be implemented in the VFS driver?
Thanks,
J

Hi  @JonathanDotCel,
afaik there is nothing performance specific to implement in your VFS version - you just add 64bit versions of required APIs (to both fatfs/vfs and vfs), and compile the code with FF_LBA64 option on, plus you have to deploy the exFAT module (hardwired condition given by the FatFS library). Furthermore, you may need to update fatfs/diskio APIs as they would compile with 64bit arguments (see https://github.com/espressif/esp-idf/blob/master/components/fatfs/src/diskio.h#L33).
This scenario may theoretically work for SD cards, but probably no SPI NOR flash chips provide more than 4GB of space. I'm quite sceptical about any success on this mission, sorry. ESP32* chips are 32bit platform and you may bump into various limitations coming from this construction.
Please, let us know about your progress.
Thank you


Add user.follow_playlist, playlist.public

I wrapped ability to follow a playlist and check if a playlist is public

I manually tested the changes and they should be good.  I'm trying to figure out how to include the changes I just made into this pull request.

Alright so it looks like my new commit automatically got added into the pull request.  Great.

Thanks for the help.  I'll make another pull request with that token refreshing fix sometime this weekend.

You can now get these changes by updating the spotify package with pip install --upgrade git+https://github.com/mental32/spotify.py#egg=spotify
In a few days I'm going to rebase any commits that break semvar into a new branch then merge the branch back into master and release to pypi


[docs-infra] Fix algolia links to API props

@alexfauquette The only thing I would change here is the labels, making it clear that it's an API page:
new (❌):

vs. old (✅):

Originally posted by @oliviertassinari in https://github.com/mui/material-ui/issues/40396#issuecomment-1874129570

Linked to #41122, it's another regression


Dockerfile: no need to disable repos

We no longer run rpm-ostree update <new machine-os> so repos should be enabled as these are required to install additional packages.
Fixes #445

/lgtm

/override ci/prow/e2e-gcp-upgrade
Known issue


[Go] pgvector sample

A sample demonstrating how to use Postgres's vector extension
to build an indexer and retriever.

Are we not going to add this as a plugin?


Diff Comment with HEAD button in Comments view sometimes disappears

Extension version:
v0.94.0
VSCode Version:
Version: 1.92.2 (Universal)
Commit: fee1edb8d6d72a0ddff41e5f71a671c23ed924b9
Date: 2024-08-14T17:29:30.058Z
Electron: 30.1.2
ElectronBuildId: 9870757
Chromium: 124.0.6367.243
Node.js: 20.14.0
V8: <IP_ADDRESS>-electron.0
OS: Darwin arm64 23.6.0

Steps to Reproduce:
When a review comment is outdated, Diff Comment with HEAD button will show up and let me quickly check what are the changes that made this comment outdated.
However I noticed sometimes the button is gone, and I have to checkout to main and then back to the PR to get it appear again.
I believe there are multiple triggers for this, and refreshing the PR (like the attached video shows) is the most consistent trigger I found. However, when I tried to clone this repo(microsoft/vscode-pull-request-github) and recreate the exact scenario for reporting this issue, it didn't happen in my newly forked repo. That's why I couldn't provide reliable reproducing steps here and as a workaround I am attaching a screen recording to show the issue that is only happening in my repo:
https://github.com/user-attachments/assets/b56137a5-4902-4c67-81c3-56b3a7b9102b
I am a bit lost now and not sure how I should further debug this issue. I rely on this awesome feature a lot, so please let me know about anything else I can do to help debug this issue. Thanks a lot!

I also can't repro it, but I can see where this could happen.

I also can't repro it, but I can see where this could happen.

Thank you for looking into it. Please kindly let me know if you would like me to test out the fix.

@jo-mpac can you try the latest pre-release version of the GitHub Pull Request? You can get it in the Extension Marketplace

@jo-mpac can you try the latest pre-release version of the GitHub Pull Request? You can get it in the Extension Marketplace

Hey I have been using the pre-release for a while and I believe the issue was fixed! Thank you very much folks ❤


Changelog

Thanks for the great work here - is there a changelog for the project? :smiley:

Good point. I've now added one (that starts at 3.0).


Update what-are-teams-live-events.md

Corrected a typo (removed extra "s")

@JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@LanaChin PR has been copyedited and is ready for final review, could you please check and merge? Thanks!


Interegrate with react-loop reducer cause error

I'm trying to use apollo on pepperoni(React Native) which use 'react-loop' reducer combiner.
https://github.com/futurice/pepperoni-app-kit
https://github.com/raisemarketplace/redux-loop
and got error "Existing store does not use apolloReducer for apollo".
reducer.js:
import {Map} from 'immutable';
import {combineReducers} from 'redux-loop';
import NavigationStateReducer from '../modules/navigation/NavigationState';
import AuthStateReducer from '../modules/auth/AuthState';
import CounterStateReducer from '../modules/counter/CounterState';
import SessionStateReducer, {RESET_STATE} from '../modules/session/SessionState';
import {apolloReducer} from './apollo'

const reducers = {
  // Apollo Reducer
  apollo: apolloReducer,

  // Authentication/login state
  auth: AuthStateReducer,

  // Counter sample app state. This can be removed in a live application
  counter: CounterStateReducer,

  // @NOTE: By convention, the navigation state must live in a subtree called
  //`navigationState`
  navigationState: NavigationStateReducer,

  session: SessionStateReducer

};

// initial state, accessor and mutator for supporting root-level
// immutable data with redux-loop reducer combinator
const immutableStateContainer = Map();
const getImmutable = (child, key) => child ? child.get(key) : void 0;
const setImmutable = (child, key, value) => child.set(key, value);

const namespacedReducer = combineReducers(
  reducers,
  immutableStateContainer,
  getImmutable,
  setImmutable
);

export default function mainReducer(state, action) {
  if (action.type === RESET_STATE) {
    return namespacedReducer(action.payload, action);
  }

  return namespacedReducer(state || void 0, action);
}

Maybe combinReducer from redux-loop break the apolloReducer?
Is there any possible to make apollo work with react-loop together?

Yes, combineReducers means that your state is no longer on the apollo key in the root, now it's at reducers.apollo.
Currently it's not supported to have apollo state be at a not-root key of the store. Have you considered using it on the top level instead? I doubt Apollo Client will work with redux-loop anyway, but I haven't tried it.

@wuzhuzhu here is an example of it working with redux-loop: https://github.com/apollostack/react-apollo/pull/137
The issue with the above actually has to do with immutablejs support for the core client. I've added that in the same PR
This will work in 0.4.3

@jbaxleyiii I added immutable = {true} option on provider and got "Existing store does not use apolloReducer for apollo" error.

"react-apollo": "^0.4.5",
"redux-loop": "^2.1.0",

reducer.js:
import {Map} from 'immutable';
import {combineReducers} from 'redux-loop';
import NavigationStateReducer from '../modules/navigation/NavigationState';
import AuthStateReducer from '../modules/auth/AuthState';
import CounterStateReducer from '../modules/counter/CounterState';
import SessionStateReducer, {RESET_STATE} from '../modules/session/SessionState';
import {apolloReducer} from './apollo';

const reducers = {
  // Apollo Reducer
  apollo: apolloReducer,

  // Authentication/login state
  auth: AuthStateReducer,

  // Counter sample app state. This can be removed in a live application
  counter: CounterStateReducer,

  // @NOTE: By convention, the navigation state must live in a subtree called
  //`navigationState`
  navigationState: NavigationStateReducer,

  session: SessionStateReducer

};

// initial state, accessor and mutator for supporting root-level
// immutable data with redux-loop reducer combinator
const immutableStateContainer = Map();
const getImmutable = (child, key) => child ? child.get(key) : void 0;
const setImmutable = (child, key, value) => child.set(key, value);

const namespacedReducer = combineReducers(
  reducers,
  immutableStateContainer,
  getImmutable,
  setImmutable
);

export default function mainReducer(state, action) {
  if (action.type === RESET_STATE) {
    return namespacedReducer(action.payload, action);
  }

  return namespacedReducer(state || void 0, action);
}

main.js:

import 'es6-symbol/implement';
// import {Provider} from 'react-redux';  //Use ApolloProvider instead.
import {ApolloProvider} from 'react-apollo';
import store from '../redux/store';
import {apolloClient} from '../redux/apollo';
import AppViewContainer from './AppViewContainer';
import React from 'react';
import {Platform, BackAndroid} from 'react-native';
import * as NavigationStateActions from './navigation/NavigationState';
import gql from 'graphql-tag';
import get from 'lodash';

...
render() {
      return (
        <ApolloProvider store={store} client={apolloClient} immutable={true}>
          <AppViewContainer />
        </ApolloProvider>
      );
    }
...


Add port: PLplot

PLplot is a professional plotting library meant to create production/publication ready data plots. It is not a young project (stood the test of time), undoubtedly more modern libraries exist. Nonetheless, it has a wide user base and many language bindings.

Thanks for the PR! I found some interesting interactions between the port and our master vcpkg_configure_cmake(), which resulted in some changes while working it out.

@MathiasMagnus
E:\tools\vcpkg>vcpkg install --triplet x64-windows-static --recurse plplot
The following packages will be built and installed:
plplot[core]:x64-windows-static
Starting package 1/1: plplot:x64-windows-static
Building package plplot[core]:x64-windows-static...
-- CURRENT_INSTALLED_DIR=E:/tools/vcpkg/installed/x64-windows-static
-- DOWNLOADS=E:/tools/vcpkg/downloads
-- CURRENT_PACKAGES_DIR=E:/tools/vcpkg/packages/plplot_x64-windows-static
-- CURRENT_BUILDTREES_DIR=E:/tools/vcpkg/buildtrees/plplot
-- CURRENT_PORT_DIR=E:/tools/vcpkg/ports/plplot/.
-- Downloading https://sourceforge.net/projects/plplot/files/plplot/5.13.0 Source/plplot-5.13.0.tar.gz/download...
-- Downloading https://sourceforge.net/projects/plplot/files/plplot/5.13.0 Source/plplot-5.13.0.tar.gz/download... OK
-- Testing integrity of downloaded file...
-- Testing integrity of downloaded file... OK
-- Extracting source E:/tools/vcpkg/downloads/plplot-5.13.0.tar.gz
-- Extracting done
-- Applying patch E:/tools/vcpkg/ports/plplot/install-interface-include-directories.patch
-- Applying patch E:/tools/vcpkg/ports/plplot/install-interface-include-directories.patch done
-- Configuring x64-windows-static-rel
-- Configuring x64-windows-static-rel done
-- Configuring x64-windows-static-dbg
-- Configuring x64-windows-static-dbg done
-- Build x64-windows-static-rel
-- Build x64-windows-static-rel done
-- Build x64-windows-static-dbg
-- Build x64-windows-static-dbg done
-- Installing: E:/tools/vcpkg/packages/plplot_x64-windows-static/share/plplot/copyright
-- Performing post-build validation
There should be no bin\ directory in a static build, but E:\tools\vcpkg\packages\plplot_x64-windows-static\bin is present.
There should be no debug\bin\ directory in a static build, but E:\tools\vcpkg\packages\plplot_x64-windows-static\debug\bin is present.
If the creation of bin\ and/or debug\bin\ cannot be disabled, use this in the portfile to remove them

    if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
        file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
    endif()

There should be no empty directories in E:/tools/vcpkg/packages/plplot_x64-windows-static
The following empty directories were found:

    E:/tools/vcpkg/packages/plplot_x64-windows-static/bin
    E:/tools/vcpkg/packages/plplot_x64-windows-static/debug/bin

If a directory should be populated but is not, this might indicate an error in the portfile.
If the directories are not needed and their creation cannot be disabled, use something like this in the portfile to remove them:

    file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/a/dir ${CURRENT_PACKAGES_DIR}/some/other/dir)

Found 2 error(s). Please correct the portfile:

E:\tools\vcpkg\ports\plplot\portfile.cmake

-- Performing post-build validation done
Error: Building package plplot:x64-windows-static failed with: POST_BUILD_CHECKS_FAILED
Please ensure you're using the latest portfiles with .\vcpkg update, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:

I think this might be because the tool pltek.exe is built thus creating the bin dir (and didn't look yet what builds it) and we only removed the exe and not the dir. In dynamic builds the dlls populate the bin anyway. Will fix on monday.
Because we have a group at our institute that wanted to rely on this package ASAP, I wanted to make it work and reduce building unwanted side-effects later to improve installation times. There are few other packages and improvements in the pipeline as well.
(clFFT can use FFTW3 on CPU devices but stock scripts do not expose this as an option; if it finds it, it silently links to. The current behavior of clFFT depends on installation order when FFTW3 is also installed/queued for install. clRNG is also in the pipes...)

@MathiasMagnus
как я понял намного все проще, исполняемый файл удаляется, а пустая папка остается

as I understood much more easily, the executable is deleted, and the empty folder remains

+# Remove unnecessary tool
+file(REMOVE
+    ${CURRENT_PACKAGES_DIR}/debug/bin/pltek.exe
+    ${CURRENT_PACKAGES_DIR}/bin/pltek.exe
+)


Update tests/docs/etc. to account for decommissioned data centers

A few data centers are no longer supported.  We have at least a couple acceptance tests that are using these data centers, which causes those tests to fail.  We may also be referencing those data centers in examples or guides.  Update any tests/examples/guides to replace references to unsupported data centers as follows:

NRT1 => TY
AMS1 => AM
SJC1 => SV
DFW2 => DA
EWR1 => NY

Dupe of #130


HTTPS error?

Hey Chris, first off thank you a million times for making this. Its quite rad.
I'm running into what appears to be an SSL error. I did a little research and it seemed like the old SSL token for webpack-dev-server was out of date. Below is the error I get. I would assume the reason I'm not getting the js payload is because of the SSL issue.

I just tried this with a fresh install and couldn't recreate the error. Couple things you could try:

Make sure you're loading the page over HTTPS, e.g. https://<IP_ADDRESS>:8000/.
You have to manually add an exception in Chrome for the bogus localhost cert. An easy way to check this is to open https://<IP_ADDRESS>:8002/app.js in a new tab. There should be a Chrome UI with a link like "(unsafe) proceed to <IP_ADDRESS>".

If that doesn't work there might be something else going on...

@christophercliff wow, I totally thought I tried that but didn't realize it added an exception. Cheers!


How to get transparent background image under TabBar

How can I get a full screen background image? I found a way to do it with a background color but haven't figured out a way to do the same thing with an Image. (related to: #788 )
Working with TabBarTop.
The problem currently is that the TabBar is taking space from the top of the screen and the background image begins under it -> setting backgroundColor: 'transparent' does not help

Are you trying to create a full-screen background image for your screen component or for the Tab Bar itself?
If you are trying to put an image inside of the Tab Bar, you can provide your own tabBarComponent in the tabNavigatorConfig: https://reactnavigation.org/docs/navigators/tab#TabNavigatorConfig

The same way as in #788 but with an image instead of a color. So not only for the TabBar component but for the whole screen (as in getting and setting Image size with const {height, width} = Dimensions.get('window')

By "whole screen" do you mean the screen that is rendered for that tab?

Ive been trying this too and no solution. Setting background:transparent and playing with position:absolute is not working at all. :(
Please help!

1、Set the style "position: 'absolute',left: 0,right: 0,bottom: 0"，
if Tab Bar not visible：
remove containers around header and footer：https://github.com/react-native-community/react-native-tab-view/commit/13243a2c6e048c73b089de63da58b7320fdb8bf0

I can get the fullscreen image with the above setup under the TabBar but unfortunately, my TabBar Icons no longer respond to touch after the change (I can still swipe to move between tabs but I would also need the onPress() for the Icons).
bottom: 0 sets default TabBarTop for Android to the bottom of the screen. Still, with/without the result is the same -> not able to press the icons for TabBar transition.
Your link seems to point to a react-native-tab-view but I'm using react-navigation
package.json:
"react": "^16.0.0-alpha.12",  "react-native": "^0.46.4",  "react-navigation": "git+https://github.com/react-community/react-navigation.git",

Works on iOS, I can get a transparent bar, but on android the bar is not there

I finally got it working on android and ios by adding a container view for the custom tab bar component and make the container absolute positioned and leave the tab bar as it is
Here is the custom tab bar component
const TabBarComponent = (props) => (<BottomTabBar {...props} />)

Here is the tab bar options
{
	tabBarComponent: props => {
		return (
			<View style={{
				position: 'absolute',
				left: 0,
				right: 0,
				bottom: 0,
			}}>
				<TabBarComponent {...props} />
			</View>
		)
	},
	tabBarOptions: {
		style: {
			borderTopWidth: 0,
			backgroundColor: '#FFFFFF',
			borderTopRightRadius: 20,
			borderTopLeftRadius: 20,
			height: 55,
			paddingBottom: 5,
		}
	},
	initialRouteName: 'HomeScreen',
}

And the final result

const TabBarComponent = (props) => (<BottomTabBar {...props} />)

I'm having a similar "issue". I'm using createMaterialTopBar. I want to put the same with, but with the bar on top, with bottom left and right radius and a "transparent" background just like your example.
How could I make a component with this styles?

@jonathangaldino I encourage you to open a new issue since this one is closed. Alternatively, post your question to Stack Overflow or join the Reactiflux community and ask in the react-navigation or need-help channels.

position: 'absolute' is a solution for this, but you may notice it'll not look perfectly with the android side, however working perfectly for the android side.
Finally, I found the solution to this after long hard work.
elevation: 0
Set this on tab bar style will fix this issue.
Example -
tabBarOptions={{
showIcon: true,
showLabel: true,
activeTintColor: COLORS.tabSelected,
inactiveTintColor: COLORS.tabNormal,
style: {
backgroundColor:'transparent',
borderTopWidth: 0,
position: 'absolute',
elevation: 0  // <-- this is the solution
},
labelStyle: {
fontSize: 12,
},
}}>
Here are the output screenshots.
Before set "elevation: 0", it was looking like this

After set "elevation: 0", it's looking perfect

"elevation: 0"
WAS WORKING FOR ME...

position: 'absolute' is a solution for this, but you may notice it'll not look perfectly with the android side, however working perfectly for the android side.
Finally, I found the solution to this after long hard work.
elevation: 0
Set this on tab bar style will fix this issue.
Example -
tabBarOptions={{
showIcon: true,
showLabel: true,
activeTintColor: COLORS.tabSelected,
inactiveTintColor: COLORS.tabNormal,
style: {
backgroundColor:'transparent',
borderTopWidth: 0,
position: 'absolute',
elevation: 0 // <-- this is the solution
},
labelStyle: {
fontSize: 12,
},
}}>
Here are the output screenshots.
Before set "elevation: 0", it was looking like this

After set "elevation: 0", it's looking perfect

You saved my day. thannk you

@anhquan291
Awesome


Safety of types containing raw pointers and methods using them

Hello again 👋
We are working in Parsec (starting with this PR) of increasing our coverage of what PKCS11 operations/types we support. Doing that we wanted to implement conversions between our types and the PKCS11 ones but more generally work with higher-level, more idiomatic, Rust types.
We started for example to implement CkMechanism as an abstraction over CK_MECHANISM and conversion to go from one to the other.
However we realized we were doing something wrong and putting in CK_MECHANISM.pParameter a pointer that would no longer be valid at the moment it would be dereferenced in encrypt_init. But more importantly, this happened using safe Rust and without any error from the compiler.
This led us to think that our abstraction should instead contain a reference on the mechanism parameter, reference to which there could be a Rust lifetime associated with it.
But the problem is the same: when encrypt_init is called, the mechanism.pParameter parameter will be dereferenced and the compiler has no way to know if it is safe or not, as it goes inside an unsafe zone.
I believe this is the same for any type containing raw pointer that will be dereferenced by one of the PKCS11 method (CK_ATTRIBUTE and CK_MECHANISM come to mind).
To solve this problem (and by the way this also simplifies the fix for #15), I propose the following:

put as unsafe any method on Ctx that will dereference a raw pointer
build abstraction equivalents on all structures containing raw pointers to instead contain pure Rust references and lifetime specifiers
Have equivalents of the unsafe methods taking the abstraction structures. In those structures make the conversion between the abstraction and the C-like structures because we are ensured that is safe (the reference must be valid) and call the underlying method.

More than safety, the Rust abstraction would make it easier I think for clients to make valid operations and use them more idiomatically.
For example we could imagime for the CK_MECHANISM abstraction:
enum CkMechanism<&'a> {
    CkmRsaPkcs,
    CkmRsaPkcsPss(&'a CkRsaPkcsPssParams),
    CkmRsaPkcsOaep(&'a CkRsaPkcsOaepParams),
    CkmSha1,
    CkmSha256,
    CkmSha384,
    CkmSha512,
    // etc...
}

And CK_ATTRIBUTE:
enum CkAttribute<&'a> {
    CkaClass(CkObjectClass),
    CkaModulus(&'a [u8]),
    // etc...
}

enum CkObjectClass {
    CkoData,
    CkoCertificate,
    // etc...
}

It would be quite tedious to do everything (but I don't think it has to happen in one go) but the results would be great I am sure! For example all the methods on CkAttribute could all be always safe!

Actually I think it would be nicer to have those abstraction structures take full ownership of the data they contain but have methods on them, taking a reference, to produce C type form

@hug-dev yes, I ran into this myself before; I guess I should have put a warning once I saw it myself. Mea culpa.
Why I never considered this to be a "big problem" was because this API layer was never really meant to be used at all publicly; it was always meant as a first one-to-one translation of C to Rust - assuming that people who use pkcs11 know what they are doing anyway.
I always had the goal to write a higher level API which would fix these problems (or hide them tbh), and expose exactly the higher level rust paradigms in that similar manner that you are mentioning. I actually have a local branch where I started, however, as it is (as you pointed out) a lot of work / leg work to do it, I never finished that.
Nonetheless, you are pointing out the real problem here: the library is making something safe to use which it actually isn't, and therefore shouldn't even be declared as such.
Let me think about this over the weekend, there is actually some general refactoring involved that should be done. And btw I'll most likely simply merge the linked fix for ARM as it is definitely a problem.
If you need a general resolution and/or direction on this earlier, please let me know.

Awesome! Interesting to know your thinking on this, the history of this crate and great that we share a similar vision.
We merged some abstraction that we needed in Parsec here. We are happy to change to something similar that would be implemented inside this crate.
This will be a lot of work but some developpers of Parsec will definitely be happy to help designing or developping!
Independantly of that, feel free to merge the Arm fixes and we also posted #42.

This will be a lot of work but some developpers of Parsec will definitely be happy to help designing or developping!

Actually, now that I am thinking about it, it would be awesome if @joechrisellis could test his PR on the PKCS 11 API and try to dynamically load the SoftHSM library 🚀
If that works fine, it could be the basis of a pkcs11-sys crate that works for multiple architecture 😃 If @mheese is ok with the principle of course.

If that works fine, it could be the basis of a pkcs11-sys crate that works for multiple architecture

Yes, that sounds like the right way to do this 👍

Hi!
Apologies for the late response here; I have been away for a week.
Yes, this definitely looks like something I can test. I'll start looking into this as soon as I can, and will report back here. 👍

Hello again!
I've just gotten around to taking a look at this, apologies for the lag! I tried generating dynamic bindings for the PKCS11 headers (the one defined here) and got the following result: here.
It's a pretty beefy file at almost 5000 lines long, but if you grep for impl Pkcs11, you'll see the dynamic library part. It seems to have generated the right bindings but I haven't tried this with SoftHSM -- will give that a go next and report back.
Cheers! ⚡

The code snippet below seems to be working with the bindings generated above + the SoftHSM dylib.
#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
include!(concat!(env!("OUT_DIR"), "/bindings.rs"));

use std::mem::MaybeUninit;

fn main() {
    unsafe {
        let lib = Pkcs11::new("/usr/local/lib/softhsm/libsofthsm2.so").unwrap();
        let mut list = MaybeUninit::uninit();
        let list = match lib.C_GetFunctionList(&mut list.as_mut_ptr()).unwrap() as u32 {
            CKR_OK => *list.as_ptr(),
            _ => panic!("oops"),
        };
        println!("{:?}", list);
    }
}

@mheese @hug-dev -- would appreciate your insight on if and how to move forward here! Good to know that this works, though. 🙂

That looks fantastic, thanks @joechrisellis 🚀
I was thinking of the following, feel free to criticize as those would be big changes:

move src and Cargo.toml into the pkcs11 folder
create a pkcs11-sys folder with a new library crate
create a top-level Cargo.toml to have a workspace of two crates, pkcs11 and pkcs11-sys

pkcs11-sys would expose all the PKCS11 Rust types created with bindgen for different targets. I propose now to target Linux on Aarch64, Arm32 and x86. Depending on the --target option this crate would select the appropriate file containing all the bindings + the dynamic loading code.
Inside pkcs11, remove functions.rs and types.rs and use directly the pkcs11-sys crate wherever those types are needed. Also modify the Ctx structure methods (mostly new) to use the new bindgen-generated loading function.
That would be a first step to keep exactly the same API surfaced (so no breaking change) but separating into two crates.
I believe the step after that would be to add abstractions in the pkcs11 crate but I think all can be done without any breaking change for now but just by adding new structs/methods.
To address the immediate safety issues, it might be needed to add unsafe on all methods though.

Hi @mheese!
I have implemented @hug-dev's suggestions above on a local branch -- looks like everything is working, and tests are passing.
However, there has been some teething problems with introducing bindgen into the mix. Unfortunately, I think this will create an API break. Specifically, in the existing implementation, builders exist for types such as CK_ATTRIBUTE. This is possible because CK_ATTRIBUTE is defined locally. In the *-sys crate implementation, though, CK_ATTRIBUTE is defined in the *-sys crate, and AFAIK it is bad practice to include impl blocks inside your *-sys crates (they should contain type definitions only). The way that we can get around this is by re-defining the CK_ATTRIBUTE struct (plus a few others) as CkAttribute with #[repr(C)] inside the non-*-sys crate. This can be cast to the CK_ATTRIBUTE struct defined in the *-sys crate, and since it's declared locally, we can create implementations/builder functions for it.
So, the breaking change here is that CK_ATTRIBUTE (as it was defined) now becomes CkAttribute. A similar name conversion also has to happen for CK_INFO and CK_INITIALIZE_ARGS. The renamed structs are functionally identical to the existing structs, just under a different name.
I've tried various things to try to preserve the existing naming but haven't been able to come up with anything that both works and doesn't result in some ugly consequences.
Would really appreciate your thoughts on this, especially if you have any suggestions on how to move forward. 😄

@joechrisellis @hug-dev cool! I'll try to look into this next week. I'm planning on making some progress on this library next week in general. This is one of the biggest problems at the moment imho. And I'm truly sorry that I'm only looking into this basically a year later. As this is not my day-to-day job, it's something I'm only making progress on when I have some cycles to spare (although it'd be nice if it could become that at some point, but I don't see how right now).

@hug-dev closing all issues right now together with a deprecation notice that I'm trying to squeeze in everywhere. For others reading this issue, please switch to the cryptoki crate https://github.com/parallaxsecond/rust-cryptoki

Thanks a lot for your work with this crate and providing PKCS11 for everyone using Rust so far! Appreciate the redirect. You will always be welcome in the cryptoki repo if you ever wish to hack on Rust with PKCS11!

@hug-dev if you want to, I would like to move ownership of the pkcs11 crate to either you guys, or @tarcieri from the @RustCrypto org might have interest otherwise. What do you think?

Thanks for proposing! Let me ask on our community slack channel to see what people think.


(draft) scrape vaccination data

I saw that https://www.berlin.de/corona/lagebericht/desktop/corona.html now provides vaccination data and tried to write a way to scrape it. I am not too familiar with ruby, but I hope it's a good starting point! Feel free to edit away @knudmoeller!
Thanks!

You should have write access to my fork!

Thanks for making me aware of the vaccination data and the PR!

Yay, thank you!


Updating GPU driver may cause lockup

Windows Terminal version
1.17.11461.0
Windows build number
10.0.22621.2215
Other Software
Including for completeness
GeForce Experience <IP_ADDRESS>
Nvidia GeForce Game Ready driver (updated to): 537.13
Steps to reproduce
Have WT running (having it minimized or in the background may be required), update GPU driver, try to bring the window to the foreground after the update completes.
Expected Behavior
For it to continue working, possibly after a redrawing
Actual Behavior
The existing window became completely non-responsive and had to be forcefully terminated using task manager.
One attempt to re-open the app caused it to do this:
.
After some retries it eventually started working

This may be a duplicate of #15553. Do you happen to have any dumps in %LOCALAPPDATA%\CrashDumps? If so, would you be willing to share them with us?

This may be a duplicate of #15553. Do you happen to have any dumps in %LOCALAPPDATA%\CrashDumps? If so, would you be willing to share them with us?

I have crashdumps for other programs there, not for wt

One attempt to re-open the app caused it to do this:
[image]

This is super interesting. There's literally no tabs in that window - somehow a window was created without a tab?? Does clicking on the new tab button in that transparent window create a new tab?

Thanks for the bug report! We're going to mark this as a /dup of #15553 because we suspect that updating the GPU driver is the issue here. If we find that they're different, we'll de-dup the bugs.

One attempt to re-open the app caused it to do this:
[image]

This is super interesting. There's literally no tabs in that window - somehow a window was created without a tab?? Does clicking on the new tab button in that transparent window create a new tab?

IIRC that's what I ended up doing, at that point it started working normally again


Make the component work with any UI library

Is your feature request related to a problem? Please describe.
This is the best cron generator I've found, but my project uses material UI. I think it'd be great if it can work without antd.
Describe the solution you'd like
We could modify it to pass in the Button component & the Select component. Or maybe, carve out the core logic so that one can use it even without using the default UI and by just passing in the required props.
I'd be happy to contribute once we figure out a plan.
Thank you so much for this library!

+1

Hi, sorry for the late (late) answer.
Thank you very much, I appreciate that you like this component. I also think it can be a great improvement to let anyone used this component without Ant Design. I just didn't take the time (yet) to do this.
I think I will take a look to see what's possible, maybe even not using a UI library at all with plain CSS, so everyone can use it. I just don't want to lose any features. Anyway, It can really help to do that because today this component depends a lot on antd. When they make breaking changes, it can break  the component.
I will try to keep you posted if I make any development on my side.

@xrutayisire Hi! Thanks a lot for this cron lib, but it seems like it's time to do something with using antd :)
According to this thread, antd does not works properly with react 18 and I can't  see any activity of antd team to fix this. So your library doesn't works with react 18 too.
Is there any chance to get rid of antd?

Hi!
Thanks for your comment, I didn't know about React 18 crash. I will check and see if it's still working on my side. Btw I think I just deactivated StrictMode.
And to get rid of antd it requires a lot of work to keep the same UI. I wanted to start the dev, but I didn't have the time.
If someone is interested to help me on this, it will be quicker!

@xrutayisire I'd be happy to assist you. Let's plan and start the development.

I just emailed you, so we can plan a call together.

For what it's worth, as in interim solution, I copied the antd.css file out of the /node_modules/antd/dist/ folder and into my project directory, deleted the first few hundred lines of global styles (that previously clobbered all the styles on my site) from that file, and imported that trimmed down antd.css file.  The cron widget is a bit uglier (b/c it depends on some of the antd global styles like button {...}, but its still the best cron widget I could find (and doesn't change every button, paragraph, title, etc. on my site)

Any chance to get only the minimal style to use the component ?
It add like 550kb of CSS to use it.

I have a workaround for the CSS, you only need to grab lib/select/index.css and lib/style/default.css and you can deleted the first few hundred lines of global styles.
It drop to 50kb

Yes it is because of antd, not the style from this library. So it cannot be done from the lib.

maybe, https://blog.bitsrc.io/how-to-install-a-single-component-from-any-ui-library-8d0519544d7b


Search shortcut on main page (meta + /) doesn't work anymore

Using the keyboard shortcut suggested in the searchbox doesn't work anymore.

This might be because the same key combo is supposed to work for symbol search in package page (which works correctly):


ESLint always returning parsing error

When trying to run ESLint I always end up with this error

Verifying setup for ESLint…
Verified ESLint setup
Will use ESLint to check the files with extensions js
Linting files in /home/runner/work/aftershokz/aftershokz/scripts/ with ESLint…
Error: Error parsing ESLint JSON output: Unexpected end of JSON input.

Running ESLint locally with the cli works so I'm not sure what's causing this error.
Here's my yml file
name: Lint

on: pull_request

jobs:
  run-linters:
    name: Run linters
    runs-on: ubuntu-latest

    steps:
      - name: Check out Git repository
        uses: actions/checkout@v2

      - name: Set up Node.js
        uses: actions/setup-node@v1
        with:
          node-version: 12

      - name: Install Node.js dependencies
        run: npm install

      - name: Run linters
        uses: samuelmeuli/lint-action@v1
        with:
          github_token: ${{ secrets.github_token }}
          eslint: true
          eslint_dir: scripts/
          stylelint: true
          stylelint_dir: styles/

What output are you getting when running cd scripts && eslint --no-color --format json "."?

This is the output I get, I couldn't paste it since it was too large
output.txt

I think I figured it out, my .eslintignore is in the parent directory so the linter was going over minified vendor files which seem to be causing the issue. Removing eslint_dir: scripts/ fixed it in this case


Remove managed ocs leftovers

These are the location where there is mention of managedocs

config/crd
config/rbac
config/samples

This issue was fixed by PR


Replace easy_install with pip install

There are many open issues with Setuptools that stem from the differences between easy_install and pip install. Now that #250 is complete and there exists a mechanism by which pip install can largely satisfy the use cases currently filled by easy_install. Perhaps at some point I will link to or enumerate the issues that would be addressed by such a replacement but not right now.
In the replacement, I imagine the following:
Invocations of easy_install whether from a command-line entry point or an implicit invocation as part of a setup.py install will instead shell out to pip to perform the equivalent operation. Some options may become unavailable while others will be translated to their pip equivalent.
One big open question is whether installs should still be done as eggs (using the deprecated pip install --egg) or if it should rely on pip's use of wheel. I'm leaning toward the latter.
There are probably other open issues that I haven't yet considered.

probably worth just deprecating easy_install and adding a header from the docs that points to pip

It's not so simple. Easy-install is used by tests requires and setup requires, which has not replacement. Perhaps it makes sense to only replace those functions.

If I'm not mistaken, running pip install while pip is already running can cause problems. The only way that this is going to work is if pip understands setup_requires.

See pypa/pip#2745.

Tests requires should be deprecated in favour of tox

If I'm not mistaken, running pip install while pip is already running can cause problems. The only way that this is going to work is if pip understands setup_requires or setuptools does some sort of runtime hack/monkeypatch on pip.

I don't think these issues are relevant. In the case where pip is invoking setup.py to build a package from source and that package has setup_requires dependencies, those dependencies would still be "installed", but to a temporary location (perhaps as eggs to ./.eggs as they are now), meaning they would still be isolated from the target environment via subprocesses and temporary directories, so I would expect not to encounter those issues.

FWIW longer term PEP 518 is the solution to setup_requires.

maybe for now, just a docs header saying, "hey unless you know what you're doing: don't use easy_install, you probably want pip instead"

https://github.com/pypa/pip/issues/1820#issuecomment-151329572 gives a reference on why recursive pip calls are not a good solution. I think this should be handled by setuptools, because setup_requires is a setuptools feature, which pip is currently unaware of.
PEP 518 is only a specification of the actual build time dependencies, but not an attempt to solve the installation problem:
This PEP covers step #2. It is fully expected that a future PEP will cover step #3, including how to have the build system dynamically specify more dependencies that the build system requires to perform its job. The purpose of this PEP though, is to specify the minimal set of requirements for the build system to simply begin execution.

So this is still unsolved, isn't it?
People tend not to use setup_requires, because easy_install does not use wheel and people have to compile eg. hard to build projects like scipy. So one should definitely prefer a wheel supporting mechanism.

How about remove easy_install command but keep python -m easy_install for setup_requires for a while?

@jaraco what do you think about autogenerating pyproject.toml for source distributions?

Sorry for the late follow-up.

@jaraco what do you think about autogenerating pyproject.toml for source distributions?

I think I'd rather users be incentivized to provide the declaration in the preferred location. I'd support a warning, though.

This issue continues to be an issue if only because not every invocation of setup.py goes through a PEP 518 runner. For example, tox invokes setup.py --name to get the name of a package - that triggers setup_requires/easy_install. Package managers run setup.py --description or setup.py --version to get metadata. Other distutils commands still exist and are certainly in use in the wild. Perhaps we can eliminate the reliance on setup.py invocations entirely, though that prospect seems daunting.

Sorry for the late follow-up.

@jaraco what do you think about autogenerating pyproject.toml for source distributions?

I think I'd rather users be incentivized to provide the declaration in the preferred location. I'd support a warning, though.

Auto-generating pyproject.toml seems like a reasonable workaround. There are plenty of reasons someone may not want to include TOML files in their source code, not the least of which would be in protest of the arrogant attitude which led to the creation of the language in the first place as well as the misogynist jerk who designed it. I personally want no TOML files in software I'm developing, as I wouldn't want others to think I endorse its creator or am accepting of his behavior.

the arrogant attitude which led to the creation of the language in the first place as well as the misogynist jerk who designed it

I gather there are some (other than TPR) who were offended by my empassioned rejection of his legacy, and want to make it clear that while I stand steadfastly by the above criticisms, I did not mean them as a slight against anyone who has attempted to salvage his work on TOML or who might themselves rely on it.

@fungi This is not the right forum for a referendum on the question of whether or not to use TOML files, nor to discuss the character of its creator. Please keep it on topic.

@fungi This is not the right forum for a referendum on the question of whether or not to use TOML files, nor to discuss the character of its creator. Please keep it on topic.

Yes, sorry, I was attempting to apologize for verging off topic. My point was that auto-generating pyproject.toml should not be indicated as an anti-pattern. The choice to use TOML was a politically-charged one, and there are legitimate reasons, even non-technical reasons, why projects might choose to not carry TOML files and instead seek alternative mechanisms to comply with the PEP.

See #1830.

Do we know what the next steps here are?

At this point it seems safe to me that setuptools should be emitting a UserWarning or SetuptoolsDeprecationWarning when easy_install is used or setup.py install is used except in the usages required by pip. And then in short order (weeks to months) remove that functionality.

If so, setuptools can start emitting a warning on usage of easy_install or setup.py install unconditionally IMO.
pip hides setup.py's output if that command succeeds and shows the output (including stderr IIRC) when it fails. Plus, this would also fit in well with pip's plan of dropping the setup.py install codepath as well (pypa/pip#8102).

Is https://github.com/pypa/setuptools/issues/2828 a dependency for this?

It would be nice to give some guidance for what to do instead of setup.py install (which shows warnings pointing here). According to https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html we should do pip install, but I'm not installing a package from PyPI, I am installing a local package. Trying pip install ./package-folder just gives an error:
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.

    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.

    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.

    See /usr/share/doc/python3.11/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

This is an incredibly frustrating deprecation since it provides no clear guidance on what to do instead.  Two different deprecation messages appear, that link to 2 different URLs, and none of them tells me what to do...

@RalfJung your operating system does not allow installations into ~/.local/lib the message is misleading because it "applies both to system-wide installs (sudo pip install) as well as user home directory installs (pip install --user)"

Oh I see, I guess I am double-deprecated then -- with installing into ~/.local in the first place and with using setup.py install. That's unfortunate.

@RalfJung also check the note in the error message you pasted it explains several workarounds, such as using a virtual environment directly or with pipx or bypassing the restriction by forcing the install. I'd recommend you use a virtual environment

I was hoping not having to learn 2 new tools and change my entire workflow... oh well. pipx is nice though. :)
Anyway I guess the high-level point is that people that only occasionally use Python and avoided virtual environments so far since having to set them up and switch into them is annoying overhead, the guidance provided by these deprecation messages is just not sufficient.

Message should say replace with
pip install -e .

Please correct if wrong.

Message should say replace with
pip install -e .

Please correct if wrong.

-e option is for development mode (it will create path to the repository instead of creating new folder in site-packages directory). To install it is normal mode just use pip install .


Integration of LazyMatrix

[ ] Add LazyMatrix to forward mode
[ ] Add LazyMatrix to reverse mode

Backlog

[ ] problematic CMake Release configuration (at the moment it works with cmake ../ and cmake -DCMAKE_BUILD_TYPE=Debug ../ but not with  cmake -DCMAKE_BUILD_TYPE=Release ../


Add specific vision model, do not use multimodal models

Issue
Sometime, I did not work with multimodal models like as gpt-4o, claude-sonet-3.5 .. but I would like to use a specific vision model to read an image file or read an image from clipbroad. So I expect a feature to add specific vision model to do that. The command shall like: aider --model gpt-4o --weak-model llama 3.1-450b  --vision-model vLMs ; then if user input an image, aider will call vision model to generate text; if user do not config --vision-model, aider will try to use main model for an image with multi-modal required.
Version and model info
Aider V.0.55.0

have you found any implementation in this case? i want to feed the image of the web page that i am developing to this aider and let it know how the current state of the code looks like and based on which it can develop it further and make corrections and improvements . let me know if you find anything in this direction.


Mark package as abanonded

Guzzle 5 is officially dead now. Should we abandon this package and point to the guzzle 6 bridge as the replacement?
(Abandon = mark as abandoned on both github (in the repo settings) and packagist.)

:+1:
do you agree @sagikazarmark and @Nyholm ?

No. There is no benefit and there is no massive maintainance burden here.

Guzzle 5 is officially dead now, is true, but many CMS use Guzzle 5 because is difficult to upgrade without break backward compatibility. So this package is useful.

The package is still abandoned, either way. Composer just doesn't warn people.

doing it now as part of https://github.com/php-http/documentation/pull/310/


Responsiveness audit + fixes

Not sure if this should be in it's own issue or not, but the spec could use a little bit of love on mobile.

Menu button styling
Ensuring the menu is actually hidden on phones, it looks like it's half visible on some mobile screens

Yeah, that should be a new issue since the spec is in an iframe.


Add pgrep sservice in run-tests

Currently in run-tests.sh, we only grep for eservice and pservice a the start of the test. We should grep for sservice as well before starting new services.

Duplicate of #182


tests: Add VirtualMachine output on failure

/cc @0xFelix
What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

NONE

/lgtm

/lgtm


Make alias assignments invariant

This prevents unsafe operations since mutable covariant arrays can no longer be assigned to their contravariant.
This refactored isRelatedTo and similar functions to accept an options object which made feeding the current node, errorNode, down to recursiveTypeRelatedTo before computing variances to override the default variance for type parameters which is now invariant to be covariant for array literals only.
It also updates getRelationKey to also take an errorNode which is used to differentiate the relation key when the source is an array literal.  This allows isTypeRelatedTo to return different results depending on whether an array literal or a non-literal array with the same type are the source.
TODO:

[x] make function calls work so that passing literals is covariant while passing variables (to mutable params) is invariant
[ ] place this new behavior behind a flag
[ ] run the existing test suite and make sure nothing's broken
[ ] add new tests for the new behavior

Test Plan:

yarn gulp build-min
node built/local/tsc.js --skipLibCheck --strict --noEmit foo.ts
see the following (expected) errors:

foo.ts:9:7 - error TS2322: Type 'Cat[]' is not assignable to type 'Animal[]'.

9 const badAnimals: Animal[] = cats; // error
        ~~~~~~~~~~

foo.ts:9:30 - error TS2322: Type 'Cat[]' is not assignable to type 'Animal[]'.
  Property 'purr' is missing in type 'Animal' but required in type 'Cat'.

9 const badAnimals: Animal[] = cats; // error
                               ~~~~

  foo.ts:3:28
    3 class Cat extends Animal { purr() {} }
                                 ~~~~
    'purr' is declared here.

foo.ts:13:5 - error TS2345: Argument of type 'Cat[]' is not assignable to parameter of type 'Animal[]'.

13 foo(cats); // error
       ~~~~

Found 3 errors.

foo.ts:
class Animal {}
class Dog extends Animal { bark() {} }
class Cat extends Animal { purr() {} }

const cats: Cat[] = [new Cat];
const goodAnimals: Animal[] = [new Cat, new Dog];
const readonlyAnimals: ReadonlyArray<Animal> = cats;
const badAnimals: Animal[] = cats; // error

const foo = (animals: Animal[]) => {};
foo(goodAnimals);
foo([new Cat]);
foo(cats); // error

const bar = (animals: ReadonlyArray<Animal>) => {};
bar(goodAnimals);
bar([new Cat]);
bar(cats);

badAnimals.push(new Dog);
// Unsound and bad
// This should never be possible, because `badAnimals = cats` will be flagged as an error.
cats.forEach(cat => cat.purr());

There's still an issue with object's and their properties always being covariant which makes aliasing assignments of objects unsafe:
type NumberNode = { id: number };
const node0: NumberNode = { id: 5 };
type MixedNode = { id: number | string };
const node1: MixedNode = { id: 5 };
const node2: MixedNode = node0; // This should fail, but doesn't
node2.id = "five"; // whoops, now node0 has a string for its "id"
const node3: Readonly<MixedNode> = node0; // This okay b/c node3 is readonly

const node2: MixedNode = node0;

now fails as expected, but other types of object properties need to be updated to behave the same way, i.e. invariant when assigning a variable but covariant when assigning an object literal or covariant when being assigned to Readonly type.

Closing in preference of #4.


Update ARCore Xamarin component to 1.1 or preferably 1.2

Current Xamarin bindings are for ARCore 1.0

This appears to have been addressed by PR #398 which will be reviewed and merged shortly


ci: Incorrect parsing the longer variable broke pushes.

Please note that while we are transitioning from travis-ci to AWS CodeBuld, some tests are run on each platform. Non-AWS contributors will temporarily be unable to see CodeBuild results. We apologize for the inconvenience.
Description of changes:
github.repository is actually github_user+github_repository, alter the GHA function that checks the repo name (and yes, GHA's could really use test cases).
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

:exclamation: No coverage uploaded for pull request head (gha_force_breakage@8a0e978). Click here to learn what that means.
The diff coverage is n/a.


Dispatch turbo:frame-render when Frame connects

Closes https://github.com/hotwired/turbo-rails/issues/379
Currently, a <turbo-frame> element only dispatches events when its
contents are fetched over HTTP. The turbo:frame-render and
turbo:frame-load events are dispatched sequentially and immediately
following one another. The turbo:frame-render detail exposes a
reference to the FetchResponse, while the turbo:frame-load event has
no details.
Consumer applications might expect a <turbo-frame> to dispatch a
turbo:frame-render event immediately whenever a <turbo-frame> is
connected to the document (similar to the way that turbo:render is
dispatched prior to turbo:load, even on restoration Visits).
For the sake of consistency and distinguishing between two events that
are more or less equivalent and temporally interchangeable, this commit
proposes that a <turbo-frame> should dispatch a turbo:frame-render
whenever its contents change, including its initial render.
As a complementary change to that behavior, the turbo:frame-load
events will be dispatched with detail.fetchResponse as a reference to
the FetchResponse.
Ideally, the turbo:frame-render would not expose the
detail.fetchResponse reference. However, removing it would be a
breaking change. To that end, this commit dispatches a detail that
prints a console warning (encouraging a migration to turbo:frame-load)
whenever a turbo:frame-render listener reads the
detail.fetchResponse property. Future major releases can remove the
property and warning.

The commit message mentions a deprecation warning for turbo:frame-render listeners that attempt to access the detail.fetchResponse property.
As an alternative to that, we could remove that property entirely, and encourage applications upgrading from 7.1.0 to 7.2.0 to do a global search and replace, swapping turbo:frame-render with turbo:frame-load. Prior to this commit, there is absolutely zero difference in timing between the two, and after this commit, the turbo:frame-load event details will be interchangeable for pre-7.2.0 shaped turbo:frame-render events.

@seanpdoyle do you plan to continue with this? It would be awesome to see it merged


freight maintenance add button activated prior to detail added

Need to suppress main add method until stop locations have been added.   Currenty the record can be created without stop locations causing print functionality to fail for missing detail.

added with patch release 6.7.28


fix: turn off automatic escaping in session request templates

fixes #7993

If recipients honor the text/plain mime-type these are sent with, I don't think we have any concern (and we do use autoescape=off for most other templates that generate text for email.
But I think we should, separately, turn up the level of sanitization of user input for names - they can be blobs, but the blobs don't need to contain html, for example. I've been toying with comparing the various names stored in the datatracker (and names we derive from them with bleach.clean(name,[],strip=True) hand haven't found a case where we wouldn't want to have rejected the name if those came up different.


Starting of project (Urgent)

Can anyone guide me regarding running the project?
I'm able to understand the file dependencies and relation but from where to start in running  /face_detection/faces_detection.py this would work or something else?

The face_detection/faces_detection is a sort of side project I had done to find the best face detector.
You just need to run any of the functionality which you want. The face_detector.py and face_landmarks.py act as helper functions.

How can I run the functionality? Like running .py files doesn't work I tried as they are linked can you please guide?
Thank you


Change prefix URI syntax in the query from . to :

Currently, the query uses a prefix.property syntax. This is not very useful since the response format is JSON-LD and keys use the prefix:property syntax.

This change will probably affect the lexer here:
https://github.com/dan-f/twinql/blob/master/src/lang/lexer.js#L172-L184
and the token regexes here:
https://github.com/dan-f/twinql/blob/master/src/lang/tokens.js#L35-L39


Issue fixes + Turbulence corrected power curve

Fixing issues #35 #34
Adds more plots using turbulence correction.
creation of turbulence corrected power curve and reporting of it if exists
addition of scatter matric to measure the energy in the scatter.

thanks to @lcameron05


feat: provide the options to set arbitrary json encoder and decoder options

Issue #, if available:
No Issue created at this time, but I'm happy to create one if that would help review.
Description of changes:
Before this change, the lambda API supported setting some of the json encoder options (SetEscapeHTML(...) & SetIndent(...)). I needed the ability to set the UseNumber() option on the decoder and I considered setting it in the same way (by creating a one-off option), but instead I ended up creating two new options that allow setting arbitrary fields on the encoder and decoder.
I think this is a better option because it's future-proof (if new options are added to the json library, this library won't also need to be changed to make this option available) and more backward compatible.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Codecov Report

Merging #513 (f755a86) into main (771b391) will decrease coverage by 0.27%.
The diff coverage is 72.00%.

@@            Coverage Diff             @@
##             main     #513      +/-   ##
==========================================
- Coverage   72.63%   72.37%   -0.27%
==========================================
  Files          26       26
  Lines        1407     1419      +12
==========================================
+ Hits         1022     1027       +5
- Misses        314      320       +6
- Partials       71       72       +1

Files Changed
Coverage Δ

lambda/handler.go
92.22% <72.00%> (-3.36%)
:arrow_down:

@bmoffatt, I would be curious to hear your feedback on this change. Thank you.


Crashing when using prefix mode

I am experincing crashes when trying to compress files containing a common prefix.
For each file in the attached zip, the latest version of ZX0 (ver.1.4 at the moment) crashes when trying to invoke it with the command line
zx0.exe +256 example1.bin
or
zx0.exe +256 example2.bin
crash256.zip

Hi introspec,
There was a bug in compression with prefix. My apologies!
It's fixed now. Thank you for reporting it!


[Crash] Any UICollectionLayoutSectionOrthogonalScrollingBehavior except .none cause crash on iOS 11

Any UICollectionLayoutSectionOrthogonalScrollingBehavior except .none cause crash on iOS 11 if a cell need to be reloaded (i.e. title of cell was changed).
"*** -[__NSDictionaryM setObject:forKey:]: key cannot be nil"

This looks like the same crash as https://github.com/ra1028/DiffableDataSources/issues/28.

I'm suspicious of IBPCollectionViewCompositionalLayout not returning attributes for orthogonally-scrolling section items from -layoutAttributesForElementsInRect: and -layoutAttributesForItemAtIndexPath:. The iOS 11 crash backtrace looks like this:
#0	0x0000000104fbd001 in objc_exception_throw ()
#1	0x00000001059680bc in _CFThrowFormattedException ()
#2	0x000000010583b72a in -[__NSDictionaryM setObject:forKey:] ()
#3	0x0000000106f87f07 in -[UICollectionView _setVisibleView:forLayoutAttributes:] ()
#4	0x0000000106fa0dcb in __71-[UICollectionView _updateWithItems:tentativelyForReordering:animator:]_block_invoke.1997 ()
#5	0x000000010657c537 in +[UIView(UIViewAnimationWithBlocks) _setupAnimationWithDuration:delay:view:options:factory:animations:start:animationStateGenerator:completion:] ()
#6	0x000000010657ca0f in +[UIView(UIViewAnimationWithBlocks) animateWithDuration:delay:options:animations:completion:] ()
#7	0x0000000106fa00f5 in -[UICollectionView _updateWithItems:tentativelyForReordering:animator:] ()
#8	0x0000000106f99cc3 in -[UICollectionView _endItemAnimationsWithInvalidationContext:tentativelyForReordering:animator:] ()
#9	0x0000000106f95554 in -[UICollectionView _updateRowsAtIndexPaths:updateAction:updates:] ()

and seems to happen when the collection view gets nil for an attributes's index path, then tries to use that nil index path as a key in a dictionary.
For what it's worth, UIKit's layout does return attributes instances for orthogonally-scrolling sections.


[WIP] Use JSON to specify application command

Instead of coding application invocation in class members, load a template from the benchmark JSON using Jinja2. This PR fixes issue (#4).

[X] Add Jinja to requirements and test feasibility
[ ] Refactor runner function to sit in instance_runner instead of the inherited class
[ ] Refactor runner to load parameters from JSON instead of class members

@cl3to What do you think of this design? I still do not know how to make the mpi case generic;


pdf embed

Is there any way to embed a pdf in typemill?

Hello @HJB1972. As i can judge that, for now, no, but shortcodes actually implemented a way of easily doing that.
If your technical knowledge is good enough, you can develop one yourself: https://typemill.net/plugin-developers/shortcodes
Otherwise im setting this on my todo-list.

you can use the ebookproducts plugin as a call to action for a pdf document, though, that would be a compromised solution in the meantime

Hi thanks for your response. I do not have the technical knowledge to develop a shortcode for this! If you manage to develop one, please let me know as it would be of great use to me. Thanks again.


travis.yml

Is there an example of how travis.yml should look like for this library?

A .travis.yml file ships with the project.


fix(DIST-1068): Force fullscreen when force touch enabled

:tada: This PR is included in version @typeform/embed-v1.17.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


fix error in parsing viariable names starting with "and" or "or"

Coverage remained the same at ?% when pulling a568917db9fd378ea5f092f9754504ed1bd517e9 on hyperkang:fix_or_and into 0b0859c141ac232ca25f62c1dfcff5fd9fc03927 on Axiacore:master.


Add a Grafana Dashboard for nginx prometheus exporter

          Should we pair this with a [dashboard](https://grafana.com/grafana/dashboards/?search=nginx)?

Originally posted by @sed-i in https://github.com/canonical/mimir-coordinator-k8s-operator/pull/47#discussion_r1552593003

This dashboards should be used by all the HA solutions!


'Structure_backend_MVC_finish'

hello @sharmavikas4
I finished My work Now your Backend is in MVC Architecture
If you have any Issues and Modifications let me Know
Also, I checked the application, and everything went Well !!

@PAVAN-VANAM while reviewing your pr i come close to an error. Please resolve this before it creating a pr. It comes when we edit post and upload a new image.
node:internal/process/promises:289
            triggerUncaughtException(err, true /* fromPromise */);
            ^

[UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason "#<Object>".] {
  code: 'ERR_UNHANDLED_REJECTION'
}

Node.js v20.10.0
[nodemon] app crashed - waiting for file changes before starting...

Same error occur while deleting the post
node:internal/process/promises:289
            triggerUncaughtException(err, true /* fromPromise */);
            ^

[UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason "#<Object>".] {
  code: 'ERR_UNHANDLED_REJECTION'
}

Node.js v20.10.0
[nodemon] app crashed - waiting for file changes before starting...

ok @sharmavikas4  I will try to solve this

Actually @sharmavikas4  I found this issue in the previous default project
and while deleting things also getting error
I Will solve and pr you
Thank you


fix(card): push another fix to trigger a 1.x release

for some weird reason the automated release didn't trigger with the previous commit

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


feat(CLDX-79): add sign-mac-binaries step to sign-binaries task

This commit:

adds sign-mac-binaries step to the sign-binaries task.
adds logic for push-unsigned-using-oras step to actually push the binaries

/ok-to-test

This stuff is pretty far out of my domain. Is there anyone from your team who knows it better who can also review it?

Mac-signing is currently done in ETERA (Ansible) in the traditional pipeline. This is mostly porting the logic here in bash and tekton. @swickersh would a good one to nominate to help review here :)
cc - @deekej

There is no e2e test for this yet. Merging


!! Command

!! text Would prefix the users last message plus add whatever on the end. This is useful for if you forget to write something for a command. Make sure the previous command is trimmed first.
!lol counters ekko
!! mid

I'll try to put some work into this one, if no one else has yet

That'd be awesome, thanks!

Any thoughts on how to get the command to activate on "!!". Right now I have it working with "!append", but I can't figure out how to get it to trigger from "!!".

The prefix gets checked for here. You can had something to check for a "double prefix" that'll activate your command.


Feature/issue 54 allow managers to get digest without fac code

@miltontony ready for review

@codiebeulaine please do a git pull origin develop. I think some of those changes have been merged in develop already.

:+1: once travis


adjust SnackPlayer height and presentation

Why
Fixes #3751
Refs #3753
How
This is the continuation of work started in the mentioned PR. Besides the height change, I have also disabled the device frames to spare some vertical space.
The preview presentation in that mode is a bit off (device is not centered in the preview pane), but I will address that on the Snack side soon.
Preview

Huge thanks for this. It completely fell off my radar.


host-ninja 1.10.2 build failed ubuntu 20

Build files have been written to: /...../build/host-ninja-1.10.2

host-ninja 1.10.2 Building
........
make[2]: *** No targets specified and no makefile found.  Stop.

All,
I'm trying to build ninja with buildroot using ubuntu 20, my build end with no target ....
Is this s a know issue in Ninja build ? could be the gcc version
which version  i have to use with ubuntu 20 ?
Thanks

after running CMake there should be a message à la "build files have been written to /directory/foo`. Check that the make command gets executed inside the directory where the Makefile was generated by CMake.
Not a Ninja issue btw, looks more like an issue with buildroot / CMake / Ubuntu / etc..

Thanks jhasse for your reply indeed i have gotten the same error by running the make file into the ninja folder


Fix unhandled rejections, improve fetch flow

This is fix for #796 and probably other possible issues. Main reason for unhandled rejections was iterator BufferedAsyncIterator so when we disconnect  consumer there is high chance in slow systems that we may still be waiting for fetch
https://github.com/tulios/kafkajs/blob/fce9c09a00e0d7969f7a79adff73257a557d2af3/src/consumer/runner.js#L269
which returns array of requests (Promises), in the current implementation we will check
https://github.com/tulios/kafkajs/blob/fce9c09a00e0d7969f7a79adff73257a557d2af3/src/consumer/runner.js#L320
and basically exit fetch loop but requests on that iterator are not yet rejected or processed and we are not awaiting them any where which causes unhandledRejection.
so the nearest place where we are awaiting for requests is at
https://github.com/tulios/kafkajs/blob/fce9c09a00e0d7969f7a79adff73257a557d2af3/src/consumer/runner.js#L375
we have basically sync code between await fetch and this promise.all so there is no need for this.running check:
https://github.com/tulios/kafkajs/blob/fce9c09a00e0d7969f7a79adff73257a557d2af3/src/consumer/runner.js#L320
Also i have moved
 const batches = await result.value
 expectedNumberOfExecutions += batches.length

up as we want to always await result to make sure we catch all errors properly
the same applies for
await Promise.all(enqueuedTasks.map(fn => fn()))

Another slightly unrelated fix for request queue, we want to destroy loop even if we have no inflight requests:
if (!this.isConnected()) {
          this.destroy()
 }

With above implementation we basically allow every single request to be processed as expected after disconnect and cleanly exit the loop before committing and heartbeat
  ...
   await Promise.all(enqueuedTasks.map(fn => fn()))
    requestsCompleted = true

    if (expectedNumberOfExecutions === numberOfExecutions) {
      unlock()
    }

    const error = await lock
    if (error) {
      throw error
    }

    if (!this.running) {
      return
    }

    await this.autoCommitOffsets()
    await this.consumerGroup.heartbeat({ interval: this.heartbeatInterval })

Also we allow batches to be processed as expected but don't pass any data to the user and don't heartbeat, basically will loop through fetched batches and exit cleanly:
enqueuedTasks.push(async () => {
        const batches = await result.value
        expectedNumberOfExecutions += batches.length

        batches.map(batch =>
          concurrently(async () => {
            try {
              if (!this.running) {
                return
              }

              if (batch.isEmpty()) {
                return
              }

              await onBatch(batch)
              await this.consumerGroup.heartbeat({ interval: this.heartbeatInterval })
            } catch (e) {
              unlockWithError(e)
            } finally {
              numberOfExecutions++
              if (requestsCompleted && numberOfExecutions === expectedNumberOfExecutions) {
                unlock()
              }
            }
          }).catch(unlockWithError)
        )
      })

Have been running this branch for some time, could not trigger those unhandled rejections any more. Unfortunately summed on
https://issues.apache.org/jira/browse/KAFKA-9478 in kafka 2.4 (sever side). Should have nothing to do with kafkajs though.

There must be something I don't fully understand about this diff. So the original problem is that we call consumerGroup.fetch(), and while awaiting that, someone calls consumer.disconnect() which sets this.running = false. What happens after this, with the current implementation, is that we resolve runner.fetch without awaiting the promises returned from consumerGroup.fetch(), which could cause an unhandled promise rejection.
So far I'm with you.
Now the intention of your solution, if I'm reading it right, is to await all the requests before resolving runner.fetch, and just short-circuiting the actual processing of those responses. That way, if there is an error with the ongoing requests, that error would bubble up and be handled.
The downside of this is that we now have to wait for all the promises returned from consumerGroup.fetch() before we're able to stop. I'm not actually sure that we care about errors from consumerGroup.fetch() when we are stopping the runner. For example, if we got a REBALANCE_IN_PROGRESS error, the runner would attempt to handle this by re-joining the group, which there's no point to doing if we're in the process of stopping. So instead of delaying the stopping, maybe we can just catch and ignore any errors that happen if we're no longer running?
while (true) {
  const result = iterator.next()
  if (result.done) {
    break
  }

  if (!this.running) {
    // Note that we don't actually await this to resolve, we just ignore the error
    result.value.catch(error => {
      this.logger.debug('Ignoring error in fetch request while stopping runner', {
        error: error.message || error,
        stack: error.stack
      })
    })
    return
  }

I'm not 100% sure about this. It might be cleaner to actually await all the ongoing requests, but it just seems pointless since we don't actually care about the results.

@Nevon good point i have updated PR so if consumer is not running it will ignore errors on every request. Small change in your code as we have to loop though every single result. So if consumer is not running enqueuedTasks will be empty and we will just fall though the rest of the the function and will we exit at   https://github.com/tulios/kafkajs/pull/797/files#diff-0706eb2c0060b2da86157638eb477a86R388


Fix bugs (MS2.0/Ascend/Inference)

Validator not exsit in ms2.0
Tensor data type inconsist

Optimize codes:

change ms context mode to static variable

LGTM


dbus.exceptions.DBusException   No such property 'Characteristics'

I get a Exception when running the example script. Same here!
me@mypc:~/Adafruit_Python_BluefruitLE-master/examples$ python3 uart_service.py
Using adapter: Yoga
Disconnecting any connected UART devices...
Searching for UART device...
Connecting to device...
Discovering services...
Traceback (most recent call last):
  File "uart_service.py", line 85, in <module>
    ble.run_mainloop_with(main)
  File "/home/pascal/.local/lib/python3.6/site-packages/Adafruit_BluefruitLE/bluez_dbus/provider.py", line 105, in run_mainloop_with
    raise_(self._exception[1], None, self._exception[2])
  File "/home/pascal/.local/lib/python3.6/site-packages/future/utils/__init__.py", line 416, in raise_
    raise exc
  File "/home/pascal/.local/lib/python3.6/site-packages/Adafruit_BluefruitLE/bluez_dbus/provider.py", line 120, in _user_thread_main
    self._return_code = target()
  File "uart_service.py", line 59, in main
    uart = UART(device)
  File "/home/pascal/.local/lib/python3.6/site-packages/Adafruit_BluefruitLE/services/uart.py", line 50, in __init__
    self._tx = self._uart.find_characteristic(TX_CHAR_UUID)
  File "/home/pascal/.local/lib/python3.6/site-packages/Adafruit_BluefruitLE/interfaces/gatt.py", line 48, in find_characteristic
    for char in self.list_characteristics():
  File "/home/pascal/.local/lib/python3.6/site-packages/Adafruit_BluefruitLE/bluez_dbus/gatt.py", line 56, in list_characteristics
    paths = self._props.Get(_SERVICE_INTERFACE, 'Characteristics')
  File "/usr/lib/python3/dist-packages/dbus/proxies.py", line 145, in __call__
    **keywords)
  File "/usr/lib/python3/dist-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.InvalidArgs: No such property 'Characteristics'

I installed this module with pip3 install --user Adafruit-BluefruitLE
Any help? Maybe just updating the pypi package

Here is the fix:
https://github.com/donatieng/Adafruit_Python_BluefruitLE/commit/af46b05cbcfd82110c8bbd08ed3d483de128fed1

This library has been deprecated. Please update to use this new library:
https://github.com/adafruit/Adafruit_Blinka_bleio
If you continue to have this issue, please open a new issue in that repo.


Fix camera binding issues

This fixes two issues with camera handling introduced in #39.

The default configuration disables all camera updates. While this may be required for certain edge use cases, this should not be the default.
The default behavior of MLNMapView within a UIViewController creates an "edit war" if you are trying to set content insets, which all navigation use cases will need to do. This was pretty hard to foresee, but the docs on the contentInsets property do mention the behavior.

Would love a review from @Patrick-Kladek and/or @hactar on this, since it does make a few changes you probably should know about.


document commit.history() accepts Revwalk.SORT argument

Hi, from this example https://github.com/nodegit/nodegit/blob/master/examples/walk-history-for-file.js#L13 I realized that commit.history takes an argument Git.Revwalk.SORT (ENUM  see http://www.nodegit.org/api/revwalk/#SORT)
This is not documented here http://www.nodegit.org/api/commit/#history
Is it welcomed if such documentation improvements are suggested here?

hi,  it seems as this undocumented feature is no longer working. Should we close this issue or is it a bug?


[docs-only] 1.13.0 Release Notes

Draft. Feedback pls.

the next web release version will be 4.3.0

@pmaier1 could you please check if there is something new in https://github.com/owncloud/ocis/pull/2617


GH-40078: [C++] Import/Export ArrowDeviceArrayStream

Rationale for this change
The original PRs for adding support for importing and exporting the new C Device interface (#36488 / #36489) only added support for the Arrays themselves, not for the stream structure. We should support both.

What changes are included in this PR?
Adding parallel functions for Import/Export of streams that accept ArrowDeviceArrayStream.

Are these changes tested?
Test writing in progress, wanted to get this up for review while I write tests.

Are there any user-facing changes?
No, only new functions have been added.

GitHub Issue: #40078

Needs some tests?

Hey everyone, I've updated this with tests now. Please give it another pass when you have a chance, thanks!

Just to check my understanding of this change: sync events are now propagated from device arrays to record batches (in addition to all the buffers in all the arrays in the record batch); however, one would have to specifically specify a sync event explicitly if constructing a record batch from (say) some arrays (or else it will return nullptr, meaning "the batch is synchronized" or "I'm handling synchronization myself").

Yep. That's the current situational understanding.

It seems as though you are punting on sync events for the Array for now...is walking all the buffers and checking for the same underlying non-null sync event pointer prohibitively expensive?

I didn't want to require the same underlying non-null sync event pointer in all children as that would make it difficult to manipulate / update / construct record batches from arrays gathered from multiple places. But we don't currently have any sort of API for defining how to merge / join events into a single event and I didn't want to try to tackle that in this PR.
essentially, it's not prohibitively expensive, we just don't want that to be a requirement

When exported over the C Data interface it is a requirement, no? (Or at least, a better option than exporting a device array that is potentially yet synchronized with a nullptr sync event?)

Yea, the sync event is at the top level of the ArrowDeviceArray struct to represent that the data for a single ArrowArray should always be tied to a single sync event, or have no synchronization required. Thus any joining / handling of multiple sync events needs to be managed by the producer so it can generate a single sync event if synchronization is needed.
As such, this code will use that sync event when constructing imported record batches so that the event can be propagated. But once you are manually constructing record batches from existing Arrow Arrays, all bets are off, which is why we just take a sync event as an argument when constructing the record batches.

Anyone have any further comments here?

@paleolimbot Damn i was hoping that the rebase I just did would solve those segfaults :frowning: Guess i'm gonna have to dig in and figure out what the hell is segfaulting there

I was able to narrow the failure down to attempting to read a parquet file containing extension types with registered extensions causing the segfault. i.e.: either this line https://github.com/zeroshade/arrow/blob/main/python/pyarrow/tests/test_extension_type.py#L1051 or the line after it calling validate.
This is almost certainly not being caused by this change, which shouldn't touch anything around that code, and @paleolimbot said he was able to replicate the failure with his own debug python build that is separate from this change. So I don't think it's related or relevant to this PR.
@jorisvandenbossche @AlenkaF would either of you be able to take a look and see if you can figure out why there's a segfault happening at that line in the test and if I should file a separate issue to track that?

The Python failures seems definitely related. Fetching this PR in my local dev setup, I see the same segfault running the python tests. GDB backtrace:
$ gdb --args python -m pytest python/pyarrow/tests/test_extension_type.py::test_parquet_extension_with_nested_storage
...
Thread 1 "python" received signal SIGSEGV, Segmentation fault.
arrow::ArrayData::device_type (this=0x0) at /home/joris/scipy/repos/arrow/cpp/src/arrow/array/data.cc:234
234	  for (const auto& buf : buffers) {
(gdb) bt
#0  arrow::ArrayData::device_type (this=0x0) at /home/joris/scipy/repos/arrow/cpp/src/arrow/array/data.cc:234
#1  0x00007ffff4a51b60 in arrow::ArrayData::device_type (this=0x555556d4e6c0)
    at /home/joris/conda/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/12.3.0/bits/shared_ptr_base.h:1665
#2  0x00007ffff4879610 in arrow::Array::device_type (this=<optimized out>)
    at /home/joris/scipy/repos/arrow/cpp/src/arrow/array/array_base.h:227
#3  arrow::SimpleRecordBatch::SimpleRecordBatch (this=0x555556ea58b0, schema=..., num_rows=<optimized out>, columns=..., sync_event=...)
    at /home/joris/scipy/repos/arrow/cpp/src/arrow/record_batch.cc:69
#4  0x00007ffff4890323 in std::_Construct<arrow::SimpleRecordBatch, std::shared_ptr<arrow::Schema>, long&, std::vector<std::shared_ptr<arrow::Array>, std::allocator<std::shared_ptr<arrow::Array> > >, std::shared_ptr<arrow::Device::SyncEvent> > (__p=<optimized out>)
    at /home/joris/conda/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/12.3.0/bits/stl_construct.h:119
#5  std::allocator_traits<std::allocator<void> >::construct<arrow::SimpleRecordBatch, std::shared_ptr<arrow::Schema>, long&, std::vector<std::shared_ptr<arrow::Array>, std::allocator<std::shared_ptr<arrow::Array> > >, std::shared_ptr<arrow::Device::SyncEvent> > (
    __p=<optimized out>) at /home/joris/conda/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/12.3.0/bits/alloc_traits.h:635
#6  std::_Sp_counted_ptr_inplace<arrow::SimpleRecordBatch, std::allocator<void>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::shared_ptr<arrow::Schema>, long&, std::vector<std::shared_ptr<arrow::Array>, std::allocator<std::shared_ptr<arrow::Array> > >, std::shared_ptr<arrow::Device::SyncEvent> > (__a=..., this=<optimized out>)
    at /home/joris/conda/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/12.3.0/bits/shared_ptr_base.h:604
#7  std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<arrow::SimpleRecordBatch, std::allocator<void>, std::shared_ptr<arrow::Schema>, long&, std::vector<std::shared_ptr<arrow::Array>, std::allocator<std::shared_ptr<arrow::Array> > >, std::shared_ptr<arrow::Device::SyncEvent> > (__a=..., __p=<optimized out>, this=<optimized out>)
    at /home/joris/conda/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/12.3.0/bits/shared_ptr_base.h:971
#8  std::__shared_ptr<arrow::SimpleRecordBatch, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<void>, std::shared_ptr<arrow::Schema>, long&, std::vector<std::shared_ptr<arrow::Array>, std::allocator<std::shared_ptr<arrow::Array> > >, std::shared_ptr<arrow::Device::SyncEvent> > (__tag=..., this=<optimized out>)
    at /home/joris/conda/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/12.3.0/bits/shared_ptr_base.h:1712
#9  std::shared_ptr<arrow::SimpleRecordBatch>::shared_ptr<std::allocator<void>, std::shared_ptr<arrow::Schema>, long&, std::vector<std::shared_ptr<arrow::Array>, std::allocator<std::shared_ptr<arrow::Array> > >, std::shared_ptr<arrow::Device::SyncEvent> > (__tag=...,
    this=<optimized out>) at /home/joris/conda/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/12.3.0/bits/shared_ptr.h:464
#10 std::make_shared<arrow::SimpleRecordBatch, std::shared_ptr<arrow::Schema>, long&, std::vector<std::shared_ptr<arrow::Array>, std::allocator<std::shared_ptr<arrow::Array> > >, std::shared_ptr<arrow::Device::SyncEvent> > ()
    at /home/joris/conda/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/12.3.0/bits/shared_ptr.h:1010
#11 arrow::RecordBatch::Make (schema=..., num_rows=num_rows@entry=0, columns=..., sync_event=...)
    at /home/joris/scipy/repos/arrow/cpp/src/arrow/record_batch.cc:217
#12 0x00007fff48dcb9ae in arrow::dataset::(anonymous namespace)::FragmentToBatches (fragment=..., options=...)
    at /home/joris/scipy/repos/arrow/cpp/src/arrow/dataset/scanner.cc:316
#13 0x00007fff48dcc364 in operator() (fragment=..., __closure=<optimized out>)
    at /home/joris/scipy/repos/arrow/cpp/src/arrow/dataset/scanner.cc:333

But not directly understanding why it is crashing on this. The problem seems to be that the ArrayData itself is a nullptr.

From what I can see in GDB, this is happening with an empty schema (no fields), but then I don't understand why the size check in recordbatch.cc is not preventing this:
    if (boxed_columns_.size() > 0) {
      device_type_ = boxed_columns_[0]->device_type();
    }

(but also no idea why we are ending up creating a record batch with an empty schema for this test)

@jorisvandenbossche i solved the crashing python test. Essentially I inadvertently exposed a bug in MakeArrayOfNull when handling nested extension types :smile:

@jorisvandenbossche @pitrou any further comments?


Using the wrong type with a python progress function causes SIGSEGV

Version and Platform (required):

Binary Ninja Version: 4.1.5071-dev
OS: macOS (also windows)
OS Version: 14.0
CPU Architecture: M1

Bug Description:
When using the python api, you can cause a SIGSEGV if you return the wrong thing from a progress function. Even though you may have returned the wrong type, that is still not an excuse to crash.
Steps To Reproduce:

Find or create a bndb
Run the following: load("path/to/file.bndb", progress_func=lambda a,b:None)
Observe crash

Expected Behavior:
I expected an exception or error message, but not a SEGV/crash.
Additional Information:
Reported by an Enterprise customer. Crash log: binaryninja-2024-04-09-222541.ips.zip

This may not be the fault of the progress function. Indeed the crashing code is actually an error message:
if (!view)
{
	LogError("Unable to open existing database with filename %s", view->GetFile()->GetFilename().c_str());
	return nullptr;
}

Fixed in 4.1.5113+


Displayed graphs not mapped reliably to URL

The writing of open query graphs to the URL seems to randomly drop some of them. This mostly happens when 6+ graphs are open and I copy&paste the URL to a new tab.
All graphs boxes are shown but some are randomly missing the query string. Not sure whether we are hitting URL length limits or the JS code is just wrong.

That sounds like the URL length limit to me.

Can't reproduce, URLs with 7 shorter expressions work fine. @fabxc do you have an example.

I'm presuming this is the url length, which we can't do much about.