Pagination guide doesn't work on entity represented by joined tables

Setup
I have 2 tables:
Restaurants:

id
name
location

Tables:

number
restaurant_id
seat_number
is_free

The tables are marked as joinable in the generated schema.rs.
Versions

Rust: rustc 1.74.1
Diesel: 2.1.4
Database: Postgres
Operating System: mac

Feature Flags

diesel: "chrono", "serde_json"

Problem Description
I would like to paginate on free tables, but need the restaurant data as well. The model I want to paginate on:
RestaurantTable:

restaurant_id
name
location
table_number
seat_number
is_free = true

When I use the guide at https://diesel.rs/guides/extending-diesel.html, this is the code I end up with:
// pagination.rs
//! Source: <https://diesel.rs/guides/extending-diesel.html>
use diesel::pg::Pg;
use diesel::query_builder::{AstPass, Query, QueryFragment};
use diesel::query_dsl::LoadQuery;
use diesel::sql_types::Integer;
use diesel::{PgConnection, QueryId, QueryResult, RunQueryDsl};

pub trait Paginate: Sized {
    fn paginate(self, page_num: i32, page_size: i32) -> Paginated<Self>;
}

impl<T> Paginate for T {
    fn paginate(self, page_num: i32, page_size: i32) -> Paginated<Self> {
        Paginated {
            query: self,
            page_size,
            offset: page_size * page_num,
        }
    }
}

#[derive(Debug, Clone, Copy, QueryId)]
pub struct Paginated<T> {
    query: T,
    page_size: i32,
    offset: i32,
}

impl<T> QueryFragment<Pg> for Paginated<T>
where
    T: QueryFragment<Pg>,
{
    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, Pg>) -> QueryResult<()> {
        out.push_sql("SELECT *, COUNT(*) OVER () FROM (");
        self.query.walk_ast(out.reborrow())?;
        out.push_sql(") as paged_query_with LIMIT ");
        out.push_bind_param::<Integer, _>(&self.page_size)?;
        out.push_sql(" OFFSET ");
        out.push_bind_param::<Integer, _>(&self.offset)?;
        Ok(())
    }
}

impl<T> Paginated<T> {
    pub fn load_and_count_pages<'a, U>(
        self,
        conn: &mut PgConnection,
    ) -> QueryResult<(Vec<U>, i32, bool)>
    where
        Self: LoadQuery<'a, PgConnection, (U, i32)>,
    {
        let total_queried = self.offset + self.page_size;
        let results = self.load::<(U, i32)>(conn)?;
        let total = results.get(0).map_or(0, |x| x.1);
        let records = results.into_iter().map(|x| x.0).collect();
        let has_more = total > total_queried;
        Ok((records, total, has_more))
    }
}

impl<T: Query> Query for Paginated<T> {
    type SqlType = (T::SqlType, Integer);
}

impl<T> RunQueryDsl<PgConnection> for Paginated<T> {}

// db_manager.rs
let free_tables: (Vec<Restaurant, Table>, i32, bool) = restaurants::table()
            .inner_join(tables::table())
            .filter(is_free.eq(true))
            .select((Restaurant::as_select(), Table::as_select()))
            .paginate(page_num, page_size)
            .load_and_count_pages(&mut connection)?;

What are you trying to accomplish?
Paginating over an entity that represents a joined table. I've also tried to create a struct that defines the resulting fields, but it seems that it can't be Selectable without a #[diesel(table_name = "...")] annotation, and obviously a model that represents a join of 2 models doesn't have 1 table to use here
What is the expected output?
Paginated list of the tuple (Restaurant, Table).
What is the actual output?
error[E0277]: the trait bound `(diesel::expression::select_by::SelectBy<db::models::Repository, diesel::pg::Pg>, diesel::expression::select_by::SelectBy<db::models::CodeChange, diesel::pg::Pg>): diesel::util::TupleSize` is not satisfied
  --> crates/codebase_management/src/db/code_changes_db_manager.rs:72:14
   |
72 |             .load_and_count_pages(&mut connection)?;
   |              ^^^^^^^^^^^^^^^^^^^^ the trait `diesel::util::TupleSize` is not implemented for `(diesel::expression::select_by::SelectBy<db::models::Repository, diesel::pg::Pg>, diesel::expression::select_by::SelectBy<db::models::CodeChange, diesel::pg::Pg>)`
   |
   = help: the following other types implement trait `diesel::util::TupleSize`:
             (T0,)
             (T0, T1)
             (T0, T1, T2)
             (T0, T1, T2, T3)
             (T0, T1, T2, T3, T4)
             (T0, T1, T2, T3, T4, T5)
             (T0, T1, T2, T3, T4, T5, T6)
             (T0, T1, T2, T3, T4, T5, T6, T7)
           and 24 others
   = note: required for `(db::models::Repository, db::models::CodeChange)` to implement `diesel::deserialize::StaticallySizedRow<(diesel::expression::select_by::SelectBy<db::models::Repository, diesel::pg::Pg>, diesel::expression::select_by::SelectBy<db::models::CodeChange, diesel::pg::Pg>), diesel::pg::Pg>`
   = note: required for `((db::models::Repository, db::models::CodeChange), i32)` to implement `diesel::deserialize::FromStaticSqlRow<((diesel::expression::select_by::SelectBy<db::models::Repository, diesel::pg::Pg>, diesel::expression::select_by::SelectBy<db::models::CodeChange, diesel::pg::Pg>), diesel::sql_types::Integer), diesel::pg::Pg>`
   = note: required for `((db::models::Repository, db::models::CodeChange), i32)` to implement `diesel::Queryable<((diesel::expression::select_by::SelectBy<db::models::Repository, diesel::pg::Pg>, diesel::expression::select_by::SelectBy<db::models::CodeChange, diesel::pg::Pg>), diesel::sql_types::Integer), diesel::pg::Pg>`
   = note: required for `((db::models::Repository, db::models::CodeChange), i32)` to implement `diesel::deserialize::FromSqlRow<((diesel::expression::select_by::SelectBy<db::models::Repository, diesel::pg::Pg>, diesel::expression::select_by::SelectBy<db::models::CodeChange, diesel::pg::Pg>), diesel::sql_types::Integer), diesel::pg::Pg>`
   = note: required for `((SelectBy<Repository, Pg>, SelectBy<CodeChange, Pg>), Integer)` to implement `diesel::query_dsl::load_dsl::private::CompatibleType<((db::models::Repository, db::models::CodeChange), i32), diesel::pg::Pg>`
   = note: the full type name has been written to '/Users/nimrodkor/Projects/baz/platform/target/debug/deps/codebase_management-edab074a227d5339.long-type-13515196522775546583.txt'
   = note: required for `Paginated<BoxedSelectStatement<'_, (SelectBy<Repository, Pg>, SelectBy<CodeChange, Pg>), FromClause<...>, ...>>` to implement `diesel::query_dsl::LoadQuery<'_, diesel::PgConnection, ((db::models::Repository, db::models::CodeChange), i32)>`
   = note: the full type name has been written to '/Users/nimrodkor/Projects/baz/platform/target/debug/deps/codebase_management-edab074a227d5339.long-type-12037448283329689932.txt'
note: required by a bound in `central_db_schema::pagination::Paginated::<T>::load_and_count_pages`
  --> /Users/nimrodkor/Projects/baz/platform/crates/central_db_schema/src/pagination.rs:50:15
   |
45 |     pub fn load_and_count_pages<'a, U>(
   |            -------------------- required by a bound in this associated function
