Set Up SSL for HTTP and Bolt

Right now only HTTPS is enabled.  I'm missing something in the setup.

seem to be working for bolt.  Not for cluster or backup though.

SSL for Bolt and HTTP is currently being setup but something isn't right.  It's using a self signed cert.  You can bypass the self signed cert.  You're then presented with the Neo4j Browser login screen.  However, it's not possible to login.  One possibility is that the javascript driver embedded in the browser wants a proper cert.  Another possibility is that the self signed cert config is somehow wrong.  We're not currently sure which it is.
The current thinking is that we do want SSL configured with a self signed cert for bolt and http by default.  We would not do that for backup and cluster however.

SSL cannot be implemented as it required certs before hand...self signed certs still does not solve the problem as the browser showcases invalid cert or missing cert and fails to load the url...this could be part of custom solution but not part of the main template deployed in marketplace


Fix wrong link for the "bin-server" project

The project card for "bin-server" had a link redirecting to the wrong github repository.

Dépôt GitHub

Changed to :

Dépôt GitHub

Nice, thank you!


Darken dropdown item hover style

Closes https://github.com/twbs/bootstrap/issues/23329

Not sure if we want to backport this, or if that counts as a breaking visual style...

Not sure if we want to backport this, or if that counts as a breaking visual style...

@mdo thoughts on backporting?

@mdo thoughts on backporting?

I'm good with a backport @patrickhlauke. This isn't a breaking change IMO.

I'm good with a backport @patrickhlauke. This isn't a breaking change IMO.


Can DAIN directly process the raw video?

The demo script given in the repo require two frames as input, however, can the DAIN directly choose a  video as input and output the corresponding synthesis video?
or does anyone has written the script to do so?

The simple method is to use ffmpeg.
First, decode the video to frames, then use dain to do interpolation.
After processing, use ffmpeg again to encode the whole frames.
There is a script you can refer to https://github.com/avinashpaliwal/Super-SloMo/blob/master/video_to_slomo.py.


In-page navigation - Remove default ul margin, add margin-bottom

Somewhere in the refactoring this code this spacing was removed.
Removes the browser default <ul> margin-top and adds margin-bottom so the list is equally spaced.
CURRENT LIVE

AFTER

You can preview this change here:
Built with commit 43d56ce88b32eafde694d16706c441579207d97c
https://deploy-preview-540--govuk-design-system-preview.netlify.com

Merged thanks


Add support for display (TFT / OLED)

Goal is a screen of 160x80 pixels
Testing display is bigger and only supports SPI, not I2C (in contrast to the pin labels which are labelled as I2C!)
Work with SPI for now, using only the first 160x80 pixels.
Suggested layout: total power in big font. Per sensor pair below that in smaller font, moving to the next sensor pair every 2-3 seconds:

SPI is working (see https://github.com/nlesc-recruit/PowerSensor3/pull/76)
ToDo: add an option to toggle display on/off from host

Display toggle is now working


Major cleanup

Removed all deprecated commands, introduced settingsV2, removed unneeded commands including associate and disassociate. The vars set and vars unset commands are consistent in their argument style. Unset now accepts a variable number of -v KEY to unset. Support for setting environment variables from a file was also added.

LGTM


Escape menu not changing

Acknowledgement of preliminary instructions

[ ] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.

What problem did you encounter?
I obviously saved the settings to the 2015 escape menu and its still giving me the latest menu which is really annoying and i tried uninstalling  it and everything even roblox but it still doesnt work.

how did you fix it?

i found a temp solution:
turn pc on and off via holding the power button,
force reinstall roblox via bloxstrap's menu,
type 'Play Bloxstrap' via windows search bar, and quickly join a game,
and it'll likely work normally till you leave the game.

See https://github.com/pizzaboxer/bloxstrap/wiki/A-guide-to-FastFlags#escape-menu-version


Understanding Uninitialized Variables | Allows you to edit variable directly below allowed edits line.

Challenge Name
Understanding Uninitialized Variables
Issue Description
The challenge allows me to skirt actually solving the challenge and edit the variable directly. This defeats the purpose of the challenge and should be updated as appropriate.  You should only be allowed to edit above the line otherwise a user may pass the challenge without understanding the actual concept.
Attribution
The user 'sonimadhuri' on Gitter pointed out this issue to me.
Browser Information

Browser Name, Version: Google Chrome
Operating System: macOS
Mobile, Desktop, or Tablet: Desktop

Your Code
// Initialize these three variables
var a;
var b;
var c;

// Do not change code below this line

a = a + 1;
b = b + 5;
c = c + " String!";

var a = 6;
var b = 15;
var c = 'I am a String!';

Screenshot

Hi there , please excuse me if i am wrong. We can initialize the variable as below for the the above output
a = 5 ;
b =10 ;
c = 'I am a';

Thanks for the issue @nsuchy. There is a test that ensures the code is not changed. There's not really a way to "lock" other code from being able to be entered below the line. Closing as wontfix for now. Will reopen if this becomes a source of confusion.


Refactored all interfaces and did builder for the CompositeSystem

Coverage decreased (-0.9%) to 98.106% when pulling 3da62a61875c20d3efaf82ab15cc2c253ec9c0bc on refactoring into baa3b8626ca5a7bf07f79b0205529d990c8143b7 on master.

Coverage decreased (-0.9%) to 98.106% when pulling 31e091eff17f4c2b8dadb2d9cf42aaf591c9796f on refactoring into baa3b8626ca5a7bf07f79b0205529d990c8143b7 on master.

Coverage decreased (-0.9%) to 98.106% when pulling 5ba43b2e3913a056bf91e90fcc59c95e605072a3 on refactoring into baa3b8626ca5a7bf07f79b0205529d990c8143b7 on master.

Coverage decreased (-0.9%) to 98.106% when pulling 3f4600ae298acac828685a45617597a8947ddea0 on refactoring into baa3b8626ca5a7bf07f79b0205529d990c8143b7 on master.

Coverage decreased (-0.9%) to 98.106% when pulling bb1435c3eadca0ab955d33dd2925ffc286f117b8 on refactoring into baa3b8626ca5a7bf07f79b0205529d990c8143b7 on master.

Coverage decreased (-0.4%) to 98.621% when pulling ea7a69ea211d8e575419be86de73bb96f0318313 on refactoring into baa3b8626ca5a7bf07f79b0205529d990c8143b7 on master.


plugin-github-pull-requests-board: Add a new "Team" Filter Options to the Github Pull Requests Dashboard.

Signed-off-by: Simon Ninon<EMAIL_ADDRESS>Hey, I just made a Pull Request!

One organization (PagerDuty) started to embed the Github Pull Requests Dashboard into our catalog pages.
The current Pull Requests Dashboard displays Pull Requests opened on the team repositories.
One use-case that we'd like to cover for our infrastructure teams is to let them track Pull Requests opened by the team on other repositories they do not own. This is particularly useful when an infrastructure team is conducting an organization-wide migration and generates hundreds of PRs on all of the organization repositories , and the infrastructure team needs to keep track of what PRs haven't been merged yet or require some changes.
This PR is modifying the current pull requests dashboard to add a new "Team Filter" option:

When toggling this option on, the dashboard will displays all of the PRs opened by the members on that team on any repositories of the organization.

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] ~Added or updated documentation~
[ ] Tests for new functionality and regression tests for bug fixes
[x] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

Thanks for the review @freben, I'll look into it and make the adjustments whenever I got a change 👀

@freben I've made a few changes to address your GraphQL comments.
Next week, I'll look into the useAsync and p-limits comments

(took the liberty of rebasing to get it mergeable after another PR got merged)

Thank you for contributing during Hacktoberfest 🍂! You can claim the Backstage Hacktoberfest Holopin at https://bck.st/hacktoberfest-holopin 🙌🏻


Byte array values are not properly converted on iOS

Describe the bug
I want to use the blue-falcon library in a Kotlin Multiplatform app. I face the following situation: I need to convert a value to a byte array, in the order of Little Endian, and send it to a sensor.
In Android, I can do this using the following method: ByteBuffer.allocate(4).order(ByteOrder.LITTLE_ENDIAN).putFloat(value).array()
The issue with this is that on Android we can send the value as a byte array (which has a range of values between [-128, 127]). But on iOS, the byte equivalent is UInt8 (which has a range of values between [0, 255]).
Expected behavior
The value should be converted as in the native apps. To send the value 500 to the sensor, on Android I have the following array: [0, 0, -6, 67]. On iOS, I should have it like this: [0, 0, 250, 67].
Additional context
The problem is that I can only send arrays of bytes and strings in the writeCharacteristic() method. On the Android application, it works accordingly. On iOS, I think that the array is not converted properly and it breaks the functionality.
Have you perhaps faced this situation or do you have any idea how to solve this issue?
Maybe if we convert byte array to unsigned byte array but I think for that, we should add new functionality in the library

I may found a solution to this issue. I opened  #80 PR and I added the option to send the array without the need to decode and encode again the array.


Suggestion: Automate AWS build

You could use Cloudfromation / Troposphere / Terraform / Whatever is hip these days to automate the creation of the AWS resources to make it more.... streamlined.

I agree, I think that'll be a future cheat code. 👍

Anyone want to work on this :)?

Yeah, i'll try to take a crack at this


Export Community (to ZIP)

From release plan spreadsheet
Estimate from release plan: 8 hours
Expressing interest: none
Depends on "Scripts & Processes" endpoint
Related Angular ticket: https://github.com/DSpace/dspace-angular/issues/774

Do we need to implement a "SAF" option under the Export menu or a button on the community home page to use as shortcut? or both? if we need to add a button shortcut in the collection home should we have one (standard mode?) or two as in the previous versions to distinguish between the migrate and the standard mode?

@tdonohue should this go in 7.4? we confirm the estimation and we would like to claim the task.
This is similar but not the same than https://github.com/DSpace/dspace-angular/issues/774 and can be done together maybe saving some time

Yes, this can go into 7.4 alongside, as my assumption is it's mostly implemented in https://github.com/DSpace/DSpace/pull/8318 already (it might even be entirely implemented in that PR, assuming that PR can export from a Community UUID)

@abollini : Another older ticket previously assigned to your team.  Should this and https://github.com/DSpace/dspace-angular/issues/774 stay assigned to your team for 7.5?  If not, I'll unassign them.


NOISSUE - Use StatusUnauthorized instead of StatusForbidden

Use 401 Unauthorized instead of 403 Forbidden for errors related to
authentication.
According to https://tools.ietf.org/html/rfc6750#section-3

As far as I understand, it's better to use 401 instead of 403 for authentication-related errors, or maybe I'm missing something.

Codecov Report

Merging #1140 into master will decrease coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #1140      +/-   ##
==========================================
- Coverage   75.33%   75.31%   -0.03%
==========================================
  Files         101      101
  Lines        6853     6853
==========================================
- Hits         5163     5161       -2
- Misses       1333     1335       +2
  Partials      357      357

Impacted Files
Coverage Δ

