PVR support for BC formats.

Support both V2 and V3 files.
Make sure have test files and unit tests for all BC formats.

Cannot test V2 files. pvrtextool generates an error when saving a legacy pvr with DXTN.


Update Social Sharing Image for Repo

Note that I have a different file for this one that mentions game developers specifically,
Follow these instructions for this repo to add social sharing image - https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/customizing-your-repositorys-social-media-preview
Social image for github.

Done!


support for jumpout&jumpnext pairs

Is your feature request related to a problem? Please describe.
Used another autopairs plugin writen in vimscript for a long time, is it possiable support the same feature
Describe the solution you'd like
{ | } ... [ ]
--type C-n to jump out
{ } | ... [ ]
--type C-n to jump next
{ } ...[ | ]

This is another good visualization  of what is being asked for.
At least for me personally, I'd rather not install treesitter just to get this functionality.
In #125 , you mention that it might be possible since you export all the rules.  In #190, @noib3 makes a good point that the plugin could expose <Plug>autopairs-skip-closing and users could make their own mapping.  That could solve any anxiety about mapping keys in the plugin itself.
I guess I'm just trying to understand if it is not possible in this plugin, or if it's something you will not add.  No worries either way!  Nice work on this plugin!

the problem come from find a match pair if it place on different line and you need treesitter to do that.
if you want to just move a cursor to left you can create a normal mapping to do that or a rule if you want a to check condition.
i don't have a personal use case on that so i will not create that mapping plugautopairs-skip-closing

I used to use https://github.com/jiangmiao/auto-pairs which provides jumpout behavior like this:
Cursor starts here
 │
 │ if (someCondition) {
 └──►|
   }|◄──┐
        │
        │
        Type "}" to jump here

Is it possible to configure this plugin to achieve something similar? It's really intuitive to just close whatever pair you're in to jump out.

@tlindsay I managed to get nvim-autopairs to do this via a hack I mentioned in #147.
This is a slightly improved version of the code I posted there:
local nap = require('nvim-autopairs')
local rule = require('nvim-autopairs.rule')
local cond = require('nvim-autopairs.conds')
local utils = require('nvim-autopairs.utils')

local function multiline_close_jump(open, close)
    return rule(close, '')
        :with_pair(function()
            local row, col = utils.get_cursor()
            local line = utils.text_get_current_line()

            if #line ~= col then --not at EOL
                return false
            end

            local unclosed_count = 0
            for c in line:gmatch("[\\" .. open .. "\\" .. close .. "]") do
                if c == open then unclosed_count = unclosed_count + 1 end
                if unclosed_count > 0 and c == close then unclosed_count = unclosed_count - 1 end
            end
            if unclosed_count > 0 then return false end

            local nextrow = row + 1
            if nextrow < vim.api.nvim_buf_line_count(0)
                and vim.regex("^\\s*" .. close):match_line(0, nextrow) then
                return true
            end
            return false
        end)
        :with_move(cond.none())
        :with_cr(cond.none())
        :with_del(cond.none())
        :set_end_pair_length(0)
        :replace_endpair(function()
            return '<esc>xEa'
        end)
end

nap.add_rules {
    multiline_close_jump('(', ')'),
    multiline_close_jump('[', ']'),
    multiline_close_jump('{', '}'),
}

IIRC I fixed it preferring to jump over closing braces instead of inserting a closing brace when an unclosed opener exists within another set of braces.

Amazing! Thanks @Diomendius!

Trying your solution does it still work for you guys @tlindsay @Diomendius are there any other plugins I need as prerequisits I seem to keep getting error: E5113: Error while calling lua chunk: .../pack/packer/start/nvim-autopairs/lua/nvim-autopairs.lua:115: attempt to index field 'config' (a nil value).
After reading that is a indexing problem i tried nap.add_rule(multiline_close_jump('(', ')')), but it didin't help. Still getting

TLDR; does it still work?

I'd also like to suggest delete functionality, this is done in https://github.com/jiangmiao/auto-pairs
if (true) {| <-- Press backspace here.
}

Expected output:
if (true)

@vitek-borovsky it is not working for me either. This could be an issue with Neovim 0.8.

Not nearly as good a solution, but a simple mapping I've been using for a while that will essentially accomplish the same thing and works in 0.8 is:
vim.keymap.set("i", "<C-l>", "<esc>:exe 'norm! l%%'<CR>a", { silent = true })

It's always worked well within paragraphs for me with the two caveats being that you can't really jump between paragraphs easily and it's only one way (you can't jump backwards).

My take on this:
local function multiline_close_jump(open, close)
    return rule(close, "")
        :with_pair(function()
            local row, col = utils.get_cursor(0)
            local line = utils.text_get_current_line(0)

            if #line ~= col then --not at EOL
                return false
            end

            local unclosed_count = 0
            for c in line:gmatch("[\\" .. open .. "\\" .. close .. "]") do
                if c == open then unclosed_count = unclosed_count + 1 end
                if unclosed_count > 0 and c == close then unclosed_count = unclosed_count - 1 end
            end
            if unclosed_count > 0 then return false end

            local nextrow = row + 1

            if nextrow < vim.api.nvim_buf_line_count(0) and vim.regex("^\\s*" .. close):match_line(0, nextrow) then
                return true
            end
            return false
        end)
        :with_move(cond.none())
        :with_cr(cond.none())
        :with_del(cond.none())
        :set_end_pair_length(0)
        :replace_endpair(function(opts)
            local row, _col = utils.get_cursor(0)
            local action = vim.regex("^" .. close):match_line(0, row + 1) and "a" or ("0f%sa"):format(opts.char)
            return ("<esc>xj%s"):format(action)
        end)
end

@camilledejoye 's version almost works for me, but doesn't leave me in insert mode when the matching } is in the first column for some reason. E.g.:
local t = {
  y = {
    |
  }
}

works fine and results in
local t = {
  y = {
  }|
}

but pressing } again right away puts my cursor on the final } and leaves me in normal mode:
local t = {
  y = {
  }
}| -- Cursor here, but in Normal mode, not Insert

After playing around with different variations for replace_endpair return values, it seems to have something to do with using f{ while in the first column or something around there, because it's only an issue when the matching pair is the first character on the line afaict; even adding a space before it works properly.
My fix just checks if the first character on the line is the matching pair and runs <esc>a, otherwise does <esc>0f}a.
Also note that I don't have it delete blank lines inside the matching pairs as I use the blank line as a reminder to put something there later, so you'll need to change the string if you want to keep that.

To get back to the original question, I have put together this quick & dirty solution for using a single key to jump over multiple nested delimiters, though it only works in the single line case:
local check_next_delim = function(line, col)
  for _, rule in ipairs(npairs.get_buf_rules(vim.api.nvim_get_current_buf())) do
    if rule.start_pair then
      local delim = rule.end_pair
      if line:find(delim, col, true) == col then return delim end
    end
  end
end

local skip_delims = function()
  local col = vim.fn.col('.')
  local line = vim.fn.getline('.')

  local next_delim = check_next_delim(line, col)
  while next_delim do
    for _ = 1, vim.fn.strdisplaywidth(next_delim) do
      vim.fn.feedkeys(vim.api.nvim_replace_termcodes("<Right>", true, true, true))
    end

    col = col + #next_delim
    if col > #line then return end

    next_delim = check_next_delim(line, col)
  end
end

vim.keymap.set("i", "<Tab>", skip_delims)

+1 miss a LOT the fly mode.. that's so good
Any of these "fly mode" hack still work?
It seems this isn't working on latest nvim versions, I'm on v0.11.0-dev-301 and the fly mode isn't working. For me it's working only the standard nvim-autopairs behavior.
I guess meanwhile I'll stick with the old school vimL plugin.. tried these hack but for me it still lack the fly mode


Suggestion to add telemetry when sending 400 response code for invalid activity

Use this query to search for the most popular feature requests.
Is your feature request related to a problem? Please describe.
Currently, the SDK returns a 400 response code when the incoming activity is null or the activity type is empty. This is the piece of code being referred to. Since no trace is logged here, it's difficult to know if this piece of code actually caused the 400 result code.
Describe the solution you'd like
A trace indicating that we returned a 400 response here will make it easier while look at telemetry.
Describe alternatives you've considered
N/A
Additional context

@ninilang, can you indicate what information you need added in the message?


feat(helm-docs): autogenerate helm docs

ci: add helm-docs Jenkins test
Signed-off-by: Tiago Castro<EMAIL_ADDRESS>
chore: update values.yaml and update README
Add comments notation and tidy up some values.
Signed-off-by: Tiago Castro<EMAIL_ADDRESS>
feat(helm-docs): autogenerate helm docs
Add helm-docs to nix-shell.
Add template for generating the README.
Add script that generates the README.
Signed-off-by: Tiago Castro<EMAIL_ADDRESS>
chore(shell): add commitlinter as git pre-commit hook
Add the commitlinter as a pre-commit hook
Signed-off-by: Tiago Castro<EMAIL_ADDRESS>

bors try

bors cancel

bors try

Helm-docs in question is https://github.com/norwoodj/helm-docs.

Helm-docs in question is https://github.com/norwoodj/helm-docs v1.11.0

Yes it's that one but v1.8.1

bors merge

bors merge

bors cancel

bors merge


[gwctl] Add label filtering (-l) for get namespaces

Refer https://gateway-api.sigs.k8s.io/geps/gep-2722/ for details

Thanks for volunteering @yeedove! Please "/assign" to yourself

assign

/assign


Added feature to send actual data to existing Arduino Example (Send Message)

For this to work, the change made in MCreator Link Mod has to be accepted

And btw, from pure curiosity, because I'm quite new to GitHub and working with people, can You modify my code?
Cause a while ago You asked me to clean the code, like remove debug messages. And wouldn't be easier for You to do it yourself instead of asking me and then after another commit approving it?

And btw, from pure curiosity, because I'm quite new to GitHub and working with people, can You modify my code?
Cause a while ago You asked me to clean the code, like remove debug messages. And wouldn't be easier for You to do it yourself instead of asking me and then after another commit approving it?

Yes, I can. But the unspoken rule is PR author has to fix the code, so they learn how to make a better code in the future, and where improvements ca be made.

Thanks for information!


transaction aborted, when multiple requests at once

Knex CLI version: 0.21.1
Knex Local version: 0.21.5
mssql: 6.2.1
node: 14.0.0
This is my test  code:
import knex from 'knex'

const testDB = {
  client: 'mssql',
  connection: {
    host: 'localhost',
    user: process.env.DB_USER || 'username',
    password: process.env.DB_PASSWORD || 'password',
    database: process.env.DB_DBNAME_TEST || 'test',
    options: {
      enableArithAbort: true,
      encrypt: false,
    },
  },
  pool: { min: 2, max: 7 },
}
const db = knex(testDB)
const run = async () => {
  let newRequest = { priority: 'medium', status: 'NEW', categoryID: 1, title: 'test', requestID: String(Math.floor(Math.random() * 9999)), requestorID: 'test' }
  try {
    const request = await db.transaction(async (trx) => {
      await db('requests').insert(newRequest).transacting(trx)
      return await db('requests').select('requestID').first().orderBy('createdAt', 'desc').transacting(trx)
    })
    console.log(request)
  } catch (err) {
    console.log(err.message)
  }
}
run()

