Don't strip HTML classes/style from custom markup

Gitea version (or commit ref): 1.5.0
Git version: 2.7.4
Operating system: Ubuntu 16.04.5 LTS \n \l
Database (use [x]):

[ ] PostgreSQL
[x] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[x] Not relevant

Log gist:

Description
When using a custom renderer (see below), much of the HTML classes are stripped from the rendered code, removing useful style (like coloring). Can we tell the renderer not to do that?
Here's my config:
[markup.html]
ENABLED         = true
FILE_EXTENSIONS = .html
RENDER_COMMAND  = /usr/local/bin/inline-html
IS_INPUT_FILE   = false

And the contents of /usr/local/bin/inline-html:
#!/bin/bash
[ $# -ge 1 -a -f "$1" ] && input="$1" || input="-"
cat $input | pup 'body' | tail -n+2 | head -n-2

I've verified that the contents of the output of /usr/local/bin/inline-html retains the HTML classes and styles of the original document. However, by the time the markup is inlined into my gitea page, it's all stripped away.
...
Screenshots
This is what a portion of my "README.html" looks like with the current version of Gitea:

And this is what it looks like when I view the file directly:

This also affects  restructuredText rendering with rst2html, which uses pygments to generate syntax highlighted html.
Configuration:
app.ini:
[markup.restructuredText]
ENABLED         = true
FILE_EXTENSIONS = .rst
RENDER_COMMAND = "python3 /usr/local/bin/rst2html.py --leave-comments --syntax-highlight=short"
IS_INPUT_FILE   = false

I placed pygments.css (generated by running pygmentize -f html -S colorful) in <gitea>/custom/public directory and added a header.tmpl in <gitea>/custom/templates/custom with the following content:
<link rel="stylesheet" href="/pygments.css">
Output from running the command directly:

"attributes" : [ {
} ]

Same content in the Gitea page:

"attributes" : [ {
} <span]

The class attributes had been removed by this rule for security, see https://github.com/go-gitea/gitea/blob/master/modules/markup/sanitizer.go#L33 . Please send a PR to change that.

I have produced a local build that solves my issue by adding this line to the sanitizer:
sanitizer.policy.AllowAttrs("class").OnElements("pre", "span")

This will allow class attributes on any pre and span elements. I could not find a way to restrict this with bluemonday based on parent-child relation (ie. only allow class on span within pre class="code"), which would be a less disruptive change.
To solve @coreagile's original issue, class attribute has to be allowed globally + allow style tags. However untrusted CSS imports could enable code execution/vulnerable font downloads etc. and probably not a good idea. A workaround would be to allow class attributes (it doesn't look like class attributes can have any executable code) and then specify a trusted css via header.tmpl template.
Any thoughts?

#9075 may fix this problem.

I think if we just auto-prefix classes within user generated content with user-content- (excepting the few we know are safe) then this problem can be pushed on to end users who can then decide what to do with with this.
The issue with just allowing class straight through is that some js uses class as selectors.

Now there are new render modes: no-sanitizer and iframe.


Improved README.md by correcting many grammatical errors and added a logo.

Improved the readability and sentence structure of the README file, and also added the LoginRadius logo in the about section.

Hey, this is not required as we do not use logo currently in any of our repos.


Replace whitelist strings references in English and Spanish

Task/Issue URL: https://app.asana.com/0/414730916066338/1180899597720226
Tech Design URL:
CC:
Description:
This PR replaces references to "whitelist" in English and Spanish. Until we get new translations for all the languages we have moved the English strings to the untranslated file for clarity.
Steps to test this PR:

Launch the app.
Go to a website.
Open the menu and see there are no references to whitelist.
Open settings and see there are no references to whitelist.
Open "Unprotected sites" and see there are no references to whitelist.
Repeat in Spanish with no references to "lista blanca".

Internal references:
Software Engineering Expectations
Technical Design Template

@cmonfortep, @malmstein I'm adding you both here to review this PR because of the Spanish translations in case you can think of something better.

All changes done! Thanks a lot @malmstein and @cmonfortep for the feedback! I'll merge once the product review is approved.


Correct htmlflag include to import

This replicates the relevant change from #2325.
CC @drmacro @robander

Closing this - Eliot made a new pull request to cover the same change.

See #2329.


