Grand Central Dispatch RFC

Related to #5032

Rebased that PR onto the current master and fixed the test build. This was quiet a lot of work because the additional Dispatchabletrait bound that was added to frame_system::Trait::Call broke almost every test build.
The test are successful with the exception of the ui test which apparently tests against compiler output. Have to look into that I guess.

That's good news! I think ui tests could be fixed by merging in master.

That's good news! I think ui tests could be fixed by merging in master again.

It was just the missing documentation warning that made the UI test fail. Fixed that now. CI is finally happy and we are in sync with the current master.

Would be interesting to see how this glues to the rest by
* putting the docs there for the main trait

* finishing bode/runtime/src/lib.rs

I added some documentation for the trait. Regarding your second point. Can you elaborate what is missing from that file?

This PR is now ready for review. I think I addressed all comments and now are patiently waiting for further comments / review.

Resolved conflicts with master and fixed and incorporated the suggestions from the comments. Should be good for merge soon (praying to CI god).

Not at all happy about this PR. It introduces needless constraints and soft APIs that will ultimately lead to mishap.

I agree. We must do better.

I'd like to see a solid argument as to why needed changes for the contract-weight stuff cannot be kept isolated in the contracts module.

It is not only about contract-weight. As far as I understand it we want to be able to refund weight for every dispatch. For example a Balance::transfer which targets an existing account should be able to refund the weight that was reserved for the account creation.

In response to the feedback we received I am planning the following larger changes apart from the minor issues that might or might not be resolved in the process:

Remove the Dispatchable trait bound from pallet_system::Trait::Call as adding it is way to restrictive with regard to testing
Redo the customization options for Runtime implementers so that it constitutes a hard to misuse API as it should be
Prevent the direct call of a Dispatchable without a a Dispatcher

I'd like to see a solid argument as to why needed changes for the contract-weight stuff cannot be kept isolated in the contracts module.

It is not only about contract-weight. As far as I understand it we want to be able to refund weight for every dispatch. For example a Balance::transfer which targets an existing account should be able to refund the weight that was reserved for the account creation.

Regardless if this approach, just emphasising that this was about more than just the contracts module and I think a weight refund in the long term is a good feature to have (through any means -- central dispatch was the best that we and @pepyakin came up with in a call. We can do better).
We might not use it at the time being since in Polkadot we want to stick to a worse case scenario. But a general substrate chain might want to be picky and have some means of refunding weight.
an example that we might want to consider refund even in polkadot is the phragmen submission transactions. If it goes through the hot path of replacing a solution, it takes a lot of time and it should rightfully take a whole lot of block's weight. Otherwise, it would be quite a waste to take all of that weight when we, in some cases, almost immediately reject the solution. Ideally the fee should still be taken but the weight should be refunded to the system module.

TBH, I don't understand the purpose of this pr. Could someone sketch how that will help refunding weights?

TBH, I don't understand the purpose of this pr. Could someone sketch how that will help refunding weights?

Weight refund will be done on a per dispatch basis as described here.
In order to do that we decided that going through a central instance that tracks the refunded gas per dispatch and deals with nested dispatches would be the best approach. #5032 already implements this central location as a dispatch_call method on the system pallet module.
The problem there is that this approach is purely advisory. Modules have to opt in by calling this new function instead of calling Dispatchable::dispatch. Because that approach is fragile  we establish a mandatory weight tracking with this PR by forcing all dispatches through a Dispatcher. The mentioned #5032 will then be changed to integrate the weight refund into the Dispatcher.

Hmm, so the problem you try to solve here isn't really solved IMHO.
In the default case where we don't have a wrapped call, we don't require this pr.
For the other case, where we have a wrapped call this weight refund doesn't make really sense. Let me explain why. For example think about a democracy proposal. After the proposal is accepted and we reached the point it should be applied, we will dispatch it. The proposal is applied in on_initialize, while on_initialize has some weight, it is probably way less than the weight of the actual call that will be dispatched as proposal. So, in your call you will refund some weight that wasn't taken for your call.
What we really want is probably an improved SignedExtension that is aware of dispatch and post_dispatch, but stuff like TransactionPayment should also not kick in for calls that are being dispatched from another module. I also already thought about making SignedExtension aware of wrapped calls, but didn't yet come to a proper solution. I'm open to discuss about this.

Hmm, so the problem you try to solve here isn't really solved IMHO.

Yes. As i already stated the implementation is lacking. Working on it right now.

For the other case, where we have a wrapped call this weight refund doesn't make really sense. Let me explain why. For example think about a democracy proposal. After the proposal is accepted and we reached the point it should be applied, we will dispatch it. The proposal is applied in on_initialize, while on_initialize has some weight, it is probably way less than the weight of the actual call that will be dispatched as proposal. So, in your call you will refund some weight that wasn't taken for your call.

No. It does not work as you describe. The caller of the nested or wrapped call gets the unspent gas as return value and is responsible for handling it. It is all written down in the notion page I linked.

What we really want is probably an improved SignedExtension that is aware of dispatch and post_dispatch, but stuff like TransactionPayment should also not kick in for calls that are being dispatched from another module. I also already thought about making SignedExtension aware of wrapped calls, but didn't yet come to a proper solution. I'm open to discuss about this.

The other PR I linked takes care of that. It changes the SignedExtensions to be aware of weight refund.

It sounds like the only API change requiring is a minor one that just ensures dispatchables return the weight used.

It sounds like the only API change required is a minor one that just ensures dispatchables (and on_initialize) return the weight consumed.

we decided that going through a central instance

I do not want to see any new "central instances" of anything.

That is another approach to the weight refund task. One could modify the Dispatchable and the macros that generate its implementations so that it does the weight accounting for every call. This is clearly a more elegant approach.
It comes with its own drawbacks, though.

It would introduce a frame concept (weight) to Dispatchable that lives in primitives and should therefore be runtime agnostic. This can be worked around by making the return type of Dispatchable generic, I guess. So it is not necessarily weight but any additional data that a Dispatchable can deliver in addition to the DispatchResult.

What about frame chains that do not want to use weight refund? Generating the refund logic in macros makes it more difficult to make the concept pluggable (correct me if I am wrong). In its current state of this PR this would be just a matter of setting frame_system::trait::RootDispatcher = SimpleDispatcher. I did not do much thinking in this direction, yet. There might be a good solution for this. It might require an even larger change set than this PR, though.

@gavofyork Is this a direction you would rather see the weight refund stuff going?

I think in the grand scheme of things, it is easier to think of it this way:
Instead of asking dispatchables to return the used weight (or signal it via some function or any other means), it should be assumed that they consume all of it unless if they return some value. So, if I have understood it correctly, I agree with

What about frame chains that do not want to use weight refund? Generating the refund logic in macros makes it more difficult to make the concept pluggable (correct me if I am wrong)

Closed in favor of #5458


Feat:swapreads mian page purpel color line looking bad

Describe the feature
swapreads mian page purpel color line looking bad I want to change purple color to cream color css hero-title color
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

https://github.com/anuragverma108/SwapReads/pull/2150 plz review


Climber

Implement current limits into the Climber subsystem which measures the motors' current and uses that value to stop the motors instead of using limit switches. Three new commands are added: extendCurrent, retractCurrent, and moveCurrent, which implement this new functionality.

Blocking on chopshop-166/chopshoplib#98


[style]: Active view for cards

What's the style idea?
From the attached screenshots, we can't tell whether the box view is active or the tile view. This can be improved.
Add screenshots

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@JasonDsouza212 @VenomFate-619 Kindly assign this issue to me under GSSOC

How your gonna fix this?
give some idea, has this is related to UI do  provide some design or image


Changing type of visualizations.id from text to uuid closes #2937

@Kartones , CR this, please. I've tested it locally and found no problem. Could you give it a try as well?
@lbosque is this ok for you? I've checked the format match query at master cloud db and all ids look ok. Please let me know when should I trigger this, because I guess it'll lock visualizations table for a while.

Frontend tests were OK :+1: (details)

:+1: Looks ok, but unfortunately I cannot test right now, sorry :(
Grab a staging server as also they'll be more alike the real world.

Two things:

It's possible that changing the type will leave the id index useless. Maybe it's necessary to recreate it. run a explain analyze to see if the index is used after altering the type

After fixing the migration so it crashes if it finds problems I suggest you to try to run it under these 3 situations:

With one row with the id "3243543-" or similar (not matching UUID format) - FAIL
With one row with the id empty - OK
With everything ok - OK

Frontend tests were OK :+1: (details)

About indexes: I've created some users and visualizations in ded05 (if it's almost empty it prefers seq scan even for id searches) and it uses Index Scan. In addition, alter table documentation says that "indexes and simple table constraints involving the column will be automatically converted to use the new column type by reparsing the originally supplied expression.", so it will work™.
About checks:

Ok (fails displaying message and aborts rake).
You can't have an empty id row.
Everything ok - ok.

I'm testing in staging. I've pinged @zenitraM about "{"error":"DB host or name not found in redis (try CARTODB/script/restore_redis)"}" errors, probably unrelated, on this visualization, everything but that seems fine.

Retest this, please.

Retest this, please.

Frontend tests were OK :+1: (details)

+1

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)


Subject from other project showing on Shakespeare's World Talk

This subject has popped up a while ago (mid-December) and seems to be from another project entirely. Maybe it's because the subject name is the same as something in our subject set? The metadata fields otherwise have nothing in common with our subject metadata. I wonder if this something we need to look into though. If subjects have the same name in different projects, can the API accidentally serve subjects from another project?
https://www.zooniverse.org/projects/zooniverse/shakespeares-world/talk/192/21111

@VVH The thread from this is on the front end. It was fixed and then cropped up again when I saw your posts on Planet Four: Terrains Talk  https://github.com/zooniverse/Panoptes-Front-End/issues/2210

@parrish can you have a look at this, might have been related to this https://github.com/zooniverse/Panoptes-Front-End/issues/2210 but i'm not sure how.

Note: On the Panoptes side this is definitely just in Planet Four's sets.

We previously had an issue with the front end routing breaking some of the app.  I'm pretty sure this is just a side-effect from before that was fixed -- the comment was created in December.