so i wanted to test knex tranasaction the hard way. Above code works when I execute it one buy one.
But when I spam it with 10 reuqests at once, only first 2 go through and rest gives error:
TransactionError: Transaction has been aborted.
    at Transaction._rollback (C:\Users\gbkwiatt\Desktop\Ticketing\ticketing-api-v2\node_modules\mssql\lib\base\transaction.js:237:37)
    at Transaction._rollback (C:\Users\gbkwiatt\Desktop\Ticketing\ticketing-api-v2\node_modules\mssql\lib\tedious\transaction.js:77:11)
    at C:\Users\gbkwiatt\Desktop\Ticketing\ticketing-api-v2\node_modules\mssql\lib\base\transaction.js:221:19
    at new Promise (<anonymous>)
    at Transaction.rollback (C:\Users\gbkwiatt\Desktop\Ticketing\ticketing-api-v2\node_modules\mssql\lib\base\transaction.js:220:12)
    at Transaction_MSSQL.rollback (C:\Users\gbkwiatt\Desktop\Ticketing\ticketing-api-v2\node_modules\knex\lib\dialects\mssql\transaction.js:28:21)
    at Function.transactor.rollback (C:\Users\gbkwiatt\Desktop\Ticketing\ticketing-api-v2\node_modules\knex\lib\transaction.js:278:42)
    at C:\Users\gbkwiatt\Desktop\Ticketing\ticketing-api-v2\node_modules\knex\lib\transaction.js:194:35
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

If I remove select statement, they all go through fine.

Please make that complete single file example. Now there is unnecessary parts of express stuff and your DB config is not shown. No node / driver versions told etc. The issue template and instructions are there for a reason.

In contributing.md and in https://stackoverflow.com/help/minimal-reproducible-example is more info what minimal reproducible code means.

Though.. could be that the database you are using does something strange with locking tables.

I have made update in my post. I know that when I have insert in transaction, that table is locked completely for everyone for the time of transaction.
I did some test previously about that, made delay in transaction and tried to execute it second time and it was just waiting for transaction to end and proceeding with second one. So therefore both requests went through. I was expecting something like this again here.

I have made update in my post.

Did you try to run that code?

I have made update in my post. I know that when I have insert in transaction, that table is locked completely for everyone for the time of transaction.

Could you check if you can recreate this behavior by taking multiple commandline connections  to your server and do in each connection:

start transaction
insert row to the table
select everything from the table
commit

Also you can try making that select statement to be just await db('requests').transcating(trx) to make reproduction simpler.

I've never actually used CLI with knex, how do I start connection in cli ?

I mean normal MSSQL commandline client app that has nothing to do with node.

I mean normal MSSQL commandline client app that has nothing to do with node.

oh okay, will try it now

I did some tests in pure mssql ( driver)
import sql from 'mssql'

const run = async () => {
  await sql.connect('mssql://user:pass@localhost/Ticketing_dev')
  for (let i = 0; i < 11; i++) {
    transactionFn()
  }
}
run()
const transactionFn = () => {
  console.log('Transacting: ')
  const transaction = new sql.Transaction()
  transaction.begin((err) => {
    if (err) {
      console.log(err.message)
      transaction.rollback((err) => {
        if (err) console.log(err.message)
      })
    }
    new sql.Request(transaction).query(
      `INSERT INTO [Ticketing_dev].[dbo].[alerts] ([name],[lastExecution],[interval],[createdBy],[createdAt])
    VALUES
      ('test'
      ,getdate()
      ,100
      ,'abc'
      ,getdate()
      )`,
      (err, result) => {
        // insert should fail because of invalid value
        if (err) {
          console.log(err)
          transaction.rollback((err) => {
            if (err) console.log(err.message)
          })
        } else {
          new sql.Request(transaction).query('select top 1 * from [Ticketing_dev].[dbo].[alerts] order by uiD desc', (err2, result2) => {
            if (err2) {
              console.log(err2.message)
              transaction.rollback((err) => {
                if (err) console.log(err.message)
              })
            } else {
              //console.log(result2)
              transaction.commit((err) => {
                console.log('commited: ')
                if (err) console.log(err.message)
              })
            }
          })
        }
      },
    )
  })
}

and that looks all fine, executes all at once, then quickly return commits, and all in database...

I think I got something: i put catch() on select query
    info: ErrorMessageToken {
      name: 'ERROR',
      event: 'errorMessage',
      number: 1205,
      state: 51,
      class: 13,
      message: 'Transaction (Process ID 57) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.',
      serverName: 'xxx\\LOCAL_DEV',
      procName: '',
      lineNumber: 1
    }

So it looks like it doesn't create new transaction but trying to reuse same one ?

So the issue is,  that in that loop, first are executed all inserts, locking the table to each transaction, and then all selects, waiting for other transactions to finish but they won't finish because they all wait for each other. deadlock ...
No question is, how to prevent such thing ?

ok I think I fixed the issue. I had to turn on Read_committed_snapshot in my database.
ALTER DATABASE "Ticketing_dev" SET READ_COMMITTED_SNAPSHOT ON;
But that solved only aborted transaction and dead lock.
After more testing I just realised, which stupidly I didn't know.
When in transaction I have insert, and then I also select from same table (with knex) it also has to be in transaction otherwie I get error  Knex: Timeout acquiring a connection. The pool is probably full. Are you missing a .transacting(trx) call?
Which was my original issue.

When in transaction I have insert, and then I also select from same table (with knex) it also has to be in transaction otherwie I get error Knex: Timeout acquiring a connection. The pool is probably full. Are you missing a .transacting(trx) call?
Which was my original issue.

In your example code there were in the same transaction I did check that as a first thing 🤔
    const request = await db.transaction(async (trx) => {
      await db('requests').insert(newRequest).transacting(trx)
      return await db('requests').select('requestID').first().orderBy('createdAt', 'desc').transacting(trx)
    })

both queries has .transacting(trx)

but that is most frequent reason for this error that one fills connection pool with transactions and then tries to run a query that is not in a transaction and resolving transaction stays waiting for that query.

yes but that cause dead locks in this example.  But my original problem was actually related to missing .transacting(trx), which was fine for one by one request, but when I started spamming it wasn't fine, so I started looking for a problem, came to that loop in example which caused transaction aborted error.
Yes seems like common problem in more complex queries, to be honest I don't like that transaction is locking whole table to everyone. But nothing I can do about it, that's pure mssql issue and transaction isolation.  Which would be nice to be able to change isolation level from knex, but I've seen that issue here already.


Merge main branch from upstream scancode.io

Signed-off-by: Philippe Ombredanne<EMAIL_ADDRESS>

This is to get the latest main and in particular the latest CHANGELOG so this can be updated.


Warning: Invalid argument supplied in foreach() for viewing Revisions on post

TO DO: Look into why warnings showing up on revisions history page on a custom post that has changes to addmany fields.
Warning:  Invalid argument supplied for foreach() in /Users/brittanyansay/Sites/achievement-first/html/wp-content/themes/taco-theme/app/core/vendor/tacowordpress2/tacowordpress/src/Post.php on line 542
I'm noticing the revisions printed appear to be working however the warning above appears the # of times the prettyPrintJSON function is iterating what I believe are the changes to addmany fields, but not sure until further assessment can be made.

Lol - Closing due to inactivity. Hope you all are well.


WARNING issues in HASS 2024.1 because of deprecations

Please check Services, Known Bug / Issues and Troubleshooting over here first: https://github.com/fuatakgun/kia_uvo/blob/master/README.md
Region and Brand of car
Europe Region / Santa Fe 2021
Version of the integration
HomeAssistant 2024.1
Describe the bug
Deprecation logs in HASS 2024.1
Debug logs if an error occurred
1)
Logger: homeassistant.components.device_tracker
Source: helpers/deprecation.py:204
Integration: Device tracker (documentation, issues)
First occurred: 13:54:22 (2 occurrences)
Last logged: 13:54:22
SOURCE_TYPE_GPS was used from kia_uvo, this is a deprecated constant which will be removed in HA Core 2025.1. Use SourceType.GPS instead, please create a bug report at https://github.com/fuatakgun/kia_uvo/issues
Outlined here: https://github.com/fuatakgun/kia_uvo/blob/master/README.md

Logger: homeassistant.const
Source: helpers/deprecation.py:204
First occurred: 13:54:22 (4 occurrences)
Last logged: 13:54:22
TIME_MINUTES was used from kia_uvo, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfTime.MINUTES instead, please create a bug report at https://github.com/fuatakgun/kia_uvo/issues
TIME_DAYS was used from kia_uvo, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfTime.DAYS instead, please create a bug report at https://github.com/fuatakgun/kia_uvo/issues
ENERGY_WATT_HOUR was used from kia_uvo, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfEnergy.WATT_HOUR instead, please create a bug report at https://github.com/fuatakgun/kia_uvo/issues
ENERGY_KILO_WATT_HOUR was used from kia_uvo, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfEnergy.KILO_WATT_HOUR instead, please create a bug report at https://github.com/fuatakgun/kia_uvo/issues

From what I saw, similar to #785

https://github.com/Hyundai-Kia-Connect/kia_uvo/pull/790 resolves this.


Evaluate error and logging opportunities of RPAf

As a user I would like to see where exactly my robot is failing when seeing that the instance crashed.

:white_check_mark:   Conditions of satisfaction

[ ] Should evaluate how logging works in the RPAf
[ ] Should check possibilities to return exactly what keyword failed even when chaining multiple of them behind each other without separating keywords/tags
[ ] Should draft follow-up user-stories for the PO to work upon

So far I have found the possibility to use listeners on our logs. See the docs here:

https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#listeners-logging
https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#programmatic-logging-apis
https://robot-framework.readthedocs.io/en/latest/autodoc/robot.api.html#module-robot.api.logger

When running a robot, we will always receive a output.xml, log.html and report.html. We could use the output.xml to return an overall pass or fail message but also to return the individual task that failed (only identifiable by Taskname).
These are output.xml converted to json from one passing and one failing run:
Failing run xml
Failing run xml

