app-index.js:33 Warning: Prop id did not match. Server: "canvas-73d2dc48-c585-c8d0-b0f7-a9929eaf181f" Client: "canvas-913ad331-2cac-d451-5940-5e99a47fad7e"
at canvas
at div
at div
at UseInViewport (webpack-internal:///(app-pages-browser)/./node_modules/react-icon-cloud/dist/react-icon-cloud.esm.js:100:17)
at CloudWrapped (webpack-internal:///(app-pages-browser)/./node_modules/react-icon-cloud/dist/react-icon-cloud.esm.js:145:27)
at Cloud
at IconCloud (webpack-internal:///(app-pages-browser)/./components/ui/InteractiveIcon.tsx:64:11)
at div
at TechStack
at div
at div
at section
at About
at main
at Home (Server)
at InnerLayoutRouter (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js:243:11)
at RedirectErrorBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/redirect-boundary.js:74:9)
at RedirectBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/redirect-boundary.js:82:11)
at NotFoundErrorBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/not-found-boundary.js:76:9)
at NotFoundBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/not-found-boundary.js:84:11)
at Suspense
at LoadingBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js:349:11)
at ErrorBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/error-boundary.js:160:11)
at InnerScrollAndFocusHandler (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js:153:9)
at ScrollAndFocusHandler (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js:228:11)
at RenderFromTemplateContext (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/render-from-template-context.js:16:44)
at OuterLayoutRouter (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js:370:11)
at body
at html
at RootLayout (Server)
at RedirectErrorBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/redirect-boundary.js:74:9)
at RedirectBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/redirect-boundary.js:82:11)
at NotFoundErrorBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/not-found-boundary.js:76:9)
at NotFoundBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/not-found-boundary.js:84:11)
at DevRootNotFoundBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/dev-root-not-found-boundary.js:33:11)
at ReactDevOverlay (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/react-dev-overlay/app/ReactDevOverlay.js:87:9)
at HotReload (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/react-dev-overlay/app/hot-reloader-client.js:321:11)
at Router (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/app-router.js:207:11)
at ErrorBoundaryHandler (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/error-boundary.js:113:9)
at ErrorBoundary (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/error-boundary.js:160:11)
at AppRouter (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/app-router.js:585:13)
at ServerRoot (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/app-index.js:112:27)
at Root (webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/app-index.js:117:11)

closing this issue for now as not enough information provided
please checkout our discord for help :)
https://discord.gg/87p2vpsat5


App replacement

Replace Aniyomi with Saikou: https://github.com/saikou-app/saikou/

#46

#46 added saikou

Soon will be added. Closing.


version not found<EMAIL_ADDRESS>in Exercise 8

In Exercise 8, when I was trying to install the npm packages babelify, babel-preset-react and babel-preset-es2015, it returns "version not found<EMAIL_ADDRESS>Is it possible to replace these packages use other packages?

I think it have been fixed.
Please run npm install browserify babelify babel-preset-react babel-preset-es2015 command again.


go-outline: unstable-2017-08-04 -> unstable-2018-11-22

Signed-off-by: Vincent Demeester<EMAIL_ADDRESS>Motivation for this change
Bump to a more recent version
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build go-outline


1.5.1 fails to build with Clang due to -Werror

Regressed by 231282c66d39
$ cc --version
FreeBSD clang version 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303)
Target: x86_64-unknown-freebsd14.0
Thread model: posix
InstalledDir: /usr/bin

$ gmake CC=cc CXX=c++
wayland-scanner client-header pro/wlr-output-management-unstable-v1.xml pro/wlr-output-management-unstable-v1.h
cc -pedantic -Wall -Wextra -Werror -Wno-unused-parameter -O3 -std=gnu17 -Wold-style-definition -Wstrict-prototypes -I/usr/local/include/libepoll-shim  -I/usr/local/include  -I/usr/local/include -I/usr/local/include/libepoll-shim  -I/usr/local/include  -I/usr/local/include  -I/usr/local/include  -Iinc -Ipro -D_GNU_SOURCE -DVERSION=\""1.5.2-SNAPSHOT"\"  -c -o src/client.o src/client.c
In file included from src/client.c:9:
inc/log.h:36:88: error: token pasting of ',' and __VA_ARGS__ is a GNU extension [-Werror,-Wgnu-zero-variadic-macro-arguments]
#define log_error(__format, ...) log_efl_(ERROR, 0, (char*)__FILE__, __LINE__, __format, ##__VA_ARGS__)
                                                                                ^
1 error generated.
gmake: *** [<builtin>: src/client.o] Error 1

Thanks @jbeich
Reverted. Released 1.5.2.
I'll re-express those changes as functions at a later date.


[PiranhaJS] PiranhaJS leaves dead code on exported variables

Command executed:
node src/piranha.js -s flag.js -f my-flag -p config/properties.json --treated

Input file (flag.js)
export const myFlag = isFlagTreated('my-flag');
if (myFlag) {
  console.log('Enabled');
} else {
  console.log('Disabled');
}

Expected refactor:
console.log('Enabled');

Actual refactor:
export {};
console.log('Enabled');

Thanks for pointing this out. This kind of problem may be more general. Whenever Piranha removes all statements from a scope, we need to delete the parent of that scope (export in your example).

Good idea - I think UglifyJS can concatenate files, keeping track of imports using a sourcemap, and allowing you to regenerate the code after refactoring it.


Fix EfQueryableCursorPagingHandler (hasNextPage & hasPreviousPage)

Summary of the changes (Less than 80 chars)
Ensure that the fetchCount can be greater than arguments.First and arguments.Last therefore setting hasNextPage and hasPreviousPage accordingly
Added tests to check for hasNextPage and hasPreviousPage
Closes #7500

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks for your help!


first version of the initial script

This script will address issue https://github.com/psychok7/django-project-template-yadpt/issues/17 once it is ready
@pslobo please test and review this PR.
to run it just python3 minimal/start.py -e production xxx or python minimal/start.py -e production xxx

[x] User Input
[x] Fetch Template
[x] Generate Certbot Script
[ ] Properly Test Subprocess Calls

@pslobo when testing, uncomment the subprocess.call and ensure their are creating the project properly and the new certbot named volume

@pslobo please have a look now. uncomment the subprocess and it should be a working version

@kapz it's happening

@pslobo my last commits should fix the issues we were having, please do a clean test again


Fix MergeGlobalParamEntryDefaults For Fee Estimator

#1267  👈
feature/proof-of-stake

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @tholonious and the rest of your teammates on  Graphite


Setting Edge Lengths as Float Type

Firstly, I want to express my gratitude for your open-source code—it helps me a lot : )
In my current project, I find the need for edge lengths to be represented as floating-point numbers. This specifically relates to the variable Q in examples/rrt_3d.py. However, this requirement exposes an issue in the file rrt-algorithms/rrt/rrt.py.
while True:
    for q in self.Q:  # iterating over different edge lengths until a solution is found or a timeout occurs
        for i in range(int(q[1])):  # iterating over the number of edges of the given length to add
            x_new, x_nearest = self.new_and_near(0, q)

            if x_new is None:
                continue

            # connecting the shortest valid edge
            self.connect_to_point(0, x_nearest, x_new)

            solution = self.check_solution()
            if solution[0]:
                return solution[1]

The issue arises because Q is a numpy array, and q[1] is automatically interpreted as a float, causing a problem when passing it to the range() function. To resolve this, I performed an integer type conversion onq[1] using range(int(q[1])).
I'm curious if this is a minor oversight in the code that could be addressed.
Best regards

I see the issue. It's caused by an old experiment where edges were represented as an array of tuples. The idea was that each tuple represented an edge length, and a number of times to try that edge length. That way, you could try different lengths iteratively within the same run. this is somewhat confusing, so I've changed it in favor of a single value. Changes are in d61b21b.


jpeg images are not exported if RAW+JPEG pair and jpeg is selected as master on Mojave

On Mojave: osxphotos export ~/Desktop/export -V does not export the jpeg image of a RAW+JPEG pair if the RAW image is selected as original in Photos:
Using last opened Photos library: /Users/rhet/Pictures/Test-10.14.6.photoslibrary
Using export database /Users/rhet/Desktop/export/.osxphotos_export.db
Exporting 12 photos to /Users/rhet/Desktop/export...
...
Exporting IMG_1997.cr2 (IMG_1997.cr2) as IMG_1997.cr2
Exported /Users/rhet/Desktop/export/IMG_1997.cr2
Exported /Users/rhet/Desktop/export/IMG_1997.cr2
...
Exporting IMG_1994.JPG (IMG_1994.JPG) as IMG_1994.JPG
Exported /Users/rhet/Desktop/export/IMG_1994.JPG
Exported /Users/rhet/Desktop/export/IMG_1994.cr2
...
Exported: 16 photos
Elapsed time: 0.417 seconds

Also looks like the raw image is exported twice.

>>> photo = photosdb.get_photo("AcxIpfolT3KU2Ge84VG3yQ")
>>> photo.has_raw
True
>>> photo.path
'/Users/rhet/Pictures/Test-10.14.6.photoslibrary/Masters/2020/10/05/20201005-041506/IMG_1997.cr2'
>>> photo.path_raw
'/Users/rhet/Pictures/Test-10.14.6.photoslibrary/Masters/2020/10/05/20201005-041506/IMG_1997.cr2'
>>>

I'm not sure what the best way to represent these images is.  Photos treats them differently -- In Photos 4 for example, RKVersion is updated when the user selects "Use RAW as original" and Photos displays the "R" badge on the photo.  One approach might be for osxphotos to always treat them the same but use PhotoInfo.raw_original flag to indicate which is the original.  E.g. in this case:
.path would always be the jpeg
.path_raw would always be the raw
.has_raw == True
.raw_original = True or False

Fixed in v0.35.0


ANALYZE should wait for database locks

...so that it can work in the background while you're doing queries in the foreground.
sqlite3 has some ways to do this:

PRAGMA busy_timeout https://www.sqlite.org/pragma.html#pragma_busy_timeout
sqlite3_busy_timeout https://www.sqlite.org/c3ref/busy_timeout.html
sqlite3_busy_handler https://www.sqlite.org/c3ref/busy_handler.html

It is also possible that unlock-notify is relevant: https://www.sqlite.org/unlock_notify.html

This doesn't seem in line with the MMLServ direction, and one can always cp the .bdb file and use it in another place, every once in a while, and at the same time continue analysis. I think that's the strategy we should recommend until we want to revisit this.

Note: you can't use cp on a sqlite3 database in progress.  You can do echo .backup copy.bdb | sqlite3 orig.bdb.

By 'in progress', I mean 'being written to at the moment', as is likely to be the case during analysis.


[hl-update] During a highlight update, things not working well after the first flush

