qt6: init at 6.3.0

Description of changes
This is a greatly reduced and cleaned up version of https://github.com/NixOS/nixpkgs/pull/141883, with nearly all changes restricted to pkgs/development/libraries/qt-6. Despite being a single huge commit, It should be relatively easy to review and make improvements upon. Kudos to @milahu for doing the heavy lifting and bringing everything into shape.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Despite being a little barebone, completely ignoring support for qmake, and taking some questionable approach in patching cmake, I think this pr is ready for a round off review. Currently the not so full qt6.full as well as tdesktop builds.

And, we have to find a better place for the plugin and qml files, currently they reside in $out/plugin and $out/qml.

Haven't checked if this affects current Qt5 qtbase as well, but during some moc-related steps of the build it seems to ignore the --cores value? I tried building with --cores 12, it did not care about the limit :sweat_smile:.

And what was qtEnv for in qt-5, guess that was some qmake related legacy? I'm not seeing any reference to qt5Env in nixpkgs.

Haven't checked if this affects current Qt5 ~qtbase~ Qt packages in general as well, but during some moc-related steps of the build it seems to ignore the --cores value? I tried building with --cores 12, it did not care about the limit sweat_smile.
Maybe related to the default of using gnumake instead of ninja? According to qt, using ninja is likely to be the only supported way.

Still having some trouble building qml applications.

As of now, we can:

[x] build and run normal qt application
[x] build and run qml application
[x] use input methods in qt application

Are there any other usecases that I might have missed?
I'm not a fan of qmake, and adding support for it would be a huge burden.

Forgot to mention that I still need someone with a macos device to test it out.

Maybe related to the default of using gnumake instead of ninja? According to qt, using ninja is likely to be the only supported way.

This was on a ninja build, though I think it also happened on the other Qt components. Check the htop on the right side: ninja -j12 -l12

And what was qtEnv for in qt-5, guess that was some qmake related legacy? I'm not seeing any reference to qt5Env in nixpkgs.

That was some legacy thing brought over from Qt 4. I think we can safely omit qt6Env.

@OPNA2608 did you run nix-build --max-jobs 1?
@NickCao while you're at it, can you upgrade these apps to qt 6.3?

strawberry (music player)
qimgv (image viewer)
qarma (dialog generator)

these should be low hanging fruit, as i've already built these with qt 6.2

Are there any other usecases that I might have missed?

what's the status of qtwebengine?
it's not-yet needed, so can be ignored in this PR
but (afaik) it worked with qt 6.2 and it should not be too difficult to build with qt 6.3
(ignoring the fact that qtwebengine takes forever to build)

I'm not a fan of qmake, and adding support for it would be a huge burden.

also there is qmake2cmake.py, which should be installed as qtbase-dev/bin/qmake2cmake
(has its own repo at code.qt.io and pypi)
this "just works" in most cases, to convert qmake projects to cmake
in the rare case that someone absolutely must use qmake ...
by default, qmake will use the qt.conf file next to the qmake binary, so qtbase-dev/bin/qt.conf.
in simple cases, this "just works"
otherwise, "someone" would need to generate a qt.conf file, and set qt module paths.
qt modules like qtdeclarative (qml) are not included in the default qt.conf file.
a custom qt.conf can be passed by setting QMAKESPEC
or by calling qmake -qtconf /path/to/qt.conf in configurePhase
see also https://doc.qt.io/qt-6/qt-conf.html

did you run nix-build --max-jobs 1?

Ran nix-build . -A qt6Packages.qtbase --cores 1 --max-jobs 1 just now.
The C++ compilation parts behave well and stick to the specified amount of threads.

These "Generating" parts don't.

These "Generating" parts don't.

thx for confirm
i just dont see any signs of parallel-processing in https://code.qt.io/cgit/qt/qtbase.git/tree/src/tools/moc
can you please add ninjaFlags = [ "-d" "explain" ]; to your qtbase.nix and post some output?
and/or can you post some of your ps -eHF process tree while moc is running?

@NickCao while you're at it, can you upgrade these apps to qt 6.3?

I'd like to keep those in a separate pr, to make this cleaner and guarantee a merge.

what's the status of qtwebengine? it's not-yet needed, so can be ignored in this PR

I'll try fixing that.

I'm not a fan of qmake, and adding support for it would be a huge burden.

also there is qmake2cmake.py

According to the qt website this is tailored for qt itself and not applicable for general use if understood correctly. Who would use qmake in a shiny project targeting qt6 anyway.

what's the status of qtwebengine?
it's not-yet needed, so can be ignored in this PR

Jami requires QT 6 and qtwebengine. It would be great to have qtwebengine so that I can update Jami. Thanks!

We can not build qtwebengine to halfway, then failing on

../../../../../src/3rdparty/chromium/base/i18n/unicodestring.h:24:61: error: no matching function for call to 'std::__cxx11::basic_string<char16_t>::basic_string(const UChar*, size_t)'
But I found link to a patch from archlinux, pointing at https://code.qt.io/cgit/qt/qtwebengine-chromium.git/patch/?id=75f0f4eb that might be able to fix that.

It works!

The only missing qt module now is qtactiveqt, which is windows only and producing empty outputs on linux. The rest of the modules can build, not not fully tested yet.

. Who would use qmake in a shiny project targeting qt6 anyway.

The people developing PyQt, apparently. This library (and  PyQt-builder) is used by ~100 packages, including qutebrowser, matplotlib and poppler. This alone should justify qmake support.

. Who would use qmake in a shiny project targeting qt6 anyway.

The people developing PyQt, apparently. This library (and  PyQt-builder) is used by ~100 packages, including qutebrowser, matplotlib and poppler. This alone should justify qmake support.

The people developing PyQt, apparently. This library (and PyQt-builder) is used by ~100 packages, including qutebrowser, matplotlib and poppler. This alone should justify qmake support.

This is surprising to hear for me. But I would not consider this as a blocker for this pr as both it and those downstream projects do not list qt6 as a hard requirement for now, or do they?

do not list qt6 as a hard requirement for now, or do they?

Not for now, but QtWebEngine/QtWebKit 5.15 are becoming increasingly old (and insecure): I expect qutebrowser will move to 6.0 by default very soon.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/844

@milahu Did you test the Darwin specific expressions? If not I'd like to also remove them from this PR to further clean things up. Nor do I have the machine to test or debug them either.

Did you test the Darwin specific expressions?

no. eval should work, but i dont have a darwin machine for testing

Any updates here? I'd really like to get tdesktop to a recent version before 22.05, if nothing else, so I'd be happy to help in whatever way I can.

Apart from the controversial cmake patch (which strangely, received no reviews), there's little left to be improved. Just testing whether this works out on other Qt6 apps can be helpful though, to catch possible packaging issues.

Got it working in https://github.com/K900/nixpkgs/tree/qbt-qt6

Just testing whether this works out on other Qt6 apps can be helpful though, to catch possible packaging issues.

https://github.com/OPNA2608/nixpkgs/tree/bambootracker-qt6
Aside from the aforementioned thread-greedy Qt6 build, and QMake unavailability increasing the diff size abit: bambootracker builds & works fine with Qt6 on x86_64-linux.