{
    "robot": {
        "generator": "Robot 4.0 (Python 3.9.0 on win32)",
        "generated": "20210426 14:40:24.750",
        "rpa": true,
        "schemaversion": 2,
        "suite": {
            "id": "s1",
            "name": "Ark Automate Superbot",
            "source": "C:\\Users\\Varia\\Ark Automate Superbot.robot",
            "test": {
                "id": "s1-t1",
                "name": "Excel.Files",
                "kw": [
                    {
                        "name": "Open Workbook",
                        "library": "RPA.Excel.Files",
                        "arg": "C:/Users/Varia/OneDrive/Desktop/demo.xlsx",
                        "doc": "Open an existing Excel workbook.",
                        "msg": {
                            "timestamp": "20210426 14:40:25.198",
                            "level": "INFO",
                            "text": "Opened workbook: "
                        },
                        "status": {
                            "status": "PASS",
                            "starttime": "20210426 14:40:25.182",
                            "endtime": "20210426 14:40:25.198"
                        }
                    },
                    {
                        "name": "Set Worksheet Value",
                        "library": "RPA.Excel.Files",
                        "arg": [
                            2,
                            2,
                            "EINS"
                        ],
                        "doc": "Set a cell value in the given worksheet.",
                        "status": {
                            "status": "PASS",
                            "starttime": "20210426 14:40:25.198",
                            "endtime": "20210426 14:40:25.198"
                        }
                    },
                    {
                        "name": "Set Worksheet Value",
                        "library": "RPA.Excel.Files",
                        "arg": "ZWEI",
                        "doc": "Set a cell value in the given worksheet.",
                        "msg": {
                            "timestamp": "20210426 14:40:25.198",
                            "level": "FAIL",
                            "text": "IndexError: 00 is not a valid coordinate or range"
                        },
                        "status": {
                            "status": "FAIL",
                            "starttime": "20210426 14:40:25.198",
                            "endtime": "20210426 14:40:25.198"
                        }
                    },
                    {
                        "name": "Set Worksheet Value",
                        "library": "RPA.Excel.Files",
                        "arg": [
                            2,
                            2,
                            "DREI"
                        ],
                        "doc": "Set a cell value in the given worksheet.",
                        "status": {
                            "status": "NOT RUN",
                            "starttime": "20210426 14:40:25.198",
                            "endtime": "20210426 14:40:25.198"
                        }
                    },
                    {
                        "name": "Save Workbook",
                        "library": "RPA.Excel.Files",
                        "arg": "C:/Users/Varia/OneDrive/Desktop/demo.xlsx",
                        "doc": "Save the active workbook.",
                        "status": {
                            "status": "NOT RUN",
                            "starttime": "20210426 14:40:25.198",
                            "endtime": "20210426 14:40:25.198"
                        }
                    }
                ],
                "status": {
                    "status": "FAIL",
                    "starttime": "20210426 14:40:25.182",
                    "endtime": "20210426 14:40:25.198",
                    "text": "IndexError: 00 is not a valid coordinate or range"
                }
            },
            "status": {
                "status": "FAIL",
                "starttime": "20210426 14:40:24.750",
                "endtime": "20210426 14:40:25.198"
            }
        },
        "statistics": {
            "total": {
                "stat": {
                    "pass": 0,
                    "fail": 1,
                    "skip": 0,
                    "text": "All Tasks"
                }
            },
            "tag": 0,
            "suite": {
                "stat": {
                    "pass": 0,
                    "fail": 1,
                    "skip": 0,
                    "id": "s1",
                    "name": "Ark Automate Superbot",
                    "text": "Ark Automate Superbot"
                }
            }
        },
        "errors": 0
    }
}

Passing run xml
Passing run xml

{
    "robot": {
        "generator": "Robot 4.0 (Python 3.9.0 on win32)",
        "generated": "20210426 14:39:34.719",
        "rpa": true,
        "schemaversion": 2,
        "suite": {
            "id": "s1",
            "name": "Ark Automate Superbot",
            "source": "C:\\Users\\Varia\\Ark Automate Superbot.robot",
            "test": {
                "id": "s1-t1",
                "name": "Excel.Files",
                "kw": [
                    {
                        "name": "Open Workbook",
                        "library": "RPA.Excel.Files",
                        "arg": "C:/Users/Varia/OneDrive/Desktop/demo.xlsx",
                        "doc": "Open an existing Excel workbook.",
                        "msg": {
                            "timestamp": "20210426 14:39:35.241",
                            "level": "INFO",
                            "text": "Opened workbook: "
                        },
                        "status": {
                            "status": "PASS",
                            "starttime": "20210426 14:39:35.235",
                            "endtime": "20210426 14:39:35.241"
                        }
                    },
                    {
                        "name": "Set Worksheet Value",
                        "library": "RPA.Excel.Files",
                        "arg": [
                            2,
                            2,
                            "EINS"
                        ],
                        "doc": "Set a cell value in the given worksheet.",
                        "status": {
                            "status": "PASS",
                            "starttime": "20210426 14:39:35.241",
                            "endtime": "20210426 14:39:35.242"
                        }
                    },
                    {
                        "name": "Set Worksheet Value",
                        "library": "RPA.Excel.Files",
                        "arg": [
                            2,
                            2,
                            "ZWEI"
                        ],
                        "doc": "Set a cell value in the given worksheet.",
                        "status": {
                            "status": "PASS",
                            "starttime": "20210426 14:39:35.242",
                            "endtime": "20210426 14:39:35.242"
                        }
                    },
                    {
                        "name": "Set Worksheet Value",
                        "library": "RPA.Excel.Files",
                        "arg": [
                            2,
                            2,
                            "DREI"
                        ],
                        "doc": "Set a cell value in the given worksheet.",
                        "status": {
                            "status": "PASS",
                            "starttime": "20210426 14:39:35.242",
                            "endtime": "20210426 14:39:35.243"
                        }
                    },
                    {
                        "name": "Save Workbook",
                        "library": "RPA.Excel.Files",
                        "arg": "C:/Users/Varia/OneDrive/Desktop/demo.xlsx",
                        "doc": "Save the active workbook.",
                        "status": {
                            "status": "PASS",
                            "starttime": "20210426 14:39:35.243",
                            "endtime": "20210426 14:39:35.249"
                        }
                    }
                ],
                "status": {
                    "status": "PASS",
                    "starttime": "20210426 14:39:35.235",
                    "endtime": "20210426 14:39:35.249"
                }
            },
            "status": {
                "status": "PASS",
                "starttime": "20210426 14:39:34.734",
                "endtime": "20210426 14:39:35.249"
            }
        },
        "statistics": {
            "total": {
                "stat": {
                    "pass": 1,
                    "fail": 0,
                    "skip": 0,
                    "text": "All Tasks"
                }
            },
            "tag": 0,
            "suite": {
                "stat": {
                    "pass": 1,
                    "fail": 0,
                    "skip": 0,
                    "id": "s1",
                    "name": "Ark Automate Superbot",
                    "text": "Ark Automate Superbot"
                }
            }
        },
        "errors": 0
    }
}

We could check robot.test.status.status for the status of the entire bot and iterate over the kw array to find the element that failed. We could even show which ssot activity is falsely configured by using the index of th failing element in the kw array and finding it in the ssot/robot code

User story ideas:

As a user I'd like to be able to see if my bot ran successfully in my robot cockpit.
For that we need: Local client adapted to send xml via socket io // read xml in backend and update robot job // robot job might need an error message // dispaly status of entir ebu trun in cockpit // backend should be able to find the failing rpafrmawork call and update the robot job with it // failing robotframwork call should be displayed in cockpit with error message


Power balance issues in results

I have had various weird things happen, but they generally boil down to a power balance problem (-Gen != Load)
This suggests possibly that there is no constraint on the sum of power at all terminals at a Net being equal to 0. I skimmed the documentation and didnt see this, but didnt look very hard.
Due not being able to reproduce with trivial examples, i created a way to export code from my conversion and i have attached an example. The solution to this example results in generators that are overproducing. I assume this is because the alpha, beta = 0. When i set them to 1,100, the solution also looks weird, because some of the units have a negative operating range.

More detail on demtest.py - all the generators here have zero cost, which is a little weird but should be okay.
When I run on my machine, everything looks fairly reasonable but there is an imbalance of 0.5673 on one of the nets which is strange, will investigate further.

Actually the imbalance was just a copy/paste error on my part (I copied the summary results into a spreadsheet so I could verify everything sums as expected)
It looks like everything is working as expected. If that is not the case, please reopen and add a script, your output and what you expect the output to be.


Timeout error while pusing docker image to registry

Timeout error has occured when I tried to push sample apps.

https://github.com/deis/helloworld
https://github.com/deis/example-dockerfile-python
https://github.com/deis/example-dockerfile-http

Other example apps without Dockefile are working well.

https://github.com/deis/example-go
https://github.com/deis/example-python-flask

Same error has happened after increase timeout setting.
$ deis config:set DEIS_DEPLOY_TIMEOUT=600
My Kubernetes cluster is working on AWS.

Deis v2.9.1
Kubernetes v1.5.1

create cluster using kops

Form console log, timeout error has happend while pushing docker image to registry.
How can I avoid this timeout error?
Is there any other point should I check?
Console output is the following.

