text:
geolocator_apple > 2.2.2 does not work in background ?

💬 Questions and Help
Hello,
I have a flutter application using geolocator 9.0.2 on iOS.
My application is designed to run continuously for a long time in order to report user position, although the application is in background (smartphone in sleep mode or application not on the front).
Using geolocator_apple 2.2.2,everything is OK, but using 2.2.5 or 2.2.6, I get an error message :
LOCATION UPDATE FAILURE:Error reason: (null)Error description: The operation couldn’t be completed. (kCLErrorDomain error 1.)
[VERBOSE-2:dart_vm_initializer.cc(41)] Unhandled Exception: The operation couldn’t be completed. (kCLErrorDomain error 1.)
#0      GeolocatorApple.getPositionStream.<anonymous closure> (package:geolocator_apple/src/geolocator_apple.dart:188:9)
#1      Stream.handleError.<anonymous closure> (dart:async/stream.dart:929:16)
#2      _HandleErrorStream._handleError (dart:async/stream_pipe.dart:269:17)
#3      _ForwardingStreamSubscription._handleError (dart:async/stream_pipe.dart:157:13)
#4      _RootZone.runBinaryGuarded (dart:async/zone.dart:1605:10)
#5      _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:358:15)
#6      _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:376:7)
#7      _BufferingStreamSubscription._addError (dart:async/stream_impl.dart:280:7)

And my application is no longer collecting the location.
I've checked all permissions are active (Location: While Using the App, and Background : location capability is set).
Any idea why I keep having this issue ?
Thank you for your help
Regards,
Christophe.

+1

Does it stop collecting the location data immediately or after some time, and can you inform me about how long it takes before you run into this issue?
It would be helpful if you could provide the output of 'flutter doctor -v' and clear, step-by-step instructions to reproduce the issue in the comment section. This will assist us in better understanding and addressing the problem.

Hi @ChristopheLyonnaz,
Thank you for providing the additional details, we will start looking into this. If you do manage to create a real testing application that would still help out a lot.

Hi @ChristopheLyonnaz,
Can you please confirm the following: Do you have allowBackgroundLocationUpdates set to true in your locationSettings? e.g. like below (see example app):
geolocatorApple.getPositionStream(
locationSettings: AppleSettings(
accuracy: LocationAccuracy.best,
distanceFilter: 10,
activityType: ActivityType.other,
// Only set showBackgroundLocationIndicator and
// allowBackgroundLocationUpdates to true if our app will be started up
// in the background.
showBackgroundLocationIndicator: false,
allowBackgroundLocationUpdates: true,
));
And:
/// For this setting to work Info.plist should contain the following keys:
/// - UIBackgroundModes and the value should contain "location"
/// - NSLocationAlwaysUsageDescription
Waiting for your reply,
Tim

Hi @TimHoogstrate ,
Great news, this option totally fixes my issue. I am so sorry not being able to see it earlier.
Thank you for your valuable help.
Christophe.