I built jami with this. I had to do this to help jami find QtWebEngineProcess and resources.
  postInstall = ''
    cp -r ${qtwebengine.dev}/libexec/* $out/bin
    cp -r ${qtwebengine}/resources/* $out/bin
    cp -r ${qtwebengine}/translations/* $out/bin
  '';

resources

The libexec part can be fixed with wrapProgram, not sure about the translations and resources.

I tried qtWrapperArgs = [ "--prefix PATH : ${qtwebengine.dev}/libexec" ]; but it doesn't work. It seems the PATH is not searched.

Would you mind share your nix expressions for jami? I will investigate further into this when having some free time.

I think this is a good sign we should really just merge this, and start converting things in follow-up PRs.

Would you mind share your nix expressions for jami? I will investigate further into this when having some free time.

jami.zip Thanks!

    cp -r ${qtwebengine.dev}/libexec/* $out/bin

please try
{
  propagatedBuildInputs = [
    qtwebengine
    qtwebengine.dev
  ];

It doesn't work. The wrapper won't wrap the libexec at all. And even it's in the path it's not found.

so its a bug in the qtwebengine package, which is looking for qtwebengineprocess in the current prefix
https://grep.app/search?q=qtwebengineprocess&filter[repo][0]=qt/qtwebengine
src/core/doc/src/qtwebengine-deploying.qdoc
 99 | At runtime, \QWE looks for the \c QtWebEngineProcess executable in
100 | the directory that
101 | QLibraryInfo::location(QLibraryInfo::LibraryExecutablesPath) returns.
102 | For Qt installations, this is \c QTDIR/libexec (Linux) or \c QTDIR\bin
103 | (Windows). The path can be changed by defining a \c qt.conf file, for
104 | example. Alternatively, an executable path can be set as a value of the
105 | \c QTWEBENGINEPROCESS_PATH environment variable. On \macos, \QWE

so ...?
qtWrapperArgs = [ "--set QTWEBENGINEPROCESS_PATH ${qtwebengine.dev}/libexec/qtwebengineprocess" ];

  qtWrapperArgs = [ "--set QTWEBENGINEPROCESS_PATH ${qtwebengine.dev}/libexec/" ];
  postInstall = ''
    cp -r ${qtwebengine}/resources/* $out/bin
    cp -r ${qtwebengine}/translations/* $out/bin
  '';

This works for me.

2 more to fix ; )
https://github.com/qt/qtwebengine/blob/dev/src/core/doc/src/qtwebengine-deploying.qdoc
    Resources are searched from the following locations:

    \list
        \li On Linux and Windows: the \c resources directory in the directory
            specified by QLibraryInfo::location(QLibraryInfo::DataPath)
        \li On \macos: \c .app/Content/Resources
    \endlist

    \section2 Translations

    Locale data (such as \c en-US.pak) is searched form the following locations:

    \list
        \li On \macos: \c .app/Content/Resources
        \li On Linux and Windows: \c qtwebengine_locales directory in the
            directory specified by
            QLibraryInfo::location(QLibraryInfo::TranslationsPath)
    \endlist

https://doc.qt.io/qt-6/qlibraryinfo.html
https://doc.qt.io/qt-6/qt-conf.html
please try
{
  postInstall = ''
    cat >$out/bin/qt.conf <<EOF
    [Paths]
    ; we must set Prefix to set other paths
    Prefix = ${qtbase}
    ;Prefix = ${out}
    Data = ${qtwebengine}
    Translations = ${qtwebengine}/translations
    EOF
  '';

ideally qt would support env's for all paths
the qt.conf is searched in dirname(argv[0])

Great! This works!

I don't know if it's related, the jami built with qt6 can't resize the window and the titlebar doesn't follow the system theme.

You're using GNOME Wayland I guess? It doesn't provide xdg-decoration support and Qt removed GNOME from Wayland blacklist in 6.3.0, so it starts with native Wayland backend.

Yes, on Gnome wayland. So this is  expoected? I tried to force it using xcb but it crashes.

I want to make an argument for merging this before 22.05 again. tdesktop specifically is Qt6-only for multiple releases now and leaving it on an older versions prevents multiple new features from functioning. Most other applications should probably remain on Qt5 for 22.05.

I want to make an argument for merging this before 22.05 again. tdesktop specifically is Qt6-only for multiple releases now and leaving it on an older versions prevents multiple new features from functioning. Most other applications should probably remain on Qt5 for 22.05.

Yes please. Tdesktop is used on my job a lot, and it's the case for a lot of people. I think there's a very strong case to be made about including Qt6 in 22.05 just for tdesktop specifically.

It would also allow re-opening https://github.com/NixOS/nixpkgs/pull/166064 with proper Qt support.

I'm in favor of getting this in and looking through I don't see any obvious issues (but this is quite large and I just skimmed). I did see some open comments that should be processed though.
I'm in favor of doing iterative improvements after getting this in rather than trying to get this perfect in 1 go.
I'd really like to see attempts to work with upstream or a nicer way to fix the cmake stuff, this looks kinda wonky and who knows what it may cause in the future.

Could the QtWebEngineProcess and resources issues be fixed here instead of in the downstream packages?

Could the QtWebEngineProcess and resources issues be fixed here instead of in the downstream packages?

That would require digging into and patching around qtwebengine, not an easy fix and better having some help from the upstream.

I thought the workground posted above can be added into the qtwrapper.

I thought the workground posted above can be added into the qtwrapper.

Having a qt.conf inside the bin output of every qt application means a lot of conflicts when trying to install them into a profile, thus not a viable solution.

Could that be add into packages using qtwebengine?

Could that be add into packages using qtwebengine?

Still, you cannot install two packages both using qtwebengine.

Still, you cannot install two packages both using qtwebengine.

Is that the same case currently? Then it needs to be fixed. I agree that this should not block this PR.

Is that the same case currently? Then it needs to be fixed. I agree that this should not block this PR.

Exactly, in short, qtwebengine as is now is not functional.

upstream seems to have no interest to support having qt components installed in multiple prefixes.

could be as simple as
// qtbase/src/corelib/global/qlibraryinfo.cpp

static QSettings *findConfiguration()
{
    if (QLibraryInfoPrivate::qtconfManualPath)
        return new QSettings(*QLibraryInfoPrivate::qtconfManualPath, QSettings::IniFormat);

    // new code
    // use qt.conf from env
    QString qtconfigEnv = qgetenv("QT_CONF");
    if (!qtconfigEnv.isEmpty() && QFile::exists(qtconfigEnv)) {
        return new QSettings(qtconfigEnv, QSettings::IniFormat);
    }

    QString qtconfig = QStringLiteral(":/qt/etc/qt.conf");

via cd qtbase && grep -r -F '"qt.conf"'
related

Qt.conf defined in envionment variable QTBUG-1132
allow the location of qt.conf to be specified at runtime QTBUG-58637
set qmake config via environment variables QTBUG-98724

Having an alternative search path for qt.conf sound interesting, this may even simplify our qt wrapper.

Probably also worth updating tdesktop to 3.7.3?

I'm satisfied to merge this. We know more work is needed on qt.conf, but I think it's best that this much gets in.

"--set QT_XKB_CONFIG_ROOT ${xkeyboard_config}"

What about  "--set QT_XKB_CONFIG_ROOT ${xkeyboard_config}/share/X11/xkb"

Ah, sorry, it's a mistake. But it still crashes with "--set QT_XKB_CONFIG_ROOT ${xkeyboard_config}/share/X11/xkb".

Let's open a new issue or pr to track the progress of jami packaging, this would also benefit other packages relying on qtwebengine as a whole.

error: Function called without required argument "epoxy" at /nix/store/bbc994ix1pmxmfa4dinl2s9m91nnalz7-source/pkgs/development/libraries/qt-6/modules/qtbase.nix:40, did you mean "poly" or "reproxy"?
(use '--show-trace' to show detailed location information)

Probably was meant to be libepoxy?

But Qt doesn't depend on libepoxy :thinking:

https://github.com/milahu/nixpkgs/blob/qt-6-init/pkgs/development/libraries/qt-6/modules/qtbase.nix#L249
      epoxy # for gdk-3.0

It now may be a channel blocker. Not sure since I disabled aliases in my config, but it may well be.

Many of the qt6 changes might be worth backporting into 22.05; I didn't look at them properly.

maybe belongs to buildInputs

We should try to convert that way way to long propagated list completely into buildInputs. All programs that depend on qt6 draw these in and in qt5 you would sometimes need to create dev output only for propagated packages.


Correction for raw affiliation Université Montpellier 2, UMR AMAP, Montpellier34000, France

Correction needed for raw affiliation Université Montpellier 2, UMR AMAP, Montpellier34000, France
raw_affiliation_name: Université Montpellier 2, UMR AMAP, Montpellier34000, France
new_rors: 051escj72;020nks034
previous_rors: 051escj72
works_examples: W2109267514
contact: 8e6125ccc6648a3d884011e4d98ffd72:e873c18a41e1c0d94059a0c708ceeec5c0d4 @ inrae.fr

This issue was accepted and ingested by the OpenAlex team on 2024-11-18. The new affiliations should be visible within the next 7 days.


UI integration of instance and segment operations

Description
Adding Operations for Instances (Server & Broker)

Adding Operations for Segment

Codecov Report

Merging #6148 into master will decrease coverage by 21.10%.
The diff coverage is 49.14%.

@@             Coverage Diff             @@
##           master    #6148       +/-   ##
===========================================
- Coverage   66.44%   45.34%   -21.11%
===========================================
  Files        1075     1229      +154
  Lines       54773    58025     +3252
  Branches     8168     8561      +393
===========================================
- Hits        36396    26313    -10083
- Misses      15700    29558    +13858
+ Partials     2677     2154      -523

Flag
Coverage Δ

#integration
45.34% <49.14%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...ot/broker/broker/AllowAllAccessControlFactory.java
100.00% <ø> (ø)

.../helix/BrokerUserDefinedMessageHandlerFactory.java
52.83% <0.00%> (-13.84%)
:arrow_down:

...org/apache/pinot/broker/queryquota/HitCounter.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...che/pinot/broker/queryquota/MaxHitRateTracker.java
0.00% <0.00%> (ø)

...ache/pinot/broker/queryquota/QueryQuotaEntity.java
0.00% <0.00%> (-50.00%)
:arrow_down:

...ava/org/apache/pinot/client/AbstractResultSet.java
26.66% <0.00%> (-30.48%)
:arrow_down:

.../main/java/org/apache/pinot/client/Connection.java
22.22% <0.00%> (-26.62%)
:arrow_down:

.../org/apache/pinot/client/ResultTableResultSet.java
24.00% <0.00%> (-10.29%)
:arrow_down:

...not/common/assignment/InstancePartitionsUtils.java
64.28% <ø> (-8.89%)
:arrow_down:

.../apache/pinot/common/exception/QueryException.java
90.27% <ø> (+5.55%)
:arrow_up:

... and 1210 more

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 a910f5d...2eeca42. Read the comment docs.

Seems like I need to do mvn install to see the UI changes (as in, IDE does not build on its own). If there's a way to automate that, it would be nice.
Edit Tag does not seem to take the new tag. Edit Config works for editing/adding tags.
Drop: Says instance cannot be dropped as it is live.

@mayankshriv

Seems like I need to do mvn install to see the UI changes (as in, IDE does not build on its own). If there's a way to automate that, it would be nice.

Will check that out and see what can be done but as part of another PR.

Edit Tag does not seem to take the new tag. Edit Config works for editing/adding tags.

We need to press Enter, Space or Comma (,) to create tag pills, and only then that Tag will be saved. Users can add N number of tags and that's the reason the user needs to do an extra step.

Drop: Says instance cannot be dropped as it is live.

UI is showing the status sent by the backend on hitting the drop API.

@mayankshriv

Seems like I need to do mvn install to see the UI changes (as in, IDE does not build on its own). If there's a way to automate that, it would be nice.

Will check that out and see what can be done but as part of another PR.

Edit Tag does not seem to take the new tag. Edit Config works for editing/adding tags.

We need to press Enter, Space or Comma (,) to create tag pills, and only then that Tag will be saved. Users can add N number of tags and that's the reason the user needs to do an extra step.

Drop: Says instance cannot be dropped as it is live.

UI is showing the status sent by the backend on hitting the drop API.

Hey @shahsank3t , I’m seeing similar behavior as reported by Mayank for Edit Tags, but only for Server case. Broker works fine for me. Even in Server case, remove tag worked and edit config worked.
@mayankshriv the drop behavior is correct. I verified that the backend is returning the message. Something seems off at the backend side. I remember we used to be able to drop instances after table has been deleted. Will check that out.

@npawar @mayankshriv
made the changes so we no longer need to press "Enter", "Space" or "Comma" to make a chip before saving tags.

@npawar @mayankshriv
made the changes so we no longer need to press "Enter", "Space" or "Comma" to make a chip before saving tags.

Saw that it worked. Thanks


Update configuration.yaml

some streamlining

@ragibkl I added some zone lists but they do not seem to work, can you check that out? thank you


Question airports

In the airport file: what is the "angle" for in arrivals an why hasn´t the first array one?
"arrivals": [
{
"heading":   180,
"airlines":  [
["ual", 4],
["baw", 3],
["cessna", 1]
],
"frequency": [4, 6],
"altitude":  [7000, 9000]
},
{
"angle":     90,
"heading":   135,
"airlines":  [
["ual", 2],
["baw", 5],
["cessna", 1]
],
"frequency": [2, 4],
"altitude":  [6000, 8000]
},

@harp71 For arrivals "radial" and "heading" should be used to describe where the aircraft is created, and what initial heading it has. "angle" is not used in arrivals.


chore: add @odsod to CODEOWNERS

Will help with Dependabot updates and similar maintenance.

Codecov Report

Merging #46 (4bdf107) into master (f172dd6) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #46   +/-   ##
=======================================
  Coverage   45.96%   45.96%
=======================================
  Files           7        7
  Lines         124      124
=======================================
  Hits           57       57
  Misses         59       59
  Partials        8        8


build!: v2 rho prepare

Description

bump cosmos-sdk to v0.46.x ( currently v0.46.0 )
remove swap functionality ( circuit breaker enabled and deprecated on cosmos-hub )
bump package name to liquididty/v2

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (see CONTRIBUTING.md)
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards.
[ ] Wrote unit and integration tests
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added relevant godoc comments.
[ ] Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Review Codecov Report in the comment section below once CI passes

Codecov Report

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

@@            Coverage Diff            @@
##             master      #15   +/-   ##
=========================================
  Coverage          ?   24.13%
=========================================
  Files             ?       39
  Lines             ?    11289
  Branches          ?        0
=========================================
  Hits              ?     2725
  Misses            ?     8264
  Partials          ?      300

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 5afef73...f474dc4. Read the comment docs.

Hi @dongsam, can you please bump to sdk 0.46-rc1 ? we need this for rho, Thank you!

Hi @yaruwangway, I just released v2.0.0-rc1 which is based sdk 0.46.0-rc1

First of all, we released v2.0.0-rc3 based on the PR branch. We will release official v2.0.0 after confirming that there is no conflict or issue with other modules in the Rho upgrade PR

https://github.com/Gravity-Devs/liquidity/releases/tag/v2.0.0
final v2.0.0 released, which is using cosmos-sdk v0.46.0


SBT plugin for copy template files

@lauraluiz I think that is done as we used it in the training.

no, on second though it needs to be published as SBT plugin

Yep

Done 🎉
https://github.com/commercetools/commercetools-sunrise-java-theme-importer


providing consul acl token

Hello,
is there an option to provide the consul acl token as part of the consul config?
thank you!

@paperpunk you can provide an acl token on a per-request basis by including it in the opts parameter:
local ok, err = consul:put('/kv/foobar', 'My key value!', { token = "some_token" })
if not ok then
    ngx.log(ngx.ERR, err)
end

Would make a request with the token some_token:
/v1/kv/foobar?token=some_token

Closing in favour of #18


Make LocalGitIDLFileDAO read-only; add non-select() tests.

Codecov Report

Merging #31 into master will increase coverage by 1.75%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master     #31      +/-   ##
=========================================
+ Coverage   86.54%   88.3%   +1.75%
=========================================
  Files          75      75
  Lines         513     513
=========================================
+ Hits          444     453       +9
+ Misses         69      60       -9

Impacted Files
Coverage Δ

lib/org/chromium/webidl/LocalGitIDLFileDAO.js
79.59% <100%> (+8.16%)
:arrow_up:

lib/org/chromium/webidl/StoreAndForwardDAO.js
100% <0%> (+10.71%)
:arrow_up:

lib/org/chromium/webidl/DAOOperation.js
100% <0%> (+13.33%)
:arrow_up:

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 edc8bfb...5dd94fe. Read the comment docs.

Towards #4


Fix or suppress remaining Windows engine warnings

The Windows host engine build's stdout from a bot is currently about 125MB, and 1.6 million lines, because it has 250,000 warnings. This makes looking for errors—or even just loading it—quite painful.
Main categories:

~249,000: ~specified path differs in case from file name on disk This suggests this is a goma issue, and we just need to suppress the warning.~ Fixed
~900: ~The POSIX name for this item is deprecated. Almost all from Dart, mostly strdup. The fix is either to suppress them, or wrap them, as discussed in https://dart-review.googlesource.com/c/sdk/+/134781~ Fixed
~150: ~no newline at end of file. All (or very close to all) from ANGLE. Ideally we should just fix that upstream.~ Fixed.

After that it's just about 20 miscellaneous warnings, mostly conversion warnings in Dart and ANGLE. It would be nice to fix them, but 20 warnings would be a lot better than 250,000

conversion warnings in Dart and ANGLE

Now that Dart is working on adding a Windows clang-cl build, I expect they will fix the Dart parts of these.

I need to get the ANGLE roll done, then I'll take stock of what's left.

ANGLE roll is finally in. A bot build log is now a much more reasonable 6k lines and 500kb.
The remaining warnings from the run with the ANGLE fixes are:
../../flutter/third_party/tonic/filesystem\filesystem/file.h(24,22): warning: 'close' is deprecated: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _close. See online help for details. [-Wdeprecated-declarations]
../../flutter/third_party/tonic/file_loader/file_loader.cc(56,5): warning: 'close' is deprecated: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _close. See online help for details. [-Wdeprecated-declarations]
2 warnings generated.
../../flutter/third_party/tonic/filesystem\filesystem/file.h(24,22): warning: 'close' is deprecated: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _close. See online help for details. [-Wdeprecated-declarations]
1 warning generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
../../third_party/dart/runtime/bin/gen_snapshot.cc(632,26): warning: 'strdup' is deprecated: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strdup. See online help for details. [-Wdeprecated-declarations]
../../third_party/dart/runtime/bin/gen_snapshot.cc(641,15): warning: 'strdup' is deprecated: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strdup. See online help for details. [-Wdeprecated-declarations]
2 warnings generated.
../../third_party/dart/runtime/bin/gen_snapshot.cc(632,26): warning: 'strdup' is deprecated: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strdup. See online help for details. [-Wdeprecated-declarations]
../../third_party/dart/runtime/bin/gen_snapshot.cc(641,15): warning: 'strdup' is deprecated: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strdup. See online help for details. [-Wdeprecated-declarations]
2 warnings generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
1 warning generated.
clang-cl: warning: unknown argument ignored in clang-cl: '-fvisibility=hidden' [-Wunknown-argument]
[3678/5929] CXX obj/third_party/harfbuzz/src/harfbuzz_sources.hb-warning.obj
clang-cl: warning: unknown argument ignored in clang-cl: '-fvisibility=hidden' [-Wunknown-argument]
client_wrapper_glfw_unittests.flutter_window_unittests.obj : warning LNK4217: locally defined symbol FlutterDesktopWindowSetSizeLimits imported in function "private: virtual void __cdecl flutter::FlutterWindowTest_SetSizeLimits_Test::TestBody(void)" (?TestBody@FlutterWindowTest_SetSizeLimits_Test@flutter@@EEAAXXZ)
client_wrapper_windows_unittests.flutter_view_unittests.obj : warning LNK4217: locally defined symbol FlutterDesktopViewGetHWND imported in function "private: virtual void __cdecl flutter::FlutterViewTest_HwndAccessPassesThrough_Test::TestBody(void)" (?TestBody@FlutterViewTest_HwndAccessPassesThrough_Test@flutter@@EEAAXXZ)
client_wrapper_windows_unittests.plugin_registrar_windows_unittests.obj : warning LNK4217: locally defined symbol FlutterDesktopRegistrarGetView imported in function "public: __cdecl flutter::PluginRegistrarWindows::PluginRegistrarWindows(struct FlutterDesktopPluginRegistrar *)" (??0PluginRegistrarWindows@flutter@@QEAA@PEAUFlutterDesktopPluginRegistrar@@@Z)

Tonic is ours despite being in third_party, if I'm understanding correctly? If so we should use _close there.
I've updated https://github.com/dart-lang/sdk/issues/40448 with the remaining Dart bugs.
The harfbuzz thing is probably a mistake in our build configuration for clang-cl
LNK4217 in the tests is a mistake in how the Windows embedding tests are handling import/export macros, which I should fix.

Removing assignment and milestone since the really important part of this is done; we should certainly still fix the last warnings, but it doesn't necessarily need to be a priority.

After that it's just about 20 miscellaneous warning

I forgot that log was from an incremental build. I just did a clean, local, debug (not debug_unopt) build and had 656 warnings:

430 unknown argument ignored in clang-cl: '-fvisibility=hidden' [-Wunknown-argument] from third_party/icu
154 instantiation of variable '[...]' required here, but no definition is available [-Wundefined-var-template] in third_party/swiftshader/third_party/subzero
28 The POSIX name for this item is deprecated. for various functions, from third_party/tonic, third_party/swiftshader, and a few left in third_party/dart (as noted here)
21 no newline at end of file [-Wnewline-eof] in third_party/swiftshader
-12 implicit conversion from '[some form of int]' to 'float' changes value [...] [-Wimplicit-int-'float-conversion] in third_party/angle, third_party/icu, and third_party/swiftshader
10 warning: '#pragma optimize' is not supported [-Wignored-pragma-optimize] in third_party/dart and third_party/icu
1 result of comparison of constant<PHONE_NUMBER>213693944 with expression of type 'unsigned int' is always false [-Wtautological-constant-out-of-range-compare] in third_party/libpng

It looks like the main thing is to change the compilation settings we're using for icu and swiftshader.

Looks like we could fix at least the 430 by just rolling ICU forward: https://chromium-review.googlesource.com/c/chromium/deps/icu/+/2250687

../../third_party/dart/runtime\vm/compiler/asm_intrinsifier.h(37,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]

https://dart-review.googlesource.com/c/sdk/+/162901

It looks like the main thing is to change the compilation settings we're using for icu and swiftshader.

The build files for both are coming from the upstream repos, not our local buildroot, so changes will need to be upstreamed.

Swiftshader is done in flutter/engine#32633

libpng done in https://github.com/flutter/engine/pull/32688

After https://github.com/flutter/engine/pull/32694 lands, ICU, tonic, and Dart are resolved. At this point libangle is the only remaining target with warning spam on Windows. It hasn't rolled in ~a year, so giving that a go first.

As of https://github.com/flutter/engine/pull/32785 ANGLE is rolled and Win32 builds produce no warning output. Closing.
$ autoninja -C ../out/host_debug_unopt/
"C:\src\depot_tools\ninja.exe" -C ../out/host_debug_unopt/ -j 26
ninja: Entering directory `../out/host_debug_unopt/'
[5700/5700] STAMP obj/default.stamp


Cell limit exceeded

Using Export-Excel with columns that contain > 32,767 characters (see Excel specifications and limits) will result in a corrupt Excel file. When opening, Excel will show the error message: "We found a problem with some content in 'test.xlsx. Do you want us to try to recover as much as we can? If you trust the source of this workbook, click Yes."

Proof:
[PSCustomObject] @{
        'TooLarge' = '*' * 32768
    } | Export-Excel -Path $env:TEMP\test.xlsx -NoHeader

Tested with:

ImportExcel 7.4.1
PowerShell 5.1.19041.1645
Excel for Microsoft 365

Yup, it's a limitation.


Pipe table parsing deviation

godjot's output for pipe tables does not match the reference djot. The issue presents when the table contains multiple headers (which is specifically allowed by the spec).
Here's a small sample to produce the issue:
| XXX, XXXXX          | XXXXXX          | XXXXXX           |
|---------------------|-----------------|------------------|
| XXXXX XXXX          | XXXX-XX XXXX    | XXXXXXXXX, XX    |
| XXXXX XXXXX (X)     | XX:XXXX         | X:XXXX           |
|                     |                 |                  |
| XXX, XXXXX          | XXXXXX          | XXXXXX           |
|---------------------|-----------------|------------------|
| XXXXX XXXX          | XXXXXXXXX, XX   | XXXXXX, XX       |
| XXXXX XXXXXXX+ (X)  | X:XXXX          | XX:XXXX          |
|                     |                 |                  |
| XXX, XXXXX          | XXXXXX          | XXXXXX           |
|---------------------|-----------------|------------------|
| XXXXX XXXX          | XXXXXX, XX      | XXXX-XX XXXX     |
| XXXXX XXXXX (X)     | X:XXXX          | X:XXXX           |

Then to produce the test output:
$ <sample.dj >godjot.html godjot
$ <sample.dj >djot.html djot

and to show the difference, run diff godjot.html djot.html:
13,15c13,20
< XXXXX XXXXX (X)
< XX:XXXX
< X:XXXX
---
> XXXXX XXXXX (X)
> XX:XXXX
> X:XXXX
>

>

>
>
>
28,30c33,40
< XXXXX XXXXXXX+ (X)
< X:XXXX
< XX:XXXX
---
> XXXXX XXXXXXX+ (X)
> X:XXXX
> XX:XXXX
>

>

>
>
>

The difference is significant, by which I mean it's not simply formatting; the parser produces a completely different AST. Or, maybe the HTML renderer is processing the AST incorrectly -- I haven't yet written a sample program to detect which is happening. But I suspect the parser.
I'm running godjot installed with go install github.com/sivukhin/godjot@latest, which appears to be v1.0.3:
github.com/sivukhin/godjot v1.0.3 h1:ygvKHn+b2vP+lpKYCHT1PCJiSeDJrpJARXmBdWZVCsg=
github.com/sivukhin/godjot v1.0.3/go.mod h1:wA6KdR4Z+XpwdwyViPDLWYYxT72pKjNc6XGA9I025gM=

And compiled with go1.22.4 linux/amd64

Hi @xxxserxxx! Thanks for the great sample to reproduce the bug!
The issue were in the pipe separators detection logic. I already fixed it in the PR #7 and published<EMAIL_ADDRESS>which should resolve your issue.
Now, godjot produce exactly the same output as original djot implementation on your example.

Beautiful. Thanks for the quick response!


⬆🔥: upgrade gh/satori/go.uuid and remove usages of it where possible

Description
That library seems dead and we have to replace it, which would be a breaking change as it's part of the public interface of the old CloudDNS client.
For now, upgrading to latest master version fixes a security issue.
This PR also removes all usages not part of a public interface, so removing the whole dependency will be possible when the (already deprecated) old CloudDNS client is gone.
Checklist

[ ] added release notes to Unreleased section in CHANGELOG.md, if user facing change

References

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

CI fails due to regression in CloudDNS API (ENGSUP-5697), but I think we can merge this anyway


update Ollama in a Docker container

When I use Docker to run, it has already pulled the main branch and updated to the latest files. However, when I run ollama -v inside, it still shows version 0.1.33. On the other hand, using local installation and updating via curl successfully updates to version 0.1.38. How can I update Ollama running in a Docker container? I don’t want to delete the container every time and perform a complete pull operation again. Is there a way around this?

We generate "latest" tags as well as version specific tags.  https://hub.docker.com/r/ollama/ollama/tags
With Docker, if you run ollama/ollama (implying "latest") it will only pull once, and subsequent run commands will re-use that image, even if the "latest" tag has been replaced with a new version.   To explicitly get the "latest", use docker pull ollama/ollama which will always check and refresh if there's a new "latest" tag, or you can pin to a specific version (e.g. ollama/ollama:0.1.38)  This behavior is specific to Docker.  For example, Kubernetes will always refresh the "latest" tag.

With Docker, if you run ollama/ollama (implying "latest") it will only pull once, and subsequent run commands will re-use that image, even if the "latest" tag has been replaced with a new version. To explicitly get the "latest", use docker pull ollama/ollama which will always check and refresh if there's a new "latest" tag, or you can pin to a specific version (e.g. ollama/ollama:0.1.38) This behavior is specific to Docker. For example, Kubernetes will always refresh the "latest" tag.

We need to create a new container for a newer image of ollama. In this case are we gonna download all the modelfiles and checkpoints again?

We need to create a new container for a newer image of ollama. In this case are we gonna download all the modelfiles and checkpoints again?

If you follow our recommend Docker run command, the model directory is mounted from the host with -v ollama:/root/.ollama and will be preserved.  If you're using a different orchestrator like Kubernetes, you'll want to set up a PVC or equivalent persistent volume strategy to ensure the model dir is preserved across container instances to avoid re-pulling the models.


fix beaker tests

DO NOT MERGE (this is just a to troubleshoot the workspace builds)
Seems that the beacker tests are sporadicly failing when running the
following command
dig +dnssec dnssec-failed.org @localhost
Try fixing this by using <IP_ADDRESS> and +tcp

Given modulesync 4.0.0 was merged, I think this can be closed now.


Add dates to changelog entries

This should probably be a feature for a release-line-generator unless there's a specific reason to push it back to the platform.
It does start moving us towards a place where a lot of 'generic' release plans are likely going to be worse than 'opinionated ones (Do you want GH links, or dates is not a good question, but having 30 generators with duplicated code to cover all cases seems bad).
The above point likely gets pushed into any conversation around how we do changelog generators in the future.

Any pointers on how to go about doing this. I'm happy to create a PR as it's needed in a project I'm working on https://github.com/remirror/remirror

There is a slight problem with adding dates to the recommended publish flow. When using our changesets/action a versioning PR is being created, such as this one - https://github.com/atlassian/changesets/pull/384 . Later on, you decide when to do the actual release by merging such PR. Problem is that those 2 points in time - when changelogs are updated and when packages are published - are totally different and there is no easy way to add the appropriate date (from when packages were actually published) to those previously updated changelogs.

What if the changelog date just reflected the most recent versioning PR update? It actually doesn't matter much for me whether the date is the "actual" publish date or the date that the PR was last updated.
I tend to use the changelog dates to get a feel for the release regularity of the project.
Imaging a changelog has the following versions:

0.6.0
0.6.1
0.6.2

It makes a difference if there's a year between each of these dates or a single day. A longer time frame suggests the project is pretty mature whilst the shorter time frames imply a very active project. I don't think it's as important that the date corresponds to the exact npm release date, or git tag date. There are other tools for retrieving that information.

Hi @Andarist - is there any appetite to continue with this one? Seems like there was some in-principle agreement to add it as an experimental feature in the PR back in 2020. Given this is "opt in" the date the generated PR was raised for the release still seems like a nice step in the right direction.

I just came across this and would really like the ability to add the date next to the version, for very similar reasons as @ifiokjr described.
I don't know much about the internals, but from an API perspective, it seems like this would naturally fit in with the existing API for configuring the changelog format as described in https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md.
Thoughts on this approach?

Who doesn't want to know when a release was made? That's such a basic feature.
I'm always having to dig through git log to track down when the CHANGELOG.md file was changed to add a version. 🤦

I can't believe it's not possible to add a date next to the version number. Could you please add it to the API?

We could add the date at the bottom of the version
0.0.1

October 19, 2024

Patch Changes

b001be2: Initial release

I've had to write a few scripts to get around limitations of this library. For the script that runs changeset version (with a .js wrapper to deal with NPM workspaces) follows with a line to add the current date onto the newest version heading:
node local/changeset.js version
git diff --quiet && exit 0 # exit as success if no change
DATE=$(date -I); sed -i -E "1,/^## / s/(^## [0-9\.]*)$/\1 on $DATE/" CHANGELOG.md
# ... git commit && git tag && git push


PeerConnection: more thread-safe

Description
now proctected by lock:

CreateOffer
CreateAnswer
AddTransceiverFromKind
AddTransceiverFromTrack

newRTPTransceiver is no longer a PeerConnection method;
pc.addRTPTransceiver would fire onNegotiationNeeded;
pc.AddTrack, pc.RemoveTrack now hold lock for the entire function;

=== RUN   TestNegotiationNeededStressOneSided
    peerconnection_renegotiation_test.go:946:
        	Error Trace:	peerconnection_renegotiation_test.go:946
        	Error:      	Not equal:
        	            	expected: 500
        	            	actual  : 19
        	Test:       	TestNegotiationNeededStressOneSided
    peerconnection_renegotiation_test.go:932:
        	Error Trace:	peerconnection_renegotiation_test.go:932
        	            				peerconnection.go:345
        	            				operations.go:84
        	            				asm_amd64.s:1371
        	Error:      	Received unexpected error:
        	            	InvalidStateError: connection closed
        	Test:       	TestNegotiationNeededStressOneSided
--- FAIL: TestNegotiationNeededStressOneSided (0.46s)

This test failed because pcA.ops.Done() currently cannot ensure all OnNegotiationNeeded events are handled already.
func TestNegotiationNeededStressOneSided(t *testing.T) {
	lim := test.TimeOut(time.Second * 30)
	defer lim.Stop()

	report := test.CheckRoutines(t)
	defer report()

	pcA, pcB, err := newPair()
	assert.NoError(t, err)

	pcA.OnNegotiationNeeded(func() {
		assert.NoError(t, signalPair(pcA, pcB))
	})

	const expectedTrackCount = 500
	for i := 0; i < expectedTrackCount; i++ {
		track, err := NewTrackLocalStaticSample(RTPCodecCapability{MimeType: "video/vp8"}, "video", "pion")
		assert.NoError(t, err)

		_, err = pcA.AddTrack(track)
		assert.NoError(t, err)
	}

	pcA.ops.Done()

	assert.Equal(t, expectedTrackCount, len(pcB.GetTransceivers()))
	closePairNow(t, pcA, pcB)
}

Really great work on this @zyxar this is hard and underappreciated work. Refactoring and having you in those code really helps the long term health of the project.
I will try and help soon!

=== RUN   TestNegotiationNeededStressOneSided
    peerconnection_renegotiation_test.go:946:
        	Error Trace:	peerconnection_renegotiation_test.go:946
        	Error:      	Not equal:
        	            	expected: 500
        	            	actual  : 19
        	Test:       	TestNegotiationNeededStressOneSided
    peerconnection_renegotiation_test.go:932:
        	Error Trace:	peerconnection_renegotiation_test.go:932
        	            				peerconnection.go:345
        	            				operations.go:84
        	            				asm_amd64.s:1371
        	Error:      	Received unexpected error:
        	            	InvalidStateError: connection closed
        	Test:       	TestNegotiationNeededStressOneSided
--- FAIL: TestNegotiationNeededStressOneSided (0.46s)

This test failed because pcA.ops.Done() currently cannot ensure all OnNegotiationNeeded events are handled already.
func TestNegotiationNeededStressOneSided(t *testing.T) {
	lim := test.TimeOut(time.Second * 30)
	defer lim.Stop()

	report := test.CheckRoutines(t)
	defer report()

	pcA, pcB, err := newPair()
	assert.NoError(t, err)

	pcA.OnNegotiationNeeded(func() {
		assert.NoError(t, signalPair(pcA, pcB))
	})

	const expectedTrackCount = 500
	for i := 0; i < expectedTrackCount; i++ {
		track, err := NewTrackLocalStaticSample(RTPCodecCapability{MimeType: "video/vp8"}, "video", "pion")
		assert.NoError(t, err)

		_, err = pcA.AddTrack(track)
		assert.NoError(t, err)
	}

	pcA.ops.Done()

	assert.Equal(t, expectedTrackCount, len(pcB.GetTransceivers()))
	closePairNow(t, pcA, pcB)
}

probably because of
func (pc *PeerConnection) negotiationNeededOp() {
	// Don't run NegotiatedNeeded checks if OnNegotiationNeeded is not set
	if handler := pc.onNegotiationNeededHandler.Load(); handler == nil {
		return
	}

	// https://www.w3.org/TR/webrtc/#updating-the-negotiation-needed-flag
	// Step 2.1
	if pc.isClosed.get() {
		return
	}
	// non-canon step 2.2
	if !pc.ops.IsEmpty() {
		pc.ops.Enqueue(pc.negotiationNeededOp)
		return
	}

	// non-canon, run again if there was a request
	defer func() {
		pc.mu.Lock()
		defer pc.mu.Unlock()
		if pc.negotiationNeededState == negotiationNeededStateQueue {
			defer pc.onNegotiationNeeded()
		}
		pc.negotiationNeededState = negotiationNeededStateEmpty
	}()

the defer pc.onNegotiationNeeded() in deferred func would also enqueue pc.ops, but run by another routine.

Great changes!
I wish Go had guarded_by might be an interesting conversation for go-nuts or reddit!


Add Number of objects in space (United States Space Force, 2023)

This migrates the previous Python script to the ETL, to import data from Space-Track.org

@Marigold @pabloarosado Does one of you see what I'm doing wrong here? It seems I'm misusing rename in some way, but I'm simply renaming columns in the traditional pandas way.
Build: https://buildkite.com/our-world-in-data/etl-unit-tests/builds/5531#0188a0fa-fddc-482f-ad6c-c7930d74d9a0
File: https://github.com/owid/etl/blob/17ed20697f26d659e55db0523fc4b4312689ed9c/etl/steps/data/garden/space/2023-06-09/space_track.py#L54

@edomt it's just a nasty typing issue (result of reset_index is FrameOrSeries and it's unclear what its rename method is). Add # type: ignore like this
leo_by_type = (
        pd.concat(dataframes).reset_index(drop=True).rename(columns={"object_type": "entity", "size": "objects"})
    )  # type: ignore


It gets blocked when executing python binding during installation from source

Note: Providing complete information in the most concise form is the best way to get help. This issue template serves as the checklist for essential information to most of the technical issues and bug reports. For non-technical issues and feature requests, feel free to present the information in what you believe is the best form.
For Q & A and discussion, please start a discussion thread at https://discuss.mxnet.io
Description
Build mxnet from source successfully. However, it always gets blocked when executing python binding.
Environment info (Required)
Centos Red Hat 4.8.5-16
GCC 4.8.5
What to do:
1. Download the diagnosis script from https://raw.githubusercontent.com/apache/incubator-mxnet/master/tools/diagnose.py
2. Run the script using `python diagnose.py` and paste its output here.

```----------Python Info----------
('Version      :', '2.7.5')
('Compiler     :', 'GCC 4.8.5 20150623 (Red Hat 4.8.5-16)')
('Build        :', ('default', 'Aug  4 2017 00:39:18'))
('Arch         :', ('64bit', 'ELF'))
------------Pip Info-----------
('Version      :', '10.0.0')
('Directory    :', '/home/linliu/test_env/lib/python2.7/site-packages/pip')
----------MXNet Info-----------
No MXNet installed.
----------System Info----------
('Platform     :', 'Linux-3.10.0-693.el7.x86_64-x86_64-with-centos-7.4.1708-Core')
('system       :', 'Linux')
('node         :', 'mlt-bdw035')
('release      :', '3.10.0-693.el7.x86_64')
('version      :', '#1 SMP Tue Aug 22 21:09:27 UTC 2017')
----------Hardware Info----------
('machine      :', 'x86_64')
('processor    :', 'x86_64')
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                44
On-line CPU(s) list:   0-43
Thread(s) per core:    1
Core(s) per socket:    22
Socket(s):             2
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 79
Model name:            Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz
Stepping:              1
CPU MHz:               1204.500
CPU max MHz:           3600.0000
CPU min MHz:           1200.0000
BogoMIPS:              4389.75
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              56320K
NUMA node0 CPU(s):     0-43
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb cat_l3 cdp_l3 intel_pt tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdt_a rdseed adx smap xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts
----------Network Test----------
Setting timeout: 10
Timing for MXNet: https://github.com/apache/incubator-mxnet, DNS: 0.0115 sec, LOAD: 1.3969 sec.
Timing for PYPI: https://pypi.python.org/pypi/pip, DNS: 0.0272 sec, LOAD: 0.5419 sec.
Timing for FashionMNIST: https://apache-mxnet.s3-accelerate.dualstack.amazonaws.com/gluon/dataset/fashion-mnist/train-labels-idx1-ubyte.gz, DNS: 0.0861 sec, LOAD: 1.2367 sec.
Timing for Conda: https://repo.continuum.io/pkgs/free/, DNS: 0.0077 sec, LOAD: 0.8532 sec.
Timing for Gluon Tutorial(en): http://gluon.mxnet.io, DNS: 0.1732 sec, LOAD: 0.6349 sec.
Timing for Gluon Tutorial(cn): https://zh.gluon.ai, DNS: 0.0083 sec, LOAD: 1.3902 sec.

Package used (Python/R/Scala/Julia):
(I'm using ...)
Python
## Build info (Required if built from source)

Compiler (gcc/clang/mingw/visual studio): gcc

MXNet commit hash:
(Paste the output of `git rev-parse HEAD` here.)

Build config:
(Paste the content of config.mk, or the build command.)

## Error Message:
(Paste the complete error message, including stack trace.)
There is no error message. It just gets blocked and cannot continue when executing $ pip install -e .
Like :
(test_env)[linliu@mlt-bdw035 python]$ pip install -e .
Obtaining file:///home/linliu/incubator-mxnet/python

## Minimum reproducible example
(If you are using your own code, please provide a short script that reproduces the error. Otherwise, please provide link to the existing example.)

## Steps to reproduce
(Paste the commands you ran that produced the error.)

1. make -j20 USE_OPENCV=1 USE_MKLDNN=1 USE_BLAS=mkl
##Successfully build libmxnet.so
2. cd python
3.pip install -e .

## What have you tried to solve it?

1.
2.

Set 'USE_OPERATOR_TUNING = 0', It sometimes block executing in Ubuntu and always block executing in Windows.

@chinakook  You really helps a lot!


Leukemia patient to main

see code review at https://github.com/imallona/rock_roi_paper/pull/9

Hi @gimoro I added some comments but to be honest I don't understand much of the workflow. I see you have some conflicts to main but only under the 07 folder/task; feel free to merge yours (e.g. your branch takes precedence)

Some of the comments/questions are unanswered but looks good, I'd suggest merging the PR (ideally with these closed/addressed first)


Audio threshold + auto start-stop

Don't transcribe if audio input is below a certain level, because:

Even when microphone is muted it allows some sound to bleed through it seems?
Someone might forget to mute their microphone and might be picked up by the captions but not loud enough to actually hear.
When two speakers are close together they'll get picked up by both microphones, when we only want them to be captioned once.

Also, if there is silence for more than let's say, 30 seconds. We want to stop the transcription service because the Google API limits us to 300 second long streams. Oh, and it costs money. People might forget to disable the service during lunch or overnight and then that's $2 per hour wasted on transcribing silence.

Added volume threshold with 66bcdeb11776629b1b24bed02b835a05565dcdba
Still need to add auto start-stop

#10


Revert "[Build] Pass object files via a file to Swift compiler"

This reverts commit f8a0af1d5337da601d78c2c076833dd45104113c.

@swift-ci please smoke test

Second attempt: https://github.com/apple/swift-package-manager/pull/1626


"LevelDBError: Corruption: CURRENT file does not end with newline"  database recovery was not possible

What steps will reproduce the problem?
1. we tested synchronous and async write operations
2. while writing a big block of data we turned of the PC
3. on the next computer start: LevelDBError: Corruption: CURRENT file does not
end with newline

Database recovery did not start automatically.
We were unable to recover the database

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 26 Jan 2012 at 2:04

Yesterday's release (git commit 3c8be108bfb5) should have fixed this.

Original comment by<EMAIL_ADDRESS>on 26 Jan 2012 at 4:44

Changed state: Fixed


Develop

What kind of change does this PR introduce?

Does this PR introduce a breaking change?

What needs to be documented once your changes are merged?

👷 Deploy Preview for betsweatwin processing.

Name
Link

🔨 Latest commit
46eee8a16417854a334ac27b732ee7b2ce071f23

🔍 Latest deploy log
https://app.netlify.com/sites/betsweatwin/deploys/6535d231dbcf3a000724e174


Project members user management pages

Refactor Member List in Project Members Page

Fixed 2 actions of table row
Added form edit member dialog
Added delete member alert dialog
Fixed: Button cannot be clickable while user is submitting
Navigate to create new member page in NoData status & list page
4 status of list page: data-loaded, isLoading, NoData, NoSearchData
Member List Demo is below
https://github.com/user-attachments/assets/315cd560-905b-4d26-8392-25285379ec8f

Refactored 4 form dialogs in User Management Page

Added 4 actions of table row for removing admin, resetting password, editing users, deleting users
Remove Admin Dialog
Reset Password Dialog
Edit User Dialog
Delete User Dialog
4 status of list page: data-loaded, isLoading, NoData, NoSearchData
Navigate to create new member page in NoData status & list page
User Management Demo is below
https://github.com/user-attachments/assets/aa4ac80f-47f6-4cd0-bf5b-32e585012d3a

Based on considering of the size of files in this PR and some discussions, my next step is migrating handleEvent function to the page (but not in the component) in this PR so it's easier for api integration. Other than that, those upcoming fixes like migrating types, enums, flex-gap will be another separate small PRs so it will be easier for us to review them. Big thanks for taking time to review it and all suggestions.
cc: @vardanbansal-harness , @cjlee01 , @abhinavrastogi-harness, @sans-harness


the initial setup of moving installations into the exhibitions fold

Ref #3738
First step:

Pull out Exhibition and Installation as components, then render them appropriately from the exhibition page.

@jennpb added a screenshot to the above

As a point, releasing this will not do anything.


gvproxy: Split --listen features in 2 separate args

--listen defines the sockets that will be used for gvproxy REST API https://github.com/containers/gvisor-tap-vsock/blob/72b102d1d443d6d02e4c04f5c2af809e4c2e0910/pkg/virtualnetwork/mux.go#L19-L31
This exposes the /connect API endpoint, which is used for network connectivity when gvforwarder/vm is running in the guest, a /services endpoint providing port forwarding, DNS, DHCP,  a /stat endpoint, ...
Since there are other ways to get network connectivity without using /connect (--listen-vfkit, --listen-bess, ...), it's desirable to be able to enable the service/stats/... endpoints without enabling /connect.
It's better to add a separate option(s) for this, as at this point, there could be users relying on gvproxy --listen current behaviour.
https://github.com/containers/gvisor-tap-vsock/issues/78 is a distinct issue, the /services/forwarder API endpoint is unconditionally enabled in the guest, which might have security implications. Being able to disable it would be useful.

On linux, podman machine's gvproxy command line is:
/usr/local/lib/podman/gvproxy -debug -mtu 1500 -ssh-port 41117 -listen-qemu unix:///run/user/1000/podman/crc-gvproxy.sock -forward-sock /run/user/1000/podman/crc-api.sock -forward-dest /run/user/1000/podman/podman.sock -forward-user core -forward-identity /var/home/teuf/.crc/cache/crc_microshift_libvirt_4.16.18_amd64/id_ecdsa_crc -pid-file /run/user/1000/podman/gvproxy.pid -log-file /run/user/1000/podman/gvproxy.log

It is similar on other platforms.

The issue could actually be rephrased as "it should be possible to start gvproxy using --listen-qemu/--listen-vfkit/...,  while  still being able to use the /services endpoint from the host", which is not really possible at the moment, or not really convenient/obvious as --listen needs to be specified for that.


How is the "check_etcd" task for vault installation supposed to work without specifying a client cert/key ?

I am very new to Kubespray so I might just be missing something obvious but when i try to deploy my cluster i am getting a failure like :
TASK [vault : check_etcd | Check if etcd is up and reachable] *****************************************************************************************************************************************************************************************************************************************************************
task path: /home/fciocchetti/Work/satoshi/kubespray/roles/vault/tasks/shared/check_etcd.yml:3
Thursday 26 April 2018  17:11:23 +0100 (0:00:00.259)       0:01:51.769 ********
fatal: [etcd01]: FAILED! => {
    "msg": "The conditional check 'vault_etcd_health_check.status == 200 or vault_etcd_health_check.status == 401' failed. The error was: error while evaluating conditional (vault_etcd_health_check.status == 200 or vault_etcd_health_check.status == 401): 'dict object' has no attribute 'status'"
}

I have setup my ETCD cluster to require client auth on all connections  ( which is the default as far as i can tell )
~/.../kubespray >>> ack ETCD_CLIENT_CERT_AUTH=
roles/etcd/templates/etcd-events.env.j2
24:ETCD_CLIENT_CERT_AUTH={{ etcd_secure_client | lower}}

roles/etcd/templates/etcd.env.j2
24:ETCD_CLIENT_CERT_AUTH={{ etcd_secure_client | lower}}
~/.../kubespray >>> ack etcd_secure_client
roles/etcd/defaults/main.yml
50:etcd_secure_client: true

But in the URI task that check for the ETCD Cluster to be alive there is no option for using the client certificate and key and so it fails
https://github.com/kubernetes-incubator/kubespray/blob/9168c71359579ceee89ace587a42092e08f1e93c/roles/vault/tasks/shared/check_etcd.yml#L3-L8
I can also reproduce the issue with a simple ansible command as
~/.../kubespray >>> ansible -i inventory/dev1/hosts.ini etcd01 -e ansible_python_interpreter=/opt/bin/python -m uri -a "url=https://localhost:2379/health validate_certs=no"
etcd01 | FAILED! => {
    "changed": false,
    "content": "",
    "msg": "Status code was -1 and not [200]: Request failed: <urlopen error [SSL: SSLV3_ALERT_BAD_CERTIFICATE] sslv3 alert bad certificate>",
    "redirected": false,
    "status": -1,
    "url": "https://localhost:2379/health"
}
~/.../kubespray >>> ansible -i inventory/dev1/hosts.ini etcd01 -b -e ansible_python_interpreter=/opt/bin/python -m uri -a "url=https://localhost:2379/health validate_certs=no client_cert=/etc/ssl/etcd/ssl/node-etcd01.pem client_key=/etc/ssl/etcd/ssl/node-etcd01-key.pem"
etcd01 | SUCCESS => {
    "changed": false,
    "connection": "close",
    "content_length": "18",
    "content_type": "text/plain; charset=utf-8",
    "cookies": {},
    "date": "Thu, 26 Apr 2018 16:26:33 GMT",
    "json": {
        "health": "true"
    },
    "msg": "OK (18 bytes)",
    "redirected": false,
    "status": 200,
    "url": "https://localhost:2379/health"
}

Am I Missing something ?
Thanks!

Edit, i just realized by issue is not due to that ( at least not yet ) since my URL is being built as :  {"url": "https://<IP_ADDRESS>:2379,https://<IP_ADDRESS>:2379,https://<IP_ADDRESS>:2379/health" ... }
Which is wrong obviously

8860997 was a bit too much, I am still working on that. I am unsure whether it is a good idea to check for certificate presence to determine etcd status or just call a ps aux as a fist condition. I am open for comments/suggestions.


Retry Until failure leads to afterscenario not running

I have a scenario that needs to temporarily change a configuration setting to do its job.  Whether the scenario passes or fails, I need to set the configuration setting back in an afterscenario.  This was working fine up through version 1.0.1.  After upgrading to 1.2.0.RC4, the afterscenario does not run when a failure occurs because of an unfulfilled Retry Until condition in a utility feature that is called indirectly.
Please see the demo project for a condensed example.
Thanks in advance!
tempdemo.zip

wow that's a real edge case. tagging as help wanted

@ptrthomas Kindly refer to the below PR which have the relevant fixes for the above issue as mentioned from @4jphennessey !
https://github.com/karatelabs/karate/pull/2065

@4jphennessey by any chance if you can confirm the latest develop branch solves your problem, that will save me a bit of time: https://github.com/karatelabs/karate/wiki/Developer-Guide

I spent about 2 hours on this ZIP file and I'm sorry I can't follow the code, it is just too complex. I wasn't able to even see if it works with the develop version since I can't see the logs and everything is configured wrong
here is a simple single feature file that shows everything works fine:
Feature:

Background:
* configure afterScenario = function(){ karate.log('*** after scenario') }
* configure retry = { count: 2, interval: 200 }

Scenario:
* url 'https://httpbin.org/get'
* retry until false
* method get

I'm closing this. if you see a problem in develop please submit a better example and I would much prefer a maven project if that's possible, thanks

@ptrthomas I see that issue is not fixed yet.
I saw your comment, but you need not to log something, you need to send a request, and in this case problem will appear

@PavelKozhukhar follow this process please: https://github.com/karatelabs/karate/wiki/How-to-Submit-an-Issue

@ptrthomas Check this:
myproject 2.zip
Main issue is when project is builded via maven -- there are no problems. But, when it builded via gradle -- issue is appearing. Also, it's not appearing in your code, you need to call external feature to see the problem

@PavelKozhukhar I simply don't have the time to dig into this. am considering this a wont fix unless I can get a) a maven project and b) a simple example

@PavelKozhukhar I also feel if you use a prefix like classpath: or this: it may work: https://github.com/karatelabs/karate#path-prefixes

@ptrthomas I attached an example project in my previous comment, what else should I provide?

@PavelKozhukhar fine, I'm re-opening and tagging as help wanted

closing as wontfix unless we get a simple working example, I'm okay to declare that retry until has limitations. for complex needs the guidance is that you should use an execution hook instead of afterScenario. anyone is welcome to contribute code of course


Syntax error in R3 System

Hi Ludwig,
first: thanks for the great plugins and the effort you put in.
I have an issue regarding the abap code search plugin. After installing the backend and the plugin the following error occured:

I think using offset is not possible in R3.
Maybe you can fix this or provide one branch for R3 and one for S4?
Thank in advance
Julian

Hi Julian,
the plug-in is compatible with R3. But the minimum requirement is NW 7.40 SP08.

Currently it is not planned from my side to release a version that is compatible with a lower SP on 7.40 or even a version compatible with < 7.40.
Best regards,
Ludwig

Hi Ludwig,
ahh we got 7.50 but SP only 0025.
Sorry, my bad.
Best regards,
Julian

Hm...
I would have thought that 7.50 would have all changes of 7.40 SP08

I have the Code Search installed and running on another system with 7.50 SP18

Hi Ludwig,
i asked our basis team internally. The following answer was received:
With the next kernel patch all 7.40 and 7.50 will get the bug, see sap note 3279914:
https://launchpad.support.sap.com/#/notes/3279914/D.
Can you possibly rebuild it?
Maybe you can use the coding in the note:
The "SELECT .... INTO TABLE @itab LIMIT @limit@ OFFSET @offset." can be simulated like this:
OPEN CURSOR @ FOR SELECT ....
FETCH NEXT CURSOR @ INTO TABLE @itab PACKAGE SIZE @offset.
if offset < lines( itab ).
FETCH NEXT CURSOR @ INTO TABLE @itab PACKAGE SIZE @limit.
else.
clear itab. "offset >= lines( itab ) means nothing found.
endif.
Best regards,
Julian

Hi Julian,
I am not sure SAP knows how the OPEN/FETCH CURSOR clause is working. Or at least not the person who added this workaround in the note. This approach would never return any data in my case and the search would run endlessly without ever returning any data.
I think the best/only solution would be to implement the SELECT in native SQL for NW < 7.51.
Could you tell me the DB you are using on your ABAP system, then I would try to implement a solution that works with that one first.
BR
Ludwig

Hi Ludwig,
i haven´t used the OPEN/FETCH CURSOR clause yet. Feel free to fix it the way you want :)
We are using an oracle database based on release <IP_ADDRESS>.0.
Do you need any further information?
Thanks for your effort.
Best regards,
Julian

I am not sure how the chances are that SAP only added a syntax check for the OFFSET clause, but in a dynamic context it would still work.
But maybe you could check on your system if the following code snippet would run successfully or not 😊.
DATA: source_lines   TYPE TABLE OF string,
      temp_prog_name TYPE progname.

source_lines = VALUE #(
( |REPORT z_open_sql_offset_test.| )
( || )
( |FORM run_select.| )
( | SELECT obj_name| )
( |   FROM tadir| )
( |   ORDER BY obj_name| )
( |   INTO TABLE @DATA(result)| )
( |   OFFSET 20| )
( |   UP TO 10 ROWS.| )
( || )
( | cl_demo_output=>display_data( result ).| )
( |ENDFORM.| )
).

GENERATE SUBROUTINE POOL source_lines
  NAME temp_prog_name
  MESSAGE DATA(message).

IF temp_prog_name IS NOT INITIAL.
  PERFORM ('RUN_SELECT') IN PROGRAM (temp_prog_name) IF FOUND.
ENDIF.

Unfortunately it didn't work :/ The same error occurs when calling the offset statement dynamically

Ok, too bad. Then I will go ahead and try to build a first solution for Oracle DB.
BR,
Ludwig

I just created a solution that works with Oracle DB. I tested it on our 7.40 with the following parameters:

You can test it by pulling the branch nw-740

Thanks for the quick fix/response.
These are my specs

Unfortunately when i try to pull the branch nw-740 the following dump occurs:

An update to abapGit should solve the problem.
If you experience dumps during the update of abapGit, you may have to first
update the standalone version of abapGit (zabapgit_standalone) and then
start this report to update the development version of abapGit.
After that the pull should work without problems

Message ID: @.***
com>

Hi Ludwig,
i realized it myself and updated the abapGit. Now the pull works.
when trying to search code following message occurs:

Thanks for your support

I had to activate some inactive objects but then it works!
Great!
:)

Ok, great.
If the issue with the transformation ZADCOSET_SEARCH_SCOPE_PARAMS persists, please open a new issue.
BR,
Ludwig

Yes, I will do that, but I don't think so. The class was inactive, so I think the new version will run

I have one last question:
It affects the code search only indirectly. I´ve also installed the abap tags plugin and it works fine.
Why can´t i use the Tags within the Code Search?

I believe i was able to select tags here when pulling the main branch.

It is described in the included Eclipse Help for the Code Search Plug-in

The Tags section is only available if the ABAP Tags plugin is installed and if the ABAP Tags backend is available in the selectedABAP project.

Regarding your previous post, i got the backend and the plugin otherwise the "usual" tag search won´t work

Hm, okay. I set a breakpoint one the first statement in this method, but the debugger do not stop when pressing STRG + H

Well okay I restarted eclipse and now it works. I just do not ask any questions :D

Check this setting please:

It could also be that you have to debug it via SAP GUI if eclipse blocks it

You´re right this setting was not set. But now that it works, it fits for me
Thank you!


add support for image.Gray

PR to add grayscale support — related to https://github.com/SongStitch/song-stitch/pull/126

Closing, since it's not needed


[My Documents] is not always %userprofile%\documents

It's worth mentioning in the documentation that [My Documents] is not necessary %userprofile%\Documents.
I've got OneDrive running and for some reason it decided to point [My Documents] to %userprofile%\OneDrive\Documents

I agree this is worth mentioning at a point in the documentation, not on the issues forum.  I found this out after two developers reporting that custom connectors weren't being picked up.  I used ProcMon to study startup and discovered what Hugoberry indicates above.

Is this still reproducible? It looked like the system functions we are using to resolve the [My Documents] directory in PBI Desktop should resolve to whatever path is set by the user.

I haven't checked personally but I have received any reports that other developers using the My Documents path comes back with the incorrect value so +1 the closed status.


npm module is using var React = require('react-native')

it looks ok in the github repo, but i just downloaded from npm and the module is requiring React from the native package rather than react
var React = require('react-native')
in the index.js file

+1

This component supports 0.24+, that's probably the reason why you are getting that. What version of RN are you on?

"react-native": "0.30.0",
it's because the npm module hasn't been updated

Yep

In case you need it, go into the index.js and add:
var React = require('react')
var ReactNative = require('react-native');
var {PanResponder, TouchableHighlight, StyleSheet, Text, View} = ReactNative;

npm i --save https://github.com/dancormier/react-native-swipeout.git

Any update on this? Is it possible to add a new contributor who can publish this to NPM?

Any movement here?

I have already published version 2.0.13


what need phyton version?

i have python :
Python 2.6.6 (r266:84292, Jul 23 2015, 15:22:56)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2
its ok?

It requires the Python interpreter, version 2.6, 2.7, or 3.2+


Readme updates

Contains changes from #40
I haven't been able to make the table formatting better in the readme. If anyone knows a trick to making the table horizontally scrollable, let me know.

Looks good. Assume we'll be able to make the creation of the distro package and publishing to PyPi a "post-create-release" triggered action? Not a hold up, but I assume that's the approach.

That's the goal. We will need to do some investigation on the approach for this. Ideally, creating a new github release also publishes a pypi build for that release.


Implement Vault credential management

how will creds be stored in and retrieved from vault? are they stored against ARN as key?

requirements

include vault setup in environment
authenticator retrieves password stored against (dbhost (target), arn (identity)) key

/__approzium__<DB_ADDRESS>
key: "dbuser1"
value: {
	"password": "asdfghjkl",
	"IAM_roles": [
		"arn:aws:iam::accountid:role/rolename1",
		"arn:aws:iam::accountid:role/rolename2"
	]
}

Thanks for including this! Also, from my notes, I will be sure to include the db port, and there could be multiple users.

Closed by #35


Dummy commit to see buildkite logs before my testflags changes.

What changed?

Why?

How did you test it?

Potential risks

Release notes

Documentation Changes

Pull Request Test Coverage Report for Build 0182c710-a6c6-41f5-aa6c-c41c102423d2

0 of 0   changed or added relevant lines in 0 files are covered.
477 unchanged lines in 22 files lost coverage.
Overall coverage decreased (-0.02%) to 57.723%

Files with Coverage Reduction
New Missed Lines
%

common/membership/hashring.go
2
83.54%

common/peerprovider/ringpopprovider/config.go
2
81.58%

common/persistence/executionManager.go
2
77.95%

common/persistence/statsComputer.go
2
94.64%

common/task/weightedRoundRobinTaskScheduler.go
2
89.64%

service/history/execution/mutable_state_util.go
2
36.14%

service/history/execution/mutable_state_task_refresher.go
3
65.82%

service/history/queue/timer_queue_processor.go
3
58.64%

service/history/queue/transfer_queue_processor.go
3
59.78%

service/history/task/fetcher.go
3
91.75%

Totals

Change from base Build 0182c66a-7002-400d-a6d0-3136aa46dccc:
-0.02%

Covered Lines:
84098

Relevant Lines:
145692

💛  - Coveralls

🧹


Consider Reader/Writer monad for reflex input and output

Here's an interesting idea for reflexOf:
class (..., t ~ ...) => CodeWorldReflex t m where
    keyPress :: m (Event t Text)
    keyRelease :: m (Event t Text)
    ...
    draw :: Dynamic t Picture -> m ()

reflexOf :: CodeWorldReflex m => m () -> IO ()

This would replace the existing ReactiveInput type, so it saves some complexity as well as adding it.  draw replaces the Dynamic t Picture return value in the existing API.
This parallels the way reflex-dom works, where a builder monad can emit pieces of output on the screen.  Under the scenes, there's just an implied top-level pictures function that combines all the emitted pictures into one screen.
Here's why this is appealing:
main = reflexOf $ do
    param1 <- gauge $ gaugeConfig {
        gaugeLabel = "param1",
        gaugeRange = (1, 10),
        gaugeStart = 5,
        gaugePosition = (0, -6)
        }
    param2 <- gauge $ gaugeConfig {
        gaugeLabel = "param2",
        gaugeRange = (1, 10),
        gaugeStart = 5,
        gaugePosition = (0, -6)
        }
    param3 <- gauge $ gaugeConfig {
        gaugeLabel = "param3",
        gaugeRange = (1, 10),
        gaugeStart = 5,
        gaugePosition = (0, -6)
        }
    emit (renderWith <$> param1 <*> param2 <*> param3)

gauge GaugeConfig{..} = do
    click <- pointerPress
    release <- pointerRelease
    dragging <- holdDyn $ mergeWith (&&) [
        True <$ ffilter inBounds click,
        False <$ release
        ]
    drag <- gateDyn dragging =<< updated pointerPosition
    value <- holdDyn gaugeStart (toValue <$> drag)
    emit $ drawGauge <$> value
    return value
  where inBounds (x, y) = ...
        toValue (x, y) = ...
        drawGauge val = ...

There's a lot appealing about this idea.  Another one is that adding new outputs would be easy.  Following #47, one could see adding emitSound :: Event t [Sound] -> IO ()

To further the goal of abstracting over UI controls, one also needs some kind of mechanism to modify inputs.  For example, a button wants to not just know when the mouse is clicked, but also hide those clicks from any UI events behind it.  That needs stuff like:
-- Returns an Event of matching pointer presses.  Later calls to `pointerPress` will filter
-- these out.
takePointerPress :: Behavior t Bool -> Event t Point

(Maybe there should also be a Dynamic version, which would behave better in terms of removing listeners when the events aren't needed.)

I think I definitely want to do this.  To avoid breaking everyone's code from my recent blog posts while I'm still experimenting, I will instead introduce a new entry point called reactiveOf, and implement it this way.  Once I'm happy with how that works out, I can announce the breaking change (it's still early enough that I'm not concerned about maintaining long-term compatibility), and consolidate.

The problem that I'm having right now is that the Adjustable type class seems to be incompatible with performing visible updates from the builder monad.  That means something like takePointerPress above would prevent the monad from having an Adjustable instance.  Adjustable is a prerequisite for lots of useful things involving dynamic widgets.  I like those things.
Alternatives:
Make the "filter" bits only filter in a subscope:
takePointerPress :: Behavior t (Point -> Bool) -> (Event t Point -> m a) -> m a

and then
takePointerPress onButton $ \buttonClick -> do
    -- Here, getPointerPress returns only non-button clicks.
-- But here, it returns all clicks again.

The output, then, must be done with DynamicWriter, which guarantees that the result cannot be read at build time (because it's stuck in a Dynamic).

I completed the implementation at the Atlanta Haskathon today.  I've added the deprecation tags and started the deprecation timer.  Since there was never an official release, the deprecation will be short.  I just want to wait until hype has died down a bit from my earlier blog.


Remote setup does not add auto-start entry

When installing from RBrokerUser (non-admin), setup fails to write to HKCU\Software\Microsoft\Windows\CurrentVersion\Run.

Instead, it writes into the actual admin HKCU that you provided credentials for during setup elevation. As a result, broker monitor does not start when RBrokerUser logs on.
Also, in non-admin mode 'Restart' button on setup does nothing (at least over TS).

Seems to be specific to this particular machine and/or Windows Server configuration. Client VM works fine.

Appears to be a known issue and is by design (since we are doing per-machine installation):
http://stackoverflow.com/questions/9898589/how-can-i-have-my-installer-write-to-the-hkcu-registry-tree

Workaround for now is to temporarily give RBroker account admin rights for installation, then revoke. This will go away with https://github.com/Microsoft/RTVS/pull/2493


Admin password recovery

Hi,
I have a single admin user setup that I use at home but I seem to have forgotten my password. How can I reset the password without losing any data assuming i have root access in the environment convos is running in?

The command is documented here: https://convos.chat/blog/2019/11/24/convos-one-point-two
Scroll down to “Forgotten password and invitation links”
I’ll keep this issue open, since this should also be in the FAQ.

This is now documented in the "Configuration" page instead.


Charmc ends up deleting .C/.cpp file in case you forget to specify the output file while compiling

Original author: Samarth Kulshreshtha
Original issue: https://charm.cs.illinois.edu/redmine/issues/1683

Repro:

touch test.cpp
charmc -o test.cpp

This will end up deleting test.cpp.
Note: g++ does not have this behavior.

Original date: 2017-09-20 19:52:37

We should catch the lack of input file the way gcc (or similar) does

Original date: 2017-09-25 18:01:37

~~https://charm.cs.illinois.edu/gerrit/3076~~ https://github.com/UIUC-PPL/charm/commit/45a157519234246fb3ea9cf5015d2bb9f49661c9


Collect cpu usage for tasks that have just started

Right now we won't update the overall slave usage for a task that has just started. This lets us calculate the cpus from the task starting timestamp to include those as well in the slave usage metrics

🚢


--terragrunt-debug in v0.23.33 does not seem to work

I just saw the new 0.23.33 release with debugging from issue #1263. Woot! I need that now!
Installed and run:
$  terragrunt --terragrunt-debug init
Incorrect Usage. flag provided but not defined: -terragrunt-debug

DESCRIPTION:
   terragrunt - Terragrunt is a thin wrapper for Terraform that provides extra tools for working with multiple
...
VERSION:
   v0.23.33

AUTHOR(S):
   Gruntwork <www.gruntwork.io>

[terragrunt] 2020/08/03 15:42:30 flag provided but not defined: -terragrunt-debug
[terragrunt] 2020/08/03 15:42:30 Unable to determine underlying exit code, so Terragrunt will exit with error code 1

The Debugging page shows $ terragrunt --terragrunt-debug apply.  I tried apply and it gives the same results as init.
I also tried $  terragrunt --debug init in case I was not understanding something. To me, it looks like the build was not successful. Perhaps someone else can tell me what I am doing wrong.

Ah that is a bug in the docs! Terragrunt generally requires the terragrunt args to be at the end of the command, so it is actually supposed to be terragrunt apply --terragrunt-debug.

That did the trick. Thanks for your help.


Re-add test filtering plugin

This undoes https://github.com/gradle/gradle/pull/17691 and updates the plugin to the latest version

@bot-gradle test and merge

OK, I've already triggered a build for you.

Pre-tested commit build failed.

@bot-gradle test and merge

OK, I've already triggered a build for you.

Pre-tested commit build failed.

I've run the RFN a couple times, and flaky tests have broken the build. I'm certain this change is good as it's a revert and a plugin version bump, so I'm going to merge this.


add record count to metarange

Closes #1188

Codecov Report

Merging #1191 (f484145) into master (38e09b6) will increase coverage by 0.00%.
The diff coverage is 50.00%.

@@           Coverage Diff           @@
##           master    #1191   +/-   ##
=======================================
  Coverage   47.07%   47.07%
=======================================
  Files         197      197
  Lines       15118    15124    +6
=======================================
+ Hits         7117     7120    +3
- Misses       7066     7069    +3
  Partials      935      935

Impacted Files
Coverage Δ

graveler/committed/committed.pb.go
49.18% <0.00%> (-2.55%)
:arrow_down:

graveler/committed/meta_range_writer.go
58.42% <100.00%> (+0.47%)
:arrow_up:

graveler/committed/range.go
87.50% <100.00%> (+1.78%)
:arrow_up:

catalog/mvcc/cataloger_create_repository.go
62.96% <0.00%> (ø)

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 38e09b6...f484145. Read the comment docs.

Codecov Report

Merging #1191 (f484145) into master (38e09b6) will increase coverage by 0.00%.
The diff coverage is 50.00%.

@@           Coverage Diff           @@
##           master    #1191   +/-   ##
=======================================
  Coverage   47.07%   47.07%
=======================================
  Files         197      197
  Lines       15118    15124    +6
=======================================
+ Hits         7117     7120    +3
- Misses       7066     7069    +3
  Partials      935      935

Impacted Files
Coverage Δ

graveler/committed/committed.pb.go
49.18% <0.00%> (-2.55%)
:arrow_down:

graveler/committed/meta_range_writer.go
58.42% <100.00%> (+0.47%)
:arrow_up:

graveler/committed/range.go
87.50% <100.00%> (+1.78%)
:arrow_up:

catalog/mvcc/cataloger_create_repository.go
62.96% <0.00%> (ø)

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 38e09b6...f484145. Read the comment docs.


API to receive alerts from JFrog Xray

Please use the following template when submitting issues:
Issue Template
Issue Type

[ ] Bug
[x] Enhancement

Description: JFrog Xray scans the artifacts on artifactory for vulnerabilities and has an option to trigger a webhook call. Would be nice to have an API in DefectDojo which can be consumed by the webhook.
If the issue is a bug, please also include the following:
Operating System
Please include the version number (ex: Ubuntu 16.04)
Install

[ ] setup.bash
[ ] docker

Steps to Reproduce
Sample Scan File (if applicable)
Screenshots (optional)
Console Logs (optional)

@sbrao800 What would you like the webhook to do? Pull in the results from JFrog Xray? Do you have an example of the webhook post data?

@aaronweaver
I would like the webhook from XRAY to result in creation of issues in defectDojo. But also within a product (just like any other source of vulnerability in defectdojo)
Below is a sample webhook output from XRAY when an artifact in artifactory is found to have a vulnerability:
{    "created":"2018-02-05T20:53:52.144181085+01:00",    "top_severity":"Minor",    "watch_name":"EveryArtifact_Watch",    "issues":[       {          "severity":"Minor",          "type":"security",          "provider":"JFrog",          "created":"2017-02-22T13:44:53.437+01:00",          "summary":"Cross-site Scripting (XSS)",          "description":"Cross-site Scripting (XSS)",          "impacted_artifacts":[             {                "name":"matplotlib-2.0.0.tar.gz",                "display_name":"matplotlib:2.0.0",                "path":"artifactory/pypi-cache/79/a9/db688816150a6ef91fd9ced5982753a73a8e1aaafa/",                "pkg_type":"Npm",                "sha256":"36cf0985829c1ab2b8b1dae5e2272e53ae681bf33ab8bedceed4f0565af5f813",                "sha1":"",                "depth":0,                "parent_sha":"36cf0985829c1ab2b8b1dae5e2272e53ae681bf33ab8bedceed4f0565af5f813",                "infected_files":[                   {                      "name":"jquery-1.11.3.js",                      "path":"matplotlib-2.0.0/lib/matplotlib/backends/web_backend/jquery/js/",                      "sha256":"2065aecca0fb9b0567358d352ed5f1ab72fce139bf449b4d09805f5d9c3725ed",                      "depth":0,                      "parent_sha":"36cf0985829c1ab2b8b1dae5e2272e53ae681bf33ab8bedceed4f0565af5f813",                      "display_name":"jquery:1.11.3",                      "pkg_type":"Npm"                   }                ]             }          ]       },       {          "severity":"Minor",          "type":"security",          "provider":"JFrog",          "created":"2017-11-19T02:03:44.472+01:00",          "summary":"Cross-site Scripting (XSS)",          "description":"Cross-site Scripting (XSS)",          "impacted_artifacts":[             {                "name":"matplotlib-2.0.0.tar.gz",                "display_name":"matplotlib:2.0.0",                "path":"artifactory/pypi-cache/79/a9/d7f7271c7dd5982753a73a8e1aaafa/",                "pkg_type":"Npm",                "sha256":"36cf0985829c1ab2b8b1dae5e2272e53ae681bf33ab8bedceed4f0565af5f813",                "sha1":"",                "depth":0,                "parent_sha":"36cf0985829c1ab2b8b1dae5e2272e53ae681bf33ab8bedceed4f0565af5f813",                "infected_files":[                   {                      "name":"jquery-1.11.3.js",                      "path":"matplotlib-2.0.0/lib/matplotlib/backends/web_backend/jquery/js/",                      "sha256":"2065aecca0fb9b0567358d352ed5f1ab72fce139bf449b4d09805f5d9c3725ed",                      "depth":0,                      "parent_sha":"36cf0985829c1ab2b8b1dae5e2272e53ae681bf33ab8bedceed4f0565af5f813",                      "display_name":"jquery:1.11.3",                      "pkg_type":"Npm"                   }                ]             }          ]       }    ] }


in-app back button behaves as browser's back button

If one searches for "progressive web apps directory" in google.com and clicks in a site link (like https://pwa-directory.appspot.com/pwas/5659043372728320 ) the arrow on the top left corner behaves as the the browser's back button, taking the user back to google.com results, instead of to the list of PWAs

We can do:
if (!document.referrer.startsWith(document.location.origin)) {
  router.navigate('/');
  return;
}
...

SGTM


High CPU usage on OS X 10.11.5

For some reason with this configuration Emacs uses most of time 99% of CPU, anyone with the same problem?
Thanks.

Which Emacs version?
I haven't seen this behaviour on 10.11.5 with either a recent snapshot build of Emacs or a released version, but if you provide more info I'm happy to suggest some things you might try to investigate.

Nevermind, I updated the configuration with a git pull and it's fine again, thanks for the answer.

Hi
My Mac version is 10.12.3. and Emacs uses most of time 26% of cup. My cup is core i7.
Is it a problem?
My emcas version is 25.1.1

Hi! I have the same Emacs and OS X versions, and I don’t see the same problems. My Emacs uses perhaps 10% CPU right now, with 94 buffers of various types open. Do you have lots of buffers open? If so, what types of buffer are they?


help me  ！！！    hasn't drawn some images and no text

I do not get this all the time but if i wake the device from sleep after a period of time and resume the app then sometimes it is stuck in this state (like it hasn't drawn some images and no text)
ios release
Flutter (Channel stable, v1.17.1, on Mac OS X 10.14.5 18F132, locale zh-Hans-CN)
• Flutter version 1.17.1 at /Users/jack/Documents/work/flutter/flutter
• Framework revision f7a6a7906b (2 days ago), 2020-05-12 18:39:00 -0700
• Engine revision 6bc433c6b6
• Dart version 2.8.2
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at /Users/jack/Library/Android/sdk
• Platform android-29, build-tools 29.0.3
• ANDROID_HOME = /Users/jack/Library/Android/sdk
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 11.3)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 11.3, Build version 11C29
• CocoaPods version 1.8.4
[✓] Android Studio (version 3.6)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 45.1.1
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
[✗] Cannot determine if IntelliJ is installed
✗ Directory listing failed
[✓] VS Code (version 1.44.2)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.9.1

Try checking flutter inspector in android studio.

Try checking flutter inspector in android studio.

release ios

Hi @jackTang11
please follow up on the issue you opened before
closing as duplicate
Thank you


Adds variables for the production of alternative fuels

We need to add additional variables to account, e.g., for hydrogen demand for conversion to synfuels.

Not sure, but the failed check might be due to some error beyond my control. Could you kindly check, @danielhuppmann ?

is it still failing?

is it still failing?

No, all checks have passed.
Would be great if you could review the changes, @zwiebo.

@danielhuppmann not sure if I understand -- are you suggesting splitting the tag-files further? (e.g. tag_liquid_synfuels.yaml, tag_liquid_biofuels.yaml, ...)

Not quite, sorry for being complicated... Can you send me (by email or Slack) a list of all combinations that actually make sense and are relevant for your reporting?