authn/api/http/transport.go
81.42% <100.00%> (ø)

bootstrap/api/transport.go
93.66% <100.00%> (ø)

http/api/transport.go
72.61% <100.00%> (ø)

provision/sdk/sdk.go
78.19% <100.00%> (ø)

readers/api/transport.go
85.36% <100.00%> (ø)

things/api/auth/http/transport.go
89.18% <100.00%> (ø)

things/api/things/http/transport.go
91.98% <100.00%> (ø)

twins/api/http/transport.go
56.64% <100.00%> (ø)

users/api/transport.go
79.56% <100.00%> (ø)

things/service.go
88.97% <0.00%> (-1.48%)
:arrow_down:

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 9b4eb70...4484599. Read the comment docs.

@sprql sounds good. I would maybe keep forbidden for readers because they use a thing key.

@manuio good point, I took this into account and updated the code

https://stackoverflow.com/questions/3297048/403-forbidden-vs-401-unauthorized-http-responses

@sprql After consultation with maintainers we think that this is good. Can you update the swaggers, please?

@sprql Please don't address my comments yet. @mainflux/maintainers Need to agree on this. We'll do that internally, bring the final decision and let you know. We apologize for our back and forth request changes. I find both 401 and 403 code verbose values confusing and we had an internal misunderstanding between team members.

@dusanb94, do you have any updates?

@dusanb94, do you have any updates?

Unfortunately, not yet. Mainflux team is overloaded with some other urgent tasks, but we will get back to this PR as soon as we finish them.

I would like that we can back to this next week, right after 0.11 release.

@sprql can you please resolve the conflicts and update the branch. This starts to look good, and I would like that we proceed with this big PR.
@manuio @nmarcetic @dusanb94 please review after update.

Codecov Report

Merging #1140 into master will decrease coverage by 0.04%.
The diff coverage is 88.18%.

@@            Coverage Diff             @@
##           master    #1140      +/-   ##
==========================================
- Coverage   77.04%   76.99%   -0.05%
==========================================
  Files         104      104
  Lines        6934     6946      +12
==========================================
+ Hits         5342     5348       +6
- Misses       1206     1210       +4
- Partials      386      388       +2

Impacted Files
Coverage Δ

pkg/sdk/go/certs.go
0.00% <0.00%> (ø)

pkg/sdk/go/sdk.go
96.55% <ø> (ø)

provision/api/transport.go
0.00% <ø> (ø)

authn/service.go
77.50% <25.00%> (ø)

authn/jwt/tokenizer.go
90.90% <50.00%> (ø)

users/api/requests.go
73.33% <50.00%> (ø)

things/api/auth/http/requests.go
75.00% <55.55%> (-25.00%)
:arrow_down:

things/api/things/http/transport.go
91.34% <66.66%> (-0.64%)
:arrow_down:

users/service.go
84.78% <87.50%> (ø)

authn/api/grpc/requests.go
87.50% <100.00%> (ø)

... and 18 more

Continue to review full report at Codecov.

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

Vault API has only 403 code
204 - Success, no data returned.
400 - Invalid request, missing or invalid data.
403 - Forbidden, your authentication details are either incorrect, you don't have access to this feature, or - if CORS is enabled - you made a cross-origin request from an origin that is not allowed to make such requests.
404 - Invalid path. This can both mean that the path truly doesn't exist or that you don't have permission to view a specific path. We use 404 in some cases to avoid state leakage.

https://www.vaultproject.io/api-docs#http-status-codes

@sprql I am checking PR , for example
case errors.Contains(err, authn.ErrUnauthenticated):
    w.WriteHeader(http.StatusUnauthorized)
case errors.Contains(err, authn.ErrUnauthorized):
    w.WriteHeader(http.StatusForbidden)

Why not follow go HTTP lib and use Forbidden for 403 (as its status code Forbidden by spec) and Unautrhozed for 401 (as its status code for Unauthorized by spec)?
He added ErrUnauthenticated for 401, why "custom "naming?  And from the same link, the spec you are addressing it says
  For example, in response to a protected resource request without
   authentication:

     HTTP/1.1 401 Unauthorized
     WWW-Authenticate: Bearer realm="example"

IMHO ErrUnauthorized makes more sense than ErrUnauthenticated for status code 401. What do you think?

Why not follow go HTTP lib and use Forbidden for 403 (as its status code Forbidden by spec) and Unautrhozed for 401 (as its status code for Unauthorized by spec)?

@nmarcetic
I suggested 3 different options https://github.com/mainflux/mainflux/pull/1140#discussion_r418028870

Why not follow go HTTP lib and use Forbidden for 403 (as its status code Forbidden by spec) and Unautrhozed for 401 (as its status code for Unauthorized by spec)?

@nmarcetic
I suggested 3 different options #1140 (comment)

@sprql I saw that you voted, but too late, sorry for that. @manuio explained to me but I already left my comment.
I still think it's confusing and that option 3 is worst, but we have consensus already :)
So let's see if we can approve and merge this @drasko @dusanb94 You must approve (there are your remarks blocking merge)
Also @sprql can you try to update, a branch is out of date. Thanks.

Can we update this branch and resolve conflicts @sprql

@nmarcetic I've updated branch

Finally, we've decided to use http.StatusUnauthorized for the authentication and http.StatusForbidden for authorization.


feat: misc

Was trying to compile this on Linux (which is case-sensitive) and was having issues. This fixed it.

Thanks for figuring out how to build it on Linux! I will try this in the coming days. Just waiting for my STM programmer to arrive.
I don't know how the maintainer prefers their PRs. But maybe it's easier to get it merged if you split it up into more focused PRs? I see this one contains a bunch of stuff not directly related to Linux compatibility also.
I will also continue using the original zigbee board. So all the fixes to make it as compatible as possible with that are also really relevant to me.


[DBCluster] Add RestoreToTime attribute

Description of changes:
Adding RestoreToTime attribute to RestoreDbClusterToPointInTimeRequest.
THere were no need to update isRestoreToPointInTime as SourceDBClusterIdentifierstill mandatory in case of RestoreToTime.
    private boolean isRestoreToPointInTime(final ResourceModel model) {
        return StringUtils.hasValue(model.getSourceDBClusterIdentifier());
    }

Ref: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-pitr.html
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Should we run update-after-create for RestoreToTime scenarios? I don't think the api supports all parameters like MasterUserPassword, therefore we might need to run it after restore.
Can you validate that and add unit tests for that case?


[SP-4354] Backport of PDI-17144 - A sub-job will add up the log entri…

…es in the sub-job log table for every iteration (8.1 Suite)
@pentaho-lmartins @ricardosilva88 @cravobranco

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -fn -f 'pom.xml' -pl 'engine,core' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine,core' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  core/src/test/java/org/pentaho/di/core/logging/BaseLogTableTest.java
  core/src/test/java/org/pentaho/di/core/logging/LoggingBufferTest.java
  engine/src/main/java/org/pentaho/di/core/logging/BaseLogTable.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes.


[BUG] Cython extension not installed and loaded with setup.py and pyproject.toml

setuptools version
75.1.0
Python version
Python 3.12
OS
Windows 11
Additional environment information
pip = 24.2
Description
I tried to use cython with setup.py under pip 24.2. This version of pip can not support cython directly, and I add a pyproject.toml with
[build-system]
requires = ["setuptools", "cython"]
build-backend = "setuptools.build_meta"

Then, I used pip install . to install the package, and I found the package is succefully built and installed, but cython extenstions module is not built and didn't work.
Here is my setup.py
# -*- coding: utf-8 -*-

from setuptools import setup, Extension
from Cython.Build import cythonize

setup(
    name='mprpc',
    version='0.2.0',
    description='A fast MessagePack RPC library',
    long_description=open('README.rst').read(),
    author='Studio Ousia',
<EMAIL_ADDRESS>    url='http://github.com/studio-ousia/mprpc',
    packages=['mprpc'],
    ext_modules=cythonize(
        [
            Extension('mprpc.client', ['mprpc/client.pyx']),
            Extension('mprpc.server', ['mprpc/server.pyx'])
        ]
    ),
    license=open('LICENSE').read(),
    include_package_data=True,
    keywords=['rpc', 'msgpack', 'messagepack', 'msgpackrpc', 'messagepackrpc',
              'messagepack rpc', 'gevent'],
    classifiers=[
        'Development Status :: 4 - Beta',
        'Intended Audience :: Developers',
        'Natural Language :: English',
        'License :: OSI Approved :: Apache Software License',
        'Programming Language :: Python',
        'Programming Language :: Python :: 2.6',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        'Programming Language :: Python :: 3.5',
    ],
    install_requires=[
        'gsocketpool',
        'gevent',
        'msgpack-python',
    ],
    tests_require=[
        'nose',
        'mock',
    ],
    test_suite='nose.collector'
)

BTW, I tried to use python -m build to generate *.whl and install it with pip install *.whl, then it works.
Expected behavior

I tried using cython with setup.py under pip 24.2 and the cython extenstion modules shoule be installed.

How to Reproduce

Clone the repo https://github.com/Lovely-XPP/mprpc
Install the project with pip install .
Then run python and try import mprpc
Then the error occur ModuleNotFoundError: No module named 'mprpc.client', which is expected installed.