Remove focal point related fields from the API endpoint for unauthorized users

Fields related to the pocal point (email and phone number) should only be available for country admin and super users

This is not need anymore


Update Credential offer for voucher card and other

Description is accordion from credential manifest output descriptors

only the "Descrtpion" accordion is shwn as we dont have at that moment in the process the data to fill the "Information" and "Activity" accordion


fix: foundry validation broken on windows

Closes #324

Codecov Report

Merging #325 (27ff394) into development (add8a71) will decrease coverage by 0.04%.
The diff coverage is n/a.

@@               Coverage Diff               @@
##           development     #325      +/-   ##
===============================================
- Coverage        57.17%   57.12%   -0.05%
===============================================
  Files              173      173
  Lines             4318     4320       +2
  Branches           707      707
===============================================
- Hits              2469     2468       -1
- Misses            1616     1618       +2
- Partials           233      234       +1

Impacted Files
Coverage Δ

src/utils/index.ts
80.00% <0.00%> (-6.67%)
:arrow_down:

src/services/validation/DiagnosticConverter.ts
58.33% <0.00%> (-0.50%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Can we add a language server integration test for foundry for this?

We have a couple tests that involve foundry validation, but they are skipped when running on windows. This is because on the CI, we are only installing foundry on macos and linux. The windows installation is trickier and is not present on the ci setup scripts. We could have a task for supporting foundry tests on windows on CI

Can we add a language server integration test for foundry for this?

We have a couple tests that involve foundry validation, but they are skipped when running on windows. This is because on the CI, we are only installing foundry on macos and linux. The windows installation is trickier and is not present on the ci setup scripts. We could have a task for supporting foundry tests on windows on CI

Ah yes I remember now. Cool.


Add Todo-Backend example

I've prepared a new tutorial for docs that builds this sample from the ground up. I think it makes sense to store the sample in examples repository too.

Applied the remarks


Wrong order of sorting line ascending

VSCode Version: 1.7.1
OS Version: Windows 10 Home Version 1607

Steps to Reproduce:

Have a css file with the following code:

height: 100px;
margin: 0;
margin-bottom: auto;
width: 100px;

Select the the previous code.
Press F1 (default key), write "sort lines ascending" and choose the option writed before.

And it will switch the margin with margin-bottom and it should be how it started.

The sort lines command is language agnostic and follows the standard lexicographic order.
i.e.
['margin: 0;', 'margin-bottom: auto;'].sort();
// results in
["margin-bottom: auto;", "margin: 0;"]

In this case:

margin-bottom: auto < margin: 0;
because margin- < margin:
because - < :
because 45 < 58


sketchy dataset

Hello, excuse me, can you please share the sketchy dataset? Thank you!

Sorry about that,
Here are the new links:
https://drive.google.com/file/d/1z4--ToTXYb0-2cLuUWPYM5m7ST7Ob3Ck/view?usp=sharing
https://drive.google.com/file/d/1Qr8HhjRuGqgDONHigGszyHG_awCstivo/view?usp=sharing
https://drive.google.com/file/d/1x8n7qaMg1z2SC-1sT5yjIMmMIr0UcBVW/view?usp=sharing


[Identity] Validation checks updated and renamed internal functions

Packages impacted by this PR
@azure/identity
Issues associated with this PR
None
Describe the problem that is addressed by this PR

updated validation logic for tenant id and scopes
renamed internal functions and doc links

Checklists

[x] Added impacted package name to the issue description
[x] Added a changelog (if necessary)

API change check
API changes are not detected in this pull request.


Add Configure Namespace Isolation task

This change is

This page seems to be using the v1 data model which hasn't yet been merged into the code - still under debate at https://github.com/kubernetes/kubernetes/pull/39164

This was reverted in #3849. Now that the 1.7 changes are rolling in, I'll be more vigilant about parsing these out. Cheers.


nuget.exe "pack" command dependency problem.

I have an issue. I will write a sample situation to explain the problem:
This is my sample command to create a nuget package named Abp:
"..\src.nuget\NuGet.exe" "pack" "..\src\Abp\Abp.csproj" -Properties Configuration=Release -IncludeReferencedProjects -Symbols
It automatically finds packages.config and create dependencies of Abp package. In package.config, it depends on:
<package id="Castle.Core" version="3.3.1" targetFramework="net451" />
<package id="Castle.LoggingFacility" version="3.3.0" targetFramework="net451" />
<package id="Castle.Windsor" version="3.3.0" targetFramework="net451" />
<package id="Microsoft.Bcl.Immutable" version="1.0.34" targetFramework="net451" />
But it does not include dependency for Castle.Core and Castle.Windsor since they are depended also by Castle.LoggingFacility (See http://www.nuget.org/packages/Abp).
But it's a problem because of depended versions. Castle.LoggingFacility depends on Castle.Core 3.3.0 but Abp depends on 3.3.1.
When I install Abp to my project, it gets Castle.Core 3.3.0 instead of 3.3.1 required by Abp.
It should explicitly set all dependencies of Abp.

Moved issue to NuGet/Home#338. Please file VS client issues on https://github.com/NuGet/Home/issues


Remove unnecessary use of BigNumber classes

This is an attempt to remove some of our technical debt:

we use BigNumber values when we don't need to
it is annoying to have to use BigNumber when we don't need to

@kerzhner described this as "death by a thousand paper cuts"

we do not currently use BigNumber well enough to ensure that values which should be a BigNumber instance are a BigNumber instance

The following changes are made:

turnNum, finalizesAt, and challengeDuration are all uint48 types in solidity
turnNum, finalizesAt, challengeDuration and blockNumber are all number types in javascript

I'll leave a couple of notes here:

after changing some BigNumber values to number, I ran into the same bug three times, where the compiler believed a variable had type BigNumber, but its value had type Object. This lead to a runtime error amount.toHexString is not a function
Most of the contract changes were automatic formatting triggered when I hit save. I did not notice this at the time.
For some random reason, the create-and-fund test fails with the memory backend, which I believe is due to concurrent "transactions"

(1) is an example of the reason so many of us don't want to use BigNumbers. Considering that I had already done 80% of the work of removing the use of BigNumber for amounts, I would have spent less time removing the possibility of this bug than finding the source of this bug.

#1652

Converted to draft, as I realized this requires a migration.


Host key verification failed when starting micro-RTPS

Hi, there's an issue in the Dockerfile when creating the micro-RTPS image.
This happens when building the docker image
docker build -t fiware/micro-rtps-examples ./micro-rtps
At this line:
git clone --recursive https://github.com/eProsima/micro-RTPS.git
The error:

Step 20/22 : RUN  git clone --recursive https://github.com/eProsima/micro-RTPS.git
---> Running in f5ea07e8ebd2
Cloning into 'micro-RTPS'...
Submodule 'agent' (git@github.com:eProsima/Micro-XRCE-DDS-Agent.git) registered for path 'agent'
Submodule 'client' (git@github.com:eProsima/Micro-XRCE-DDS-Client.git) registered for path 'client'
Submodule 'gen' (git@github.com:eProsima/Micro-XRCE-DDS-Gen.git) registered for path 'gen'
Cloning into 'agent'...
Host key verification failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Clone of 'git@github.com:eProsima/Micro-XRCE-DDS-Agent.git' into submodule path 'agent' failed

This happens when trying to clone using the ssh form on the dependencies.
Probably because the host verification is failing or there's an invalid key when trying to ssh github.
For verification purposes, running this command locally works fine:
git clone --recursive https://github.com/eProsima/micro-RTPS.git

Hi Jason, sorry for the late reply.
You can add the ignore SSL of the repo with this line (I know it should be corrected in the .gitmodules file though, but for the sake of moving forward):
RUN  git -c http.sslVerify=false clone --recursive https://github.com/eProsima/micro-RTPS.git
After moving forward, the problem now is that when executing the command
git checkout 344a25cbce4c2e8abca14bc0288164318a52d612
the folders micro-RTPS-agent and micro-RTPS-client become empty (thus the cmake fails):
CMake Error at CMakeLists.txt:64 (add_subdirectory):
  The source directory

    /micro-RTPS/micro-RTPS-agent

  does not contain a CMakeLists.txt file.

CMake Error at CMakeLists.txt:65 (add_subdirectory):
  The source directory

    /micro-RTPS/micro-RTPS-client

  does not contain a CMakeLists.txt file.

This happens because the submodules of that revision are not fetched.
This command needs to be executed before the cmake in order to fetch the submodules:
git submodule update --init
After this I see errors in the cmake command:
Cloning into 'thirdparty/micrortps_transport'...
fatal: could not read Username for 'https://github.com': No such device or address

I went this far, I'll continue tomorrow but wanted to list my findings..

This is my dockerfile so far:

# Dockerfile for installing Fast-RTPS and micro-RTPS
FROM phusion/baseimage:0.9.17

MAINTAINER Filip Lemic<EMAIL_ADDRESS>
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections

RUN echo "deb http://archive.ubuntu.com/ubuntu trusty main universe" > /etc/apt/sources.list

RUN echo "deb http://cn.archive.ubuntu.com/ubuntu/ trusty-updates main universe multiverse restricted" >> /etc/apt/sources.list

RUN apt-get -y update

RUN DEBIAN_FRONTEND=noninteractive apt-get install -y -q python-software-properties software-properties-common

# Install Java 8
RUN apt-get update && \
	apt-get upgrade -y && \
	apt-get install -y software-properties-common && \
	add-apt-repository ppa:webupd8team/java -y && \
	apt-get update && \
	echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections && \
	apt-get install -y oracle-java8-installer

# install g{test} sources & put headers into /usr/include
RUN apt-get update && apt-get install -y libgtest-dev unzip build-essential

RUN add-apt-repository ppa:ubuntu-toolchain-r/test && \
	apt-get update && \
# 	apt-get install -y cpp curl make cmake libprotobuf-dev libboost-all-dev protobuf-compiler
	apt-get install -y cmake

RUN \
  apt-get update && \
  apt-get install -y software-properties-common && \
  add-apt-repository ppa:ubuntu-toolchain-r/test && \
  apt-get update && \
  apt-get install -y gcc-7 g++-7 && \
  update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 60 && \
  update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60

# build & install gtest (cmake -DBUILD_SHARED_LIBS=ON . for shlibs)
RUN cd /usr/src/gtest ; cmake CMakeLists.txt ; make

RUN cp /usr/src/gtest/*.a /usr/lib/

# Download and install Gradle
RUN cd /usr/local && \
    curl -L https://services.gradle.org/distributions/gradle-2.5-bin.zip -o gradle-2.5-bin.zip && \
    unzip gradle-2.5-bin.zip && \
    rm gradle-2.5-bin.zip

# Export some environment variables
ENV GRADLE_HOME=/usr/local/gradle-2.5

ENV PATH=$PATH:$GRADLE_HOME/bin

RUN apt-get update && apt-get install -y git

RUN git clone --recursive https://github.com/eProsima/Fast-RTPS.git /Fast-RTPS

RUN mkdir /Fast-RTPS/build && \
	cd /Fast-RTPS/ && \
	git checkout 201a393b500a35d56d3e46b5b6c2c6a96e85928e && \
	cd build && \
	cmake -DTHIRDPARTY=ON -DBUILD_JAVA=ON .. && \
	make  && \
	make install

RUN  git -c http.sslVerify=false clone https://github.com/eProsima/micro-RTPS.git

RUN cd /micro-RTPS/ && \
	git checkout 344a25cbce4c2e8abca14bc0288164318a52d612 && \
	git -c http.sslVerify=false submodule update --init

RUN mkdir /micro-RTPS/build && \
	cd /micro-RTPS/build && \
	cmake -DTHIRDPARTY=ON -DEPROSIMA_BUILD_EXAMPLES=ON .. && \
	make && \
	make install && \
	cd .. && \
	ldconfig /usr/local/lib/

CMD ["bin/bash"]


Failed to download PNGs: blocking

Hello! Each time I try to bind something, I get this error:

NOTE: I had to install the plugin manually as there isn't such a plugin in the store

Bump


Add Styx

Styx is a static site generator based on the Nix package manager. It aims to be lightweight and flexible.

Deploy preview processing.
Built with commit 57540f1ebd2cac3f087a3367fe0dfc65234641fe
https://app.netlify.com/sites/staticgen/deploys/57fb3719c4d9cc0c86bf2e3a

LGTM


regexport not running

Dear Nicholas,
I really appreciate the time you have taken developing this type of tool. I would be very grateful if you can support me with something. When I try to run regexport I get the message you copy below. Could I give you some feedback on this?
Regards,
(BrainRender) C:\Users\danie>regexport
Traceback (most recent call last):
File "C:\DataAnalysis\Anaconda\envs\BrainRender\lib\runpy.py", line 193, in run_module_as_main
"main", mod_spec)
File "C:\DataAnalysis\Anaconda\envs\BrainRender\lib\runpy.py", line 85, in run_code
exec(code, run_globals)
File "C:\DataAnalysis\Anaconda\envs\BrainRender\Scripts\regexport.exe_main.py", line 4, in
File "C:\DataAnalysis\Anaconda\envs\BrainRender\lib\site-packages\regexport\main.py", line 6, in
from regexport.app import App
File "C:\DataAnalysis\Anaconda\envs\BrainRender\lib\site-packages\shiboken2\files.dir\shibokensupport_feature.py", line 142, in import
return original_import(name, *args, **kwargs)
File "C:\DataAnalysis\Anaconda\envs\BrainRender\lib\site-packages\regexport\app.py", line 10, in
from regexport.views.channel_filter import ChannelFilterView, ChannelFilterModel
File "C:\DataAnalysis\Anaconda\envs\BrainRender\lib\site-packages\shiboken2\files.dir\shibokensupport_feature.py", line 142, in _import
return original_import(name, *args, **kwargs)
File "C:\DataAnalysis\Anaconda\envs\BrainRender\lib\site-packages\regexport\views\channel_filter.py", line 64
if (num_sliders := layout.count()) > 0:
^
SyntaxError: invalid syntax

Hi Daniel,
This error message comes up when python version 3.7 or lower is being used; the ":=" syntax is made for python 3.8 or higher.  But to make this tool more compatible with different python versions, I've just removed the assignment expressions.  If you pull the latest version or update the project with pip install --upgrade ABBA-QuPath-RegistrationExporter it should work now.


Can not gpg-sign git commits as git doesn't find gpg

Whenever I use GPG, I use gpg2 on the commandline. I have to do this with gpg21 and gpg installed. git does not find the gpg command and therefor I cannot sign my commits.
$ git commit a -S<my GPG signing-key ID>
error: cannot run gpg: No such file or directory
error: konnte gpg nicht ausführen
fatal: Fehler beim Schreiben des Commit-Objektes.

There is a package called gnupg1compat that adds backwards-compatible symlinks for the regular gnupg package which is currently gnupg20.

And it does not work:
$gpg --list-keys<EMAIL_ADDRESS>gpg: error reading key: No public key

Cannot reproduce this, can you paste the output of:
gpg --list-keys<EMAIL_ADDRESS>

I did that exactly one comment above yours, but well, here we go again:
$ nix-shell -p gnupg1compat
$ gpg --list-keys<EMAIL_ADDRESS>gpg: error reading key: Kein öffentlicher Schlüssel

With english locale:
$ gpg --list-keys<EMAIL_ADDRESS>gpg: error reading key: No public key

Without gnupg1compat:
$ gpg --list-keys<EMAIL_ADDRESS>The program ‘gpg’ is currently not installed. It is provided by
several packages. You can install it by typing one of the following:
  nix-env -iA nixos.gnupg1
  nix-env -iA nixos.gnupg1orig

Sorry I meant gpg2

$ gpg2 --list-keys<EMAIL_ADDRESS>gpg: NOTE: THIS IS A DEVELOPMENT VERSION!
gpg: It is only intended for test purposes and should NOT be
gpg: used in a production environment or with production keys!
pub   rsa4096/20CA0F94 2013-07-11
uid      [  ultimativ] Matthias Beyer (Key für<EMAIL_ADDRESS><EMAIL_ADDRESS>sub   rsa4096/8BD3FCD1 2013-07-11
sub   rsa4096/7ED56B25 2016-01-22

robin@graffel [07:18:10] [~/dev/nixpkgs] [version-add *]
-> % gpg --list-keys<EMAIL_ADDRESS>gpg: NOTE: THIS IS A DEVELOPMENT VERSION!
gpg: It is only intended for test purposes and should NOT be
gpg: used in a production environment or with production keys!
pub   rsa4096/6E5C5807 2014-06-25 [expires: 2016-06-15]
uid         [ unknown] Robin Gloster<EMAIL_ADDRESS>sub   rsa4096/D3EDEC58 2015-06-16 [expires: 2016-06-15]
robin@graffel [07:18:48] [~/dev/nixpkgs] [version-add *]
-> % gpg2 --list-keys<EMAIL_ADDRESS>gpg: NOTE: THIS IS A DEVELOPMENT VERSION!
gpg: It is only intended for test purposes and should NOT be
gpg: used in a production environment or with production keys!
pub   rsa4096/6E5C5807 2014-06-25 [expires: 2016-06-15]
uid         [ unknown] Robin Gloster<EMAIL_ADDRESS>sub   rsa4096/D3EDEC58 2015-06-16 [expires: 2016-06-15]
robin@graffel [07:18:55] [~/dev/nixpkgs] [version-add *]
-> % ll which gpg
lrwxrwxrwx 1 root nixbld 66 Jan  1  1970 /home/robin/.nix-profile/bin/gpg -> /nix/store/s4xypm6d6gy55q9d043046wykfg7p3bk-gnupg1compat-0/bin/gpg
robin@graffel [07:19:21] [~/dev/nixpkgs] [version-add *]
-> % ll which gpg2
lrwxrwxrwx 1 root nixbld 64 Jan  1  1970 /home/robin/.nix-profile/bin/gpg2 -> /nix/store/zax54cybcsxv4kyrjqfvnq5ards63jsn-gnupg-2.1.9/bin/gpg2

Could you run:
ls -l `which gpg` `which gpg2`

$ ls -l `which gpg` `which gpg2`                                                                                │ <<~ [0] [20:18]
which: no gpg in (/home/m/bin:/var/setuid-wrappers:/home/m/.nix-profile/bin:/home/m/.nix-profile/sbin:/home/m/.nix-profile/lib/kde4/libexec:/nix/var/nix/profiles/default/bin:/nix/var/nix/profiles/default/sbin:/nix/var/nix/profiles/default/lib/kde4/libexec:/run/current-system/sw/bin:/run/current-system/sw/sbin:/run/current-system/sw/lib/kde4/libexec:/home/m/archive/bin)
lrwxrwxrwx 1 root nixbld 65  1. Jan 1970  /run/current-system/sw/bin/gpg2 -> /nix/store/6g0l061fryn7gkyyjf7wx58x7427d2w3-gnupg-2.1.10/bin/gpg2

with gnupg1compat:
$ ls -l `which gpg` `which gpg2`
lrwxrwxrwx 1 root root  4  1. Jan 1970  /nix/store/db1dfv1v1scdsvwdlxq69wxwflpa5586-gnupg1compat-0/bin/gpg -> gpg2
lrwxrwxrwx 1 root root 65  1. Jan 1970  /nix/store/db1dfv1v1scdsvwdlxq69wxwflpa5586-gnupg1compat-0/bin/gpg2 -> /nix/store/662jlwbd50dn5nc6p0yiz6lyqx0dkys7-gnupg-2.0.29/bin/gpg2

Have you got gnupg installed in your user or in your system environment?

System env, as pkgs.gnupg21.

@globin Is there still progress here? I don't know what else to do. Putting gnupg1compat into scope does not help either.
I guess git itself has to be build with the appropriate gnupg version...

I guess git itself has to be build with the appropriate gnupg version...

It isn't built with gnupg. I assume git only uses the command-line interface of gnupg, and most commands (and people) don't need gnupg support in git anyway, so that seems fine to me.

So there should be at least an option to override the CLI call, so I can override it to use gnupg2 instead of the gnupg1compat version, because this is actually blocking me from signing commits!
The git build infrastructure is a bit huge, so I don't know what I have to look at for doing this, so guidance would be appreciated!

I cannot reproduce this error:
/tmp$ nix-shell --pure -p gnupg1 -p git

[nix-shell:/tmp]$ mkdir test

[nix-shell:/tmp]$ cd test

[nix-shell:/tmp/test]$ git init .
Initialized empty Git repository in /tmp/test/.git/

[nix-shell:/tmp/test]$ echo Hello, World. >README

[nix-shell:/tmp/test]$ git add .

[nix-shell:/tmp/test]$ git commit -S -m "test"

... gpg-agent pops up a Window and asks for my pass phrase ...

[master (root-commit) db8feb6] test
 1 file changed, 1 insertion(+)
 create mode 100644 README

[nix-shell:/tmp/test]$ git log --show-signature
commit db8feb6c1d246e536681c2fee304a476bb3fa44c
gpg: Signature made Fri 18 Mar 2016 10:48:36 AM CET using RSA key ID 99089D72
gpg: Good signature from "Peter Simons<EMAIL_ADDRESS>[ultimate]
Author: Peter Simons<EMAIL_ADDRESS>Date:   Fri Mar 18 10:48:36 2016 +0100

    test

I believe that you're mixing up GnuPG 2.0 and 2.1 somehow. I.e. note that gnupg1 wraps the 2.0.x version by default, and in your initial message you said that you're using 2.1.x. Maybe that's part of the problem. Anyway, I'm pretty sure that the issue is caused by your configuration, and not by a bug in Nixpkgs.

@peti:
$ nix-shell --pure -p gnupg1 -p git
$ mkdir /tmp/test && cd /tmp/test
$ git init .
$ echo hallo > hallo
$ git add .
$ git commit -S -m test
gpg: skipped "20CA0F94": No secret key
gpg: signing failed: No secret key
error: gpg failed to sign the data
fatal: failed to write commit object

I suppose you should look into why gpg believes that there is no secret key.

All I know is that gpg does not find the key:
$ nix-shell --pure -p gnupg1 --run "gpg --list-keys '<my email address>'"
gpg: error reading key: No public key

Do you realize that gpg is not gpg 2.1.x by default?

Yes, sure, but how does this belong to my issue? I used gnupg1 to gpg --list-keys and it failed... not gpg2 or something? :confused:

You said that gpg2 can use your key correctly, but gpg can not. Now, the difference between the two is that your gpg2 binary comes from GnuPG 2.1.x, but the gpg binary comes from GnuPG 2.0.x. So I reckon that this on variable worth exploring, i.e. what happens when you create gnupg1compat with gnupg21 and try using that?

Wow.
I did:
 gnupg1compat = super.gnupg1compat.override { gnupg = self.gnupg21; };

In my overrides, tried it and it works now. Thank you for your support!

Well, make sure then that you vote in favor of https://github.com/NixOS/nixpkgs/pull/14012. :smile:


Internal Server Error when downloading artifact from UI using a SSO user

Pre-requisites

[X] I have double-checked my configuration
[X] I can confirm the issue exists when I tested with :latest
[X] I have searched existing issues and could not find a match for this bug
[ ] I'd like to contribute the fix myself (see contributing guide)

What happened/what did you expect to happen?
What happened? I get an Internal Server Error when trying to download an artifact from the UI when logged as a SSO admin user.
What did you expect? Being able to download the artifact.
Version
v3.5.0
Paste a small workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
               - name: cypress-e2e
                  inputs:
                    parameters:
                      - name: aws-role-id
                      - name: branch_base
                  nodeSelector:
                    eks.amazonaws.com/capacityType: ON_DEMAND
                    node.kubernetes.io/instance-type: m5.xlarge
                  metadata:
                    annotations:
                      iam.amazonaws.com/role: "{{inputs.parameters.aws-role-id}}"
                  tolerations:
                  - key: "dedicated"
                    operator: "Equal"
                    value: "tests"
                    effect: "NoSchedule"
                  container:
                    resources:
                      limits:
                        cpu: 4
                        memory: 8Gi
                      requests:
                        cpu: 2
                        memory: 1Gi
                    volumeMounts:
                      - mountPath: /home/bumper
                        name: workdir
                    image: cypress/included:13.6.1
                    env:
                      - name: TERM
                        value: xterm
                    workingDir: /home/bumper/core-bumper
                    command: [sh, -c]
                    args:
                      - (yarn start:cypress)&
                        yarn wait-on http://localhost:3000 &&
                        yarn cypress install --force &&
                        yarn cypress run --env tags="@working" &&
                        yarn create:coverage-report
                    envFrom:
                    - secretRef:
                        name: argo-workflows-cicd-configs
                    - secretRef:
                        name: argo-workflows-cicd-secrets
                  outputs:
                    artifacts:
                    - name: e2e-coverage-report
                      path: cypress/report/coverage
                      s3:
                        endpoint: s3.amazonaws.com
                        bucket: bumper-argo-workflows-artifacts
                        region: eu-west-1
                        key: e2e-coverage-report/{{inputs.parameters.branch_base}}-coverage-report.tgz

Logs from the workflow controller
time="2024-02-05T16:03:05.660Z" level=info msg="selected SSO RBAC service account for user" email= loginServiceAccount=admin-user serviceAccount=admin-user ssoDelegated=false ssoDelegationAllowed=false subject=CgkxMDM1NjQxOTASBmdpdGh1Yg
time="2024-02-05T16:03:05.661Z" level=info msg="Get artifact file" artifactName=e2e-coverage-report namespace=cicd nodeId=frontend-pr-release-fe-pz52t-995080838 workflowName=frontend-pr-release-fe-pz52t
time="2024-02-05T16:03:05.675Z" level=info msg="Creating minio client using IAM role"
time="2024-02-05T16:03:05.731Z" level=info msg="Check if directory" artifactName=e2e-coverage-report duration=62.162266ms error="Access Denied" key=e2e-coverage-report/release-fe-coverage-report.tgz
time="2024-02-05T16:03:05.731Z" level=error msg="Artifact Server returned internal error" error="Access Denied"
time="2024-02-05T16:03:05.731Z" level=info duration=72.569413ms method=GET path=/artifact-files/cicd/workflows/frontend-pr-release-fe-pz52t/frontend-pr-release-fe-pz52t-995080838/outputs/e2e-coverage-report size=22 status=500
time="2024-02-05T16:03:07.803Z" level=info duration="91.18µs" method=GET path=index.html size=487 status=0

Logs from in your workflow's wait container
kubectl logs -n argo -c wait -l workflows.argoproj.io/workflow=${workflow},workflow.argoproj.io/phase!=Succeeded

[x] I can confirm the issue exists when I tested with :latest

v3.5.0

We've had a couple of fixes to artifacts in 3.5.x, I would suggest trying the latest patch release, 3.5.4

time="2024-02-05T16:03:05.731Z" level=error msg="Artifact Server returned internal error" error="Access Denied"

To be specific this actually doesn't look like a 500 Internal Server Error. That error is from the Artifact Server itself (not the Argo Server) and looks like more like a 403, which would usually imply a misconfiguration somewhere. I'm not sure how your user RBAC or Server RBAC is configured or how your artifact repository is configured as you didn't provide those details though

Thanks for your quick response @agilgur5
You can see the artifact repository config on the workflow definition. It's a simple configuration to push the artifacts to AWS S3. The service account is assuming the AWS IAM role with permissions to operate on the S3 bucket. The artifact config itself works well and it's pushing content to S3.
                    artifacts:                     - name: e2e-coverage-report                       path: cypress/report/coverage                       s3:                         endpoint: s3.amazonaws.com                         bucket: bumper-argo-workflows-artifacts                         region: eu-west-1                         key: e2e-coverage-report/{{inputs.parameters.branch_base}}-coverage-report.tgz
The problem is when I want to download the artifact from the UI when accessing through SSO (using OpenID connect to authenticate from Github).
I don't know whether the RBAC permissions given to the SSO user are not enough for pulling the artifacts or if this user would require any permissions from AWS to download the artifact.
Here the details about the permissions for this role:
`apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: read-only-user-role
namespace: cicd
rules:

apiGroups:

""
resources:
events
pods
pods/log
verbs:
get
list
watch
delete

apiGroups:

argoproj.io
resources:
eventsources
sensors
workflows
workfloweventbindings
workflowtemplates
clusterworkflowtemplates
cronworkflows
cronworkflows
workflowtaskresults
verbs:
get
list
watch`

I don't know whether the RBAC permissions given to the SSO user are not enough for pulling the artifacts or if this user would require any permissions from AWS to download the artifact.

Artifacts are not a k8s resource, so in terms of RBAC all you need is get workflows.
Your IAM permissions are very relevant here, which is why I asked about IRSA vs kube2iam in my previous comment as they function differently. Per my previous comment, it looks like you're using kube2iam and so your Server pods must also have the annotation that lets them access your bucket.


PrefabStageUtility not found error when importing

Describe the bug
Hi, when importing the latest master branch (072a900) into 2019.3.10, I get the error The name 'PrefabStageUtility' does not exist in the current context.
Log
Assets\Crest\Crest\Scripts\OceanRenderer.cs(275,17): error CS0103: The name 'PrefabStageUtility' does not exist in the current context
Assets\Crest\Crest\Scripts\OceanRenderer.cs(346,17): error CS0103: The name 'PrefabStageUtility' does not exist in the current context
Versions
BIRP 2019.3.10f on Windows 10
To Reproduce
Clone the repo and import into that Unity version.
Additional context
The Unity docs list PrefabStageUtility as an experimental API, so they might have changed its location or function since the unity version the repo project was compiled in (I believe I saw it was 2018.4).

Apologies for this, thanks for the report. Fixed on latest.


Update WordPress webhook to say self-installed blogs are experimental.

Since I've not found a way around the HookPress problem with new post actions, I changed the doc to emphasize WordPress.com. I haven't removed any of the self-install information, maybe something will change and that will work better in the future.
Reword the doc to be clear that WordPress.com blogs are supported and
self-installed blogs are experimental. Change the screen captures to show
WordPress.com.
For more details, see:
original issue https://github.com/zulip/zulip/issues/3245
original PR https://github.com/zulip/zulip/pull/2691

Automated message from Dropbox CLA bot
@feorlen, it looks like you've already signed the Dropbox CLA. Thanks!

Merged, thanks @feorlen!


Question: combine of CPU & GPU image processing

I need to implement an complicated image processing algorithm, which has some part can be accelerated by GPU but some part better using CPU, so I need a way to read and manipulate the raw pixel buffer as a bitmap . Do I have better solution other than using MTIImage(cvPixelBuffer:alphaType: ) and MTIContext.render(image, to: pixelBuffer)  to transfer between MTIImage and CVPixelBuffer?

Can you use a computer kernel?
If your CPU algorithm cannot be implemented using a compute processing pipeline, you have to wait for the GPU to finish its work then do your CPU image processing. Be sure to lock the base address of a pixel buffer before accessing it using CPU (and unlock afterwards).


Refactor worker daemon logging test to reduce flakiness

This makes the interaction between the test and the output thread more synchronous and at the very least, should make it easier to diagnose why the test is flaky.

@bot-gradle test this

I've triggered the following builds for you:

PullRequestFeedback build

@bot-gradle test this

I've triggered the following builds for you:

PullRequestFeedback build

@bot-gradle test and merge

I've triggered a build for you.

Pre-tested commit build failed.

@bot-gradle test and merge

I've triggered a build for you.


[PHP] Support for PHP Composer Autoload for type resolution help

Is your feature request related to a problem? Please describe.
The PHP frontend caters to very decent type resolution and the nature of PHP makes it manageable. For example:
use Acme\Blog\Comment

$comment = new Comment('
Hello
');
echo $comment->getComment();

However, when Composer is used, we often see that autoload is the preferred way to manage class loading (ref. https://getcomposer.org/doc/01-basic-usage.md#autoloading). This is mose widely used in conjunction with PSR4 Autoloader (ref. https://www.php-fig.org/psr/psr-4/). In absence of external files code, we possibly miss generating fully qualified types for external/internal packages that use autoload.
A common way this is used is as follows:
// Include Composer's autoloader
require 'vendor/autoload.php';

use Segment\Client;
use MyParcelNL\Sdk\src\Model\Recipient;
// use Aws\S3\S3Client;
// use PayPalCheckoutSdk\Core\PayPalHttpClient;
// use PayPalCheckoutSdk\Core\SandboxEnvironment;

// segmentio/analytics-php
// aws/aws-sdk-php
// paypal/paypal-checkout-sdk

// Initialize Segment client
$segment = new Client([
    "writeKey" => "YOUR_SEGMENT_WRITE_KEY"
]);

// Initialize AWS S3 client
$s3 = new S3Client([
    'version' => 'latest',
    'region'  => 'us-east-1',
    'credentials' => [
        'key'    => 'YOUR_AWS_ACCESS_KEY_ID',
        'secret' => 'YOUR_AWS_SECRET_ACCESS_KEY',
    ]
]);

In case above, in absence of use Aws\S3\S3Client; we won't get typeFullName of s3 since this is autoloaded.
Describe the solution you'd like
It may be possible to fetch external vendor code (or it may already exist) first. Once this is available, we may be able to get the types already in the CPG without much issues, However, composer.json can also specify the mapping of class like this: https://github.com/wikimedia/mediawiki/blob/master/composer.json#L134 so we may need to parse this as well

As per our discussion offline, it appears we can get the type recovery pass to play nicely by adding the autoloaded entities to an ImportNode, which we can discover in the composer.json (and is what I think will be the best way forward, as to not depend on building the code)

This AWS example shows nicely that anything under require could be autoloaded.

Development is here https://github.com/joernio/joern/tree/dave/php/dependency-download

Note to self: We may want to use this to parse the dependencies for types: https://github.com/hugowetterberg/php-class-parser


Default scenario for deployment with one docker compute node

+1 (but do we need an extra scenario just for a single docker node? Can't e just add the node to one of the exisiting scenarios?)

@toabctl if there's another non-docker node, then we can't know for sure what tempest is testing (I guess).

It's true that this is not needed. If I want to deploy docker locally, I can have local scenario file


Larose repo url

Squashing changes in larose-RepoUrl

@fayrose,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla2.dotnetfoundation.org.
It will cover your contributions to all .NET Foundation-managed open source projects.
Thanks,
.NET Foundation Pull Request Bot


minor typo in kudu.md

Why are the changes needed?

How was this patch tested?

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

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

Thanks for your first contribution and welcome!
+1, LGTM

thanks, merged to master

No problem!


Add unit tests for tekton module

Signed-off-by: mkosiarc<EMAIL_ADDRESS>Maintainers will complete the following section

[ ] Commit messages are descriptive enough
[ ] Code coverage from testing does not decrease and new code is covered
[ ] JSON/YAML configuration changes are updated in the relevant schema
[ ] Changes to metadata also update the documentation for the metadata
[ ] Pull request has a link to an osbs-docs PR for user documentation updates

Fix minor bugs

I have no idea what and why was fixed, this is not how commit should look like


Mach-nix alternatives

With mach-nix being no longer maintained (and me not picking up this puppy),
and dream2nix not being ready for prime time (I believe),
Let's gather some alternatives for the casual visitors of this issue tracker.
To my mind mach-nix did two things:

'solve python package versions' giving requirements + a date (or a pypi-debs-db version)
turn those python package versions into nix derivations.

My understanding of dream2nix is that it's essentially 'lockfile-to-nix', so it will cover 2.
For now, 2 is being covered nicely by poetry2nix.
For 1, I've hacked up ancient-poetry,
which will produce a poetry lock-file with no packages newer than a given date.
I think it complements poetry2nix rather nicely for my use cases.

I figured out sth: https://gist.github.com/yihuang/b2665a2dd6c3fbaf8fa6024f9591b941

Good job on showing how to turn requirements.txt into poetry.
Please note that ancient-poetry now also supports uv, and therefore the new and coming uv2nix.

wasn't aware of uv2nix, if it doesn't require manual overrides like poetry2nix, it'll be awscome.

It will still require overrides (at least until uv starts putting build-dependencies into it's lockfile), and uv2nix will not become an override collection.
I'm preparing such an override collection though: https://github.com/TyberiusPrime/uv2nix_hammer_overrides/
together with a semi automatic tool to find the overrides.


Report: Broken Links and URLs in the Repo

Report of broken URLs
The following urls and links appear broken in the repo and their locations:
starter/README.md

[ ]  url: https://docs.zenml.io/starter-guide/pipelines#step
[ ]  url: https://docs.zenml.io/starter-guide/pipelines/parameters-and-caching
[ ]  url: https://docs.zenml.io/advanced-guide/pipelines/materializers
[ ]  url: https://docs.zenml.io/starter-guide/pipelines#pipeline
[ ]  url: https://docs.zenml.io/starter-guide/pipelines/fetching-pipelines

All URLs

[ ] https://docs.zenml.io/advanced-guide/pipelines/materializers
[ ] https://docs.zenml.io/starter-guide/pipelines#pipeline
[ ] https://docs.zenml.io/starter-guide/pipelines#step
[ ] https://docs.zenml.io/starter-guide/pipelines/fetching-pipelines
[ ] https://docs.zenml.io/starter-guide/pipelines/parameters-and-caching

@MarkusSagen With the latest template, all of these are fixed. Do try the new one - it features the new zenml features that are game changing!


Loading Screen Observation

Could we add some of the following details to the observations? These details are visible to a human player on the loading screen:

The map (name, version, anything required to get a unique ID in case the maps change over time)
Map spawn locations (although maybe this could be included in the map details in point 1)
Each player's chosen race (T, V, Z, random) - not the actual race for random

Since a player's strategy will often depend on the map, the opponent's race and their location, all of these details would help a bot in the early game.
A more advanced bot may study the feature layers, but simpler bots could achieve a lot with less effort if these details were available.

Also add:

Alerts when units/buildings have been attacked
Feedback when actions cannot be performed, e.g. cannot place building

Base/gas worker counts (e.g. 12/16 or 2/3)

Is there any method to get some signals when I failed to place building?

Well, I think I found the way to know the failure of placing building.
when the "env.step(actions=[actions.FunctionCall(_BUILD_SUPPLY_DEPOT, [_SCREEN], [incices]])])" command is working, the minerals are immediately decreased. But if the command is fail(caused by some reasons), then the minerals are not decreased.
I think we can used this principle.

AI surrender (also need an action to accept)

Yes. I think all of these will help to improve the bot. Especially when the opponent AI says 'gg'， there should be a way for our agent to notice that and accept it to make this game close fast which makes training more fast.

Added errors and alerts here: 1f1c447 . Unfortunately the API doesn't actually return many of them.

Base/gas  worker counts (e.g. 12/16 or 2/3) as requests by @skjb has been solved some time ago. you can access it via obs.observation.feature_unit.assigned_harvesters = 23 and  ideal_harvesters = 24


Replace dots with underscore in discovered service name

The name of the Otterize service is derived from the K8s resource that owns a pod we want to secure. The name of the resource that owns the pod doesn't necessarily have to be a valid DNS name, but it must follow the RFC 1123 subdomain naming convention.
This means that '.' is a valid character in the deployment name, which poses a challenge when parsing server names and namespaces in client intents format. The dot is used as a separator between the name and the namespace. For example, if the deployment name is my-application.4.5.0 in the infra namespace, we won't be able to tell if my-application.4.5.0.infra is a namespaced name or just the name of the deployment without any namespace.
To address this issue, this PR replaces every dot discovered in the owner resource name with an underscore. In the above example, we would expect the Otterize service name of the mentioned pod to be my-application_4_5_0.infra, while my-application_4_5_0_infra would be another service name without a namespace.

Before releasing this, make sure to update the serviceidresolver in the network mapper and the credentials operator so they resolve service names the same way.


[webapp] Evaluate the usefulness of webpack dashboard

https://formidable.com/blog/2016/08/15/introducing-webpack-dashboard/
If it can be integrated easily, without too much conflict with running multiple servers at the same time, it could be a good idea.

At this point it does not seem to work well with concurrently. For now this is not to be implemented, if there is a way in the future to make them work together it can be reconsidered.


exclude_defaults is broken for Optional fields with default_factory when set to None

Initial Checks

[X] I have searched GitHub for a duplicate issue and I'm sure this is something new
[X] I have searched Google & StackOverflow for a solution and couldn't find anything
[X] I have read and followed the docs and still think this is a bug
[X] I am confident that the issue is with pydantic (not my code, or another library in the ecosystem like FastAPI or mypy)

Description
Hello! First of all thank you for this fantastic framework and for maintaining the old version.
When having a model with an Optional field that has a default_factory, when that field is set to None, the resulting serialisation of that model lacks that field, instead of including it with the None value.
I've attached a test case inspired by the official one.
I believe that somewhere during the model creation, the ModelField.default is set to None instead of Undefined, breaking the exclude_defaults check at this line.
Example Code
def test_exclude_defaults():
    class Model(BaseModel):
        nullable_default_factory: Optional[str] = Field(default_factory=lambda: "a")

    m = Model(nullable_default_factory=None)
    assert m.dict(exclude_defaults=True) == {
        'nullable_default_factory': None,
    }

Python, Pydantic & OS Version
pydantic version: 1.10.18
            pydantic compiled: True
                 install path: /tmp/latest-pydantic1.venv/lib/python3.11/site-packages/pydantic
               python version: 3.11.2 (main, Aug 26 2024, 07:20:54) [GCC 12.2.0]
                     platform: Linux-6.1.0-25-amd64-x86_64-with-glibc2.36
     optional deps. installed: ['typing-extensions']

Affected Components

[ ] Compatibility between releases
[ ] Data validation/parsing
[X] Data serialization - .model_dump() and .model_dump_json()
[ ] JSON Schema
[ ] Dataclasses
[ ] Model Config
[ ] Field Types - adding or changing a particular data type
[ ] Function validation decorator
[ ] Generic Models
[ ] Other Model behaviour - model_construct(), pickling, private attributes, ORM mode
[ ] Plugins and integration with other tools - mypy, FastAPI, python-devtools, Hypothesis, VS Code, PyCharm, etc.

Closing as not planned for now, but as @Viicos said, happy to consider a PR with a fix.


What password to enter?

When I start the script, it asks me for a password, but I have no idea which one to enter.

It is designed to promote education and the improvement of computer/cyber security.
The authors or employers are not liable for any illegal act or misuse performed by any user of this tool.
If you plan to use this content for illegal purpose, don't.  Have a nice day :)

[*] Downloading malware domain list from http://mirror1.malwaredomains.com/files/justdomains

Password:
[!] Login failed

what is the syntax?

You'll need an account for expireddomains.net to use those features of the script now and then provide the username with the -u parameter. When prompted, enter the associated password with this expireddomains.net account.


Fixed a typo in index.js

Changed “I think we’ve got the highest change of removing them one at a time“ to ”I think we’ve got the highest chance of removing them one at a time."

Awesome, thanks @handcoding!
P.S. Welcome! 👋

@wooorm Happy to help!


The Monarch generator doesn't add an escape symbol before /

generateMonarch doesn't add an escape symbol before / what leads to an error.
Langium version: 1.1.0
Package name: langium-cli
Steps To Reproduce
Create a grammar that uses / symbol: the arithmetic example
The current behavior
No escape symbol before the /: symbols:  /\(|\)|\*|\+|,|-|/|:|;/
The expected behavior
The escape symbol is in its place: symbols:  /\(|\)|\*|\+|,|-|\/|:|;/

This is a duplicate of #740 , could you add details of this case there as well, and we can close this one out?


Question: Is it possible to edit a query results grid originating from a custom query on MSSQL DB

Question
is it possible to edit a query results grid originating from a custom query on MSSQL DB?   That is provided in MSQL, it should be provided on a ODB profile (with FOR UPDATE clause) but how to do in MSSQL?

Operating System
MacOS High Sierra 10.13.6

DBeaver plugin  5.1.3 on Spring Tool Suite 3.9.4.RELEASE [Build Id:<PHONE_NUMBER>43, Eclipse Neon.3 (4.6.3)]

one workaround is to choose "Edit Table" from the context menu of "Database Navigator > My SQL Connection > Tables > My Table" choice of "Data" tab and right click on top left corner selecting "Order Filter > Customize" and deselecting all ("show none" icon button) finally selecting the appropriate columns of the query and choosing ok to apply selections to view.

For MS SQL this works for any custom SQL.
Note: you need to use jTDS driver. Native driver doesn't provide valid meta information about columns.
Note: you must include some unique key columns in results to be able to edit.

That's great news, thank you very much!

Umm, it works at least with some tables..
Could you post sample table DDL and sample query. Maybe even using system tables.

Apologies for the somewhat late reply, the lag is due to time required for me to setup a VM enviroment so that I can test it outside of work premises, restore database under discussion and configure connectivity. Out of pure luck the issue revealed itself. What was causing the locking of the grid had been the non use of the schema-owner before the table name. The given database was the only database within so the schema user prefix was not necessary for the driver to resolve the proper object. Putting the prefix before the table name made the grid editable.

Yeah, SQL Server has tricky schemas.
DBeaver currently doesn't support default schema get/set (although it supports default database change), that's why it can't find objects if schema is not specified.
Somebody should make a feature request for def schema detection )
Closing this one.


SQLiteFullException: database or disk is full (code 13)

I have more and more users seeing this error showing up when they are trying to delete documents. The documents are being retrieved using getExistingDocument().
Full trace:
android.database.sqlite.SQLiteFullException: database or disk is full (code 13)
       at android.database.sqlite.SQLiteConnection.nativeExecute(SQLiteConnection.java)
       at android.database.sqlite.SQLiteConnection.execute(SQLiteConnection.java:745)
       at android.database.sqlite.SQLiteSession.endTransactionUnchecked(SQLiteSession.java:437)
       at android.database.sqlite.SQLiteSession.endTransaction(SQLiteSession.java:401)
       at android.database.sqlite.SQLiteDatabase.endTransaction(SQLiteDatabase.java:537)
       at com.couchbase.lite.android.AndroidSQLiteStorageEngine.endTransaction(SourceFile:100)
       at com.couchbase.lite.Database.endTransaction(SourceFile:1579)
       at com.couchbase.lite.Database.runInTransaction(SourceFile:686)
       at com.couchbase.lite.Document.purge(SourceFile:193)

Hi @SafetyMarcus,
Thank you very much for reporting issue.
From log message, it seems storage is full. But it is not clear what caused this.
Could you please provide supporting information if possible.
Thanks!

Hi @SafetyMarcus,
Does you app calls Database.compact() ?

Hi @hideki. No we are not calling Database.compact() anywhere within the app. Should this be being called? Could it be due to the fact that getDocumentWithIDAndRev() is requesting the results be in descending order even though it is being limited to 1? As far as I'm aware this will create a temporary table in memory.

SQLite_FULL error could be happened due to full main or temp disk. Android uses memory for temp so it's possible that the temp memory is full. I'm not sure if getDocumentWithIDAndRev() is causing issue (it's hard to tell).
From your stacktrace, it looks like the error happened in a transaction when calling purge method. It's possible that if you have very large revision tree to purge in one transaction, it could be out of temp memory. @SafetyMarcus will you able to reproduce the issue yourself? Do you know if the purged document has a lot of revisions?
As @hideki said, regularly calling compact() would help trimming unused revisions. To make the compact() working correctly, you will need to set Database.setMaxRevTreeDepth() to a reasonable number depending on your app (maybe 20). Also please make sure that you manage conflicting documents by tom-stoning losing revisions so that they could be garbaged during compact().

@SafetyMarcus FYI, we have recently fixed the compact method. That will be included in the next 1.2 release. Meanwhile, you will need to build the library from the master branch. Please let us know if regularly doing compact helps with your issue.

For now I will close the issue and we can reopen anytime if regularly compacting the database doesn't help. Thanks!

Sorry @pasin, I somehow missed those responses 😓. I am unable to reproduce the issue myself but it is possible that that the users' documents are quite large and purging of even a small number of revisions could be causing this issue. I look forward to the 1.2 release

@pasin  I have met the same error. Trace as follow:
02-04 01:17:19.039 W/ContextImpl( 7961): Unable to create files subdir /data/user/0/com.android.launcher3/cache
02-04 01:17:19.040 E/ActivityThread( 7961): Unable to setupGraphicsSupport due to missing cache directory
02-04 01:17:19.056 E/SQLiteLog( 7961): (14) cannot open file at line 30046 of [9491ba7d73]
02-04 01:17:19.056 E/SQLiteLog( 7961): (14) os_unix.c:30046: (13) open(/data/user/0/com.android.launcher3/databases/launcher.db) -
02-04 01:17:19.058 E/SQLiteDatabase( 7961): Failed to open database '/data/user/0/com.android.launcher3/databases/launcher.db'.
02-04 01:17:19.058 E/SQLiteDatabase( 7961): android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:806)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:791)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:694)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:1155)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:268)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:223)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at com.android.launcher3.LauncherProvider$DatabaseHelper.(LauncherProvider.java:468)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at com.android.launcher3.LauncherProvider.onCreate(LauncherProvider.java:123)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.content.ContentProvider.attachInfo(ContentProvider.java:1730)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.content.ContentProvider.attachInfo(ContentProvider.java:1705)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.app.ActivityThread.installProvider(ActivityThread.java:4999)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.app.ActivityThread.installContentProviders(ActivityThread.java:4594)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4534)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.app.ActivityThread.access$1500(ActivityThread.java:151)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.os.Handler.dispatchMessage(Handler.java:102)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.os.Looper.loop(Looper.java:135)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at android.app.ActivityThread.main(ActivityThread.java:5254)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at java.lang.reflect.Method.invoke(Native Method)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at java.lang.reflect.Method.invoke(Method.java:372)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:902)
02-04 01:17:19.058 E/SQLiteDatabase( 7961): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697)
02-04 01:17:19.059 D/AndroidRuntime( 7961): Shutting down VM
02-04 01:17:19.065 I/Process ( 7961): Sending signal. PID: 7961 SIG: 9

@midcloud
It seems that the application does not have write permission to the application directory. Did you install the app to SDCARD? or Can you check write permission?
Thanks!

@hideki I got the same exception too.. Have you got any idea about it?
android.database.sqlite.SQLiteFullException: database or disk is full (code 13) 	at android.database.sqlite.SQLiteConnection.nativeExecute(Native Method) 	at android.database.sqlite.SQLiteConnection.execute(SQLiteConnection.java:548) 	at android.database.sqlite.SQLiteSession.endTransactionUnchecked(SQLiteSession.java:437) 	at android.database.sqlite.SQLiteSession.endTransaction(SQLiteSession.java:401) 	at android.database.sqlite.SQLiteDatabase.endTransaction(SQLiteDatabase.java:522) 	at de.greenrobot.dao.AbstractDao.executeInsert(AbstractDao.java:352) 	at de.greenrobot.dao.AbstractDao.insertOrReplace(AbstractDao.java:332)

@IvanAldrich,
I guess Android disk is full or the app is installed on SDCARD.
Can you confirm?
Thanks!

@hideki Sorry i can't be sure. It's reported by user and i can't know wether it's full or not. Does there any other factor result in this exception? The user reported more than 10 crash in one day..

@hideki @pasin It's confirmed that the usableSpace of dataDirectory is 473518080, so I suppose it's not because of the full of disk. In my project I delete a list of Entity in a for statement and then excute replaceOrInsert immediately, is there any possibility this kind of operation cause thi exception?

From SQLite documentation

(13) SQLITE_FULL
The SQLITE_FULL result code indicates that a write could not complete because the disk is full. Note that this error can occur when trying to write information into the main database file, or it can also occur when writing into temporary disk files.
Sometimes applications encounter this error even though there is an abundance of primary disk space because the error occurs when writing into temporary disk files on a system where temporary files are stored on a separate partition with much less space that the primary disk.

https://www.sqlite.org/rescode.html#full
I guess application is installed on SDCARD or something.

@hideki  Thanks for your kindly reply.
Finally,we have found the cause. During the device on aging test,the directory /data/user permissions have been changed. so we add  "mkdir /data/user 0711 system system"   in rootdir/init.rc to solve this issue.

I have the same issue.
android.database.sqlite.SQLiteFullException: database or disk is full (code 13)
at android.database.sqlite.SQLiteConnection.nativeExecuteForLastInsertedRowId(Native Method)
at android.database.sqlite.SQLiteConnection.executeForLastInsertedRowId(SQLiteConnection.java:782)
at android.database.sqlite.SQLiteSession.executeForLastInsertedRowId(SQLiteSession.java:788)
at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:86)
at org.greenrobot.greendao.AbstractDao.insertInsideTx(AbstractDao.java:368)
at org.greenrobot.greendao.AbstractDao.executeInsert(AbstractDao.java:351)
at org.greenrobot.greendao.AbstractDao.insertOrReplace(AbstractDao.java:340)
the device system information:
Android:4.4.2
The device cause, sure?


[Feature Request] Custom last render component as "More"

Hi all,
First of all, this is an amazing component.
Thanks to the people working hard on this project.
Here is a wish:
Is it possible to custom the last one rendered component when the render components are too many (over 200)?
The current situation is that the list just extends as much as it can.
It will be better if we can decide how many items we want to list and make the last component like "Read More".
Thanks.

First give a sliced instance of your suggestions to suggestions, for example:
suggestions={results.slice(0, 10)}
And then add your custom 'Read More' button after children through renderSuggestionContainer


Unable to install odevio in windows 10

Unable to install odevio in windows 10
`C:>pip install odevio
Traceback (most recent call last):
File "C:\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "C:\Python310\Scripts\pip.exe_main.py", line 4, in
ModuleNotFoundError: No module named 'pip'
`

It's because PIP isn't properly installed on your computer. PIP is the python package manager. You can either reinstall pip or you can download our desktop client which should be easier to use if you are not familiar with CLI interfaces. You can download the desktop client from our website : https://www.odevio.com/.


Create Store Story Schema

This is a temporary Schema that will be adjusted to fit requirements

this schema is temporary and will be adjusted to requirements


[#676] Make classname prefixes overridable

Fixes #676
Changes

Adds a new function classname.get() specifically for building classnames, which uses the existing join-with-dashes under the hood
setup.$prefixes now defines the prefixes used for classnames at each level, to allow the values to be overridden/removed
Uses classname.get() in the atom- & organism-level components, and the utility classes, and removes the now-unnecessary stuff they were doing to get prefixing & namespacing to work
join-with-dashes is now in a new tools/string module

Checks
Delete if not applicable:

[x] Storybook documentation has been updated
[x] Fixtures in test/scss/ have been updated
[x] Your changes have been added to the unreleased section of CHANGELOG.md

Looks good ✨


Clean up unpublished collections that aren't in use

Are all the unpublished collections under active development or testing? Are there any that people messed around with but don't plan to go back to? If so it would be helpful to delete those.

@hackmastera , I cannot delete this collection, as it says it doesn't exist. can you help? thanks! https://dpul.princeton.edu/dpul.princeton.edu%2Fslavic. I actually cannot delete any, as it is still giving me the 405 error

@kelea99 I will take a look.

@kelea99 I just took a look at this. I do have a memory that the "Late Soviet Posters" collection had a bad slug in figgy, and that's probably where this url came from (https://dpul.princeton.edu/dpul.princeton.edu%2Fslavic). I'll go ahead and delete it from the console.
Can you give me an example of another one you wanted to delete, for which you were getting the 405?

@hackmastera, sure! Bibliotheca Cicognara (unpublished) was one of them, but let me try again. I looked and it was still there.  standby

Same thing happened just now, when trying to delete the collection, @hackmastera. :

thanks!

I spent a bit of time looking into this and I haven't yet found the reason for the permission error. If you'd like to just give a list of the ones that should be deleted I can do them from the console. That would at least get rid of the collections we aren't using.

I also get the 405 through the UI. Checked permissions set via ability and we should be able to destroy this exhibit given our admin status.
> ability = Ability.new(ah)
> ability.can? :destroy, e
=> true


qbittorrent-portable: remove --portable option

Close https://github.com/lukesampson/scoop-extras/issues/3363
I don't know why not download from fosshub.

https://github.com/lukesampson/scoop/issues/3802


Decision Making + Martha's

Update decision making section of the bylaws to include Martha's Rules
Follow-on from:
https://github.com/commonhaus/foundation-draft/discussions/43

Rebased to avoid conflict with #52 ...

Merging for first pass legal review.


Set up impress.js repository

Here are some tasks that we will probably be doing in the incoming weeks to setup impress.js in a state where everything is focused well documented for future contributors and users of impress.js.
Clean up
The tasks here take in consideration my comment in the state of the project and @bartaz suggestions in the same thread.

[x] Check all Pull Requests to find the ones where the OP is still interested in keeping track of it with the following message:

Hi <name of the poster>, in an effort to clear up older issues/PRs we are pinging back to know if you are still tracking this request.

To give a little bit of context, recently a decision was made in the project to make the development more active and the first task is to clear up older PRs like this one to see if the OP is still interested in keep it going.

If the OP does not want it anymore, just close it or create an issue for tracking purposes.

[x] Check all issues and close duplicates. If one issue refers to more than one feature, create one issue for each. (X-reference everything with github linking so we can get the whole context from any endpoint.). If the issue is solved, close it.
Status:
Descending triage from the oldest issue to the newest.
Next issue to be looked at: -1 (done)

[x] Review all PRs and close the ones that doesn't make sense or the ones that are doing more than one thing after acknowledgement of the OP (or 1 week of no response).

[ ] Review all issues and close the ones that doesn't make sense after acknowledgement of the OP (or 1 week after no response).

At this point we will have only the essential issues/PRs open, all the others will be closed.
Contributing

[x] Create a CONTRIBUTING.md file to guide new contributions (or filter existing ones). Here is a nice example. Add to the "WANT TO CONTRIBUTE?" section of the README.

[ ] Fill the changelog in the "Releases" page for every version released so far

Documentation

[x] Clear the wiki, removing projects that are no longer maintained and useless pages.
[ ] Document the currently supported API in the README.
[ ] Document the support only for evergreen browsers that support CSS 3D transform (easier than always having to update the support)

Release

[ ] Create a new minor release
[ ] Release on npm (#426)

... After all that, I will create a new issue with tasks regarding the open PRs and what we will be doing next for the future of impress.js!
ping @impress/mergers

Totally agree with this :+1:
What I'd recommend is to create a very basic CONTRIBUTING.md file that would simply ask to read this issue so new contributors only refer bugs in their new tickets and no new features. Maybe then some contributors might help in the proces of cleaning the repo. What do you think?

That makes sense while we are at the cleaning process, although it doesn't seems worth ignoring feature proposals.

For the contributing file, I would add:

While we may not have 100% test coverage in the near future, it is a pre-requisite for considering any pull request that the code being touched is covered by tests. If this is not the case, you're invited to start by adding such tests (testing the current code) after which you can propose your fix or new feature.
Pull requests should of course add their own tests testing the new or changed functionality, or in case of a bug fix, protecting against regressions.

Good idea.

@henrikingo

For the contributing file, I would add:

While we may not have 100% test coverage in the near future, it is a pre-requisite for considering any pull request that the code being touched is covered by tests. If this is not the case, you're invited to start by adding such tests (testing the current code) after which you can propose your fix or new feature.
Pull requests should of course add their own tests testing the new or changed functionality, or in case of a bug fix, protecting against regressions.

I have created the initial version of the contributing file. For the moment it reflects the master branch, it can be improved later, feel free to review :+1:

I think we should leave this issue open until the project gets some cleanup for we can remember that contributing guidelines should be changed when the API changes and gets better :)

@Pierstoval Are you suggesting to keep this issue open even after the tasks in the description are completed?

Oh no, actually I was just talking about the contributing file, nevermind I think I got lost in the huge amount of issues :smile:

Oh no, actually I was just talking about the contributing file, nevermind I think I got lost in the huge amount of issues :smile:

Oh ok :)

Just finished triaging all PRs.

The relevant ones are open and marked with the label backlog.
I was able to reduce from ~100 PRs to just 13 of same value.
Can only start reviewing once we have a proper suite of tests or plugin API (in case of some of those open PRs)

Added a new task in the "Documentation" section:

Clean up the CHANGELOG.md file to be consistent with the releases page

I have finished adding all releases in the Releases page along with their equivalent tags and link to PRs/commits.
I have used the CHANGELOG.md file as a reference to the content to the changelog. Some stuff might have been added that are not in the changelog but make bigger changes to the implicit public contract.
The following show all changes between versions in case anyone wants to verify (If possible, I encourage to do so):

0.2...0.3
0.3...0.4
0.4...0.4.1
0.4.1...0.5
0.5...0.5.1
0.5.1...0.5.2
0.5.2...0.5.3

I will be creating a draft of the next 0.6.0 version that will be available only to collaborators.

impress.js 0.6.0 have been released in Github and npm:

https://www.npmjs.com/package/impress.js
https://github.com/impress/impress.js/releases/tag/0.6.0


Add usage object with the used tokens to CompletionResult

In the docs, you have this request example ([here]):
  "model": "text-davinci-002",
  "prompt": "Say this is a test",
  "max_tokens": 6,
  "temperature": 0,
  "top_p": 1,
  "n": 1,
  "stream": false,
  "logprobs": null,
  "stop": "\n"
}

And this response example:
  "id": "cmpl-uqkvlQyYK7bGYrRHQ0eXlWi7",
  "object": "text_completion",
  "created":<PHONE_NUMBER>,
  "model": "text-davinci-002",
  "choices": [
    {
      "text": "\n\nThis is a test",
      "index": 0,
      "logprobs": null,
      "finish_reason": "length"
    }
  ],
  "usage": {
    "prompt_tokens": 5,
    "completion_tokens": 6,
    "total_tokens": 11
  }
}

I think it's a good option add the usage object (currently not available in the CompletionResult object):
package com.theokanning.openai.completion;
import lombok.Data;
import java.util.List;
@Data
public class CompletionResult {
    String id;
    String object;
    long created;
    String model;
    List<CompletionChoice> choices;
}

Thanks for pointing this out! I'll release a new version with a fix soon


Website is not responsive and needs improvement

Website is not responsive and needs CSS fix

I'm not really good with responsive design, but I definitely have that on my mind. PRs are welcome too :)
Also @AntimatterReactor, you just removed some JS, but it didn't change the responsiveness

I made the buttons responsive, view this pull request: https://github.com/DynamicSquid/night/pull/83

Which link?

nvm

How come have this not been solved yet @DynamicSquid ? It's been 6 months...

@DynamicSquid Yeah... it seems to not be very performant on my device as I get lag whilst scrolling.


Error in Core Warning Rules

There is a tiny error in the cell M49 of the warning rules, where there is an apostrophe after the written code. Causes the generation of bcrpp.core.warning.rules to stop. Also 666 is not showing as a valid value for alcohol_stop when I believe it should be.

I didn't see the apostrophe when I originally posted the issue, but I think this is a more concrete description of Issue #3

Thanks for the catch! I just edited, could you check if it's working now?

Tried to check today @SrijonMukherjee but I am getting stopped at an error in the Warning Rules that I think stems from cell C5.
"as" is written in the Valid Value Lower field, but I think it's expecting a number

Sorry for the typo—this should be resolved now!


Rate Limiting Issue in Webhook URL

The Rate Limiting For Incoming webHook URL is very very less, like it's almost 250 times lesser than what is provided by Slack, Isn't there a way that we can increase that.
Please let me know If there is a way to do so

@Yashkothari9 -
A retry logic with exponential back-off can mitigate rate limiting for cases where requests are exceeding the limits within a second. Refer HTTP 429 responses to avoid hitting the rate limits.

@Prasad-MSFT so how much time shall we wait to check

@Prasad-MSFT so how much time shall we wait to check

@Yashkothari9 - Nearly 10-15 seconds.

@Prasad-MSFT had one more question that how many webhook url can be made in a channel?

@Yashkothari9 - We will check this with engineering team and will get back to you. Thanks!

@Yashkothari9 - The message size limit is 28 KB. When the size exceeds 28 KB, you receive an error. For more information, see limits and specifications for Microsoft Teams.

We are closing this issue for now. Please feel free to reopen if required. Thanks!


elfeed-search-show-entry in other window?

Hi!
i was wondering if there was an option to have elfeed-search-show-entry  open in new window? i looked in the documentation but couldnt find such an option.
i prefer not to use elfeed-goodies bu rather have a split emacs frame into 2 windows where the left window will be in a elfeed-search mode and the right in a elfeed-show mode and pressing enter in the search mode will open the entry in the right show window?
thx :)
Z

Just set your own function for elfeed-show-entry-switch. It's set to
switch-to-buffer by default.

thx @skeeto !
my lisp coding skills regretfully is zero :)
you mean something like this
``(setq elfeed-show-entry-switch
'split-window-right)

Close, but it needs to be a function that accepts a single argument,
which is the buffer to be displayed. To use split-window-right, you'd
call it from your own buffer-switching function. For example:
(setq elfeed-show-entry-switch
      (lambda (b)
        (let ((w (split-window-right 80)))
          (set-window-buffer w b)
          (select-window w))))

If you're familiar with Magit, it's the exact same concept as
magit-display-buffer-function. You can search online for that name to
see how people other people manage this sort of thing.
This might be close to what you're looking for:
(setq elfeed-show-entry-switch #'pop-to-buffer)
(define-key elfeed-show-mode-map (kbd "q") #'delete-window)

It uses pop-to-buffer to split and put focus in the new window. It also
redefines "q" in elfeed-show-mode to kill the window that pop-to-buffer
created.

This might be close to what you're looking for:
(setq elfeed-show-entry-switch #'pop-to-buffer)
(define-key elfeed-show-mode-map (kbd "q") #'delete-window)

Perfect, thx so much and thx again for elfeed, its truly amazing :D
best
Z


Add support for Port Control Protocol

It would be great to have this implemented.

Hello,
I don't have plan to do it now. But pull requests are welcomed.


failed to deserialize config from...

I tried to use this, but it is not working :/
https://github.com/sile/hls_m3u8/pull/44/checks?check_run_id=461139614

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Device:

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

It wrote out in the error that your deny.toml config is not valid, and pointed to the specific line:
2020-02-21 21:07:44 [ERROR] failed to deserialize config from '/github/workspace/deny.toml': unknown field yanked, expected one of db-path, db-url, vulnerability, unmaintained, notice, ignore, severity-threshold for key advisories at line 178 column 1
check out the cargo-deny book on how to create a valid config

okay, thanks.
I did expect the default toml to work without having to change anything, except for the specific changes, that your project needs (for example blacklisting crate x)
Therefore I thought this was a bug 😕


match jira id from github commit

Leaving this as draft right now since there's more to add.

Overall, I don't necessarily agree with the approach of fetching the commit information from the GitHub API:

This check should run on the build pipeline. The git clone is already there. Let's validate that instead.
I find it unlikely that we'll only ever check a single commit. We may have to fetch 10s or 100s of commits for each image being validated. Using the GitHub API is going to introduce significant latency.
This ties the implementation to GitHub which I guess it's ok at this point since other parts of hacbs are already tied to it.

I went back and forth on this also. Ultimately I decided we would probably need to support the api and retrieving the commits from the cloned repo. I say this because I can see this being invoked independent of the build pipeline. Retrieving multiple commits might be an issue from the api (which I can't believe, but seems to be true).

While writing notes in [the m6 planning doc|https://docs.google.com/document/d/12thczSsHgmZM9XH_CqYlIiyWCAXePF4lCDJKl6swQEY/edit#] I realized I don't think this belongs in ec-cli. EC shouldn't become a general purpose CI checker, right?


add tabs styles

Task: task-718670
Link: preview-480
Add Tab styles to atlas. Updated to follow Learn rebrand and Assessment update
Testing

Step one
Step two
Expected result:

Additional information
[Optional]

@jim-benson is there a figma for this? also, think we'll need to handle some scrolling on mobile screens

requires a changeset too

@wibjorn not sure if there was a design figma, it was just from https://www.figma.com/file/dtRQlu0reG0a771zrPcaP9/Assessments-Homepage?node-id=3445%3A48664. Though as I was doing this, it brought up some questions. Like the current tabs has two styles and do we need to bring these in to altas as well or not. As well as any other requirements

@jim-benson is there a figma for this? also, think we'll need to handle some scrolling on mobile screens. Edit: don't see it in the Atlas Figma, this needs to go through design systems review: https://www.figma.com/file/uVA2amRR71yJZ0GS6RI6zL/🌞-Atlas-Design-Library?node-id=0%3A1

I will wait till I find out if this was reviewed or not


Simplify UseCases implementation and fix issue with multiple configurations

Description
Add a short description of the change. If this is related to an issue, please add a reference to the issue.
CHANGELOG

[CHANGED] Describe your change here. Look at CHANGELOG.md to see the format.

Codecov Report

Merging #29 (6224812) into master (5d98c47) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master       #29   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            6         6
  Lines          298       298
=========================================
  Hits           298       298

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 5d98c47...6224812. Read the comment docs.


Ping timer

Wait for ~60 seconds and then send our own ping (with a timer waiting for a reply).

Done in 74624d35c51d20053b441c1d0d135b4cbfc3f2b4.


Fix couch db tests

Overview
Multiple fixes and refactoring for couch tests.
couch_db_tests
Proper usage of test assertions to detect fixture failing, pre-test config setup cleanup, remove custom loop in favour of standard eunit foreach and forechx`
cookie_domain_test
Fix of invalid assertions, remove obsolete helpers, proper usage of test setup.
global_changes_tests
Remove unused var assignment to avoid compilation warning
Testing recommendations
make eunit apps=couch should pass 1219 tests
Checklist

[x] Code is written and works correctly;
[x] Changes are covered by tests;
[ ] Documentation reflects the changes;

+1