Missing exported types for emitted package (Follow up to #1317)

Description
Following in from #1317 there are some additional types required (there may be more, as these only show up as you use something that needs them...)
The errors in question:
src/components/Checkbox/index.tsx(8,7): error TS2742: The inferred type of 'Root' cannot be named without a reference to '../../../node_modules/@acmeorg/styled-system/types/system-types'. This is likely not portable. A type annotation is necessary.
src/components/Checkbox/index.tsx(8,7): error TS2742: The inferred type of 'Root' cannot be named without a reference to '../../../node_modules/@acmeorg/styled-system/types/csstype'. This is likely not portable. A type annotation is necessary.
src/components/Checkbox/index.tsx(8,7): error TS2742: The inferred type of 'Root' cannot be named without a reference to '../../../node_modules/@acmeorg/styled-system/types/conditions'. This is likely not portable. A type annotation is necessary.

Link to Reproduction
https://stackblitz.com/edit/vitejs-vite-nyg6dl?file=src%2Fcomponents%2FCheckbox%2Findex.tsx
Steps to reproduce

Open the stackblitz link
View the output of the build on startup
Rerun npm run build as required

JS Framework
React (TS)
Panda CSS Version
0.14.0
Browser
N/A - Occurs at build time
Operating System

[X] macOS
[ ] Windows
[ ] Linux

Additional Information
I have determined that for the conditions type, the missing type is Nested
- export type { ConditionalValue } from './conditions';
+ export type { ConditionalValue, Nested } from './conditions';

Though the others are a little more tricky...
For system-types re-exporting all of the exported types individually doesn't help, eg export type { GlobalStyleObject, JsxStyleProps, SystemStyleObject, Etc... } from './system-types' but export type * from './system-types' resolves the issue, so I can't determine specifically what is required here.
For csstype, unfortunately I don't even know where to begin looking. That file is huge with a lot of exports. But export type * from './csstype' also works here.

Just to add to this, I am currently just overriding the styled-system/types/index.d.ts with this before running a build:
/* eslint-disable */
import './global.d.ts'
export type * from './conditions';
export type * from './pattern';
export type * from './recipe';
export type * from './system-types';
export type * from './csstype';
export type * from './jsx';
export type * from './style-props';


Curated dataset of RSE repos

We have true and false positives for repositories created for the publication and those used in it / referenced as related work.

[x] check whether we can observe clustering around the publication and repo creation dates - I'd expect used software to be older. This would also give us an interesting insight into how long it takes for software to be widespread. There might be a difference between whether software was cited as "used tools" or "related work".
[x] bring labelled dataset into a publishable form
[ ] consider looking into sections and footnotes

Dataset prepared at data/eprints_w_intent.csv. Current schema:
 #   Column                   Non-Null Count  Dtype
---  ------                   --------------  -----
 0   repo_id                  130 non-null    object
 1   mention_created          130 non-null    bool
 2   title                    130 non-null    object
 3   author_for_reference     130 non-null    object
 4   pdf_url                  130 non-null    object
 5   page_no                  130 non-null    int64
 6   domain_url               130 non-null    object
 7   pattern_cleaned_url      130 non-null    object
 8   github_user_cleaned_url  130 non-null    object
 9   date                     130 non-null    datetime64[ns]
 10  year                     130 non-null    int64
 11  eprints_repo             130 non-null    object

Regarding first checkbox: yes!

Grey filled areas are one, two, three years respectively.


Invalid fix of Wise Defense

Hi, again great job people! 👍
However, I think someone did some mistake at last update.
I'm talking about:
Fix Wise Defense adding charisma instead of wisdom
There is another feat called: 'Charismatic Defense' which basically now do the same. I believe Wise Defense should stay as it was, but maybe I am mistaken about that one.
Have a great day! 👍  😄

Charismatic Defense adds Charisma +1 and defense based on CHA;
Wise Defense adds Wisdom +1 and defense based on WIS;

I see, I understood it wrongly then, like there was fix changing Wise Defense as defense based on WIS. Thank you for clarification.


Building UPDATE JOIN statement by SQL Builder

MySQL has a statement like below.
UPDATE table1 a
INNER JOIN table2 b USING (ID)
SET a.value = b.value

I think SQL Builder Class cannot build statement like this.
new SQL()
.UPDATE("table1 a")
.INNER_JOIN("table2 b USING (ID)")
.SET("a.value = b.value");

// this drops INNER JOIN statement

So, I wish the feature of building UPDATE JOIN statement.

@temp-impl @h3adache
Is not need support on DELETE ?
MySQL is support JOIN phrase on DELETE.
See https://dev.mysql.com/doc/refman/5.7/en/delete.html.

Sure we can add that @kazuki43zoo
I didn't go through the sql grammar to see what else was missing at the time.

@h3adache Thanks for reply!!
I think adding is not required. However If there is request for adding, we will be better that consider support  it on DELETE phrase.


ci: merge staging to master

This is an automatic PR generated by the pipeline CI/CD. This will be automatically fast-forward merged if successful.

Pipeline Attempt on 591463283 for 45dfea89241146adf35534d9c78c4f380157c23d
https://gitlab.com/MatrixAI/open-source/typescript-demo-lib/-/pipelines/591463283

Pipeline Succeeded on 591463283 for 45dfea89241146adf35534d9c78c4f380157c23d
https://gitlab.com/MatrixAI/open-source/typescript-demo-lib/-/pipelines/591463283


[VISUAL] Recording twice the same speech leads to visual problems

Recording twice the same speech leads to visual problems with the circle as it behaves as if the '30s speech' was selected. Consequently, it marks red after 30s, without marking green and yellow in between.
To replicate:
1-Select any speech > 30s. E.g.> 5-7min.
2-Record the speech. Press stop to save it.
3-Record a new speech with the same time options. The timer will automatically be defaulted to 30s.
Checking the speeches after recording shows expected values. Therefore, the problem is only related to visuals.

@FANMixco Verify the solution before closing the issue.

4 - More details are needed from the extreme zoom in your phone, please record a video or gif and upload it. Also, details like the WebWiew and Chrome version (it can be taken from the Play Store).


Make "exec" implementations to command enum

There is a lot of boilerplate in the lib.rs file. We could clean a lot of it up by using a strategy found here: https://github.com/TimonPost/cargo-unused-features/blob/main/src/main.rs
We just implement an "execute" method and run that instead of re-writing the functions and having to call them with the same signature. An example of a bad thing:
https://github.com/MrHedmad/kerblam/blob/cffddd3909717d9b58e4d37453e28ef7b9b2f51c/src/lib.rs#L262-L278

This is not so easy to do, since some workload (like finding the correct pipe) is done by extra functions not in the specific subcommand. So we either restructure everything to save a few lines (please no), or we just accept the slightly ugly repetitions and live our lives in peace.
I'll choose the latter.


Error with node generate token

Hi.
I'm noob with Magic Mirror and the eith MMM-GooglePhotos module. Now I'm trying to install this new version of MMM-GooglePhotos but when I execute the instruction at the terminal
node generate_token.js
Show the errors below:
`internal/modules/cjs/loader.js:638
throw err;
^
Error: Cannot find module 'open'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object. (/home/pi/MagicMirror/modules/MMM-GooglePhotos/GPhotos.js:5:13)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)`
The version of node (node -v) is 10.19.0
Thanks for your help in advance

Have you done npm install in modules directory?

Yes, I followed the instructions of installation
git clone https://github.com/eouia/MMM-GooglePhotos.git cd MMM-GooglePhotos npm install

Is there no error on installation? (npm install)
Anyway go to MMM-GooglePhotos then do npm install --save open.

Did it

<EMAIL_ADDRESS>added 2 packages from 1 contributor and audited 245 packages in 6.269s

2 packages are looking for funding
run npm fund for details
found 0 vulnerabilities
After I executed npm fund AND

<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ └── url: https://github.com/sponsors/isaacs
└─┬<EMAIL_ADDRESS>└── url: https://github.com/sponsors/sindresorhus

How about your permission? Did you use sudo on installation of this module or MagicMirror?
test ls -al in MMM-GooglePhotos directory.

Thanks eouia, solved it with sudo as you said.

No. sudo is not the solution, rather being the reason of current and further messing.
Probably you've installed MM or some modules(incl. MMM-GooglePhotos), And it will make whole system mess up.
Installation and usage of MM and modules don't need sudo at all unless instruction specially say it.
My suggestion.

Delete whole MM, and reinstall again and DO NOT USE sudo on installation. (except sudo apt-get somethings)

HEllo.
Not, only I installed MMM-GooglePhotos with sudo as you suggested.
You mean that I deleted Magic  Mirror with modules included and again install it, right?

If you are sure only MMM-GooglePhotos by sudo, reinstalling that module is enough. But I'm worrying you have mistaken other modules or MM itself.

OK, I will reinstall all the MM modules again

Well, I uninstalled the modules and Magic Mirror, after I installed them again, but I have the same issue afresh.
Not errors showed in the installation with npm install executed at MMM-GooglePhotos folder.
I haven't used sudo instruction.
Only I've installed other module and it works fine (MMM-Lunartic).

Sorry, Definitely it is permission issue. some modules might be abled to be installed and used even with whichever permission, but that is lucky case. Basically, without proper permission, your MM and my module will have possible further issue. And I can't help about that kind of things.

Check each directory (including MM itself) which permission have been set. All your MM directory should be under pi user.

Finally I could create the generate_token.js but I don't know how. Now I'm trying show the module in my Magic Mirror with position "fullscreen_below", only it shows me the "Loading..." message.
Very grateful with your help.

set debug:true, and see the log what happened. How many photos are in your album? first scanning will take dozens seconds.

I got it! It was error mine. I changed the name of the folder to show, I wrote it with uppercase.
Thank you again.
Great job eouia!


✨ [CW-19091] feat(ton): support ton signing transaction (publish @coolwallet/ton: 1.0.0-beta.2)

Task linked: CW-19091 Pro - SDK implementation


explosions shouldnt make a sound in space

Description
arguably they should look different too but at the very least the station shouldnt hear salv shelling a wreck and wondering if its nukies or sci, since its in space the reverb shouldnt travel
shouldnt have a sound at all but le realism doesnt mean le good, reverb sound is actually bad

You should not be able to hear at all in space if this is getting added

I think it's fine to keep the sound, as sources of legitimate explosions are needed to fuzz antagonist explosions (least we know everything a bomb goes off its nukies breaking into the armoury, etc. )

Realistically a bomb attached to the station would be heard, sound is just vibrations travelling through the air and it's surroundings, you wouldn't hear it from a wreck however.


message_generationConfig.cmake no found

OS: Ubuntu 16.04
ROS kinetic
catkin_make_isolated --install --use-ninja
-DCMAKE_PREFIX_PATH="${PWD}/install_isolated;${PWD}/protobuf/install;${CMAKE_PREFIX_PATH}"
Base path: /home/castiel/cartographer_ws
Source space: /home/castiel/cartographer_ws/src
Build space: /home/castiel/cartographer_ws/build_isolated
Devel space: /home/castiel/cartographer_ws/devel_isolated
Install space: /home/castiel/cartographer_ws/install_isolated
Additional CMake Arguments: -DCMAKE_PREFIX_PATH=/home/castiel/cartographer_ws/install_isolated;/home/castiel/cartographer_ws/protobuf/install;/home/castiel/catkin_ws/devel:/opt/ros/kinetic:/home/castiel/cartographer_ws/protobuf/install
~~  traversing 14 packages in topological order:
~~  - cartographer_ros_msgs
~~  - ceres-solver (plain cmake)
~~  - cartographer (plain cmake)
~~  - cartographer_ros
~~  - cartographer_rviz
~~  - jackal_control
~~  - jackal_description
~~  - jackal_desktop
~~  - jackal_gazebo
~~  - jackal_msgs
~~  - jackal_navigation
~~  - jackal_simulator
~~  - jackal_tutorials
~~  - jackal_viz

The packages or cmake arguments have changed, forcing cmake invocation
==> Processing catkin package: 'cartographer_ros_msgs'
==> Creating build directory: 'build_isolated/cartographer_ros_msgs'
==> cmake /home/castiel/cartographer_ws/src/cartographer_ros/cartographer_ros_msgs -DCATKIN_DEVEL_PREFIX=/home/castiel/cartographer_ws/devel_isolated/cartographer_ros_msgs -DCMAKE_INSTALL_PREFIX=/home/castiel/cartographer_ws/install_isolated -DCMAKE_PREFIX_PATH=/home/castiel/cartographer_ws/install_isolated;/home/castiel/cartographer_ws/protobuf/install;/home/castiel/catkin_ws/devel:/opt/ros/kinetic:/home/castiel/cartographer_ws/protobuf/install -G Ninja in '/home/castiel/cartographer_ws/build_isolated/cartographer_ros_msgs'
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Check for working C compiler using: Ninja
-- Check for working C compiler using: Ninja -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler using: Ninja
-- Check for working CXX compiler using: Ninja -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Using CATKIN_DEVEL_PREFIX: /home/castiel/cartographer_ws/devel_isolated/cartographer_ros_msgs
-- Using CMAKE_PREFIX_PATH: /home/castiel/cartographer_ws/install_isolated;/home/castiel/cartographer_ws/protobuf/install;/home/castiel/catkin_ws/devel:/opt/ros/kinetic:/home/castiel/cartographer_ws/protobuf/install
-- Found PythonInterp: /usr/bin/python (found version "2.7.12")
-- Using PYTHON_EXECUTABLE: /usr/bin/python
-- Using Debian Python package layout
-- Using empy: /usr/bin/empy
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/castiel/cartographer_ws/build_isolated/cartographer_ros_msgs/test_results
-- Found gmock sources under '/usr/src/gmock': gmock will be built
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found gtest sources under '/usr/src/gmock': gtests will be built
-- Using Python nosetests: /usr/bin/nosetests-2.7
-- catkin 0.7.11
CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package):
Could not find a package configuration file provided by
"message_generation" with any of the following names:
message_generationConfig.cmake
message_generation-config.cmake

Add the installation prefix of "message_generation" to CMAKE_PREFIX_PATH or
set "message_generation_DIR" to a directory containing one of the above
files.  If "message_generation" provides a separate development package or
SDK, be sure it has been installed.
Call Stack (most recent call first):
CMakeLists.txt:23 (find_package)
-- Could not find the required component 'message_generation'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by
"message_generation" with any of the following names:
message_generationConfig.cmake
message_generation-config.cmake

Add the installation prefix of "message_generation" to CMAKE_PREFIX_PATH or
set "message_generation_DIR" to a directory containing one of the above
files.  If "message_generation" provides a separate development package or
SDK, be sure it has been installed.
Call Stack (most recent call first):
CMakeLists.txt:23 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/castiel/cartographer_ws/build_isolated/cartographer_ros_msgs/CMakeFiles/CMakeOutput.log".
See also "/home/castiel/cartographer_ws/build_isolated/cartographer_ros_msgs/CMakeFiles/CMakeError.log".
<== Failed to process package 'cartographer_ros_msgs':
Command '['cmake', '/home/castiel/cartographer_ws/src/cartographer_ros/cartographer_ros_msgs', '-DCATKIN_DEVEL_PREFIX=/home/castiel/cartographer_ws/devel_isolated/cartographer_ros_msgs', '-DCMAKE_INSTALL_PREFIX=/home/castiel/cartographer_ws/install_isolated', '-DCMAKE_PREFIX_PATH=/home/castiel/cartographer_ws/install_isolated;/home/castiel/cartographer_ws/protobuf/install;/home/castiel/catkin_ws/devel:/opt/ros/kinetic:/home/castiel/cartographer_ws/protobuf/install', '-G', 'Ninja']' returned non-zero exit status 1
Reproduce this error by running:
==> cd /home/castiel/cartographer_ws/build_isolated/cartographer_ros_msgs && cmake /home/castiel/cartographer_ws/src/cartographer_ros/cartographer_ros_msgs -DCATKIN_DEVEL_PREFIX=/home/castiel/cartographer_ws/devel_isolated/cartographer_ros_msgs -DCMAKE_INSTALL_PREFIX=/home/castiel/cartographer_ws/install_isolated '-DCMAKE_PREFIX_PATH=/home/castiel/cartographer_ws/install_isolated;/home/castiel/cartographer_ws/protobuf/install;/home/castiel/catkin_ws/devel:/opt/ros/kinetic:/home/castiel/cartographer_ws/protobuf/install' -G Ninja
I tried rospack find message_generation I can find it.
But still this error happened.
Can anyone tell me how to deal with it? THanks!

The the message_generation package is missing in your system. You can install it via apt-get:
sudo apt-get install ros-kinetic-message-generation

I have the same problem, but the package aforementioned is installed.
The command sudo dpkg -l | grep generation outputs:
ros-kinetic-message-generation                     0.4.0-0xenial-20180824-081816-0800

and rospack find message_generation  outputs:
rospack find message_generation
/opt/ros/kinetic/share/message_generation

I have the same problem, but the package aforementioned is installed.
The command sudo dpkg -l | grep generation outputs:
ros-kinetic-message-generation                     0.4.0-0xenial-20180824-081816-0800

and rospack find message_generation outputs:
rospack find message_generation
/opt/ros/kinetic/share/message_generation

Hi, rubenanapu, have you solved this problem,
I really installed the package, but still have hte error

Hi @Sunshinehualong, I may have solved that problem but I'm afraid to say I don't remember how.
I even looked at my logs git log | grep carto but couldn't find any references to the solution.
I used grep carto . -rn on my repo as well to see any notes related to this but I couldn't find.
Next time I'll try to pay more attention to updating the issues.