Output
console output with pip install . --verbose
Using pip 24.2 from C:\Users\yipeng\AppData\Roaming\Python\Python312\site-packages\pip (python 3.12)
Defaulting to user installation because normal site-packages is not writeable
Processing c:\auflyers\git\mprpc
  Running command pip subprocess to install build dependencies
  Using pip 24.2 from C:\Users\yipeng\AppData\Roaming\Python\Python312\site-packages\pip (python 3.12)
  Collecting setuptools
    Obtaining dependency information for setuptools from https://files.pythonhosted.org/packages/ff/ae/f19306b5a221f6a436d8f2238d5b80925004093fa3edea59835b514d9057/setuptools-75.1.0-py3-none-any.whl.metadata
    Using cached setuptools-75.1.0-py3-none-any.whl.metadata (6.9 kB)
  Collecting cython
    Obtaining dependency information for cython from https://files.pythonhosted.org/packages/35/00/78ffea3a0ab176267a25ff049518b2582db7ac265bbf27944243d1a81ce2/Cython-3.0.11-cp312-cp312-win_amd64.whl.metadata
    Using cached Cython-3.0.11-cp312-cp312-win_amd64.whl.metadata (3.2 kB)
  Using cached setuptools-75.1.0-py3-none-any.whl (1.2 MB)
  Using cached Cython-3.0.11-cp312-cp312-win_amd64.whl (2.8 MB)
  Installing collected packages: setuptools, cython
    Creating C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Scripts
  Successfully installed cython-3.0.11 setuptools-75.1.0
  Installing build dependencies ... done
  Running command Getting requirements to build wheel
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\Cython\Compiler\Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: C:\AuFlyers\git\mprpc\mprpc\client.pyx
    tree = Parsing.p_module(s, pxd, full_module_name)
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\Cython\Compiler\Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: C:\AuFlyers\git\mprpc\mprpc\server.pyx
    tree = Parsing.p_module(s, pxd, full_module_name)
  Compiling mprpc/client.pyx because it changed.
  Compiling mprpc/server.pyx because it changed.
  [1/2] Cythonizing mprpc/client.pyx
  [2/2] Cythonizing mprpc/server.pyx
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\setuptools\_distutils\dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
    warnings.warn(msg)
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\setuptools\_distutils\dist.py:261: UserWarning: Unknown distribution option: 'test_suite'
    warnings.warn(msg)
  running egg_info
  creating mprpc.egg-info
  writing mprpc.egg-info\PKG-INFO
  writing dependency_links to mprpc.egg-info\dependency_links.txt
  writing requirements to mprpc.egg-info\requires.txt
  writing top-level names to mprpc.egg-info\top_level.txt
  writing manifest file 'mprpc.egg-info\SOURCES.txt'
  reading manifest file 'mprpc.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  adding license file 'LICENSE'
  writing manifest file 'mprpc.egg-info\SOURCES.txt'
  Getting requirements to build wheel ... done
  Running command Preparing metadata (pyproject.toml)
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\setuptools\_distutils\dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
    warnings.warn(msg)
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\setuptools\_distutils\dist.py:261: UserWarning: Unknown distribution option: 'test_suite'
    warnings.warn(msg)
  running dist_info
  creating C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc.egg-info
  writing C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc.egg-info\PKG-INFO
  writing dependency_links to C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc.egg-info\dependency_links.txt
  writing requirements to C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc.egg-info\requires.txt
  writing top-level names to C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc.egg-info\top_level.txt
  writing manifest file 'C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc.egg-info\SOURCES.txt'
  reading manifest file 'C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  adding license file 'LICENSE'
  writing manifest file 'C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc.egg-info\SOURCES.txt'
  creating 'C:\Users\yipeng\AppData\Local\Temp\pip-modern-metadata-1evjr_g8\mprpc-0.2.0.dist-info'
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: gsocketpool in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from mprpc==0.2.0) (0.1.6)
Requirement already satisfied: gevent in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from mprpc==0.2.0) (24.10.2)
Requirement already satisfied: msgpack-python in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from mprpc==0.2.0) (0.5.6)
Requirement already satisfied: zope.event in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from gevent->mprpc==0.2.0) (5.0)
Requirement already satisfied: zope.interface in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from gevent->mprpc==0.2.0) (7.1.0)
Requirement already satisfied: greenlet>=3.1.1 in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from gevent->mprpc==0.2.0) (3.1.1)
Requirement already satisfied: cffi>=1.17.1 in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from gevent->mprpc==0.2.0) (1.17.1)
Requirement already satisfied: pycparser in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from cffi>=1.17.1->gevent->mprpc==0.2.0) (2.22)
Requirement already satisfied: setuptools in c:\users\yipeng\appdata\roaming\python\python312\site-packages (from zope.event->gevent->mprpc==0.2.0) (75.1.0)
Building wheels for collected packages: mprpc
  Running command Building wheel for mprpc (pyproject.toml)
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\setuptools\_distutils\dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
    warnings.warn(msg)
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\setuptools\_distutils\dist.py:261: UserWarning: Unknown distribution option: 'test_suite'
    warnings.warn(msg)
  running bdist_wheel
  running build
  running build_py
  creating build\lib.win-amd64-cpython-312\mprpc
  copying mprpc\constants.py -> build\lib.win-amd64-cpython-312\mprpc
  copying mprpc\exceptions.py -> build\lib.win-amd64-cpython-312\mprpc
  copying mprpc\__init__.py -> build\lib.win-amd64-cpython-312\mprpc
  running egg_info
  writing mprpc.egg-info\PKG-INFO
  writing dependency_links to mprpc.egg-info\dependency_links.txt
  writing requirements to mprpc.egg-info\requires.txt
  writing top-level names to mprpc.egg-info\top_level.txt
  reading manifest file 'mprpc.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  adding license file 'LICENSE'
  writing manifest file 'mprpc.egg-info\SOURCES.txt'
  copying mprpc\client.c -> build\lib.win-amd64-cpython-312\mprpc
  copying mprpc\client.pyx -> build\lib.win-amd64-cpython-312\mprpc
  copying mprpc\server.c -> build\lib.win-amd64-cpython-312\mprpc
  copying mprpc\server.pyx -> build\lib.win-amd64-cpython-312\mprpc
  running build_ext
  building 'mprpc.client' extension
  creating build\temp.win-amd64-cpython-312\Release\mprpc
  "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD "-IC:\Program Files\Python312\include" "-IC:\Program Files\Python312\Include" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\ATLMFC\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcmprpc/client.c /Fobuild\temp.win-amd64-cpython-312\Release\mprpc/client.obj
  client.c
  "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\bin\HostX86\x64\link.exe" /nologo /INCREMENTAL:NO /LTCG /DLL /MANIFEST:EMBED,ID=2 /MANIFESTUAC:NO "/LIBPATH:C:\Program Files\Python312\libs" "/LIBPATH:C:\Program Files\Python312" "/LIBPATH:C:\Program Files\Python312\PCbuild\amd64" "/LIBPATH:C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\ATLMFC\lib\x64" "/LIBPATH:C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\lib\x64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\\lib\10.0.22621.0\\um\x64" /EXPORT:PyInit_client build\temp.win-amd64-cpython-312\Release\mprpc/client.obj /OUT:build\lib.win-amd64-cpython-312\mprpc\client.cp312-win_amd64.pyd /IMPLIB:build\temp.win-amd64-cpython-312\Release\mprpc\client.cp312-win_amd64.lib
    正在创建库 build\temp.win-amd64-cpython-312\Release\mprpc\client.cp312-win_amd64.lib 和对象 build\temp.win-amd64-cpython-312\Release\mprpc\client.cp312-win_amd64.exp
  正在生成代码
  已完成代码的生成
  building 'mprpc.server' extension
  "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD "-IC:\Program Files\Python312\include" "-IC:\Program Files\Python312\Include" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\ATLMFC\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcmprpc/server.c /Fobuild\temp.win-amd64-cpython-312\Release\mprpc/server.obj
  server.c
  "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\bin\HostX86\x64\link.exe" /nologo /INCREMENTAL:NO /LTCG /DLL /MANIFEST:EMBED,ID=2 /MANIFESTUAC:NO "/LIBPATH:C:\Program Files\Python312\libs" "/LIBPATH:C:\Program Files\Python312" "/LIBPATH:C:\Program Files\Python312\PCbuild\amd64" "/LIBPATH:C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\ATLMFC\lib\x64" "/LIBPATH:C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\lib\x64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\\lib\10.0.22621.0\\um\x64" /EXPORT:PyInit_server build\temp.win-amd64-cpython-312\Release\mprpc/server.obj /OUT:build\lib.win-amd64-cpython-312\mprpc\server.cp312-win_amd64.pyd /IMPLIB:build\temp.win-amd64-cpython-312\Release\mprpc\server.cp312-win_amd64.lib
    正在创建库 build\temp.win-amd64-cpython-312\Release\mprpc\server.cp312-win_amd64.lib 和对象 build\temp.win-amd64-cpython-312\Release\mprpc\server.cp312-win_amd64.exp
  正在生成代码
  已完成代码的生成
  installing to build\bdist.win-amd64\wheel
  running install
  running install_lib
  creating build\bdist.win-amd64\wheel
  creating build\bdist.win-amd64\wheel\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\client.c -> build\bdist.win-amd64\wheel\.\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\client.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\client.pyx -> build\bdist.win-amd64\wheel\.\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\constants.py -> build\bdist.win-amd64\wheel\.\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\exceptions.py -> build\bdist.win-amd64\wheel\.\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\server.c -> build\bdist.win-amd64\wheel\.\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\server.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\server.pyx -> build\bdist.win-amd64\wheel\.\mprpc
  copying build\lib.win-amd64-cpython-312\mprpc\__init__.py -> build\bdist.win-amd64\wheel\.\mprpc
  running install_egg_info
  Copying mprpc.egg-info to build\bdist.win-amd64\wheel\.\mprpc-0.2.0-py3.12.egg-info
  running install_scripts
  C:\Users\yipeng\AppData\Local\Temp\pip-build-env-jxuemiiu\overlay\Lib\site-packages\setuptools\command\bdist_wheel.py:115: RuntimeWarning: Config variable 'Py_DEBUG' is unset, Python ABI tag may be incorrect
    if get_flag("Py_DEBUG", hasattr(sys, "gettotalrefcount"), warn=(impl == "cp")):
  creating build\bdist.win-amd64\wheel\mprpc-0.2.0.dist-info\WHEEL
  creating 'C:\Users\yipeng\AppData\Local\Temp\pip-wheel-u7hb_w7l\.tmp-0zhddggk\mprpc-0.2.0-cp312-cp312-win_amd64.whl' and adding 'build\bdist.win-amd64\wheel' to it
  adding 'mprpc/__init__.py'
  adding 'mprpc/client.c'
  adding 'mprpc/client.cp312-win_amd64.pyd'
  adding 'mprpc/client.pyx'
  adding 'mprpc/constants.py'
  adding 'mprpc/exceptions.py'
  adding 'mprpc/server.c'
  adding 'mprpc/server.cp312-win_amd64.pyd'
  adding 'mprpc/server.pyx'
  adding 'mprpc-0.2.0.dist-info/LICENSE'
  adding 'mprpc-0.2.0.dist-info/METADATA'
  adding 'mprpc-0.2.0.dist-info/WHEEL'
  adding 'mprpc-0.2.0.dist-info/top_level.txt'
  adding 'mprpc-0.2.0.dist-info/RECORD'
  removing build\bdist.win-amd64\wheel
  Building wheel for mprpc (pyproject.toml) ... done
  Created wheel for mprpc: filename=mprpc-0.2.0-cp312-cp312-win_amd64.whl size=268582 sha256=f0d1e16975a098b2f0aaadb48e64d1da320b42744e2e221a2e2e889ba4b88fec
  Stored in directory: C:\Users\yipeng\AppData\Local\Temp\pip-ephem-wheel-cache-mphzlpv2\wheels\8e\18\bf\b042ebb976902834abd1cd2b7499518c1333900078fda9a16f
Successfully built mprpc
Installing collected packages: mprpc
  Attempting uninstall: mprpc
    Found existing installation: mprpc 0.2.0
    Uninstalling mprpc-0.2.0:
      Removing file or directory c:\users\yipeng\appdata\roaming\python\python312\site-packages\mprpc-0.2.0.dist-info\
      Removing file or directory c:\users\yipeng\appdata\roaming\python\python312\site-packages\mprpc\
      Successfully uninstalled mprpc-0.2.0
Successfully installed mprpc-0.2.0

Hi @Lovely-XPP could you please confirm if the files mprpc/client.cp312-win_amd64.pyd and
mprpc/server.cp312-win_amd64.pyd exist inside one of your site-packages folder?
Also what is the output of importlib.machinery.all_suffixes() in your Python installation?