Hi Chantha,
This issue was raised quite a long time ago.
Since this, I slighty changed my code. The following simplified code is what I implemented on iOS :
  void requestLocationUpdates() async {
    LocationSettings locationSettings;

    serviceEnabled = await Geolocator.isLocationServiceEnabled();
    permission = await Geolocator.checkPermission();

      locationSettings = AppleSettings(
        accuracy: LocationAccuracy.high,
        activityType: ActivityType.airborne,
        distanceFilter: 50,
        pauseLocationUpdatesAutomatically: true,
        // Only set to true if our app will be started up in the background.
        showBackgroundLocationIndicator: true,
        allowBackgroundLocationUpdates: true,
      );

    positionStream = Geolocator.getPositionStream(locationSettings: locationSettings) // 2 mètres entre 2 positions
        .listen((Position position) {
      _position = position;
}

Hi Chantha,
This issue was raised quite a long time ago. Since this, I slighty changed my code. The following simplified code is what I implemented on iOS :
  void requestLocationUpdates() async {
    LocationSettings locationSettings;

    serviceEnabled = await Geolocator.isLocationServiceEnabled();
    permission = await Geolocator.checkPermission();

      locationSettings = AppleSettings(
        accuracy: LocationAccuracy.high,
        activityType: ActivityType.airborne,
        distanceFilter: 50,
        pauseLocationUpdatesAutomatically: true,
        // Only set to true if our app will be started up in the background.
        showBackgroundLocationIndicator: true,
        allowBackgroundLocationUpdates: true,
      );

    positionStream = Geolocator.getPositionStream(locationSettings: locationSettings) // 2 mètres entre 2 positions
        .listen((Position position) {
      _position = position;
}

Yes Thanks brother. I already apply this but it doesn't work . I still got error :
Unhandled Exception: The operation couldn’t be completed. (kCLErrorDomain error 1.)
#0      GeolocatorApple.getPositionStream. (package:geolocator_apple/src/geolocator_apple.dart:188:9)
#1      Stream.handleError. (dart:async/stream.dart:923:16)
#2      _HandleErrorStream._handleError (dart:async/stream_pipe.dart:269:17)
#3      _ForwardingStreamSubscription._handleError (dart:async/stream_pipe.dart:157:13)
#4      _RootZone.runBinaryGuarded (dart:async/zone.dart:1606:10)
#5      _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:358:15)
#6      _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:376:7)
#7      _BufferingStreamSubscription._addError (dart:async/stream_impl.dart:280:7)
#8      _ForwardingStreamSubscription._addError (dart:async/stream_pipe.dart:128:11)
#9      _ForwardingStream._handleError (dart:async/stream_pipe.dart:95:10)
#10     _ForwardingStreamSubscription._handleError (dart:async/stream_pipe.dart:157:13)
#11     _RootZone.runBinaryGuarded (dart:async/zone.dart:1606:10)
#12     _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:358:15)
#13     _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:376:7)
#14     _BufferingStreamSubscription._addError (dart:async/stream_impl.dart:280:7)
#15     _SyncBroadcastStreamController._sendError. (dart:async/broadcast_stream_controller.dart:392:20)
#16     _BroadcastStreamController._forEachListener (dart:async/broadcast_stream_controller.dart:322:15)
#17     _SyncBroadcastStreamController._sendError (dart:async/broadcast_stream_controller.dart:391:5)
#18     _AsBroadcastStreamController.addError (dart:async/broadcast_stream_controller.dart:486:5)
#19     _RootZone.runBinaryGuarded (dart:async/zone.dart:1606:10)
#20     _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:358:15)
#21     _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:376:7)
#22     _DelayedError.perform (dart:async/stream_impl.dart:526:14)
#23     _PendingEvents.handleNext (dart:async/stream_impl.dart:620:11)
#24     _PendingEvents.schedule. (dart:async/stream_impl.dart:591:7)
#25     _microtaskLoop (dart:async/schedule_microtask.dart:40:21)
#26     _startMicrotaskLoop (dart:async/schedule_microtask.dart:49:5)

Just to be sure, now I've migrated to the following content in pubspec.yaml:
  sdk: '>=3.1.0 <4.0.0' # Dart SDK release
  geolocator: ^10.0.1, which leads to geolocator_apple-2.3.2.

At the time I fixed workaround the issue, I had:
  sdk: ">=2.7.0 <3.0.0"

  geolocator: ^9.0.2

dependency_overrides:
  geolocator_apple: 2.2.2

And obviously, I have the following in my Info.plist:
	<key>NSLocationAlwaysUsageDescription</key>
	<string>This app needs access to location xxxx.</string>
	<key>NSLocationWhenInUseUsageDescription</key>
	<string>This app needs access to location xxxx.</string>
	<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
	<string>This app needs access to location xxxx.</string>

authors: Chantha123 ChristopheLyonnaz Dev-Paccore TimHoogstrate mvanbeusekom

repo: Baseflow/flutter-geolocator


text:
defaults: Revert "defaults: Revert to old comparison"

The change in #1918 (reverting #1913 / #188) breaks case-insensitive domain completion. Example: defaults read com.apple.term<TAB> should complete to defaults read com.apple.Terminal, but it does not due to the change from =~ to ==. This was the reason for the initial PR.

Sorry for disappearing for a while! I don't actually know much about Bash's completion system, and this wasn't my patch.
Please note that Bash's [[ syntax treats unquoted second comparators as patterns, so changing =~ to == doesn't change anything. I wouldn't have submitted this PR to undo the change if I understood that two weeks ago!
In any case, I'm not the best person to work on completions stuff. Feel free to close this or fix it whatever you think is best.

I'm closing this PR as I accidentalied #1928... 😆

source: gharchive/pull-request

repo: Bash-it/bash-it

license: MIT

license_type: permissive

license_source: github-api


text:
feat: adds custom bin validation

Description

feat: adds custom bin validation

Testing required outside of automated testing?

[ ] Not Applicable

Screenshots (if appropriate):

[ ] Not Applicable

Rollback / Rollforward Procedure

[ ] Roll Forward
[ ] Roll Back

Reviewer Checklist

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

:tada: This PR is included in version 1.121.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

authors: bt-platform-eng kevinperaza


text:
🛑 ASO is down

In 62587e3, ASO (https://www.asomuenchen.de) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ASO is back up in 8e40928.

source: gharchive/issue

repo: Bassmann/uptime


text:
Notification clear button being overlapped

You can see there are two “X” (Clear) buttons and the notification centre shows up too and looks off

duplicated #22

authors: Baw-Appie Hermezlink

repo: Baw-Appie/Axon


text:
Axon Bug

there is a bug where the text "notification center" is displayed with the x button, which is all being overlapped by the app name.

Fixed.


text:
Security Stuff

Add security features by using django package called "django-secure".

REMAINS!!

Done.

repo: Bazzzzzinga/Election-Portal

license: mit

license_source: bigquery


text:
Remote DataSource, disable and visible item with angularjs

I have this datasource and I want to bind to the menu as I do?
$scope.menu2 = [
{
title: 'UPF',
id: 'menuID',
items: [
{ name: 'RA', id: 'itemRA' ,visible:false},
{ name: 'RB', id: 'itemRB',disabled:true},
]
}
];
you can disable or visible an item?

To hide a <li>, you can add the class "mm-hidden" to it. That'll hide it and ignores it when using the searchfield.


text:
The search results are not highlighted in green.

When we try to search by transaction ID, Kernel ID, address, contact or comment in the search field, the search results are not highlighted in green.
To Reproduce
Steps to reproduce:

Click on any completed transaction.
Copy transaction ID, Kernel ID, address or comment of this transaction.
Paste the copied info into the the search field.

Actual
The search result is not highlighted in green.
Expected
The search result is green highlighted.

@kazaryan-t please, recheck

Checked on Master build 6.1.11364.4298.

authors: gingervik kazaryan-t

repo: BeamMW/beam-ui


text:
Getting current road

Hey !
Is there a way to get the Road object corresponding to the road a car is on ?? (it's in order to get the bouding box of this road and then make the car follow the path "manually" with a script that control the steering)

Hi!
Did you already take a look at the road_definition.py provided in the examples?

Ok, so as it turns out there is also a get_roads function in the BeamNGpy class you could use. The function returns a list of tuples that make up the road network. Each tuple consists of three points that make up the left-most point middle point and right-most point of the road.
I'm going to write a jupyter notebook to better visualize how the road network can be used and to give an example on how to use the return values of get_roads.

You can find the example in the dev branch. Hope that helps.

authors: ASionville pascale-commits

repo: BeamNG/BeamNGpy


text:
Problem with references

When I updated to version 6.0.143, there is a problem with references
Version 6.0.129 works fine

There is a problem missing the net6.0 Target Assemblies within the 6.0.143 package. I updated to 6.0.155, that should work.


text:
New front-page layout

Resolves #60
Resolves #49

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.johann-su seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

authors: CLAassistant mskg

repo: BeeToBeeOrg/project-c


text:
Introduce a coding standard tool

It'd be nice to have some automated coding standard tool to help us maintain a consistent codebase and get rid of ancient array() syntax. What coding standard should Behat follow? I'm open to suggestions.

IMHO you should use both codesniffer and PHP-CS-Fixer for different reasons.
Codesniffer

More configurable than php-cs-fixer
It's not only about "style" but more into introducing a coding standard as you say on the title of your issue. For instance you can ban functions using codesniffer.. like die but it will not autofix them..
The maintainer of the package chooses not to auto-fix rules that he considers risky (at least that the feeling I get).. for instance if there is a rule that you are required to add declare strict types he will not introduce a fix regarding that. But there is slevomat/coding standard that does a lot of them

PHP-CS-fixer

is all about fixing.. rules are related with fixing stuff. I don't think it reports things that can not be fixed.
not so handly config (or at least that's what I know) if I want to disable a specific rule per file.. or enable a specific rule per file.

nice coding standards:

https://github.com/doctrine/coding-standard
https://github.com/slevomat/coding-standard

and also this for php-cs-fixer
https://mlocati.github.io/php-cs-fixer-configurator/#version:2.16

Meh, not sure CS-Fixer is needed. You can always run CBF that is installed with Code-Sniffer.

Well.. in a way I agree with @Taluu  .. many things will be covered by codesniffer if you install slevomat

On my projects I use this analyzer PHP Code Sniffer - it helps to cover many cases + there is an automatic fix of errors.
Ready to help with integration and take on library style improvements.

In Sylius, we use ECS with https://github.com/SyliusLabs/CodingStandard, which has only the autofixable coding standard rules included. Most of the issues that should be handled manually are discovered by PHPStan and Psalm.

I have a worry around keeping version history understandable - how can we apply a tool sensibly around areas that are changing?

I would say start with PSR-12 and work up from there if the need arises (maybe Doctrine CS)?

I have a worry around keeping version history understandable - how can we apply a tool sensibly around areas that are changing?

Not sure I understand when commits are atomic. Is the worry that merging PRs would be difficult if a analyzer/fix had been run over the code?

@bitwombat just that git blame gets confusing

@bitwombat just that git blame gets confusing

Hi! I found that this problem can be addressed with the git --ignore-revs-file (>= git 2.23)
Some short blog entries with more details:
https://akrabat.com/ignoring-revisions-with-git-blame/
https://moxio.com/blog/ignoring-bulk-change-commits-with-git-blame/

@acoulton @carlos-granados
I suggest adding the PHPCS (with a standard decided here) to CI with ||true to have it running in one PR. Then add a second PR with all the fixes.
If you could please confirm this process, I can work on both PRs.

@AlexSkrypnyk it'd be great if you want to work on this, but please could you wait a bit? There are still some of the open PRs quite close to merging and I'd rather not create conflicts with them all, so better to get caught up with the backlog first before we start reformatting things.
There was also a PR #1433 I closed last week that had started work on this, which might be useful to look at / steal from.
And it might be worth looking at https://github.com/easy-coding-standard/easy-coding-standard (if you're not aware of that) to apply some fixes automatically to save manual work.

@acoulton
Let me ask in another way:

What coding standard would be used? Can a decision be made here?
How would the maintainers like to see this work done: single PR with tooling and fixes or 2 PRs?
What are the preferred tools?

I can work on things once I have these inputs.
Thanks

I second the option of using Easy Coding Standard, a really nice tool that makes applying a coding standard a breeze. Created by the same guy that brought us Rector.
Regarding the coding standard I would at least aim for PSR-12, that one seems to be the best known currently. If we are moving towards a PHP8 only version of the code we might consider going to PER-CS 2.0
I am not sure of the value of splitting this work in 2 PRs, so I'll probably go for one
We also discussed that we would need to add a .git-blame-ignore-revs file and include this kind of commits so that git blame does not get affected by this kind of refactoring

Happy with PER-CS 2.0.
For process I'd like to see a single PR with:

A commit that introduces the tooling and rules
One or more commits fixing the code (see below)
Only when the PR is reviewed and ready to merge, a blame-ignore file

If possible I'd like rules applied in stages (unless the diff is very small). Anything that's only to do with whitespace can be all in one commit. Anything more significant (changing array syntax, heredocs, any typehints etc) would ideally be separate commits for each rule/group of similar rules. This will make it easier to review for unexpected changes.

My own vote would be to use php-cs-fixer as tool (using its check command in the CI).
My reasoning (inherited from Fabien's reasoning for Symfony, to be fair) is that if a coding standard rule cannot be automatically fixed, enforcing a rule for it will annoy contributors having to respect it, while the readability benefit might not be huge.
php-code-sniffer supports auto-fixing for some of their rules, but far from all of them. On the other hand, php-cs-fixer cannot add non-fixable rules by design (as what gets implemented is a fixer)

@carlos-granados
I was waiting for a final decision on the tooling and the process.
I can implement the tooling as per @acoulton comment.
The process, though, will require more time that I do not have: I cannot do separate separate commits per change. I can do one PR with both tooling and code fixes. Then it can be taken apart to be separate commits, if needed. Would that work?

@AlexSkrypnyk if you can create a PR with the tools then I can work on adding the changes in separate committs. It's easier to apply the rules one by one or in groups and then create committs than to separate all the changes in individual committs

authors: AlexSkrypnyk Taluu Yozhef acoulton andrei-petre bitwombat carlos-granados ciaranmcnulty gmponos pamil rpkamp stof

repo: Behat/Behat


text:
helper rules

In my agda proof, https://gitlab.com/JasonHuZS/practice/-/blob/master/MLTT/Statics/Full.agda, there are rules that are marked as remove after presupposition. Proves these rules as lemmas. They can be added to the hint database.

I think this is going to be a low hanging fruit for you. Remember how we had two sets of rules? That was stupid. We should always work with the full set of rules and then add simplified rules as lemmas.

That would make pattern matching harder, wouldn't it? @HuStmpHrrr

How does that impact pattern matching? The full rules need to be written down in any case and they contain strictly more premises than the concise rules, so they can only induce stronger IH.

Ah, right. I was somewhat mixed Agda and Coq approaches... Ok, this is quite an easy one. BTW, let me put the domain and PER first to make the target clearer.

authors: Ailrun HuStmpHrrr

repo: Beluga-lang/McLTT


text:
Update sbt to 1.3.11

Updates org.scala-sbt:sbt from 1.3.10 to 1.3.11.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-sbt", artifactId = "sbt" } ]

labels: library-update, semver-patch

Codecov Report

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

@@           Coverage Diff           @@
##           master     #132   +/-   ##
=======================================
  Coverage   95.45%   95.45%
=======================================
  Files           5        5
  Lines          22       22
=======================================
  Hits           21       21
  Misses          1        1

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 403f9e2...6e1c529. Read the comment docs.

authors: codecov-commenter scala-steward

repo: BenFradet/spark-kafka-writer


text:
학습해주신 모델의 상업적 이용이 가능한가요?

안녕하세요, 좋은 모델 공개 감사합니다.
https://github.com/tatsu-lab/stanford_alpaca/blob/main/DATA_LICENSE 에는 데이터의 상업적 이용이 불가능하다고 나와있는데, 이 라이센스 문서는 스탠포드 알파카의 라이센스 문서 를 가져오신듯합니다. 그래서 이 모델도 상업적 이용이 불가능한가보다.. 하고 생각하고 있는데, 허깅페이스에 올려주신 모델은 mit 라이센스로 표기되어있더라고요.
공개주신 모델은 상업적이용이 가능한가요?

https://huggingface.co/beomi/KoAlpaca-13B-LoRA 요 모델의 경우 LLAMA 13B모델을 파인튜닝했다고 나와있는 것을 보니, mit라이센스로 공개하면 안될듯하네요.
아마 https://huggingface.co/decapoda-research/llama-13b-hf 이 모델을 파인튜닝한듯한데, 이 모델은 상업적이용 불가능한 라이센스를 가집니다.

모델가중치가 아니었군요.
빠른 답변 감사합니다 (_ _ )
짱이에요..! :)

repo: Beomi/KoAlpaca


text:
자동 언어감지 기능은 없나요?

지금 보니깐 자동 언어 감지는 없는 것 같던데, 추가좀 해주시면 감사하겠습니다.

translator.translate() 코드에서 src를 auto로 하니깐 언어 감지가 됩니다.

repo: Beomi/pypapago


text:
Inclusão de bandeiras

Olá!
Descobri este repositório a partir do Comunidade Cafeína.
Vi na Issues que tinha esse atividade para fazer. Não sei se estou me comunicando da forma correta (sem responder a issue). Mas, aí está a minha contribuição para o projeto.
Espero ter ajudado!

@Paulojesus85 Aprovado!

repo: BiancaPereira/ninja-em-css


text:
chore: #16 eslint 추가

Summary
eslint.js 파일 추가되었습니다.

진행하려 했지만, 오히려 macos 에서 실행이 되지 않는관계로 다시 revert 하겠습니다.

repo: Big-Dipper-Code/Big-Dipper


text:
Improve README

At least there should be library description

Done

repo: BigAngryPanda/libvktypes


text:
4.1.9 版本设置range后日期起始异常

`        val current = Calendar.getInstance()
    var mBirth = tv_birth.text.toString()
    mBirth="1996-02-03"
    LogUtils.w(mBirth)
    if (mBirth.isBlank()) {
        current[Calendar.YEAR] -= 24
    } else {
        current[Calendar.YEAR] = mBirth.substring(0, 4).toInt()
        current[Calendar.MONTH] = mBirth.substring(5, 7).toInt() - 1
        current[Calendar.DAY_OF_MONTH] = mBirth.substring(8, 10).toInt()
        LogUtils.w(mBirth.substring(0, 4).toInt(),mBirth.substring(5, 7).toInt() - 1, mBirth.substring(8, 10).toInt())
    }
    val start = Calendar.getInstance()
    start[Calendar.YEAR] -= 60
    val end = Calendar.getInstance()
    end[Calendar.YEAR] -= 18
    val listener =
            OnTimeSelectListener { date, _ ->
                LogUtils.w(date)
                mBirth = SimpleDateFormat("yyyy-MM-dd", Locale.CHINA).format(date)
                tv_birth.text = mBirth
            }
    val picker = TimePickerBuilder(this, listener)
            .setType(booleanArrayOf(true, true, true, false, false, false))
            .setDate(current)
            .setRangDate(start, end)
            .setCancelText(getString(R.string.cancel))
            .setSubmitText(getString(R.string.determine))
            .setTitleSize(14)
            .setContentTextSize(14)
            .setSubCalSize(14)
            .setLineSpacingMultiplier(2.75f)
            .build()
    picker.show()`

这样一段代码，在4.1.9版本上，日期会从16号开始（准确说是今天的日期），1-15丢失（改成2月以外的月份没有这问题，或者去掉range限制，也是正常的），4.1.8版本没有这问题

我也遇到了这个问题，选择任意年份的二月份，例如2020-2-1日，设置选中日期后打开展示数据为2020-2-3日且列表没有1日和2日，所有日期都往后推了两天然后实际选择回调结果是前两天的日期

我也遇到了，setRangDate的同时setDate是二月的话，滚轮的天数会出现空白。。。

setRangDate 在4.1.9版本，可以设置开始范围是日期指定是1号 可以规避以上问题；
如 val startDate = Calendar.getInstance()                             startDate.set(Calendar.DATE, 1)

setRangDate 在4.1.9版本，可以设置开始范围是日期指定是1号 可以规避以上问题； 如 val startDate = Calendar.getInstance() startDate.set(Calendar.DATE, 1)

有效果，感谢

repo: Bigkoo/Android-PickerView


text:
Module not found: Error: Cannot resolve module 'fs'

I am using the babel generator boilerplate for a library I am building. I added this library and imported it into my project. Now when I run gulp build I get the following error. Any assistance would be highly appreciated.
stream.js:74
      throw er; // Unhandled stream error in pipe.
      ^
Error: ./~/json-schema-ref-parser/lib/resolvers/file.js
Module not found: Error: Cannot resolve module 'fs' in /home/raphael/work/projects/packages/json-schema-form-generator/node_modules/json-schema-ref-parser/lib/resolvers
resolve module fs in /home/raphael/work/projects/packages/json-schema-form-generator/node_modules/json-schema-ref-parser/lib/resolvers
  looking for modules in /home/raphael/work/projects/packages/json-schema-form-generator/node_modules
    /home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs doesn't exist (module as directory)
    resolve 'file' fs in /home/raphael/work/projects/packages/json-schema-form-generator/node_modules
      resolve file
        /home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs doesn't exist
        /home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs.webpack.js doesn't exist
        /home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs.web.js doesn't exist
        /home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs.js doesn't exist
        /home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs.json doesn't exist
[/home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs]
[/home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs]
[/home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs.webpack.js]
[/home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs.web.js]
[/home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs.js]
[/home/raphael/work/projects/packages/json-schema-form-generator/node_modules/fs.json]
 @ ./~/json-schema-ref-parser/lib/resolvers/file.js 2:14-27

It looks like you're using webpack, and something in your config is causing it to load the Node.js version of JSON Schema Ref Parser rather than the browser version.

I had the same problem. Solved it by adding the alias in webpack so it knows where to find the correct asset.
resolve : {         alias: {             'json-schema-parser': __dirname + '/node_modules/json-schema-ref-parser/dist/ref-parser.js'         }     }
and you use it as you would normally but use the alias key
var parser = require('json-schema-parser')

Closing this issue, since it's a WebPack config issue.  Thanks to @mari0juric for posting a solution, which will help others who are facing this problem. 👍

FYI: the latest package on npm doesn’t have the browser field for some reason: https://unpkg.com/json-schema-ref-parser@3.1.2/package.json. This breaks my webpack build.
Probably bumping the version and re-releasing the package could fix the problem? Or is the field removed during the publish routine (npm run release)?

Ah, yeah, it’s not published because the latest release was before #30 was merged.
Is there a chance that these changes will be published?

I just released v3.2.0, which includes the browser field in the package.json file

Thank you!

authors: BigstickCarpet iamakulov mari0juric rowino

repo: BigstickCarpet/json-schema-ref-parser


text:
es6 里面如何使用 worker

es6 里面如何使用 worker ，我用传统的 worker 发现 后面的 不进行webpack 打包，报错了。 如果放到深点的文件夹 worker 在用import 指向的地址文件夹地址少了几层。  在 webworkify npm 那个例子又跑不通。
请问有什么资料或者插件可以了解的么

看说明 webworkify 是专门针对 browserify 做的，不支持 webpack


text:
relative links starting with ~/ are shows as broken

Hi Bill, thanks for the absolutely brill extension. Loving it.
I use VS2019 for the dev and the file is in index.cshtml in my dev folder.
I use VS Code for awesome extensions like this one for checking broken links etc. But the links that are perfectly valid in Visual Studio for asp.net are shown as broken in vs code using this extension.
so when I hover over the "~/assets/vendor/bootstrap-select/css/bootstrap-select.min.css"
it doesnt go to application root dir to check for it and marks as broken.
obv, I could change ~/ links to just start with / but that would not be advisable in case there are more than one applications in the same root dir.
could you please advise.

Well, the extension is intended for an HTML page that will go on a web server, not an app server.  So it doesn't know any syntax that would work only locally or only in an app server.  A web server wouldn't be able to handle an URL that starts with "~".

Many thanks for your work around, this helped a lot.

authors: BillDietrich ronakinuk

repo: BillDietrich/linkcheckerhtml


text:
BinaryKits.Zpl.Viewer status?

Hi! I was wondering what state BinaryKits.Zpl.Viewer is in; I saw it was being worked on pretty recently.
Does it render ZPL files now?
How much of the ZPL language does it support?
How much work is outstanding?
Do you need help?
Thanks!
Sam

Thank you. It does render a lot of things without using labelary.
A draft plan is here: https://github.com/BinaryKits/BinaryKits.Zpl/blob/2f08fe55dbf4afe25bcf011937a77b5f700511a1/src/BinaryKits.Zpl.Viewer/README.md

@samuelneff Hi
We have only recently started the project but the rendering is already working very well as you can see in the image below.

Does it render ZPL files now?
Yes

How much of the ZPL language does it support?
This is a difficult question because each command has many configuration parameters. I think the barcodes and the correct text rendering are the biggest issues at the moment.

How much work is outstanding?
The current version is running. What exactly do you want to use the project for and what do you need?

Do you need help?
Yes we are very glad about support, for example this is an open issue (https://stackoverflow.com/questions/68626710/skisharp-colormatrix-invert-black-white)

Or an other issue ^XA^FO50,50^GB100,100,120,B,1^FS^XZ
According to labelary it should look like this

Our renderer generates this result

It would also be interesting to see the result on a real printer, best an original Zebra

@samuelneff Do you have any feedback for us?

@tinohager Thank you for the detailed response. I can definitely help by rendering ZPL to a printer and sending you a picture of what was printed (not immediately, I had to loan out my printer to another dev, but I'll be getting another soon).
From the specifics of your example, it sounds like you're pretty far along if you're up to nitpicking about little things like rounded corners. That sounds great!
We're currently evaluating whether or not an offline license for labelary is feasible. If not, then this project is our next best option. We don't really need a viewer though; we need to convert to png. The concept is very similar so we assume we'll be able to adapt your viewer code to do the same thing, maybe with a little refactoring you would be ok with (i.e., moving logic to a dll for reuse, separate from the gui viewing code).
Best,
Sam

@samuelneff In fact all the rendering is already in BinaryKits.Zpl.Viewer as a dll.
https://www.nuget.org/packages/BinaryKits.Zpl.Viewer/
You may refer to the package and use like:
https://github.com/BinaryKits/BinaryKits.Zpl/blob/35e4c134e9f5c530331e6647ccfd6d3696308c69/src/BinaryKits.Zpl.Viewer.WebApi/Controllers/ViewerController.cs#L33
Out of curiosity, may I ask why the online labelary was not chosen? Client sensitive data or the warehouse do not have public internet access? Thanks!

@samuelneff We have also a package for the viewer logic available via nuget

@samuelneff i close this issue. If you have any further questions you are welcome to open an issue again.

authors: YipingRuan samuelneff tinohager


text:
🛑 BioStudies is down

In 314fcee, BioStudies (https://www.ebi.ac.uk/biostudies) was down:

HTTP code: 0
Response time: 0 ms

Resolved: BioStudies is back up in c042978 after 17 hours, 5 minutes.

repo: BioImage-Archive/upptime


text:
🛑 BioStudies is down

In 233b881, BioStudies (https://www.ebi.ac.uk/biostudies) was down:

HTTP code: 0
Response time: 0 ms

Resolved: BioStudies is back up in dcbfb44 after 27 minutes.


text:
FT.SEARCH

https://docs.aws.amazon.com/memorydb/latest/devguide/vector-search-commands-ft.search.html
depends on #422

Superseded by https://github.com/valkey-io/valkey-glide/pull/2385

repo: Bit-Quill/valkey-glide


text:
Lendingbot not starting

Hello, when i run the main python script i get:
Welcome to Poloniex Lending Bot
Lent:
Cant type anything after: Lent:
Why is this? Because there are no coins available or something?

you need to have coins for the bot to lend them
you should start the bot with "sudo systemctl start lendingbot.service" ( if you followed the instruction "Automatically Run on Startup" ) http://poloniexlendingbot.readthedocs.io/en/latest/installation.html#installing-on-a-computer

If no coins are lent, then there will be no message.

@robsske Are you good? Can this be closed?

No reply in too long. Closing.

authors: Evanito laxdog robsske tamaskan utdrmac

repo: BitBotFactory/poloniexlendingbot


text:
NPM error: Could not resolve peer dependency slate.

I'm need to install slate-yjs but keep getting this error

Any help would be greatly appreciated.

I'm need to install slate-yjs but keep getting this error

Any help would be greatly appreciated.

Same here

try adding --force after your npm install slate-yjs

try adding --force after your npm install slate-yjs

Thanks @RBSUS , this helped

authors: RBSUS ibaggu

repo: BitPhinix/slate-yjs


text:
Vercel preview seems to be failing

looking into it... my free trial expired but paying didn't fix it

I think this might be related to this:
https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull-request-events-for-forked-repositories
My test PR worked fine (not from a fork, just a branch)

the logic for this makes a lot of sense just need to figure out the particulars of the mitigations:
if any rando could make a pr and get the actions to run with our env secrets (the vercel deploy secrets), they could make a pr that exfiltrates those secrets
so somehow we need to set it up so we manually "approve" a workflow when we get a PR from a fork: https://docs.github.com/en/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks

Closed by #224

authors: benthecarman futurepaul

repo: BitcoinDevShop/mutiny-web-poc


text:
73

closes #73

PR-Codex overview
This PR focuses on adding new conversation routes and making changes to existing ones.
Detailed summary:

Added Unsubscribe conversation route.
Updated Token conversation route to use Mono<SendMessage>.
Updated Start conversation route to use Mono<SendMessage>.
Updated Registry conversation route to use Mono<SendMessage>.
Added cactoos and easy-random-core dependencies.
Added license header to package-info.java file in io.blamer.bot.text package.

The following files were skipped due to too many changes: src/main/java/io/blamer/bot/conversation/routes/Registry.java, src/main/java/io/blamer/bot/text/TokenOf.java, src/test/java/io/blamer/bot/text/TokenOfTest.java, src/main/java/io/blamer/bot/agents/tg/TgBot.java, src/test/java/io/blamer/bot/conversation/routes/RegistryTest.java, src/test/java/extension/UpdateWithTokenExtension.java, src/test/java/io/blamer/bot/agents/tg/TgBotTest.java

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

@l3r8yJ thank you for your Pull Request. I'll assign someone to review it soon.
If this PR solves a todo from the code, please don't forget to remove it.

@h1alexbel please review this Pull Request. Deadline (when it should be merged or closed) is 2023-09-12T20:18:59.270984.
You should check if the requirements have been implemented (partially or in full), if there are unit tests covering the changes and if the CI build passes. Feel free to reject the PR or ask for changes if it's too big or not clear enough.
Estimation here is 30 minutes, that's how much you will be paid. You will be paid even if this PR gets rejected.

@h1alexbel take a look, please

@h1alexbel Don't forget to close this ticket before the deadline (2023-09-12T20:18:59). You are past the first half of the allowed period.

@l3r8yJ commented on mixing flows

@l3r8yJ here is new version #88

@h1alexbel thank you for resolving this ticket. I've just added it to your active invoice. You can always check all your invoices and more on the Contributor Dashboard.

repo: Blamer-io/bot


text:
Which language are we going to use?

In order to solve #4 we need to select a programing language and framework.
The choice criteria is:

Multiplatform (iOS, android and if can also be exported to web page it would be even better)
Have all the utilities needed at #1 they are:

Upload image
Access to camera, audio and storage of the dispositive.

Components library of the  design #5

Cordova is kinf of outdate, did you look capacitor ?
You can drop Capacitor into any existing web project done with sth like Angular, React, Vue...

I didn't hear before about capacitor, it is really interesting. Thanks you.
However we are going to use Flutter the according to its native SDK.

authors: BlancaCC pablojjimenez

repo: BlancaCC/Memories

license: Unlicense


text:
这个工具类也不错SpannableStringUtil

用SpannableString打造绚丽多彩的文本显示效果
http://www.jianshu.com/p/84067ad289d2

:+1:

之前看过，好哒

@z244370114 已经有了哦，真是累死爸爸了

repo: Blankj/AndroidUtilCode


text:
PinYinUtil里添加个区分多音字呗

汉字转拼音的时候添加区分下多音字呗，

另外添加个取首字母的方法，就完美了

多音字实现不了的应该，首字母的有了已经


text:
Remove unnecessary files from docker container

The container is unnecessarily cloning thee blawx repo to get access to the source files for the documentation. Dockerfile should copy them in instead.

This will not be relevant in the v1 branch.

repo: Blawx/blawx


text:
Bless absolute, relative or remote path in css @import

Please add option pathType to
options: {
      pathType: "absolute" ------> by default
}

in main.css
@import "D:/www/styles/style1.css"                   -> absolute path
@import "style1.css"                                 -> relative path
@import "http://example.com/css/styles.css"          -> remote path

h1, h2 ....{
    font-size: 32px;
}
some css code .....

Thank you!

A couple of thoughts. The current paths, "relative" in your example, should work in 99.9% of situations, because import paths are relative to the stylesheet not the document. It does occur to me that there is a bug with the way relative paths are created which can cause 404 errors.
Second, the absolute path in your example is a bad idea and it should definitely not be the default.
Lastly, using string tokens like that is bad design and would require multiple options to be able to configure it properly. This is how I would configure such an option:
options: {
    root: 'http://example.com/css/'
}

repo: BlessCSS/grunt-bless


text:
网站完全无法访问

https://www.blessingta.link/

https://www.blessingta.link/

我这里检测到DNS解析已经被修改，指向了一个非法地址，不知道开发团队在干神马，希望能快点恢复（哭）要不然我就得自己写一个了

（最近好忙一点电脑没看QAQ）
看起来是域名寄了，不过域名只是打开了blessing-studio.github.io的内容（也就是说域名只是为了美观（bushi）），目前你可以直接访问blessing-studio.github.io，内容和blessingta.link一样（

（最近好忙一点电脑没看QAQ） 看起来是域名寄了，不过域名只是打开了blessing-studio.github.io的内容（也就是说域名只是为了美观（bushi）），目前你可以直接访问blessing-studio.github.io，内容和blessingta.link一样（

感谢回复！
我在发布了上一条回复那时的第二周就尝试访问了blessing-studio.github.io并发现其内容就是原来的blessingta.link，但是忘了在此issue下方进行再次回复（大悲）

（最近好忙一点电脑没看QAQ） 看起来是域名寄了，不过域名只是打开了blessing-studio.github.io的内容（也就是说域名只是为了美观（bushi）），目前你可以直接访问blessing-studio.github.io，内容和blessingta.link一样（

感谢回复！
我在发布了上一条回复那时的第二周就尝试访问了blessing-studio.github.io并发现其内容就是原来的blessingta.link，但是忘了在此issue下方进行再次回复（大悲）

c我刚问了，域名是换新的了（
新域名是https://wiki.blessing-studio.cn/
⊙ω⊙

authors: AXCWG Orange-Icepop Starcloudsea

repo: Blessing-Studio/MinecraftLaunch


text:
Perpetual "transport error"

Good day
When doing payments I get an error with the message of "transport error". I've tried multiple times today to make a payment but was not able to.
This also been a problem for the past month but today it is not working at all. Is there something I can do on my side?
Here are some logs:
event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1714381497,"descriptionHash":null,"paymentHash":"2e18b70b5cbcaee746ebf3b503495d1107f7bb52cf3260a60bcf5c978e22c5c3","network":"bitcoin","description":"Invoice for 1000 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[177,237,131,185,110,223,224,123,48,94,184,110,148,234,213,109,99,118,127,167,14,73,162,92,37,207,167,71,94,205,246,125],"amountMsat":1000000,"bolt11":"lnbc10u1pnz7c4esp5k8kc8wtwmls8kvz7hphff6k4d43hvla8pey6yhp9e7n5whkd7e7spp59cvtwz6uhjhww3ht7w6sxj2azyrl0w6jeuexpfsteawf0r3zchpsdpzf9h8vmmfvdjjqen0wgsrzvpsxqs8xct5wvcqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqhhupqyulua0lepltvr2ql8kycky2qtj29kxtfyk3ysnmj2lqjt88jjyyz3kvf0tqzffm6fx0jp9l8td500hhsl2mt66a6m757tdm69qpd4qhsh"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1714381497,"descriptionHash":null,"paymentHash":"2e18b70b5cbcaee746ebf3b503495d1107f7bb52cf3260a60bcf5c978e22c5c3","network":"bitcoin","description":"Invoice for 1000 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[177,237,131,185,110,223,224,123,48,94,184,110,148,234,213,109,99,118,127,167,14,73,162,92,37,207,167,71,94,205,246,125],"amountMsat":1000000,"bolt11":"lnbc10u1pnz7c4esp5k8kc8wtwmls8kvz7hphff6k4d43hvla8pey6yhp9e7n5whkd7e7spp59cvtwz6uhjhww3ht7w6sxj2azyrl0w6jeuexpfsteawf0r3zchpsdpzf9h8vmmfvdjjqen0wgsrzvpsxqs8xct5wvcqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqhhupqyulua0lepltvr2ql8kycky2qtj29kxtfyk3ysnmj2lqjt88jjyyz3kvf0tqzffm6fx0jp9l8td500hhsl2mt66a6m757tdm69qpd4qhsh"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1714381497,"descriptionHash":null,"paymentHash":"2e18b70b5cbcaee746ebf3b503495d1107f7bb52cf3260a60bcf5c978e22c5c3","network":"bitcoin","description":"Invoice for 1000 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[177,237,131,185,110,223,224,123,48,94,184,110,148,234,213,109,99,118,127,167,14,73,162,92,37,207,167,71,94,205,246,125],"amountMsat":1000000,"bolt11":"lnbc10u1pnz7c4esp5k8kc8wtwmls8kvz7hphff6k4d43hvla8pey6yhp9e7n5whkd7e7spp59cvtwz6uhjhww3ht7w6sxj2azyrl0w6jeuexpfsteawf0r3zchpsdpzf9h8vmmfvdjjqen0wgsrzvpsxqs8xct5wvcqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqhhupqyulua0lepltvr2ql8kycky2qtj29kxtfyk3ysnmj2lqjt88jjyyz3kvf0tqzffm6fx0jp9l8td500hhsl2mt66a6m757tdm69qpd4qhsh"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1714381497,"descriptionHash":null,"paymentHash":"2e18b70b5cbcaee746ebf3b503495d1107f7bb52cf3260a60bcf5c978e22c5c3","network":"bitcoin","description":"Invoice for 1000 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[177,237,131,185,110,223,224,123,48,94,184,110,148,234,213,109,99,118,127,167,14,73,162,92,37,207,167,71,94,205,246,125],"amountMsat":1000000,"bolt11":"lnbc10u1pnz7c4esp5k8kc8wtwmls8kvz7hphff6k4d43hvla8pey6yhp9e7n5whkd7e7spp59cvtwz6uhjhww3ht7w6sxj2azyrl0w6jeuexpfsteawf0r3zchpsdpzf9h8vmmfvdjjqen0wgsrzvpsxqs8xct5wvcqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqhhupqyulua0lepltvr2ql8kycky2qtj29kxtfyk3ysnmj2lqjt88jjyyz3kvf0tqzffm6fx0jp9l8td500hhsl2mt66a6m757tdm69qpd4qhsh"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1714381497,"descriptionHash":null,"paymentHash":"2e18b70b5cbcaee746ebf3b503495d1107f7bb52cf3260a60bcf5c978e22c5c3","network":"bitcoin","description":"Invoice for 1000 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[177,237,131,185,110,223,224,123,48,94,184,110,148,234,213,109,99,118,127,167,14,73,162,92,37,207,167,71,94,205,246,125],"amountMsat":1000000,"bolt11":"lnbc10u1pnz7c4esp5k8kc8wtwmls8kvz7hphff6k4d43hvla8pey6yhp9e7n5whkd7e7spp59cvtwz6uhjhww3ht7w6sxj2azyrl0w6jeuexpfsteawf0r3zchpsdpzf9h8vmmfvdjjqen0wgsrzvpsxqs8xct5wvcqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqhhupqyulua0lepltvr2ql8kycky2qtj29kxtfyk3ysnmj2lqjt88jjyyz3kvf0tqzffm6fx0jp9l8td500hhsl2mt66a6m757tdm69qpd4qhsh"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 ERROR  [Error: Generic: Generic: status: Unknown, message: "transport error", details: [], metadata: MetadataMap { headers: {} }]

@Laderlappen can you please check again how are things looking on your end? You shouldn't see transport errors anymore (they can happen, but very rarely).

@kingonly
I tried payments again now. Most of them still fail. But at least some of them go through now. The first few attempts failed.
I have a retry mechanism in the payments to retry 3 times if the payment fails. Here is an example of the first attempt failing and then the second one works (It looks like this happens most of the time, the fist attempt always fails):
 LOG  Breez already initialized.
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"synced"}
 LOG  event {"type":"synced"}
 LOG  event {"type":"synced"}
 LOG  event {"type":"synced"}
 LOG  event {"type":"synced"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1715154125,"descriptionHash":null,"paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","network":"bitcoin","description":"Invoice for 100 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[212,19,222,206,46,169,11,77,123,20,74,143,173,24,131,247,203,186,219,161,96,197,191,40,247,226,202,99,117,181,98,37],"amountMsat":100000,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1715154125,"descriptionHash":null,"paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","network":"bitcoin","description":"Invoice for 100 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[212,19,222,206,46,169,11,77,123,20,74,143,173,24,131,247,203,186,219,161,96,197,191,40,247,226,202,99,117,181,98,37],"amountMsat":100000,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1715154125,"descriptionHash":null,"paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","network":"bitcoin","description":"Invoice for 100 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[212,19,222,206,46,169,11,77,123,20,74,143,173,24,131,247,203,186,219,161,96,197,191,40,247,226,202,99,117,181,98,37],"amountMsat":100000,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1715154125,"descriptionHash":null,"paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","network":"bitcoin","description":"Invoice for 100 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[212,19,222,206,46,169,11,77,123,20,74,143,173,24,131,247,203,186,219,161,96,197,191,40,247,226,202,99,117,181,98,37],"amountMsat":100000,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 LOG  event {"details":{"invoice":{"expiry":3600,"routingHints":[{"hops":[{"htlcMaximumMsat":null,"htlcMinimumMsat":null,"cltvExpiryDelta":34,"feesBaseMsat":0,"feesProportionalMillionths":0,"shortChannelId":15040265511668863000,"srcNodeId":"02c811e575be2df47d8b48dab3d3f1c9b0f6e16d0d40b5ed78253308fc2bd7170d"}]}],"timestamp":1715154125,"descriptionHash":null,"paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","network":"bitcoin","description":"Invoice for 100 sats","minFinalCltvExpiryDelta":144,"payeePubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","paymentSecret":[212,19,222,206,46,169,11,77,123,20,74,143,173,24,131,247,203,186,219,161,96,197,191,40,247,226,202,99,117,181,98,37],"amountMsat":100000,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj"},"nodeId":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","error":"Generic: Generic: status: Unknown, message: \"transport error\", details: [], metadata: MetadataMap { headers: {} }"},"type":"paymentFailed"}
 ERROR  [Error: Generic: Generic: status: Unknown, message: "transport error", details: [], metadata: MetadataMap { headers: {} }]
 LOG  Retrying payment
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupStarted"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"backupSucceeded"}
 LOG  event {"type":"synced"}
 LOG  event {"type":"synced"}
 LOG  event {"type":"synced"}
 LOG  event {"type":"synced"}
 LOG  event {"type":"synced"}
 LOG  event {"details":{"metadata":null,"details":{"data":{"reverseSwapInfo":null,"swapInfo":null,"lnurlWithdrawEndpoint":null,"paymentPreimage":"3a5634d4048c9e0908af5814373aceb6a1f99b231a5c9196982d145c6dbf9bf4","lnurlMetadata":null,"lnurlPayDomain":null,"lnurlSuccessAction":null,"lnAddress":null,"pendingExpirationBlock":null,"openChannelBolt11":null,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj","label":"","paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","destinationPubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","keysend":false},"type":"ln"},"amountMsat":100000,"paymentTime":1715154205,"status":"complete","id":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","paymentType":"sent","description":"Invoice for 100 sats","error":null,"feeMsat":0},"type":"paymentSucceed"}
 LOG  event {"details":{"metadata":null,"details":{"data":{"reverseSwapInfo":null,"swapInfo":null,"lnurlWithdrawEndpoint":null,"paymentPreimage":"3a5634d4048c9e0908af5814373aceb6a1f99b231a5c9196982d145c6dbf9bf4","lnurlMetadata":null,"lnurlPayDomain":null,"lnurlSuccessAction":null,"lnAddress":null,"pendingExpirationBlock":null,"openChannelBolt11":null,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj","label":"","paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","destinationPubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","keysend":false},"type":"ln"},"amountMsat":100000,"paymentTime":1715154205,"status":"complete","id":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","paymentType":"sent","description":"Invoice for 100 sats","error":null,"feeMsat":0},"type":"paymentSucceed"}
 LOG  event {"details":{"metadata":null,"details":{"data":{"reverseSwapInfo":null,"swapInfo":null,"lnurlWithdrawEndpoint":null,"paymentPreimage":"3a5634d4048c9e0908af5814373aceb6a1f99b231a5c9196982d145c6dbf9bf4","lnurlMetadata":null,"lnurlPayDomain":null,"lnurlSuccessAction":null,"lnAddress":null,"pendingExpirationBlock":null,"openChannelBolt11":null,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj","label":"","paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","destinationPubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","keysend":false},"type":"ln"},"amountMsat":100000,"paymentTime":1715154205,"status":"complete","id":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","paymentType":"sent","description":"Invoice for 100 sats","error":null,"feeMsat":0},"type":"paymentSucceed"}
 LOG  event {"details":{"metadata":null,"details":{"data":{"reverseSwapInfo":null,"swapInfo":null,"lnurlWithdrawEndpoint":null,"paymentPreimage":"3a5634d4048c9e0908af5814373aceb6a1f99b231a5c9196982d145c6dbf9bf4","lnurlMetadata":null,"lnurlPayDomain":null,"lnurlSuccessAction":null,"lnAddress":null,"pendingExpirationBlock":null,"openChannelBolt11":null,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj","label":"","paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","destinationPubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","keysend":false},"type":"ln"},"amountMsat":100000,"paymentTime":1715154205,"status":"complete","id":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","paymentType":"sent","description":"Invoice for 100 sats","error":null,"feeMsat":0},"type":"paymentSucceed"}
 LOG  event {"details":{"metadata":null,"details":{"data":{"reverseSwapInfo":null,"swapInfo":null,"lnurlWithdrawEndpoint":null,"paymentPreimage":"3a5634d4048c9e0908af5814373aceb6a1f99b231a5c9196982d145c6dbf9bf4","lnurlMetadata":null,"lnurlPayDomain":null,"lnurlSuccessAction":null,"lnAddress":null,"pendingExpirationBlock":null,"openChannelBolt11":null,"bolt11":"lnbc1u1pnrktxdsp56sfaan3w4y9567c5f2866xyr7l9m4kapvrzm728hut9xxad4vgjspp5ffqmqhjx9wj5regrel0etee79rdxuz53v4npvt3s93d3tmny030qdpqf9h8vmmfvdjjqen0wgsrzvpsypekzarncqzysrzjqtypret4hcklglvtfrdt85l3exc0dctdp4qttmtcy5es3lpt6utsm59ec89ua9xw5uqqqqqqqqqqqqqqyg9qxpqysgqf49atpvlw4a7jmmc0flj9gregzv6z5yngtkcfrr68fu7g9ac86frcth20r9kg8vt98aa6vjlqa5yezvf6u7hv60x2wx6mez255hazqcq248qvj","label":"","paymentHash":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","destinationPubkey":"026b4e9c35b9cd3189c6790e9c74677ac4bc925e4021d2dd37dae4ff5cd9cfe762","keysend":false},"type":"ln"},"amountMsat":100000,"paymentTime":1715154205,"status":"complete","id":"4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e","paymentType":"sent","description":"Invoice for 100 sats","error":null,"feeMsat":0},"type":"paymentSucceed"}
 LOG  Payment response: {"payment": {"amountMsat": 100000, "description": "Invoice for 100 sats", "details": {"data": [Object], "type": "ln"}, "error": null, "feeMsat": 0, "id": "4a41b05e462ba541e503cfdf95e73e28da6e0a916566162e302c5b15ee647c5e", "metadata": null, "paymentTime": 1715154205, "paymentType": "sent", "status": "complete"}}
 LOG  Payment succeeded

I had a payment now that succeeded without a retry. So the first attempt does not consistently fail.

@Laderlappen this elaborate on the transport error you get sometimes: https://github.com/breez/breez-sdk/issues/966

As the Breez SDK is planning to build a stop-gap solution, I also opened a tracking issue for gl-client itself here https://github.com/Blockstream/greenlight/issues/428
We'll keep that one open until it is fixed internally, and I'm closing this issue.

authors: Laderlappen cdecker kingonly roeierez

repo: Blockstream/greenlight


text:
🛑 hosted-PalmettoGBA is down

In 40d5fe7, hosted-PalmettoGBA (https://palmettogba.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: hosted-PalmettoGBA is back up in f8aaff9 after 9 minutes.


text:
🛑 hosted-PalmettoGBA is down

In 06eefb8, hosted-PalmettoGBA (https://palmettogba.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: hosted-PalmettoGBA is back up in 4192f3a after 9 minutes.


text:
Reading CSV (#332) and DropSparseRows (#333)

I changed how reading CSVs is done so that it does not allocate too much necessary memory. It is a bit faster and a bit less wasteful, but it is not as significant improvement as I'd be hoping for. More work would probably involve tweaking the CSV parser from F# Data.
I added test for DropSparseRows from @adamklein in #333. This seems to be working as expected. However, there was a recent(-ish) change in this bit (https://github.com/BlueMountainCapital/Deedle/commit/2a0fc636fb014432b56243870c5433a5fe59b50b), so perhaps you're not running the latest version?

Is the DropSparseRows behavior working in 1.2.4? Seems not to work... but I thought the fix went in before 1.2.4 went out?

NM, I see things work in 1.2.4. My projects are somehow still loading 1.2.3, configuration issue.

@adamklein Sorry for the mess here, I had this forgotten PR here. I suppose this is good to merge?
(This also now fixes the issue with CI builds.)

@adamklein Sorry, I made a bit of a mess here! This unmerged PR had an optimization that changed the code for reading CSV (to make it faster) - I adapted your changes to add Guid and DateTime support (but did it wrong the first time). Now it should all work again... we'll see if the CI finishes!

Okay, now we've got one genuine test failure in Can save MSFT data as CSV file and read it afterwards (with custom format) on CI - this might be related to the DateTime support. I'll see what's going on.

The test failure was indeed caused by the DateTime parsing.
Previously, we did not parse dates and so the test had an explicit call to DateTime.Parse. Now, the date gets recognized & parsed automatically, so we do not need that. This commit changes the test to make it work.
@adamklein All seems to be green now, so let me know if you're OK with merging this!

authors: adamklein tpetricek

repo: BlueMountainCapital/Deedle


text:
update

update 20200625

mege ....

repo: Bmawen/mall


text:
[BUG] Documentation Tautulli url base

Describe the bug
Tautulli requires url base to if it is set.
To Reproduce
Steps to reproduce the behavior:

Add url base to Tautulli application
configure Varken without it

Expected behavior
Update Wiki documents and example ini file to notify of this requirement
[tautulli-1]
url = 192.168.2.158:8282/tautulli

Screenshots
2019-01-07 11:02:37 : INFO : helpers : This url doesnt even resolve: http://********2.158:8282/api/v2?apikey=********62d7f&cmd=get_activity
Environment (please complete the following information):

OS: Linux 4.18.20-unRAID x86_64
Version 6.6.6

Additional context
Sonarr & Radarr do not have this requirement

yea, thius doesnt work w/ or w/o the base url
2019-03-18 23:18:46 : INFO : __init__ : Running *all* 4 jobs with 0s delay inbetween
2019-03-18 23:18:46 : INFO : __init__ : Running job Every 12 to 24 hours do put(<bound method GeoIPHandler.update of <varken.helpers.GeoIPHandler object at 0x7f9259e4bc18>>) (last run: [never], next run: 2019-03-19 15:18:45)
2019-03-18 23:18:46 : INFO : __init__ : Running job Every 30 seconds do put(<bound method TautulliAPI.get_activity of <tautulli-1>>) (last run: [never], next run: 2019-03-18 23:19:15)
2019-03-18 23:18:46 : INFO : __init__ : Running job Every 3600 seconds do put(<bound method TautulliAPI.get_stats of <tautulli-1>>) (last run: [never], next run: 2019-03-19 00:18:45)
2019-03-18 23:18:46 : INFO : __init__ : Running job Every 300 seconds do put(<bound method UniFiAPI.get_usg_stats of <unifi-1>>) (last run: [never], next run: 2019-03-18 23:23:46)
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/opt/Varken/Varken.py", line 34, in thread
    a = job()
  File "/opt/Varken/varken/tautulli.py", line 38, in get_activity
    for session in get['sessions']:
KeyError: 'sessions'

my config is
[tautulli-1]
url = 127.0.0.1:8181
fallback_ip = 1.1.1.1
apikey = xxxxx
ssl = false
verify_ssl = false
get_activity = true
get_activity_run_seconds = 30
get_stats = true
get_stats_run_seconds = 3600

I have also tried
[tautulli-1]
url = 127.0.0.1:8181/tautulli
fallback_ip = 1.1.1.1
apikey = xxxxxxx
ssl = false
verify_ssl = false
get_activity = true
get_activity_run_seconds = 30
get_stats = true
get_stats_run_seconds = 3600

@johntdyer I have already stated this. Do not use issues for support. We only do support in discord.

repo: Boerderij/Varken


text:
Homologação Boleto Caixa

Olá pessoal, estou homologando o boleto com registro (14) junto a Caixa e apontaram 3 itens para acertar são eles:
Acerto 01.:  LOCAL DE PAGAMENTO*: Deve apresentar a expressão “PREFERENCIALMENTE NAS CASAS LOTÉRICAS ATÉ O VALOR LIMITE”
Acerto 02.:  Carteira.: Preencher com RG
Acerto 03.:  Em cumprimento ao disposto no Artigo 7º do Decreto 6.523, de 31/07/08, e na Circular BACEN 3.370/07, é obrigatório constar:
SAC CAIXA: 0800 726 0101 (informações, reclamações, sugestões e elogios)
Para pessoas com deficiência auditiva ou de fala: 0800 726 2492
Ouvidoria: 0800 725 7474
caixa.gov.br
Pelo que percebi o valor default está "ATÉ O VENCIMENTO EM QUALQUER BANCO. APÓS O VENCIMENTO SOMENTE NA CAIXA ECONÔMICA FEDERAL."  e mesmo eu colocando no código o certo ele imprime o default.
Em relação a sigla da carteira, se eu colocar RG dá como carteira não implementada.
Peço ajuda pra resolver essas questões?

@asilveirbr boa tarde...
Incrivelmente, estou fazendo esses ajustes agora... kkk - também estou homologando e veio exatamente essa situação para cá...
espero terminar hoje ainda.

Bom dia, alguma novidade quanto aos ajustes, há algo que eu possa ajudar?
Abraços

@asilveirbr bom dia...
#129  --- terminei na sexta, só esqueci de fazer o PR...
@carloscds  -  o PR ainda está pendente pelos testes... mas se passar, é só aprovar o PR...

Olá, desculpe a ignorância, mas PR significa Pull Request?

KK ... isso mesmo... nem sei se é "padrão" essa sigla... mas na velocidade aqui, digitei PR apenas.

Estou tendo problemas para homologar caixa, na carteira na impressão do boleto esta saindo SIG14 atualizei para a versão 1.61 do boleto2net e continua saindo esta inscrição ao inves de RG.

@asilveirbr bom dia...
#129 --- terminei na sexta, só esqueci de fazer o PR...
@carloscds - o PR ainda está pendente pelos testes... mas se passar, é só aprovar o PR...

rafd75, não estou conseguindo homologar o boleto conforme msg anterior, tem alguma idéia do que pode ser.

bom dia...
Por favor, verifiquem se o código de vocês, está com a versão abaixo:
https://github.com/BoletoNet/boleto2net/blob/c1d65568484f56f6b735854afdce8f37bf77f955/Boleto2.Net/Banco/Carteiras/BancoCaixa/BancoCaixaCarteiraSIG14.cs#L19

Completando... essa propriedade, aparece em 3 lugares no projeto:

Observe que o código ajusta para "RG" (boleto.CarteiraImpressaoBoleto = "RG"; ) no método FormataNossoNumero... ou seja, após criar o boleto, definir as propriedades, se não executar o "ValidaBoleto", não irá alterar para RG.
Se for esse o caso, faça manualmente, que deve funcionar. Após criar o boleto, e definir suas propriedades, faça manualmente... algo como abaixo...:
seuBoleto = new Boleto();
seuBoleto.ValorTitulo = 100;
seuBoleto.CarteiraImpressaoBoleto = "RG";
... depois de verificar isso, me da um retorno...

Completando... essa propriedade, aparece em 3 lugares no projeto:

Observe que o código ajusta para "RG" (boleto.CarteiraImpressaoBoleto = "RG"; ) no método FormataNossoNumero... ou seja, após criar o boleto, definir as propriedades, se não executar o "ValidaBoleto", não irá alterar para RG.
Se for esse o caso, faça manualmente, que deve funcionar. Após criar o boleto, e definir suas propriedades, faça manualmente... algo como abaixo...:
seuBoleto = new Boleto();
seuBoleto.ValorTitulo = 100;
seuBoleto.CarteiraImpressaoBoleto = "RG";
... depois de verificar isso, me da um retorno...

Descobri a falha, como estou usando em vb6, tinha uma dll da versão antiga na pasta do visual studio vb98 o que estava causando confusão no sistema... removi todas as dls e tlbs e refiz os registro agora 100%. Obrigado pelo atendimento rafd75

Bom dia, estou utilizando VB6 na geração do boleto e esta homologado ok, porém não consigo efetuar a leitura do retorno. Consigo rodar o LerRetorno() porém não consigo fazer a leitura dos dados do retorno. Alguem teria algum exemplo em vb6 para ler retorno usando o Boleto2Net ?

@mdantasgyn  bom dia.
Alguma mensagem de erro?
Caso não tenha nenhuma, após rodar o LerRetorno(), você deve fazer um loop na coleção Boletos.
Para cada ocorrência do arquivo retorno, será criado um "boleto" na coleção "Boletos".

Sim, quando tento colocar o with boletos e end with para percorrer a colecao, o vb6 fecha só de executar nem chega neste processo.

Aqui, trabalho com o FoxPro, e deve ser a mesma limitação do VB6...
Eu uso a classe PROXY (do projeto)... e para ler cada objeto, uso o método abaixo:
https://github.com/BoletoNet/boleto2net/blob/d85147965796dbbd1b03916ac3bc8cd8edbaf646/Boleto2.Net/Boleto2NetProxy.cs#L159

Legal, este pode ser uma boa saida, teria como me enviar um modelo de implementação de leitura por este metodo no foxpro?
assim faço uma adaptação para o VB6 e posto se alguem passar por este problema

Aqui, trabalho com o FoxPro, e deve ser a mesma limitação do VB6...
Eu uso a classe PROXY (do projeto)... e para ler cada objeto, uso o método abaixo:
https://github.com/BoletoNet/boleto2net/blob/d85147965796dbbd1b03916ac3bc8cd8edbaf646/Boleto2.Net/Boleto2NetProxy.cs#L159

Consegui ler pela classe proxy accessarboletoindice, porem não quer instanciar os boletos tento ler o nosso numero tipo Classe.Boleto.NossoNumero enão acesso o nosso numero. mas os boletos foram carregados pois vejo que me retornou pela quantidade dos boletos quantidadeBoletos me traz os 51 que constam no retorno. mas não consigo ler nenhum deles pelo objeto Boleto (Boleto.NossoNumero) por exemplo.

Aqui, trabalho com o FoxPro, e deve ser a mesma limitação do VB6...
Eu uso a classe PROXY (do projeto)... e para ler cada objeto, uso o método abaixo:
https://github.com/BoletoNet/boleto2net/blob/d85147965796dbbd1b03916ac3bc8cd8edbaf646/Boleto2.Net/Boleto2NetProxy.cs#L159

Consegui ler pela classe proxy accessarboletoindice, porem não quer instanciar os boletos tento ler o nosso numero tipo Classe.Boleto.NossoNumero enão acesso o nosso numero. mas os boletos foram carregados pois vejo que me retornou pela quantidade dos boletos quantidadeBoletos me traz os 51 que constam no retorno. mas não consigo ler nenhum deles pelo objeto Boleto (Boleto.NossoNumero) por exemplo.

Antes de ler, vc precisa "AcessarBoletoIndice() ... essa função, carrega o boleto que você informou no parametro, para o objeto boleto).
desculpe a pressa.

Antes de ler, vc precisa "AcessarBoletoIndice() ... essa função, carrega o boleto que você informou no parametro, para o objeto boleto).
desculpe a pressa.

Valeu pessoal, eu estava fazendo corretamente o problema foi habilitar o objeto com para true nos assembly que não tinha feito. Tinha feito só no objeto principal. Agora estou conseguindo ler corretamente.

Valeu pessoal, eu estava fazendo corretamente o problema foi habilitar o objeto com para true nos assembly que não tinha feito. Tinha feito só no objeto principal. Agora estou conseguindo ler corretamente.

authors: asilveirbr marcdan mdantasgyn rafd75


text:
Better -(NSString*)description for BFTask

As the title says. Nothing special here.
I didn't add test code as -description is only ever called during debug.

@nlutsenko-fb what needs to be done to get this merged?

Update the naming for pragma mark to #pragma mark - NSObject
Kill change in Bolts.xccheckout
Update description output to this pattern <%@: %p; completed = %@; cancelled = %@;%@> (last format argument is either  result: %@; or empty string)

@nlutsenko-fb see https://github.com/BoltsFramework/Bolts-iOS/pull/78

@nlutsenko-fb can close this since #78 is merged

Superseded by #78

authors: JosephEarl nlutsenko-fb rogernolan

repo: BoltsFramework/Bolts-iOS


text:
修正 svg 圖片

根據 casey 之前的改動修改 https://github.com/parallax/jsPDF/compare/master...MarginalCasey:jsPDF:feature/svg-in-html

@bonio-tw/jspdf v0.0.1

@bonio-tw/jspdf v0.0.2

repo: BoniO-Taiwan/jsPDF


text:
Typescript eslint 7.4.0

Bumpning av typescript.
Vem gör npm publish? @markusn

Bumpning av typescript.
Vem gör npm publish? @markusn

Det kan jag göra, fyll gärna på i CHANGELOG.md så mergar jag och publicerar sen

authors: markusn tornord

repo: BonnierNews/eslint-config


text:
More E-Mail preferences

Hello,
I think it would be a great addition to have the option to send out e-mails if a book was added/changed.
Might as well allow for customisation of those mails (Signature, general structure,...).
Currently I'm sending e-mails manually from my personal Mail-Account to notify the administrators that I've added a Book or changed something important.
Therefore this would be a nice addition to bookstack.

Hi @DanielKng,
Did you just close then re-open your own issue (#42) to bump it up? Not sure how I feel about that, bit cheeky 😏 .
Something that does not help this to be completed is that this issue encompasses two requests:

Email notification on Book events.
Customization of emails.

I think the second point may already be possible albeit through the undocumented & unstable theming system.
I can explain how you'd achieve this if you'd like.

Hi @ssddanbrown,
Nope, I did not.
Also, you refer to "Add feature to delete images" wich really is not what I want at all ;)
But, I did create this issue on the BookStack/website-Repo first. But I found that this will fit here much better, that's why I closed that issue over there. :)
Sure, guide me trough it! :)

@DanielKng Ah, My bad, Yeah, I see what's happened.
I'll respond back which how you could customize the email HTML when I next have a few minutes spare.

Just came across this again, Realised I had not responded.
The visual theme system is now documented here. It would be a case of overriding this view to customize emails sent from BookStack.
Email notifications is already open under other issues (Primary being #241) so I'll therefore close this off.
If familiar with the framework, the logical theme system could potentially be used to jerry-rig a notification system.

authors: DanielKng ssddanbrown

repo: BookStackApp/BookStack


text:
Migrate from SCSS to blade templates

Just dumping this down so I don't forget it.
Proposal
Migrate the existing SCSS style files to blade template files containing normal CSS content.
Reasoning
We currently use, and I have loved, SCSS mainly due to the following features:

Use of variables.
Ability to split source into multiple files.
Ability to nest selectors.

Feature 1 can now be done via CSS variables now we have dropped IE. I have already started uses CSS variables for core theme colors.
Feature 2 can be done by any common templating system.
Feature 3, while useful, often encourages bad practice and is the most common incompatibility with normal CSS.
Migrating to standard CSS, split out via blade template files, will make the styles more accessible by being standards css rather than scss, while allowing easier customization via the theme system. A custom user theme would be able to selectively override the default BookStack css on a per file basis. This feature would also reduce development build dependencies, making it more accessible to start developing on BookStack and tweaking styles.
Considerations

Existing SCSS files would need to be cleaned up a bit, Certain bits are currently a bit of a mess. More granular would be better.
We'd ideally set sensible cache headers since, unless developing a theme, the styles should not be expected to change often.
Ideally the files would end with .blade.css so editor syntax highlighting remains working as normal. Not looked but, from experience of Laravel, they've probably made this easy to achieve.
Will need to consider PDF generation. Need to check if renderers support CSS variables, Might need to provided targeted backup styles for those.
Would be good if we can get sourcemaps to work to make debugging easier. Could be tricky.

I've been reading on some of the issues created with theme customization in mind. It looks like you are trying to come up with some out-of-the-box-thinking solution, because single page applications are basically unable to do themes and styles like "old-school" server side rendered applications could do.
In regards to Sass, I can only agree with statement about variables, but ability to split styles into multiple files was also possible with CSS. You could always use file concatenation to get a result in a single file. Nesting selectors? It's just a syntax sugar that I don't use too much to avoid insanely nested definitions.
I understand why it might sound as a good idea to replace Sass with blade templates if you only see the benefits listed, but I think what Sass is popular for are the mixins, extends, functions.
That being said, maybe there should be a way to implement template customization in Vue.js.
AngularJS (1.x) had used templateUrl, which allowed you to override any template you wanted on runtime.
Unfortunately, frameworks today do pre-compilation of HTML to Virtual DOM.

authors: slykar ssddanbrown


text:
鼠标中键问题

大佬您好
设置栏位中有一个选项为鼠标中键启动
能否添加一个选项让此功能只在桌面时才作动呢?
在浏览网页常会用到中键，此时控制面板也会一并打开非常不方便
但同时也想在桌面时使用滑鼠中键启动
因此出此建议，还望采纳
万分感谢

你这个提议不太合理吧，开网页的时候，有时候也是需要打开面板的，不如看着网页，我想打开浏览器，你意思我必须把网页最小化再去打开面板咯？或者你的意思是说，在打开浏览器的时候，啥事都不要干，你就专心于看网页，比如你突然发现你想打开一个软件，就必须把浏览器最小化回到桌面打开吗？显然这样的建议并不合理，你可以考虑让这个软件设置一个白名单什么的，让他在浏览器的时候有个开关，这样才是从大局考虑，而不是因为个人的原因，而要大家都改变习惯。

能否增加桌面空白双击启动呢？快捷键经常会和部分应用冲突，排查挺麻烦，中键也是，在大量3D软件中，中键是重要的操作键

repo: BookerLiu/GeekDesk


text:
Fix afm single site

For a system which has strong AFM character running the default single-site EWF calculation in Vayesta with a spin-symmetry broken reference results in an error due to CISD coefficient generation on master. Here's is a minimal example using a dissociated hydrogen molecule, but I originally came across it in H-ring dissociations and I'd expect the same for the high-U Hubbard model.
from pyscf import gto, scf
from vayesta.misc.molecules import ring

mol = gto.M()
mol.atom = "H  0  0  0;  H  0  0  10.0"
mol.basis="sto-3g"
mol.build()

umf = scf.UHF(mol).density_fit()
umf.kernel()
umf.kernel(dm0=umf.make_rdm1(mo_coeff=umf.stability()[0]))

uewf = vayesta.ewf.EWF(umf, solver="FCI", bath_options={"bathtype":"dmet"})
uewf.kernel()

from which I get the error
 Traceback (most recent call last):
  File "/home/charlie/calc/bugfix/cisd_amps/minex.py", line 18, in <module>
    uewf.kernel()
  File "/home/charlie/miniconda3/envs/vayesta/lib/python3.9/site-packages/vayesta/ewf/ewf.py", line 179, in kernel
    x.kernel()
  File "/home/charlie/miniconda3/envs/vayesta/lib/python3.9/site-packages/vayesta/ewf/fragment.py", line 293, in kernel
    cluster_solver.kernel(eris=eris, **init_guess)
  File "/home/charlie/miniconda3/envs/vayesta/lib/python3.9/site-packages/vayesta/solver/fci.py", line 164, in kernel
    self.c0, self.c1, self.c2 = self.get_cisd_amps(self.civec)
  File "/home/charlie/miniconda3/envs/vayesta/lib/python3.9/site-packages/vayesta/solver/fci.py", line 290, in get_cisd_amps
    c2ab = einsum('i,j,ij->ij', t1signa, t1signb, civec[t1addra[:,None],t1addrb])
TypeError: list indices must be integers or slices, not tuple

This arises because in these systems each cluster consists of a single occupied orbital of one spin, and a single virtual orbital of the other spin. This means that there are no valid excitations within the cluster, and so runs into an issue where the call to pyscf to obtain indexing and sign changes
t1addra, t1signa = pyscf.ci.cisd.tn_addrs_signs(norba, nocca, 1)
sets both variables to a zero-length list when there are no possible excitations, rather than a zero-length array which might be expected given the usual return value is an array. This then leads to a later error due to python lists not supporting zero-length indexing, unlike numpy arrays.
This has already come up in the to_cisdtq branch (where obtaining an empty list for the t3 and t4 indexing is a more common occurrence), so I've just borrowed the fix already implemented there to ensure these are always array-valued. Given to_cisdtq affects many of the same classes and is expected to be merged soon it seems more straightforward to add it here rather than to master.
This branch also adds a test for this case to avoid future regression. Doing this required a way to perform tests on a UHF solution which is stable under spin stability analysis, so I've added the TestMolecule.uhf_stable() functionality in vayesta/tests/testsystems.py for this purpose without breaking lots of existing UHF tests.

Thanks for this Charlie. Is the return type inconsistent already for the PySCF function? Then it should be fixed on their side already. Although I agree we should keep the conversion on our side too, no matter what.
Are the tests not running because the PR is not for master? If this fix is independent of the to_cisdtq branch, maybe we can apply it to master instead.
@obackhouse Should we change to run tests for PRs to all branches?

The return type is inconsistent in the PySCF function- specifically this function. Having this be consistent would obviously be preferable, but ensuring what we get is consistent seems sensible for now.
While this is independent of to_cisdtq in direct functionality, given that branch refactors a decent amount of connected code basing this fix on it seemed more practical than essentially implementing twice (once with and once without the refactor). Assuming it's merging to master soon it shouldn't lead to a major delay, and we've not shied away from having branches with multiple functional changes in them before.
Any unexpected changes should be caught before getting into master, either in to_cisdtq if this PR is accepted first or in this PR if to_cisdtq is merged first, so there's not to much risk. But I agree that we should have tests on all PR's- I'll do a PR changing ci.yaml as such. Wonder if that'll start tests running on this one...

authors: cjcscott maxnus

repo: BoothGroup/Vayesta


text:
🛑 pikolin is down

In d3e7cd4, pikolin (https://pikolin.botslovers.com) was down:

HTTP code: 404
Response time: 512 ms

Resolved: pikolin is back up in a7c3ca3.

repo: Botslovers-SL/uptime


text:
GPUImageVideoCamera Memory Leak in iOS9 when build with Xcode 7

I just upgraded to iOS9 and Xcode 7, and found that GPUImageVideoCamera seems to be leaking ... at least the memory usage is growing at a fine steady rate over time :-O
I tested the SimpleVideoFilter sample, just disabling the xcode 7 bitcode option to make it compile.
Also, Movie input seems to be working fine, indicating that its related to the camera.
Anyone?

A quick narrowing down seems to point at didOutputSampleBuffer and the usage of runAsynchronouslyOnVideoProcessingQueue .... which really doesn't make sense to me.
Brad can you reproduce this?

Same here,
Memory is increasing slowly (about 0.25mb/s), in my project and the sample projects.
Any hint on this ?

While waiting for Brad to comment on this, I found the following temporary "fix".

The "fix" mentioned introduces some other issues with our real app :-/
So I'm back at finding a real solution.
One theory is that dispatch_async leaks. This is speculated here:
https://twitter.com/duobham
However I found that if I exchange the videoProcessingQueue with dispatch_get_main_queue or dispatch_get_global_queue it doesn't leak. This indicates that the error might be with the dispatch_queue_create.

It seems to be on device only and only when running in the debugger from Xcode.
So at least it's not a showstopper now for sending builds to testers or test outside the debugger.
It does however hide other real leaks :-/

So I spent some time looking into this, and I think it's an artificial memory accumulation due to the way Xcode hooks into an application. If I run an application under profiling in Instruments, I see nothing accumulating between marked generations (heap shots) as video filtering proceeds. I also don't see accumulation in system activity, VM sizes, or anything else.
I do see the same sort of memory accumulation when running under the debugger in Xcode. Interestingly, if you transfer that debug run over to Instruments, you see the same buildup:

However, you'll notice that the source of the buildup appears to be "VM: Performance tool data", and if you drill down into that, the source is libBacktraceReporting.dylib. That certainly makes it sound like Xcode itself is the source of the memory buildup, not GPUImage.
I can't find any evidence that something is leaking or not being cleaned up properly on my end, so I'd hold off on screwing with the dispatch queue code. That most likely will impact your performance and potentially lead to crashes.

Thanks for looking into this!
Having researched on this myself, I agree that this has nothing to do with GPUImage - its solely related to dispatch_async in combination with dispatch_queue_create.
In addition, the leak seems to be present only when running the app on a physical device from the debugger, indicating that it must be an Apple rooted bug.
Still, I hope they address this soon, since the leakage camouflages real leaks.

Hi @rued ,
I met the same problem about this memory grows up, but I try to force call the block() in runAsynchronouslyOnVideoProcessingQueue, it still had memory leak when I using SimpleVideoFilter example. And if the memory increase to 100M, the app terminated as a warning "Received memory warning.
Message from debugger: Terminated due to memory issue"
So I want to know how to fix that , like that as follows:
void runAsynchronouslyOnVideoProcessingQueue(void (^block)(void))
{
dispatch_queue_t videoProcessingQueue = [GPUImageContext sharedContextQueue];
#if !OS_OBJECT_USE_OBJC
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
if (dispatch_get_main_queue() == videoProcessingQueue)///?????
#pragma clang diagnostic pop
#else
if (dispatch_get_specific([GPUImageContext contextKey]))
#endif
{
block();
}else
{
dispatch_async(videoProcessingQueue, block);
}
}

Hi Eric,
What I found was that this issue has nothing to do with GPUImage. It's solely showing itself when running your app on the device from Xcode. So the good news is that is doesn't appear when just running the app. It does however hide any real leaks, which is why I have been rather focused on it.

Hi @rued ,
Thanks for your answer, I try your code and replace the dispatch_queue_create with dispatch_get_main_queue, it is seem to be no leak, but I try using it into GPUImage and do a switch different filter ,I found app(release) still leak at every switch action. It still not work. If you had time for look into it, and some details you can refer to  #2137 .

HI Eric,
To use the main queue doesn't sound like a valid solution to me, since it will stall the main queue and work against a general parallelism paradigm.

Hi， @rued
I found if we use dispatch_create_queue("com.gpuimage.xxx",DISPATCH_QUEUE_CONCURRENT) to create a parallelism queue for gnu processing frames. The memory is stable and seems to be no leak.
@BradLarson ,do you think it is reasonable for gpuimage?

@erickingxu No, using a concurrent queue in place of the standard video processing queue is completely unsafe. You need a serial dispatch queue to guarantee no simultaneous accesses to the OpenGL context.
About the memory buildup, read what I wrote above. This largely appears to be an artifact of how Xcode debugs the application. Run the application directly and this most likely won't be a problem.

Hi, Brad and rued,
I got it.
Thanks from EK

@erickingxu @BradLarson @rued , I think it's related with https://github.com/onevcat/DispatchMemoryLeakDemo/issues/2, and another developer suggested a way to work around. I haven't tested it yet, but could be useful if you're trying to figure out there are other leaks in your app.

@soleo ,thx. This method maybe avoid all queue memory leak. But it is surely good for check others leaks in app. Hope apple can fix it soon...

I believe this is addressed in the latest pull request.

authors: BradLarson Thomasgeley erickingxu rued soleo

repo: BradLarson/GPUImage


text:
[Home page/the avatar does not change] The avatar image can't change on the home page

Precondition:
Log in with an existing user. Open home page.
Steps:
1.Press the avatar image
2. Choose another picture.
Actual Result: The picture of the avatar has not changed
Expected Result: The picture of the avatar changed to the selected one

not fixed yet

Request and response from backend service is correct.
Need make change in Frontend -> update avatar in profile and in tabbar

As of Jan 18, 2023 not fixed, avatar only changes when getting back to the previous or new pages

QA verified

authors: Alleksandravd HappyEgoiste SFin-tech koylubaevnt

repo: Brain-up/brn


text:
Fix unexpect lead number missing

I found the program unexpectly outputs - when input 2. Which should be +- (+3 + -1 = 2)
The reason why is that, in pervious code, if i = 0, ++ternary[i - 1] couldn't take affect.   So my solution is manully insert a zero element, though it's slow - O(n).
You can choose to reverse the whole vector at first, and then the addition will be happened on right side, which means you can use push_back().

Shouldn't the behavior of outputting a - be expected for the input 2? I thought that for balanced ternary that was correct as instead of outputting numbers between 0, 1, 2 its between -1, 0, 1. Do you have a different example that you could give me?

Oh, you may iterate the vector from 1 instead of 0. I will update the code.

@BrandonPacewic It's done.

Looks good to me! Thanks for taking your time to correct this old project of mine

You are welcome, glad to meet you!

Ah I see my error now. Is there possibly a solution other than using .insert or push_back? As you said, particularly .insert, can be quite slow.

I spent some of my time on this.
First, try:
#include <algorithm>
#include <chrono>
#include <cstring>
#include <iostream>
#include <vector>

using namespace std;

const int M = 500000;

void test_push_back() {
    vector<int> v;
    v.reserve(M);
    auto s = chrono::steady_clock::now();
    for (int i = 0; i < M; ++i)
        v.push_back(i);
    reverse(v.begin(), v.end());
    reverse(v.begin(), v.end());
    auto e = chrono::steady_clock::now();
    auto t = chrono::duration_cast<chrono::duration<double>>(e - s);
    cout << "push_back " << M << " integers cost " << t.count() << " seconds.\n";
}
void test_insert() {
    vector<int> v;
    v.reserve(M);
    auto s = chrono::steady_clock::now();
    for (int i = 0; i < M; ++i)
        v.insert(v.begin(), i);
    auto e = chrono::steady_clock::now();
    auto t = chrono::duration_cast<chrono::duration<double>>(e - s);
    cout << "insert front " << M << " integers cost " << t.count() << " seconds.\n";
}
void test_movebackward() {
    int *p = new int[M];
    auto s = chrono::steady_clock::now();
    for (int i = 0; i < M; ++i) {
        move_backward(p, p + i, p + i + 1);
        p[0] = i;
    }
    auto e = chrono::steady_clock::now();
    auto t = chrono::duration_cast<chrono::duration<double>>(e - s);
    cout << "insert front using move_backward " << M << " integers cost " << t.count() << " seconds.\n";
    delete[] p;
}
void test_byyourself() {
    int *p = new int[M];
    auto s = chrono::steady_clock::now();
    for (int i = 0; i < M; ++i) {
        int *first = p, *last = p + i, *result = p + i + 1;
        while (first != last)
            *--result = *--last;
        p[0] = i;
    }
    auto e = chrono::steady_clock::now();
    auto t = chrono::duration_cast<chrono::duration<double>>(e - s);
    cout << "insert front by yourself " << M << " integers cost " << t.count() << " seconds.\n";
    delete[] p;
}

int main() {
    test_push_back();
    test_insert();
    test_movebackward();
    test_byyourself();
    return 0;
}

which gives these on my computer with i7-8750H with no "-O" attached:
push_back 500000 integers cost 0.0227212 seconds.
insert front 500000 integers cost 15.5317 seconds.
insert front using move_backward 500000 integers cost 17.6967 seconds.
insert front by yourself 500000 integers cost 214.517 seconds.

From godbolt, I could see the two neighboring reverses are not optimized out. And it runs really fast. Through compiler optimization, it may be O(1).
And the result shows use .insert is a really bad idea, and insert without STL is a worse idea.

It's quite interesting to observe the differences in time across different versions of the STL. With MSVC I am getting the following numbers with my Ryzen 5 4500U.
push_back 500000 integers cost 0.0463132 seconds.
insert front 500000 integers cost 13.2822 seconds.
insert front using move_backward 500000 integers cost 13.3125 seconds.
insert front by yourself 500000 integers cost 170.512 seconds.

repo: BrandonPacewic/BalancedTernaryConverter