...
50 |         Self: LoadQuery<'a, PgConnection, (U, i32)>,
   |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Paginated::<T>::load_and_count_pages`

Are you seeing any additional errors?
Nope
Steps to reproduce
Detailed above
Checklist

[x] I have already looked over the issue tracker and the discussion forum for similar possible closed issues.

[x] This issue can be reproduced on Rust's stable channel. (Your issue will be
closed if this is not the case)
[x] This issue can be reproduced without requiring a third party crate

I'm open to contributing if you help me with some pointers, BTW!

Thanks for filling this issue.


state->errors->error,Whether to add a "errorCode" field?

in state topic,do we need to add a field "errorCode" in error, as it's unique identifier, use only the "errorType" as a problem attribution, or use the "errorType" as its unique identifier?

How to define errors is very vehicle and manufacturer specific.  I would use 'errorType' to specify the type of the errors (a few one are predefined  by the VDA5050). If more than one error of the same type can occur it is (in my option) a good idea to add more information to the error references so MC is able to distinguish between them.
I would not use the errorType as an identifier. I you need an identifier put it into the error references.

In our practice, we often use the "errorType" as a category to describe the error, such as "NavigatingError","MechanicalError"," ChargingError", and use the "errorCode" to specify the specific error, such as"NavigatingObstructionStopError"," LidarWorkingError","DockingChargingPileError", and use the id to mark each error, so we want to see like this:
{
      "errors": [{
	      "errorType": "chargingError",
	      "errorCode": "DockingChargingStationError",
	      "errorId": "g132aw5f453g3aqwfawf",
	      "errorDescription": "can not dock with chargingStation",
	      "errorLevel": "FATAL",
	      "errorReferences": [{
			      "referenceKey": "orderId",
			      "referenceValue": "chargingTask-202406111801-001"
		      },
		      {
			      "referenceKey": "description",
			      "referenceValue": "can not connect with chargingStation"
		      }
	      ]
      }]
  }

But according to your meaning, it may be like this:
	{
		"errors": [{
			"errorType": "DockingChargingStationError",
			"errorDescription": "can not connect with chargingStation",
			"errorLevel": "FATAL",
			"errorReferences": [{
				"referenceKey": "errorId",
				"referenceValue": "g132aw5f453g3aqwfawf"
			}]
		}]
	}

now we are using vda5050 to interconnect our MC with agv from multiple manufacturers, but the manufacturers do not have a unified specification, we think that if in our way, it will reduce a lot of the burden of interconnection, so how will vda5050 deal with this problem next?


extends keyof does not allow extended new keys on interfaces since 4.3.0

Bug Report

🔎 Search Terms

extends keyof, missing key

🕗 Version & Regression Information
I saw this in 4.3.0 beta, it seems to exists in the nightly. It was working on 4.2.x
⏯ Playground Link
export interface GlobalOptions {
  // cannot be added or it wouldn't be able to be extended
  // suffix: string
}

// this is added by a user to extend a global customization
export interface GlobalOptions {
   // suffix: 'New'
}

export type WithSuffix<S extends string> = `${S}${'suffix' extends keyof GlobalOptions ? GlobalOptions['suffix'] : 'Suffix'}`

declare let a: WithSuffix<'hi'>

Output
export {};

Compiler Options
{
  "compilerOptions": {
    "noImplicitAny": true,
    "strictNullChecks": true,
    "strictFunctionTypes": true,
    "strictPropertyInitialization": true,
    "strictBindCallApply": true,
    "noImplicitThis": true,
    "noImplicitReturns": true,
    "alwaysStrict": true,
    "esModuleInterop": true,
    "declaration": true,
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true,
    "target": "ES2017",
    "jsx": "react",
    "module": "ESNext",
    "moduleResolution": "node"
  }
}

Playground Link: Provided

### 🙁 Actual behavior

Error with `suffix cannot be used to index`

### 🙂 Expected behavior

No Error

The idiomatic way to write this would be
export type WithSuffix<S extends string> = `${S}${GlobalOptions extends Record<"suffix", unknown> ? GlobalOptions['suffix'] : 'Suffix'}`

which works as expected.
The "narrowing" of the RHS in that position was a bug and shouldn't have happened.

Thanks a lot for telling me the correct way of doing it!


CI: K8sServicesTest Checks service across nodes Tests NodePort BPF Tests with vxlan Tests HealthCheckNodePort

/home/jenkins/workspace/Cilium-PR-Ginkgo-Tests-Validated/k8s-1.11-gopath/src/github.com/cilium/cilium/test/ginkgo-ext/scopes.go:430
Request from k8s1 to "http://<IP_ADDRESS>:30006" returned HTTP Code "200", expected "503"
Expected
    <string>: 200
to contain substring
    <string>: 503
/home/jenkins/workspace/Cilium-PR-Ginkgo-Tests-Validated/k8s-1.11-gopath/src/github.com/cilium/cilium/test/k8sT/Services.go:288

Same as https://github.com/cilium/cilium/issues/10129, closing.


UNet++ model

Hi! Great repo!
I was exactly looking for a C++ interface to Qubvel pytorch models. Is there any possibility that you will provide the interface for the Unet++ model with SE-ResNet-50 encoder?
Thank you!

Will update later.

Hi, @AlessandroSaviolo. Thanks for your star and issue, but I have to regretfully tell your that it is much more harder than I thought to implement SeNet while keeping ResNet.  Enven though I tried template or avoid TORCH_MODULE as described in the link here. Besides, UNet++ could be trival but time consuming..... So, I will try again for UNet++ in one day. Wish me good.
However, If you just want to make predictions through trained UNet++ and SeNet in c++, you should better use trochscipt and torch::jit to forward a jit module like here. Or, you should try to save a ONNX file and transfer it to TensorRt like here, which should be faster than torchscipt.
Regard.

Hi! Thank you very much for your effort! I actually only have to make predictions because I've already generated the trained model through qubvel pytorch implementation. I'll go through the links you have given me :)
Thank you again!


Add var.ttl_enabled to support disabling ttl

what

Add var.ttl_enabled to support explicitly disabling dynamodb ttl on a table

why

Unable to disable an existing ttl configuration

references

Closes #84

Example Plan
After setting ttl_enabled = false w/ blank ttl_attribute:
# module.ddb_transaction_event.aws_dynamodb_table.default[0] will be updated in-place
  ~ resource "aws_dynamodb_table" "default" {
        arn              = "arn:aws:dynamodb:us-east-1:***********:table/devmw-transactionEvent"
        billing_mode     = "PAY_PER_REQUEST"
        hash_key         = "transactionId"
        id               = "devmw-transactionEvent"

...

        timeouts {}

      ~ ttl {
            attribute_name = "Expires"
          ~ enabled        = true -> false
        }
    }

Not sure why the auto-label action failed, don't think that's related to my changes:
Run<EMAIL_ADDRESS>  with:
    repo-token: ***
    configuration-path: .github/auto-label.yml
Error: HttpError: Resource not accessible by integration
Error: Resource not accessible by integration

@SweetOps thanks, this is a huge help!


About Update

Hello admin, @0x11DFE do u will update this version for cf? i see u ask about any nodejs lib that can bypass new challenge,  here is some lib updated
https://github.com/yarsky-tgz/scraper-http-client-request
https://github.com/zedd3v/hsolve
https://github.com/pguardiario/captchas
I THINK this lib can bypass new challenge iuam + hcaptcha, can be used it for your script?
Thank

"hSolve" is pretty slow and i have no idea what to do once the hcaptcha key is fetched.
"Captchas" is using selenium and requires a paid api key from 2captcha.
"scraper-http-client-request" needs improvements on its documentation i cannot understand how the api works.

"hSolve" is pretty slow and i have no idea what to do once the hcaptcha key is fetched.
"Captchas" is using selenium and requires a paid api key from 2captcha.
"scraper-http-client-request" needs improvements on its documentation i cannot understand how the api works.

If i pay you can u do it,using some lib for bypass hcaptcha, using 3rd party like anticaptcha?
Or do u know golang? i know some lib for golang that can bypass iuam and hcaptcha, also got a script but is compiled an use license, do u know if the script can reverse and remove license? I'll pay for help

In here i can only support you for our open source projects, i will not be doing beside private work.
No i have no knowledge in golang.


[ACS] add --ssh-key-file param with default

This checklist is used to make sure that common guidelines for a pull request are followed.
General Guidelines

[x] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

Command Guidelines

[x] Each command and parameter has a meaningful description.
[x] Each new command has a test.

(see Authoring Command Modules)

@rjtsdl,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

Fix #3410

Codecov Report

Merging #4383 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #4383      +/-   ##
==========================================
+ Coverage   69.02%   69.02%   +<.01%
==========================================
  Files         484      484
  Lines       31045    31047       +2
  Branches     4844     4844
==========================================
+ Hits        21428    21430       +2
  Misses       8040     8040
  Partials     1577     1577

Impacted Files
Coverage Δ

...e-cli-acs/azure/cli/command_modules/acs/_params.py
77.92% <100%> (+0.58%)
:arrow_up:

Continue to review full report at Codecov.

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

@troydai to review and help merge.


Error: building boost-python:x64-windows failed with: BUILD_FAILED

I've got following error message and i really don't have any ideas how to fix it...
PS C:\dev\vcpkg> .\vcpkg.exe install boost-python:x64-windows
Computing installation plan...
The following packages will be built and installed:
boost-python[core,python3]:x64-windows -> 1.80.0
Detecting compiler hash for triplet x64-windows...
Restored 0 package(s) from C:\Users\Макс\AppData\Local\vcpkg\archives in 399.5 us. Use --debug to see more details.
Installing 1/1 boost-python:x64-windows...
Building boost-python[core,python3]:x64-windows...
-- Using cached boostorg-python-boost-1.80.0.tar.gz.
-- Cleaning sources at C:/dev/vcpkg/buildtrees/boost-python/src/ost-1.80.0-64a3511b26.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source C:/dev/vcpkg/downloads/boostorg-python-boost-1.80.0.tar.gz
-- Using source at C:/dev/vcpkg/buildtrees/boost-python/src/ost-1.80.0-64a3511b26.clean
-- Found external ninja('1.10.2').
-- Getting CMake variables for x64-windows
-- Configuring x64-windows
-- Building x64-windows-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:129 (message):
Command failed: C:/dev/vcpkg/downloads/tools/cmake-3.24.0-windows/cmake-3.24.0-windows-i386/bin/cmake.exe --build . --config Debug --target install -- -v -j9
Working Directory: C:/dev/vcpkg/buildtrees/boost-python/x64-windows-dbg
See logs for more information:
C:\dev\vcpkg\buildtrees\boost-python\install-x64-windows-dbg-out.log
Call Stack (most recent call first):
installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_build.cmake:74 (vcpkg_execute_build_process)
installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_install.cmake:16 (vcpkg_cmake_build)
installed/x64-windows/share/boost-build/boost-modular-build.cmake:136 (vcpkg_cmake_install)
ports/boost-python/portfile.cmake:12 (boost_modular_build)
scripts/ports.cmake:147 (include)
error: building boost-python:x64-windows failed with: BUILD_FAILED
error: Please ensure you're using the latest port files with git pull and vcpkg update.
Then check for known issues at:
https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+boost-python
You can submit a new issue at:
https://github.com/microsoft/vcpkg/issues/new?template=report-package-build-failure.md&title=[boost-python]+Build+error
Include '[boost-python] Build error' in your bug report title, the following version information in your bug description, and attach any relevant failure logs from above.
vcpkg-tool version: 2022-09-20-522aa94e9d261c7d7b2f079bf2591ca62df5c714
vcpkg-scripts version: 8e8a3d7c1 2022-09-25 (11 hours ago)

Please provide C:\dev\vcpkg\buildtrees\boost-python\install-x64-windows-dbg-out.log first.

I have already solve problem after open that file, thx

it was cause of cyrillic symbols in my python's interpreter's directory

I have already solve problem after open that file, thx

Hi Im having the same problem, would you be able to tell me what you did to fix it?


net.LookupTXT bug

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go version go1.11 linux/amd64
Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
linux, ubantu
What did you do?
Previously(go version go1.10.4) worked net.LookupTXT function gives wrong and different result but the difference cannot be found in any release announcements.
The runnable code is below
package main

import (
	"fmt"
	"net"
)

func main() {
	result, err := net.LookupTXT("stanford.edu")
	if err != nil {
		panic(err)
	}
	for i, txt := range result {
		fmt.Printf("result[%2d]: %s\n", i, txt)
	}
}

or you can find it on https://play.golang.org/p/-HtW1Zn3gFN.
It is not runnable on playground because it tries DNS lookups. It is just a place to share the code.
What did you expect to see?
It expect to see (go version 1.10.4 result, correct result)

result[ 0]: blitz=mu-0e24b17b-23dce65a-c0b14b75-e742cd66
result[ 1]: bwZknJMLNV1XuaJAyUmKlAFrdZo+p5yDlTNACmDUWhgtyihfJc8oWMnK7hWLreN+ozU3mX91yHHzZx0adJPPPg==
result[ 2]: firebase=cartalab
result[ 3]: v=spf1 ip4:<IP_ADDRESS>/27 ip4:<IP_ADDRESS>/28 ip4:<IP_ADDRESS>/27 ip4:<IP_ADDRESS>/28 ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS>/28 include:_spf.google.com include:_spf.qualtrics.com include:icpbounce.com ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ?all
result[ 4]: globalsign-domain-verification=IKP42b_14E6c1gUHTYKgXqj3o5aasL2hd9ECM1tSJP
result[ 5]: htBOpqv5il135Xfa09GRiVHY09Xb9qXNj6o5lAfj8gNoBvyyGu5rSb4gvSj9lCUwY1NF0+wL2BO1ZDIcGIpADQ==
result[ 6]: google-site-verification=UE66cfsA35PT37pENcs3Sho_gWa6UFC015Iudr6JU7I

When digging the DNS,

$ dig txt stanford.edu

Record(correct answer from DNS lookups) shows:

; <<>> DiG 9.11.2-P1-1ubuntu5-Ubuntu <<>> txt stanford.edu
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30787
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 7, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;stanford.edu.			IN	TXT

;; ANSWER SECTION:
stanford.edu.		1800	IN	TXT	"globalsign-domain-verification=IKP42b_14E6c1gUHTYKgXqj3o5aasL2hd9ECM1tSJP"
stanford.edu.		1800	IN	TXT	"v=spf1 ip4:<IP_ADDRESS>/27 ip4:<IP_ADDRESS>/28 ip4:<IP_ADDRESS>/27 ip4:<IP_ADDRESS>/28 ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS>/28 " "include:_spf.google.com include:_spf.qualtrics.com include:icpbounce.com ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ?all"
stanford.edu.		1800	IN	TXT	"firebase=cartalab"
stanford.edu.		1800	IN	TXT	"bwZknJMLNV1XuaJAyUmKlAFrdZo+p5yDlTNACmDUWhgtyihfJc8oWMnK7hWLreN+ozU3mX91yHHzZx0adJPPPg=="
stanford.edu.		1800	IN	TXT	"htBOpqv5il135Xfa09GRiVHY09Xb9qXNj6o5lAfj8gNoBvyyGu5rSb4gvSj9lCUwY1NF0+wL2BO1ZDIcGIpADQ=="
stanford.edu.		1800	IN	TXT	"google-site-verification=UE66cfsA35PT37pENcs3Sho_gWa6UFC015Iudr6JU7I"
stanford.edu.		1800	IN	TXT	"blitz=mu-0e24b17b-23dce65a-c0b14b75-e742cd66"

;; Query time: 659 msec
;; SERVER: <IP_ADDRESS>#53(<IP_ADDRESS>)
;; WHEN: Wed Sep 19 17:19:35 EDT 2018
;; MSG SIZE  rcvd: 832

What did you see instead?
Instead I see the following as the output (go version 1.11 result)

result[ 0]: bwZknJMLNV1XuaJAyUmKlAFrdZo+p5yDlTNACmDUWhgtyihfJc8oWMnK7hWLreN+ozU3mX91yHHzZx0adJPPPg==
result[ 1]: firebase=cartalab
result[ 2]: blitz=mu-0e24b17b-23dce65a-c0b14b75-e742cd66
result[ 3]: htBOpqv5il135Xfa09GRiVHY09Xb9qXNj6o5lAfj8gNoBvyyGu5rSb4gvSj9lCUwY1NF0+wL2BO1ZDIcGIpADQ==
result[ 4]: v=spf1 ip4:<IP_ADDRESS>/27 ip4:<IP_ADDRESS>/28 ip4:<IP_ADDRESS>/27 ip4:<IP_ADDRESS>/28 ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ip4:<IP_ADDRESS>/28
result[ 5]: include:_spf.google.com include:_spf.qualtrics.com include:icpbounce.com ip4:<IP_ADDRESS> ip4:<IP_ADDRESS> ?all
result[ 6]: globalsign-domain-verification=IKP42b_14E6c1gUHTYKgXqj3o5aasL2hd9ECM1tSJP
result[ 7]: google-site-verification=UE66cfsA35PT37pENcs3Sho_gWa6UFC015Iudr6JU7I

The result 4 and 5 should be conbined to one record.
This bug is the same as the test failure in the release build log:

--- FAIL: TestLookupLongTXT (0.01s)
lookup_test.go:342: LookupTXT golang.rsc.io incorrect
have ["gophers rule"]
want ["abcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHJIKLMNOPQRSTUVWXY" "gophers rule"]
FAIL
FAIL	net	10.402s

This bug is not only for spf records, DKIM selectors using multiple strings in one record also shows the same problem. Take Facebook selector as example:
code shows

result[ 0]: k=rsa; t=s; h=sha256; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDAUemE56fSDRo+H9Cu8u0uEIOXKON0YbB5A10wuWvNc7bUFIjL0tiUIzhktZjhAXc
result[ 1]: 5CWw2/TZnTZaLZtmtJ2MRfd2e+ty7LylkRAiZUWaT3dcDGVVibWn27DIz3+oCnbL7CFiLzxCZnxHx8B7BC/UM7UCCJMrAgaJWJR6tYwz0MwIDAQAB

Same here the two result combined is the correct record. They are not separate.
Reference: https://tools.ietf.org/html/rfc1464
Related issues: https://github.com/golang/go/issues/21472, https://github.com/golang/go/issues/22857

The code change I found related to this issue is
https://github.com/golang/go/commit/672729ebbd15e0b0dfac1ba22e35e92557215e1a
if the the code change in lookupTXT is reverted, this issue should be solved.

/cc @mikioh

The issue is multiple strings in one TXT record. The TXT record is one or more character strings, which a one-byte length followed by that number of bytes as the string. There is a long discussion in #10482 about multiple strings in a TXT record. Windows native resolver gave two strings in one TXT record as two TXT records.
I looked back in go1.7.6 and 2+ strings in one TXT records were simply concatenated. The dnsmessage parser, for a single TXTResource, returns a slice of strings. lookupTXT appends the slice. So 7 TXT records with 8 total TXT strings is returned as 8 strings.
The fix to replicate previous behavior is trivial. lookupTXT needs to concatenate the txt.TXT strings slice and then add that string to the returned slice.

See also #21472.

@gopherbot please consider this for backport to 1.11, it's a regression.


import datasets issue for torchdrug in google colab

Greeting,
For the last 2 days, google Colab keep having Crash session issue when I run
from torchdrug import data, datasets
First, I ran
!pip3 install torch-scatter -f https://pytorch-geometric.com/whl/torch-1.8.0+cu102.html
output:
Looking in links: https://pytorch-geometric.com/whl/torch-1.8.0+cu102.html
Collecting torch-scatter
  Downloading torch_scatter-2.0.9.tar.gz (21 kB)
Building wheels for collected packages: torch-scatter
  Building wheel for torch-scatter (setup.py) ... done
  Created wheel for torch-scatter: filename=torch_scatter-2.0.9-cp37-cp37m-linux_x86_64.whl size=3225704 sha256=af55c39e4cc5b0f024e34ef802f54a6eb0d4ff22f08f8c49e3f3a00f63d2abf5
  Stored in directory: /root/.cache/pip/wheels/dd/57/a3/42ea193b77378ce634eb9454c9bc1e3163f3b482a35cdee4d1
Successfully built torch-scatter
Installing collected packages: torch-scatter
Successfully installed torch-scatter-2.0.9

Then I run to install torchdrug.:
!pip3 install torchdrug
Collecting torchdrug
  Downloading torchdrug-0.1.2.post1-py3-none-any.whl (191 kB)
     |████████████████████████████████| 191 kB 5.3 MB/s
Collecting rdkit-pypi
  Downloading rdkit_pypi-2021.9.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (20.4 MB)
     |████████████████████████████████| 20.4 MB 7.2 MB/s
Requirement already satisfied: numpy>=1.11 in /usr/local/lib/python3.7/dist-packages (from torchdrug) (1.21.5)
Requirement already satisfied: matplotlib in /usr/local/lib/python3.7/dist-packages (from torchdrug) (3.2.2)
Requirement already satisfied: tqdm in /usr/local/lib/python3.7/dist-packages (from torchdrug) (4.63.0)
Requirement already satisfied: jinja2 in /usr/local/lib/python3.7/dist-packages (from torchdrug) (2.11.3)
Requirement already satisfied: networkx in /usr/local/lib/python3.7/dist-packages (from torchdrug) (2.6.3)
Requirement already satisfied: torch>=1.4.0 in /usr/local/lib/python3.7/dist-packages (from torchdrug) (1.10.0+cu111)
Collecting ninja
  Downloading ninja-<IP_ADDRESS>-py2.py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl (108 kB)
     |████████████████████████████████| 108 kB 35.7 MB/s
Requirement already satisfied: torch-scatter>=1.4.0 in /usr/local/lib/python3.7/dist-packages (from torchdrug) (2.0.9)
Requirement already satisfied: decorator in /usr/local/lib/python3.7/dist-packages (from torchdrug) (4.4.2)
Requirement already satisfied: typing-extensions in /usr/local/lib/python3.7/dist-packages (from torch>=1.4.0->torchdrug) (<IP_ADDRESS>)
Requirement already satisfied: MarkupSafe>=0.23 in /usr/local/lib/python3.7/dist-packages (from jinja2->torchdrug) (2.0.1)
Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->torchdrug) (1.3.2)
Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.7/dist-packages (from matplotlib->torchdrug) (0.11.0)
Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->torchdrug) (2.8.2)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->torchdrug) (3.0.7)
Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.7/dist-packages (from python-dateutil>=2.1->matplotlib->torchdrug) (1.15.0)
Requirement already satisfied: Pillow in /usr/local/lib/python3.7/dist-packages (from rdkit-pypi->torchdrug) (7.1.2)
Installing collected packages: rdkit-pypi, ninja, torchdrug
Successfully installed ninja-<IP_ADDRESS> rdkit-pypi-2021.9.5 torchdrug-0.1.2.post1

Thirdly I ran
`from torchdrug import data,datasets', the session crashed.