Thank you. Both files are exsited, and the output of importlib.machinery.all_suffixes() is here
>>> import importlib
>>> importlib.machinery.all_suffixes()
['.py', '.pyw', '.pyc', '.cp312-win_amd64.pyd', '.pyd']

Ummm, that is weird, if the files exist in the relevant site-packages this means that they are compiled and installed. Also the all_suffixes seem to indicate that the extension discovery is properly configured.
Now why the correct file is not being picked up? That is the mystery. But would not be related to setuptools itself (based on your response, setuptools seems to be doing the correct job and the compiled files are installed where they should be).
Any chance sys.path or sys.meta_path is missing something?

I tyied again and found that when I opened a new powershell terminal, the error disappeared. I think pip install . doesn't refresh relevant path in python. Thanks again.

Hi @Lovely-XPP, thank you very much for confirming. I am happy you found a workaround.
I will go ahead and close this issue since it seems there is not much left to be done from the setuptools perspective.


Do not require cgroups capabilities on windows to run the integration tests.

closes #13599
Signed-off-by: David Calavera<EMAIL_ADDRESS>

LGTM if janky passes

LGTM


Update accepted exporters in SDK configuration

Add missing console exporter to the accepted list of exporters in all signals.
Also add a note in the description that the value may be a comma-separated list

/fix:all


pipeline_report.{txt,html} missing from pipeline_info directory

Check Documentation
I have checked the following places for your error:

[x] nf-core website: troubleshooting
[x] nf-core/rnaseq pipeline documentation

Description of the bug
The pipeline_report.txt file is not written by v3.3
Expected behaviour
In previous versions the pipeline_info/pipeline_report.txt file contained (pretty much) the top lines of the output of the pipeline with each parameter listed.
System
I am using -profile crick
Nextflow Installation

Version:21.04.0

Container engine

Engine: Singularity
version: 3.4.2

Additional context
I checked in the rnaseq repo for where the file is written but could not see it. I'm not sure if it is part of the nf-core/tools repo and how those parts of nfcore work together with the DSL2 version?