I have the some question and finally I solve it by checking other package code
Sorry I didn't figure out the concrete reason but I can share with you my CmakeLists.txt code and package.xml code. You can modify them and then use in your own package.
BTW,if any one figure out the reason please write an answer here. Thanks in advance.
CmakeLists.txt:
cmake_minimum_required(VERSION 2.8.3)
project(testmsg3)
find_package(catkin REQUIRED COMPONENTS
message_generation
roscpp
rospy
std_msgs
)
Generate messages in the 'msg' folder
add_message_files(
FILES
msg1.msg
)
Generate added messages and services with any dependencies listed here
generate_messages(
DEPENDENCIES
std_msgs
)
###################################
catkin specific configuration
###################################
catkin_package(
INCLUDE_DIRS include
LIBRARIES ur_msgs
CATKIN_DEPENDS message_runtime std_msgs
DEPENDS system_lib
)
DEPENDS: system dependencies of this project that dependent projects also need
catkin_package(
INCLUDE_DIRS include
LIBRARIES testmsg3
CATKIN_DEPENDS message_generation roscpp rospy std_msgs
DEPENDS system_lib
)
###########
Build
###########
Specify additional locations of header files
Your package locations should be listed before other locations
include_directories(
include
${catkin_INCLUDE_DIRS}
)
package.xml:

testmsg3
0.0.0
The testmsg3 package
linux80

TODO
<exec_depend>message_runtime</exec_depend>
<buildtool_depend>catkin</buildtool_depend>
<build_depend>message_generation</build_depend>
<build_depend>roscpp</build_depend>
<build_depend>rospy</build_depend>
<build_depend>std_msgs</build_depend>
<build_export_depend>roscpp</build_export_depend>
<build_export_depend>rospy</build_export_depend>
<build_export_depend>std_msgs</build_export_depend>
<exec_depend>roscpp</exec_depend>
<exec_depend>rospy</exec_depend>
<exec_depend>std_msgs</exec_depend>

I had the same problem, I solved it by sourcing ROS. So i added source /opt/ros/melodic/setup.bash to the top of my bash script.


Add setting to not install default redis instance

We configure multiple Redis instances on our Magento development servers and it's confusing to have one in the default that gets set up by including the redis class and the others in the redis::instances list. Preferably, we would define all instances in redis::instances and the redis class would have an option to not install a default instance.

Archiving this repo and closing all open issues and pull requests. Please fork and maintain any changes in another repo. Sorry for the inconvenience.


Some thoughts on the implementation of AVL Tree's height

Issue Detail
When I tested the AVL Tree class like the code below:
let tree = AVLTree<Int, String>()
tree.insert(key: 5, payload: "five")
tree.insert(key: 4, payload: "four")
tree.insert(key: 3, payload: "three")
tree.insert(key: 2, payload: "two")
tree.insert(key: 1, payload: "one")
print(tree)

So I got a tree like this(so the height of this tree is 2):
                           4
                          /  \
                        2     5
                       /  \
                     1    3

But the console output says the height of the root node(key is 4) is 3, according to our implementation:
5
(4) <- 5
(3) <- 4 -> (5)
((2) <- 3) <- 4 -> (5)
((1) <- 2 -> (3)) <- 4 -> (5)
key: 4, payload: Optional("four"), height: 3, left = [key: 2, payload: Optional("two"), height: 2, parent: 4, left = [key: 1, payload: Optional("one"), height: 1, parent: 2], right = [key: 3, payload: Optional("three"), height: 1, parent: 2]], right = [key: 5, payload: Optional("five"), height: 1, parent: 4]

It seems like the height calculation for an AVL Tree in this implementation does  not follow the definition of the height of a basic binary tree.
In our tutorial for basic tree, it says as following:

Height of the tree. This is the number of links between the root node and the lowest leaf. In our example the height of the tree is 3 because it takes three jumps to go from the root to the bottom.

And it doesn't correspond to the diagram in the tutorial either.
This is the diagram used in our tutorial for AVL Tree:

My Solution
According to the definition of the height of an basic tree, as shown above, the height of a leaf is 0.
So I made a small change to the method updateHeightUpwards implementation.
fileprivate func updateHeightUpwards(node: Node?) {
        if let node = node {
            let lHeight = node.leftChild?.height ?? 0
            let rHeight = node.rightChild?.height ?? 0

            // node.height = max(lHeight, rHeight) + 1  // original implementation
            node.height = max(lHeight, rHeight) + (node.hasAnyChild ? 1 : 0)  // If we don't have any child, why do we need to add 1 ???

            updateHeightUpwards(node: node.parent)
        }
    }

Good catch.
The current implementation didn't account for the case where a node had nil children. Please make a PR with this change 👍

@kelvinlauKL
Really thanks for providing such a great sources for us to learn algorithm !!
But in the process of learning, I did meet some difficulties, as a beginner. So I just have a small suggestion, wish this could help more learners like me.
To be honest, it's really hard for me to understand the implementation of AVL Tree's rotation. Partly because it seems like our implementation here is different from the AVL Tree implementation in some other books, like Data Structures and Algorithm Analysis in C (by Mark Allen Weiss).
Of course, this is OK.
**But if we could have more detail explanation (documentation or comments, diagram) for AVL Tree, especially the most important part, like rotation, we could make our code and our core theory easier to understood.  **

Thanks for the suggestion! We have plans to deliver some polished content in the new year.


VsCode fallback

What is this

There is a pull request for command client which will deprecate the vscode... comands and use run_rpc_command...
This pull request aims to bring backwards compatibility with knausj_talon by issuing the  run_rpc_command_ and falling back to vscode_ if there is a KeyErrorr indicating the run_rpc_command_ command could not be found..
See also https://github.com/knausj85/knausj_talon/pull/956

Checklist

[x] I have added tests NA

Lmk if you need help resolving the merge conflicts

I'd missed a lot it looks good.


Parse Error: R2 Key ID Secret

I am receiving a parse error for the key_id when creating an R2 secret.
ddb:
  target: dev
  outputs:
    dev:
      type: duckdb
      path: 'dev.duckdb'
      threads: 24
      extensions:
        - httpfs
        - parquet
      secrets:
        - type: r2
          key_id: "{{ env_var('CLOUDFLARE_CLIENT_ACCESS_KEY') }}"
          secret: "{{ env_var('CLOUDFLARE_CLIENT_SECRET') }}"
          account_id: "{{ env_var('CLOUDFLARE_ACCOUNT_ID') }}"

It seems to only get the first character from the key_id and throw a parse error for the remaining.

See Pull Request 421

thanks @waaronmorris for catching this!

@guenp, when is the next release planned?

@waaronmorris we ran into some issues -- release will be done today instead


ShapeFountain example

Screencast from 2024-04-12 15-50-38.webm

TODO:

instancing
use specific Rigidbody types, rather then just trimesh
shoot shapes from camera into fountain onClick, will be cooler dynamic interactions
randomize Y axis and spam more shapes, make cooler fountain patterns


Slice by Slice Adaptive Histogram Equalization

I am trying to using SimpleITK to normalize nii data using the Slice by Slice Adaptive Histogram Equalization example in the documentation. However, I encountered such a problem at this line.
image[paste_idx] = func(extractor.Execute(image), *args, **kwargs)

And got the error
File "\anaconda3\lib\site-packages\SimpleITK\SimpleITK.py", line 4692, in __setitem__
    raise IndexError("invalid index")
IndexError: invalid index

It seems that SimpleITK cant assign values or slices to indexed arrays. Could you update new codes and fix this bug?

What version of SimpleITK are you using?  That example requires the latest version, 2.0.0.

Thanks, It solves my problem after update SimpleITK version to 2.0.0


windows_share: Add option for FolderEnumerationMode

Describe the Enhancement:
Enable Access Based Enumeration Mode on a windows share.
Describe the Need:
Businesses using shares accessible by multiple clients/teams who should not have knowledge of other clients.
Current Alternative
Implement via PowerShell:
Get-SmbShare <sharename> | Set-SmbShare -FolderEnumerationMode AccessBased -Force