This is the log

Thank you for your time.

Hi
Could you please check the installation procedure in https://colab.research.google.com/drive/1JEMiMvSBuqCuzzREYpviNZZRVOYsgivA?
It works fine on my colab.

it worked now, thank you


Has it support scale out the rack and recover data automatically?

#69 and #51 seem like dynomite doesn't support scale out the rack and recover data automatically. If I missed something let me know.

Right, for now dynomite is a query routing + replication system. It does not manipulate the dataset itself for rebalancing or warmup the backends, you should manage this part.

@wuyingfengsui we are working on automatic data reconciliation. However, as @mfouilleul said you can manage it manually with a side script, especially given the latest consistency feature. We will also be glad to accept any patch or script that assists towards this effort.

It could be a good idea to share this kind of scripts. Do you know if the stat commands writes_only, resuming are still used?
Max.

@mfouilleul yes it is there: https://github.com/Netflix/dynomite/blob/master/src/dyn_stats.c#L1130-L1132

@wuyingfengsui you can manually add a node by doing these:
1-pick a position or range in ring between 2 nodes to add a new node
2-That data range should be owned by left node (if I remember correctly or otherwise it is the right node)
3-Take a Redis dump from that left node and copy this data to the new node
4-Fix dynomite config file and start dynomite on the new node and the left node with "-x 1" option
5-For each key for the data set, use this script
https://github.com/Netflix/dynomite/blob/master/scripts/dyn_redis_test.py
to send a write request for that key.  With "-x 1" option, Dynomite will remove any key and its data out of
its local Redis if the key does not fall into its range.
6- Restart Dynomite processes on those 2 nodes without "-x 1" option.
This process requires some downtime and manual steps.  In addition, you can play with stat commands writes_only command as @mfouilleul mentioned to temporarily storing incoming writes during the maintaining time before flushing them out to Redis from Dynomite.
We are still working on a better way to automate this.