$ deis create helloworld
Creating Application... done, created helloworld
Git remote deis successfully created for app helloworld.
$ git push deis master
Counting objects: 39, done.
Compressing objects: 100% (38/38), done.
Writing objects: 100% (39/39), 5.17 KiB | 0 bytes/s, done.
Total 39 (delta 12), reused 0 (delta 0)
Starting build... but first, coffee!
Step 1 : FROM debian:jessie
---> 19134a8202e7
Step 2 : RUN apt-get update && apt-get install -qy curl
---> Running in 627428d19f4e
Get:1 http://security.debian.org jessie/updates InRelease [63.1 kB]
Get:2 http://security.debian.org jessie/updates/main amd64 Packages [428 kB]
Ign http://deb.debian.org jessie InRelease
Get:3 http://deb.debian.org jessie-updates InRelease [145 kB]
Get:4 http://deb.debian.org jessie Release.gpg [2373 B]
Get:5 http://deb.debian.org jessie-updates/main amd64 Packages [17.6 kB]
Get:6 http://deb.debian.org jessie Release [148 kB]
Get:7 http://deb.debian.org jessie/main amd64 Packages [9064 kB]
Fetched 9868 kB in 3s (3138 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
ca-certificates krb5-locales libcurl3 libffi6 libgmp10 libgnutls-deb0-28
libgssapi-krb5-2 libhogweed2 libidn11 libk5crypto3 libkeyutils1 libkrb5-3
libkrb5support0 libldap-2.4-2 libnettle4 libp11-kit0 librtmp1 libsasl2-2
libsasl2-modules libsasl2-modules-db libssh2-1 libssl1.0.0 libtasn1-6
openssl
Suggested packages:
gnutls-bin krb5-doc krb5-user libsasl2-modules-otp libsasl2-modules-ldap
libsasl2-modules-sql libsasl2-modules-gssapi-mit
libsasl2-modules-gssapi-heimdal
The following NEW packages will be installed:
ca-certificates curl krb5-locales libcurl3 libffi6 libgmp10
libgnutls-deb0-28 libgssapi-krb5-2 libhogweed2 libidn11 libk5crypto3
libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 libnettle4 libp11-kit0
librtmp1 libsasl2-2 libsasl2-modules libsasl2-modules-db libssh2-1
libssl1.0.0 libtasn1-6 openssl
0 upgraded, 25 newly installed, 0 to remove and 0 not upgraded.
Need to get 7877 kB of archives.
After this operation, 15.6 MB of additional disk space will be used.
Get:1 http://security.debian.org/ jessie/updates/main libssl1.0.0 amd64 1.0.1t-1+deb8u5 [1048 kB]
Get:2 http://security.debian.org/ jessie/updates/main libcurl3 amd64 7.38.0-4+deb8u5 [259 kB]
Get:3 http://security.debian.org/ jessie/updates/main openssl amd64 1.0.1t-1+deb8u5 [665 kB]
Get:4 http://security.debian.org/ jessie/updates/main curl amd64 7.38.0-4+deb8u5 [200 kB]
Get:5 http://deb.debian.org/debian/ jessie/main libgmp10 amd64 2:6.0.0+dfsg-6 [253 kB]
Get:6 http://deb.debian.org/debian/ jessie/main libnettle4 amd64 2.7.1-5+deb8u1 [176 kB]
Get:7 http://deb.debian.org/debian/ jessie/main libhogweed2 amd64 2.7.1-5+deb8u1 [126 kB]
Get:8 http://deb.debian.org/debian/ jessie/main libffi6 amd64 3.1-2+b2 [20.1 kB]
Get:9 http://deb.debian.org/debian/ jessie/main libp11-kit0 amd64 0.20.7-1 [81.2 kB]
Get:10 http://deb.debian.org/debian/ jessie/main libtasn1-6 amd64 4.2-3+deb8u2 [49.0 kB]
Get:11 http://deb.debian.org/debian/ jessie/main libgnutls-deb0-28 amd64 3.3.8-6+deb8u3 [694 kB]
Get:12 http://deb.debian.org/debian/ jessie/main libkeyutils1 amd64 1.5.9-5+b1 [12.0 kB]
Get:13 http://deb.debian.org/debian/ jessie/main libkrb5support0 amd64 1.12.1+dfsg-19+deb8u2 [59.1 kB]
Get:14 http://deb.debian.org/debian/ jessie/main libk5crypto3 amd64 1.12.1+dfsg-19+deb8u2 [115 kB]
Get:15 http://deb.debian.org/debian/ jessie/main libkrb5-3 amd64 1.12.1+dfsg-19+deb8u2 [303 kB]
Get:16 http://deb.debian.org/debian/ jessie/main libgssapi-krb5-2 amd64 1.12.1+dfsg-19+deb8u2 [152 kB]
Get:17 http://deb.debian.org/debian/ jessie/main libidn11 amd64 1.29-1+deb8u2 [136 kB]
Get:18 http://deb.debian.org/debian/ jessie/main libsasl2-modules-db amd64 2.1.26.dfsg1-13+deb8u1 [67.1 kB]
Get:19 http://deb.debian.org/debian/ jessie/main libsasl2-2 amd64 2.1.26.dfsg1-13+deb8u1 [105 kB]
Get:20 http://deb.debian.org/debian/ jessie/main libldap-2.4-2 amd64 2.4.40+dfsg-1+deb8u2 [218 kB]
Get:21 http://deb.debian.org/debian/ jessie/main librtmp1 amd64 2.4+20150115.gita107cef-1 [59.8 kB]
Get:22 http://deb.debian.org/debian/ jessie/main libssh2-1 amd64 1.4.3-4.1+deb8u1 [125 kB]
Get:23 http://deb.debian.org/debian/ jessie/main krb5-locales all 1.12.1+dfsg-19+deb8u2 [2649 kB]
Get:24 http://deb.debian.org/debian/ jessie/main ca-certificates all 20141019+deb8u1 [204 kB]
Get:25 http://deb.debian.org/debian/ jessie/main libsasl2-modules amd64 2.1.26.dfsg1-13+deb8u1 [101 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 7877 kB in 4s (1720 kB/s)
remote: g previously unselected package libssl1.0.0:amd64.
remote: (Reading database ... 7559 files and directories currently installed.)
remote: g to unpack .../libssl1.0.0_1.0.1t-1+deb8u5_amd64.deb ...
remote: g libssl1.0.0:amd64 (1.0.1t-1+deb8u5) ...
remote: g previously unselected package libgmp10:amd64.
remote: g to unpack .../libgmp10_2%3a6.0.0+dfsg-6_amd64.deb ...
remote: g libgmp10:amd64 (2:6.0.0+dfsg-6) ...
remote: g previously unselected package libnettle4:amd64.
remote: g to unpack .../libnettle4_2.7.1-5+deb8u1_amd64.deb ...
remote: g libnettle4:amd64 (2.7.1-5+deb8u1) ...
remote: g previously unselected package libhogweed2:amd64.
remote: g to unpack .../libhogweed2_2.7.1-5+deb8u1_amd64.deb ...
remote: g libhogweed2:amd64 (2.7.1-5+deb8u1) ...
remote: g previously unselected package libffi6:amd64.
remote: g to unpack .../libffi6_3.1-2+b2_amd64.deb ...
remote: g libffi6:amd64 (3.1-2+b2) ...
remote: g previously unselected package libp11-kit0:amd64.
remote: g to unpack .../libp11-kit0_0.20.7-1_amd64.deb ...
remote: g libp11-kit0:amd64 (0.20.7-1) ...
remote: g previously unselected package libtasn1-6:amd64.
remote: g to unpack .../libtasn1-6_4.2-3+deb8u2_amd64.deb ...
remote: g libtasn1-6:amd64 (4.2-3+deb8u2) ...
remote: g previously unselected package libgnutls-deb0-28:amd64.
remote: g to unpack .../libgnutls-deb0-28_3.3.8-6+deb8u3_amd64.deb ...
remote: g libgnutls-deb0-28:amd64 (3.3.8-6+deb8u3) ...
remote: g previously unselected package libkeyutils1:amd64.
remote: g to unpack .../libkeyutils1_1.5.9-5+b1_amd64.deb ...
remote: g libkeyutils1:amd64 (1.5.9-5+b1) ...
remote: g previously unselected package libkrb5support0:amd64.
remote: g to unpack .../libkrb5support0_1.12.1+dfsg-19+deb8u2_amd64.deb ...
remote: g libkrb5support0:amd64 (1.12.1+dfsg-19+deb8u2) ...
remote: g previously unselected package libk5crypto3:amd64.
remote: g to unpack .../libk5crypto3_1.12.1+dfsg-19+deb8u2_amd64.deb ...
remote: g libk5crypto3:amd64 (1.12.1+dfsg-19+deb8u2) ...
remote: g previously unselected package libkrb5-3:amd64.
remote: g to unpack .../libkrb5-3_1.12.1+dfsg-19+deb8u2_amd64.deb ...
remote: g libkrb5-3:amd64 (1.12.1+dfsg-19+deb8u2) ...
remote: g previously unselected package libgssapi-krb5-2:amd64.
remote: g to unpack .../libgssapi-krb5-2_1.12.1+dfsg-19+deb8u2_amd64.deb ...
remote: g libgssapi-krb5-2:amd64 (1.12.1+dfsg-19+deb8u2) ...
remote: g previously unselected package libidn11:amd64.
remote: g to unpack .../libidn11_1.29-1+deb8u2_amd64.deb ...
remote: g libidn11:amd64 (1.29-1+deb8u2) ...
remote: g previously unselected package libsasl2-modules-db:amd64.
remote: g to unpack .../libsasl2-modules-db_2.1.26.dfsg1-13+deb8u1_amd64.deb ...
remote: g libsasl2-modules-db:amd64 (2.1.26.dfsg1-13+deb8u1) ...
remote: g previously unselected package libsasl2-2:amd64.
remote: g to unpack .../libsasl2-2_2.1.26.dfsg1-13+deb8u1_amd64.deb ...
remote: g libsasl2-2:amd64 (2.1.26.dfsg1-13+deb8u1) ...
remote: g previously unselected package libldap-2.4-2:amd64.
remote: g to unpack .../libldap-2.4-2_2.4.40+dfsg-1+deb8u2_amd64.deb ...
remote: g libldap-2.4-2:amd64 (2.4.40+dfsg-1+deb8u2) ...
remote: g previously unselected package librtmp1:amd64.
remote: g to unpack .../librtmp1_2.4+20150115.gita107cef-1_amd64.deb ...
remote: g librtmp1:amd64 (2.4+20150115.gita107cef-1) ...
remote: g previously unselected package libssh2-1:amd64.
remote: g to unpack .../libssh2-1_1.4.3-4.1+deb8u1_amd64.deb ...
remote: g libssh2-1:amd64 (1.4.3-4.1+deb8u1) ...
remote: g previously unselected package libcurl3:amd64.
remote: g to unpack .../libcurl3_7.38.0-4+deb8u5_amd64.deb ...
remote: g libcurl3:amd64 (7.38.0-4+deb8u5) ...
remote: g previously unselected package krb5-locales.
remote: g to unpack .../krb5-locales_1.12.1+dfsg-19+deb8u2_all.deb ...
remote: g krb5-locales (1.12.1+dfsg-19+deb8u2) ...
remote: g previously unselected package openssl.
remote: g to unpack .../openssl_1.0.1t-1+deb8u5_amd64.deb ...
remote: g openssl (1.0.1t-1+deb8u5) ...
remote: g previously unselected package ca-certificates.
remote: g to unpack .../ca-certificates_20141019+deb8u1_all.deb ...
remote: g ca-certificates (20141019+deb8u1) ...
remote: g previously unselected package curl.
remote: g to unpack .../curl_7.38.0-4+deb8u5_amd64.deb ...
remote: g curl (7.38.0-4+deb8u5) ...
remote: g previously unselected package libsasl2-modules:amd64.
remote: g to unpack .../libsasl2-modules_2.1.26.dfsg1-13+deb8u1_amd64.deb ...
remote: g libsasl2-modules:amd64 (2.1.26.dfsg1-13+deb8u1) ...
remote: up libssl1.0.0:amd64 (1.0.1t-1+deb8u5) ...
remote:  unable to initialize frontend: Dialog
remote:  (TERM is not set, so the dialog frontend is not usable.)
remote:  falling back to frontend: Readline
remote:  unable to initialize frontend: Readline
debconf: (Can't locate Term/ReadLine.pm in @INC (you may need to install the Term::ReadLine module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/x86_64-linux-gnu/perl5/5remote: /share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl .) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7.)
remote:  falling back to frontend: Teletype
remote: up libgmp10:amd64 (2:6.0.0+dfsg-6) ...
remote: up libnettle4:amd64 (2.7.1-5+deb8u1) ...
remote: up libhogweed2:amd64 (2.7.1-5+deb8u1) ...
remote: up libffi6:amd64 (3.1-2+b2) ...
remote: up libp11-kit0:amd64 (0.20.7-1) ...
remote: up libtasn1-6:amd64 (4.2-3+deb8u2) ...
remote: up libgnutls-deb0-28:amd64 (3.3.8-6+deb8u3) ...
remote: up libkeyutils1:amd64 (1.5.9-5+b1) ...
remote: up libkrb5support0:amd64 (1.12.1+dfsg-19+deb8u2) ...
remote: up libk5crypto3:amd64 (1.12.1+dfsg-19+deb8u2) ...
remote: up libkrb5-3:amd64 (1.12.1+dfsg-19+deb8u2) ...
remote: up libgssapi-krb5-2:amd64 (1.12.1+dfsg-19+deb8u2) ...
remote: up libidn11:amd64 (1.29-1+deb8u2) ...
remote: up libsasl2-modules-db:amd64 (2.1.26.dfsg1-13+deb8u1) ...
remote: up libsasl2-2:amd64 (2.1.26.dfsg1-13+deb8u1) ...
remote: up libldap-2.4-2:amd64 (2.4.40+dfsg-1+deb8u2) ...
remote: up librtmp1:amd64 (2.4+20150115.gita107cef-1) ...
remote: up libssh2-1:amd64 (1.4.3-4.1+deb8u1) ...
remote: up libcurl3:amd64 (7.38.0-4+deb8u5) ...
remote: up krb5-locales (1.12.1+dfsg-19+deb8u2) ...
remote: up openssl (1.0.1t-1+deb8u5) ...
remote: up ca-certificates (20141019+deb8u1) ...
remote:  unable to initialize frontend: Dialog
remote:  (TERM is not set, so the dialog frontend is not usable.)
remote:  falling back to frontend: Readline
remote:  unable to initialize frontend: Readline
debconf: (Can't locate Term/ReadLine.pm in @INC (you may need to install the Term::ReadLine module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/x86_64-linux-gnu/perl5/5remote: /share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl .) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7.)
remote:  falling back to frontend: Teletype
remote: up curl (7.38.0-4+deb8u5) ...
remote: up libsasl2-modules:amd64 (2.1.26.dfsg1-13+deb8u1) ...
remote: ng triggers for libc-bin (2.19-18+deb8u6) ...
remote: ng triggers for ca-certificates (20141019+deb8u1) ...
remote:  certificates in /etc/ssl/certs... 174 added, 0 removed; done.
remote: hooks in /etc/ca-certificates/update.d....done.
---> f1ec666be817
Removing intermediate container 627428d19f4e
Step 3 : RUN curl -s https://storage.googleapis.com/golang/go1.2.2.linux-amd64.tar.gz | tar -C /usr/local -xz
---> Running in 764e5701fa6c
---> a99597a55ae9
Removing intermediate container 764e5701fa6c
Step 4 : ENV GOPATH /go
---> Running in a6be39b95a57
---> de8c878ef81d
Removing intermediate container a6be39b95a57
Step 5 : ENV GOROOT /usr/local/go
---> Running in f92063031424
---> d9133490bd89
Removing intermediate container f92063031424
Step 6 : ENV PATH $PATH:/usr/local/go/bin:/go/bin
---> Running in 9cfadca29427
---> 3939d51bb28e
Removing intermediate container 9cfadca29427
Step 7 : ADD . /go/src/github.com/deis/helloworld
---> 805a32fc13d1
Removing intermediate container 88a2bee8b001
Step 8 : RUN cd /go/src/github.com/deis/helloworld && go install -v .
---> Running in 092c257ff3fb
github.com/deis/helloworld
---> aba412392ba0
Removing intermediate container 092c257ff3fb
Step 9 : EXPOSE 80
---> Running in b2646862f6c6
---> 161b7417e6bc
Removing intermediate container b2646862f6c6
Step 10 : ENTRYPOINT /go/bin/helloworld
---> Running in fe52bd72339b
---> a9cd921d0196
Removing intermediate container fe52bd72339b
Successfully built a9cd921d0196
Pushing to registry
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/response.py", line 298, in _error_catcher
yield
File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/response.py", line 380, in read
data = self._fp.read(amt)
File "/usr/lib/python3.5/http/client.py", line 448, in read
n = self.readinto(b)
File "/usr/lib/python3.5/http/client.py", line 478, in readinto
return self._readinto_chunked(b)
File "/usr/lib/python3.5/http/client.py", line 573, in _readinto_chunked
chunk_left = self._get_chunk_left()
File "/usr/lib/python3.5/http/client.py", line 541, in _get_chunk_left
chunk_left = self._read_next_chunk_size()
File "/usr/lib/python3.5/http/client.py", line 501, in _read_next_chunk_size
line = self.fp.readline(_MAXLINE + 1)
File "/usr/lib/python3.5/socket.py", line 575, in readinto
return self._sock.recv_into(b)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/deploy.py", line 109, in
log_output(stream, False)
File "/deploy.py", line 15, in log_output
for chunk in stream:
File "/usr/local/lib/python3.5/dist-packages/docker/client.py", line 247, in _stream_helper
data = reader.read(1)
File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/response.py", line 397, in read
raise IncompleteRead(self._fp_bytes_read, self.length_remaining)
File "/usr/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/response.py", line 303, in _error_catcher
raise ReadTimeoutError(self._pool, None, 'Read timed out.')
requests.packages.urllib3.exceptions.ReadTimeoutError: UnixHTTPConnectionPool(host='localhost', port=None): Read timed out.
remote: 2017/01/04 06:01:07 Error running git receive hook [Build pod exited with code 1, stopping build.]
To ssh://git@deis-builder.xxxxxxxx:2222/helloworld.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'ssh://git@deis-builder.xxxxxxxx:2222/helloworld.git'

I confirmed same sample app on GKE.
It's working when Kubernetes v1.4.7.
However when using v1.5.1 same timeout error has happened.
Kubectl v1.4.7 Kubernetes v1.4.7 (working)
Kubectl v1.4.7 Kubernetes v1.5.1 (same timeout error)

Can you check the logs coming from your registry component? A ReadTimeout error could mean many things, but it's usually because it it unhealthy.

registry  and registry-proxy component log is the following.

If you're deploying via kops I believe you're hitting https://github.com/deis/registry/issues/64#issuecomment-254915459. Can you check and confirm that the registry proxy is listening on port 5555 on the worker nodes? You can do so with netstat -atn. If so you'll want to apply that patch to your helm chart via https://github.com/deis/registry/issues/64#issuecomment-270510805.

Now I'm trying on GKE, so kops is not used.
Should I execute  netstat command from inside of registry proxy container? or from cluster node machine?

if you're on GKE you won't have SSH access to the cluster node machines, but we know that hostPort bind requests on GKE works so that bug I linked won't be relevant to your issue.
Sorry, I'm fresh out of ideas here. If you get any more information on why it's failing for you, please let us know!

Actually, here's some things I'd try:
$ kubectl --namespace deis exec -it deis-registry-proxy-09sc1 bash
$ curl $REGISTRY_HOST:$REGISTRY_PORT/v2

$ kubectl --namespace deis exec -it deis-controller-1606776397-czzwp python manage.py shell
>>> import requests
>>> import os
>>> response = requests.get('{}:{}/v2'.format(os.environ['DEIS_REGISTRY_SERVICE_HOST'], os.environ['DEIS_REGISTRY_SERVICE_PORT']))
>>> print(response.status_code)

Basically attempt to manually create a connection to the registry from the registry proxy, then try creating a connection from the controller to the registry-proxy. If either of them fail then we know where to start looking.

Thank you for more information.
I check 2 points you suggested.
Access from controller is not working.
Here is console logs.

curl from registry-proxy

$ kubectl -n deis exec -it deis-registry-proxy-09sc1 /bin/bash
root@deis-registry-proxy-09sc1:/# curl $REGISTRY_HOST:$REGISTRY_PORT/v2
Moved Permanently.

$ kubectl -n deis exec -it deis-registry-proxy-r16cm /bin/bash
root@deis-registry-proxy-r16cm:/# curl $REGISTRY_HOST:$REGISTRY_PORT/v2
Moved Permanently.

$ kubectl -n deis exec -it deis-registry-proxy-rkg9h /bin/bash
root@deis-registry-proxy-rkg9h:/# curl $REGISTRY_HOST:$REGISTRY_PORT/v2
Moved Permanently.

http access from controller

$ kubectl -n deis exec -it deis-controller-1606776397-czzwp python manage.py shell
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import requests
>>> import os
>>> response = requests.get('{}:{}/v2'.format(os.environ['DEIS_REGISTRY_SERVICE_HOST'], os.environ['DEIS_REGISTRY_SERVICE_PORT']))
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/usr/local/lib/python3.5/dist-packages/requests/api.py", line 70, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/requests/api.py", line 56, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/requests/sessions.py", line 488, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.5/dist-packages/requests/sessions.py", line 603, in send
    adapter = self.get_adapter(url=request.url)
  File "/usr/local/lib/python3.5/dist-packages/requests/sessions.py", line 685, in get_adapter
    raise InvalidSchema("No connection adapters were found for '%s'" % url)
requests.exceptions.InvalidSchema: No connection adapters were found for 'localhost:5555/v2'
>>> print(response.status_code)
Traceback (most recent call last):
  File "<console>", line 1, in <module>
NameError: name 'response' is not defined>

controller isn't listening port 5555.
is this not problem?
$ kubectl -n deis exec -it deis-controller-1606776397-czzwp /bin/bash
root@deis-controller-1606776397-czzwp:/app# echo $DEIS_REGISTRY_SERVICE_HOST
localhost

root@deis-controller-1606776397-czzwp:/app# echo $DEIS_REGISTRY_SERVICE_PORT
5555

root@deis-controller-1606776397-czzwp:/app# netstat -atn
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 <IP_ADDRESS>:8000            <IP_ADDRESS>:*               LISTEN
tcp        0      0 <IP_ADDRESS>:8000         <IP_ADDRESS>:34262        TIME_WAIT
tcp        0      0 <IP_ADDRESS>:37948        <IP_ADDRESS>:5432       ESTABLISHED
tcp        0      0 <IP_ADDRESS>:38082        <IP_ADDRESS>:5432       ESTABLISHED
tcp        0      0 <IP_ADDRESS>:8000         <IP_ADDRESS>:34442        TIME_WAIT
tcp        0      0 <IP_ADDRESS>:8000         <IP_ADDRESS>:34356        TIME_WAIT
tcp        0      0 <IP_ADDRESS>:38236        <IP_ADDRESS>:5432       ESTABLISHED
tcp        0      0 <IP_ADDRESS>:46652        <IP_ADDRESS>:443         ESTABLISHED
tcp        0      0 <IP_ADDRESS>:37740        <IP_ADDRESS>:5432       ESTABLISHED
tcp        0      0 <IP_ADDRESS>:38128        <IP_ADDRESS>:5432       ESTABLISHED
tcp        0      0 <IP_ADDRESS>:8000         <IP_ADDRESS>:34306        TIME_WAIT
tcp        0      0 <IP_ADDRESS>:8000         <IP_ADDRESS>:34396        TIME_WAIT
tcp        0      0 <IP_ADDRESS>:8000         <IP_ADDRESS>:34218        TIME_WAIT

No. The controller listens on port 8000. If it wasn't listening on that port then you wouldn't be able to communicate with the API at all.

You might need to do more digging on the controller -> registry-proxy front though. I missed something. Replace this:
>>> response = requests.get('{}:{}/v2'.format(os.environ['DEIS_REGISTRY_SERVICE_HOST'], os.environ['DEIS_REGISTRY_SERVICE_PORT']))

With this:
>>> response = requests.get('http://{}:{}/v2'.format(os.environ['DEIS_REGISTRY_SERVICE_HOST'], os.environ['DEIS_REGISTRY_SERVICE_PORT']))

It failed because no http:// schema was provided in the request.

Scratch that, that won't work anyways because it's the docker daemon connecting from the host to the registry-proxy.
Anyways, give it a bit more digging. https://deis.com/docs/workflow/troubleshooting/kubectl/

Replaced code is not working as you mentioned.
I'll check more detail.
>>> response = requests.get('http://{}:{}/v2'.format(os.environ['DEIS_REGISTRY_SERVICE_HOST'], os.environ['DEIS_REGISTRY_SERVICE_PORT']))
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/connection.py", line 138, in _new_conn
    (self.host, self.port), self.timeout, **extra_kw)
  File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/util/connection.py", line 98, in create_connection
    raise err
  File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/util/connection.py", line 88, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

It's working that http access from host node to localhost:5555.
(SSH login is allowed from Compute Engine console.)
$ curl -v localhost:5555/v2/
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to localhost (<IP_ADDRESS>) port 5555 (#0)
> GET /v2/ HTTP/1.1
> Host: localhost:5555
> User-Agent: curl/7.50.3
> Accept: */*
>
< HTTP/1.1 200 OK
< Server: nginx/1.11.1
< Date: Tue, 10 Jan 2017 11:35:58 GMT
< Content-Type: application/json; charset=utf-8
< Content-Length: 2
< Connection: keep-alive
< Docker-Distribution-Api-Version: registry/2.0
< X-Content-Type-Options: nosniff
<
* Curl_http_done: called premature == 0
* Connection #0 to host localhost left intact
{}

Also kubelet is listening port 5555 on host node.
$ sudo netstat -anop | grep LISTEN | grep 5555
tcp6      12      0 :::5555                 :::*                    LISTEN      1386/kubelet         off (0.00/0/0)

I can confirm this also happened to me, on GKE after upgrading Kubernetes from 1.4.8 to 1.5.2.
$ kubectl --namespace deis exec -it deis-registry-proxy-7mc2s bash
$ curl $REGISTRY_HOST:$REGISTRY_PORT/v2

Moved Permanently.

$ kubectl --namespace deis exec -it deis-controller-1520131330-28km1 python manage.py shell
>>> import requests
>>> import os
>>> response = requests.get('http://{}:{}/v2'.format(os.environ['DEIS_REGISTRY_SERVICE_HOST'], os.environ['DEIS_REGISTRY_SERVICE_PORT']))

Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/connection.py", line 138, in _new_conn
    (self.host, self.port), self.timeout, **extra_kw)
  File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/util/connection.py", line 98, in create_connection
    raise err
  File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/util/connection.py", line 88, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

Google Container Engine
Kubernetes v1.5.2
Deis v2.10.0

Here's my controller logs.
$ kubectl --namespace=deis logs deis-controller-xxxxxxxxxx-xxxxx
...
INFO [marble-zirconia]: config marble-zirconia-b5e6e2a updated
INFO [marble-zirconia]: admin created initial release
INFO [marble-zirconia]: appsettings marble-zirconia-2bb9028 updated
INFO [marble-zirconia]: domain marble-zirconia added
<IP_ADDRESS> "POST /v2/apps/ HTTP/1.1" 201 167 "Deis Client v2.10.0"
INFO [marble-zirconia]: build marble-zirconia-328b6e2 created
INFO [marble-zirconia]: admin deployed deis/example-go
INFO Pulling Docker image deis/example-go:latest
INFO Tagging Docker image deis/example-go:latest as localhost:5555/marble-zirconia:v2
INFO Pushing Docker image localhost:5555/marble-zirconia:v2
INFO Pushing Docker image localhost:5555/marble-zirconia:v2
INFO Pushing Docker image localhost:5555/marble-zirconia:v2
INFO [marble-zirconia]: Operation push timed out for image localhost:5555/marble-zirconia:v2
ERROR:root:Operation push timed out for image localhost:5555/marble-zirconia:v2
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/response.py", line 298, in _error_catcher
    yield
  File "/usr/local/lib/python3.5/dist-packages/requests/packages/urllib3/response.py", line 380, in read
    data = self._fp.read(amt)
  File "/usr/lib/python3.5/http/client.py", line 448, in read
    n = self.readinto(b)
  File "/usr/lib/python3.5/http/client.py", line 478, in readinto
    return self._readinto_chunked(b)
  File "/usr/lib/python3.5/http/client.py", line 573, in _readinto_chunked
    chunk_left = self._get_chunk_left()
  File "/usr/lib/python3.5/http/client.py", line 541, in _get_chunk_left
    chunk_left = self._read_next_chunk_size()
  File "/usr/lib/python3.5/http/client.py", line 501, in _read_next_chunk_size
    line = self.fp.readline(_MAXLINE + 1)
  File "/usr/lib/python3.5/socket.py", line 575, in readinto
    return self._sock.recv_into(b)
socket.timeout: timed out

for what it's worth, I also tested on both AWS and minikube on v1.5.2 with no issues. I did not see this timeout error.
If anyone has a broken cluster they're willing to lend, I'd be happy to assist in debugging this issue.

I've reproduced the same error when attempting to push a stock helloworld app, k8s node/server version 1.5.2 on GKE.

It works on minikube for me too. Here's a list of where I've replicated the timeout (all by deploying deis/example-go).
Google Container Engine

asia-east1
east-northeast1
europe-west1

Amazon EC2

ap-southeast1

Kubernetes v1.5.1 or v1.5.2
Deis v2.10.0

I got a failing cluster as well. gke on us-central1-b which is v1.5.2, workflow v2.10.0.
Performing a git push deis master of deis/example-go worked for me, however deis pull deis/example-go did not. Same timeout logs as others have shown.

Reason being for git push deis master working is because it bypasses pushing an image to a registry altogether. pushing example-dockerfile-python fails in the same manner, so it's a matter of figuring out why we can't push images to the registry-proxy and what has changed recently.

See the PR pair in https://github.com/deis/controller/pull/1239 and https://github.com/deis/builder/pull/473 for a proposed fix for this issue.  (https://github.com/deis/controller/pull/1239#issuecomment-276445677 for how I tested and confirmed fix)

Works for me as well. I'll close this once deis/builder#473 is merged.

I seem to be hitting this too. http://paste.ubuntu.com/24023510/


Compiler warning: format '%s' expects argument of type 'char*', but argument 2 has type 'int' [-Wformat=] [73, 46]

Hi,
I was trying to use this library for testing, and my compiler warns about this:
format '%s' expects argument of type 'char*', but argument 2 has type 'int' [-Wformat=] [73, 46]

https://github.com/Roger-random/ESP_8_BIT_composite/blob/001174d6b526de45c6792b26d53042dcc9f6de22/ESP_8_BIT_composite.cpp#L71-L75
The compiler could be right, as far as I know you can't use %s on an int.
Compiler: xtensa-esp32-elf-gcc (crosstool-NG crosstool-ng-1.22.0-97-gc752ad5) 5.2.0 (platformio-ide on vscode, reasonably up-to-date)
Regards, Alex.

I've been working in Arduino IDE and it doesn't seem to surface compiler warnings. I'll try to follow your steps to compile under PlatformIO on VSCode, and see if I see it as well.

It's rather obvious when you look at it: n is defined as int, and within the printf you're using %s to format it. It will compile, it will even execute, but tries to format a char * starting at address n, which is probably not what you want.

I understand the warning and agree with the technical issue. However, I need to see the warning first. Otherwise I wouldn't be able to verify the warning is fixed!

Finally figured it out: apparently format warnings are not raised by default. I had to add the following line to my platform.ini before I saw the error myself.
build_flags = -Wformat


How to dynamically add the monitoring of the cluster?

I want to dynamically add monitoring clusters when the program is running, and I tried to modify the configuration when the program is running, but it doesn't work.

+1

+1


Move ContentSize requirements from Node to the widget defining components

Objective
Missed this in the required components PR review.  ContentSize isn't used by regular UI nodes, only those with intrinsically sized content that needs a measure func.
Solution
Remove ContentSize from Node's required components and add it to the required components of Text and UiImage.

I clobbered this off of UiImage when resolving merge conflicts in the Github UI, sorry :(

Fixed the imports, should be ready.


Allow createStringPayload to set default maxTries and timeout instead of setting both to null.

Laravel Version: 5.4
PHP Version: 7
Database Driver & Version: SQLServer2012

Description:
createStringPayload sets both maxTries and timeout to null without providing a way to let the user set both of them.
Is that possible to fix this?

How would you like to set them?

When using queue push method to push the job to the queue,
if the job is not an Object, then laravel creates the payload data using createStringPayload, which sets both maxTries and timeout to null.
If the job is an Object, then we can define tries and timeout properties in our Classes then laravel will use these values when using createObjectPayload method.
Is there any possibility to give the user additional parameters to set the maxTries and timeout when calling push method?


[Storage] Publish the browser-test results for storage-packages

Wiring up the browser tests to devops via the karma-junit plugin
https://github.com/karma-runner/karma-junit-reporter

Done with #1758


Review from tomchor

Here is the review by tomchor:
https://github.com/openjournals/joss-reviews/issues/1506#issuecomment-502532735

[x] Statement of need: the target audience is very well stated, but in my opinion the problems the package aims to solve could be better stated. The paper itself has those problems/needs very well explained however.

[x] Installation instructions: although the installation instructions are very clear, there is no explicitly stated list of dependencies. Instead the dependencies are implicitly listed in a conda install command.

[x] Automated tests: there were no automated tests that I could find in the package.

[x] The SciServer part in the tutorial was a bit confusing to me. This only a suggestion, but I think It would also be good to state the differences of working from within SciServer. (I know that there is a paragraph in the beginning on the docs trying to clarify the SciServer/standalone options, but I'm not sure if everyone is familiar with SciServer.) The flowchart, for example, could be one of the first things in the documentation (or at least in the getting started portion). Instead it is given a separate section with no context whatsoever.
Furthermore, the steps to start a SciServer didn't quite work for me. After clicking on compute, there was no option to Run Existing Notebook. I suspect they are outdated. It was very straightforward to figure out by myself the correct steps, but it would still be nice to have the correct instructions.

[x] In some places (generally towards the ends of the tutorial sections) the comments tend to become scarce. An example are cells [7] through [9] in the Kogur case. A little explanation in these cases would benefit users.

[x] Before cell [13] in [https://oceanspy.readthedocs.io/en/latest/Tutorial.html](the tutorial) the comment should say "while this syntax adds the new variable to od_drop"

[x] I think it is really nice that in the paper (and also in the autogen docs) the calculations done by the compute module are mathematically defined. However, as a scientist, it would be nice to know which numerical scheme is used to perform those computations. I assume it is the default functionality of xarray, which uses specific numpy functions. A simple reference to the xarray function would suffice (to avoid having to go through code to figure it out).

Most of them are suggestions on how to improve the documentation. The reviewer was not able to find the automated tests, so we should add instructions somewhere else (currently they are in the contributing section, I think we should mention them in the installation section as well).

Sounds good to me. The other issues are easy to fix. Let me know if you need help!

Are we supposed to wait for both reviews to come before making changes ?

I don't think so. Let's open a new pull request. I'll ask the editor if we can just merge it.

Sounds good! These are some good suggestions. Let me know if I can help/check edits etc.
Renske
On Jun 17, 2019, at 10:36 AM, Mattia Almansi <notifications<EMAIL_ADDRESS>wrote:
Here is the review by tomchor:
openjournals/joss-reviews#1506 (comment)https://github.com/openjournals/joss-reviews/issues/1506#issuecomment-502532735

Statement of need: the target audience is very well stated, but in my opinion the problems the package aims to solve could be better stated. The paper itself has those problems/needs very well explained however.

Installation instructions: although the installation instructions are very clear, there is no explicitly stated list of dependencies. Instead the dependencies are implicitly listed in a conda install command.

Automated tests: there were no automated tests that I could find in the package.

The SciServer part in the tutorial was a bit confusing to me. This only a suggestion, but I think It would also be good to state the differences of working from within SciServer. (I know that there is a paragraph in the beginning on the docs trying to clarify the SciServer/standalone options, but I'm not sure if everyone is familiar with SciServer.) The flowchart, for example, could be one of the first things in the documentation (or at least in the getting started portion). Instead it is given a separate section with no context whatsoever.
Furthermore, the steps to start a SciServer didn't quite work for me. After clicking on compute, there was no option to Run Existing Notebook. I suspect they are outdated. It was very straightforward to figure out by myself the correct steps, but it would still be nice to have the correct instructions.

In some places (generally towards the ends of the tutorial sections) the comments tend to become scarce. An example are cells [7] through [9] in the Kogur case. A little explanation in these cases would benefit users.

Before cell [13] in [https://oceanspy.readthedocs.io/en/latest/Tutorial.html](the tutorial) the comment should say "while this syntax adds the new variable to od_drop"

I think it is really nice that in the paper (and also in the autogen docs) the calculations done by the compute module are mathematically defined. However, as a scientist, it would be nice to know which numerical scheme is used to perform those computations. I assume it is the default functionality of xarray, which uses specific numpy functions. A simple reference to the xarray function would suffice (to avoid having to go through code to figure it out).

Most of them are suggestions on how to improve the documentation. The reviewer was not able to find the automated tests, so we should add instructions somewhere else (currently they are in the contributing section, I think we should mention them in the installation section as well).
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/malmans2/oceanspy/issues/109?email_source=notifications&email_token=AF7MHNHJ67EDGULCD4IW7BTP26OODA5CNFSM4HYXJCY2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4GZ425PQ, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AF7MHNDMQCQVQ4B332T3AVDP26OODANCNFSM4HYXJCYQ.

I have made a pull request addressing points 1, 2, 4 and 6. See if we that works.

Thanks! I'll be on it probably tomorrow. I think I can take care of the other points.

The reviewer is making a good point here. I suggest we add a note in the front page. This is what I'm thinking:
"OceanSpy has been developed and tested using MITgcm output. However, it has been thought to be compatible with any ocean general circulation model. OceanSpy's structure allows to easily implement additional model-specific features, such as numerical schemes for vector calculus, budget closures, and equations of state. We are actively seeking feedback from different ocean model communities (feedback submission)."
Thoughts? @ThomasHaine @renskegelderloos @asiddi24 @hooteoos-waltz

Yes, good point. I suggest this text:
"OceanSpy has been developed and tested using MITgcm output. However, it is designed to work with any (structured grid) ocean general circulation model. OceanSpy's architecture allows to easily implement model-specific features, such as different grids, numerical schemes for vector calculus, budget closures, and equations of state. We actively seek input and contributions from users of other ocean models (feedback submissionhttps://github.com/malmans2/oceanspy/issues)."
On Jun 20, 2019, at 11:16 AM, Mattia Almansi <notifications<EMAIL_ADDRESS>wrote:
The reviewer is making a good point herehttps://github.com/openjournals/joss-reviews/issues/1506#issuecomment-503770089. I suggest we add a note in the front page. This is what I'm thinking:
"OceanSpy has been developed and tested using MITgcm output. However, it has been thought to be compatible with any ocean general circulation model. OceanSpy's structure allows to easily implement additional model-specific features, such as numerical schemes for vector calculus, budget closures, and equations of state. We are actively seeking feedback from different ocean model communities (feedback submissionhttps://github.com/malmans2/oceanspy/issues)."
Thoughts? @ThomasHainehttps://github.com/ThomasHaine @renskegelderlooshttps://github.com/renskegelderloos @asiddi24https://github.com/asiddi24 @hooteoos-waltzhttps://github.com/hooteoos-waltz
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/malmans2/oceanspy/issues/109?email_source=notifications&email_token=AKP7IKQX25WGEWW7ZKVRKPDP3ONNXA5CNFSM4HYXJCY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYFXGNQ#issuecomment-504066870, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKP7IKQLFIYDMXJ2FWVUOL3P3ONNXANCNFSM4HYXJCYQ.

@ThomasHaine @renskegelderloos @asiddi24 @hooteoos-waltz
Last task: the editor is asking to clarify which ocean models OceanSpy will work with in the paper.
I suggest we add the following line at the end of the Summary section:
"It is designed to work with structured grid ocean circulation models that use a finite volume approach to discretize in space."
What do you think?

Only C-grid, but otherwise ok.
On Jul 5, 2019, at 3:59 PM, Mattia Almansi <notifications<EMAIL_ADDRESS>wrote:
@ThomasHainehttps://github.com/ThomasHaine @renskegelderlooshttps://github.com/renskegelderloos @asiddi24https://github.com/asiddi24 @hooteoos-waltzhttps://github.com/hooteoos-waltz
Last task: the editor is asking to clarify which ocean models OceanSpy will work with in the paperhttps://github.com/openjournals/joss-papers/blob/joss.01506/joss.01506/10.21105.joss.01506.pdf.
I suggest we add the following line at the end of the Summary section:
"It is designed to work with structured grid ocean circulation models that use a finite volume approach to discretize in space."
What do you think?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/malmans2/oceanspy/issues/109?email_source=notifications&email_token=AF7MHNDEIKFNS3QRPPAPPNTP56R3TA5CNFSM4HYXJCY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZKHDYY#issuecomment-508850659, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AF7MHNAJ5LAIEWINHDU7W7TP56R3TANCNFSM4HYXJCYQ.

Right, let's be more specific. I'll add the Arakawa citation then. So it would be:
It is designed to work with structured C-grid (Arakawa and Lamb, 1977) ocean circulation models that use a finite volume approach to discretize in space.
If it works for @ThomasHaine, I'll create the doi for the paper.

Is the finite volume part necessary?  Presumably, it would be relatively straightforward to adjust for A or B grid models in future?
On Jul 5, 2019, at 4:20 PM, Mattia Almansi <notifications<EMAIL_ADDRESS>wrote:
Right, let's be more specific. I'll add the Arakawa citation then. So it would be:
It is designed to work with structured C-grid (Arakawa and Lamb, 1977https://www.sciencedirect.com/science/article/pii/B9780124608177500094) ocean circulation models that use a finite volume approach to discretize in space.
If it works for @ThomasHainehttps://github.com/ThomasHaine, I'll create the doi for the paper.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/malmans2/oceanspy/issues/109?email_source=notifications&email_token=AKP7IKWZHCT4W4W3FMUWUGTP56UJZA5CNFSM4HYXJCY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZKIBXY#issuecomment-508854495, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKP7IKWVDIHHSZZ666GVEI3P56UJZANCNFSM4HYXJCYQ.

I originally thought to add the finite volume bit because it tells about the numerics currently used in compute, and it includes most of the GCM that use C-grid. Now I'm thinking that maybe we could just add a separate section in the paper (e.g., Model compatibility), where we include the same sentences we have on the front page with a reference to the the MITgcm:
Model compatibility
OceanSpy has been developed and tested using output of the Massachusets Institute of Technology General Circulation Model (MITgcm; Marshall et al. 1997). However, it is designed to work with any (structured grid) ocean general circulation model. OceanSpy’s architecture allows to easily implement model-specific features, such as different grids, numerical schemes for vector calculus, budget closures, and equations of state.

That sounds great!
Renske
On Jul 5, 2019, at 4:58 PM, Mattia Almansi <notifications<EMAIL_ADDRESS>wrote:
I originally thought to add the finite volume bit because it tells about the numerics currently used in compute, and it includes most of the GCM that use C-grid. Now I'm thinking that maybe we could just add a separate section in the paper (e.g., Model compatibility), where we include the same sentences we have on the front page with a reference to the the MITgcm:
Model compatibility
OceanSpy has been developed and tested using output of the Massachusets Institute of Technology General Circulation Model (MITgcm; Marshall et al. 1997https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/96JC02775). However, it is designed to work with any (structured grid) ocean general circulation model. OceanSpy’s architecture allows to easily implement model-specific features, such as different grids, numerical schemes for vector calculus, budget closures, and equations of state.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/malmans2/oceanspy/issues/109?email_source=notifications&email_token=AF7MHNCWFOLVZ23QYTZTXBLP56YX7A5CNFSM4HYXJCY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZKJUWI#issuecomment-508861017, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AF7MHND4L6KB2FLK4WBLYF3P56YX7ANCNFSM4HYXJCYQ.

Looks good to me too!
On Jul 6, 2019, at 10:39 AM, renskegelderloos <notifications<EMAIL_ADDRESS>wrote:
That sounds great!
Renske
On Jul 5, 2019, at 4:58 PM, Mattia Almansi <notifications@github.commailto:notifications<EMAIL_ADDRESS>wrote:
I originally thought to add the finite volume bit because it tells about the numerics currently used in compute, and it includes most of the GCM that use C-grid. Now I'm thinking that maybe we could just add a separate section in the paper (e.g., Model compatibility), where we include the same sentences we have on the front page with a reference to the the MITgcm:
Model compatibility
OceanSpy has been developed and tested using output of the Massachusets Institute of Technology General Circulation Model (MITgcm; Marshall et al. 1997https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/96JC02775). However, it is designed to work with any (structured grid) ocean general circulation model. OceanSpy’s architecture allows to easily implement model-specific features, such as different grids, numerical schemes for vector calculus, budget closures, and equations of state.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/malmans2/oceanspy/issues/109?email_source=notifications&email_token=AF7MHNCWFOLVZ23QYTZTXBLP56YX7A5CNFSM4HYXJCY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZKJUWI#issuecomment-508861017, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AF7MHND4L6KB2FLK4WBLYF3P56YX7ANCNFSM4HYXJCYQ.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/malmans2/oceanspy/issues/109?email_source=notifications&email_token=AKP7IKWU5BK2BAVMPZKNJFDP6CVCXA5CNFSM4HYXJCY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZK2ZBI#issuecomment-508931205, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKP7IKTXN74UKCIQUHTK52LP6CVCXANCNFSM4HYXJCYQ.


Add timestamp to user-edited tags

(After #26 is implemented)
Add a timestamp to each of the manual tags, specifying the last change.
This will allow us to later perform user-edit merging of two DBs.

It would be reasonable to implement #71 before this.


alsa-ucm-conf-asahi: Add support for audio confs

This adds the package so that headphones volume work by overriding the upstream alsa-ucm-conf and copying the extra asahi ucm2 confs into destination folder
Not entirely sure how package should be added for default installation in modules

Hey, just wanted to chime in that I ended up doing basically the same thing on my install, but the override causes everything that links to alsa-lib to be rebuilt from source, which ended up pulling in about 5GB of stuff on my machine and takes quite a while to build.
As an alternative to overriding the stock alsa-config-ucm package, you could set the ALSA_CONFIG_UCM2 environment variable to the ucm2 directory in your new combined package, using something like this:
let

environment.variables = {
  ALSA_CONFIG_UCM2 = "${new-ucm-conf-package-from-this-pr}/share/alsa/ucm2";
};

The ALSA_CONFIG_UCM2 variable isn't documented especially well; I only stumbled on it in this old nixos issue. But, I tried it out and can confirm that alsa will load UCM files from there if the var is set.


tweet_mode=extended for statuses_lookup

I used statuses_lookup to get specific tweets.
But with a recent change of Twitter to have also extended tweets does the REST API only return a compacted version for these tweets.
The Twitter API now supports a parameter tweet_mode=extended to return not only the compacted version but also the extended one.
#785 does reference that it is currently not possible to use this parameter with statuses_lookup
What needs to be changed to add tweet_mode=extended support to statuses_lookup?

I've submitted a PR to resolve this: #926 - not sure who's maintaining this repo, but hope the change gets accepted soon!

please let this be fixed <3

I also have this problem. Is there any chance of an update on this?

I'm also having the same problem. Is there a way around to have extended mode in api.statuses_lookcup

Until this PR is reviewed/approved if you need to use @walmsley 's branch you can install it in your project with: pip install git+https://github.com/walmsley/tweepy.git@patch-1 (kudos @walmsley  for the work, it saved me a lot of time today)

@walmsley 's branch doesn't install with the latest pip. I just created a pull request to change the setup.py file so that it should work, as per here:
https://stackoverflow.com/questions/25192794/no-module-named-pip-req

@jalperin In the terminal/Bash, first pip uninstall tweepy, then run the above in terminal. Otherwise you'll have two tweepy installs and the original will probably get imported instead when you try to use it.

Now at https://github.com/lwahedi/tweepy.git@master

Hi, I tried to install this package using what I understood of lwahedi's guidance. I uninstalled tweepy and entered in terminal:
pip install git+https://github.com/lwahedi/tweepy.git@master
But this gets me an error.
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun
at: /Library/Developer/CommandLineTools/usr/bin/xcrun
Command "git clone -q https://github.com/lwahedi/tweepy.git
/private/var/folders/dv/qc9vyx051kbcfy7f8zszfz8c0000gn/T/pip-req-build-_mdbezem" failed with
error code 1 in None
Has the link for that package changed?

@jason-lange looks like a problem on your setup, perhaps this?

@mjs2020 that did it. Many thanks!

This should now be resolved in 3.7.0 with https://github.com/tweepy/tweepy/commit/c997ee7fbeecc6ecc4da387a8f4c69b72a88893f (#926).

The doc is not up to date about this issue, even if it's fixed; the tweet_mode attribute is not listed as a valid argument.
http://docs.tweepy.org/en/v3.8.0/api.html#timeline-methods
It would also be interesting to make the default use the tweet_mode arg given at the handle instantiation time instead of having to specify it explicitly when calling statuses_lookup.

Tweepy documentation for API methods does not include tweet_mode as an attribute for each applicable method.
Instead, there is a designated section covering extended Tweets.
This is correspondent with how Twitter's own API documentation handles documentation for the attribute, as otherwise, there would be a multitude of methods with the same repeated documentation of the attribute.


[enhancement] Multiple columns per option

I realize it's not at all trivial, but it would be awesome if we could specify multiple columns per option. There doesn't yet seem to be a Bootstrap nor jQuery plugin which offers this functionality.
Syntax could be something like this:
<select class="selectpicker"
        data-col-header-default="Condiment"
        data-col-header-2="Taste"
        data-col-header-3="Color">
    <option data-col-2="Spicy" data-col-3="Yellow">Mustard</option>
    <option data-col-2="Sweet" data-col-3="Red">Ketchup</option>
</select>

preev seems to do it


[SMALLFIX] Add example usage for IndexedSet

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

LGTM


TypeError: client.setCredentials is not a function

From @Samartan on November 29, 2017 11:7
Hello everyone! I have been trying to follow the Cloud vision with Node.js codelab. I am able to start the google sign in flow but after I have selected an account to sign in. I get TypeError as explained below.
Sorry for changing the title that many times. I got a bit sloppy there.
Please run down the following list and make sure you've tried the usual "quick fixes":
[done] Search the issues already opened: https://github.com/GoogleCloudPlatform/google-cloud-node/issues
[done] Search StackOverflow: http://stackoverflow.com/questions/tagged/google-cloud-platform+node.js
[done] Check our Troubleshooting guide: https://googlecloudplatform.github.io/google-cloud-node/#/docs/guides/troubleshooting
[done]  Check our FAQ: https://googlecloudplatform.github.io/google-cloud-node/#/docs/guides/faq
If you are still having issues, please be sure to include as much information as possible:
Environment details

OS: MacOs
Node.js version:v8.9.1
npm version:5.5.1
google-cloud-node version: v6.11.1

Steps to reproduce
Follow steps from the codelab.
Error shown:
home/user/cloud-vision/start/lib/oauth2.js:172
      client.setCredentials(tokens);
             ^
TypeError: client.setCredentials is not a function
    at /home/user/cloud-vision/start/lib/oauth2.js:172:14
    at /home/user/cloud-vision/start/node_modules/google-auth-library/lib/auth/oauth2client.js:95:13
    at Request._callback (/home/user/cloud-vision/start/node_modules/google-auth-library/lib/transporters.js:113:17)
    at Request.self.callback (/home/user/cloud-vision/start/node_modules/google-auth-library/node_modules/request/request.js:186:22)
    at emitTwo (events.js:106:13)
    at Request.emit (events.js:191:7)
    at Request.<anonymous> (/home/user/cloud-vision/start/node_modules/google-auth-library/node_modules/request/request.js:1163:10)
    at emitOne (events.js:96:13)
    at Request.emit (events.js:188:7)
    at IncomingMessage.<anonymous> (/home/user/cloud-vision/start/node_modules/google-auth-library/node_modules/request/request.js:1085:12)

Further Information:
The credentials set up is proper because I put in the details into the "Complete" version of the Codelab and I could sigin perfectly. So I thought there must be something wrong with the coding part but I have checked it twice and everything is the same as in the codelab.
Thanks!
Copied from original issue: GoogleCloudPlatform/google-cloud-node#2758

I'm very sorry for the delay on this issue. Would you mind linking to where you are finding the codelab as well as any reproduction steps that could help me see the code you are running? Thanks!

Due to the age of the issue, I'm going to close it as I'm unable to help without more information. If there is still an issue we need to fix, please let me know-- we definitely don't want any misleading docs out there. Thank you, and sorry for the trouble.


Integrate transmission 2

Do not forget to add the missing reset method and call it in call robot alongside sensors and motors.

By the way, motor position should be encoded using cos/sin instead of the angle to avoid out of bounds error. And the encoder sensor should be modified integrate the diff:
qEncoder += pinocchio::difference(pinocchio::SO2(),qMotorPrev,qMotor);
qMotorPrev = qMotor;

However, this formulation cannot be used as such, because it would not work with adaptive time steps that could go back in time...
Maybe you could have a look on how to integrate a cos/sin into an absolute angle. The issue of going back in time is quite challenging.


Changing a tag to a branch leads to original and _b versions

Details

Project URL: http://gidgethub.readthedocs.io
Build URL (if applicable): N/A
Read the Docs username (if applicable): brettcannon

Expected Result
RTD to notice I changed a tag to a branch and then drop the old branch (in this case, stable).
Actual Result
I now have a stable version for the now-deleted tag and a stable_b label for the branch. This breaks bookmarks for folks since I default to this branch (and I deleted the tag because RTD kept failing to build, maybe because of #3513 ?).

FYI I have temporarily turned off which version gidgethub.rtfd.io points to until/if this can be resolved (just in case people trying to diagnose what happened wonder why the site changed).

@brettcannon hi, I think this is because rtd does a git fetch before each build, so it can't know if a tag was removed. Did you try wiping the environment? Yo can do this under the versions option (edit button).

Yep, I tried and it doesn't solve it: https://readthedocs.org/projects/gidgethub/builds/6959477/

@brettcannon I can't see the build. Also, you need to rebuild for it takes effect.

I did and that's the link to the build failure.

@brettcannon I can't see the build, I think is because you change the privacy level of the version, maybe?

The latest build I see is from 4 days ago

Can you try wiping and rebuilding the latest version?

All the rest of the builds are private since I don't want users stumbling on to outdated docs. Rebuilding the latest version (which is tied to master) built find, but I still have a stable version which won't build and a stable_d version which is tied to the actual stable branch.

@brettcannon can you try deactivating that version (no changing the privacy)? Then wipe and rebuild all your versions.

I've tried various approaches to deactivation and such and that doesn't seem to quite fix it.

@brettcannon please see https://github.com/rtfd/readthedocs.org/issues/3887#issuecomment-377848380 for more information

@stsewd thanks for the info. I can just live with being off the master (good motivation to make releases more frequently 😉 ).

@stsewd could you add a test case for this issue in #3913 also?
Besides the issue that you are reporting here, I think it's very bad UX to show things like develop (tag) and develop_b (branch). I understand that this is because the slug can't be repeated, but we should show to the user something nicer like develop (tag) and develop (branch) or similar.

Not sure if I understand the steps here, @brettcannon you create a tag named stable and then a branch named stable?

@brettcannon thanks for the clarification, that is the actual bug that #3913 is going to fix. When you create a custom stable tag/branch, rtd doesn't update the stable version automatically (even removing that tag/branch), the current solution is to recreate the project. Hope to fix this before you need to take such action.

@stsewd thanks for the info! I've just started pointing people at latest/master as the project is very stable at this point, so there's no major issue on my end to force a complete project recreation.

https://github.com/rtfd/readthedocs.org/pull/3913/ was merged and released, this should be fixed by re-building another version that isn't stable (that way the versions are refreshed). Let me know if you still have this problem to reopen the issue.


remove empty properties

selector {
  propertyA: value;
  propertyB: ;
}

should reduce to:
selector {
  propertyA: value;
}

Can you test support before opening issues in future, please? This is already handled via https://github.com/ben-eb/postcss-discard-empty. 😉

I'd not tested it directly, but my build increased by 1 byte when I filled in a property's value, which was previously empty. If the property were removed, it'd have increased by more.


Connect to an email provider

We need to decide on an email provider for password reset emails.
See #38

We haven't implemented "Forgot password" or "Password Confirmation" emails so we may not need this after all. Closing until we know we need it.


JS high not correctly

From @bakso on November 11, 2016 8:39

VSCode Version:1.7.1
OS Version:MacOS 10.11.6

Steps to Reproduce:
function formatBigNum(num) {
  num = Number(num)
  if (num < 10000) {
    return num
  }
  return (num/10000).toString().replace(/(\.[\d]{1})\d+$/,"$1") + 'w '
}
let hbAnimIndex = 0;
let hbAnimNode = null;

Copied from original issue: Microsoft/vscode#15334

Looks like the variables are not colored. It that what you meant?

From @ramya-rao-a on November 16, 2016 3:2
I see this in insiders:

With a space after num in line 6 its all fine

This is 1.7.1

From @olvermue
Take an existing .ts file and insert the following code:
  private showPartyColors() {
    let foo = true ? (2 / 4) : (3 / (2 - 8));
    let bar = console.log('I am red, cause I am upset!');
    // here the code party is fully underway (42) ...
    let baz = (3 / 5) / 7;
    let haveParty = console.log('Now coloring of all code below this function is partially wrong.');
  }

  private mySeriousFunction(myParam: number, another: string){
    console.log('Seems I still have a hangover.');
  }

The current result is


.cpuCurrentspeed() not returning correct cpu speeds

Describe the bug
the .cpuCurrentspeed() method is returning the same value for all properties every time it's called. for me, that value was 2.6.
To Reproduce
on a machine matching the environment listed below, run the .cpuCurrentspeed() method, and just log the output.
Environment (please complete the following information):

systeminformation package version: 4.27.6
OS: MacOS (Catalina version 10.15.6)
Hardware: MacBook Pro (16-inch, 2019)

@iamthe-Wraith unfortunately macOS does not report the current speed correctly. This is only possible with special tools like Intels Power Gadget. If you have any other idea, that would be great. So far, I would close this issue for the moment.

same issue here. but i'm on windows 10. its reporting my base clock for every value. also on all cores.