Can We Help You Implement This?:
Not easily (I'm fairly new to Ruby + Chef)

@dalee-bis We've moved the windows_share functionality into Chef Infra Client itself and stopped development of this cookbook. I'm going to close this issue out at this point. If you're still interested in this feature please open an issue at https://github.com/chef/chef so we can work on it there.


Unable to set name in annotation other then field name for objects in array during serialization

Hi, nice lib. I am trying to use it in my frontend project to map rest backend response with ulgly names of fields. But i'v faced with strange bug. I am plaing with simple exaple
List item class:
``
import {JsonObject, JsonProperty} from "json2typescript";
@JsonObject
export class City {
@JsonProperty("name")
name: string = undefined;
}
``
List class:
``
import {JsonObject, JsonProperty} from "json2typescript";
import {City} from "./City";
@JsonObject
export class Country {
@JsonProperty("cities", [City])
cities: City[] = undefined;
}
``
In above config, if i change annotation for field  "name" to @JsonProperty("OTHER") and try to serialize, then it fails with error
``
let parentItem: City = new City();
parentItem.name = "assets/design/img/icon-2.svg";
//parentItem.title = "Управление моделью";
//parentItem.key = 1;
//parentItem.key = 0;
let res = this._jsonConvert.serialize(parentItem);
console.log(JSON.stringify(res));

let list: Country = new Country();
list.cities = [];
list.cities.push(parentItem);

res = this._jsonConvert.serialize(list);
console.log(JSON.stringify(res));

``
Console output
``
json-convert.ts:194 Receiving JavaScript instance:
json-convert.ts:195 City {name: "assets/design/img/icon-2.svg"}
json-convert.ts:206 Returning JSON object:
json-convert.ts:207 Object {OTHER: "assets/design/img/icon-2.svg"}
json-convert.ts:208 ----------
app.meta.data.service.ts:220 {"OTHER":"assets/design/img/icon-2.svg"}
json-convert.ts:193 ----------
json-convert.ts:194 Receiving JavaScript instance:
json-convert.ts:195 Country {cities: Array(1)}
json-convert.ts:312 ----------
json-convert.ts:313 Receiving JSON object:
json-convert.ts:314 City {name: "assets/design/img/icon-2.svg"}
ERROR Error: Fatal error in JsonConvert. Failed to map the JavaScript instance of class "Country" to JSON because of a type error.
Class property:
	cities

Class property value:
	[object Object]

Expected type:
	[City]

Runtime type:
	object

JSON property:
	cities

Fatal error in JsonConvert. Failed to map the JSON object to the class "City" because the defined JSON property "chfdhf" does not exist:
Class property:
	name

JSON property:
	chfdhf

at JsonConvert.webpackJsonp.../../../../json2typescript/src/json2typescript/json-convert.ts.JsonConvert.serializeObject_loopProperty (json-convert.ts:437)
at JsonConvert.webpackJsonp.../../../../json2typescript/src/json2typescript/json-convert.ts.JsonConvert.serializeObject (json-convert.ts:202)
at JsonConvert.webpackJsonp.../../../../json2typescript/src/json2typescript/json-convert.ts.JsonConvert.serialize (json-convert.ts:159)
at AppMetaDataService.webpackJsonp.../../../../../src/app/services/app/app.meta.data.service.ts.AppMetaDataService.test (app.meta.data.service.ts:224)
at HelpBarComponent.webpackJsonp.../../../../../src/app/components/navigator/header/help/help.bar.component.ts.HelpBarComponent.onClick (help.bar.component.ts:33)
at Object.eval [as handleEvent] (HelpBarComponent.html:2)
at handleEvent (core.es5.js:11997)
at callWithDebugContext (core.es5.js:13458)
at Object.debugHandleEvent [as handleEvent] (core.es5.js:13046)
at dispatchEvent (core.es5.js:8601)

``
If name in annotation matches name of field - everythig ok. Then, i actually need in private fields like
``
@JsonObject
export class City {
@JsonProperty("name")
private _name: string = undefined;
get name(): string {
return this._name;
}
set name(value: string) {
this._name = value;
}
}
``
In this case, if name in annotation matches with getter name it work. If not, fails with same error.
jsonConvert config:
    this._jsonConvert.operationMode = OperationMode.LOGGING;     this._jsonConvert.ignorePrimitiveChecks = false;     this._jsonConvert.valueCheckingMode = ValueCheckingMode.DISALLOW_NULL;
I tried everything:( Have no time to investiogate further. Force to switch to another lib.
lib versions:
  "dependencies": {     "@angular/animations": "^4.3.3",     "@angular/common": "^4.3.3",     "@angular/compiler": "^4.3.3",     "@angular/core": "^4.3.3",     "@angular/forms": "^4.3.3",     "@angular/http": "^4.3.3",     "@angular/platform-browser": "^4.3.3",     "@angular/platform-browser-dynamic": "^4.3.3",     "@angular/router": "^4.3.3",     "angular2-jwt": "^0.1.28",     "angular2-uuid": "^1.1.1",     "bootstrap": "^3.3.7",     "core-js": "^2.4.1",     "json2typescript": "^1.0.2",     "jwt-decode": "^2.2.0",     "normalize.css": "^7.0.0",     "rxjs": "^5.1.0",     "zone.js": "^0.8.4"   }

To make further investigation, please add a complete code example that works and fails.
In your example above, several things do not work out. For example, @jsonproperty is not the correct decorator (it is @JsonProperty), and I can nowhere see a property defined as "chfdhf".
I think when you provide a good failing example, we will be able to resolve your issues.

@JsonProperty

(Sorry, cannot seem to type camel case in mobile 😂)

Closing for inactivity.


Serve badge assets ourselves

We should serve the badges ourselves so we can fix caching: https://github.com/github/markup/issues/224#issuecomment-48532178

I think it'd better to keep with a standard service - shields.io - and just use the cache control headers already discussed here to fix caching.


Using stream causing a code: "ECONNRESET"

When using stream:true we get

Hi @krohm, are you using the latest version? I remember there was an issue in an earlier version which has been fixed meanwhile. I also checked your example against the latest version and did not encounter any issues. You might also want to check your config and for example make sure that the deployment used in your script actually exists. Unfortunately, due to the streaming protocol, we cannot provide more details in the streaming result, but if you look at the console output of PowerProxy, you will see a more detailed exception.

hi @timoklimmer , thanks for the hint. Indeed, it was a not configured Log Analytics Section in the config.


ABCs for Devices that implement the "Bluesky Interface"

@untzag and @ksunden have suggested adding some ABCs for the expected Bluesky Interfaces. ABCs would be a useful tool for scaffolding implementations of the Readble, Movable, and Flyable interfaces. I would want to avoid accidentally giving the impression that implementation must subclass from them. A key selling point for Bluesky is that other libraries can implement its interfaces and be interoperable without a software dependency. In our documentation, we should emphasize that they are optional, to be used or referred to if they help, or ignored otherwise.
We should also be sure that these ABCs implement https://docs.python.org/3/library/abc.html#abc.ABCMeta.subclasshook so that they will behave correctly if isinstance is used.

Suggest ABC for Status as well

https://www.python.org/dev/peps/pep-0544/
Protocols are a more recent variant on the theme of ABCs. (Particularly aimed towards typecheckers like mypy, so that you can statically check duck typed classes)
As I read the PEP, the runtime __subclasshook__ would still need to be implemented in order to do runtime isinstance checks, as Protocols are explicitly targetted to static checks

(Note that the decorator version only does attribute existence checks, not signature checks, which is pretty much exactly what the present is movable test does, just without the benefits of being able to do static analysis)

When writing these it would be useful to refer to https://github.com/bluesky/ophyd/blob/7937cd46e92e9ec2f7eec321dd5b1b1b71115e20/ophyd/device.py#L396-L402

One idea that occurs to me:
Making these ABC's their own small package that can be depended on (more easily than if it were integrated into bluesky. i.e. something with minimal to no transitive dependencies [probably backports of typing extensions])
While the idea is that they are duck typed still, a separate package would allow things like ophyd or yaqc-bluesky (among many others) to bring in the ABC as a superclass that will error if it is not implemented. (while maintaining their ability to not do so and still pass both static type checks and runtime checks if they simply implement without an explicit superclass relationship)
I would expect such an ABC package to be of use to happi/typhos as well, though am personally less familiar with the internals there.

device-model

This would be helpful when we're looking at extending ophyd's fly-scanning capabilities later this year. Let me or @callumforrester know if we can help with this.

I like the idea of prototyping this in Bluesky and then factoring it out. We should put some thought into what else might go there. It sounds like both Ophyd and Bluesky may grow a dependency on it, so it should have low (zero?) dependencies itself.

I believe the only dependency will be typing-extensions and even then that can be dropped once 3.7 support is dropped (as Protocol is defined in the standard lib of 3.8+)


Update data from stock csv file

The problem is that updating the data take too much time. Some ideas that I came up with:

saving the data asynchronously so the webdriver won't have to wait until the data will be saved in the database
saving the data into database after all data will be fetched and stored in the array (btw better change normal array into np.ndarray)
divide data from the csv file and run simultaneously 2 webdrivers at the same time ( the problem might be when it comes to saving data into database, two processes would like to access the database)

Asynchronous running webdriver is quite tricky and allegedly supported library (arsenic) for this is not working.
Also saving data for all the symbols after fetching them might cause many problems like, too much memory used. Pros after saving data for every symbol separately is that data are saved into database every time and even when the program would stop, the previous data will be saved in the database already.


Log4j 1.2 bridge supports global threshold

The log4j.threshold configuration key was not translated into its Log4j 2.x equivalent global filter.

@ppkarwasz
Thank you for your PR.
If you are looking for more fixes to investigate, please have a look at the disabled tests in org.apache.log4j.xml.DOMTestCase.


Support Xcode patch versions in tool

A Xcode 11.3.1 requirement may be coming down the line.  The tool should be able to parse and check the patch version.

Fixed by https://github.com/flutter/flutter/pull/61484.


feat: Update deps to otel go 1.24.0

build is failing stating codecov token not found

codecov v4 GHA now requires a CODECOV token


moved any-of and greater-than matchers

#139

@rultor merge

@rultor merge

@graur OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@graur Done! FYI, the full log is here (took me 3min)


1399: Statistics created cards

Short description
As a service user you can check card statistic for region (Region Manager) or for project (Project Manager)
Proposed changes

add query to get card statistics
add functions to get cards statistics per region or project
add bar chart for visualization
add filter bar to customize time period

Side effects

none

Resolved issues

Fixes: #1399
Unfortunately i couldn't get a unit test working with the bar chart and didn't find any good hints
Testing
Region Admin

Login as Region Admin for bavaria
Go to statistics
Only card statistics for this region should be shown
Adjust some filters and check error handling of input fields
Do the same for Project Admin (you may create some cards for several region)

I was thinking about filtering "0" regions but in reality with real data there won't be (m)any

Login as Region Admin for bavaria
Go to statistics

I'm getting a "Etwas ist schief gelaufen" error here, but it works for Project Admin.
[JettyServerThreadPool-36] ERROR app.ehrenamtskarte.backend.common.webservice.GraphQLExceptionHandler - Exception while fetching data (/result) : Insufficient access rights
[JettyServerThreadPool-36] INFO io.javalin.Javalin - JAVALIN REQUEST DEBUG LOG:
Request: POST [/]
    Matching endpoint-handlers: java.util.stream.ReferencePipeline$3@111f660c
    Headers: {Origin=http://localhost:3000, Accept=*/*, Connection=keep-alive, User-Agent=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36, Referer=http://localhost:3000/, Sec-Fetch-Site=same-site, Sec-Fetch-Dest=empty, Host=localhost:8000, Accept-Encoding=gzip, deflate, br, zstd, Sec-Fetch-Mode=cors, Authorization=Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhZG1pbklkIjoxLCJleHAiOjE3MTQ0Nzk2OTJ9.9qIpje8_Im9R5Mjq43GZjfIIiM-YOBM2kc7Ta0z7cdF0xCzoHtm2YC0vq-9hExXtnHGJSbUFOj6xvVUtMtjFfA, sec-ch-ua="Chromium";v="122", "Not(A:Brand";v="24", "Google Chrome";v="122", sec-ch-ua-mobile=?0, sec-ch-ua-platform="Linux", Accept-Language=en-US,en;q=0.9,ru;q=0.8, Content-Length=473, Content-Type=application/json}
    Cookies: {}
    Body: {"operationName":"getCardStatisticsInProjectByRegion","variables":{"projectId":"bayern.ehrenamtskarte.app","dateEnd":"2024-04-30","dateStart":"2023-04-30"},"query":"query getCardStatisticsInProjectByRegion($projectId: String!, $dateStart: String!, $dateEnd: String!) {\n  result: getCardStatisticsInProjectByRegion(\n    project: $projectId\n    dateStart: $dateStart\n    dateEnd: $dateEnd\n  ) {\n    region\n    cardsCreated\n    cardsActivated\n    __typename\n  }\n}"}
    QueryString: null
    QueryParams: {}
    FormParams: {}
Response: [200 OK], execution took 22.01 ms
    Headers: {Access-Control-Allow-Origin=*, Content-Encoding=gzip, Vary=Origin, Date=Tue, 30 Apr 2024 11:21:34 GMT, Content-Type=application/json}
    Body is gzipped (18229 bytes, not logged)

Good stuff! Some first comments on the project admin view:

I think a total number of created cards summed over all regions at  the top would be great.
I believe that the activatedCards number is hard to interpret out of the box. It is the number of cards that have been created in the specified time period and that have been activated at any point in time. I first I thought this number should represent the number of cards that have been activated in this time period. => see 3
The legend of the bar diagram says "cardsCreated" and "cardsActivated". They should have a better label like "Erstellte Karten" and maybe sth like "Davon aktiviert" (same for the tooltip when hovering over a bar in the diagram)
The y-axis has a "Region" description that is displayed on top of the region names (instead of next to them). We can probably just remove this axis description.
Not sure if it's easily possible, but maybe it would be better if the legend was at the top of the diagram. (As there are so many regions, that I do not see the legend until I scroll down)

okay i think maybe sum that up in the frontend, but you can even export it later and sum it up in csv
Yes for three i may have to create a custom bar and legend component to "map" the column wording with a explaining label. I first wanted to avoid this because we are lacking of dev hours from proposal but if you think its needed.
I could also imagine to create a html container with the total number and add an info icon with a tooltip explanation? What do you think?
is okay. its really annoying that the length of the region is varying a lot at this causes then issues with the axis description
I could do that but this also looked weird tbh. See my text to 3. If this could be an option

@michael-markl is that what you have expected?

@f1sh1918 The screenshot looks great!


Create package.json

Just like with country-list, package.json will allow to install this package from npm (e.g. npm install git+https://github.com/umpirsky/locale-list.git)

Thanks!


Tooling should handle duplicate environment variables caused my casing

As mentioned here by @vengi83644 in issue #1319, tooling seems to suffer same issue as Environment regarding duplicate environment variables cause by casing. I'll try to submit a PR for this shortly addressing in a similar way done in PR #1320
Error: System.ArgumentException: Item has already been added. Key in dictionary: 'home' Key being added: 'HOME'
at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)
at System.Diagnostics.ProcessStartInfo.get_EnvironmentVariables()
at Cake.Core.Polyfill.ProcessHelper.SetEnvironmentVariable(ProcessStartInfo info, String key, String value)
at Cake.Core.IO.ProcessRunner.Start(FilePath filePath, ProcessSettings settings)
at Cake.Core.Tooling.Tool1.RunProcess(TSettings settings, ProcessArgumentBuilder arguments, ProcessSettings processSettings) at Cake.Core.Tooling.Tool1.Run(TSettings settings, ProcessArgumentBuilder arguments, ProcessSettings processSettings, Action1 postAction) at Cake.Core.Tooling.Tool1.Run(TSettings settings, ProcessArgumentBuilder arguments)
at Cake.Common.Tools.NuGet.Restore.NuGetRestorer.Restore(FilePath targetFilePath, NuGetRestoreSettings settings)
at Cake.Common.Tools.NuGet.NuGetAliases.NuGetRestore(ICakeContext context, FilePath targetFilePath, NuGetRestoreSettings settings)
at Cake.Common.Tools.NuGet.NuGetAliases.NuGetRestore(ICakeContext context, FilePath targetFilePath)
at Submission#0.<.ctor>b__2()
at Cake.Core.CakeTaskBuilderExtensions.<>c__DisplayClass5_0.b__0(ICakeContext context)

at Cake.Core.ActionTask.Execute(ICakeContext context)
at Cake.Core.DefaultExecutionStrategy.Execute(CakeTask task, ICakeContext context)
at Cake.Core.CakeEngine.ExecuteTask(ICakeContext context, IExecutionStrategy strategy, Stopwatch stopWatch, CakeTask task, CakeReport report)
at Cake.Core.CakeEngine.RunTarget(ICakeContext context, IExecutionStrategy strategy, String target)
at Cake.Scripting.BuildScriptHost.RunTarget(String target)
at Submission#0..ctor(Session session, Object& submissionResult)
at Submission#0.(Session session)
at Roslyn.Scripting.CommonScriptEngine.ExecuteT
at Roslyn.Scripting.Session.Execute(String code)
at Cake.Scripting.Roslyn.Stable.DefaultRoslynScriptSession.Execute(Script script)
at Cake.Core.Scripting.ScriptRunner.Run(IScriptHost host, FilePath scriptPath, IDictionary`2 arguments)
at Cake.Commands.BuildCommand.Execute(CakeOptions options)
at Cake.CakeApplication.Run(CakeOptions options)
at Cake.Program.Main()

I'm going a head and closing this as won't fix, it's a "limitation" in the framework.


I need to vent about this plugin

we've got to agree that new people are moving to .Net Maui with basic knowing of c#.
The implementation of this plugin doesn't make any sense. why can't we call it with a single code like all James Montegmano plugin? e.g using plugin.maui "crossreview.inappreview" yours is a lot of implementation.
I copied all the codes and now I couldn't "Navigate.pushaync(new Mainpage)) because of the code implementation.
"public MainPage(IAppRating appRating)" the (IAppRating appRating) stop the page from being navigated to.

I can find logic online to show and stop showing reviews but I can't understand your codes because you're C# master
it's supposed to be welcoming for new users not frustrating.

Learn to read the docs and the sample app, it's all there and it's straightforward, don't waste a GitHub issue for a rant.
If you like James plugins, please feel free to use them, they are pretty good.


Add a build script to tell rustc to add the path to libvulkan in the rpath of binaries

Thanks for this crate! It's awesome!
This PR just adds a little tweak to make it easier to link binaries to libvulkan. This build.rs is useful on platforms where LD_LIBRARY_PATH (or equivalent) is not set system-wide, so that the rpath of executables made using vulkano contains libvulkan. The cfg! matches the conditions in vulkano/vulkano/src/instance/loader.rs.

[ ] Added an entry to CHANGELOG_VULKANO.md or CHANGELOG_VK_SYS.md if knowledge of this change could be valuable to users
[ ] Updated documentation to reflect any user-facing changes - in this repository
[ ] Updated documentation to reflect any user-facing changes - PR to the guide that fixes existing documentation invalidated by this PR.
[x] Ran cargo fmt on the changes

@P-E-Meunier This is a long standing PR. My apologize I wasn't able to review it previously.
The particular reason I delayed the review for so long is because it really hard to me to estimate of this feature would be or not to be a breaking change for other Mac users, as I myself is not a Mac user.
What can you say about the back compatibility?
@Rua If you have any expertise in this topic, may I ask you to review it, please?

I don't have any Macs to test this either I'm afraid. I'm a Linux user.

There is no answer from @P-E-Meunier for a while, and I don't have enough knowledge of Mac ecosystem to verify this PR for correctness. I decided to close this PR for now without merging as the improvement is probably minor and is not too critical, but will be happy to proceed with review if the author re-opens this PR with further explanation of the raised issues.


User should not have to define vn.run_sql()

Instead of having the user separately define a vn.run_sql() function, could it be integrated within vn.ask() or perhaps a vn.select_db()

+1


merges working beanstalk installation of fastapi to master branch

I think it would be better to put dependencies in a requirements.txt file instead of the README. Also, maybe the instructions note in a smaller heading under Usage.
Other than that, it looks great for basic endpoints.

notes removed for clarity
froze new current requirements.txt


Add support for stable branch of HTTP client library

LGTM just a small nits, can you also update the README.md file to point to the stable library.


fix(SWA): hide testimonials if empty

This PR resolves APPL-892
Description
Launch blocking issue for release
Hides testimonials section in SWA surface if empty, previously we were displaying the loading state in this case.

Before
After

PR Checklist

[x] I have tested my changes on iOS and Android.
[x] I hid my changes behind a feature flag, or they don't need one.
[x] I have included screenshots or videos, or I have not changed the UI.
[x] I have added tests, or my changes don't require any.
[x] I added an app state migration, or my changes do not require one.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

hide testimonials if empty - gkartalis

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

This PR contains the following changes:

Cross-platform user-facing changes (hide testimonials if empty - gkartalis)

  Generated by :no_entry_sign: dangerJS against 4a658a6779f515dde16338026d642f5013a45ed2


[cloud_firestore] 0.7.3

error while running flutter run.
terminal will throw this error
 fatal error: 'cloud_firestore/CloudFirestorePlugin.h' file not found
    #import <cloud_firestore/CloudFirestorePlugin.h>

any idea how to solve this?

@ThatRealGuy
The issue at https://github.com/flutter/flutter/issues/18143 has been closed and moved here. Future collaboration on this issue will be done here.

Closing due to inactivity - please upgrade Cloud Firestore.


report ntips from migrate_tips

To aid in debugging https://github.com/gratipay/gratipay.com/issues/3609.

I ran with this at https://github.com/gratipay/gratipay.com/issues/3656#issuecomment-126440082 and it seems to have worked. Gonna go ahead and self-merge ...


No points when using this script

Hmm there is no points for play, when using this script.

@lenisko Sorry, I don't understand what you really mean. Could you explain the situation more specifically?

Okay, sorry for that, let me correct myself.
So lets assume I'm not using this script I am starting agar.io, some time playing, someone eated me, window with score is show, points are added to logged account.
And now using this script caused agar to not showing window with score, also points for play are not added to account.

I have tried playing with the script, but I did have a popup window counting points after my cells got eaten. I wonder if you have installed other scripts or plugins. That would be helpful to address the problem if you could provide those plugins.

Thats weird... I am using:
Firefox Beta 43.0b6
Greasemonkey 3.6
And your last commited script on GitHub.
uBlock disabled, all other userscripts disabled too on agar.io, and yet no popup window nor points.

lenisko is right. Sometimes it does not work. The player receives no points.
Also some cells(including your own cell) stays forever on the screen where they were eaten before. It is a big problem too.

@lenisko I see, I tested on Chrome. I will test on other browers

@lenisko Does the problem happens also on Chrome?

I don't have Chrome, but.. it's working on Vivaldi with Tampermonkey.
So I am assuming, that is Firefox related problem.

Tested it again on OS X 10.11.1, everything works pretty well on Firefox 41.2, Chrome 46.0.2490.86 and Safari 9.0.1. Looks like that Firefox on Windows in the only victim.
PS. In fact, the points are already being counted in the background. But the window does not show up unless you hit the ESC button.

Ohh... I didn't know about ESC. Hmm... maybe for workaround there is a way to simulate pressing button, after getting eaten?


token expired or invalid: 403

VS Code Version:
Version: 1.88.0 (system setup)
Commit: 5c3e652f63e798a5ac2f31ffd0d863669328dc4c
Date: 2024-04-03T13:26:18.741Z
Electron: 28.2.8
ElectronBuildId: 27744544
Chromium: 120.0.6099.291
Node.js: 18.18.2
V8: 12.0.267.19-electron.0

OS Version: Windows_NT x64 10.0.22631

Logs:

2024-04-12 10:24:41.828 [info] [FetcherService] Using Helix fetcher
2024-04-12 10:24:41.828 [info] [gitExtensionService] Initializing Git extension service.
2024-04-12 10:24:41.828 [info] [gitExtensionService] Successfully activated the vscode.git extension.
2024-04-12 10:24:41.828 [info] [gitExtensionService] Enablement state of the vscode.git extension: true.
2024-04-12 10:24:41.828 [info] [gitExtensionService] Successfully registered Git commit message provider.
2024-04-12 10:24:43.323 [info] [auth] Logged in as dionisvl
2024-04-12 10:24:44.449 [info] [chat] copilot token chat_enabled: true
2024-04-12 10:24:44.454 [info] [chat] Registration of interactive providers failed:,Error: Extension 'GitHub.copilot-chat' CANNOT use API proposal: aiTextSearchProvider.
Its package.json#enabledApiProposals-property declares: handleIssueUri, interactive, terminalDataWriteEvent, terminalExecuteCommandEvent, terminalSelection, terminalQuickFixProvider, chatParticipant, chatParticipantAdditions, defaultChatParticipant, chatVariableResolver, chatProvider, mappedEditsProvider, aiRelatedInformation, codeActionAI, findTextInFiles, textSearchProvider, contribSourceControlInputBoxMenu, newSymbolNamesProvider, findFiles2, extensionsAny, authLearnMore, testObserver but NOT aiTextSearchProvider.
 The missing proposal MUST be added and you must start in extension development mode or use the following command line switch: --enable-proposed-api GitHub.copilot-chat
2024-04-12 10:24:44.454 [info] [githubTitleAndDescriptionProvider] Initializing GitHub PR title and description provider provider.
2024-04-12 10:24:44.455 [info] [githubTitleAndDescriptionProvider] GitHub.vscode-pull-request-github extension is not yet activated.
2024-04-12 10:24:44.471 [info] [auth] Got Copilot token for dionisvl
2024-04-12 10:24:48.860 [info] [chat fetch] url https://api.githubcopilot.com/chat/completions
2024-04-12 10:24:48.860 [info] [chat fetch] modelMaxPromptTokens 3072
2024-04-12 10:24:48.860 [info] [chat fetch] modelMaxResponseTokens 4096
2024-04-12 10:24:48.860 [info] [chat fetch] chat model gpt-4
2024-04-12 10:24:49.687 [info] [chat fetch] request.response: [https://api.githubcopilot.com/chat/completions], took 825 ms
2024-04-12 10:24:49.688 [info] [chat fetch] Request ID for failed request: ,57d45acf-7cd1-4755-8fb8-bc095824af22

Steps to Reproduce:

Open VSCode
Github copilot plugin login success
Github copilot chat doesn't working, it says:

Determining workspace structure

Deciding which workspace information to collect

Encountered an error while deciding what workspace information to collect: (badRequest) token expired or invalid: 403

keep in mind that my Copilot subscrition was renewed at 2024-04-11 04:50AM PDT , and there are label exists:  You have an active Copilot subscription.

Our end is currently showing that your Paypal was refunded and that your subscription is not active


Plot points should be equidistant on mapped scale, not on original scale

Example where this matters:
https://squigglehub.org/users/ozziegooen/models/ev-agi-to-individuals

Ooh, great point


docs: #339 hooks sort

#339
预览 https://liuxy0551.github.io/dt-react-component/components/cookies

+1


docs: update docs site meta image name

Description
update docs site meta image name
Type of Change

[ ] ✨ New feature (non-breaking change which adds functionality)
[ ] 🛠 Bug fix (non-breaking change which fixes an issue)
[ ] ❌ Breaking change (fix or feature that would cause existing functionality to change)
[ ] 🧹 Code refactor
[ ] ✅ Build configuration change
[ ] 📝 Documentation
[x] 🗑 Chore

honestly an embarrassing PR


Duplicate catalogue item properties #123

Description
Added logic to the creation and updating of catalogue categories to make sure that duplicate catalogue item property names are not possible. The logic also ensures that not case specific names (e.g. Property A and property a) are also seen as duplicates
Testing instructions

[ ] Review code
[ ] Check Actions build
[ ] Review changes to test coverage
[ ] check creating a catalogue category with duplicate catalogue item property names
[ ] check editing a catalogue category to have duplicate catalogue item property names

Agile board tracking
closes #123

Could you please also merge develop into this branch as it is not up to date?


Cleanup the quarkus templates

Minor changes in the existing templates
Rename quarkus-wizzard to quarkus-application

I will apply your changes on my project = templates and bring back it under q-shift.
Ok ? @iocanel

@cmoulliard: still we need to merge this one too, so please review/approve.

Why do you want to merge this PR AS we don't use this project anymore, that we have now https://github.com/q-shift/qshift-templates ?
What I propose is to move my project https://github.com/ch007m/my-backstage-templates which is working end-to-end top of https://github.com/q-shift/qshift-templates ?

Why do you want to merge this PR AS we don't use this project anymore, that we have now https://github.com/q-shift/qshift-templates ? What I propose is to move my project https://github.com/ch007m/my-backstage-templates which is working end-to-end top of https://github.com/q-shift/qshift-templates ?

Sooner or later we are going to need direct forks of janus/software-templates to be able to create prs against their repo.

The real question is why we needed a new repo since we already had this one in place :smile:


I don't have limited access to Azure Open AI

Hello. Help me get access to get OpenAI, as I want to use this service in the project.
I received two keys in the mail, but both don't work.

Hey, @artemcodit
You might have received a GUID as the access code. You need to use this access code with your GitHub alias like your-access-code/github-alias.
Please double check this document to get your access code working:
👉 https://github.com/microsoft/hack-together-dotnet/blob/main/OPENAI-README.md#instantiate-the-client

Oh, you mean the Playground page doesn't work as expected? Would you please provide us with the repro so that we can find out on our end?

Yes, playground doesn't work for me. In any case, the key also works well in my code. So you can close this topic. Thank you for your help!


[WIP] Data pipeline and DynamoDB backup management

New code (library and script entry points) for creating and restoring backups for DynamoDB tables, including not incidentally a bunch of code for managing data pipelines.
NOTE: synthetic PR for early review purposes! This PR is against a temp branch that includes branches for two pending PRs (#175 and #155), because there's a reason those PRs are out there and it's not because I didn't want to use that code in upcoming new development. 😁
TODO (aka DONTBUGMEABOUT):

[ ] unit tests for disco_datapipeline package
[x] disentangle DP management from DDB backup management

Replaced by #182


[RUSH] Porting "Followups of #24656"

Followups of #24656
Porting #24761 and #24768 from "main" to keep the branches in sync

Hi @HarshaNalluru ,
Seems you are pushing request to feature/storage/stable branch, the storage/stable branch is the protected branch for storage SDK releasing.
If there's no change to merge in this feature/storage/stable branch, I think we can just delete it to avoid confusing.
@jeremymeng @xirzec , do you have any concerns? I don't changes on this feature/storage/stable branch, if you also don't have changes on it, maybe we should just delete it.

Yes we should delete feature/storage/stable branch to avoid confusions.

I just deleted the feature/storage/stable branch.  @HarshaNalluru will port needed changes to storage/stable

Will port the changes to storage/stable branch.
Also communicated with Mike Harder to update the perf pipeline to track storage/stable branch instead of feature/storage/stable branch


Typo in ngrok-config.yml file

Is this by design or a typo?

thanks for reporting this @satvikreddy . this is now fixed.


Feature/navbar UI

This pull request includes various changes to improve code formatting, add new features, and enhance the user interface in the client directory. The most important changes include the addition of a Navbar component to the App.js, formatting improvements across multiple files, and the addition of new fields and validation in the OPDRegistrationForm.
UI Enhancements:

client/src/App.js: Added Navbar component for better navigation and updated the layout to include a margin-top for the main content.
client/src/modules/OPD/Home.jsx: Improved the structure and readability of the homepage by reformatting JSX elements and adding consistent styling.

Code Formatting:

client/src/modules/OPD/Chart.jsx: Reformatted the import statements and JSX elements for better readability and maintainability. [1] [2]
client/src/modules/OPD/HospitalList.jsx: Reformatted JSX elements and fixed indentation issues for better code clarity. [1] [2]
client/src/modules/OPD/HospitalPanal.jsx: Reformatted JSX elements and fixed indentation issues for better code clarity. [1] [2]

Minor Fixes:

client/postcss.config.js: Fixed the missing semicolon at the end of the configuration object.
client/src/App.css: Removed an unnecessary blank line for cleaner code.

This PR is outdated, ensure that the newest changes are added to your commit

This PR is outdated, ensure that the newest changes are added to your commit

alright


What to do with .h files! Board hangs under keyboard abuse

Hi,
finally I have purchased a RedBearLab nRF51822 and USB host shield to try this project out (I am the guy of the midi accordion https://github.com/JasonBugeja/AccordionMega_USB_Keyb).
Currently, the instructions to add the RBL nRF51822 to the Arduino IDE is  via repo https://redbearlab.github.io/arduino/package_redbearlab_index.json and not done manually.
I have tried to paste the unzipped folder of RBL  (from github) manually but it doesn't work since folder structure does not match.
I have added the RBL nRF51822 via repo using Board Manager in Arduino IDE v1.6.13 and managed to compile and program the board, however I did not paste the Projectconfig.h file as per instructions since the folders of the repo seem to remain online without a local presence on my PC.
What should be done with BLEParser.h?
Even without the .h files, I managed to play my Samson Graphite mini32 through BLE using midimittr on my iPod Touch 6th gen.  The only problem I found is that when I abuse the keyboard - multikey glissandos etc, the board seems to hang and requires restart.  Is this issue manifesting because of the missing .h files?  I have tried the same severe keyboard abuse using my Yamaha UD-BT01 and it doesn't show any issues, so the problem is not with the Samson.
I have used Arduino IDE v1.6.13 and USB_Host_Shield_2.0 & USBH_MIDI from their respective urls on github.  Should I use older versions of IDE or libraries or something?
Thanks in advance.
Blidino has a lot of potential and the way you structure and comment the code is great!
Regards,
Jason

Hey,
just search your local filesystem for the projectfile.h and replace it. The folders of the repo are cloned locally into some Arduino folders.
I suppose you could try to increase the buffer size in the sketch. Hanging Keys could result from the surplus of latency (which the projectfile.h resolves).. eventually overwriting note-off events with new messages in the buffer.

Hey,
just search your local filesystem for the projectfile.h and replace it. The folders of the repo are cloned locally into some Arduino folders.
I suppose you could try to increase the buffer size in the sketch. Hanging Keys could result from the surplus of latency (which the projectfile.h resolves).. eventually overwriting note-off events with new messages in the buffer.

I have found the location of Projectconfig.h - it is no longer in the *C:\Program Files (x86)* folder but in *C:\Users_(username)_\AppData\Local\Arduino15* as per this forum:
It has to be noted that if an update notification for the RBL repo pops up and is installed, the Projectconfig.h needs to be pasted again.
Maybe you can add the above in the ReadMe.
What about the file BLEParser.h? Do I have to do something with it?

I have found the location of Projectconfig.h - it is no longer in the *C:\Program Files (x86)* folder but in *C:\Users_(username)_\AppData\Local\Arduino15* as per this forum:
It has to be noted that if an update notification for the RBL repo pops up and is installed, the Projectconfig.h needs to be pasted again.
Maybe you can add the above in the ReadMe.
What about the file BLEParser.h? Do I have to do something with it?

If the sketch compiled fine, then BLEParser should have been included/used by the project.
Just put in the same folder as the .ino file

If the sketch compiled fine, then BLEParser should have been included/used by the project.
Just put in the same folder as the .ino file

Mhmm. I cant look into this right now, but try using the original projectconfig.h and replace the following lines:
  #define CFG_GAP_CONNECTION_MIN_INTERVAL_MS         8                      /**< Minimum acceptable connection interval */
    #define CFG_GAP_CONNECTION_MAX_INTERVAL_MS         15                     /**< Maximum acceptable connection interval */
    #define CFG_GAP_CONNECTION_SUPERVISION_TIMEOUT_MS  2000                     /**< Connection supervisory timeout */
    #define CFG_GAP_CONNECTION_SLAVE_LATENCY           0                        /**< Slave Latency in number of connection events. */

Mhmm. I cant look into this right now, but try using the original projectconfig.h and replace the following lines:
  #define CFG_GAP_CONNECTION_MIN_INTERVAL_MS         8                      /**< Minimum acceptable connection interval */
    #define CFG_GAP_CONNECTION_MAX_INTERVAL_MS         15                     /**< Maximum acceptable connection interval */
    #define CFG_GAP_CONNECTION_SUPERVISION_TIMEOUT_MS  2000                     /**< Connection supervisory timeout */
    #define CFG_GAP_CONNECTION_SLAVE_LATENCY           0                        /**< Slave Latency in number of connection events. */

It would still modify the checksums I suppose. I'll try the "portable" method mentioned in the forum to see if it makes a difference and get back to you. Thanks for now.

It would still modify the checksums I suppose. I'll try the "portable" method mentioned in the forum to see if it makes a difference and get back to you. Thanks for now.

Ok, found the trick... I changed the values you told me in the original file and replaced the difference in characters with spaces to trick the checksum thing! So the Projectconfig.h thing is settled now - just update the ReadMe for other users.
Regarding the Midi overflow thing there is still a problem.  When there is a Midi overflow, the board hangs and unpairs. Upon resetting the board from the switch, it can pair again but connected keyboard does not play. Turning power off and on again and pairing again works.
Modifying Expression control or any other volume in real-time can hang the board as well - example expression pedal on a Hammond clone or Accordion bellows Expression
Further up you told me to modify buffer. Is it this line?
#define MAX_TX_BUFF 64
Here is the working Projectconfig.h to update in the project:
Projectconfig.zip

Ok, found the trick... I changed the values you told me in the original file and replaced the difference in characters with spaces to trick the checksum thing! So the Projectconfig.h thing is settled now - just update the ReadMe for other users.
Regarding the Midi overflow thing there is still a problem.  When there is a Midi overflow, the board hangs and unpairs. Upon resetting the board from the switch, it can pair again but connected keyboard does not play. Turning power off and on again and pairing again works.
Modifying Expression control or any other volume in real-time can hang the board as well - example expression pedal on a Hammond clone or Accordion bellows Expression
Further up you told me to modify buffer. Is it this line?
#define MAX_TX_BUFF 64
Here is the working Projectconfig.h to update in the project:
Projectconfig.zip


Does it not work anymore?

Is it no longer possible to read the data from the BWT Perla? A short information would be great, thanks!

It is working fine for me. In case you have any issue, please include the BWT model, firmware version and logs of the integration, so I can investigate.

Works for me, too! Just got the firmware update (2.0209) today. Thanks, @dkarv!

Thank you for the quick answers!
I have a BWT Perla with firmware 2.0018. I'll have to do an update soon, I think :P I have the correct IP and code.
I can no longer install your integration via HACS, I get an error message. -> Repository dkarv/hacs-bwt-perla not found
Do you know why? That's why I tried it manually, but it doesn't seem to have worked.


Dummy variable regression in PooledOLS generates an error

I conducted a dummy variable regression based on  this page, using linearmodels (PooledOLS) and statsmodels with the same formula (see below). The latter finishes computation and generates a result, whereas linearmodels produces an error message:
ValueError: exog does not have full column rank.
I wonder what is happening in linearmodels. Does a bug cause this? Can you shed light on this?
import pandas as pd
from linearmodels.datasets import wage_panel
from linearmodels.panel import PooledOLS
from statsmodels.formula.api import ols

data = wage_panel.load()
year = pd.Categorical(data.year)
nr = pd.Categorical(data.nr)
data = data.set_index(['nr', 'year'])
data['year'] = year
data['nr'] = nr

# formula
formula = 'lwage ~ married + union + educ + year + year:educ + nr'

# statsmodels -----------
result_sm = ols(formula, data=data).fit()
# show selected parameters
condition = result_sm.params.index.str.contains('nr').tolist()
result_sm.params[[not i for i in condition]]

# linearmodels ----------
result_lm = PooledOLS.from_formula(formula, data=data).fit()

# generate the error message 'ValueError: exog does not have full column rank.'

You have a singular "design matrix" when you include 'year:educ + nr, and since year:educ is continuous, nothing is dropped by patsy.
In this case, statsmodels is effectively giving you random results (they depend on the linear algebra library used, the platform and the order of variables) since the exogenous variables are rank deficient.  You can verify the reduced rank of exog in statsmodels by
import pandas as pd
from linearmodels.datasets import wage_panel
from linearmodels.panel import PooledOLS
from statsmodels.formula.api import ols

data = wage_panel.load()
year = pd.Categorical(data.year)
nr = pd.Categorical(data.nr)
data = data.set_index(['nr', 'year'])
data['year'] = year
data['nr'] = nr

# formula
formula = 'lwage ~ married + union + educ + year + year:educ + nr'

# statsmodels -----------
mod = ols(formula, data=data)
result_sm = mod.fit()
exog = mod.exog
import numpy as np
print(exog.shape[1])
print(np.linalg.matrix_rank(exog))
print('More parameters than the rank of exog, see...')
print(result_sm.params.shape[0])
assert np.linalg.matrix_rank(exog) ==  exog.shape[1]

@josef-pkt Looks like a bug in the formula interface where rank isn't correctly checked.

The philosophy of lm is to be strict and explicit.  This is an important contrast to R and Stata which will make choices for users when matrices are rank deficient.  statsmodels has the same philosophy as lm from what I have seen, so this is likely a bug.

The linear regression models, OLS, WLS, and in some cases estimation based on iterative reweighted least squares give a pinv regularized solution. statsmodels does not raise an exception for singular exog by design, but there should be the warning message in summary.
The parameters are not identified, but the pinv solution is not "arbitrary" and does not depend on the linalg library (except in edge cases). The solution is essentially PCA-regression with a very small threshold, which is theoretically also the limit case for Ridge regression with diminishing penalization weight.
(R drops variables using pivoting QR, and, AFAIK, Stata drops sequentially (non-pivoting QR?))
I need to switch computer to run and look at the example.

It would probably be helpful if a warnign was printed when the model was fit, since it is plausible that people don't examine the summary in many circumatances.
pinv is arbitrary in the same way that PCA uses an arbitrary (but convenient) normalization.  There are infinitely many normalizations that would produce the same sum of squares, and pinv is simply choosing one.  Parameter estimates from rank deficient regression are as interpretable as the factors from a PCA (i.e., they are not, but fitted values may be interesting).


Push latest to NuGet

The most recent nuget package was on Nov, 2013. Since that there we many commits. Please publish an new one. Should be easy.

This will put the version at 2.0 and contains the following changes:

CSVMediaTypeFormatter: values concatenation fix f7edd8bfc99f1cb971f738345588df468c29de34
UnderscoreMappingResolver added be8fbb3e555b1062774360a9e2ddd0a114db7657
Fix for GetClientIpAddress in OWIN-hosting<PHONE_NUMBER>95a23655d14cc4353aae53665fd3c7

In addition to infrastructure changes (FAKE, Paket, etc)

Or version 1.0, @panesofglass can you confirm? There was a commit I made to mark it as 2.0 (I believe as part of a mailing list discussion), however, I think v1.0 makes more sense.
These conflict:

https://github.com/WebApiContrib/WebAPIContrib/blob/b5df875bafc848b2764930e49faf630264eb4f85/RELEASE_NOTES.md
https://github.com/WebApiContrib/WebAPIContrib/commit/b8944841605ca37c4d30dab507451c7eac609bd9

I'm fine with either. 2.0 matches us up to Web API 2.* but does not follow semver. Following semver is probably more sensible, so let's do 1.0. :)

Bump?

Bump?

Any update on this, please?

Any update on this please?

Can you give me access? I'll push it to nuget. Why not?

Can you give me access? I'll push it to nuget. Why not?

Ping @ChrisMissal. :) Let's leave it as 2.0 and push.

@ChrisMissal ping :)

@ChrisMissal please push the latest!

Then I will create a new nuget package WebApiContrib2, ok?

Hey all, sorry! I don't use these libraries anymore, so I should share ownership of the nuget package so I'm not blocking like this again. What's your username on nuget @abatishchev ?

Same, abatishchev.

Thanks for adding me! Waiting the changes to propagate.

So should we go with version 1.0.0 or 2.0.0?

@ChrisMissal can you please check? nuget.org still doesn't show me as a co-owner. thanks!

@abatishchev We decided v2 earlier, I think that's still fine. You're listed as "pending approval", maybe you got an email? I forget how that works.

Oh, right, I clicked the link but it didn't work, now it worked. Good, will go with v2.0.0 then.

Done, v2.0.0 has been published to NuGet.

Can you please grant me access to WebApiContrib.Testing as well?


Figure out what exactly to do with/how to print/importance of Messages

Using a Message object may not be completely necessary, except for explicitness. Its purpose is to translate raw strings into formatted ones with bbcode, italics, pauses, etc. for other things such as a message handler, name label, or history handler to use. Stmts shouldn't generate Message objects, Stmts should generate Controls that are passed to the debug history handler. Only user-facing Stmts are passed to the user history handler.


C++ API Refactor

Description
This PR decouples the header files so now you need to include specific headers for logging and post training quantization. This lets the main header keep being independent of dependencies on Torch or TensorRT headers but in the case of PTQ it pulls it in. This seems like a good compromise with minimal impact on the user workflow since you will need to include these headers anyway to use PTQ but you wouldn't in the case of the main header.
Fixes # (issue)
Type of change
Please delete options that are not relevant and/or add your own.

Breaking change (fix or feature that would cause existing functionality to not work as expected)
This change requires a documentation update

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas and hacks
[ ] I have made corresponding changes to the documentation and have regenerated the documentation (make html in docsrc)
[ ] I have added tests to verify my fix or my feature
[x] New and existing unit tests pass locally with my changes

This PR will hold until #92 is merged since we will likely bump the version after merging this PR considering the breaking change in the API


How is caching supposed to work?

I'm using the latest version of html2canvas, to generate multiple images per second.
I noticed that html2canvas doesn't cache any requests, resulting in a crowded network tab, that easily goes beyond 1gb in requests within a few minutes.
I checked through the issues here, and there was an unresolved one, concerning this very issue.
In this issue @ben22119 suggested to include a 'cache' parameter to either enable, or disable caching.
This 'cache' options actually exists in the source, and in the @type files, however this option doesn't take a boolean, but a 'Cache' object, which seems to be made for internal use.
Furthermore there is no documentation concerning this option in the documentation.
I'm wondering how caching is supposed to work, it is exposed through the public api afterall.
Thanks for your help.

Well, I figured the problem out.
For my specific use case html2canvas is extremely inefficient, as it create an iframe of the whole web page on each screenshot.
For this reason I forked it, and created html2canfast, which is up to 100 times faster than html2canvas, when taking multiple screenshots of the same element. Checkout the comparison.

@Tobjoern If I understand correctly, html2canfast does not use any iframes and the rest is the same. Are not there any side effects of not using iframes? If that is so, why do you think html2canvas is using iframes?

html2canfast is not working as expected, its not creating proper screenshots for nested DOM nodes kind of entire PDF viewer document container


removal of surveys

Is there an ETA here? Would love a version of this library that doesn't yield a bunch of deprecation warnings.

@dfed planning on tomorrow!


Proposal: Pure / Impure breakup

Right now we have a problem. There are 2 orthogonal concerns that effect every function. For every function we want one version that returns an {:ok, result} | {:error, reason} tuple, and one version denoted with a ! that raises on error and otherwise just returns the result. Also for every function we want the option to use a default configuration, and the option to specify a particular configuration.
This means that every function gets basically 4 variants. Using S3.list_objects as an example we have
S3.list_objects("my-bucket") #=> {:ok, []}
S3.list_objects!("my-bucket") #=> []
S3.Impl.list_objects(config_overrides, "my-bucket") #=> {:ok, []}
S3.Impl.list_objects!(config_overrides, "my-bucket") #=> []

In addition to being just kinda sucky, these functions I think reflect a deeper problem. There's really 2 things going on here. There's the request building logic that maps a input into an AWS request, and then there are 4 modes of making that request. The current approach conflates these, and so we are forced to do these 4 modes for every request building function.
My current client approach basically tries to create an object out of a module.
Here's the proposed alternative:
S3.list_objects("my-bucket") |> ExAws.request #=> {:ok, []}
S3.list_objects("my-bucket") |> ExAws.request! #=> []
S3.list_objects("my-bucket") |> ExAws.request(config) #=> {:ok, []}
S3.list_objects("my-bucket") |> ExAws.request!(config) #=> []

I'm splitting up the pure mapping of input to some request struct from the actual impure mechanics of executing that a request on that struct. This will dramatically simplify the code. I only need one function to generate the data, and then 4 functions can serve to enable the 4 modes of making a request for EVERY request data struct.
Downsides: This introduces an extra function call that people need to add anywhere they currently have just one function call.
Upsides: By separating the pure from the impure it makes it wildly easier to use in all of the other use cases.

No need to call the Impl modules in order to pass custom config in.
You can put a function between the list_objects call and the request call to do any transformation of the data inside. This right now requires creating a whole new client module and overriding the request function.
Gone is all the silly meta-programming required to generate the 4 versions of every function.
It's a lot easier to see how we might batch requests, because an ordinary call like list_objects is just a datastructure. We can combine those together inside a Batch structure and then execute that.

Thoughts? @bruce @ericmj @adamkittelson

I should add that this makes it way easier to do stuff like have a MyS3 module that always does some particular transformation on the data or configuration. Right now in order to use a MyS3 module I have to meta-program in all of the functions. With this proposal you could just take a much more functional approach:
defmodule MyS3 do
  def request(action_struct, config \\ custom_default_config()) do
    action_struct
    |> transform
    |> ExAws.request
  end
end

S3.list_objects("my-bucket") |> MyS3.request

No metaprogramming required, and it's also a lot more flexible.

Right so I looked through the docs again and we have
String and Binary type attributes must have lengths greater than zero

I think the right call here is to just make sure that empty strings like null are simply stripped out entirely from what's sent.

This seems like a good approach, it's data structure driven which I strongly like.
Singular requests will be easy but I can imagine that it gets a bit more tricky when you need to make multiple requests and when when subsequent requests depends on previous ones, take ExAws.S3.Client.stream_objects!/1 as an example. Do you have any ideas for solving this?
From where would ExAws.request pull the config by default now that we don't have a module that defines a default config?

Thanks for your feedback.
Configuration
There are a few cases of configuration we need to worry about. The first is general configuration that is already placed on :ex_aws itself. This will naturally be what a bare ExAws.request uses. There is also request that is placed under a given service like
config :ex_aws, :s3,
  region: "us-west-1"

This too will simply be used by the default ExAws.
For people who had made custom modules that use ExAws.S3.Client or similar, the migration path is fairly easy there too. If they made a MyS3 they just basically do
defmodule MyApp.MyS3 do
  def config_root, do: #whatever they had as their previous custom config

  def request(operation, config \\ config_root()) do
    ExAws.request(operation, config)
  end
end

Streaming
This is a bit of a tougher question. Conceptually there are basically 3 parts to a streaming function. We'll use list_objects from S3 as the example. First you need the ordinary list_objects call. Then you need the configuration, and finally you need code which bundles those two together inside of an enumerable. Because the exact method of pagination varies by service and even by operation, I highly doubt that the enumerable bundling code can be generic.
Fortunately, we can still provide a pretty generic interface I think. Let me know what you think of this.
"my-bucket"
|> S3.list_objects
|> ExAws.stream!

As part of the datastructure we return from an ordinary S3.list_objects function call we include something a key like %{stream_builder: &anon_function/2}. This anonymous function takes the operation struct as an argument, and also a config as an argument, and returns an enumerable.
The ExAws.stream! function is basically just
def stream!(op, config \\ default_config())
def stream!(%{stream_builder: nil}, config), do: raise ArgumentError, "Operation #{foo} is not configured for streaming"
def stream!(%{stream_builder: fun} = op, config) do
  fun.(op, config)
end

I rather like this approach. Once again it keeps a nice separation of concerns between building the data required for an operation and how we want to consume the result. It also means we don't have yet another axis in our table up there for stream vs non stream functions.
Thoughts?

Thinking about this more, I may want to go as far as to have the stream! function pass a third argument to fun which would be the function to call to make an individual request. in ExAws it would just be &request!/2 but for anyone looking to wrap a stream! call I want to give them the ability to use any wrapped request! function they've also made.

An update:
I've started implementing this in https://github.com/CargoSense/ex_aws/pull/165 and it's going very well.
I've defined a protocol:
defprotocol ExAws.Operation do
  def perform(operation, config)

  def stream!(operation, config)
end

Each function S3.list_objects, Dynamo.create_table, etc returns a struct for which there is an implementation of the ExAws.Operation protocol. These implementations basically resemble the Request modules that existed before, however many services are able to return common structs, which has simplified the number of places in which similar request logic must exist.
It also lets individual functions return something different if they want to be handled in a particular way. A good example is how S3.delete_all_objects works: https://github.com/CargoSense/ex_aws/pull/165/files#diff-886111751a5229ad66e5ae3aef100f66R73

Hey Ben! I like your proposed changes, delaying the configuration and choosing the mode at the last step seems to be a good idea. I can see it also being better for future changes or maintenance duties through a clearer separation of data building and request logic as distinctive phases of the whole operation.

Here's the proposed alternative:
S3.list_objects("my-bucket") |> ExAws.request #=> {:ok, []}
S3.list_objects("my-bucket") |> ExAws.request! #=> []
S3.list_objects("my-bucket") |> ExAws.request(config) #=> {:ok, []}
S3.list_objects("my-bucket") |> ExAws.request!(config) #=> []

Like in this example you provided it's easier to reason about and makes for a simpler interface in comparison to this:

S3.list_objects("my-bucket") #=> {:ok, []}
S3.list_objects!("my-bucket") #=> []
S3.Impl.list_objects(config_overrides, "my-bucket") #=> {:ok, []}
S3.Impl.list_objects!(config_overrides, "my-bucket") #=> []

I also find it better in the new alternative since it maps the actual API more closely and I believe that's one of the goals of a good API wrapper is to provide shortcuts to consume the actual API. Then if the user wants to transform that data somehow then that's the responsibility of another layer.

Thinking about this more, I may want to go as far as to have the stream! function pass a third argument to fun which would be the function to call to make an individual request. in ExAws it would just be &request!/2 but for anyone looking to wrap a stream! call I want to give them the ability to use any wrapped request! function they've also made.

Can this new argument receive custom functions from the users then? Would it be useful in any way?


Values for MVENDORID, MARCHID and MIMPID

Establishing the numbers:
VendorID is from JEDEC - we have this
ArchID is assigned from RISC-V and indicates the processor - not done yet
ImpID is 0 as it is the first implementation of this architecture
Documentation not updated


Not able to connect to vault in https mode

Rancher server version - v1.6.13-rc3.
Try to deploy secrets-bridge-v2 pointing to a vault server deployed in https mode.
secrets-bridge-v2-server fails to start with  following errors in secrets-bridge-v2-secrets-bridge-v2-server logs:
12/15/2017 5:09:04 PMtime="2017-12-16T01:09:04Z" level=error msg="failed to initialize vault client: Get https://<name>:8200/v1/auth/token/lookup-self: x509: failed to load system roots and no roots provided"
12/15/2017 5:09:07 PMtime="2017-12-16T01:09:07Z" level=error msg="failed to initialize vault client: Get https://<name>:8200/v1/auth/token/lookup-self: x509: failed to load system roots and no roots provided"
12/15/2017 5:09:10 PMtime="2017-12-16T01:09:10Z" level=error msg="failed to initialize vault client: Get https://<name>:8200/v1/auth/token/lookup-self: x509: failed to load system roots and no roots provided"
12/15/2017 5:09:18 PMtime="2017-12-16T01:09:18Z" level=error msg="failed to initialize vault client: Get https://<name>:8200/v1/auth/token/lookup-self: x509: failed to load system roots and no roots provided"

Tested with Rancher server version - v1.6.13-rc3, rancher/storage-secrets-bridge-v2:v0.8.13 and rancher/secrets-bridge-v2:v0.1.1
Able to connect successfully to vault in https mode and able to deploy services that can access  secrets from vault.
When connecting to vault in https mode that uses self signed certs , user should have to use "--insecure" option when using CURL commands to unwrap and fetch secrets.


remove cumulative option when torque category

re: https://github.com/CartoDB/support/issues/900

restest this, please

:+1:


Concurrency issues; possibly support connection pooling or setting default timeout

When you have two threads that SELECT some data and then INSERT or UPDATE a row on the same table on the same time, a "Database is locked" error is thrown.
This happens on Windows as well as on Mac OS X (was not yet tested on linux).
My approach would be to solve this by enabling connection pooling (which Microsoft.Data.Sqlite does not support) or possibly set a larger command timeout (which Microsoft.Data.Sqlite does not support on the connection string or on the connection itself). Since EF owns the actual command its not possible to set another timeout value there, too.
Please find attached a project that reproduced this issue :
Sqlite.Repro.zip
Simply execute "dnu restore && dnx run" to experience the issue.

This looks like it could be the same serializable bug we fixed in https://github.com/aspnet/Microsoft.Data.Sqlite/pull/213 (which is in build >= 15974). @gingters does your issue still occur with this fix?

Closing as we have not heard back

I found a similar, related issue for which I filed a fix in #232. This and #213 could have been the cause of the "database is locked" exceptions.


Initialize workflow monitor

Monitor for calculating metrics com.netflix.conductor.service.WorkflowMonitoris not initialized and so metrics like task_queue_depth, workflow_running are not captured. So initializing it in WorkflowExecutorModule.

Pull Request Test Coverage Report for Build 4064

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 69.314%

Totals

Change from base Build 4060:
0.2%

Covered Lines:
11895

Relevant Lines:
17161

💛  - Coveralls