Thank you. Looking forward these new features.

@ipapapa about stat commands, I saw them in the code but it does not seems to have any impact on my instance:
root@dyno1:~# dynomite --version
This is dynomite-0.5.3
```

```
root@dyno1:~# redis-cli -p 8102
<IP_ADDRESS>:8102> set test mytest
OK
<IP_ADDRESS>:8102> get test
"mytest"
```

```root@dyno1:~# curl http://<IP_ADDRESS>:22222/state/standby
OK
root@dyno1:~# redis-cli -p 8102 get test
"mytest"
root@dyno1:~# redis-cli -p 8102 set test mytest2
OK
```

May I doing something wrong?

Max.

Ok, i found why.
It does not work with <IP_ADDRESS>
root@dyno1:~# curl http://dyno1:22222/state/standby
OK
root@dyno1:~# redis-cli -p 8102 get test
(error) ERR Peer: Resource temporarily unavailable

root@dyno1:~# curl http://dyno1:22222/state/normal
OK
root@dyno1:~# redis-cli -p 8102 get test
"mytest2"

@mfouilleul seems the issue has been resolved. I will close this issue and reopen if needed.


Design: Landing page with FAQ

Recreating https://github.com/mdn/browser-compat-data/issues/5164 which was created in the wrong repo
Mock-ups:

InVision prototype

Acceptance criteria:

[ ] Developer sign-off: "all required information for engineering to implement solution are documented"
[x] Kadir sign-off: "all business and user needs have been considered"
[x] Legal sign-off: "all required legal information is included"
[x] User tested: "simple user-tests have been conducted to ensure users will be able to navigate"
[x] Mock-ups are uploaded on Abstract: "all necessary mock-ups and assets are uploaded"

@atopal @malqinneh This is marked as done in the spreadsheet. Are the first 2 AC satisfied?

Good to go on my end


Horizontal scroll with mouse wheel

Hi,
I use perfect-scrollbar to horizontally scroll my containers (I also forced disable of vertical scrolling using suppressScrollY:true option).
Is there a a way to enable mouse wheel to horizontally scroll these kind of boxes, so change default behaviour?

You can do it with the following option:
{
  suppressScrollY: true,
  useBothWheelAxes: true,
}


feat: Promise method on toast

Resolves #19

Hey @Hackerbone! I hope its okay if we work together on this. I have some things i would like to change/implement by myself real quick!


Remove the original kubernetes scripted deployment.

This was requested a while ago, since the newer installer can handle Kubernetes reasonably well.
Some of the scripts and templates will be useful if we target another stack (eg: mesos) in the future, to get it working quickly. When that happens, it can be grabbed from an older commit/tag.
There's also a number of branches and PRs that can be cleaned up after removing this chunk.

This removes a whole lot of documentation. Is none of it needed anymore?

Most of it is outdated, not matching how things currently work.
Some new documentation should be written for that, and added to https://github.com/romana/romana/blob/master/kubernetes_romana.md or a separate page explaining the components that integrate with kubernetes.

Looks good.


Where does pydantic name come from?

Question
Where does pydantic name come from?

You mean the word? From a corruption of "pedantic".


Remove unused crate proc-macro-error

The proc-macro-error crate is unmaintained1 and is causing cargo audit failures1. Since the create is not even used by rtic, just remove it as a dependency.

I realize that there is still a bunch of compilation issues left for this release branch. Is this change something that you are willing to take in and release for the v1 track? I just want to get confirmation of that before I spend too much time trying to fix things.

I think it's a good thing, and as there should be no functional change I don't see why not. The work you're doing is appreciated!


Help for understanding flutter scrollable

Hi everyone .
I was working with scrollables and viewports in flutter and i can't realize how the scrollable widget notified when the scrollPosition change and cause the viewport scroll offset change! (my question is about updating the drag not start and end)
I realized that this method timeline invokes when the user dragging (touch moves on screen) :
Scrollable::_handleUpdate ->
ScrollDragController::update ->
ScrollPositionWithSingleContext::applyUserOffset ->
ScrollPositionWithSingleContext::setPixels ->
ScrollPosition::setPixels
in ScrollPosition::setPixels i see that just bubble up the notification for NotificationListeners and notifyListeners for call the callback functions that registered.
there is no registered callback from scrollables and i recognize that by default only ScrollController::notifyListeners registered. which the scrollable widget even not listening to scroll controller class to be notified .
am i missing something ?
if not, how scrollable widget notifies when scrolled and rebuild itself to expose new scroll position to viewport.
sorry for my poor English.

@pooriana
Thanks for the report, but I think your question is better suited for support channels like StackOverflow or Flutter's discord channel where you can get the help.
This repo is essentially to track bugs and feature requests so I am going ahead and closing this.


transition to coinbase from coinbasepro

https://www.coinbase.com/advanced-trade
https://help.coinbase.com/en/coinbase/trading-and-funding/advanced-trade/what-is-advanced-trade
since transferring from coinbase to coinbasepro (deposits, etc....) are restricted to coinbase only. will the api setup have to change? like url, and im pretty sure ill need to generate a new api key pair.

I am still using Coinbase Pro which works. I have no idea why Coinbase would promote Advanced Trade when it's not finished. They haven't even got the API working yet. When they get it working I will integrate it but just stick with Coinbase Pro for now.

k

Following the automatic transfer of my assets from Coinbase Pro to Coinbase a couple of months ago, I deleted my old Coinbase Pro API keys.  I have since generated new API keys from within Coinbase.  These API keys are paired with API secrets but not API passphrases.  I tried running pycryptobot using a 'coinbasepro.key' file containing one of these new API keys in the first line and its associated API secret in the second line (without any API passphrase in the third line) and using 'https://api.pro.coinbase.com' as the URL, but I receive the following error:
TypeError: Coinbase Pro API key is invalid
If I understand pycryptobot correctly this is due to the API key I have provided not passing the API key syntax check within coinbase_pro_parser.py.  Is there an easy workaround?  Or, am I not able to use these new Coinbase API keys with the old Coinbase Pro API URL?

I've just created a new API key for Coinbase Pro and it definitely still provides the passphrase. When you create an API key on Coinbase Pro you will see the passphrase on the first page, you will then get your secret, and if you look at the key created you will get the key. You should have three parts but make sure they have the correct permissions to be able to View and Trade.
I don't think there is anything wrong in the bot code as I use Coinbase Pro and it works fine for me. You must have an issue with generating your keys and adding it to the coinbasepro.key file.

Thanks so much for the prompt reply.  Maybe I'm confused about something, are we able to use API keys generated on Coinbase Pro to authenticate requests to manage funds in a Coinbase (not Coinbase Pro) wallet?  Or do you mean you are still using the Coinbase Pro API to manage funds in your Coinbase Pro wallet?  Because the folks at Coinbase migrated my funds from my Coinbase Pro wallet to my regular Coinbase wallet, I assumed they had already taken Coinbase Pro offline.

No, there are totally different. I have been looking at getting Coinbase Advanced Trade working but their API is not ready or not very good. I would use Coinbase Pro for the time being.


ChainedProxy - Unable to see the GET requests for HTTPS requests

While I understand that the response filters will work for HTTPS requests only when MITM is enabled, and ChainedProxy & MITM are mutually exclusive, I am still unable to see the request filters being executed even for the GET requests of HTTPS requests.
When ChainedProxy is enabled and HTTPS request is made from the browser, only the CONNECT request is visible in the filters, and the following GET requests are being masked. My current understanding from the source code (initilizeConnectionFlow and StartTunneling ConnectionFlowStep) and the logs is that this is happening because of TUNNELING which is being forced in case of ChainedProxy mode.
My requirement is to capture the complete requests and responses for HTTPS requests in ChainedProxy mode. However, I would be glad if I can capture all the requests ( CONNECT + GET) going through the proxy, at least.
Logs:
12969  2015-05-06 11:59:18,020 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL): Configuring ChannelPipeline
13002  2015-05-06 11:59:18,053 DEBUG [LittleProxy-ClientToProxyWorker-0] util.ResourceLeakDetector (?:?).?() - -Dio.netty.leakDetectionLevel: simple
13007  2015-05-06 11:59:18,058 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL): Created ClientToProxyConnection
13008  2015-05-06 11:59:18,059 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Connected
13021  2015-05-06 11:59:18,072 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Reading: DefaultHttpRequest, decodeResult: success)
CONNECT localhost:443 HTTP/1.1
Host: localhost
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36
13022  2015-05-06 11:59:18,073 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Got request: DefaultHttpRequest, decodeResult: success)
CONNECT localhost:443 HTTP/1.1
Host: localhost
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36
20150506115918	Saiku Test Automation:ProxyServer	Thread: 14	Proxy Invoked - localhost:443
20150506115918	Saiku Test Automation:CustomHttpFiltersAdapter	Thread: 14	Request-Pre through proxy: localhost:443
20150506115918	Saiku Test Automation:CustomHttpFiltersAdapter	Thread: 14	Request Host Header: localhost
13692  2015-05-06 11:59:18,743 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Ensuring that hostAndPort are available in localhost:443
13693  2015-05-06 11:59:18,744 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Finding ProxyToServerConnection for: localhost:443
13693  2015-05-06 11:59:18,744 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Not reusing existing ProxyToServerConnection because request is a CONNECT for: localhost:443
20150506115918	Saiku Test Automation:ProxyServer	Thread: 14	URI seen at lookupChainedProxies - localhost:443
13700  2015-05-06 11:59:18,751 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Modifying request headers for proxying
13700  2015-05-06 11:59:18,751 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Modifying request for proxy chaining
13700  2015-05-06 11:59:18,751 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Stripped host from uri: localhost:443    yielding: localhost:443
20150506115918	Saiku Test Automation:CustomHttpFiltersAdapter	Thread: 14	Request through proxy: localhost:443
13701  2015-05-06 11:59:18,752 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Writing request to ProxyToServerConnection
13701  2015-05-06 11:59:18,752 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (DISCONNECTED): Requested write of DefaultHttpRequest, decodeResult: success)
CONNECT localhost:443 HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36
Via: <IP_ADDRESS>.5.65
13701  2015-05-06 11:59:18,752 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (DISCONNECTED): Currently disconnected, connect and then write the message
13701  2015-05-06 11:59:18,752 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (DISCONNECTED): Starting new connection to: localhost/<IP_ADDRESS>:443
13702  2015-05-06 11:59:18,753 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Stopped reading
13702  2015-05-06 11:59:18,753 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (DISCONNECTED): Processing connection flow step: CONNECTING
13704  2015-05-06 11:59:18,755 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (CONNECTING): Connecting to server with TCP
13708  2015-05-06 11:59:18,759 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Reading: io.netty.handler.codec.http.LastHttpContent$1@231232bb
13708  2015-05-06 11:59:18,759 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Attempted to read from connection that's in the process of negotiating an HTTP CONNECT.  This is probably the LastHttpContent of a chunked CONNECT.
13712  2015-05-06 11:59:18,763 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ProxyToServerConnection (?:?).?() - (CONNECTING) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: ConnectionFlowStep succeeded
13713  2015-05-06 11:59:18,764 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ProxyToServerConnection (?:?).?() - (CONNECTING) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Processing connection flow step: NEGOTIATING_CONNECT
13713  2015-05-06 11:59:18,764 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ProxyToServerConnection (?:?).?() - (NEGOTIATING_CONNECT) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Connected
13714  2015-05-06 11:59:18,765 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ProxyToServerConnection (?:?).?() - (NEGOTIATING_CONNECT {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: ConnectionFlowStep succeeded
13714  2015-05-06 11:59:18,765 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Processing connection flow step: NEGOTIATING_CONNECT
13714  2015-05-06 11:59:18,765 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Responding with CONNECT successful
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: ConnectionFlowStep succeeded
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Processing connection flow step: NEGOTIATING_CONNECT
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: ConnectionFlowStep succeeded
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (NEGOTIATING_CONNECT {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Connection flow completed successfully: null
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Connection to server succeeded: localhost/<IP_ADDRESS>:443
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: All servers have finished attempting to connect, resuming reading from client.
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (NEGOTIATING_CONNECT {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Resumed reading
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Dropping initial request: DefaultHttpRequest, decodeResult: success)
CONNECT localhost:443 HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36
Via: <IP_ADDRESS>.5.65
13718  2015-05-06 11:59:18,769 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Reading: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 204, cap: 1024)
13719  2015-05-06 11:59:18,770 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Requested write of UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 204, cap: 1024)
13719  2015-05-06 11:59:18,770 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Retaining reference counted message
13719  2015-05-06 11:59:18,770 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Using existing connection to: localhost/<IP_ADDRESS>:443
13719  2015-05-06 11:59:18,770 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Writing: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 204, cap: 1024)
13720  2015-05-06 11:59:18,771 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Wrote: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 204, cap: 1024)
13724  2015-05-06 11:59:18,775 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Reading: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 1024, cap: 1024)
13724  2015-05-06 11:59:18,775 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Retaining reference counted message
13724  2015-05-06 11:59:18,775 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Writing: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 1024, cap: 1024)
13724  2015-05-06 11:59:18,775 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Wrote: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 1024, cap: 1024)
13725  2015-05-06 11:59:18,776 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Reading: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 109, cap: 1024)
13725  2015-05-06 11:59:18,776 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Retaining reference counted message
13725  2015-05-06 11:59:18,776 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Writing: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 109, cap: 1024)
13726  2015-05-06 11:59:18,777 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Wrote: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 109, cap: 1024)
13730  2015-05-06 11:59:18,781 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Reading: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 126, cap: 512)
13730  2015-05-06 11:59:18,781 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Requested write of UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 126, cap: 512)
13730  2015-05-06 11:59:18,781 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Retaining reference counted message
13730  2015-05-06 11:59:18,781 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Using existing connection to: localhost/<IP_ADDRESS>:443
13730  2015-05-06 11:59:18,781 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Writing: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 126, cap: 512)
13730  2015-05-06 11:59:18,781 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Wrote: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 126, cap: 512)
13732  2015-05-06 11:59:18,783 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Reading: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 274, cap: 16384)
13732  2015-05-06 11:59:18,783 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Retaining reference counted message
13732  2015-05-06 11:59:18,783 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Writing: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 274, cap: 16384)
13732  2015-05-06 11:59:18,783 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Wrote: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 274, cap: 16384)
13734  2015-05-06 11:59:18,785 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Reading: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 382, cap: 512)
13734  2015-05-06 11:59:18,785 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Requested write of UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 382, cap: 512)
13734  2015-05-06 11:59:18,785 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Retaining reference counted message
13734  2015-05-06 11:59:18,785 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Using existing connection to: localhost/<IP_ADDRESS>:443
13734  2015-05-06 11:59:18,785 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Writing: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 382, cap: 512)
13734  2015-05-06 11:59:18,785 DEBUG [LittleProxy-ClientToProxyWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Wrote: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 382, cap: 512)
13735  2015-05-06 11:59:18,786 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ProxyToServerConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x2905752a, /<IP_ADDRESS>:34349 => localhost/<IP_ADDRESS>:443]: Reading: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 694, cap: 16384)
13735  2015-05-06 11:59:18,786 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Retaining reference counted message
13735  2015-05-06 11:59:18,786 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Writing: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 694, cap: 16384)
13735  2015-05-06 11:59:18,786 DEBUG [LittleProxy-ProxyToServerWorker-0] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL {tunneling}) [id: 0x5b581dcd, /<IP_ADDRESS>:53603 => /<IP_ADDRESS>:9992]: Wrote: UnpooledUnsafeDirectByteBuf(ridx: 0, widx: 694, cap: 16384)
13745  2015-05-06 11:59:18,796 DEBUG [LittleProxy-ClientToProxyWorker-1] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL): Configuring ChannelPipeline
13752  2015-05-06 11:59:18,803 DEBUG [LittleProxy-ClientToProxyWorker-1] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL): Created ClientToProxyConnection
13752  2015-05-06 11:59:18,803 DEBUG [LittleProxy-ClientToProxyWorker-1] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x46cd80d2, /<IP_ADDRESS>:53605 => /<IP_ADDRESS>:9992]: Connected
13753  2015-05-06 11:59:18,804 DEBUG [LittleProxy-ClientToProxyWorker-1] impl.ClientToProxyConnection (?:?).?() - (AWAITING_INITIAL) [id: 0x46cd80d2, /<IP_ADDRESS>:53605 => /<IP_ADDRESS>:9992]: Reading: DefaultHttpRequest, decodeResult: success)

This is the expected behavior -- MITM + Chained Proxy is not currently supported. Both request and response filters only work for HTTPS requests when MITM is enabled.

I can understand about the response filters not working without MITM. However, why would not request filters work for CONNECT and GET requests? Even when neither MITM nor ChainedProxy is enabled, request filter used to receive both CONNECT and GET requests.

Requests are encrypted, just like responses. MITM intercepts, decrypts, then re-encrypts both requests and responses coming through the proxy. Without MITM, you will only see the initial HTTP CONNECT. Everything else is unintelligible to the proxy (by design, that is the point of encryption).

Hello all, please look at Aldo Cortesi http://corte.si/posts/code/mitmproxy/howitworks/index.html for a excellent description of proxy interception processes.

I'll go ahead and close this issue now that MITM+Chained Proxy is supported.


Envoy external dependency libcrypto

Hi,
Am trying to use the following library inside an envoy filter.
https://github.com/arun11299/cpp-jwt/tree/master
While I created a Bazel build file as follows.
cc_library(
    name = "cppjwt",
    hdrs = glob([
        "include/**/*.hpp",
        "include/**/*.h",
        "include/**/*.cc",
    ]),
    defines = ["CPPJWT_EXTERNAL"],
    includes = ["include"],
    visibility = ["//visibility:public"],
    deps = ["@boringssl//:ssl"]
)

The library contains a libcrypto dependency, it passes through compilation phase, but fails during linking phase with the below error.
ERROR: /source/source/exe/BUILD:23:1: Linking of rule '//source/exe:envoy-static' failed (Exit 1): envoy_cc_wrapper failed: error executing command
  (cd /build/tmp/_bazel_bazel/436badd4919a15958fa3800a4e21074a/execroot/ci && \
  exec env - \
    HOME=/tmp/fake_home \
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games \
    PWD=/proc/self/cwd \
    PYTHONUSERBASE=/tmp/fake_home \
  /build/tmp/_bazel_bazel/436badd4919a15958fa3800a4e21074a/external/local_config_cc/extra_tools/envoy_cc_wrapper -o bazel-out/k8-opt/bin/source/exe/envoy-static -pthread '-Wl,--hash-style=gnu' -static-libstdc++ -static-libgcc<EMAIL_ADDRESS>-pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread -pthread '-fuse-ld=gold' -Wl,-no-as-needed -Wl,-z,relro,-z,now -B/usr/bin -pass-exit-codes -Wl,--gc-sections<EMAIL_ADDRESS>external/com_github_arun11299_cppjwt/include/jwt/impl/algorithm.ipp:36: error: undefined reference to 'BIO_f_base64'
external/com_github_arun11299_cppjwt/include/jwt/impl/algorithm.ipp:36: error: undefined reference to 'BIO_f_base64'
external/com_github_arun11299_cppjwt/include/jwt/impl/algorithm.ipp:36: error: undefined reference to 'BIO_f_base64'
collect2: error: ld returned 1 exit status

Do I need to add anything more in the BUILD file or in some other location/bazel file.
Thanks

Looks like BIO_f_base64 is in openssl/bio.h. Have you tried adding something like:
    external_deps = [
        "ssl",
    ],

I doubt external_deps can be used out of the "envoy_cc_library" scope, with that I have already added this external dependency in my filter's BUILD
envoy_cc_library(
    name = "xyz_filter_lib",
    srcs = ["xyz_filter.cc"],
    hdrs = ["xyz_filter.h"],
    external_deps = [
        "ssl",
    ],
    deps = [
        "//include/envoy/http:filter_interface",
        ...
    ],
)

So I can't make the cppjwt.BUILD file as envoy_cc_library,it has to be plain cc_library. Just to re-iterate, it is failing during linking phase, if I have to directly include the libcrypto.a, how to approach that. I tried adding the following in the cppjwt.BUILD file, but that didn't work either.
linkopts = ["-L/usr/lib/x86_64-linux-gnu/","-lcrypto"]

If anyone is still interested, the use of BIO_f_base64 in cpp-jwt has been removed.


update to Angular 2.0.0

nothing special.
But I had to downgrade the  typescript compiler because 2.0.0 gave me
$ tsc --project . --declaration --outDir ./
   error TS5009: Cannot find the common subdirectory path for the input files.

on my Win7 machine with node v6.5.0

oops did not see this one :D

I think Angular2 is only supporting up to node 5.x.x as mentioned on their quickstart guide so you might want to downgrade and try again.

quickstart says  "v5.x.x or higher". not "up to". And I can't get it to compile with 5.9.1

But I don't really care if this builds on my machine, just take #108 then


support spawn process in a login-shell for non-windows platform

Add the ability to execute the jest command in a login shell, instead of the non-login/non-interactive shell, by expanding the ProjectWorkspace.shell config to allow a new LoginShell type. This feature is only supported for the non-windows platforms.
This is mainly to support the use case when the non-login/non-interactive env is not fully initialized, such as sometimes seen in vscode.
example ProjectWorkspace.shell:
{
  path: "/bin/bash",
  args: ["--login"],
}

When seeing this argument, instead of spawning the jestCommandLine directly with the "shell" option, we will spawn the login shell instead, then send jestCommandLine to the child process via stdin, followed by "exit".
Also, take the opportunity to migrate the changed files to typescript.
This is fully backward compatible, thus only bumping the minor version number.

@orta looks like you are busy. I will merge this in. We can reopen it if you have any concerns later.

@orta looks like you are busy. I will merge this in. We can reopen it if you have any concerns later.


add database access rule for the spark2_historyserver to the hiveserver

this fixes: spark2_historyserver startup fails in case it is on a different node that the hive2-metastore (or the hive-server itself)
Example error of the issue:
ps: Feel free to add another OR clause for the older (spark 1) historyserver
ps2: At some point we can refactor the multi or expression with a more comprehensive search/regex check (using a|b|...

Ok, fair enough and thanks! Strange that the hiveserver2 tries to connect directly to the db, probably just a library loading the hive-site.xml or something.
ps2: depends on the clarity, I try to stay away from regex if it makes the code less readable


(7380) Some critical error occurred (see log). Disabling the adapter

(7380) Hardware / Software version (KS01_V7.02) is not supported by this adapter! Please open an issue on GitHub.
Haas+Sohn Version: 1.0.2
Can you fix that problem, or do you need some more information?
Best Regards
FusionJR

I don't understand why it works again now. I deleted all devices again and restarted the adapter. Now it works

problem is back

Hey,
will fix this tomorrow.
Can you tell me the exact name of your oven model? Should be something like "HSP 6 PALLAZZA-III".
Best regards

Hey,
since this is an oven, I configured the adapter to terminate itself if an unknown hardware/software version is present.
However, each new combination can be unlocked.
The combination KS01_V7.02 is unlocked in this branch:
https://github.com/marvingrieger/ioBroker.pallazza/tarball/KS01_V7.02
Please install the adapter using this URL and test ...
... if the adapter works as expected
... if you're seeing messages in the log, saying that some states are missing (Message: "State XYZ does not exist")
If everything works as expected, I will merge the branch to the master.
Can you tell me, which oven you're using in particular?
Should be something like "HSP 6 PALLAZZA-III".
Best regards

Thanks for your reply and your support. I will test it and give you feedback. Sorry for beeing a bit late! Bets regar

My Oven:
HSP 2.17 Premium III
Software Version : V7.02

I have installed and tested your version 1.03.
Unfortunately the same error. I have attached the DebugLog. I hope you can do something with it. Best regards Fusion
LOG:

haassohn.0
2021-02-18 15:30:55.931
debug
(5045)  stateChange haassohn.0.device.meta.ts  {"val":2289,"ack":true,"ts":censored,"q":0,"from":"system.adapter.haassohn.0","user":"system.user.admin","lc":censored}

haassohn.0
2021-02-18 15:30:55.928
debug
(5045)  stateChange haassohn.0.info.terminated  {"val":true,"ack":true,"ts":censored,"q":0,"from":"system.adapter.haassohn.0","user":"system.user.admin","lc":censored}

haassohn.0
2021-02-18 15:30:55.925
debug
(5045)  stateChange haassohn.0.info.connection  {"val":false,"ack":true,"ts":censored,"q":0,"from":"system.adapter.haassohn.0","user":"system.user.admin","lc":censored}

haassohn.0
2021-02-18 15:30:55.919
debug
(5045) Detected new state for device.meta.ts: 2289 (was: 2288)

haassohn.0
2021-02-18 15:30:55.918
error
(5045) Some critical error occurred (see log). Disabling the adapter

haassohn.0
2021-02-18 15:30:55.906
error
(5045) Hardware / Software version (KS01_V7.02) is not supported by this adapter! Please open an issue on GitHub.

haassohn.0
2021-02-18 15:30:55.895
debug
(5045) Syncing state ([object Object]) with path (meta) - false

haassohn.0
2021-02-18 15:30:55.893
debug
(5045) Syncing state ([object Object]) with path () - false

haassohn.0
2021-02-18 15:30:55.581
debug
(5045) Polling device

haassohn.0
2021-02-18 15:30:25.645
debug
(5045)  stateChange haassohn.0.device.is_temp  {"val":11.37,"ack":true,"ts":censored,"q":0,"from":"system.adapter.haassohn.0","user":"system.user.admin","lc":censored}

haassohn.0
2021-02-18 15:30:25.625
debug
(5045) Detected new state for device.is_temp: 11.37 (was: 11.3)

haassohn.0
2021-02-18 15:30:25.607
debug
(5045)  stateChange haassohn.0.device.meta.ts  {"val":2288,"ack":true,"ts":censored,"q":0,"from":"system.adapter.haassohn.0","user":"system.user.admin","lc":censored}

haassohn.0
2021-02-18 15:30:25.596
debug
(5045) Detected new state for device.meta.ts: 2288 (was: 2287)

haassohn.0
2021-02-18 15:30:25.596
debug
(5045) HSPIN: censored

haassohn.0
2021-02-18 15:30:25.569
debug
(5045) Syncing state ([object Object]) with path (meta) - false

haassohn.0
2021-02-18 15:30:25.568
debug
(5045) Syncing state ([object Object]) with path () - false

haassohn.0
2021-02-18 15:30:25.267
debug
(5045) Polling device

haassohn.0
2021-02-18 15:30:25.266
debug
(5045) HPIN: censored

haassohn.0
2021-02-18 15:30:25.215
info
(5045) starting. Version 1.0.3 in /opt/iobroker/node_modules/iobroker.haassohn, node: v14.15.3, js-controller: 3.1.6

Hello,
I refactored the unlocking of new versions a little bit, please try again.
However, I should have worked in the first place.
Please make sure, that the adapter is installed correctly.
In particular: Delete the old one first and push upload:

If the error still exists, please upload the debug log again.
Best regards

Please make sure, that the adapter is installed correctly.
In particular: Delete the old one first and push upload:

That was the reason. Thanks! Now it works in version 1.0.3 for me fine. Hers the Log:

haassohn.0
2021-02-18 22:54:47.383
debug
(13162)  stateChange haassohn.0.device.is_temp  {"val":8,"ack":true,"ts":censored,"q":0,"from":"system.adapter.haassohn.0","user":"system.user.admin","lc":censored}

haassohn.0
2021-02-18 22:54:47.380
debug
(13162)  stateChange haassohn.0.device.meta.ts  {"val":2492,"ack":true,"ts":1613685287372,"q":0,"from":"system.adapter.haassohn.0","user":"system.user.admin","lc":censored}

haassohn.0
2021-02-18 22:54:47.370
debug
(13162) Detected new state for device.is_temp: 8 (was: 7.93)

haassohn.0
2021-02-18 22:54:47.368
debug
(13162) Detected new state for device.meta.ts: 2492 (was: 2491)

haassohn.0
2021-02-18 22:54:47.275
debug
(13162) Hardware / Software version is supported by this adapter! Please open an issue on GitHub.

haassohn.0
2021-02-18 22:54:47.271
debug
(13162) Syncing state ([object Object]) with path (meta) - false

haassohn.0
2021-02-18 22:54:47.271
debug
(13162) Syncing state ([object Object]) with path () - false

haassohn.0
2021-02-18 22:54:46.962
debug
(13162) Polling device

Merged to master


Add human_file_size

Codecov Report
Attention: 1 lines in your changes are missing coverage. Please review.

Files
Coverage Δ

src/pandasx/utils/path.py
100.00% <100.00%> (ø)

src/pandasx/utils/format.py
87.50% <87.50%> (ø)

:loudspeaker: Thoughts on this report? Let us know!.


test-cases: Run Example tests

If there are Example...() tests defined run them in test-cases.
Fixes: #1379
Signed-off-by: Rob Bradford<EMAIL_ADDRESS>

@markdryan good bug!

@markdryan thoughts on what to do? go test won't run those tests due to the requirements you told me about today (e.g. the comment.)

Yeah, I saw this.  We'd need to look at the go test code to figure out how it decides not to run them.  Or we could do a hack an ignore NOT RUN errors for examples.

@markdryan I addressed this by using the go/doc package as a per go test.

Coverage decreased (-0.004%) to 65.926% when pulling ea931ac8f9631607b69df43abf0ed002faf58ca6 on rbradford:test-cases-examples into d54c5a72f375f5f7250407b47c9ca23ec7e3ace8 on ciao-project:master.

Coverage increased (+0.004%) to 65.591% when pulling 06b2afb8d998b841f2c1aa8588af740dcb8c69a6 on rbradford:test-cases-examples into 5685a747fa29166bcaecd976d17dde56dbb33f3a on ciao-project:master.

Coverage increased (+0.004%) to 65.591% when pulling 06b2afb8d998b841f2c1aa8588af740dcb8c69a6 on rbradford:test-cases-examples into 5685a747fa29166bcaecd976d17dde56dbb33f3a on ciao-project:master.


Opening a photo that doesn’t have same height and width will make it shrink

It’s a weird but that when we open a post with a photo, instead of just being there staying fixed, it shrinks fast.

less than 3 seconds between those two screenshots

Solved it @dimdenGD Thank you, closing it !

This issue is still happening in the lastest version.

refresh the page, it has happened to me too but I don’t know why I did refresh and everything was fine. Could you try it again ? Otherwise I re open the bug report


Amalgamation for android arm64 was built successfully but failed to run in device

Environment info
Operating System: Arch Linux (build host)
Targeting Device: Android 7.0 with arm64-v8a CPU
Compiler:

Android toolchain produced from python make_standalone_toolchain.py --arch arm64 --install-dir /tmp/my-android-toolchain --stl=libc++
Latest NDK (15.2) & NDK 14, both run failed with same error
export CC=aarch64-linux-android-clang
export CXX=aarch64-linux-android-clang++

MXNet version: installed from source:
MXNet commit hash (git rev-parse HEAD):8a4221bca2ddd4fa05840f7951a7216775021237
Error Message:
When try to run on device, following exception was thrown.
Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_ZTVN4dmlc2io23IndexedRecordIOSplitterE" referenced by "/data/app/com.test.face-2/lib/arm64/libmxnet_predict.so"...
                                                                                at java.lang.Runtime.loadLibrary0(Runtime.java:994)
                                                                                at java.lang.System.loadLibrary(System.java:1533)
                                                                                at org.dmlc.mxnet.Predictor.<clinit>(Predictor.java:28)

What have you tried to solve it?

with c++fit it shows as below:

% c++filt _ZTVN4dmlc2io23IndexedRecordIOSplitterE
vtable for dmlc::io::IndexedRecordIOSplitter

Want to know if anybody have succeeded in building the arm64 arch for android with latest source. Thanks in advance.

@larroy

And i checked the so, the symbol is indeeded undefined:
% nm libmxnet_predict.so | grep _ZTVN4dmlc2io23IndexedRecordIOSplitterE
         U _ZTVN4dmlc2io23IndexedRecordIOSplitterE

Please have a look at this PR:
https://github.com/apache/incubator-mxnet/pull/7792
I added an Android arm64 build file:
Dockerfile.build.android.arm64

just with following code at android side.
static {
        System.loadLibrary("mxnet_predict");
    }

Now as i checked, it's all because the generated mxnet_predict-all.cc really misses some method definitions, it compiles but fails at runtime, as I added the missed definitions several times, I could load the mxnet_predict so successfully.
Agree with you, amalgamation might be out of dated, and cross platform builds should be better, I will take some time tomorrow to try your dockerfile android arm64 build, hope it will works.
thanks for your helpful info -:)

@zhenglaizhang can you share the code of the project?

@larroy Hi,sorry for late response, thanks for the help, with the help from other thread, #4783 i added missing header files and built the so successfully.
And I tried the cross build docker, and found the built so was so large, around 30M if i remember correctly, and I couldn't run that successfully on android device.

@zhenglaizhang you have to also add indexedRecordIOSplitter into mxnet_predict0.cc

@novoleo yeah, you are right, that's what i did to solve the problem.

@zhenglaizhang i think this issue had been solved,can you close it?

Close as the issue was resolved, thanks all for the help!


libs: add libuv async i/o library

Summary
From http://docs.libuv.org/en/v1.x/
"libuv is a multi-platform support library with a focus on asynchronous I/O. It was primarily developed for use by Node.js, but it’s also used by Luvit, Julia, pyuv, and others."
Initial port to NuttX with only basic features enabled (uv_loop_t, uv_poll_t, uv_async_t, uv_timer_t, uv_work_t).
Impact
None, disabled by default (CONFIG_LIBUV)
Testing
Follow instructions in libs/libuv/README.txt to setup the library then run "make menuconfig" to enable libuv features.
Fetch libuv source code
git clone https://github.com/libuv/libuv.git -b v1.38.1 --depth=1 libs/libuv/libuv
Apply patchs
cd libs/libuv/libuv
git am ../000*.patch
Import headers in NuttX
cd ../../../
cp -r libs/libuv/libuv/include/* include/

@spiriou it's better to put the 3rd party userspace library to apps folder, here is the related discussion:
https://lists.apache.org/thread.html/rbb2b62b8e7f9fd65fe6404134abec5cd7463f771fac58915a2816283%40<dev.nuttx.apache.org>

And it's better to auto download the code and apply the patch, like this:
https://github.com/apache/incubator-nuttx/blob/master/openamp/libmetal.defs#L77

@xiaoxiang781216  It does make sense to move this to app folder. But there is no example of thirdparty library integration in NuttX. What would be the best solution to achieve this ? Can we create a "external" or "thirdparty" folder in apps repo ?
Another solution regarding this contribution is to submit NuttX support in libuv project.

@xiaoxiang781216 It does make sense to move this to app folder. But there is no example of thirdparty library integration in NuttX. What would be the best solution to achieve this ?

There are many examples in apps folder(e.g.):
https://github.com/apache/incubator-nuttx-apps/tree/master/graphics/lvgl
The only difference is that whether we put all external projects into the same folder or spread around the code base.

Can we create a "external" or "thirdparty" folder in apps repo ?
Yes, it could. Since external is used by many out of tree project, we may have to use thirdparty(or 3rdparty).

Another solution regarding this contribution is to try to submit NuttX support in libuv project.

Yes, it's better to upstream the change to the official project If the patch is general enough. But even the patch is accepted by the upstream, the donwload and Makefile/Kconfig may still be part of NuttX because it is NuttX specific.


rbd: fix parsing mapOptions

Describe what this PR does
Currently, we support
mapOption: "krbd:v1,v2,v3;nbd:v1,v2,v3"

By omitting krbd: or nbd:, the option(s) apply to
rbdDefaultMounter which is krbd.
A user can override the options for a mounter by specifying krbd:
or nbd:.
mapOption: "v1,v2,v3;nbd:v1,v2,v3"
is effectively the same as the 1st example.
Sections are split by ;.
If users want to specify common options for both krbd and nbd,
they should mention them twice.

But in case if the krbd or nbd specifc options contian : within them,
then the parsing is failing now.
E0301 10:19:13.615111 7348 utils.go:200] ID: 63 Req-ID:
0001-0009-rook-ceph-0000000000000001-fd37c41b-9948-11ec-ad32-0242ac110004
GRPC error: badly formatted map/unmap options:
"krbd:read_from_replica=localize,crush_location=zone:zone1;"
This patch fix the above case where the options itself contain :
delimitor
ex: krbd:v1,v2,v3=v31:v32;nbd:v1,v2,v3"
Is there anything that requires special attention
Please note, if you are using such options which contain : delimiter,
then it is mandatory to specify the mounter-type.
Signed-off-by: Prasanna Kumar Kalever<EMAIL_ADDRESS>Related issues
Fixes: #2910

Show available bot commands
These commands are normally not required, but in case of issues, leave any of
the following bot commands in an otherwise empty comment in this PR:

/retest ci/centos/<job-name>: retest the <job-name> after unrelated
failure (please report the failure too!)
/retest all: run this in case the CentOS CI failed to start/report any test
progress or results

/retest all

isnt it good to update this format or details in SC examples too  @pkalever ?


dependencies file

I'm looking for the package's dependency file.  This repo has both a requirements.txt and a environment.yml.  Since this repo is for examples, the natural assumption is that these files are needed to run examples.  If my assumption is correct, where can I find the package's dependencies?

Moved issue to https://github.com/IBM/snapml-docs/issues/29


Subclass type name contains invalid characters

While testing out GObject subclasses, I rather quickly got this error:
(process:29558): GLib-GObject-WARNING **: 15:40:37.670: type name 'Test::Object' contains invalid characters

(process:29558): GLib-CRITICAL **: 15:40:37.670: g_once_init_leave: assertion 'result != 0' failed

(process:29558): GLib-GObject-CRITICAL **: 15:40:37.670: g_object_newv: assertion 'G_TYPE_IS_OBJECT (object_type)' failed

(process:29558): GLib-GObject-CRITICAL **: 15:40:37.670: g_object_is_floating: assertion 'G_IS_OBJECT (object)' failed

(process:29558): GLib-GObject-CRITICAL **: 15:40:37.670: g_object_set_qdata: assertion 'G_IS_OBJECT (object)' failed

Code:
require "gtk4"

class Test::Object < GObject::Object
end

Test::Object.new

I assume colons are not allowed in GObject type names and need to be filtered out.

Closed by #30


Pass Repo to run_batch

To rotate requests among read replicas, the custom run_batch needs to be passed the repo set in the dataloader

Hi @cspeper This is an interesting idea but it can't be used as is. This would be a breaking change as everyone's existing functions would fail.
Please reopen when there are:

Correct formatting so that the CI can run
Tests
Correct handling for both 6 and 7 arity run_batch clauses.


showFields logic

If you have a select with three options that show fields you can't show the same field for two of those options and not the third.

See #677


MSID: 88810 Version: 2 DOI: 10.1101/2<IP_ADDRESS>5936

MSID: 88810
Version: 2
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>5936
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=88810
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>5936

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/88810v2
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>5936
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/88810/v2/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

Schematron:
error: Ref with id c2 has a year element with the value '11' which contains a digit (or more) but is not a year.

This is also missing from the meca bucket, @fred-atherden


How do we view Kapacitor logs in Chronograf?

URL for relevant page?
It is mentioned that we can view them in Chronograf:
https://docs.influxdata.com/chronograf/v1.4/administration/tickscript-logging/
but how can we actually see them? Perhaps add more instructions or details on the documentation?

Added to chrono-1.4.4 branch.


Gas current usage unavailable

Describe the bug
Gas current usage in kwh is missing from list of entities and meters now show as unavailable
Reproduction steps
Check list of entities
Expected behaviour
Usage in kwh should be showing
Tariff Code
SILVER-FLEX-22-11-25
Integration Version
Latest
Home Assistant Version
Latest
Fresh Install?
After upgrading
Home Assistant Logs
Na
Confirmation

[X] I confirm that I cannot find my solution within the documentation
[X] I confirm that I cannot find my solution within the FAQ

Have now rectified this issue myself.  The entities have been renamed with kwh being added to the name and the ID changed.

Hello. Glad you've managed to find the solution. This name change was highlighted in the changelogs of the updates.


missing restart policy in  boilerplates/docker-compose/prometheus/exporters/node_exporter/

a restart policy (restart: unless-stopped) is missing in the boilerplates/docker-compose/prometheus/exporters/node_exporter/docker-compose.yml file

it was missing in cadvisor, but thanks! I added it ;)


Include Basho/WebMachine 1.10.8

by way of opscoderl_wm master

+1 I'm assuming you'll bump reltool.config version when you bump the tag?


ValueError in Azure App Service

👋  Trying to run this on a Wagtail project in Azure App Service (containerised), I’m getting the following exception:
ValueError: '<IP_ADDRESS>:13250' does not appear to be an IPv4 or IPv6 address

Full stack trace:
[…]
  File "/usr/local/lib/python3.8/site-packages/baipw/middleware.py", line 18, in __call__
    response = self.process_request(request)
  File "/usr/local/lib/python3.8/site-packages/baipw/middleware.py", line 35, in process_request
    if self._is_ip_whitelisted(request):
  File "/usr/local/lib/python3.8/site-packages/baipw/middleware.py", line 128, in _is_ip_whitelisted
    ip_address = ipaddress.ip_address(self._get_client_ip(request))
  File "/usr/local/lib/python3.8/ipaddress.py", line 53, in ip_address
    raise ValueError('%r does not appear to be an IPv4 or IPv6 address' %
ValueError: '<IP_ADDRESS>:13250' does not appear to be an IPv4 or IPv6 address

This looks like it would be due to the port. It’s not too clear to me which HTTP header might contain it though. Here is my hacky workaround to remove the port:
Edit: removed as my workaround was only working locally when manually setting a few specific headers.
One-liner to try this out:
curl -I --header 'X-Forwarded-For: <IP_ADDRESS>:13250' http://localhost:8000/

Yep, I don't know if this should be part of this. package. It should not crash though! I have #9 to deal with it.

Superseded by #18.


Add dots to headers gpl3

Here we have: http://www.gnu.org/licenses/gpl.html
0. Definitions. in MD version — not 0. Definitions
sed -i 's/^\(###.*[^\.]\)$/\1./' gnu-gpl-v3.0.md

Actually, both of those formatting differences were made on purpose:
Uppercase main header
There are a few other licenses which also use uppercase letters, but were replaced with "title casing" when they were converted to Markdown. I believe that when the licenses were originally written, the use of uppercase was to show that the line was not a sentence, nor even a paragraph, but a title. If they had formatting to show that the line of text is a header (as we do in HTML and Markdown), I believe they would have used that, rather than use uppercase letters.
Periods in headers
I was taught that periods in headers are gramatically incorrect. I'm not sure why they used periods in the headers. My best guess is perhaps were common at the time and have fallen into disuse.

I'm going to close this issue, but if you have any counter-arguments or good reasons to keep the periods, let me know. I can always re-open the issue with the click of a button.
Also, hats off for using sed. I respect people who use scripts to automate tasks like that, rather than going through line by line editing things manually. see

Counter-arg is simple — origin has it and legally dot is matter. Your project entitled as "A collection of open source licenses in Markdown format."
Even comma matters:

Execute him we should not, pardon him!
Execute him, we should not pardon him!

So if Shakespeare has written something that is not in same style as another authors, publisher will not reformat it's style to be same.

commandlinefu.com is our Bible ))

Counter-arg is simple — origin has it and legally dot is matter. [...]

Good point.
But as a counter-counter-argument, legally, I would argue that the placement of the periods in those specific titles make no legal difference:
0. Definitions.
0. Definitions

1. Source Code.
1. Source Code

4. Conveying Verbatim Copies.
4. Conveying Verbatim Copies

And grammatically, the lines in question are not complete sentences, and therefore, have no reason to contain periods.

Are you a professional lawyer? Contact one regarding legal difference and the "origin" term.

Now I see — this commit is all that evil 4f71fa64205b62fe70d3bdf44e0cb405bf06b4fc