The issue is clearSpans(). It's clearing not only the ForegroundColorSpans, but the spans attached by the EditText as well.


Top-up wallet using the Rapyd checkout page

This one is tricky because we need to know in advance the default currency of the user. Rapyd depends on the currency and the country params to determine the checkut page options.


Nested feature branch support for git-kill

@charlierudolph @allewun @ricmatsui
implements parts of #529

This PR is outdated, a newer one has been opened.


[NETBEANS-54] Module Review db.mysql

no external library

checked Rat report; unrecognized license headers manually changed,
ignored manifest.mf and *.form (see central problems)

skimmed through the module, did not notice additional problems

Merged with 1 positive review. Thanks for having a look.


Resize only the biggest partition on UEFI disks

closing PR, please reopen it when the experimental rebased will be merged to master


problem with css and javascript urls

Hello and thanks for this great framework.
I have a small problem that might be very easy to solve for you as I'm quite new to this:
I have this code :
Flight::route('/sidebar/@param', function( $param)
{
$session = Flight::get('session');
if ($session->isLoggedIn())
{
    ...
	Flight::render('header.php', array(), 'header_content');
	Flight::render('sidebar.php', array( 'user_info' => $info,
										  'active' 	 => $param ), 'sidebar_content');
	...
	Flight::render('layout.php', ....);
	...

The parameter param is passed correctly to sidebar.php but when layout.php
is rendered the keyword "sidebar" is added to all url for all css and javascript links in header.php and my page has no css nor javascripts loaded.
Is this the way it should work ? If not how can I solve it?
advice appropriated.
many  thanks

@muhammadsufiyan
If you set the baseurl to //localhost/sub_directory you will have some problems with the Flight::redirect()-Method.
For Example if you run the redirect Flight::redirect('/user') the Url from the redirect will result in //localhost/localhost/sub_directory/user.
The Problem can be solved if you don't use the //localhost in the baseurl and just define /sub_directory as baseurl.


Remove version: NelsonNumericalSoftware.Nelson version <IP_ADDRESS>7

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: https://github.com/Nelson-numerical-software/nelson/releases/download/v0.5.9/Nelson-<IP_ADDRESS>7-x86-64.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 911)


Add address sanitizer option to install script

Need to run this on CI against a newer mainline build. 6132 is likely too old

I was looking at adding this for rocSPARSE. Do you think it would be better to instead do something like:
address sanitizer
if [[ "${build_sanitizer}" == true ]]; then
cmake_common_options="${cmake_common_options} -DBUILD_ADDRESS_SANITIZER=ON"
fi
in the install script and then in the CMakeList.txt:
Build options
option(BUILD_SHARED_LIBS "Build rocSPARSE as a shared library" ON)
option(BUILD_CLIENTS_TESTS "Build tests (requires googletest)" OFF)
option(BUILD_CLIENTS_BENCHMARKS "Build benchmarks (requires boost)" OFF)
option(BUILD_CLIENTS_SAMPLES "Build examples" ON)
option(BUILD_VERBOSE "Output additional build information" OFF)
option(BUILD_CODE_COVERAGE "Build rocSPARSE with code coverage enabled" OFF)
option(BUILD_ADDRESS_SANITIZER "Build rocSPARSE with address sanitizer enabled" OFF)
if(BUILD_ADDRESS_SANITIZER)
add_compile_options(-g -fsanitize=address -shared-libasan)
add_link_options(-g -fuse-ld=lld)
endif()
This way its easy to set when not using the install script (which I have heard may be replaced or not used at some point)? This is the way we added code coverage. Thoughts?

That seems like a good plan to me. A cmake approach is easier to implement across all the libraries

I was looking at adding this for rocSPARSE. Do you think it would be better to instead do something like:
// address sanitizer
if [[ "${build_sanitizer}" == true ]]; then
cmake_common_options="${cmake_common_options} -DBUILD_ADDRESS_SANITIZER=ON"
fi
in the install script and then in the CMakeList.txt:
// Build options
option(BUILD_SHARED_LIBS "Build rocSPARSE as a shared library" ON)
option(BUILD_CLIENTS_TESTS "Build tests (requires googletest)" OFF)
option(BUILD_CLIENTS_BENCHMARKS "Build benchmarks (requires boost)" OFF)
option(BUILD_CLIENTS_SAMPLES "Build examples" ON)
option(BUILD_VERBOSE "Output additional build information" OFF)
option(BUILD_CODE_COVERAGE "Build rocSPARSE with code coverage enabled" OFF)
option(BUILD_ADDRESS_SANITIZER "Build rocSPARSE with address sanitizer enabled" OFF)
if(BUILD_ADDRESS_SANITIZER)
add_compile_options(-g -fsanitize=address -shared-libasan)
add_link_options(-g -fuse-ld=lld)
endif()
This way its easy to set when not using the install script (which I have heard may be replaced or not used at some point)? This is the way we added code coverage. Thoughts?
Building without the install script would then work like:
CXX=/opt/rocm/bin/hipcc cmake -DBUILD_CLIENTS_TESTS=ON -DBUILD_ADDRESS_SANITIZER=ON ../..
make
make install

is -g preferred or is setting CMAKE_BUILD_TYPE=Debug the way to go?

Is -fuse-ld=lld required? Without this I think it will just use the hipcc linker which should be fine?


[BUG] Different handling of nans at the beginning in TimeSeriesImputerTransform

🐛 Bug Report
Currently different strategies of TimeSeriesImputerTransform handle NaNs at the beginning of the segments differenlty.
Don't touch them:

running_mean

Fill them:

zero
mean
forward_fill

I think there should be some consistency.
Expected behavior
There can be two solutions:

Fill nans at running_mean: it doesn't seem right
Don't fill nans in the beginning in other methods: potentially it can lead to errors in some pipelines

Current suggested solution: 2.
How To Reproduce
Script:
from copy import deepcopy

import numpy as np
import pandas as pd

from etna.datasets import TSDataset
from etna.transforms import TimeSeriesImputerTransform

def get_ts() -> TSDataset:
    periods = 100
    df1 = pd.DataFrame({"timestamp": pd.date_range("2020-01-01", periods=periods)})
    df1["segment"] = "segment_1"
    df1["target"] = np.random.uniform(10, 20, size=periods)

    df2 = pd.DataFrame({"timestamp": pd.date_range("2020-01-01", periods=periods)})
    df2["segment"] = "segment_2"
    df2["target"] = np.random.uniform(-15, 5, size=periods)

    df = pd.concat([df1, df2]).reset_index(drop=True)
    df = TSDataset.to_dataset(df)
    df.loc[:4, pd.IndexSlice["segment_1", "target"]] = None
    tsds = TSDataset(df, freq="D")
    return tsds

ts = get_ts()
ts.info()

copy_ts = deepcopy(ts)
copy_ts.fit_transform(transforms=[TimeSeriesImputerTransform(strategy="zero")])
print()
print("Zero strategy")
copy_ts.info()

copy_ts = deepcopy(ts)
copy_ts.fit_transform(transforms=[TimeSeriesImputerTransform(strategy="mean")])
print()
print("Mean strategy")
copy_ts.info()

copy_ts = deepcopy(ts)
copy_ts.fit_transform(transforms=[TimeSeriesImputerTransform(strategy="running_mean")])
print()
print("Running mean strategy")
copy_ts.info()

copy_ts = deepcopy(ts)
copy_ts.fit_transform(transforms=[TimeSeriesImputerTransform(strategy="forward_fill")])
print()
print("Forward fill strategy")
copy_ts.info()

You'll see the lengths of the dataset after different imputer strategy.
Environment
No response
Additional context
No response
Checklist

[X] Bug appears at the latest library version

Currently  TimeSeriesImputerTransform doesn't handle NaN at the beginning of the segments even when the strategy="zero"
this issue becomes critical when we use
pipeline.backtest with many folds, because we can not control the [start; end] of the fold


currently user provided auto increment value is not supported

What problem does this PR solve?
user-provided auto-increment value is a little complicated.
What is changed and how it works?
disable it currently
Check List
Tests

Unit test

/run-all-tests

/run-all-tests tikv=v3.0.14 tidb=v3.0.14 pd=v3.0.14


Not working for erb (rails) file

It seems like that emmet-atom is not working on the filetype HTML (Ruby - ERB). When I try to expand input.e, it does not expand. Then I changed the filetype to HTML, and everything looks good.

Want to back this issue? Place a bounty on it! We accept bounties via Bountysource.

Just pushed v2.3.2 where you can easily add Tab expander for custom syntaxes:  https://github.com/emmetio/emmet-atom#tab-key


authjwt_secret_key must be set when using symmetric algorithm HS256

What does this error mean? authjwt_secret_key must be set when using symmetric algorithm HS256

The intent behind this message is to indicate that the default signing algorithm HS256 requires that a shared secret be set to create tokens or verify signatures.
This document describes how to configure a Settings model that is used to set the config attributes used by fastapi_jwt_auth module, including authjwt_secret_key.
It might look something like this:
class JWTAuthSettings(BaseModel):
    authjwt_algorithm: str = "HS256"
    authjwt_secret_key: str = "my-dev-secret"


Introduce method to disable automatic redirects

The default behaviour of api2go will be
307 on routes with trailing / but this feature can be
disabled
This provides the functionality wanted in #72

:+1:


Add link to the V3 API Token location into the Readme

I added the link to how to get the API 3 Token, but before pip is working properly (this will be fixed in a new release) I wont add that to the README. So I'll close this for now.


Do these extension relations get substituted to has_input?

388 | has_regulation_target         | molecular_function
175 | has_regulation_target         | biological_process
If so we should probably fix globally and check they are configured corre ctly at the display level.
Which term use these relations?

Do these extension relations get substituted to has_input

They get changed to has_input for the GAF file that GO uses.

Which term use these relations?

It's configured for these terms:
BP:
GO:0033562
GO:0043487
GO:0043393
GO:0050684
GO:0051223
GO:0061013
GO:0070613
GO:0090365
GO:1901983
GO:1903533
GO:1903827
MF:
GO:0003700
GO:0003712
GO:0030234
Here are the config files:
https://github.com/pombase/pombase-config/blob/master/canto/annotation_ex_config/GO_BP_A_E_config
https://github.com/pombase/pombase-config/blob/master/canto/annotation_ex_config/GO_MF_A_E_config

I don't see an example of a 'regulation target' on
GO:0043487
GO:0050684
can you point me to those?

Do you mean examples of annotations using those terms?

BP:
GO:0033562 one target
GO:0043487 no targets
GO:0043393 regulation of protein binding (~20 targets, need to capture with causal models)
GO:0050684 no targets
GO:0051223
GO:0061013
GO:0070613
GO:0090365
GO:1901983
GO:1903533
GO:1903827

Do you mean examples of annotations using those terms?
ignore. I get it.

We should change all of these globally to has_input.
Some, we would not use (they should be represented on MF terms), I will remove the unused ones from the config

@kimrutherford  that does not seem like all of the  BP annnotations that use "has_regulation_target"

Sorry, I don't understand.

175 | has_regulation_target | biological_process
but I checked the terms which have this (above) and I get:
GO:0033562 (1 target)
GO:0043487 (no targets)
GO:0043393 regulation of protein binding (~20 targets, need to capture with causal models)
GO:0050684 no targets
GO:0051223 ~12 targets
GO:0061013 regulation of mRNA catabolic process (1 annotation sequestering or stabilizing?)
GO:0070613 regulation of protein processing (no targets, or annotations)
GO:0090365 regulation of mRNA modification (no targets, or annotations)
GO:1901983 regulation of protein acetylation (no targets, or annotations)
GO:1903533 regulation of protein targeting (no targets, or annotations)
GO:1903827 regulation of protein localization (~37 targets)
so this isn't all of the terms that have this relation?
I think there are some on  transcription and vesicle-mediated transport terms too.

so this isn't all of the terms that have this relation?

Sorry, I still don't understand.  Which "this" do you mean?  Do you mean the Canto configuration?  The configuration I linked to only specifies what extensions Canto offers.  There could be other annotations in GAF files using has_regulation_target or older Canto sessions that have has_regulation_target for other terms from when the configuration was less restrictive.
There are 56 terms with has_regulation_target extensions in the GAF file:
https://curation.pombase.org/dumps/latest_build/misc/pombase_style_gaf.tsv

I'm confused, but we can chat about this sometime. It isn't urgent, but it popped up and it was something I wanted to look at.

I'm moving the ticket over to the curation tracker


Updates to CICD install script. Added new plugins, extended Docker support and fixes

Sudoers access to Jenkins user
Update Jenkins plugins
Nexus configurations
General CICD Install polishing

@sabre1041 I'm thinking we could actually tie this into provisioning via osc-provision. basically add a flag that kicks off a jenkins provision instead of an openshift provision. thoughts?

@etsauer since the cicd server is not necessarily tied to an ose installation, I am leaning toward keeping it separate. @obedin thoughts?

@sabre1041 I'm not suggesting we spin up a cicd server with every new environment. I'm saying we could create an option in osc-provision to request a cicd instance OR an openshift env, and make use of the same provisioning scripts for both.

@esauer if we can still continue to leverage the cicd script as a standalone script but provide the ability to hook into it via the osc-provision script, i'm all for it

@sabre1041 going to go ahead an merge. We can talk about integrating with full provisioning later.


can't get all the headers

Hi, thanks for rpi-source. I am trying to compile module for my TP-link TL-WN715N.
I tried this:
pi@raspberrypi ~ $ rpi-source

 *** gcc version check: OK

 *** rpi-update: https://github.com/Hexxeh/rpi-firmware

 *** Firmware revision: ea072e1d615bbfeae5ad04f1c9367295dca84f06

 *** Linux source commit: 4507c9752292506fa6ef136114ad14ffd92b2ca5

 *** Download kernel source
--2015-09-05 13:55:42--  https://github.com/raspberrypi/linux/archive/4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz
Resolving github.com (github.com)... <IP_ADDRESS>
Connecting to github.com (github.com)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/raspberrypi/linux/tar.gz/4507c9752292506fa6ef136114ad14ffd92b2ca5 [following]
--2015-09-05 13:55:49--  https://codeload.github.com/raspberrypi/linux/tar.gz/4507c9752292506fa6ef136114ad14ffd92b2ca5
Resolving codeload.github.com (codeload.github.com)... <IP_ADDRESS>
Connecting to codeload.github.com (codeload.github.com)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: `/home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz'

    [                                                                                <=>                ] 128,458,048 1.31M/s   in 4m 29s

2015-09-05 14:00:25 (466 KB/s) - `/home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz' saved [128458048]

 *** Unpack kernel source
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
 *** set 'EXTRAVERSION = +' in Makefile

 *** Create symlink: /home/pi/linux

 *** Create /lib/modules/<ver>/{build,source} symlinks

 *** .config

 *** Module.symvers
Traceback (most recent call last):
  File "/usr/bin/rpi-source", line 366, in <module>
    download_to(kernel.symvers, os.path.join(linux_dir, "Module.symvers"))
  File "/usr/bin/rpi-source", line 114, in download_to
    urllib.urlretrieve (url, file)
  File "/usr/lib/python2.7/urllib.py", line 93, in urlretrieve
    return _urlopener.retrieve(url, filename, reporthook, data)
  File "/usr/lib/python2.7/urllib.py", line 239, in retrieve
    fp = self.open(url, data)
  File "/usr/lib/python2.7/urllib.py", line 207, in open
    return getattr(self, name)(url)
  File "/usr/lib/python2.7/urllib.py", line 436, in open_https
    h.endheaders(data)
  File "/usr/lib/python2.7/httplib.py", line 958, in endheaders
    self._send_output(message_body)
  File "/usr/lib/python2.7/httplib.py", line 818, in _send_output
    self.send(msg)
  File "/usr/lib/python2.7/httplib.py", line 780, in send
    self.connect()
  File "/usr/lib/python2.7/httplib.py", line 1161, in connect
    self.timeout, self.source_address)
  File "/usr/lib/python2.7/socket.py", line 553, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
IOError: [Errno socket error] [Errno -2] Name or service not known

If I run rpi-source again, it says everything OK.
Then trying to compile your hello world example:
pi@raspberrypi ~/hello $ make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
make: Entering directory '/home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5'

  ERROR: Kernel configuration is invalid.
         include/generated/autoconf.h or include/config/auto.conf are missing.
         Run 'make oldconfig && make prepare' on kernel src to fix it.

  WARNING: Symbol version dump ./Module.symvers
           is missing; modules will have no dependencies and modversions.

  CC [M]  /home/pi/hello/hello.o
In file included from <command-line>:0:0:
././include/linux/kconfig.h:4:32: fatal error: generated/autoconf.h: No such file or directory
 #include <generated/autoconf.h>
                                ^
compilation terminated.
scripts/Makefile.build:264: recipe for target '/home/pi/hello/hello.o' failed
make[1]: *** [/home/pi/hello/hello.o] Error 1
Makefile:1384: recipe for target '_module_/home/pi/hello' failed
make: *** [_module_/home/pi/hello] Error 2
make: Leaving directory '/home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5'

Any suggestion what to do?
Thank you.

First delete the folder: /home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5
Then run: rpi-source -v
This will let rpi-source unpack the source anew and give some more output.

Thanks for reply. I do not need this necessarily compile since I get the dongle working, but we can find out what the problem is for other users or potentially for me in the future, If you want.
pi@raspberrypi ~ $ rpi-source -v
Check for update to rpi-source
download: https://api.github.com/repos/notro/rpi-source/git/refs/heads/master

 *** gcc version check: OK

 *** rpi-update: https://github.com/Hexxeh/rpi-firmware

 *** Firmware revision: ea072e1d615bbfeae5ad04f1c9367295dca84f06
download: https://raw.githubusercontent.com/Hexxeh/rpi-firmware/ea072e1d615bbfeae5ad04f1c9367295dca84f06/git_hash
sudo modprobe configs 2> /dev/null

 *** Linux source commit: 4507c9752292506fa6ef136114ad14ffd92b2ca5

 *** Download kernel source
wget  -O /home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz https://github.com/raspberrypi/linux/archive/4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz
--2015-09-07 08:59:02--  https://github.com/raspberrypi/linux/archive/4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz
Resolving github.com (github.com)... <IP_ADDRESS>
Connecting to github.com (github.com)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/raspberrypi/linux/tar.gz/4507c9752292506fa6ef136114ad14ffd92b2ca5 [following]
--2015-09-07 08:59:08--  https://codeload.github.com/raspberrypi/linux/tar.gz/4507c9752292506fa6ef136114ad14ffd92b2ca5
Resolving codeload.github.com (codeload.github.com)... <IP_ADDRESS>
Connecting to codeload.github.com (codeload.github.com)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 128458048 (123M) [application/x-gzip]
Saving to: `/home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz'

100%[=========================================================================================================================================================================>] 128,458,048 1.89M/s   in 1m 49s

2015-09-07 09:01:03 (1.13 MB/s) - `/home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz' saved [128458048/128458048]

 *** Unpack kernel source
cd /home/pi && tar --checkpoint=100 --checkpoint-action=dot -xzf /home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5.tar.gz
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
 *** set 'EXTRAVERSION = +' in Makefile
sed -i 's/EXTRAVERSION =.*/EXTRAVERSION = +/' /home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5/Makefile

 *** Create symlink: /home/pi/linux
rm -f /home/pi/linux
ln -s /home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5 /home/pi/linux

 *** Create /lib/modules/<ver>/{build,source} symlinks
sudo rm -f /lib/modules/$(uname -r)/build /lib/modules/$(uname -r)/source
sudo ln -sf /home/pi/linux /lib/modules/$(uname -r)/build
sudo ln -sf /home/pi/linux /lib/modules/$(uname -r)/source

 *** .config
writef(/home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5/.config)

 *** Module.symvers
download_to: https://raw.githubusercontent.com/Hexxeh/rpi-firmware/ea072e1d615bbfeae5ad04f1c9367295dca84f06/Module.symvers -> /home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5/Module.symvers
cd /home/pi/linux-4507c9752292506fa6ef136114ad14ffd92b2ca5 && cp -a Module.symvers Module.symvers.backup

 *** make modules_prepare
cd /home/pi/linux && make modules_prepare
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf  --silentoldconfig Kconfig
  CHK     include/config/kernel.release
  UPD     include/config/kernel.release
  WRAP    arch/arm/include/generated/asm/bitsperlong.h
  WRAP    arch/arm/include/generated/asm/cputime.h
  WRAP    arch/arm/include/generated/asm/current.h
  WRAP    arch/arm/include/generated/asm/emergency-restart.h
  WRAP    arch/arm/include/generated/asm/errno.h
  WRAP    arch/arm/include/generated/asm/exec.h
  WRAP    arch/arm/include/generated/asm/ioctl.h
  WRAP    arch/arm/include/generated/asm/ipcbuf.h
  WRAP    arch/arm/include/generated/asm/irq_regs.h
  WRAP    arch/arm/include/generated/asm/kdebug.h
  WRAP    arch/arm/include/generated/asm/local.h
  WRAP    arch/arm/include/generated/asm/local64.h
  WRAP    arch/arm/include/generated/asm/mcs_spinlock.h
  WRAP    arch/arm/include/generated/asm/msgbuf.h
  WRAP    arch/arm/include/generated/asm/param.h
  WRAP    arch/arm/include/generated/asm/parport.h
  WRAP    arch/arm/include/generated/asm/poll.h
  WRAP    arch/arm/include/generated/asm/preempt.h
  WRAP    arch/arm/include/generated/asm/resource.h
  WRAP    arch/arm/include/generated/asm/rwsem.h
  WRAP    arch/arm/include/generated/asm/scatterlist.h
  WRAP    arch/arm/include/generated/asm/seccomp.h
  WRAP    arch/arm/include/generated/asm/sections.h
  WRAP    arch/arm/include/generated/asm/segment.h
  WRAP    arch/arm/include/generated/asm/sembuf.h
  WRAP    arch/arm/include/generated/asm/serial.h
  WRAP    arch/arm/include/generated/asm/shmbuf.h
  WRAP    arch/arm/include/generated/asm/siginfo.h
  WRAP    arch/arm/include/generated/asm/simd.h
  WRAP    arch/arm/include/generated/asm/sizes.h
  WRAP    arch/arm/include/generated/asm/socket.h
  WRAP    arch/arm/include/generated/asm/sockios.h
  WRAP    arch/arm/include/generated/asm/termbits.h
  WRAP    arch/arm/include/generated/asm/termios.h
  WRAP    arch/arm/include/generated/asm/timex.h
  WRAP    arch/arm/include/generated/asm/trace_clock.h
  WRAP    arch/arm/include/generated/asm/unaligned.h
  CHK     include/generated/uapi/linux/version.h
  UPD     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  UPD     include/generated/utsrelease.h
  HOSTCC  scripts/basic/bin2c
  Generating include/generated/mach-types.h
  CC      kernel/bounds.s
  CHK     include/generated/bounds.h
  UPD     include/generated/bounds.h
  CC      arch/arm/kernel/asm-offsets.s
arch/arm/kernel/asm-offsets.c:54:2: error: #error Your compiler is too buggy; it is known to miscompile kernels
 #error Your compiler is too buggy; it is known to miscompile kernels
  ^
arch/arm/kernel/asm-offsets.c:55:2: error: #error and result in filesystem corruption and oopses.
 #error and result in filesystem corruption and oopses.
  ^
Kbuild:61: recipe for target 'arch/arm/kernel/asm-offsets.s' failed
make[1]: *** [arch/arm/kernel/asm-offsets.s] Error 1
Makefile:990: recipe for target 'prepare0' failed
make: *** [prepare0] Error 2
Traceback (most recent call last):
  File "/usr/bin/rpi-source", line 371, in <module>
    sh("cd %s && make modules_prepare %s" % (linux_symlink, (" > /dev/null" if args.quiet else "")))
  File "/usr/bin/rpi-source", line 85, in sh
    subprocess.check_call(cmd, shell=True)
  File "/usr/lib/python2.7/subprocess.py", line 511, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'cd /home/pi/linux && make modules_prepare ' returned non-zero exit status 2

This time rpi-source was able to download Module.symvers.
Now it failed because of the gcc version.
When raspian jessie comes out, I'll see if I can test this and update the wiki with regards to gcc.

OK, there is gcc 4.8.2 running.

 *** Unpack kernel source
.......................................tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/powerpc/boot/dts/include: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/powerpc/boot/dts: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/powerpc/boot: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/powerpc: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/mips/boot/dts/include: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/mips/boot/dts: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/mips/boot: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/mips: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/metag/boot/dts/include: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/metag/boot/dts: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/metag/boot: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/metag: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/cris/boot/dts/include: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/cris/boot/dts: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/cris/boot: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/cris: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm64/boot/dts/socionext: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm64/boot/dts/include: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm64/boot/dts/broadcom: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm64/boot/dts/arm: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm64/boot/dts: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm64/boot: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm64: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm/boot/dts/include: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm/boot/dts: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm/boot: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch/arm: Directory renamed before its status could be extracted
tar: linux-a2f34d45809d8685bca1e91989e35746499ac400/arch: Directory renamed before its status could be extracted
tar: Exiting with failure status due to previous errors
Traceback (most recent call last):
  File "/usr/bin/rpi-source", line 345, in <module>
    sh("cd %s && tar --checkpoint=100 --checkpoint-action=dot -xzf %s" % (args.dest, linux_tar))
  File "/usr/bin/rpi-source", line 85, in sh
    subprocess.check_call(cmd, shell=True)
  File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'cd /root && tar --checkpoint=100 --checkpoint-action=dot -xzf /root/linux-a2f34d45809d8685bca1e91989e35746499ac400.tar.gz' returned non-zero exit status 2

What it's mean?

getting the same issue as above


Consolidate Builds

Currently we have 2 builds

Android
iOS

We need to consolidate these builds into 1 build the properly compiles all the required projects.

Created new solution file to help simplify build 10bb6acb7249efaadc33e640541145276faedb38 #9
Build has been updated


dbeaver/pro#2630 Fix duplicated server output

Output is now only shown for script execution. If I execute USE db only - no output is shown
https://github.com/dbeaver/dbeaver/assets/31996417/f0b90abf-a074-4650-9d3a-765150528eaf

verified


bloop block when start

Describe the bug
when i start bloop that block like this:

Expected behavior
What did you expect to happen?
To Reproduce
How can we reproduce the bug? Helpful information could include:

Details about your system
The data that you had indexed
The query that you ran

Screenshots or output
If applicable, add screenshots to help illustrate the bug.
Additional context
Add any other context about the problem here.

Same issue to me after a sudden crash and disappear in Ubuntu 22.04

This is a duplicate of https://github.com/BloopAI/bloop/issues/1035
Can you post the contents of your log file in that thread to help pin this down?


Control disarmed PWM values per channel through params

nsh> param show PWM_MAIN*
Symbols: x = used, + = saved, * = unsaved
x + PWM_MAIN1_DIS [479,522] : 110
x + PWM_MAIN2_DIS [480,523] : 120
x + PWM_MAIN3_DIS [481,524] : 130
x + PWM_MAIN4_DIS [482,525] : 140
x + PWM_MAIN5_DIS [483,526] : 1500
x + PWM_MAIN6_DIS [484,527] : 1500
x + PWM_MAIN7_DIS [485,528] : 900
x + PWM_MAIN8_DIS [486,529] : 900

nsh> pwm info
device: /dev/pwm_output0
channel 1: 110 us (alternative rate: 400 Hz failsafe: 900, disarmed: 110 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 2: 120 us (alternative rate: 400 Hz failsafe: 900, disarmed: 120 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 3: 130 us (alternative rate: 400 Hz failsafe: 900, disarmed: 130 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 4: 140 us (alternative rate: 400 Hz failsafe: 900, disarmed: 140 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 5: 1540 us (default rate: 50 Hz failsafe: 1500, disarmed: 1500 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 6: 1460 us (default rate: 50 Hz failsafe: 1500, disarmed: 1500 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 7: 900 us (default rate: 50 Hz failsafe: 900, disarmed: 900 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 8: 1000 us (default rate: 50 Hz failsafe: 900, disarmed: 900 us, min: 1000 us, max: 2000 us, trim:  0.00)

nsh> param show PWM_AUX*
Symbols: x = used, + = saved, * = unsaved
x + PWM_AUX1_DIS [457,500] : 210
x + PWM_AUX2_DIS [458,501] : 220
x + PWM_AUX3_DIS [459,502] : 230
x + PWM_AUX4_DIS [460,503] : 240
x + PWM_AUX5_DIS [461,504] : 250
x + PWM_AUX6_DIS [462,505] : 260

nsh> pwm info -d /dev/pwm_output1
device: /dev/pwm_output1
channel 1: 1500 us (default rate: 50 Hz failsafe: 0, disarmed: 210 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 2: 1500 us (default rate: 50 Hz failsafe: 0, disarmed: 220 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 3: 0 us (default rate: 50 Hz failsafe: 0, disarmed: 230 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 4: 0 us (default rate: 50 Hz failsafe: 0, disarmed: 240 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 5: 0 us (default rate: 50 Hz failsafe: 0, disarmed: 250 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 6: 0 us (default rate: 50 Hz failsafe: 0, disarmed: 260 us, min: 1000 us, max: 2000 us, trim:  0.00)

Can we try to keep the PWM naming consistent?
PWM_AUX_REVX
PWM_AUX_TRIMX
PWM_MAIN_REVX
PWM_MAIN_TRIMX
I wonder if we should have disarmed defaults for motors and servos. That would probably eliminate the need for configuring any of this for the vast majority.

@LorenzMeier what's going on with semaphore?
/opt/gcc/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld: src/firmware/nuttx/firmware_nuttx section `.data' will not fit in region `flash'
/opt/gcc/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld: region `flash' overflowed by 1676 bytes

Is that correct? seems to run fine on FMUV2

Which compiler version are you using locally?

Commenting out sdlog2 from px4fmu-v2_default would probably be the easiest.

Commenting out sdlog2 from px4fmu-v2_default would probably be the easiest.

I already did that in https://github.com/PX4/Firmware/pull/7689/commits/c2b32c42b33c975b8b4de89c02e66eb81c17cece, you can just rebase on master.

@LorenzMeier should be ready to merge

@dagar i addressed all your comments. could you review?

Setting disarmed to 0 is valid and disables disarmed PWM -
https://github.com/PX4/Firmware/blob/master/src/systemcmds/pwm/pwm.cpp#L547
I would preserve that and instead use -1 for the special behavior of respecting PWM_DISARMED. Then in the pwm command if -1 is set you can either read PWM_DISARMED (or PWM_AUX_DISARMED) directly (better) or do nothing. https://github.com/PX4/Firmware/blob/master/src/systemcmds/pwm/pwm.cpp#L539
This reduces rc.interface to one liners for each PWM.
pwm disarmed -c 1 -p p:PWM_MAIN_DIS1
pwm disarmed -c 2 -p p:PWM_MAIN_DIS2

Are you sure you need (void)param_find("PWM_MAIN_DIS1"); in sensors parameters.cpp?

@dagar i addressed all your comments. could you review?
nsh> param show PWM_MAIN_DIS*
Symbols: x = used, + = saved, * = unsaved
x   PWM_MAIN_DIS1 [469,530] : -1
x   PWM_MAIN_DIS2 [470,531] : -1
x   PWM_MAIN_DIS3 [471,532] : -1
x   PWM_MAIN_DIS4 [472,533] : -1
x + PWM_MAIN_DIS5 [473,534] : 500
x   PWM_MAIN_DIS6 [474,535] : -1
x   PWM_MAIN_DIS7 [475,536] : -1
x   PWM_MAIN_DIS8 [476,537] : -1

 947 parameters total, 865 used.
nsh> pwm info
device: /dev/pwm_output0
channel 1: 900 us (alternative rate: 400 Hz failsafe: 900, disarmed: 900 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 2: 900 us (alternative rate: 400 Hz failsafe: 900, disarmed: 900 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 3: 900 us (alternative rate: 400 Hz failsafe: 900, disarmed: 900 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 4: 900 us (alternative rate: 400 Hz failsafe: 900, disarmed: 900 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 5: 1500 us (default rate: 50 Hz failsafe: 1500, disarmed: 500 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 6: 1525 us (default rate: 50 Hz failsafe: 1500, disarmed: 0 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 7: 1475 us (default rate: 50 Hz failsafe: 1500, disarmed: 0 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 8: 1550 us (default rate: 50 Hz failsafe: 1500, disarmed: 0 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel group 0: channels 1 2
channel group 1: channels 5 6 7 8
channel group 2: channels 3 4

Are you sure you need (void)param_find("PWM_MAIN_DIS1"); in sensors parameters.cpp?

This is to trigger: https://github.com/PX4/Firmware/blob/master/src/modules/systemlib/param/param.c#L336

You'll get that from running the pwm command which finds the param. Better yet in setups with only a MAIN the user won't even see the AUX versions because rc.interface won't run that section.

The metadata at the top of ROMFS/px4fmu_common/init.d/13013_deltaquad is now wrong.

@dagar i'm done playing this game, this was my last commit to this branch.
feel free to do whatever you like with it

You don't want correct metadata for your own vehicle? https://dev.px4.io/en/airframes/airframe_reference.html
Handling MAIN and AUX consistently is important so that the correct params sync to the ground control station. The way you have it now only sets all MAIN disarmed params active if PWM_OUT is set at all, but always sets PWM_AUX_DIS*  regardless of PWM_AUX_OUT. Why do it differently? It's easy to do properly.
Adding a redundant mixer wastes space. Things are getting tight on px4fmu-v2_default again. You lose nothing by using what's already in place.

The DeltaQuad uses a version of the Dropix FC. That only has 5 AUX channels, so camera control must be run on 1/2 effectively disabling 3/4. 5 would then be used for AUX functionality.
I'd be willing to make one more pass addressing your comments but at this rate every time i address something you come up with something new. So please tell me if you have stated all your concerns.

@LorenzMeier please review

Jenkins test this please.

@LorenzMeier i rebased to force CI tests

@sanderux I squashed your commits into separate commits for the new disarm params and then deltaquad changes. I also split the massive sensor_params.c to make it a bit more managable and fixed a few other param errors I noticed.
Tested and looks good. The semaphoreci failure is real and broken in master, I'll fix it and rebase.

@dagar Bench tested, works
nsh> pwm info
device: /dev/pwm_output0
channel 1: 900 us (alternative rate: 400 Hz failsafe: 900, disarmed: 900 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 2: 900 us (alternative rate: 400 Hz failsafe: 900, disarmed: 900 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 3: 900 us (alternative rate: 400 Hz failsafe: 900, disarmed: 900 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 4: 900 us (alternative rate: 400 Hz failsafe: 900, disarmed: 900 us, min: 1025 us, max: 2000 us, trim:  0.00)
channel 5: 1540 us (default rate: 50 Hz failsafe: 1500, disarmed: 1500 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 6: 1460 us (default rate: 50 Hz failsafe: 1500, disarmed: 1500 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 7: 900 us (default rate: 50 Hz failsafe: 900, disarmed: 900 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel 8: 1000 us (default rate: 50 Hz failsafe: 900, disarmed: 900 us, min: 1000 us, max: 2000 us, trim:  0.00)
channel group 0: channels 1 2
channel group 1: channels 5 6 7 8
channel group 2: channels 3 4
nsh> param show pwm_main_dis*
Symbols: x = used, + = saved, * = unsaved
x   PWM_MAIN_DIS1 [487,530] : -1
x   PWM_MAIN_DIS2 [488,531] : -1
x   PWM_MAIN_DIS3 [489,532] : -1
x   PWM_MAIN_DIS4 [490,533] : -1
x + PWM_MAIN_DIS5 [491,534] : 1500
x + PWM_MAIN_DIS6 [492,535] : 1500
x + PWM_MAIN_DIS7 [493,536] : 900
x + PWM_MAIN_DIS8 [494,537] : 900


https://cronometer.com/#profile

Energized Protection - block ⚡

Let's make an annoyance free, better open internet, altogether!

Issue Submit Form

  Provide the following infos properly, which will help us to resolve your issue quickly.

Issue(s):
Type x in between [ ] and make sure there isn't any space between brackets. Example; for Your Selected Issue(s), type like this - [x]
You can select more than one category of issues if you need to!

[ ] Whitelist
[ ] Blacklist
[ ] App Broken
[x] Website Broken
[ ] Request
[ ] Other Issue

Pack(s):
Write the name of the pack(s) you are using.

Pack(s) Name: Porn

Extension(s):
Also name the extension(s) if you are using any. If you don't then leave it blank.

Extension(s) Name:

Domain(s):
If you are submitting this issue for whitelist/blacklist issue, send us the domain(s) for whitelisting/blacklisting here. Kindly use the Code Tag to prevent tracking.

Domain(s):

Your Config:
Just to ensure there is no issues or conflicts with other app/software/magisk module/extension/source list.
Make sure you are running Energized Protection Service only.

Client: uBlock Origin

Version: 18.12.353

Details:
Write us a lil bit more about your issue or query. You can attach any screen shot or log of the issue or advert, this will help to highlight it.

Your Issue Detail:

Hello! When I have enabled this filter in ublock origin- https://raw.githubusercontent.com/EnergizedProtection/block/master/porn/formats/hosts
I get this error:
https://imgur.com/a/sV8nmYo
When I disable this filter the error disappear. How can I fix this without disabling the filter? thnx
Here's the link:
https://cronometer.com/#profile

Thank you for making Energized Protection great with your kind help!

A project by Ador with ❤

Can you kindly check the uBlock Origin list, and which domain was blocked?

Domain is stripe.com
Maybe u need an account there to be able to replicate it

Alright! I am whitelisting stripe.com only. If it still bothers, kindly check for any other sub domain and report back.

Hope this was fixed!


Provide config file to FPGA tool perf to run tests

Get FPGA tool perf to parse a config file to run a set of tests:

the config file should provide for instance the seeds to run VPR and the tools with
optionally the tests, toolchain, boards to run tool perf with.

Fixed by https://github.com/SymbiFlow/fpga-tool-perf/pull/208. Closing


build: update shiki

In my project, I use a custom theme for syntax highlighting. I can't update shiki version because it is not compatible with the old version

Fix the ci please

Issue appears after bumping version

Fixed


Fix TypeError: unsupported operand type(s) for |: '_GenericAlias'

Fix TypeError: unsupported operand type(s) for |: '_GenericAlias' and up version

Not quite clear why those README changes are in here, but they don't make the merge more likely.
Besides, a more specific fix would be
from typing import .., Optional

def __init__(.., parts: Optional[List[TranslatedPart]], ..):

To give more context, this is relevant as we loose support < py 3.10

Not quite clear why those README changes are in here, but they don't make the merge more likely.
Besides, a more specific fix would be
from typing import .., Optional

class Translated(Base):
     def __init__(.., parts: Optional[List[TranslatedPart]], ..):

To give more context, this is relevant as we loose support < py 3.10.x with
https://github.com/ShivangKakkar/googletrans/blob/58d761afa81e15023984e079e9c29673e6c76c50/googletrans/models.py#L42

Oh, seems it's my mistake. I will close this MR.
Thank you for notice!


macos deployment target

Despite your pyproject.toml listing 11.0 as a deployment target, the arm64 (but not the x86_64) wheels for 3.10 and 3.9 seem to have 13.0 as deployment target, see here: https://pypi.org/project/imgui-bundle/#files. That is causing trouble for some of my users who are on an M1, its a pretty high requirement to reach. Is it possible to correct that?

Hmm, i have another M1 Mac user who (without xcode installed) had no problem a while ago. The WHEEL file in their imgui_bundle-0.8.2.dist-info lists this:
Wheel-Version: 1.0
Generator: skbuild 0.16.6
Root-Is-Purelib: false
Tag: cp310-cp310-macosx_10_16_x86_64
which surprises me. Apparently they run through rosetta:
sysconfig.get_platform()
'macosx-10.9-x86_64'
sysconfig.get_config_vars()['HOST_GNU_TYPE']
'x86_64-apple-darwin13.4.0'
Thats fine, but what surprises me is that they have a macosx_10_16 wheel while whats on pypi for 0.8.2 is a macosx_11_0 wheel.
Whats the lowest deployment target you can get away with by the way? The lower the better is my understand, because the more compatible.

The other user now managed to install after installing xcode (compile failed since they didn't have it, xcrun not found). This is whats in the wheel file of the installed package:
Wheel-Version: 1.0
Generator: skbuild 0.16.6
Root-Is-Purelib: false
Tag: cp310-cp310-macosx_10_16_x86_64
sysconfig.get_platform()
'macosx-10.9-x86_64'
sysconfig.get_config_vars()['HOST_GNU_TYPE']
'x86_64-apple-darwin13.4.0'
So same as the other guy for which it did work

I'm sorry I'm on holiday, and do not have much time for this.
Some details: the mac wheels are built by cibuildwheel.
For x86_64, they are built on github. For ARM, I cannot trust github builders since they are running on Intel Mac and a dependency on Intel IPP is added even if they are trying to build for ARM.
So I have to build them on my own mac. I build them with cibuildwheel also, and I just replace archs = ["arm64"] inside pyproject.toml
So the build should be targeting 11.0, since pyproject mentions:
MACOSX_DEPLOYMENT_TARGET="11.0"
And this is what I see during the build:

However, near the end, I can read an unhelpful message in the build log:
  [WARNING] This wheel needs a higher macOS version than is set in MACOSX_DEPLOYMENT_TARGET variable.  To silence this warning, set MACOSX_DEPLOYMENT_TARGET to at least 13_0 or recreate these files with lower MACOSX_DEPLOYMENT_TARGET:
  _skbuild/macosx-11.0-arm64-3.9/setuptools/bdist.macosx-11.0-arm64/wheel/imgui_bundle/_imgui_bundle.cpython-311-darwin.so[WARNING] This wheel needs a higher macOS version than is set in MACOSX_DEPLOYMENT_TARGET variable.  To silence this warning, set MACOSX_DEPLOYMENT_TARGET to at least 13_0 or recreate these files with lower MACOSX_DEPLOYMENT_TARGET:
  _skbuild/macosx-11.0-arm64-3.9/setuptools/bdist.macosx-11.0-arm64/wheel/imgui_bundle/_imgui_bundle.cpython-311-darwin.socreating _skbuild/macosx-11.0-arm64-3.9/setuptools/bdist.macosx-11.0-arm64/wheel/imgui_bundle-0.8.3.dist-info/WHEEL
  creating '/private/var/folders/w1/w77kvvl9613022ksfxj7v8xh0000gn/T/pip-wheel-2w3mmnbn/.tmp-p0oakfmp/imgui_bundle-0.8.3-cp39-cp39-macosx_13_0_arm64.whl' and adding '_skbuild/macosx-11.0-arm64-3.9/setuptools/bdist.macosx-11.0-arm64/wheel' to it

Attached are the full logs:
cib_err.txt
cib_log.txt

Enjoy your holiday! No rush!
I do see -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 in the command lines, i am not sure what that acts on though.
Maybe its the OpenCV? Have you tried specifying -mmacosx-version-min=11 for the compiler command lines? How have you chosen 11.0 by the way? The lower the better I think, as long as the compiler toolchain still supports what you need. It seems 10.9 is common, for my own project i had to use 10.14 due to need for c++17 features (if i recall correctly, thats the first version where those are properly supported).

Closing this, as I cannot reproduce it, and it was probably solved in the next releases. Please reopen if still present.

So that's the following locations where you could set 10.14 instead of 11.0:
https://github.com/pthom/imgui_bundle/blob/670c72e0cab1beaa4a5761861286dd3f871b4ead/pyproject.toml#L83
https://github.com/pthom/imgui_bundle/blob/670c72e0cab1beaa4a5761861286dd3f871b4ead/.github/workflows/pip.yml#L9
https://github.com/pthom/imgui_bundle/blob/670c72e0cab1beaa4a5761861286dd3f871b4ead/.github/workflows/cpp_lib.yml#L10
https://github.com/pthom/imgui_bundle/blob/670c72e0cab1beaa4a5761861286dd3f871b4ead/.github/workflows/cpp_lib_with_bindings.yml#L10


⚠ Faculté génie website (prod) has degraded performance

In 956da11, Faculté génie website (prod) (https://www.usherbrooke.ca/genie/) experienced degraded performance:

HTTP code: 200
Response time: 858 ms

Resolved: Faculté génie website (prod) performance has improved in b990831.


Setting image_dim_ordering or image_data_format explicitly as per Theano requirements while using Theano Backend gives error

I'm using Keras on a CPU with 8GB RAM in anaconda.
Here's what I was trying to do.
I have simple script that reads an image, runs it through VGG16 and extracts features from the 'fc1' layer. I decided to time this wrt Tensorflow and Theano backend.
Tensorflow Backend on running $ python extractvgg.py
{
  "image_data_format": "channels_last",
  "predict time": 1.0201201179997952,
  "preprocessing time": 0.012538709999716957,
  "load time": 2.1383959619997768,
  "image_dim_ordering": "tf"
}

Theano Backend on running $ KERAS_BACKEND="theano" python extractvgg.py
{
  "image_data_format": "channels_last",
  "predict time": 3.185495815000195,
  "preprocessing time": 0.016582568000103493,
  "load time": 8.029607248000048,
  "image_dim_ordering": "tf"
}

Theano was slower, but this was contrary to what I read on other issues. I figured this could be because the image_dim_ordering was still set to 'tf' so I explicitly set these values.
from keras import backend as K
K.set_image_data_format("channels_first")
K.set_image_dim_ordering("th")

Now on running
$ KERAS_BACKEND="theano" python extractvgg.py
Which gives me the error (The model loads fine, the error occurs upon prediction).
/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/keras/legacy/interfaces.py:86: UserWarning: Update your `Model` call to the Keras 2 API: `Model(inputs=/input_1, outputs=Elemwise{m...)`
  '` call to the Keras 2 API: ' + signature)
Load time:  22.938760344000002
Preprocess time:  0.016467333000036888
Traceback (most recent call last):
  File "/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/theano/compile/function_module.py", line 884, in __call__
    self.fn() if output_subset is None else\
ValueError: Input dimension mis-match. (input[1].shape[1] = 3, input[2].shape[1] = 64)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "extractvgg.py", line 32, in <module>
    features = model.predict(x)
  File "/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/keras/engine/training.py", line 1572, in predict
    batch_size=batch_size, verbose=verbose)
  File "/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/keras/engine/training.py", line 1202, in _predict_loop
    batch_outs = f(ins_batch)
  File "/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/keras/backend/theano_backend.py", line 1071, in __call__
    return self.function(*inputs)
  File "/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/theano/compile/function_module.py", line 898, in __call__
    storage_map=getattr(self.fn, 'storage_map', None))
  File "/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/theano/gof/link.py", line 325, in raise_with_op
    reraise(exc_type, exc_value, exc_trace)
  File "/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/six.py", line 685, in reraise
    raise value.with_traceback(tb)
  File "/home/kaushiksk/miniconda2/envs/tf/lib/python3.5/site-packages/theano/compile/function_module.py", line 884, in __call__
    self.fn() if output_subset is None else\
ValueError: Input dimension mis-match. (input[1].shape[1] = 3, input[2].shape[1] = 64)
Apply node that caused the error: Elemwise{Composite{(i0 * ((i1 + i2) + Abs((i1 + i2))))}}[(0, 1)](TensorConstant{(1, 1, 1, 1) of 0.5}, CorrMM{half, (1, 1), (1, 1)}.0, InplaceDimShuffle{x,0,x,x}.0)
Toposort index: 43
Inputs types: [TensorType(float32, (True, True, True, True)), TensorType(float32, 4D), TensorType(float32, (True, False, True, True))]
Inputs shapes: [(1, 1, 1, 1), (1, 3, 224, 225), (1, 64, 1, 1)]
Inputs strides: [(4, 4, 4, 4), (604800, 201600, 900, 4), (256, 4, 4, 4)]
Inputs values: [array([[[[ 0.5]]]], dtype=float32), 'not shown', 'not shown']
Outputs clients: [[CorrMM{half, (1, 1), (1, 1)}(Elemwise{Composite{(i0 * ((i1 + i2) + Abs((i1 + i2))))}}[(0, 1)].0, Subtensor{::, ::, ::int64, ::int64}.0)]]

HINT: Re-running with most Theano optimization disabled could give you a back-trace of when this node was created. This can be done with by setting the Theano flag 'optimizer=fast_compile'. If that does not work, Theano optimizations can be disabled with 'optimizer=None'.
HINT: Use the Theano flag 'exception_verbosity=high' for a debugprint and storage map footprint of this apply node.

Here is the link to the Github Gist containing both scripts

[x] Check that you are up-to-date with the master branch of Keras. You can update with:
pip install git+git://github.com/fchollet/keras.git --upgrade --no-deps
[x] If running on Theano, check that you are up-to-date with the master branch of Theano. You can update with:
pip install git+git://github.com/Theano/Theano.git --upgrade --no-deps
[x] Provide a link to a GitHub Gist of a Python script that can reproduce your issue (or just copy the script here if it is short).

My current guess is that VGG16() is using imagenet weights which are in tf_dim_ordering format and that's cause the error. I'll try by explicitly using th ordered weights.


CI Workflow Runs are failing

I created a pull request earlier today. The CI Workflow Run for this pull request (here) appears to have failed for a reason unrelated to my change.
This is what I see in the build log:
building jre_emul.jar
building jre_emul-src.jar
building json.jar
make[1]: *** [/Users/runner/work/j2objc/j2objc/jre_emul/build_result/json.jar] Error 2
javac: invalid source release: 11
make[1]: *** Waiting for unfinished jobs....
Usage: javac <options> <source files>
use -help for a list of possible options
make[1]: *** [/Users/runner/work/j2objc/j2objc/jre_emul/build_result/jre_emul.jar] Error 2
javac: invalid flag: --patch-module=java.base=.
Usage: javac <options> <source files>
use -help for a list of possible options
make: *** [jre_emul_jars_dist] Error 2
make: *** Waiting for unfinished jobs....
Error: Process completed with exit code 2.

Pay attention to the javac: invalid source release: 11 line in the build log. The latest CI Workflow Run for the master branch appears to have failed for the same reason. See the build log here.
The problem is most likely caused by the JAVA_HOME environment variable on the build machines. It is set to JDK 8 and not JDK 11. See Issue #2115 for more information about this.
Can somebody who has access to the build machines please change the JAVA_HOME environment variable to JDK 11 🙏

Fixed in PR #2168.


Multus support

Adding Multus Support for macvlan tested.
 Just because there is no CI doesn't constitute experimental. If having a Multus CI is a gap, we need to get it filled.

I disagree about the experimental tag, as it has been tested... Just because there is no CI doesn't constitute experimental. If having a Multus CI is a gap, we need to get it filled.

Tested on a specific environment(s), so the confidence is low. And also because of lack of CI, any subsequent prs could cause a failure which would go unnoticed until someone would raise an issue after running with multus. Having an experimental tag would help the user to understand that if it doesn't run as expected, it wouldnt give people an excuse to assume Ripsaw is broken.
Again not a blocker, so gonna approve it.

I disagree about the experimental tag, as it has been tested... Just because there is no CI doesn't constitute experimental. If having a Multus CI is a gap, we need to get it filled.

Tested on a specific environment(s), so the confidence is low. And also because of lack of CI, any subsequent prs could cause a failure which would go unnoticed until someone would raise an issue after running with multus. Having an experimental tag would help the user to understand that if it doesn't run as expected, it wouldnt give people an excuse to assume Ripsaw is broken.

Ripsaw doesn't interact with Multus persay. If the user provides the Multus annotations, Ripsaw will simply query to see if there are IPs allocated to it (via the annotations).
If Ripsaw created networks and did things with Multus -- ie deployed XYZ-cni, I would agree, however that isn't what this PR does.

Again not a blocker, so gonna approve it.


LIP-A2 needs zoom adjustment while focus stacking

I can see the image getting larger as we focus down (components are pushed out of both left and right field of view). Probably LIP-A1 as well

Also affects LIP-VM1

Fixed, commit pending testing


Support Maya 2022

See #153

Fixed in #153
See release See https://github.com/iimachines/Maya2glTF/releases/tag/v1.4.0.
Testers are welcome, this is a pre-release for now


Remove need to use RoboElectric for creating tests using MockRxAndroidBle

Summary
Remove the need for RoboElectric when writing tests using MockRxAndroidBle
RoboElectric causes the startup of tests to be quite slow. Removing the dependency
on RoboElectric and being able to use only Mockito, for example, would improve the
process of TDD because tests can be run faster.
Library version
1.4.1
Issue found in MockRxAndroidBle implementation
When trying to run tests that use the MockRxAndroidBle class without RoboElectric, they fail because the test-code creates instances of classes from the Android SDK.
Our test-suite reports failures of usages of these classes:
BluetoothGattService
BluetoothGattCharacteristic
BluetoothGattDescriptor
Using PowerMock and using it to create mock-instances of these three classes makes these failures go away and the tests in our own project run fine!
However, using PowerMock requires this annotation at the head of the test-suite-class:
(snippet in Kotlin)
@PrepareForTest(
        value = [(RxBleClientMock.CharacteristicsBuilder::class), (RxBleClientMock.DeviceBuilder::class)],
        fullyQualifiedNames = ["com.polidea.rxandroidble.mockrxandroidble.RxBleConnectionMock\$21"]
)

Needless to say, this annotation is given knowledge of internal and private implementation details of MockRxAndroidBle. There's no guarantee that a future version of `MockRxAndroidBle' won't break this annotation configuration.....
Request for change in MockRxAndroidBle implementation.
Currently (version 1.4.1), the RxBleClientMock.CharacteristicsBuilder, RxBleClientMock.DeviceBuilder and RxBleConnectionMock$21 (anonymous class) create instance of BluetoothGattService, BluetoothGattCharacteristic or BluetoothGattDescriptordirectly.

Either a factory pattern could be used to create these classes allowing users (writers of unit-tests) to inject mocked versions of these instances.
Or the implementation of MockRxAndroidBle could create mocked version instead (and thereby requiring only Mockito).

Unfortunately, I agree :)
The current implementation is not the best. Let's leave this issue open as an entry point to mock redesign.

Actually mock was not written with unit testing in mind. It's purpose is to allow working on Bluetooth stuff without having the actual device, but I agree that it could be better and making it work in unit tests would be great :)

This issue is a part of #213 and #239. The new API aims for fully wrapping the Android OS objects.
I am also thinking if there is really a need for the MockClient in the unit tests. It should be possible to inject your own mock implementations of RxBleDevice and RxBleConnection. As @mzgreen has mentioned above the MockClient was created as a quick drop-in replacement for the library if the peripheral you want to use is not available but still you would like to use mock it in the application.
It could be put up for a discussion if we should remove this part of Readme.md:
## Unit testing
Using RxAndroidBle enables you to unit test your application easily. For examples how to use mocking head to [MockRxAndroidBle](https://github.com/Polidea/RxAndroidBle/tree/master/mockrxandroidble).

Note: Using MockRxAndroidBle in unit tests needs [Robolectric](https://github.com/robolectric/robolectric).

I'd keep it as it is possible to use it in unit tests. Certainly, it would be helpful if the framework would have some mocking/assertion engine. For example
xxx.assertCharacteristicValue(xxxxx) or similar.

I think that this kind of a test would effectively test the MockClient behaviour where the user's application logic should be the subject.

I entered this test-enhancement, the removal of the need of RoboElectric, since we have a bunch end-to-end tests written as unit-tests (no need to start them on a device). In these tests, the MockRxAndroidBle client serves as a a dummy device/ble-server serving up responses for the ble-client code being under test. We use PowerMock to get around the need of RoboElectric and it all works great, but the tests are fragile if we ever change the version of MockRxAndroidBle.
Thank you all for looking into this!

I think this should be closed in favor of #370. Feel free to reopen if you think otherwise.


Soul Effect Error

Triggering is as follows:
https://imgur.com/a/OGqQ6LW

fixed
Download 2023-09-15


Quotation marks breaks manifest on creating bot

Bug Report
Current Behavior
If you use single or double quotation marks in creating probot, you get a manifest error on GitHub App creation. This error is caused by Github not being able to understand the given manifest from probot. For example if you have  This is a bot to comment on pull requests on this user’s repositories as description of the prompt (when creating it from npm) the manifest won’t understands the json. But you if you change it to This is a bot to comment on pull requests on this user repositories. Notice the difference? user’s to user
just use the get started instructions: and put the example text given above as the description. Doesn’t have to be exact ( even this statement will break the manifest 😅)
Expected behavior/code
Expected behavior is for the manifest to not be broken when you add quotation marks on bot’s description.
Environment

Probot version(s): 9.8.1
Node/npm version: 6.13.1
OS: Windows 10 but I also tried it on OS

Additional context/Screenshots
This problem was believed to be fixed in this issue here: https://github.com/probot/probot/issues/727
But it seems to still be there.

This is still an issue, not sure why it's been closed.

Because nobody is working on it ...


Cmd-S (save) keyboard command does not work (on Mac OS)

on Mac OS, the standard keyboard shortcut to save files is Cmd-s.
Too bad AsciidocFX does not handle that - so I am forced to use the mouse to save a modified file.

Hi Dr.
I've updated the accelarators to work with Ctrl in Windows and Cmd in Mac. Can you try Cmd-s with latest v1.2.9 build?

closed with version 1.2.9, 20mins after filing the bug... that's what I call top-level-support...
awesome, thanx.
(btw - I'm currently writing some asciidoctor stuff - please expect some more issue-reports...)


Add text objects for paragraph ('ip' / 'ap')

It's really awesome to have a vim mode in atom. So thanks to all contributing to this plugin!
I'm missing some vim features, that I use quite often. One of them is the paragraph text object:

ap: a paragraph
ip: inner paragraph

For example, vap selects the whole current paragraph. Here's the documentation: http://vimhelp.appspot.com/motion.txt.html#ap
Are there plans to support this? Maybe I find some time, to look at it (though I'm totally new to Atom).

:sparkles: Thanks @t9md! :bow:
Is this issue still open by purpose or should I close it?

Currently ip and ap both work as ip.
So to be precicely, ap is still not implemented yet.
I rarely use ap in Vim.
I don't have motivation to implement ap for now, since I'm very new to Atom itself(about 2 week), and need very basic understanding of Atom itself and vim-mode architecture.

Ok, I see. I didn't noticed, because me neither use ap :wink:
Maybe someone has interest in it and finds this issue (so I don't close it).
Thanks again!

I think this can closed :)

Yup, thanks @MarkusSN!


modules: canopennode: Updated CANopenNode driver to v2.0

This commit updates the existing zephyr driver for canopennode from v1.3 to v2.0 and adds support for all new upstream driver features. The motivation for this was that I needed the ASCII gateway feature, which is not available in v1.3.
I ran checkpatch on my own code, but the stuff in the objdict-directory of the example is autogenerated and won't pass. But I hardly even touched that, so it should be fine.

@henrikbrixandersen ping

This needs the canopennode repo to track v2.0, but I don't know the procedure for doing that.

This needs the canopennode repo to track v2.0, but I don't know the procedure for doing that.

https://docs.zephyrproject.org/latest/develop/modules.html#process-for-submitting-changes-to-existing-modules


Guidance on using POI and Navigation functions

I'm trying to use the react-native-carplay package to add car play functionality to my navigation app. I'm struggling to get the map to work with panning / POI lists / overlays etc as there is little documentation of these features within your Readme. I have tried looking at your example app but the map and the related map features do not appear to be working here either.
Are you able to offer any guidance on what I may be doing wrong or perhaps fix the example app if that is incorrect?
Cheers.

Map is only referring to the map feature of CarPlay.
You have to implement your own map here, I provide a React View where you can render your own “Map”, whatever that is.
If you want something out of the box, please checkout Mapbox, they have an CarPlay feature.
I highly recommend reading the documentation for CarPlay before using this library
https://developer.apple.com/documentation/carplay/

Thanks for your speed response. Within my app I have indeed got a Map to render but am now looking to use the POI template / list template / navigation screens etc - none of which appear to be working right now in my app or within the example app you created in this repo.

Oh sorry I read the issue incorrectly.
You can take a look at the source to see how I bridged the POI and Navigation features.
I do want to note that I didn’t get the POI to work for me, as there was a bug within iOS 14 at the time.
But for navigation, everything should work correctly, if they don’t, something has broken since I was working on this.
latest iOS update broke many things

Regarding the POITemplate specifically, one of the things that stood out from the carplay developer guide was that it is not supported for navigation apps which I found odd.

The point of interest template can be used by EV charging, parking, and quick food ordering
apps.

It doesn't appear that navigation is working, did you ever get an example running where you were able to display a POI overlay over the map base / root template or where you were able to start navigation?

Fixed via https://github.com/birkir/react-native-carplay/pull/33


Doc readme options comments

sorry it took so long

i've been testing those spa routes again. as it turns out :

all redirect routes need to start with #/ as those pass through the server
the login route is an internal aurelia route it starts with /. it is used to direct unlogged users to and also to prevent access to by logged in users

I was wondering why the difference...
How is it that the redirect ones pass through the server? Are some set via location.href and some using the router. Be nice to standardise that.

i doubt there is a good reason. most code is inherited and might have some oddities. so, i agree that using aurelia Redirect everywhere would be better. so, feel free .. :-)

@doktordirk - With respect to this PR do you want me to do anything for the moment?

Are you asking me to do this?
// SPA related options

  // The SPA url to which the user is redirected after a successful login
  loginRedirect: '#/customer',
  // The SPA url to which the user is redirected after a successful logout
  logoutRedirect: '#/',
  // The SPA route used when an unauthenticated user tries to access an SPA page that requires authentication
  loginRoute: '/login',
  // Whether or not an authentication token is provided in the response to a successful signup
  loginOnSignup: true,
  // If loginOnSignup == false: The SPA url to which the user is redirected after a successful signup (else loginRedirect is used)
  signupRedirect: '#/login',

@AdamWillden  yes.
or, as you said, better even change all to Redirect.
though maybe, one step at a time. do as you said above, we merge it, and then we'll look at that Redirect afterwards

I like this. The indentation seems a bit weird though, or is that just me?

i'm not a big fan of it either actually. seems you are outvoted @AdamWillden :)
maybe use something else to highlight headings

Yeah was just to highlight headings as you said. How about:
\\ I'm a heading
\\ ===========

On 14 Mar 2016 10:38, "doktordirk"<EMAIL_ADDRESS>wrote:

i'm not a big fan of it either actually. seems you are outvoted
@AdamWillden https://github.com/AdamWillden :)
maybe use something else to highlight headings
—
Reply to this email directly or view it on GitHub
https://github.com/SpoonX/aurelia-auth/pull/47#issuecomment-196248302.

that could work. and then //------- for second level i guess

@RWOverdijk @doktordirk how's that?
Do you want me to update the baseConfig.js SPA redirect defaults as part of this PR in a new commit?
Secondly do you want that baseConfig to be reordered and contain all these comments like the readme?

@AdamWillden yeah, i'd say lets do that

Sorted. Note commit comment:

I ensured that no options changed during this process except for removing signupRoute which is not used by the application.

Oops of course with the additional exception of the SPA routes. Are we sure they work okay with #/?

Ah yes just checked my application which contains this:
    // The SPA url to which the user is redirected after a successful login
    loginRedirect: '#',
    // The SPA url to which the user is redirected after a successful logout
    logoutRedirect: '#login',
    // The SPA route used when an unauthenticated user tries to access an SPA page that requires authentication
    loginRoute: 'login',
    // Whether or not an authentication token is provided in the response to a successful signup
    loginOnSignup: true,
    // If loginOnSignup == false: The SPA url to which the user is redirected after a successful signup (else loginRedirect is used)
    signupRedirect: '#login',

yep. i tested all combinations :) . /#login works too, but above is the clearest i think

yours also fine i guess.

Rebased commits and changed commit order to make sense. Still not sure if I should classify the last commit as refactor or doc as it's commenting the code and updating the readme.
Please review. I think we're pretty much there now.

well, again, keep it coming smile


Add AWS 'sm' shortcut for secrets manager

Superseeds #420 and contains the contribution from @alexjurkiewicz with the sm shortcut (I had to bring the branch up to date with main as the file containing the service mappings had moved)

Thanks, I forgot to git pull 😳


Issue with kubecape installation

$ brew upgrade
Running `brew update --auto-update`...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> New Formulae
swiftdraw

You have 1 outdated formula installed.
You can upgrade it with brew upgrade
or list it with brew outdated.

==> Upgrading 1 outdated package:
kubescape 2.0.149 -> 2.0.161
Error: kubescape has been disabled because it does not build!

@remyleone We have updated the README a week ago. The formulae name has been renamed to kubescape-cli
You can follow the new procedure at:
https://github.com/kubescape/homebrew-tap


cjshs.txt

長榮中學
Chang Jung Senior High School

@tslv80 庫/域/天/教育/噸/cjshs.txt: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@tslv80 庫/域/天/教育/噸/cjshs.txt: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@tslv80 I have to close the request without merging. Please ensure you are familiar with this repository rules located at the bottom of this page and submit a new request with correct information. Thank you for the understanding!


[About] Update libraries license list and check OSI compatibility

Hentoid Version:

Device/Android Version:

Issue details / Repro steps:

Stack trace / LogCat:
paste stack trace and/or log here

@AVnetWS/admin-team

This issue was moved to avluis/Hentoid#201


Can this project use generic types in Swagger?

Hello,
This is my first time using this project. Previously, I used go-swagger, but now I prefer to use OpenAPI 3.0.
After studying the README, I'm not sure if generic classes are supported. Could you please confirm whether this project can handle generic types in Swagger?
Thank you for your assistance.

Hi @TheRiseOfDavid Generics are not supported at the moment.

@parvez3019  Thank your answer.


Some mod overwrites ModelPart render code such that Changed can't create a mixin.

https://github.com/user-attachments/assets/3509d01f-be96-4248-ba72-4d10b1e20735
crash-2024-09-15_10.12.37-client.txt

org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: Critical injection failure: @WrapWithCondition annotation on orCapture could not find any targets matching 'render(Lnet/minecraft/world/entity/LivingEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V' in net.minecraft.client.renderer.entity.LivingEntityRenderer.

Would it be possible to prioritize the loading of this mod to solve this problem?

Or would reflecting on oculus or modifying the oculus code with mixin solve the problem?

The WrapWithCondition mixin was replaced with Inject mixins to prepare layers for visibility.

637d869e12f4eaead3fc6ff6e3718a960eb1a824


Fixed webflux test app tests, reenabled recycling assertion

What does this PR do?

Checklist

[ ] This is an enhancement of existing features, or a new feature in existing plugins

[ ] I have updated CHANGELOG.asciidoc
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] Added an API method or config option? Document in which version this will be introduced
[ ] I have made corresponding changes to the documentation

[ ] This is a bugfix

[ ] I have updated CHANGELOG.asciidoc
[ ] I have added tests that would fail without this fix

[ ] This is a new plugin

[ ] I have updated CHANGELOG.asciidoc
[ ] My code follows the style guidelines of this project
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I have updated supported-technologies.asciidoc
[ ] Added an API method or config option? Document in which version this will be introduced
[ ] Added an instrumentation plugin? Describe how you made sure that old, non-supported versions are not instrumented by accident.

[ ] This is something else

[ ] I have updated CHANGELOG.asciidoc

:green_heart: Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2023-04-05T12:52:03.328+0000

Duration: 13 min 9 sec

:grey_exclamation: Flaky test report
No test was executed to be analysed.
:robot: GitHub comments
Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.

run benchmark tests : Run the benchmark tests.

run jdk compatibility tests : Run the JDK Compatibility tests.

run integration tests : Run the Agent Integration tests.

run end-to-end tests : Run the APM-ITs.

run windows tests : Build & tests on windows.

run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)


Render tree using TreeNode.toString

I don't think there is a good reason why TreeString.toString() doesn't use TreeNode.toString(). Doing so allows seperation between the object's toString() and a human description like this:
return new TreeNode( trade ) {
            @Override
            public String toString() {
                return description;
            }
};

Thanks, Marc

It is a good idea to use the Adapter pattern to allow different outputs of the TreeNode. I add a new method in TreeNode, toString(TreeNodeStringFormatter), so you can make your own implementation. At the same time, I think TreeString is unnecessary.

The change implemented still calls obj.toString() though. It is now harder to have a different node-description whilst retailing the tree-formatting code. Either I write an adapter around every object (huge memory waste) or cut'n'paste the treestring impl and ignore the existing code.
I genuinely prefer how this was before the new interface was added to do inside the class what was already done well outside the class (cohesion, separation of concerns etc). Please think on this.

I merged your comment, though I still think it is better to create your own TreeNodeStringFormatter (e.g., MyTreeNodeStringFormatter), then use TreeNode.toString(new MyTreeNodeStringFormatter())
class MyTreeNodeStringFormatter implements TreeNodeStringFormatter() {
@Override
public String format(TreeNode treeNode) {
  StringBuilder sb = new StringBuilder();
  Iterator<TreeNode> itr = treeNode.preorderIterator();
  while (itr.hasNext()) {
    TreeNode tn = itr.next();
    // add prefix
    for (TreeNode p : tn.getPathFromRoot()) {
      // if parent has sibling node
      if (p == tn) {
        ;
      } else if (p.hasNextSiblingNode()) {
        sb.append(StringUtils.BAR + " ");
      } else {
        sb.append("  ");
      }
    }
    // if root has sibling node
    if (tn.hasNextSiblingNode()) {
      sb.append(StringUtils.MIDDLE + " ");
    } else {
      sb.append(StringUtils.END + " ");
    }
    // change this line
    sb.append(tn + "\n");

  }
  return sb.toString();
}

}

I merged your comment, though I still think it is more flexible to create your own TreeNodeStringFormatter (e.g., MyTreeNodeStringFormatter), then use TreeNode.toString(new MyTreeNodeStringFormatter())
public class MyTreeNodeStringFormatter implements TreeNodeStringFormatter() {
    @Override
    public String format(TreeNode treeNode) {
      StringBuilder sb = new StringBuilder();
      Iterator<TreeNode> itr = treeNode.preorderIterator();
      while (itr.hasNext()) {
        TreeNode tn = itr.next();
        // add prefix
        for (TreeNode p : tn.getPathFromRoot()) {
          // if parent has sibling node
          if (p == tn) {
            ;
          } else if (p.hasNextSiblingNode()) {
            sb.append(StringUtils.BAR + " ");
          } else {
            sb.append("  ");
          }
        }
        // if root has sibling node
        if (tn.hasNextSiblingNode()) {
          sb.append(StringUtils.MIDDLE + " ");
        } else {
          sb.append(StringUtils.END + " ");
        }
        // change this line
        sb.append(tn + "\n");
      }
      return sb.toString();
    }
  }


Error on statement SQL

Error on sql statement :

TypeError : Argument 2 passed to Core\Database\MysqlDatabase::prepare() must be of the type string, array given

Yeh thanks !
That's fixed :+1:


requirements.txt for qol

would improve installation

please add this lol

Hi,
New release next week, it will include requirements.txt. However, know that you still need gradle+ghidrathon installation outside the requirements of the tool.
If you want to help building an installation script that can install Ghidrathon automatically, you welcome to contribue :)


proposal: bring back the ws module

Is your feature request related to a problem? Please describe.
Originally brought up by @lowlighter on the discord.

is there something like a websocket standard framework ?
that would provide helpers/utilities like rooms, grouped/directed messaging, autoreconnect, etc. ?
a bit like socket.io was offering (seems overkill to use it as native ws are pretty capable on their own now

One of the biggest libraries in the npm ecosystem is socket.io, for good reason. socket.io bridged the gap between websockets and long polling when websockets weren't mature enough in browsers. Nowadays, websockets are available everywhere so a lot of the complicated abstractions that socket.io relied on are no longer useful.
Today, websockets are almost perfect except for a few things:

Client side: No autoreconnect, the logic is a little complicated but all applications share this same need
Server side: No rooms, no grouped messaging, no safety around when can send to clients or not

This use case is so prevalent that Bun decided to implement it natively (not that I necessarily approve):
Bun.serve({
  fetch(req, server) {}, // upgrade logic
  websocket: {
    message(ws, message) {}, // a message is received
    open(ws) {}, // a socket is opened
    close(ws, code, message) {}, // a socket is closed
    drain(ws) {}, // the socket is ready to receive more data
  },
});

Describe the solution you'd like
I'd love to see something similar to Bun or socket.io built into the std that address the above usecases, both for the client and the server.
Describe alternatives you've considered
We could just tell people to reimplement the logic themselves every time, but I've definitely gotten tired of that.

Specific API proposals are also welcome.

No rooms, no grouped messaging, no safety around when can send to clients or not

Room or group concept sounds a bit application specific to me. Is there any (de facto) standard way to manage these in websocket context?

Room or group concept sounds a bit application specific to me. Is there any (de facto) standard way to manage these in websocket context?

It's basically another name for the publisher/subscriber pattern, which imho is agnostic enough to be part of the possible API.
Inspiration could be taken from socket.io directly, from message brokers (redis, nats, etc.) or even using EventTarget interface (though I'd advise against as it'd bring many limitations)


[v2] select from array with object doesn't work as filter

import Baobab from 'baobab';

const tree = new Baobab({
    foo: [
        { bar: true, id: 1 },
        { bar: true, id: 2 }
    ]
});

console.log(
    tree.get([ 'foo', { bar: true } ])
);
// { bar: true, id: 1 }
// but not [ { bar: true, id: 1 }, { bar: true, id: 2 } ]

and this is totally unexpected behavior for me :scream_cat: how to get all array items with bar: true?
console.log(
    tree.get([ 'foo', item => item.bar === true ])
);
/// the same { bar: true, id: 1 }

Hello @deepsweet. As explained in the documentation, the function selector will return the first matched object as with lodash's find function, for instance. This is because you cannot have a cursor pointing at several nodes of the tree.
To do what you want to do, just retrieve your array and use the filter method on it:
tree.get('foo').filter(item => item.bar);

ok, I got it, thanks.