Thanks for reporting @ChristopherBarrington. So these files are created but only if you provide --email / --email_on_fail. The metrics that are dumped to those files are a byproduct of creating all of the info required to generate and send the email. This email code has required refactoring for the longest time (see https://github.com/nf-core/tools/issues/112) so this is the best we can do for now :)
I have clarified this in the docs too https://github.com/drpatelh/nf-core-rnaseq/commit/8a558d3eb89af0cfc8c0efae7301e91326a1074e

That makes sense, I had omitted that option for this run simply to avoid getting the email. But it's a small price to pay to get the parameter information recorded.
Thank you


[3.1.0] Connection failed!

After an update from 3.0.0 to 3.1.0 it seems my config isn't being read correctly.
➜  ~ kwmc config reload
Connection failed!

Any ideas what this could be? I checked the syntax and I couldn't see anything that's changed.

Ah. Seems to be fixed with 3.1.3.


Implement webhook Secret Check

Gtihub provides a header with the SHA of the secret used to create the webhook. We should compare it with correct value in the worker.
We need to keep the secret sha in a kv store, then implement the signature checking.

Closed in #5


Deduplicating shapes before Shacl validation

Fixes #5020
Before:
[info] NeuroMorphologySampleSpec:
[info] Creating a morphology
[info] - should succeed provisionning the mandatory schemas (2 seconds, 980 milliseconds)
[info] - should succeed creating the neuronmorphology-entity without a schema (121 milliseconds)
[info] - should succeed creating the neuronmorphology-entity with a schema (2 seconds, 352 milliseconds)
[info] - should succeed updating the neuronmorphology-entity with a schema (2 seconds, 336 milliseconds)
[info] - should succeed generating the neuronmorphology-entity with the trial endpoint (2 seconds, 252 milliseconds)
[info] - should succeed creating the neuronmorphology-dataset without a schema (57 milliseconds)
[info] - should succeed creating the neuronmorphology-dataset with a schema (1 second, 771 milliseconds)
[info] - should succeed updating the neuronmorphology-dataset with a schema (1 second, 711 milliseconds)
[info] - should succeed generating the neuronmorphology-dataset with the trial endpoint (1 second, 515 milliseconds)

After:
[info] NeuroMorphologySampleSpec:
[info] Creating a morphology
[info] - should succeed provisionning the mandatory schemas (2 seconds, 619 milliseconds)
[info] - should succeed creating the neuronmorphology-entity without a schema (73 milliseconds)
[info] - should succeed creating the neuronmorphology-entity with a schema (71 milliseconds)
[info] - should succeed updating the neuronmorphology-entity with a schema (79 milliseconds)
[info] - should succeed generating the neuronmorphology-entity with the trial endpoint (66 milliseconds)
[info] - should succeed creating the neuronmorphology-dataset without a schema (48 milliseconds)
[info] - should succeed creating the neuronmorphology-dataset with a schema (81 milliseconds)
[info] - should succeed updating the neuronmorphology-dataset with a schema (51 milliseconds)
[info] - should succeed generating the neuronmorphology-dataset with the trial endpoint (52 milliseconds)

Nice improvement 👌


Wrong bootstrapping when retrying

It seems to me that there is an off by 1 error when bootstrapping the retry mechanism (see for example here ) .
By calling AtomicInteger#incrementAndGet() instead of #getAndIncrement() the int iteration starts with 1 instead of 0 which has (at least) these two consequences (ignoring jitter):

there are not numRetries attempts to retry but only numRetries - 1
the first retry attempt is done after 2*firstBackoff (= firstBackoff * 2^1) instead of after firstBackoff (= firstBackoff * 2^0)

The two effects almost compensate each other wrt when the last attempt is roughly performed, so it's certainly not an issue for most cases.

Thanks and very nice catch! I just opened a PR fixing the issue.

Thanks @pat-karakun


couldnt add class to input fields in partials

I am trying to add id/class to a input field (in partial). I am doing this for autocomplete( I am using typeahead.js), Whenever I use the extra class for typeahead I am not receiving the params in controller. I face the same issue when i try to add a class for bootstrap datepicker.
My partial :
placed this inside "nested-fields" class.

                                    <%= f.text_field :company, :class => 'form-control typeahead-company' %>

                                  <%= link_to_remove_association "remove", f, :class => 'class="btn btn-styled btn-sm slate btn-base-1' %>

My index html.erb :

                          <%= f.fields_for :positions do |position| %>
                          <%= render 'position_fields', :f => position %>
                          <% end %>

                             <%= link_to_add_association 'add position', f, :positions, :class =>'btn btn-styled btn-xs permission btn-base-1' %>

All the things work fine regarding the associations, deleting, adding fields, partial rendering. The problem is that I don't get the params in my respective controller whenever I add the 'typeahead-company' / 'datepicker' class to the 'company' field. My typeahead/datepicker functionality is working fine though. I have tried adding the class using cocoon after insert event. Still the problem persists
Any idea of why I am facing this?

It is a bit unclear, but I am guessing you mean: after dynamically inserting a child-partial, the javascript does not work, but it does work if the child already exists?
E.g. check issues #502 , #479, #451
In short: on dynamically inserted HTML th typeahead/datepicker functionality will not be enabled and you will have to use the callbacks to explicitly enable that. E.g. do something like
$('form').on('cocoon:after-insert', function(e, insertedItem) {
    insertedItem.find('.datepicker').datepicker();
    insertedItem.find('.typeahead').typeahead();
});

If I miss-interpreted your question, could you please elaborate what you expect to see and how cocoon affects that.

Hi nathanvda
Thanks for the response. I mean to say that the javascript is working for absolutely fine when i add the class to text field  <%= f.text_field :company, :class => 'form-control  typeahead_company' %> without using the cocoon:after-insert . my javascript :
$(document).ready(function(){
$('.typeahead_company').typeahead(null, {
name: 'education',
display: 'company',
hint: true,
highlight: true,
source: comPanies
});
But I dont receive params in my controller
<%= f.text_field :company, :class => 'form-control ' %>
Params :
"positions_attributes"=>{"0"=>{"position"=>"vs"}. There you see no params pertaining to the company field.
This is when I have my field as  : <%= f.text_field :company, :class => 'form-control ' %>
Params :
"positions_attributes"=>{"0"=>{"position"=>"vs", "company" => 'xyz'}. I can get the company param here.
My javascript is working fine in front end. no issues about that

Could you please format your question/code.
Are you using the after-insert callback at all? Can you show it?
If you use the same javascript in the document-ready as is in the after-insert callback, I cannot explain why it would not work for dynamically added fields.

Closed due to inactivity.


SWF embedding doesn't work on Windows Neko

Using an SWF library and embedding a font in it seems to work fine on Neko OSX but seems to use the default "sans" font on Neko Windows. Interestingly, CPP Windows didn't have this issue before it stopped rendering altogether.

This was also fixed, thanks again for sharing your project so we could get it resolved :smile: :shipit:


Prefilter FO-wallets and EO-wallets, in list-handlers.

#336
Overview

[x] I have added prefiltering for FO-walltes and EOS-wallets, in list-handlers.

Comments

I believe this ended up in the wrong abstraction layer. We duplicated logic a bit everywhere when it comes to identifying F.O. wallets vs E.O. wallets. Instead, we could / should piggy-back on the DB layer to provide us with the right wallets when we ask for them. Outside of the Wallet Layer.
Furthermore, there's one question we keep asking about wallets and it's "is this wallet fully-owned or not?". We must have a clear AND UNIQUE way of giving an answer to that question. It is not okay to have bits of duplicated logic which answers exactly this question :+1:


Save implicit user choice when dragging course from SubRequirement to Semester

Summary

This pull request saves the implicit choice made when dragging a course from the sidebar. See notion and Sam's notes in PR #324.

[x] save implicit choice in selectable requirements

Test Plan

Dragging a course from the sidebar should now automatically bind the course's unique id to the requirement id (see the selectable requirements collection). In many cases, this removes a warning (eg. dragging CS 3410 as a CS Core).

You can also test that the drag&drop functionality was not affected in other ways (eg. dragging between semesters).
Notes

I created a new global type SubRequirementFirestoreSemesterCourseWithRequirementID that should only be used for drag&drops between Semester and SubRequirement (the sidebar).

@benjamin-shen maybe you need to change the linter config like this:
https://github.com/cornell-dti/samwise/blob/8052c84e91e676f334aff3a002eebf6979acacd8/.eslintrc#L36-L39
so that you don't need to suppress the unused requirementID


3 update html and js

Merge 3 update html and js to dev

Merge to dev from 3 update html and js is complete


bugfix: conn profile when parc switches ...

...cache does not clear
chore: fix unit tests

@dickscheid can you take a look at this PR.
on trying to fix the unit test, I discovered another bug re connectivity profile extractor.
Prior, the extractor will fetch datafeature, parse them, filter them (according to selected parcellation !! ) and store as a class property once and only once on init of extractor.
This caused the undesirable behaviour where if the user first tries to fetch connectivity profile for julich brain 1.18, then switches parcellation to julich brain 2.9.0, the connectivity profile features will always return as an empty array
This PR should fix that (as tested via https://github.com/FZJ-INM1-BDA/siibra-python/blob/pr_connProfileExtr/test/features/test_connectivity.py#L5-L20)

This is a good approach. I am suprprised that this problem did not reach the surface earlier.

Believe it or not, the failed tests is actually another bug. I am in the process of fixing it at the moment.


Modifing archiva version - for 2.2.1

Modifing archiva version - for 2.2.1
Command for build image and start container

Hi,
Thank you for the version bump to 2.2.1.  Those two commits look good to me.
I'm a little confused by the third commit, which changes the README.  It looks like the build and run instructions use a tag name and port number which are specific for your organization.  Is that right?
I would like to keep the README generic, and focused on the public image which is hosted at DockerHub -- ninjaben/archiva-docker.
Would you consider reverting the last commit so that we can merge just the version change?  Then, if you like, I'd be happy to discuss changes to the README in a separate PR.
Thank you very much!

Hi,
Thank you for the considerations. You are right. I should not have submitted the changes to the README. You can discard the changes in the README. What's the best way to do this?
Best regards!


Fix slow pantry caching by using memory as much as possible

Thanks to @amospalla's hint.

Amazing!

👏


Run tests also with push for Coveralls

Description
This PR adds PHPUnit testing for push because otherwise, we can’t record the results on the Coveralls webpage.
Checklist:

[x] Securely signed commits

Yeah, definitely. I haven't pulled the latest changes to my local branch. Will fix it, thanks!


Package latest version of Redis Roaring into a Docker image

As a lazy solution to locking down versions to avoid implicit upgrades. Ideally we would have preferred to build our own from scratch but I've had concerns around that process. See:

https://github.com/aviggiano/redis-roaring/issues/98
https://github.com/aviggiano/redis-roaring/pull/99

~I chose <datestamp>-<shortsha> because the first part at least makes sure we order by recency and the second part communicates what version of upstream we're using. I chose not to take semantic versioning because I wasn't sure which version I should use (i.e. Redis or CRoaring) ... and especially since the upstream project (i.e. Redis Roaring) doesn't have any versioning.~ Changed in https://github.com/Intellection/docker-redis-roaring/pull/1/commits/3da62ab3e8a0da7761815f06d5db26d32a797751.
See: https://hub.docker.com/repository/docker/zappi/redis-roaring.


Merge with upstream?

I just noticed this python binding for Pangolin - do you have any interest in trying to merge this upstream with my own bindings? I'm not sure what the pros and cons are of each?

Steven,
According to other post on github, this is not supported anymore, yours are the only one :=)

Here is a merged version: https://github.com/markoelez/Pangolin


⚠ Bofrost.at has degraded performance

In db3d598, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1266 ms

Resolved: Bofrost.at performance has improved in 0f1e005.


What if signature verification fails after successfull payment

I am little confused in signature verification.If signature verification fails after successful payment then should that transaction be rolled back or what.Even if signature verification fails payment has been done.So what's the point

Are you talking about webhook signature verification?

No..there is one last step in Razorpay Standard Checkout.
[https://razorpay.com/docs/payment-gateway/web-integration/standard/#step-5---verify-the-signature]

If signature verification fails after successful payment then should that transaction be rolled back or what

You are right. If payment was successful it is done. The response that you receive in checkout  contains razorpay_payment_id, razorpay_order_id and razorpay_signature. Note that razorpay_signature is only available when you are using order system(see razorpay_order_id).
Now if you have some more flows and you pass around this information to your own backend the signature is a way to verify that the razorpay_payment_id and razorpay_order_id attribute is in fact right and is not modified/malformed and can correctly assume that that order id has received this payment id.


DBZ-8095 Bump Quarkus to 3.8.5 & Apicurio to 2.5.8.Final

https://issues.redhat.com/browse/DBZ-8095

@Naros Do you want to wait for https://github.com/debezium/debezium/pull/5720 ?

That's fine by me @jpechane :heavy_check_mark:

Let's merge this PR after https://github.com/debezium/debezium/pull/5724 to check the compatibility.
Also please provide a PR into container repo with connect-base image updae of apicurio. Also apicurio version in antora config file needs to be updated.
Please feel free to merge the PR (and the one on server) when CI is re-executed against 3.8.0

@Naros Could you please rebase the PR on the latest main? Thanks

@Naros Applied, thanks


Git is Already Federated & Decentralized

The following blog post mentions ForgeFed.
https://drewdevault.com/2018/07/23/Git-is-already-distributed.html

The blog post writer joined this group and this fact was discussed on the mailing list here. ForgeFed is not creating a "federated VCS protocol", but ActivityPub extensions for code hosting. There is a big difference, which was discussed at length on the mailing list, for those interested.

As @jaywink put it, we've already covered this in our discussion. I'm closing this for now.
You're welcome to still comment here if you have new points to bring to light.


feat: Add sample notebook to build an AI podcasting agent using LangGraph and Gemini

Description
This PR adds a sample notebook that uses LangGraph and Gemini to build an AI agent to research, write, and refine a podcast script and then generate audio via TTS APIs.

[X] Follow the CONTRIBUTING Guide.
[X] You are listed as the author in your notebook or README file.

[X] Your account is listed in CODEOWNERS for the file(s).

[X] Make your Pull Request title in the https://www.conventionalcommits.org/ specification.
[X] Ensure the tests and linter pass (Run nox -s format from the repository root to format).
[X] Appropriate docs were updated (if necessary)

Note that the spelling check / forbidden pattern that is failing is because I'm referring to arxiv the library and in a node function name without the usual stylization of arXiv. Any way to flag to the spell checker that this is an expected/known failure in this notebook?

Oh, nevermind, it was catching the actual typed Arxiv in the narrative text, thanks for catching/fixing!


Dependencies node is visibly slow to show

Unlike references in the old csproj, dependencies node is very slow to show up on project load, it appears (I've not confirmed) to be waiting for a design-time build before it shows any the nodes under the tree.
I'd like to see an approach where we use evaluation to figure out the things to in the first layer of dependencies, project references, root package references, etc and then slowly fault in the required data later.
Or at least show Projects/Assemblies/NuGet parent nodes - we can tell with 100% certainty that you have some of those based on evaluation.

tag @abpiskunov


Add Plash to General Tools

NOTE: A similar PR may already be submitted! Please search among the Pull request before creating one.
Types of Changes
What types of changes does your PR introduce? Put an x in all boxes that apply

[x] New addition to list
[ ] Fixing bug in existing item in list
[ ] Removing item from list
[ ] Changing structure (organization) of list

Proposed Changes
Plash is a useful that that lets you put any website as you desktop background. It's free and open source.
https://github.com/sindresorhus/Plash
PR Checklist
Put an x in the boxes once you've completed each step. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] I have read the CONTRIBUTING guide
[x] I have explained why this PR is important
[x] I have added necessary documentation (if appropriate)

Further Comments
If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered, etc...

@sindresorhus thx!


Criterion benchmarks

With graphs

Not sure what data we should benchmark.

@andrewthad
I think a good place to start would be benchmarking push without committing, and push with committing, and push with intermittent committing
What do you think? Any other ideas?

The only way I can imagine doing benchmarks with criterion would be to make the mmap backing the database MAP_ANONYMOUS and then to just insert a ton a data. Committing would be a no-op so the frequency of commits would be irrelevant.
A real benchmark, where data is actually persistented, would be trickier to do. I don't think that criterion, which is intended to be used for microbenchmarks, would be suitable for this.

What would be suitable? Rolling something on our own?

Yes, we could still have it running on a single host, but we would just clock a giant write of around a gigabyte of data.


Nth Element of list/array

Request a New Nada Example
Find Nth element in list.
Description
Write a Nada program to find the nth element in size from a list or array.
optional: extended into multiple dimensions.
Use Case
Describe the use case for this example. Why is it important? How will it benefit other users?
Specific Requirements

Inputs: A list/array of SecretIntegers and the n.
Outputs: The nth largest value of the list.

Hello @oceans404 I'll take this one.

Have completed this here https://github.com/NillionNetwork/nada-by-example/pull/40 will you guys please check the same @oceans404 @jimouris
Thanks!


Add Font Awesome as required asset

When a theme without Font Awesome as a required asset was used, the social link icons were not displayed correctly.

Thanks – can't believe we didn't find this sooner.


Avoid match error when hackney gets a 403 back

If get_acc_with_type/3 returns anything other than {:ok, %Stream.Acc{}} we get a match error like:
** (MatchError) no match of right hand side value: {:error, %Fastimage.Error{reason: {:hackney_response_error, {"https://url.that.returns/403.jpg", 404, "Not Found"}}}}
    (fastimage) lib/fastimage.ex:70: Fastimage.type/2

I added a very simple test case, which uses a service that just returns a status code based on the url you request, http://httpstat.us/. I usually would avoid write a unit test that makes network calls, but the test suite already does that. An alternative could be to introduce an HttpClient behaviour, and then use https://hexdocs.pm/mox/Mox.html in the tests.

Coverage increased (+5.4%) to 66.355% when pulling 51bd7d6250ce1dff19da0c49f1a394d6e91bc9bf on sneako:403-bug into 01562b7eb268b207e0a662d27e6f5380c6e40798 on stephenmoloney:master.

I'd agree that mox is a better alternative. However, I think that actual network call tests are useful too as separate integration tests - perhaps in a integration_tests.exs file.
Setting up test cases with mox is something for a separate PR though a reasonable body of work.


test: fix suspense test

Probably good to check if the functionality actually works ;)

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fix play button desync

@svetlana-zhuravitskaya
Please try this branch and check if it solves the issue with play button state desync (autoplay on seek is removed here). Also I suggest doing nothing on "seek start" the same as in the Web version. So please don't use setAudioProgress.

@ka8725 The fix works as expected


Download specific version of AZCopy

Which version of the AzCopy was used?
Note: The version is visible when running AzCopy without any argument
10.3.0
Which platform are you using? (ex: Windows, Mac, Linux)
Linux
What command did you run?
Note: Please remove the SAS to avoid exposing your credentials. If you cannot remember the exact command, please retrieve it from the beginning of the log file.
azcopy sync ...
What problem was encountered?
unknown flag: --include
How can we reproduce the problem in the simplest way?
Download the latest version and have code written for 10.2.1
Have you found a mitigation/solution?
Not yet. Is there any way to provide fixed links per version? This is blocking our entire pipeline since we download a fresh copy for every processing job.

Hi there, --include has been renamed to --include-pattern

Can we just change the flag without anything breaking? We would prefer sticking with the old version until we can test the changes.

The functionality is the exact same for sync.

Thank you for the quick answers. I will try to upgrade our code as a quick-fix then. For the future, it would still be nice to have download links per version as breaking versions can disrupt a lot, I think?

Understandable. I'll tag this issue as distribution related. If you need access to the old revision, the container is public, so I can link you to the old revision to tide you over until your code is ready

Thank you. That would be nice!

One important thing : if your include pattern only relates to filenames (eg a*.txt) then the new include-pattern parameter should do the same job.  But if your parameter value includes path components (eg. mydir\b.txt) then you can't just change the parameter name, since include-pattern only applies to the file name (not path). That's why there's been a name change.

The recommended procedure for downloading specific versions is documented here https://docs.microsoft.com/en-us/azure/storage/common/storage-use-azcopy-v10#use-azcopy-in-a-script

@EvertEt Here is the download link for 10.2.1.
Sorry for the inconvenience. In the future, please follow the docs link that John shared so that you could pin to a specific version. Thanks!

@EvertEt Here is the download link for 10.2.1.
Sorry for the inconvenience. In the future, please follow the docs link that John shared so that you could pin to a specific version. Thanks!

Hi zezha:
is there a release list for binary/executable azcopy on a web page?

Hi @zffocussss, no, only the latest version is shown on the download page. May I ask why you'd want an older version?

I know this is an old issue, but I still can't find a link that lets me download a specific version of azcopy.

I know this is an old issue, but I still can't find a link that lets me download a specific version of azcopy.

The same problem here. Was trying to find it but didnt succeed.

I did figure out how to get it finally
https://azcopyvnext.azureedge.net/release/azcopy_linux_amd64_<XX.YY.Z>.tar.gz
You can find the date and release information from the releases section on the repo.
Sometimes the day is just a little off so you have to increase or decrease the date by a day or so.

Whats the download link to 10.18.1?

Whats the download link to 10.18.1?

https://azcopyvnext.azureedge.net/release20230123/azcopy_linux_amd64_10.17.0.tar.gz
this one is for 10.17.0, but you can adjust it for your version.
Note: be sure to change release day

I know that, but I can't find a working URL for 10.18.1.
I get the previous version (10.18.0) to work, URL: https://azcopyvnext.azureedge.net/release20230331/azcopy_linux_amd64_10.18.0.tar.gz
But not 10.18.1, tried https://azcopyvnext.azureedge.net/release20230424/azcopy_linux_amd64_10.18.1.tar.gz and +/- 3 days for the date.

Here is 10.18.1
https://azcopyvnext.azureedge.net/release20230420/azcopy_linux_amd64_10.18.1.tar.gz

@nakulkar-msft Thanks

can someone please share link of 10.2.1 for mac supported one?


ARROW-18269: [C++] Slash character in partition value handling

This PR includes a modification to the partition key generation. Expecting input data column with URI data for partition, the URI encoding is added to consider that situation.

This fixes hive partitioning. Do we need to also fix directory partitioning or filename partitioning?

Good question. Should we do in a separate PR?

Good question. Should we do in a separate PR?

I think that's fine.  I also don't know if we do the URI decoding with directory or filename partitioning.  If I recall, URI decoding was originally added specifically for compatibility with the way that Spark wrote datasets.

Good question. Should we do in a separate PR?

I think that's fine. I also don't know if we do the URI decoding with directory or filename partitioning. If I recall, URI decoding was originally added specifically for compatibility with the way that Spark wrote datasets.

Ah I see, that's good to know. I created a JIRA here and I will work on this issue.


etcd client v3 hung at kv.Do

In our kubernetes cluster, if there are many concurrent get request to a same resource, apiserver hung at this resource (like service) operations. We found for each resource in apiserver, there is a connection to etcd. The following code detected halt error, but it seems it didn't handle all errors:
func (kv *kv) Do(ctx context.Context, op Op) (OpResponse, error) {
	for {
		resp, err := kv.do(ctx, op)
		if err == nil {
			return resp, nil
		}

		if isHaltErr(ctx, err) {
			return resp, toErr(ctx, err)
		}
		// do not retry on modifications
		if op.isWrite() {
			return resp, toErr(ctx, err)
		}
	}
}

The hung is at https://github.com/kubernetes/kubernetes/blob/release-1.5/vendor/google.golang.org/grpc/transport/http2_client.go#L557
and the error is: rpc error: code = 13 desc = stream terminated by RST_STREAM with error code: 1
checked the code 13:
	// Internal errors.  Means some invariants expected by underlying
	// system has been broken.  If you see one of these errors,
	// something is very broken.
	Internal Code = 13

with this condition, the connection is till there or it should be reconnect.
as the kv.Do is an infinite loop, if code 13 appeared, it still continues to call rather than handle the code, will it speed up the outage?

The hung is at https://github.com/kubernetes/kubernetes/blob/release-1.5/vendor/google.golang.org/grpc/transport/http2_client.go#L557
and the error is: rpc error: code = 13 desc = stream terminated by RST_STREAM with error code: 1
checked the code 13:
	// Internal errors.  Means some invariants expected by underlying
	// system has been broken.  If you see one of these errors,
	// something is very broken.
	Internal Code = 13

with this condition, the connection is till there or it should be reconnect.

Can you write a script to reproduce the issue?

We can reproduce it every time when we do LNP test for our apiserver, and by checking the goroutine stack with http://<IP_ADDRESS>:8080/debug/pprof/goroutine?debug=2, it hung at the wait function.

@keyingliu Please provide a test script/program and steps to reproduce the issue, as we mentioned here: https://github.com/coreos/etcd/blob/master/Documentation/reporting_bugs.md.
We can help you to identify and resolve the problem faster if you do so. It is not convenient for etcd developers to setup k8s and digging into it.

@xiang90 I will try to have one.
But I am just wondering when code = 13 desc = stream terminated by RST_STREAM returned, what happened to etcd server? and if client see code 13, should it handle more gracefully? what's your opinion about this kind of error. Thanks.

@keyingliu
check https://github.com/coreos/etcd/blob/5fedaf2dd78aca3eeae723f4dfe9d37ea6edd2fa/clientv3/client.go#L481.
The assumption was internal error is not a fatal error. But it seems you hit one that is a fatal error. retrying on that wont work. so i want you to help to reproduce it so that we can understand the behavior better.

@xiang90 we found it is hard to reproduce it util we realized the test client we are using is the newer version of grpc. if we use the grpc in kubernetes 1.5, it is easy to reproduce. But anyway, it seems it is grpc issue. We build our apiserver with newer version grpc, the hung issue has gone.
Thanks.

ok. closing.


Merc Pay Multiplier

Would it be possible to add a Multiplier of the Merc Pay Rate?
Allow you to make a bit more from Merc work?
Another mod does this, but ANOTHER mod menu and ANOTHER mod! LOL :(

I've added this to my list of things to do, it'll likely be included in update 1.1.5


Fix #2004 - NPE when calling Watchdog.stop() twice

It looks good.  Did you experience a problem that prompted this PR?

Yeah, got an NPE while doing some development.


Turn off eager loading.

How am I able to turn off eager loading? It assumes just because I make a paginator instance that there is a method load on my personal paginator.

When configuring the transformer adapter:
app('Dingo\Api\Transformer\Factory')->setAdapter(function ($app) {
    return new Dingo\Api\Transformer\Adapter\Fractal(new League\Fractal\Manager, 'include', ',', false);
});

The last option disables eager loading.
Eager loading should only apply if your pagination contains a collection that is an instance of Illuminate\Datbase\Eloquent\Collection.

Sorry but that last statement is false I don't use Eloquent collections anywhere in my code which is why it fails to call "load".
Also that's a little overkill to switch of a basic feature?
—
Sent from Mailbox
On Wed, Sep 2, 2015 at 12:43 PM, Jason Lewis<EMAIL_ADDRESS>wrote:

Closed #625.
Reply to this email directly or view it on GitHub:
https://github.com/dingo/api/issues/625#event-398831595

You check if it is a Eloquent collection or a paginator instance, yeah a paginator doesn't have a load method.
https://github.com/dingo/api/blob/master/src/Transformer/Adapter/Fractal.php#L146

Looks as if I don't have latest version, will checkout latest version and try again.

You're right, I'll add a method to easily switch this off and on.
And yes, if you don't have the shouldEagerLoad method then you'll need to update.

Resolve the factory and call disableEagerLoading() on it:
use Dingo\Api\Transformer\Factory;
...

app(Factory::class)->disableEagerLoading();

See discussion here: https://github.com/dingo/api/issues/1096


[PERF] Add Purge CSS

Describe the bug
We should purge css to remove unused styles and keep bundle size small

Alright so it seems like we use PurgeCSS with craco

I couldn't get craco to work and ideally we shouldn't touch create-react-app stuff so I'm just gonna try to run PurgeCSS on the final output files

#24 merged to master with proper solution.


更新

更新

?

According to Google Translate it says updating.
It seems the master branch of LiuCaiHe was outdated when he applied the changes.
@LiuCaiHe you need to rebase (not merge!) to resolve this conflict.

It appears to be something to do with rounded borders in vertical steps.


feat(#223): add project name to details scren

Related issue #223
SMOKE TESTING RESULT:

Thank you again, Nice job.


Facebook says my SDK is outdated when it's not (16.* SDK bug?)

🐛 Bug Report

This seems to be a bug on the SDK side: https://developers.facebook.com/community/threads/174497285531587/
Reverting to 15.2.0 seems to solve the issue.
To Reproduce
Install a version of this lib using SDK 16.*
Expected Behavior
No message should be shown.
Environment
System:
    OS: macOS 13.4.1
    CPU: (8) arm64 Apple M1
    Memory: 58.38 MB / 8.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.13.0 - ~/.nvm/versions/node/v18.13.0/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v18.13.0/bin/yarn
    npm: 8.19.3 - ~/.nvm/versions/node/v18.13.0/bin/npm
    Watchman: Not Found
  Managers:
    CocoaPods: 1.12.1 - /Users/mdev/.rbenv/shims/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 22.4, iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4
    Android SDK: Not Found
  IDEs:
    Android Studio: 2022.2 AI-222.4459.24.2221.9862592
    Xcode: 14.3.1/14E300c - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.17 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 18.1.0 => 18.1.0
    react-native: 0.70.3 => 0.70.3
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found
info React Native v0.72.4 is now available (your project is running on v0.70.3).
info Changelog: https://github.com/facebook/react-native/releases/tag/v0.72.4
info Diff: https://react-native-community.github.io/upgrade-helper/?from=0.70.3
info For more info, check out "https://reactnative.dev/docs/upgrading".

Same Issue +1

+1

same issue +1

+1

+1

Same for me as well, but it says that the latest Android version is 13.0.0.

Is it a problem that a later version is used?

Anyone knows how to fix it?

I am also stuck with this

+1s are worse then useless in an open source context, as they generate attention-robbing notifications. Please avoid them, use reactions.
PRs are happily accepted, it could be that firebase-ios-sdk has an update and we could adopt it here. It could be that our documentation needs a fix to let you know this is ignorable (along with a link to the upstream documentation). But other than that I'm not sure what the expectation here is with regard to "this change will fix it", so an issue and a stream of +1s are not useful.
PRs to versions, PRs to code, PRs to docs, one of those will move this forward

You can see and review and with the new version that there is, there is a variable called setClienteToken, if you put the secret token there, it starts serving me like this and started taking the events.
This is how I have the code in the app.tsx, I know that having the client ID may not be necessary but I put it in by default
useEffect(() => { Settings.initializeSDK() Settings.setAppID('') Settings.setClientToken('') }, [])
I hope it works for you

hi @DavideValdo how do you revert the version to 15.2.0, Im thinking to revert for now because my app is using only the auto log events which is app install and app activate.

Through trial and error.
I think I've found a temporary solution by downgrading the sdk version. I don't know if this is a solution but it works for me for the moment.
app\build.gradle
implementation 'com.facebook.android:facebook-android-sdk:14.1.1'
Package.json
"react-native-fbsdk-next": "^10.1.0",
App.js
useEffect(() => {
    Settings.initializeSDK();
    Settings.setAppID('ID');
  }, []);

+1
is there any fix coming?

I don't know, @kamil-floqsta I'm fully +1 on you proposing a PR to fix it. Thanks!

Anyone try the latest SDK 16.2.1 via patch-package?
https://github.com/facebook/facebook-ios-sdk/releases
Could fix the problem, and we could take a PR to merge it if anyone cared to do the work to test things...
We're still on 16.1.3 here https://github.com/thebergamo/react-native-fbsdk-next/blob/36a762af896bc4ed2dd08b1f361267f107e830ed/react-native-fbsdk-next.podspec#L4

+1 is there any fix for this?

Hey @hasretozkan we're all just +1 waiting on you to post a PR updating the native ios SDK after you test the new version to see how it goes +1 +1 +1 yeah

Ekhm.. Check guys that u signIn with account that is allowed in development mode on facebook developer account. I was getting an error with app inactive and outdated sdk because i tried to signIn with my personal fb account while i have development mode on facebook developer. When this mode is enabled not live mode u can only signIn with administrator fb account. It worked me with fbsdk-next v 2.1.0 and patched fbsdkversion 16.2.1

So there was a issue with IOS and Android where the meta dashboard stated that I had a outdated SDK version.
I have fixed that temporary on IOS by downgrading to react-native-fbsdk-next 11.3.0.
However this did not fix the issue with android, it still states that there is outdated SDK.
@stefanahman have you been able to fix this issue?

It took some time before the changes comes through I think. But now it looks like this and I haven't touched it since:

I'm using version 11.3.0.

@stefanahman so you are using an outdated version which includes an outdated version of the SDK, and it doesn't show the error that everyone indicates is happening with the updated version (v12+ here, using SDKs v16+)?
That's expected, and doesn't help people using v12+ (v16+ of native SDKs) here

Yes, I too, had to downgrade to get something to work.
This is just a workaround and I haven't solved the root cause. Sorry if I wasn't clear enough.
All I did was to confirm that the downgrade worked.

I had an issue with the Android version showing the v0.0.0, i tried to downgrade the version v11, v10, v9 but they didn't work for me. So, i ended up with changing the version of fb-android-sdk in the build.gradle in the node_modules for 14.1.1, then run the new app and the version of Android sdk got updated.
Hope this helps.


Allow passing args to preprocess function in open_mfdataset

For a set of netcdf files I'm opening with open_mfdataset I'd also like to pass a couple of extra arguments to the preprocess function. At the moment the Dataset seems to be the only arg that the preprocess function accepts.
The netcdf files have dimensions (time, lat, lon).  Each file covers a different year and I'd like to slice out particular dayofyear range within each. I tried calculating dayofyear inside the preprocess function and doing .sel, which works perfectly fine, but not with the parallel=True option. Without the parallel option loading is much slower.
However, if parallel=True a pickling error occurs, possibly because I'm using other functions like dateparse, or timedelta inside the preprocess function to calculate the dayofyear (which itself is derived from a ipywidget).
I don't really understand the pickling error, it says;
D:\Anaconda3\lib\pickle.py in save_global(self, obj, name)
    963                 raise PicklingError(
    964                     "Can't pickle %r: it's not the same object as %s.%s" %
--> 965                     (obj, module_name, name))
    966
    967         if self.proto >= 2:

PicklingError: Can't pickle <built-in function input>: it's not the same object as builtins.input

I also tried setting the start/end dayofyear as global outside the preprocess function and using them inside the function but changing those globals (integers) after the function is defined doesn't seem to alter the reference to them inside the function. I don't think this solution is very elegant anyway.
Many other packages have functions that use callbacks with the option of passing additional arguments. Has this been considered for open_mfdataset?

Before I think about this further - could your problem be solved using functools.partial?

'm using other functions like dateparse, or timedelta inside the preprocess function to calculate the dayofyear (which itself is derived from a ipywidget).

ds.time.dt.dayofyear should do this for you: https://xarray.pydata.org/en/stable/time-series.html#datetime-components

I've cleaned up some code so hopefully it shows my two methods more clearly;
Current method
# Set some day of year globals
DOY1 = 1; DOY2 = 31

def select_time(ds):
    # METHOD 1: Derive start/end date from external ipy widget values
    #   Problem: Doesn't work with kwarg parallel=True (pickling error)
    #   Unknown: if the widget values here will actually change when widgets are changed
    year_min, year_max = ds.time.dt.year.min(), ds.time.dt.year.max()
    start_date = pd.Timestamp(dateparse(str(int(year_min)) + mmddW.value))
    end_date = pd.Timestamp(start_date + timedelta(days=daysW.value))
    # Test using fixed values to create start/end dates...this works with pickling
    #    start_date = pd.Timestamp(dateparse(str(int(year_min)) + '0101'))
    #    end_date = pd.Timestamp(start_date + timedelta(days=30))
    ds = ds.sel(time=slice(start_date, end_date))

    # METHOD 2: Select time range based on day of year, where DOY1,DOY2 are
    # globals set outside this function. Does pickle, so works with parallel option.
    #   Problem: DOY1, DOY2 don't update here when changed externally after
    #   function declaration
    ds = ds.sel(time=((ds['time.dayofyear']>=DOY1) & (ds['time.dayofyear']<=DOY2)))
    return ds

ds = xr.open_mfdataset(
    files,
    chunks={'lat': 50, 'lon':50},
    combine='nested', concat_dim='time',
    preprocess=select_time,
    parallel=True
)

I can appreciate the pickling error for Method 1 is actually because of the reference to the (global) ipy widgets mmddW & daysW. After all why should it be expected to pickle those? Interesting that's only a problem for the parallel option though.
I don't fully understand, but can also appreciate, Method 2 only references DOY1/2 when they're declared and seems to be static thereafter even if DOY1/2 are modified.
Both methods are variations on a theme: I'm trying to use globals in the preprocess function as an alternative to passing extra args.
The broader question is whether extra arguments could be useful feature to have.
Another solution
I think the actual solution to my problem is to forget about preprocessing. Since nothing is loaded at that stage
ds = xr.open_mfdataset(
    files,
    combine='nested', concat_dim='time',
    parallel=True

ds = ds.sel(time=((ds['time.dayofyear']>=DOY1) & (ds['time.dayofyear']<=DOY2)))
ds = ds.chunk({'time': -1, 'lat':50, 'lon':50}).persist()

Doing everything after the open_mfdataset and seems to work more efficiently. This sort of thing is counter intuitive to me still. Loading less would seem better from the outset but the after-the-fact processing seems to take care of this problem.
Still, it's a side-step around the arg passing issue.

Before I think about this further - could your problem be solved using functools.partial?
I've never used functools.partial. From my reading it seems this is used to wrap functions and fix certain arguments so you can call the wrapper with less args. I don't know how to use it to help my current situation.

I think the actual solution to my problem is to forget about preprocessing.

I'm glad you've found an alternative way to solve your problem!

Still, it's a side-step around the arg passing issue.

So, please tell me if you disagree, but I see it like this: the only time that you would need to be able to pass arguments in to preprocess is if you need to perform an operation within preprocess (i.e. not simply before or after open_mfdataset) that requires a different argument for each file, but when that argument cannot be derived from each file individually.
If you need to pass in global arguments to preprocess, you can use functools.partial to define the preprocess function as having those arguments already set, and if you need only knowledge about the file being currently opened, then that's the use case preprocess is intended for. I can see that there might be other cases where you can't do either of the above, but how often do they actually occur?

Thanks for the suggestion of functools.partial. I have (amazingly) never used it before so it's great to learn new things. If it's a way of 'fixing' existing args to a function that requires more arguments than you want to pass it -- The sum(x, y) => sum2=partial(sum(x, 2)) => sum2(x) sort of example -- then at first glance isn't this the opposite to what I want to do? ie. to pass more args to the callback. I suspect I'm approaching this the wrong way though, going from your last paragraph above. I'm just playing with a minimal sample now.
Otherwise, I do agree with you about when args would need to be passed, ie. individual file processing that can't be done outside. Obviously if you don't need args, don't pass any. While I see now my use case doesn't need that, there still might be others that do, though this might be rare (later I'll need to add a dimension for each file with a value that varies between files, but luckily I can extract that from the filename). I was imagining additional args working something like the way the schedule module handles Job callbacks .
import schedule
schedule.Job.do?
Signature: schedule.Job.do(self, job_func, *args, **kwargs)
Docstring:
Specifies the job_func that should be called every time the
job runs.

Any additional arguments are passed on to job_func when
the job runs.

:param job_func: The function to be scheduled
:return: The invoked job instance
File:      d:\anaconda3\lib\site-packages\schedule\__init__.py
Type:      function

My original intent was cutting down the data I was loading from large files by managing that through the preprocess callback. But this is where I readily admit not knowing how xarray handles things under the covers which means I do things the wrong (sub-optimal?) way. I'm not the only one that is struggling with what is optimal though;
Unexpected behaviour when chunking with multiple netcdf files in xarray/dask

My minimal functools.partial has some weird behaviour.
import xarray as xr
from functools import partial
from pathlib import Path

def preprocessing(doys, ds):
#    print(doys)
    ds = ds.sel(time=((ds['time.dayofyear'] >= doys[0])
                & (ds['time.dayofyear'] < doys[1])))
    return ds

def get_data_set(doys, parallel=True):
    ds = xr.open_mfdataset(
        files,
        combine='nested',
        concat_dim='time',
        parallel=parallel,
        preprocess=partial(preprocessing, doys)
    )
    return ds

if __name__ == '__main__':
    pth = "/path/to/data"
    day_of_year_range = (100, 140)
    files = list(Path(pth).rglob('*.nc'))
    ds = get_data_set(day_of_year_range, parallel=False)
    print(ds)

If I run with parallel=True the python kernel crashes, or I get something like
  File "netCDF4\_netCDF4.pyx", line 2344, in netCDF4._netCDF4.Dataset.__init__
  File "netCDF4\_netCDF4.pyx", line 1789, in netCDF4._netCDF4._get_vars
  File "netCDF4\_netCDF4.pyx", line 1887, in netCDF4._netCDF4._ensure_nc_success
RuntimeError: NetCDF: Can't open HDF5 attribute

If parallel=False (same set of input files) everything is OK. Passing a new day of year range works, it's all good.

closing as stale. @prs247au - feel free to reopen if you are still stuck here.


Moving middleware tests to its package

What changed?

Moving middleware tests to it's package

Why?

How did you test it?

Release notes

Documentation Changes

The reasoning for the ping service is to minimize mocking, as you start to actually implement the applications service and add all the calls it might make it hard to work with, but I'm well removing it, at least for now I don't think it adds a lot of value.


Add MyMoney manifest

See https://github.com/clovett/MyMoney.Net
Microsoft Reviewers: Open in CodeFlow

/AzurePipelines run

/AzurePipelines run

The installer fails.  8007000D Opening the package from location LovettSoftware.Mymoney.Net1.1.60 failed.

I give up.  It installs fine manually from this link:
http://lovettsoftware.com/Downloads/MyMoney.Net/index.html
How does one create a proper winget manifest for this app ?

Ok, trying one more time, this time I copied the way xmlnotepad is setup, so hopefully this time my URL and has are correct.  When I download the file MoneyPackage_<IP_ADDRESS>_AnyCPU_Debug.msixbundle and run it locally it installs fine.  Perhaps my mistake was trying to point to the MoneyPackage.appinstaller instead...

/AzurePipelines run


[SMALLFIX] Cherry-pick NPE fix for loadMetadata

alluxio-bot, check this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/422/
Test PASSed.

@aaudiber cherrypicked to branch-1.8


Aerospike without lua script

To disable timetravel pls instead add property embedded.aerospike.test-features.time-travel.enabled.
Make this bean conditional on this property and also throw exception on timeTravel request.


Where's the documentation for headerRowTemplate ?

I noticed there seem to be a few places in the config document where you refer to the following:
"See github wiki for more details"
However when I check the wiki I cannot find anything. Also in the config options there are many links in the right hand column but none seem to link to examples. I'm very interested to use some of these options but wish they were documented. Without documentation then they are not really usable :-(

+1

@c0bra the link you provided 404's - is there a new place where the documentation can be found?

@bborowin Sorry, 2.x code got moved to its own branch. It's here now: https://github.com/angular-ui/ng-grid/blob/2.x/src/templates/headerRowTemplate.html


ArgumentError: key must be 32 bytes

I'm using encryptor via attr-encrypted in a Rails 5 application. While evaluating an upgrade to Ruby 2.4.0, I came across the following error coming out of this gem. Not sure if this is a bug, or something I'm doing wrong, or some change related to Ruby 2.4.0 that requires some effort on my part.
From Ruby 2.4.0
[7] pry(main)> RUBY_VERSION
=> "2.4.0"
[8] pry(main)> secret_key = SecureRandom.random_bytes(64)
=> "\xF3\xA6\xE9\x91\xFD\x94\xCB\xBDH\xA9|\xDF\x04\xBF\xAC\x13+0\xB5\xAF`[\b\xE6\xEDw\xCDD\x97\x19\"\xD1\xB1\xFB\x8A\x8Cn\x84N\x05\xDCp\x1C\xA0o3\x9D\t\xFA\x1F\xC1\x1C&F\xFC\xB0,\xDB\xBE\xE1\x8E9\xD4\xA6"
[9] pry(main)> iv = SecureRandom.random_bytes(12)
=> "\xD5\x00\xB1Q.>)\xAE\xF0x\xBB\xA1"
[10] pry(main)> encrypted_value = Encryptor.encrypt(value: 'some string to encrypt', key: secret_key, iv: iv)
ArgumentError: key must be 32 bytes
from /home/darren/.gem/ruby/2.4.0/gems/encryptor-3.0.0/lib/encryptor.rb:72:in `key='

Previous behavior from Ruby 2.3.3
[1] pry(main)> RUBY_VERSION
=> "2.3.3"
[2] pry(main)> secret_key = SecureRandom.random_bytes(64)
=> "A\xFD\xBC\xA5\x1A\x8E\xD7\x17W\x00r5\x8CHv|\xA7\xFB6\xB8N\x9Fb\x93\xA4\x9Aw\x8E\bq\xBA\xFC\xEF\xA3\x9E\xE2\xED\xB1\b\xBC\xE3\xDA\xEA\xDB\xF2\xAC0\xDAh\xCE\x88/(\x16\xC9\xDDs9\xD11\xE5\xE9\t\\"
[3] pry(main)> iv = SecureRandom.random_bytes(12)
=> "\xC8\xE3\xBE\x91y\x95sF\xE6\x89\x8C\""
[4] pry(main)> encrypted_value = Encryptor.encrypt(value: 'some string to encrypt', key: secret_key, iv: iv)
=> "\x12\x9A\x81*U\xCFT\x91\xB7;\xAF\xF2I]\x9C@L\xD5\xB8;\x00\x87\xF3\x82yS(r\x90\xC8\x86\xBB\x13\x92\xA83$O"

These are both using encryptor 3.0.0.

This is affecting my Rails 5.0.1 application too, following an upgrade to Ruby 2.4

Same issue for me when upgrading to Ruby 2.4.0.

I don't think that the issue really comes from Encryptor;
afaik this is the change in the OpenSSL library that causes the error: https://github.com/ruby/ruby/commit/ce635262f53b760284d56bb1027baebaaec175d1
We've solved it by generating keys that are the correct size length;
if OpenSSL requires 32 bytes, make sure you generate it with SecureRandom.random_bytes(32).
If you plan to store the keys in a YML file (or similar), you will probably have to resort to using Base64.
We did this:
namespace :openssl do
  desc "Generate Base64 encoded bytes for application.yml"
  task generate: :environment do
    {
      ENCRYPT_SECRET_KEY: 32,
      ENCRYPT_IV: 12,
      ENCRYPT_SALT: 128
    }.each do |k, length|
      value = Base64.encode64(SecureRandom.random_bytes(length)).delete("\n")
      puts "#{k}: '#{value}'"
    end
  end
end

Then in initializers/encryptor.rb:
# frozen_string_literal: true
Encryptor.default_options.merge!(
  algorithm: 'aes-256-gcm',
  key: Base64.decode64(ENV['ENCRYPT_SECRET_KEY']),
  iv: Base64.decode64(ENV['ENCRYPT_IV']),
  salt: Base64.decode64(ENV['ENCRYPT_SALT'])
)

Hi there! Could you tell me how I can migrate from 128 byte key to 32 byte key in production?

@anaumov We were able to simply truncate our keys from their longer length to 32 bytes. It seems that while the Ruby SSL implementation allowed for keys longer than 32 bytes, it truncated them. The recent change is to raise an error for keys that aren't exactly 32 bytes.
Obviously, you should test this to make sure it's works for you :).

A simple key truncation also worked in our case.

Hi there, I got a error like almost same thing, but iv not key.
Since  on openssl is merged, key must be 32 bytes and iv must be 12 bytes in Ruby 2.4.0. before 2.4.0, these are truncated.
Hi there, I also encountered the same kind of error but IV not key.
Since this change of openssl have been merged, in Ruby2.4.0, key  must be 32 bytes, IV must be 12 bytes.
I tryed to change iv to 12 bytes. And it works
But I think good to fix the number of bytes of ArgumentError in this gem.

This is a really frustrating issue.  It would be great if someone could post their solution to this problem.  I've tried the Base64 encode/decode method to no avail.  I also arrived here because I'm using the attr_encrypted gem, not this gem specifically.

@danielricecodes people have posted their solution. Use the correct sized key and iv. You can trim the extra bytes and it should work.
However, I'm not certain how the IV was handled in Ruby < 2.4. If it was similarly ignored like the extra bytes in the key, then you should be able to simply trim the IV.

Here's a way I figured out can generate a 32 character key without using SecureRandom...
Just run this in rails console
rake secret[0..31]
It will spit out a 32 byte string - just without all the random garbage SecureRandom will throw in there.  You don't have to Base64 encode that value either.

@danielricecodes I don't recommend doing that, but you're welcome to do whatever you like.

I downgraded my app to Ruby 2.3 as a workaround.  IMHO, it appears this gem does not support Ruby 2.4 right now.
So perhaps an Issue needs to be opened for Ruby 2.4 support for this gem?  The gem should behave the same with Ruby 2.4 as it does with 2.3.  I'm not a super expert at Ruby or encryption - otherwise I'd take a crack at it myself.

@danielricecodes correct, there isn't official support for Ruby 2.4 yet. People are using it at their own risk. I've started work to support it but I've hit a few issues.

I think it'd be a big help to improve this line to warn people about this issue.
raise ArgumentError.new("key must be #{cipher.key_len} bytes or longer") if options[:key].bytesize < cipher.key_len

The "or longer" is not true in this case.

I'm still running into this issue with Ruby 2.3.4 and Rails 5.0.1. Moreover, my key length indicates that it is 32 bytes, so I don't understand what is happening. It's very frustrating.

how do you migrate from a shorter key? (21 bytes)

@NullVoxPopuli ...

add new columns for the field (encypted value and IV)
generate a new proper length key, but don't use the same variable (environment or otherwise)
write code to write the value into both places, encrypted with old key and with new key
write backfill/migration script to run in production that updates the new columns
deploy to production
run the backfill
double-check your work to make sure it worked
triple-check your work to make sure it worked
remove the old columns and old key
deploy your now fully migrated app

Or, at least that's what I would do. This is a useful procedure to try and do, since it's also how you deal with a possibly exposed secret.

cool, thanks for the tip!

Not sure if this the "correct" answer, but @consti's suggestion worked for me.

My key was 32 chars, but 41 bytes because the key was stored in UTF-8. I was able to convert it, truncate to 32 bytes, then store in yml using base64 as suggested by @consti . I converted it something like:
Base64.encode64 Rails.application.secrets[my_key].bytes[0..31].pack( "c" * 32 )

I think it'd be a big help to improve this line to warn people about this issue.
raise ArgumentError.new("key must be #{cipher.key_len} bytes or longer") if options[:key].bytesize < cipher.key_len

The "or longer" is not true in this case.

Are we planning to change key_len & iv_len checking logic? Code needs to check  exact lengths. Happy to raise a PR if its correct approach.

I was able to upgrade to Rails 2.5.5, without changing my old keys, using @pduey approach
attr_encrypted :my_attribute, key: ENV['MY_KEY'].bytes[0..31].pack( "c" * 32 )

@pduey or someone, would you mind explaining the pack( "c" * 32 ) part ? it works but I don't get it

@mvaragnat
Array#pack converts an integer array to a string. The parameter is a format string. In our case, it's interpreting the first 32 elements of the array as a signed integer and printing it in string form. "c" * 32 is shorthand for "cccccccccccccccccccccccccccccccc". Array#pack also accepts "c*" which says interpret the entire array, which would be safe in our case since we also used bytes[0..31].
Also, String#unpack, the converse of Array#pack, could be used instead of String#bytes.

a simple bundle update did it for me