Change istio-pilot address

Change istio-pilot address ($PILOT) - istiod.istio-system instead of istio-pilot.istio-system
Please provide a description of this PR:
istio-pilot.istio-system now working now
To help us figure out who should review this PR, please put an X in all the areas that this PR affects.

[ ] Configuration Infrastructure
[x] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Please check any characteristics that apply to this pull request.

[x] Does not have any user-facing changes. This may include CLI changes, API changes, behavior changes, performance improvements, etc.

Hi @r0binak. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@googlebot I signed it!

/ok-to-test


fix fix duplicated catalog name in regression cases

Proposed changes
Each suite should use different catalog name,
other it will effect each other when running cases concurrently.
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall


fix meta example language to allow the "0" literal

@OXPHOS this allows to use
int variable = 0 in the meta language

Thanks!


Support to Ionic 2

Ionic 2 support will be greatly appreciated

I've just started a new repository to create a rating component for Ionic 2: https://github.com/andrucz/ionic2-rating
There is still work to do, so please submit PRs.


action creator for validation errors

I use redux-saga for side effects.
I need to show error for my form by passing action.
like
import { validationErrors } from 'redux-form'
...
yield put(validationErrors('form', 'password', 'bad password', {form_error: 'Login failed'))

how can I do that?

Just use normal validation.
Here are some examples:

Sync validation
Async validation
Submit validation

@gustavohenke
It's not the correct answer.
Of course before asking I checked basic documentation and googled it, I was really desperate to find an answer if decided to create an issue understanding that it will be answered in half a year.
the way to integrate to saga is the next and is not described on docs:
container:
export const mapDispatchToProps = (dispatch: Function): Object => ({
  submitForm: (formData) =>
    new Promise((resolve, reject) => {
      dispatch(createAction(SAGA_SEND_ACCOUNT_STATUS_CHECK)({formData, resolve, reject}))
    })
})

saga:
export function* perform(a) {
  try {
    const { formData, reject, resolve } = a.payload
    const mutation = mutationByAction[a.type]

    yield put(createAction(TOGGLE_RIGHT_LOADING)())
    const memberId = yield select(selectMemberId)
    const response = yield call(apolloClient.mutate, {
      mutation: getMutation(mutation),
      variables: Object.assign({}, {id: memberId}, formData)
    })
    const data = response.data[mutation]

    if (data.status === 'Fail') {
      const error = new SubmissionError({ _error: data.errors.join(', ') })
      yield call(reject, error)
      yield put(createAction(TOGGLE_RIGHT_LOADING)())
    } else {
      const member = yield call(getMember, {payload: {id: memberId}})
      yield put(createAction(SET_MEMBER_IN_LIST)({member}))
      yield put(createAction(TOGGLE_RIGHT_LOADING)())
      yield call(resolve)
    }
  } catch (err) { console.log(err) }
}

Sorry if I was rude to you.
I don't know how the docs looked like back in june (I only started using redux-form as of october). If they weren't helpful - the best we can do is hope they are clearer nowadays.
It's generally best to ask such type of questions at StackOverflow, using the redux-form tag; it's very likely that you'll get responses way faster.

redux-saga/redux-form integration really is a hot topic:

#2227
yelouafi/redux-saga#161

And I agree that new examples is probably a good idea, given the popularity of both libs.

So, looking again at your original question, you could probably use stopSubmit action creator, but beware that it'll also flip the submitting flag of your form.
https://github.com/yelouafi/redux-saga/issues/161#issuecomment-254939672


Cmake: trunk/llvm-project - Disable sanitizer/fuzzer/prof/xray

Needed due to LLVM_ENABLE_RUNTIMES lists compiler-rt
Matches defines currently using in trunk/build_compiler-rt.sh

Going to go ahead and merge this so no one else does a clean build and end up blocked by the sanitizer build failure upstream.


inveniogc: better tempdir deletion

FIX Fixes garbage collection of temporary directories created by
websubmit_icon_creator and websubmit_file_stamper.
(closes #3556) (PR #3558)

Signed-off-by: Alexander Wagner<EMAIL_ADDRESS>

LGTM


Chapters page (frontend)

We currently have most of the Chapters page BE functionality ready. The endpoint for chapter search is available at api/v1/owasp/search/chapter. It currently provides
"idx_created_at",
"idx_leaders",
"idx_name",
"idx_related_urls",
"idx_summary",
"idx_tags",
"idx_updated_at",
"idx_url",

fields. The results are ranked based on the proximity to the user's location.
I'd like the new page layout be consistent with Projects page (name, leaders, summary, tags) with some extra icons (font awesome) for the related URLs based on the link platform type (show YouTube icon for youtube.com... links, LinkedIn icon for linkedin.com links, Twitter icon for twitter.com/x.com link, etc -- the real challenge here is compiling a list of platforms we want to cover).
The button should be labeled as Join and have a link to the chapter's idx_url.
I'd be happy to help w/ any questions here or in the #project-nest Slack channel.

/assign

Hi @VedmaPranav any updates on this?
Let me know if you need some help.

Hey @arkid15r
I am working on it and should be able to open a PR by this weekend


ordered and unordered lists parsing

This PR includes

Parse ordered and unordered list
multilevel lists with the mix of ordered and unordered lists
changes the flat lists array into a tree like structure, based on the list levels provided

This PR does not include

different styles and variants of ordered and unordered list. e.g. ordered list can be bullet points, tick marks, etc etc
Not required in our case either

please refer to the airppt-models schema updated accordingly: https://github.com/rabi92/airppt-models/blob/dev/pptelement.ts
Reference to OpenXML documentation : http://officeopenxml.com/drwSp-text-lstPr.php

Some restructuring is required for the renderer side.

Some restructuring is required for the renderer side.

already discussed with @kryasaleg ?

Some restructuring is required for the renderer side.

already discussed with @kryasaleg ?

yes


Capitalize IS

To match the conventional use of capitalization for SQL keywords elsewhere with pgslice, capitalize the "IS" portion of adding a database COMMENT. I believe these are the only two spots where a COMMENT ... IS added.

Thanks @andyatkinson!


Problems starting maybe with the SDL libraries?

Hi! I was trying to set up everything and I'm unsure how to proceed. After installing everything and running python run_pretrained_interactive.py I get the following output:
(pokelearn) User: ~/PokemonRedExperiments/baselines$ python run_pretrained_interactive.py
UserWarning: Using SDL2 binaries from pysdl2-dll 2.28.4
X Error of failed request:  BadValue (integer parameter out of range for operation)
Major opcode of failed request:  148 (GLX)
Minor opcode of failed request:  3 (X_GLXCreateContext)
Value in failed request:  0x0
Serial number of failed request:  145
Current serial number in output stream:  146

Hi!
What kind of system are you on? (os, hardware, ect)

Windows computer, using the subsystem for linux running Ubuntu 22.04.1 LTS

Are you using WSL1 or WSL2? The latter may be necessary for GUI applications to work.
Try another gui application and see if it works fine or has a similar issue.
https://learn.microsoft.com/en-us/windows/wsl/tutorials/gui-apps

I had the same issue and resolved it by restarting my computer following advice from this post https://stackoverflow.com/questions/40644455/x-error-of-failed-request-badvalue-integer-parameter-out-of-range-for-operatio

Asdonne: Those solutions didn't work for me.
I figured out I had silenced the warning which suppressed some of the output from the terminal. this is what I get:
UserWarning: Using SDL2 binaries from pysdl2-dll 2.28.4
libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  148 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  151
  Current serial number in output stream:  152

I don't know if this has anything to do with it but the machine I'm trying to run this on doesn't have an Nvidia graphics card. Is that the problem?

The line UserWarning: Using SDL2 binaries from pysdl2-dll 2.28.4 will always be emitted, even when things are running fine. That's just how pysdl2-dll works.
The rest looks like general setup of the machine. Make sure OpenGL, freeglut(?), graphics driver, graphics libraries etc. are working and installed.

Debugging the same error on Ubuntu 22 native (not WSL).
UserWarning: Using SDL2 binaries from pysdl2-dll 2.28.0
X Error of failed request:  BadValue (integer parameter out of range for operation)
Major opcode of failed request:  152 (GLX)
Minor opcode of failed request:  3 (X_GLXCreateContext)
Value in failed request:  0x0
Serial number of failed request:  173
Current serial number in output stream:  174
matt@matt-dev:~/src/PokemonRedExperiments/baselines$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.3 LTS
Release:	22.04
Codename:	jammy

Installing cuda tools resolved the issues on Ubuntu 22:
$ sudo apt install nvidia-cuda-toolkit nvidia-cuda-toolkit-gcc
Maybe add to that setup readme PR

Does the error appear if you do: python3 -m pyboy PokemonRed.gb? If so, you should open an issue on https://github.com/baekalfen/pyboy instead or post it on the #support_installation Discord channel.

This is the output I get form trying to run the line: python3 -m pyboy PokemonRed.gb.
@Baekalfen I've tried reinstalling libGL but there is no change. Is there a way to get a list of the relevant graphics libraries?, this way I could try installing them again or somehting.
UserWarning: Using SDL2 binaries from pysdl2-dll 2.28.4
2886     pyboy                          INFO
The Game Boy controls are as follows:

| Keyboard key | GameBoy equivalant |
| ---          | ---                |
| Up           | Up                 |
| Down         | Down               |
| Left         | Left               |
| Right        | Right              |
| A            | A                  |
| S            | B                  |
| Return       | Start              |
| Backspace    | Select             |

The other controls for the emulator:

| Keyboard key | Emulator function       |
| ---          | ---                     |
| F11          | Toggle fullscreen       |
| Escape       | Quit                    |
| D            | Debug                   |
| Space        | Unlimited FPS           |
| Z            | Save state              |
| X            | Load state              |
| I            | Toggle screen recording |
| O            | Save screenshot         |
| ,            | Rewind backwards        |
| .            | Rewind forward          |
| J            | Memory Window + 0x100   |
| K            | Memory Window - 0x100   |
| Shift + J    | Memory Window + 0x1000  |
| Shift + K    | Memory Window - 0x1000  |

See "pyboy --help" for how to enable rewind and other awesome features!

libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  148 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  151
  Current serial number in output stream:  152

@Casih Ok, then it's PyBoy -- or rather something with your OS. I'd recommend pasting this in the PyBoy Discord channel. Someone there probably has an idea of what's going on.
@PWhiddy I guess you can close this as it's an issue in a dependency.

@Casih I had this same issue on Pop!_OS 22.04. It seems PyBoy is looking in /usr/lib/dri/ for drivers when they are located in /usr/lib/x86_64-linux-gnu/dri/. I fixed it by created a symlink to the directory.
sudo ln -s /usr/lib/x86_64-linux-gnu/dri/ /usr/lib/dri
Hope this helps.


Wemo setup failing to load

Home Assistant release (hass --version):
0.48.0
Python release (python3 --version):
Python 3.4.2
Component/platform:
Raspberry Pi B+
Description of problem:
Wemo config failing to load with below error. Tried with discovery as well as setting static ip, but in both cases it is failing to load with this error.
2017-07-04 19:59:25 ERROR (MainThread) [homeassistant.setup] Error during setup of component wemo
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.4/site-packages/homeassistant/setup.py", line 190, in _async_setup_component
    component.setup, hass, processed_config)
  File "/usr/lib/python3.4/asyncio/futures.py", line 388, in __iter__
    yield self  # This tells Task to wait for completion.
  File "/usr/lib/python3.4/asyncio/tasks.py", line 286, in _wakeup
    value = future.result()
  File "/usr/lib/python3.4/asyncio/futures.py", line 277, in result
    raise self._exception
  File "/usr/lib/python3.4/concurrent/futures/thread.py", line 54, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/lib/python3.4/site-packages/homeassistant/components/wemo.py", line 82, in setup
    devices = [(device.host, device) for device in pywemo.discover_devices()]
  File "/home/homeassistant/.homeassistant/deps/pywemo/discovery.py", line 28, in discover_devices
    device = device_from_description(entry.location, mac)
  File "/home/homeassistant/.homeassistant/deps/pywemo/discovery.py", line 40, in device_from_description
    return device_from_uuid_and_location(uuid, mac, description_url)
  File "/home/homeassistant/.homeassistant/deps/pywemo/discovery.py", line 45, in device_from_uuid_and_location
    if uuid.startswith('uuid:Socket'):
AttributeError: 'NoneType' object has no attribute 'startswith'
2017-07-04 19:59:25 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=persistent_notification, service_data=message=The following components and platforms could not be set up:
* [wemo](https://home-assistant.io/components/wemo/)
Please check your config, title=Invalid config, notification_id=invalid_config, service_call_id=3053467184-12, service=create>

Problem-relevant configuration.yaml entries and steps to reproduce:

wemo:
  static:
    - <IP_ADDRESS>

I"m getting this same error


Removing cover-min-percentage=100 from coveralls.

Fixes #939.

We dropped running tox -e cover in the "main" tests in Travis, which would block the tox -e coveralls bit (in after_success).  Is a drop in coverage still going to show up as a failed check?

@tseaver The coverage/coveralls check will fail but the continuous-integration/travis-ci/pr check will not. Is that sufficient?

I can add a fake PR after this for us to test. Something silly like
if False:
    print 'I will never happen'  # Maybe though because False is just a variable

If we're sure that PRs will show up with failed checks, then go ahead. I don't really see the value-add of coveralls is over just running tox -e cover within Travis, but if we're going to use it, we should definitely let it work as expected.

We use coveralls for the fancy badge on the front page. cover is in the default list, so running tox locally will run tox -e cover.
I'm taking your "go ahead" as an LGTM. Happy to rollback if I misunderstood.


register fail

go2sky-gRPC2019/06/19 17:57:22 register error fail to register service

Register is async. You could receive several register failure messages.


Update API publish method, event definition method and simplify build configs

this pr requires version bump on both npm package and plugin itself.

simplify rollup config and tsconfig.json
introduce getAPI() and isPluginEnabled() method in published package, no more manual d.ts required

dataview API is also exposed in global window object, which allow to call getAPI() without args, require updated plugin to work
getAPI(app) support previous version of dataview

add version compare utils in Dataview API
update global event definition method using some typescript techniques (see below)
add types/api.ts and define a new interface DvAPIInterface separated from class DataviewApi to better check exposed api members and breaking API changes (now class DataviewApi implements DvAPIInterface)
update develop-against-dataview doc and remove “bind to api-ready event” section as it is deprecated (also marked in event definition)

Events
Now all events are defined in index.ts, exposed to api customers.
The event name and prefix are defined in events.d.ts. All dv events defined MetadataCache.on prefixed with dataview:, with some conversion, are mapped to  MetadataCache.trigger, defined internally in obsidian-ex.d.ts.
In data/index.ts, a new trigger method is introduced, receiving callback args (type, file changes) and trigger event accordingly. The full event name is validate in "dataview:metadata-change" as IndexEvtFullName at compile time.

btw, wondering what the version in DataviewPlugin does?

The version field is replaced at compile time via the rollup-version-injector with the npm version of the product; you can copy that specific string elsewhere and it will also be replaced. I guess you could maybe simplify the code a bit (avoiding needing to pass versions along) by doing that?

I guess you could maybe simplify the code a bit (avoiding needing to pass versions along) by doing that?

I've removed the version injection in 9b751, if build time is not needed in log, I can remove injection process in build time entirely.

I've merged these changes as they look good. I'm not particularly attached to compile date time so we can remove the rollup plugin. I didn't know about this.manifest in plugins.

I'm not particularly attached to compile date time so we can remove the rollup plugin. I didn't know about this.manifest in plugins.

I've opened another pr about this here: https://github.com/blacksmithgu/obsidian-dataview/pull/692


Auto complete clears input

Hi,
Not 100% sure if this is an error, or if I'm just doing it incorrectly.  I have the following page:
class TestPage extends Webpage( Finance ) {
    this.require( Autocomplete )
    body.contents += new Autocomplete {
        autocomplete.search := (
            ( query : String ) => Seq( "aaa", "aab" ).map( s => AutocompleteResult( s, s ))
        )
    }
}

If I type "a" in the input, the right options come up.  If I select one the input is filled in.  But if I click anywhere on the page the input is cleared.
The same thing happens on the examples site: http://www.hyperscala.org/example/ui/autocomplete.html
If this is expected behaviour, how do I get it to stay put?
Cheers,
Hugh.

This is expected behavior, but perhaps it shouldn't be.  The reason this happens is because when the field loses focus the visual representation is updated to reflect the currently selected element.  In this case because you haven't typed in anything that matches properly to a option and you haven't selected one, it reverts to null which is represented by default as an empty field.
How would you want this to work differently?

Ah, sorry about that.
So what I was looking for was an input box which could auto complete suggestions but would also allow me to enter new text, too.
BTW, if I click on the "aaa" from the suggestions, it still goes away if I click elsewhere afterwards.
If I then type "a" in the box and click away, it then puts "null" in the box.
If after that I type "a" in the box and click away, it leaves the "a" in the box.

You are correct, there are some serious issues with that component.  You might want to consider http://hyperscala.org/example/ux/singleselectlist.html instead.  It's far more flexible both in style and function.  I'll try to get a look at Autocomplete in the near future though.

Thanks for the amazing quick responses :-)

I don't promote Hyperscala much, but I use it for many of my clients, so I'm constantly working on it.
BTW, how did you come across Hyperscala?

I can't remember where I found it originally.  I first saw it years ago, waiting for a chance to play (I'm a compiler guy so building web stuff is miles off my list).
IMO, you have exactly the right design methodology.  None of the others make sense :-)

It's funny, I've created several web frameworks over the years (http://www.jseamless.org is my previous iteration), but the reason behind it is because I hate web development. It's ironic how much more time I've actually spent doing web development to try to avoid doing web development.
I appreciate the kind words. The goal of Hyperscala is to be clean and focused on Scala development, not some crazy new language you have to learn.  Feel free to offer any pull requests if you have anything additional to offer. Hyperscala is coming along pretty well, but I'm only one person and can always use more help. :)

I would love to.  Gonna take me a while to get into it though - just started looking this morning and an afternoon a year ago.
I do the same thing.  I often spend a month getting a computer to do something automatically that I could probably do manually in 5 minutes :-)
BTW, are you likely to do an integration or release build to maven in the near future?

Yes, I'm wrapping up my FabricJS wrapper and then I'll be doing the 0.10.0 release...if you're running off a previous release I would recommend either updating to the snapshot or building locally as it's a pretty major change.

This has been fixed with the latest commit. Take a look at the updated example to see how it should be utilized: https://github.com/darkfrog26/hyperscala/blob/master/examples/src/main/scala/org/hyperscala/examples/ui/AutoCompleteExample.scala

Thanks Matt!


deprecation warning with Cython build_ext

When Cython is installed, the setuptools build_ext command tries to use Cython.Distutils.build_ext to build extension modules:
https://github.com/pypa/setuptools/blob/master/setuptools/command/build_ext.py#L17
With Cython 0.25, the distutils extension Cython.Distutils.build_ext was updated to use cythonize (which properly handles dependencies), and the old distutils extension deprecated and moved to Cython.Distutils.old_build_ext.
The change was temporarily reverted with Cython 0.25.1 to give projects time to migrate, but a deprecation warning is still printed when using Cython's old_build_ext as setuptools does.
...lib/python3.5/site-packages/Cython/Distutils/old_build_ext.py:30: UserWarning: Cython.Distutils.old_build_ext does not properly handle dependencies and is deprecated.
  "Cython.Distutils.old_build_ext does not properly handle dependencies "

I assume setuptools.commands.build_ext will have to be updated to import the new_build_ext from Cython.Distutils.build_ext.

Cf. Cython's changelog: https://github.com/cython/cython/blob/master/CHANGES.rst

It's not clear to me from the changelog what is required of setuptools here. Try to use new_build_ext and then fall back to build_ext for older versions of Cython? Or just wait until future versions of Cython (including 0.25.0) expose build_ext as the preferred command? Can you put together a PR?

It looks like there's a hack in the cython code (that isn't working) that is supposed to suppress this error if the import is coming from setuptools:
https://github.com/cython/cython/blob/master/Cython/Distutils/old_build_ext.py#L36
And in fact, the code in cython's master branch is different now than it was in 0.25.1 as of 20 days ago:
https://github.com/cython/cython/commit/f5b89afa9d8ad1217640a40445fb88082cb40e3d
(possibly to fix this buggy behavior)
So I guess setuptools shouldn't do anything since this will be fixed in a future cython release. Note that I haven't actually verified if using an updated version of cython fixes this.

Sounds good. I'll close as it sounds as if it will be fixed by Cython, but do re-open if there's something setuptools should do.

This is fixed in Cython 0.25.2, which was released this morning.

thanks


DNS errors not handled

In version 0.7.1.
If I specify an invalid DNS address in client an exception results, rather than clean error callback:
events.js:72
throw er; // Unhandled 'error' event
^
Error: getaddrinfo ENOTFOUND
at errnoException (dns.js:37:11)
at Object.onanswer as oncomplete

⚠ This issue has been locked due to age. If you have encountered a recent
problem that seems to be covered by this issue, please open a new issue.
Please include a minimal reproducible example
when opening a new issue.


feat(Icons): add SendIcon

Overview

Add SendIcon, For now we are using this icon for prompt engineering component as we are building a chat based UI. It will be used for button for sending prompts.

PR Checklist

[x] Related to designs: figma
[x] Related to JIRA ticket: LABS-61
[ ] I have run this code to verify it works
[ ] This PR includes unit tests for the code change
[ ] This PR includes testing instructions tests for the code change
[ ] The alpha package of this PR is passing end-to-end tests in all relevant Codecademy repositories

Testing Instructions

Don't make me tap the sign.
PR Links and Envs

Repository
PR Link
PR Env

Monolith
Monolith PR
Monolith Env

Portal
Portal Link
Portal Env

Another Repo
Another Link
Another Env

📬Published Alpha Packages:@codecademy/gamut@55.8.3-alpha.0e3a48.0@codecademy/gamut-icons@9.4.4-alpha.0e3a48.0@codecademy/gamut-kit@0.6.358-alpha.0e3a48.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://653fd2d27c3dc7463e2e45d5--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut@55.8.4-alpha.05e5cd.0@codecademy/gamut-icons@9.5.1-alpha.05e5cd.0@codecademy/gamut-kit@0.6.359-alpha.05e5cd.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://653fe299ee4ef40dfa95d641--gamut-preview.netlify.appDeploy Logs


Google api key

From @sanuradhag on December 25, 2017 12:40
Where should I put the google api key?
Copied from original issue: psykolm22/ng2-google-place-autocomplete#37

Documentation Update for the moment Google api key can by add into script part on index.html.
It should be load throught Angular Module part in future release .


PIP-196 Segmented transaction buffer snapshot

Background

We use  TransactionBuffer  to handle messages sent with transactions
TransactionBuffer has provided the ability to check if the transaction  is aborted  and get the  max read position  of the topic for achieving transaction read committed isolation.
a. The max read position is the safe read position of the topic; all the transactions before the max read position is closed.
b. The transaction buffer has an aborted transaction list, which is able to filter out the uncommitted messages.
In order to avoid building up the transaction buffer by replaying all the messages from the original topic, the transaction buffer  snapshots  are taken periodically.
The snapshot will persist into a system topic under a namespace.

Motivation
In the background, we know that TransactionBuffer takes snapshots periodically. And the snapshot contains a position (maxReadPosition) and a LinkedMap (/aborts)/ which stores all the aborted transactions of the topic. But when the topic with long-term data retention and the topic has a lot of aborted transactions, a snapshot will gradually become a bottleneck that cannot accommodate enough aborted transactions, and the cost of snapshot updates will increase as the snapshot becomes larger.
The proposal will introduce the segmented transaction buffer snapshot which is able to split the snapshot into multiple parts and persist each part with an Entry to improve the above situation.
Goal

Support a large number of the abort transactions
Make the transaction buffer recovers efficiently

## Approach Overview
The approach will introduce the transaction buffer snapshot segment and transaction buffer snapshot index to make Pulsar able to handle a large number of aborted transactions.
Snapshot segment
The snapshot segment is the immutable segment that contains the fixed number of aborted transactions, the size of the snapshot segment can be configured.
We hope that the size of the snapshot segment is not too big. And when maxReadPosition is updated frequently and the number of aborted transactions is not enough to reach the configured value, these aborted transactions and maxRead Position will be written to the index topic. If the number of the aborted transactions we configure is too large, the indexes may be frequently written in a large size.
### Snapshot topic
The snapshot topic is a system topic shared by all topics under a namespace, and it is used to store snapshot segments.
Snapshot segment index
The approach will also introduce an index for the transaction buffer snapshot segments. The snapshot index storing the snapshot index information will be written to a separate topic (__transaction_buffer_snapshot_index), so that we can read the index first instead of reading all the data of the transaction buffer snapshot segments.
And when the number of aborted transactions is small, we can not write a snapshot to the snapshot topic. But the current maxReadPosition may be much larger than the maxReadPosition when the snapshot was last written, so we need to save the current maxReadPosition and aborted transactions in the index. And then update the index in the index topic.
index topic
The index topic is a system topic shared by all topics under a namespace, and it is used to store the snapshot segment index.
Workflow Overview
In the following figure, the aborted transaction divides into 4 segments and every segment has its max read position. The latest segment only has 3 aborted transactions, but its max read position has changed to (10:600). So, as we said above, the latest segment will be written into the index, and be persistent in the index topic.
When we need to check whether a transaction message is sent by an aborted transaction, we can use the position of the message to get the corresponding segment and check whether the transaction ID exists in the segment. When the transaction buffer recovers, it reads the index topic to rebuild the indexes map and uses the index to read the snapshots into memory. After recovering the transaction buffer with snapshots, the transaction buffer will read the original topic from the max read position of the latest segment to LAC to continue recovering aborted transactions and the max read position.

Configuration

Configuration
Description
Already exist

transactionBuffeSnapshotSegmentSize = 256 kb
To determine the size of the snapshot segment.
false

transactionBufferSegmentedSnapshotEnabled = false
Whether to enable segmented transaction buffer snapshot which is able to handle a large number of aborted transactions.
false

transactionBufferSnapshotMaxTransactionCount
Transaction buffer updates the snapshot index after the number of transaction operations reaches this value.
true

transactionBufferSnapshotMinTimeInMillis
Transaction buffer updates the snapshot index interval time.
true

Implementation
Change the data structure of storing aborted transactions
The /aborts/ changes from LinkedMap to ConcurrentSkipListMap<maxReadPosition, Set>. We store snapshots in a ConcurrentSkipListMap<maxReadPosition, Set<TxnID>> instead of a LinkedMap. You can see in the following example, that every Set will store aborted transactions and has a maxReadPosition as its key. When a set has contained the /transactionBufferMaxAbortedTxnsOfSnapshotSegment/ number of the aborted transactions, it will take a new fixed snapshot. And the  transactionBufferMaxAbortedTxnsOfSnapshotSegment is a constant calculated from transactionBuffeSnapshotSegmentSize.So in the transaction buffer, we will use the number of aborted transactions to control segments to take snapshots.

Snapshot topic
In this proposal, a new system topic will be used to store the segmented snapshots. If the new implementation encounters problems in the online environment, we can fall back to the original snapshot topic by configuring TransactionBufferEnableSnapshotSegment = false.
And the key of the snapshot is set to multiple-sequenceID-topicName. The sequence ID indicates the times of taking snapshots. It is a long that starts monotonically increasing from 0. When the transaction buffer takes snapshots,  it will increase the sequence ID and use the sequence ID as a part of the key to taking snapshots. When the transaction buffer recovers, it obtains the max sequence ID in the indexes as its sequence ID. The sequence ID can be used to ensure the uniqueness of the corresponding snapshot, and to delete the snapshot by key = multiple-sequenceID-topicName and value =null.

snapshot index topic
We add a system topic to store the indexes of the snapshots in the snapshot topic.
Just like the snapshot topic, the index topic is shared by all topics in a namespace.
The indexes are written after each multiple-snapshot is written in snapshot topic. And segments that do not meet the configuration conditions(transactionBuffeSnapshotSegmentSize) will also be temporarily stored in the index.
In the following example, the index topic stores the indexes for topic1 and topic2.

TransactionBufferSnapshotMetadata Class
The  TransactionBufferSnapshotIndexes will store some general information and is also a wrapper for the latest segment and the snapshot indexes.

public class TransactionBufferSnapshotIndexes{
public enum Type{
Indexes,
UnsealedSnapshot
}
private StringtopicName;
private Typetype;
private List<TransactionBufferSnapshotIndex> indexList;
private TransactionBufferSnapshotsnapshot;
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public static class TransactionBufferSnapshotIndex{
public longsequenceID;
public longmaxReadPositionLedgerID;
public longmaxReadPositionEntryID;
public longpersistentPositionLedgerID;
public longpersistentPositionEntryID;
}
@Data
@AllArgsConstructor
@NoArgsConstructor
public static class TransactionBufferSnapshot{
private StringtopicName;
private longsequenceId;
private longmaxReadPositionLedgerId;
private longmaxReadPositionEntryId;
private List<TxnID> aborts;
}
}

Clean up unused aborts data
Delete segment
The persistent deletion of the snapshot segment is to check whether  the ledger of the max read position in the snapshot segment has been deleted in the original topic after each transaction marker is written in the original topic. If the ledger does not exist, we can delete the snapshot in the snapshot topic and update its index.
Workflow
take snapshot
When

Same as the previous implementation to take the latest snapshot (update snapshot index )：

Reach the transactionBufferSnapshotMaxTransactionCount
Transaction buffer update the snapshot index after the number of transaction operations reaches this value.

Reach the transactionBufferSnapshotMinTimeInMillis
Transaction buffer updates the snapshot index interval time.

Changes in the new implementation:

When a Set reaches the maximum number of aborted transactions in a snapshot segment. (transactionBufferMaxAbortedTxnsOfSnapshotSegment).
During an upgrade, snapshots are migrated from the original snapshot topic to the new snapshot topic.

How

Increase sequence ID
Write the snapshot into the new snapshot topic with key = multiple-sequenceID-topicName.
Update snapshot index in index topic with key = topicName.

Recover

Read indexes from index topic
Recover sequence ID with the max sequence ID in the indexes.
Recover all snapshots of this topic in the snapshot topic with indexes.
Read the original topic to continue recovering from the max read position of the latest segment (saved in index) to LAC.

Metrics Change
We need to add some metrics to AbortedTxnProcesor to help users adjust the configuration.
Mainly add the following two configurations:

Name
Labels
Type
Description

pulsar_txn_tb_snapshot_segment_op_total
op=“add_del_read”
Counter
This metric is the count of operations for the pulsar transaction buffer snapshot segment. The operation can be add, delete or read.

pulsar_txn_tb_snapshot_index_op_total
op=“add_del_read”
Counter
This metric is the count of operations for the pulsar transaction buffer snapshot  index. The operation can be add, delete or read.

pulsar_txn_tb_snapshot_index_total
null
Gauge
This metric records the number of the snapshot indexes maintained in the pulsar transaction buffer.

pulsar_txn_tb_snapshot_index_entry_bytes
null
Histogram
This metric records the size of  the snapshot index entry maintained in the pulsar transaction buffer.

compatibility
We keep the original snapshot topic and implement a new solution on the new snapshot topic and index topic. In this way, we can try new solutions without affecting the data of the original snapshot topic. After the TransactionBufferEnableSnapshotSegment is enabled for the first time, then when the transaction buffer recovers, it reads the index topic first. If the index topic has its index, the transaction buffer will be recovered with the new implementation. Otherwise, the transaction buffer will be recovered from the old snapshot topic, then the old snapshot will be written to the new snapshot topic and its index will be written to the snapshot index topic. Regardless of whether the number of aborted transactions in this snapshot is greater or less than the number of aborted transaction segment we configured for snapshot segment, the old snapshot will be the first snapshot segment for that topic in the new snapshot topic.
TransactionBufferEnableSnapshotSegment can also be turned off if the user does not wish to continue using the snapshot segment. Then the transaction buffer will continue to use the original snapshot topic and the original code logic for recovery. Of course, since the snapshot during the running of the new solution is not written to this snapshot topic, the first recovery may take a long time.
upgrade

Enable transaction buffer snapshot segment by configuring TransactionBufferEnableSnapshotSegment = true.
Configure the size of the snapshot segment according to the specific business environment. The transactionBuffeSnapshotSegmentSize defaults to 256kb (262144 bytes).
Restart the broker cluster

Downgrade

Close the transaction buffer snapshot segment by configuring TransactionBufferEnableSnapshotSegment = false.
Restart the broker cluster.

Implement Step

Add configurations.
Implement system topic client for snapshot topic and index topic.
Implement a new processor to handler transaction buffer aborted transactions.
Add transaction buffer snapshot metrics.

Reject approaches
optimize the data structure that stores the aborted transactions
The transaction buffer uses a LinkedMap<TxnID, Position> to store aborted transactions. This position is where the transaction commits or abort marker is written.
We have tried using RoaringBitmap to store  TxnID, but RoaringBitmap does not compress well for huge data intervals. And transaction. In normal business scenarios, there may be an aborted transaction every 10W transactions. In this case, RoaringBitmap will use more memory.
The test report can be found  here .
Change to managerLedger implementation
Since the shared system topic has a series of disadvantages mentioned above, we consider the implementation of one managerLedger per topic transaction buffer.
In this case, the topic transaction buffer can easily delete useless data, and the two questions above can be easily resolved.
But this solution will increase the metadata used by the topic.

The latest proposal can be found here.

Confirmed with @liangyepianzhou . There is still work left for metric and admin. Move this PIP to the 3.1.0 milestone to track.

Confirmed with @liangyepianzhou . There is still work left for metric and admin. Move this PIP to the 3.1.0 milestone to track.


Reproduce experiments for table 4

Kindly request to release code about DSIR with a neural importance weight estimator .

Same request, here.


fix: icons not tree-shakable

This fixes phosphor-icons/phosphor-vue#10 by changing the rollup config to preserve the modules in separate files.
It enables you to only import the icons you need without importing everything at once.

There are yet a few issues I need to fix.

@dnlsndr appreciate you looking into the fix. I'm not a Vue dev myself, and this port was originally contributed by someone from the community. I was given the impression that a known issue in rollup (or Vue core) was preventing tree shaking. Guess that's not the case? That being said, I think you mean to merge to the vue3 branch, no?

@rektdeckard It doesn't really seem like it's a bug (for vue2 at least). Not too sure about vue3. I haven't worked on the vue3 branch of the repo, my new PR #14 is for vue2. I also doubt that there's a bug, since tree shakability is such an integral part of any package build system (including rollup) and frontend library, that not having it would represent a huge issue in the community. I've closed this PR because I approached the fix in a wrong way, that's also why i created a whole new PR. I've tested my changes against a local build of nuxt and vue, and tree shakability seems to work now. Should you need any maintainers for this repo, I'd be happy to help out. Many of our deployments as well as our corporate design depend on Phosphor icons, so making it work without friction is in our common interest :smile:

It was mainly due to misconfiguration of the build step and typescript


Works with T14 Gen2 Intel ThinkPads

Subject of the issue
Just wanted to add that the T14 Gen2 Intel version also works with this.
Your system
For example,
OS: Manjaro Linux x86_64
Host: 20W0003KUS ThinkPad T14 Gen 2i
Kernel: 5.15.12-1-MANJARO
CPU: Intel i5-1135G7 11th Gen
Version
0.8.4 (Latest)
Steps to reproduce
No response
Expected behaviour
No response
Actual behaviour
No response

Great! Thank you for letting me know.


jump: 0.30.0 -> 0.30.1

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://github.com/gsamokovarov/jump/releases.
meta.description for jump is: '"Jump helps you navigate faster by learning your habits."'.
meta.homepage for jump is: '"https://github.com/gsamokovarov/jump"
Release on GitHub
Compare changes on GitHub

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 0.30.1 with grep in /nix/store/2124q4hfmxqrl85l4qlrq4q1gnznkxg8-jump-0.30.1

directory tree listing: https://gist.github.com/35f196e6bfc6b5e4e3b01889893e61ca

du listing: https://gist.github.com/d3a8102bf9ad4f17de0864f666698fea

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)
1 package rebuild(s)
1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
jump

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/2124q4hfmxqrl85l4qlrq4q1gnznkxg8-jump-0.30.1 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A jump https://github.com/r-ryantm/nixpkgs/archive/c86ea4ec60b9c1d855c454cdfd870dcdaa60a580.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/2124q4hfmxqrl85l4qlrq4q1gnznkxg8-jump-0.30.1
ls -la /nix/store/2124q4hfmxqrl85l4qlrq4q1gnznkxg8-jump-0.30.1/bin

cc @sondr3 @kalbasit for testing.

LGTM.


Highlighting using listfocus is wrong for Tamil text

Newsbeuter version (copy from newsbeuter -v):
newsbeuter 2.10-d20cf - http://www.newsbeuter.org/
Copyright (C) 2006-2015 Andreas Krennmair
Copyright (C) 2015-2017 Alexander Batischev
Copyright (C) 2006-2017 Newsbeuter contributors

newsbeuter is free software and licensed under the MIT/X Consortium License.
Type `newsbeuter -vv' for more information.

newsbeuter 2.10-d20cf
System: Linux 4.11.8-1-zen (x86_64)
Compiler: g++ 7.1.1 20170630
ncurses: ncurses 6.0.20170527 (compiled with 6.0)
libcurl: libcurl/7.54.1 OpenSSL/1.1.0f zlib/1.2.11 libpsl/0.17.0 (+libicu/59.1) libssh2/1.8.0 nghttp2/1.23.1 (compiled with 7.54.1)
SQLite: 3.19.3 (compiled with 3.19.3)
libxml2: compiled with 2.9.4

Steps to reproduce the issue, discussed with @Minoru

Use a Tamil news feed, http://feeds.feedburner.com/dinamalar/Front_page_news

Use a proper terminal emulator(Konsole works best, st works but mangles text) with a Tamil font, for example Noto Sans.

Modify the colorscheme to https://raw.githubusercontent.com/j605/dotfiles/99e2f0f5a25e7f7c1772111efa06109a1e018f1e/newsbeuter/color in order have more pronounced change when the cursor is focused on an unread list item.

Expected outcome
The item is highlighted properly for all languages.
Actual Outcome
Part of the title is coloured and due to the colour scheme used, rest of the text is blocked out for Tamil text:

The behaviour also depends on the Terminal used, inst, since the text is not rendered properly (adjacent characters seem to have been merged keeping the length of the rendered text constant across different languages), the highlighting is correct but the text in itself is wrong. In konsole, text is rendered properly but highlighting is wrong.

Confirmed with Konsole 17.04.1, Newsbeuter d20cf. STFL 0.22 and 0.24 behave the same.
I also ran Newsbeuter with debug logging enabled and it seems like Newsbeuter itself is not confused about the highlighting:
[2017-07-26 21:24:46] DEBUG: listformatter::add_line: `<unread>   1 N  Jul 26   945   'ரூ.1,500 கோடியை செலுத்துங்க!': சுப்ரதா ராய்க்கு கோர்ட் உத்தரவு </>'
[2017-07-26 21:24:46] DEBUG: listformatter::add_line: `<unread>   2 N  Jul 26   948   எல்லை தாண்டியதை இந்தியா ஒப்புக் கொண்டதா?</>'
[2017-07-26 21:24:46] DEBUG: listformatter::add_line: `<unread>   3 N  Jul 25   926   ஒய்வு பெறுகிறார் கேஹர்: அடுத்த சுப்ரீம் கோர்ட் தலைமை நீதிபதி தீபக் மிஸ்ரா பெயர் பரிந்துரை</>'
[2017-07-26 21:24:46] DEBUG: listformatter::add_line: `<unread>   4 N  Jul 25   886   இன்றைய(ஜூலை- 26) பெட்ரோல், டீசல் விலை?  </>'
[2017-07-26 21:24:46] DEBUG: listformatter::add_line: `<unread>   5 N  Jul 25   953   காஷ்மீர் பிரிவினைவாத தலைவர் ஷபீர் ஷா கைது</>'
[2017-07-26 21:24:46] DEBUG: listformatter::add_line: `<unread>   6 N  Jul 25   929   'நீட்' தேர்வில் இருந்து விலக்கு நிரந்தர தீர்வு தேவை: ஸ்டாலின்</>'

The opening and closing tags are in their proper place.
Current hypothesis: STFL is the one to blame.
TODO:

[ ] find out how STFL does highlighting
[ ] recreate their approach in a little Ncurses program

If Ncurses version has no problems displaying this, we'll know for sure it's STFL that's at fault. Otherwise we'll have to dig deeper, into Ncurses and beyond.

While looking through STFL code, the following line from wt_list_prepare (widgets/wt_list.c) caught my attention:
int len = wcswidth(text,wcslen(text));

wcslen is supposed to calculate the string length, and wcswidth determines how many columns a terminal needs to represent that string.
Diving into this, I wrote a short program that I'm going to present verbatim here:
#define _XOPEN_SOURCE
#include <wchar.h>
#include <locale.h>

int main()
{
    const wchar_t * text = L"மாத சம்பளம் நன்கொடை: அதிபர் டிரம்ப் அசத்தல்";

    setlocale(LC_ALL, "en_US.utf8");

    wprintf(L"        |   .    |    .    |    .    |    .    |    .    |\n");
    wprintf(L"String: %ls\n", text);
    wprintf(L"Its length is %zi characters.\n", wcslen(text));
    wprintf(L"It needs %i columns to be printed out.\n", wcswidth(text, wcslen(text)));

    return 0;
}

The output in Konsole 17.04.1 looks like this:

wcswidth thinks we need 35 columns for this string, but my improvised measure clearly shows that we need 39.
The text wasn't chosen on a whim; it's copied from Newsbeuter. Notice that the cutoff in Newsbeuter happens at 35th character:

Manpage for wcswidth says it uses LC_CTYPE to figure things out. Guess we found the culprit, then.
TODO:

[ ] Find out who maintains locales
[ ] Report this upstream

To clarify: I'm not saying the problem is definitely with this particular line; I'm saying I'm saying the problem is, probably, with wcwidth overall.

Tried the same program on FreeBSD 11.0-p9, the result is the same. Had to change "en_US.utf8" to "en_US.UTF-8", otherwise the code is the same.

Interesting: if I copy the text from the console into the browser, the string takes up 37 columns; not 39 like it does in the terminal:
        |   .    |    .    |    .    |    .,,,,|    .    |
String: மாத சம்பளம் நன்கொடை: அதிபர் டிரம்ப் அசத்தல்
Its length is 43 characters.
It needs 35 columns to be printed out.

@j605, are you seeing the same thing in your browser? Who's right, the browser or the terminal? They both use monospaced font, so I don't think they both can be right simultaneously.
I found out that locales database is part of libc and maintained by GNU folks. I'm doing a bit more due diligence before filing a bug with them.

As an aside we don't have a monospace Tamil font, so that is still a problem. The text is taking up 57 columns in my browser.

Filed upstream.


Refactor subjects, introduce pipes

New names because I'm obsessed with names:

SynchronousObserver => SyncObserver
SynchronousSubscriber => SyncSubscriber
Channel => ConcurrentSubject (for familiarity reasons)

We are also introducing Pipe, which is a factory of subjects.
abstract class Pipe[I, +O] extends ObservableLike[O, ({type λ[+α] = Pipe[I, α]})#λ] {
  def unicast: (Observer[I], Observable[O])
  def multicast(implicit s: Scheduler): (Observer[I], Observable[O])
}

Done.


Import/Export data

Is your feature request related to a problem? Please describe.
To Backup and Reimport data, it would be helpful to have an Import/Export function. Especially because a software update will require a reset of the database in the future.
Describe the solution you'd like
A page for the admin, where all data can be backuped to a file and after a database reset can be reimported.

Already possible for templates


KEM en/decoders

Adds KEM algorithm encoders and decoders. Can meaningfully be used only with openssl "master" branch (https://github.com/openssl/openssl/pull/22173) and updated openssl genpkey command.
Fixes #194.

@Muzosh @ralienpp Would you care checking whether this does what you want/need?

Yes, I am able to generate certificate with KEM public key. 👍

@praveksharma FYI this new feature (in case anyone at IETF hackathon wants to have/test PQ KEM certs).


QG 4 checks (Release 23.12)

QG checks
Please keep this issue open until QG X is concluded and will be managed by the Issue Creator!
We will inform you about finding and proposals in separated issues, this issue here is for the Overview of the Checks!
Please keep this issue open until QG X is concluded!
Product Name: Item Relationship Service
Product Owner: @mkanal
Dev SPOC: @ds-jhartmann
Helm Chart Version: 6.9.0
App Version: 4.0.0
Check of Tractus-X Release Guidelines
This QG x Check is depending on the mandatory information from our current Release Guidelines.
TRG 1 Documentation

[x] TRG 1.01 appropriate README.md
[x] TRG 1.02 appropriate INSTALL.md
[x] TRG 1.03 appropriate CHANGELOG.md

TRG 2 Git

[x] TRG 2.01 default branch is named main
[x] TRG 2.03 repository structure
[x] TRG 2.04 Leading product repository
[x] TRG 2.05 .tractusx metafile in a proper format

TRG 3 Kubernetes

[x] TRG 3.02 PersistentVolume and PersistentVolumeClaim is used when needed

TRG 4 Container

[x] TRG 4.01 semantic versioning and tagging
[x] TRG 4.02 top level README.md file, that contains information about the used base image
[x] TRG 4.03 Image has USER command and Non Root Container
[x] TRG 4.05 released image must be place DockerHub as mandatory container registry; remove GHCR references
[x] TRG 4.06 Notice File for DockerHub has all necessary

TRG 5 Helm

[ ] #278
[x] TRG 5.02 Helm chart location in /charts directory and correct structure
[x] TRG 5.04 CPU and memory limits and requests are properly set
[x] TRG 5.06 application must be configurable through the Helm chart
[x] TRG 5.07 dependencies are present in the Chart.yaml they are properly configured
[x] TRG 5.08 a product has a single deployable helm chart that contains all components
[x] TRG 5.09 Helm Test running properly
[x] TRG 5.10 Products need to support 3 versions at a time
[x] TRG 5.11 Upgradeability PRERELEASE

TRG 6 Released Helm Chart

[x] TRG 6.01 Released Helm Chart

TRG 7 Open Source Governance

[x] TRG 7.01 Legal Documentation
[x] TRG 7.02 License and copyright header
[x] TRG 7.03 IP checks for project content
[x] TRG 7.04 IP checks for 3rd party content
[x] TRG 7.05 Legal information for distributions
[x] TRG 7.06 Legal information for end user content
[x] TRG 7.07 Legal notice for documentation

Hints
Information Sharing

Hi @almadigabor,
our final version for the QG is actually AppVersion 4.0.1, Helm Chart Version: 6.9.1.
We had to provide a fix to be compatible to EDC 0.5.1 and 0.5.3, but there was only one change https://github.com/eclipse-tractusx/item-relationship-service/compare/4.0.0...4.0.1

Hey! Thanks for the heads up. I'll will recheck with the new version.

Hey @ds-jhartmann! Checks are done from my side, I approve the code and close the issue.


Replace CLI/shell script in Klyshko provisioner

Using the CLI from a shell script to provision tuples after they have been generated is sub-optimal, as it bloats the image due to requiring Java, has a long startup time, and lends itself not very well to testing. We might replace the script with a Go-based application that uses a castor Go client as soon as this is available.

As the provisioner probably will not be offline phase implementation specific, the KII implementation must take care of providing the tuples in the required format (e.g. remove headers).

Depends on availability of Castor client in Go (see carbynestack/castor#49).


Incompatible with Godot 4 alpha 6

The latest alpha release (Godot_v4.0-alpha6_linux.64) has broken the extension. I had a go at compiling using the latest version of godot-cpp but got the following error:
g++ -o src/builder.os -c -std=c++17 -fPIC -Wwrite-strings -Og -g -m64 -fPIC -DDEBUG_ENABLED -DDEBUG_METHODS_ENABLED -I. -Igodot-headers -Iinclude -Igen/include -Igodot-cpp/gen/include -Igodot-cpp/include -Igodot-cpp/godot-headers -Isrc -Isrc/map src/builder.cpp
src/builder.cpp: In member function ‘virtual void Builder::set_node_common(godot::Node3D*, LMEntity&)’:
src/builder.cpp:267:21: error: ‘strstr’ was not declared in this scope
  267 |                 if (strstr(classname, "light") == classname) {
      |                     ^~~~~~
src/builder.cpp:11:1: note: ‘strstr’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
   10 | #include <tb_loader.h>
  +++ |+#include <cstring>
   11 |
scons: *** [src/builder.os] Error 1
scons: building terminated because of errors.

Small aside, is this line in the SConstruct correct?
env.Append(LINKFLAGS=["/DEBUG"])

Because I got errors from it and found the following in the SCONS docs:

Don't explicitly put include directory arguments in $LINKFLAGS or $SHLINKFLAGS because the result will be non-portable and the directories will not be searched by the dependency scanner.

I've commented it out for now.

I think I've managed to get it at least loaded:
cd godot-cpp/
scons platform=linux bits=64 generate_bindings=yes -j4
cd ..
scons platform=linux bits=64
mv addons/tbloader/bin/libtbloader.linux.64.so addons/tbloader/bin/tbloader.linux.64.so

Then update plugin.gd:
diff --git a/addons/tbloader/src/plugin.gd b/addons/tbloader/src/plugin.gd
index 3aaff1b..e034a9d 100644
--- a/addons/tbloader/src/plugin.gd
+++ b/addons/tbloader/src/plugin.gd
@@ -20,7 +20,7 @@ func _exit_tree():
        map_control = null

 func _handles(object):
-       return object is TBLoader
+       return object as TBLoader

 func _make_visible(visible: bool):
        map_control.set_visible(visible)

Then copy addons over to the project directory.

Unfortunately it crashes when I try to build the mesh:
ERROR: Condition "_instance_bindings != nullptr" is true.
   at: set_instance_binding (core/object/object.cpp:1778)

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.0.alpha6.official (e4f0fc50f79336cf76beec40e5e8e5164b288714)
Dumping the backtrace. Please include this when reporting the bug on https://github.com/godotengine/godot/issues
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x38920) [0x7fe55b0b7920] (??:0)
[2] /lib/x86_64-linux-gnu/libpthread.so.0(pthread_mutex_lock+0) [0x7fe55b3adf00] (??:0)
[3] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3fd59fa] (??:0)
[4] godot::Node* godot::internal::_call_native_mb_ret_obj<godot::Node>(void*, void*) (??:0)
[5] godot::Node::get_owner() const (??:0)
[6] MeshBuilder::build_worldspawn(int, LMEntity&, LMEntityGeometry&) (??:0)
[7] Builder::build_entity(int, LMEntity&, godot::String const&) (??:0)
[8] Builder::build_map() (??:0)
[9] TBLoader::build_meshes() (??:0)
[10] void godot::call_with_variant_args_helper<godot::___UnexistingClass>(godot::___UnexistingClass*, void (godot::___UnexistingClass::*)(), godot::Variant const**, GDNativeCallError&, IndexSequence<>) (??:0)
[11] void godot::call_with_variant_args_dv<godot::___UnexistingClass>(godot::___UnexistingClass*, void (godot::___UnexistingClass::*)(), void* const*, int, GDNativeCallError&, std::vector<godot::Variant, std::allocator<godot::Variant> > const&) (??:0)
[12] godot::MethodBindT<>::call(void*, void* const*, long, GDNativeCallError&) const (??:0)
[13] godot::MethodBind::bind_call(void*, void*, void* const*, long, void*, GDNativeCallError*) (??:0)
[14] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3f38ddf] (??:0)
[15] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3f428db] (??:0)
[16] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3dffdba] (??:0)
[17] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x1726bb2] (??:0)
[18] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x15ceab8] (??:0)
[19] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3f42818] (??:0)
[20] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3dd9fb4] (??:0)
[21] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3f96e56] (??:0)
[22] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x2874046] (??:0)
[23] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x28748dc] (??:0)
[24] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x2874cc7] (??:0)
[25] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x27f2405] (??:0)
[26] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x2816b71] (??:0)
[27] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x2818a5c] (??:0)
[28] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x28673d2] (??:0)
[29] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x2857462] (??:0)
[30] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0xdb06b8] (??:0)
[31] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3d65494] (??:0)
[32] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0x3d66e45] (??:0)
[33] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0xdb0b29] (??:0)
[34] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0xd3c850] (??:0)
[35] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xcd) [0x7fe55b0a27fd] (??:0)
[36] /home/james/.local/bin/Godot_v4.0-alpha6_linux.64() [0xd55fde] (??:0)
-- END OF BACKTRACE --
================================================================

Thanks for letting me know about Alpha 6, I didn't realize it was out. I'll update godot-cpp tomorrow and make any additional necessary adjustments.
I have actually seen that failed assertion quite a lot, I'm just not sure what's really causing it. Either way I'm pretty sure it's a different issue unrelated to Alpha 6.

/DEBUG is not an "include directory" so I'm unsure what you mean with the quote you referenced. The flag itself was necessary in some previous alphas due to a godot-cpp issue, which I believe is solved now.

This was the error I was getting until I commented out the line:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
scons: `godot-cpp/bin/libgodot-cpp.linux.debug.64.a' is up to date.
g++ -o src/builder.os -c -std=c++17 -fPIC -Wwrite-strings -Og -g -m64 -fPIC -DDEBUG_ENABLED -DDEBUG_METHODS_ENABLED -I. -Igodot-headers -Iinclude -Igen/include -Igodot-cpp/gen/include -Igodot-cpp/include -Igodot-cpp/godot-headers -Isrc -Isrc/map src/builder.cpp
g++ -o addons/tbloader/bin/libtbloader.linux.64.so -Wl,-R,'$ORIGIN' -m64 /DEBUG -shared src/builder.os src/main.os src/tb_loader.os src/builders/csg_builder.os src/builders/mesh_builder.os src/map/entity.os src/map/geo_generator.os src/map/map_data.os src/map/map_parser.os src/map/matrix.os src/map/surface_gatherer.os src/map/vector.os -Lgodot-cpp/bin -lgodot-cpp.linux.debug.64
/usr/bin/ld: cannot find /DEBUG: No such file or directory
collect2: error: ld returned 1 exit status
scons: *** [addons/tbloader/bin/libtbloader.linux.64.so] Error 1
scons: building terminated because of errors.

I've pushed a fix for Alpha 6, as well as made the /DEBUG flag Windows only. Thanks for the report!
Feel free to open another issue for that failed assertion. I'm not sure why that's happening yet. Either way it seems safe to ignore if possible. (On Windows, it just prints an error to the log, but everything works just fine)
Not sure why you changed _handles, because that still seems to expect a bool return value.


Files are no longer detected as being part of the workspace (breaking auto reveal in sidebar)

When i select a file VSC no longer reveals it in the sidebar even though i have set VSC to automatically do that, furthermore when searching in files some files are listed as part of the workspace and other are not EVEN though they reside inside the same folder

VSCode Version: 1.51
OS Version: Win 10 19042.572

Steps to Reproduce:

Use the editor
Search

or

Click on files in editor with auto reveal on

Does this issue occur when all extensions are disabled?: Yes
I 'solved' all issues by rolling back to version 1.50

I can't reproduce this. Is there anything special about the folder/workspace you are opening?

I have the exact same problem. I tried it with a fresh install of Code on Windows and with just one workspace. Still does not auto reveal any files.

Dup of https://github.com/microsoft/vscode/issues/110188
fyi @jrieken seems like more people are hitting this, so good thing we do a recovery. Though we should decide what to do for insiders.


Install Problem On My Ubuntu 22.04 OS

Deployment Method

[ ] Installer
[ ] Docker Development
[X] Docker Production
[ ] Bare metal Development
[ ] Bare metal Production
[ ] Digital Ocean image
[ ] Other (please provide a link Steps to Reproduce

Describe the problem*
Often times there are error messages when downloading and installing pieces of InvenTree and there is nobody to talk to about the situation, to give direction as what to do to alleviate the situation. For instance I have Docker loaded but I don't know if it is in the correct place. I am willing to make a one-time donation to InvenTree if someone would work with me one-on-one so I can get InvenTree running. I am not a programmer myself and so I would need explicit terminal commands to carry out.
Steps to Reproduce

I am trying to follow the instructions as given in the Deployment section for the Docker method. 1. Whoever I work with I will carry out their instructions and report back the results I get. Would need to start from scratch.

Relevant log output
No response

@LarryJoy Let me know what issues you're having? We run docker Inventree on 22.04 so I might be able to help :)

I have Docker (and I think it's called Docker-editor, or something like that) installed. I have InvenTree downloaded. Trying to follow the instructions in the documentation just doesn't work. I need step by step (terminal commands) instructions that I can implement, and when something doesn't work I need to be able to report back to someone that can get me going on the right path. If you'll stick with me I will follow the information as I understand it and report the results, good or bad, back to you. I guess I wouldn't have to give you the good report only the bad stuff when I run across it. I will try again tomorrow to set it up.

Further: By default, Docker Desktop is installed at /opt/docker-desktop. NO! It is not there.

@LarryJoy as a starting point to get docker engine installed, the following tutorial should work:

https://docs.docker.com/engine/install/ubuntu/

I think I have downloaded/installed everything I need. My problem now is when I go to http://inventree.localhost it goes to the Apache2 screen instead of to InvenTree. So, what do I check and what do I do? I guess I can follow your link, follow the instructions to remove files, and then install the files again. I guess I would try that unless someone can give me directions to resolve the Apache2/InvenTree conflict. Thank you.

I think I have downloaded/installed everything I need. My problem now is when I go to http://inventree.localhost/ it goes to the Apache2 screen instead of to InvenTree

This would likely indicate that you have an apache server which is already running, and taking control of your web port (80).
So you can either:

Disable the apache server
host InvenTree on a different port.

I would think 2) is simpler at this stage. You can try adding INVENTREE_WEB_PORT=1337 in your .env file, and then reloading the InvenTree server. Then, nominally you should be able to see your InvenTree server at inventree.localhost:1337 in your browser

Hello, InvenTree is up ad running for me for a couple of months now. I got my answers from JustAnswer for which I paid for. I would have paid someone at InvenTree but nobody would work with me one-on-one.


Rebuild HSV-1

Old HSV-1 sequence was 135164 bp long, but new one is 151974. How does this affect the corresponding GTF?

Sara to send new GTF

v0.7.0 builds new indexs for each pipeline run based off the choices made in the config.yaml


video controls

you don't get video controls for free when using them as textures in WebGL

also things like volume and scurbbing

I would add these comments to issue #13.

https://github.com/hawksley/eleVR-Web-Player is good but it's lacking VR controls.
I'd really recommend everyone check out Vrideo's HUD video controls - I like 'em. though their code doesn't appear to be publicly open source in a readable format anywhere.
https://github.com/littlstar/axis is another player. I couldn't get it working locally, but it drives http://littlstar.com/ and it looks pretty complete, organised, and uses three.js.


Pick initial Butterchurn preset

@jberg Did we want to make a curated choice for which initial preset to use, or are you happy with it picking one of the minimal preset at random?

@captbaritone : I like it randomizing the initial preset so it isn't always the same.

If it sounds good to you, it sounds good to me! Thanks.


feat: add stringifyURL

Codecov Report

Merging #7 (dd35f2b) into master (e2ead04) will increase coverage by 5.71%.
The diff coverage is 88.88%.

@@            Coverage Diff             @@
##           master       #7      +/-   ##
==========================================
+ Coverage   80.00%   85.71%   +5.71%
==========================================
  Files           3        4       +1
  Lines           5       14       +9
  Branches        0        1       +1
==========================================
+ Hits            4       12       +8
- Misses          1        2       +1

Impacted Files
Coverage Δ

src/index.ts
0.00% <0.00%> (ø)

src/stringifyURL.ts
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Allow changing piwikURL in dispatcher

I would like to be allowed to change the piwik server url in the PiwikNSURLSessionDispatcher class so my company's app can handle switching between the different dev environments urls without requiring the user to kill the app.

Hello @lschwe
Currently there is no active maintainer for the iOS SDK, so the pull request will not be merged for now. if you are willing to help maintain the iOS SDK please let us know here: https://github.com/piwik/piwik-sdk-ios/issues/91

Hi @lschwe, thank you for your Pull Request. We dropped ongoing development for version 3 of this SDK. Please consider looking into version 4, which is completely rewritten in Swift.


Improve Custom Transition for Custom Route

At the moment it's not clear or easy to add custom route transitions. This issue will track the improvement of that functionality.

This has been added


[Color] AnimatedImage tinting not getting applied

Hello,
I am trying to apply a tint to an svg image but it seems no matter what I try none of them work.
I have already tried applying each modifier individually but I just wanted to show what I have tried.
Device

iPhone 15 Prox Max
iOS 17.5

AnimatedImage(url: <svg_url>)
    .resizable()
    .renderingMode(.template)
    .onViewCreate(perform: { view, image in
        view
            .tintColor = .green
    })
    .tint(.green)
    .accentColor(.green)
    .foregroundStyle(.green)
    .colorMultiply(.green)
    .frame(width: 32, height: 32)

Seems you need change that ImageView's content mode, to use alwaysemplate
And, why not use the AniamtedImage.renderingMode ?
func renderingMode(_ renderingMode: Image.TemplateRenderingMode?) -> Image

If you could let me know if it supports tinting it would be great. In terms of implementation, I went based on what I found in the documentation that was provided which surprised me that it doesn't work. Scroll to Animated Image

This weekend I'll have a test and check.
Currently SDAnimatedImage use custom rendering on animated image (which means, we override CALayer's content), but only use UIKit rendering on static image.
I guess this cause the root issue. We need to implements each special UIImageView rendering on animated image (or find a better way to magically re-use the UIKit implementation)

@Boowman Can you have a test on WebImage ? Which use normal SwiftUI rendering (actually it's simple on concept, just dynamic change the body based on Timer, to return new SwiftUI.Image)

@dreampiggy I tested WebImage and it works when applying tint, the problem with this is that it if I use it within an animated context which is what I am doing at the moment. It doesn't animate, it seems to be fixed on the page and the content animates around it.

Can you provide a real demo with this two use case ? It seems both of them contains issue.

AnimatedImage with tint on animated image url
WebImage with tint on animated image url

Is this what you want ?
https://github.com/SDWebImage/SDWebImage/pull/3761
But SVG is not animtable, so it's a little strange in your demo. I use a APNG and WebP image for showing

Can you provide a real demo with these 2 use case ? It seems both of them contains issue.

AnimatedImage with tint on animated image url
WebImage with tint on animated image url

I was looking to create a quick demo showing the usage but the SVG are not even loading, here is a screenshot and the full-code in case you want to test it.

import SwiftUI
import SDWebImage
import SDWebImageSwiftUI

struct ContentView: View {
    @State var fadeInContent: Bool = false

    var body: some View {
        ScrollView {
            VStack {
                LazyVGrid(columns: [.init(), .init()], content: {
                    VStack {
                        Text("No tinting")
                            .foregroundStyle(.white)

                        AnimatedImage(url: URL(string: "https://www.svgrepo.com/show/194550/online-shop.svg")!)
                            .resizable()
                            .scaledToFill()
                            .frame(width: 64, height: 64)
                            .background(.gray)

                        WebImage(url: URL(string: "https://www.svgrepo.com/show/194550/online-shop.svg")!)
                            .resizable()
                            .scaledToFill()
                            .frame(width: 64, height: 64)
                            .background(.gray)
                    }
                    VStack {
                        Text("With tinting")
                            .foregroundStyle(.white)

                        AnimatedImage(url: URL(string: "https://www.svgrepo.com/show/194550/online-shop.svg")!)
                            .resizable()
                            .renderingMode(.template)
                            .scaledToFill()
                            .tint(.red)
                            .frame(width: 64, height: 64)
                            .background(.gray)

                        WebImage(url: URL(string: "https://www.svgrepo.com/show/194550/online-shop.svg")!)
                            .resizable()
                            .renderingMode(.template)
                            .scaledToFill()
                            .tint(.green)
                            .frame(width: 64, height: 64)
                            .background(.gray)
                    }
                    .onAppear {
                        withAnimation(.timingCurve(0, 0, 0.4, 1, duration: 0.6).delay(0.5)) {
                            fadeInContent = true
                        }
                    }
                    .offset(y: 50)
                    .opacity(fadeInContent ? 1 : 0)
                    .offset(y: fadeInContent ? -50 : 0)
                })
            }
            .padding()
        }
        .background(.black)
    }
}

Is this what you want ?
SDWebImage/SDWebImage#3761
But SVG is not animtable, so it's a little strange in your demo. I use a APNG and WebP image for showing

So if not AnimatedImage what would you use to load SVG ??

So if not AnimatedImage what would you use to load SVG ??

WebImage can support SVG. It will draw bitmap version instead.
See why I introduce this code:
https://github.com/SDWebImage/SDWebImageSwiftUI/blob/master/SDWebImageSwiftUI/Classes/WebImage.swift#L200-217
And, you can run SwiftUI Demo in our repo to check, which shows 2 URL of SVGs

but the SVG are not even loading
SVG is not official supported by Apple's ImageIO coder

You need that https://github.com/SDWebImage/SDWebImageSVGCoder

but the SVG are not even loading

SVG is not official supported by Apple's ImageIO coder. It's not a normal bitmap image format
You need that https://github.com/SDWebImage/SDWebImageSVGCoder

Oh yes, i forgot to add this in the sample project.

So if not AnimatedImage what would you use to load SVG ??

WebImage can support SVG. It will draw bitmap version (fixed size) instead of Pure Vector Format
See why I introduce this code:
https://github.com/SDWebImage/SDWebImageSwiftUI/blob/master/SDWebImageSwiftUI/Classes/WebImage.swift#L200-L217
And, you can run SwiftUI Demo in our repo to check, which shows 2 URL of SVGs

I will make the demo and post it here, sorry it's been taking so long.

I’m encountering the same problem as AnimatedImage doesn’t render the foregroundStyle, tint, or accent colour.


us-east should be us-east-1

us-east doesn't work. us-east-1 does when specifiying region. Probably just need to update instructions

This https://github.com/marcy-terui/gs-aws-pricing-helper/pull/12 will fix it


Make all routing calls remember filters

The rule of thumb is that unless you specifically want to override the filters, you should never use $root.state.go. Consider it low level API.

Just stumbled upon this PR.
Note taken. Also, if I'm in a position to review, LGTM. :)


Correct way to write multiple value types?

I'm sorry if this isn't the right place to ask this question, but it's the best I could think of.
I'm trying to communicate with a BLE device that expects a sort of packet structure for its certain GATT characteristic. It expects a packet containing 3 unsigned bytes and one value of UInt16. I'm having difficulty writing this packet to the object as the primary GattCharacteristic.Write() call only accepts standard bytes.

Bytes are bytes.  Write is doing what the interface needs.  This is definitely a question you should be googling, but this is a pretty quick answer:
var bytes = new byte[5];
bytes[0] = 1st byte;
bytes[1] = 2nd byte;
bytes[2] = 3rd byte;

var i = BitConverter.GetBytes(your ushort value);
bytes[3] = i[0];
bytes[4] = i[1];

Not the prettiest, but it will do the trick

Right, I thought this was just as easy as that but it's not working.
It must be an issue with how the device itself is expecting the data - I'll contact our device manufacturer on that information.
Sorry, I just assumed I was doing something wrong.


Recurate iaconelli2019

@trushaadeshara8  have left some comments in the document, please have a look.

@sgebel  discussion closed


New test for DRS VM Distribution

Check for DRS VM distribution advanced setting.

Thank you, Doug! Planning on publishing a new release at the end of October.
🎃 :shipit:


Rework folder structure and cmake files

This is a rough PR to illustrate what I meant here https://github.com/aurora-opensource/au/issues/215#issuecomment-2384104077
The diff is huge because I moved pretty much every source file to follow a more conventional layout.

All headers are now on include/*
All tests are now on tests/*

Two options were added to the top level CMakeLists:

AU_BUILD_TESTS: Allows the consumer to disable building tests which greatly improves build times when au is a subproject / being packaged. This also allows the consumer to completely ditch the dependency on GTest if wanted (E.g. for packaging).
 AU_USE_VENDORED_GTEST: Allows the consumer to use a version of GTest already present on the system. This not only makes this lib more flexible, but it greatly speeds up rebuilding from scratch.

An alias library Au::au was added. This is a CMake best practice and provides uniform usability of this library in all scenarios. Without it a project that includes au as a submodule would have to link to the au target whereas the projects that include FetchContent or a local install would link to the Au::au target. Now on every scenario, the consumer links to Au::au.
I've tested both scenarios:
Local install
A developer build au from sources and installs it
cmake -S . -B _build -DAU_USE_VENDORED_GTEST:BOOL=OFF
cmake --build _build -j16
cmake --install _build --prefix _install

In this case I've used the system gtest, all tests passed
ctest --test-dir _build

Then another project can consume it by just pointing to the install dir (if a --prefix was used, it is not needed for system libs)
cmake_minimum_required(VERSION 3.20)
project(au-consumer LANGUAGES CXX)
find_package(Au REQUIRED CONFIG)
add_executable(au-consumer test.cpp)
target_link_libraries(au-consumer PRIVATE Au::au)
target_compile_features(au-consumer PRIVATE cxx_std_14)

built with
cmake -S . -B _build -DCMAKE_PREFIX_PATH=/home/eriff/repos/au/_install
cmake --build _build

Using a submodule
Alternatively some project could include au as a submodule. The CMake for this project just replaces the find_package call with add_subdirectory(). In this case I've completely disabled the unit tests to illustrate a real world scenario
cmake_minimum_required(VERSION 3.20)
project(au-consumer LANGUAGES CXX)\

set(AU_BUILD_TESTS OFF)

add_subdirectory(au-vendored)
add_executable(au-consumer test_package.cpp)
target_link_libraries(au-consumer PRIVATE Au::au)
target_compile_features(au-consumer PRIVATE cxx_std_14)

build with
cmake -S . -B _build
cmake --build _build

Disclaimer
Once again -- this is a rough, illustrative PR. I'm sure it broke the whole bazel build since I didn't even try to make it build there. I'm not familiar with it.

Wow --- thanks for taking the time to share your ideas in a form that's precise enough to execute!  :slightly_smiling_face:  Yes, as predicted, all the builds broken, but that's not a problem as I understand that this PR is intended as a communication tool.
I had some feedback on some of the parts, but I've run out of time/energy for tonight.  I'll plan to both give that feedback later, and use this PR to help me out in playing around to make the structure more Conan-friendly.
And thanks for including detailed test plans in your PR description, which will surely be invaluable with those tasks!

OK, thanks for your patience.  :slightly_smiling_face:  It's a really exciting time at Aurora right now, so I haven't had much time/energy on weeknights to respond.  But now let me provide the promised feedback for these ideas.
First, a general remark, not related to the summary.  As I confessed earlier, I'm extremely inexperienced at using CMake, so my knowledge of best practices is quite weak.  That said, what I did learn, I learned by studying the CMake 3.29 version (i.e., 19th Edition) of Professional CMake, by Craig Scott.  So a good mental model for what to expect from Au's CMake is something like "cutting edge best practices, naively applied".  :grin:
I'll go into some specific examples below, wherever it's relevant to things you mentioned in the summary.  One example that isn't in the summary is the FILE_SET usage, which this PR would remove.  I see that you're using target_include_directories() instead, which we don't currently have anywhere.  Although I'm hard pressed to explain exactly why it's better, I've heard that FILE_SET is more the modern approach, and it replaces any need for target_include_directories() (see this comment from Craig Scott).  So I think we probably want to keep FILE_SET as-is.
Now, on to the summary!

The diff is huge because I moved pretty much every source file to follow a more conventional layout.

All headers are now on include/*
All tests are now on tests/*

I'd prefer to keep the layout the same.  I'll go into some detail explaining why.
My ideal way to construct a library is to compose it out of individual, heavily unit tested library targets.  I want each target to be a cohesive "unit", including the test: it should be as easy as possible to jump back and forth among the .hh, the .cc (where applicable), and the _test.cc files.  The best way to make this easy is to put the files right next to each other.  This also makes it prominently visible whether a file has a test.
When libraries get installed to the system, of course, those three components get scattered to the winds.  .hh files go in an include/ folder, .cc files get compiled and the object files go in a library folder, and test files are simply omitted.  That's fine --- the way we define the CMake targets and install commands makes it easy for each file to get where it needs to go.  That's CMake's job.
By contrast, I've always found developing in the more "traditional" layout extremely confusing.  After all, recall that I'm going in there with the mindset of looking for the individual pieces of a unified-whole library target... and I find myself having to hunt through different folder hierarchies to get them.  Worse, because it's so hard to find "the corresponding" unit test for a target, there often isn't one!  Each test file may cover many targets.  This means that (a) when I sit down to write a test, I have no idea where to put it, and (b) it's far too easy for a completely untested library to hide.  For (b), yes, coverage tools can help and are needed anyway, but I think it's ideally "both/and" rather than "either/or".
mp-units is a good example of where I've felt this way.  It's a very well written library that has excellent test coverage.  But the test files are far from the headers, and most headers don't have one corresponding test flie, so I find there's a lot of friction every time I sit down to write a test.  Even if I simply pick a place to put the test, I can't be confident that the next person (including "me 6 months later") would pick the same test file to put a similar test.  This makes me worry that logically similar tests would get diffused throughout the test folder over time.
A couple of side remarks:

Obviously, it's fine, and even very good to have test files that aren't 1:1 with individual targets: we need these higher level integration and/or end-to-end tests.  But the converse is not true: I never want to see a library target that doesn't have a test file.
Also noting that Au is not perfect in this regard.  :slightly_smiling_face:  We do have some files in separate test/ folders, in cases where we're using folders and globs for targets.  Maybe we shouldn't be using globs :sweat_smile: --- although they're far less problematic for bazel than for CMake.  However, even in this case, every individual header does have a corresponding test file, AFAIK.

This is pure speculation, but I suspect that we can trace the evolution of the traditional layout to a time when it wasn't as easy for something like CMake to distribute headers, object files, and tests automatically --- a time when automated tests were thought of as "nice-to-have", or in many cases not thought of at all.  By contrast, monorepo projects (such as the one that birthed Au) never had a separate "install" step, and generally grew up in an era where automated testing and high coverage were simply assumed.  In this context, it seems very natural to me to group all the files for a target in one place (including the test file).
I hope this lengthy section doesn't come across as a rant.  :slightly_smiling_face:  I simply felt that, if I'm departing from established common practice, it behooves me to explain why.

Two options were added to the top level CMakeLists:

AU_BUILD_TESTS: Allows the consumer to disable building tests which greatly improves build times when au is a subproject / being packaged. This also allows the consumer to completely ditch the dependency on GTest if wanted (E.g. for packaging).
 AU_USE_VENDORED_GTEST: Allows the consumer to use a version of GTest already present on the system. This not only makes this lib more flexible, but it greatly speeds up rebuilding from scratch.

Yes, It does feel like 2 new options is the right amount.  One should be to disable building the tests.  The other should be to opt out of taking a googletest dependency at all, thereby losing access to the Au::testing library target.
That said, I don't think we actually need AU_USE_VENDORED_GTEST.  According to Section 39.5.1 ("Try find_package() Before FetchContent") of the Professional CMake book: adding FIND_PACKAGE_ARGS to a FetchContent_Declare command tells CMake that it's OK to use find_package() to satisfy the dependency, and in fact, by default, this is the first thing that CMake should try.  If the user has a satisfactory googletest version installed, but Au uses FetchContent for googletest instead, it seems to me that this would be a bug.  Did you see this happening earlier?

An alias library Au::au was added. This is a CMake best practice and provides uniform usability of this library in all scenarios. Without it a project that includes au as a submodule would have to link to the au target whereas the projects that include FetchContent or a local install would link to the Au::au target. Now on every scenario, the consumer links to Au::au.

I believe we already do this; see: https://github.com/aurora-opensource/au/blob/030298cd9b2d20df7b3cce4256e1151d6afdb677/cmake/HeaderOnlyLibrary.cmake#L65

I've tested both scenarios:
(...@chiphogg snipped contents because they're available in the summary...)

Awesome!  Having these concrete test cases, which we can adapt to whatever solution we end up with, is a huge boon --- much appreciated.

Disclaimer
Once again -- this is a rough, illustrative PR. I'm sure it broke the whole bazel build since I didn't even try to make it build there. I'm not familiar with it.

Thank you for putting in all this effort to explain what you were saying!  Let's take stock of where we're at, and where we hope to end up.  In order to support conan, here are the steps I see:

Tweak the library structure.

That's the main job that this present PR #298 was doing, but #298 is discussion-only.
I created #300 to do this, and just now took it out of draft.

Add the GTest-related variables.

I'm planning to use #297 for this, mainly because it's a great start, and because I want you to formally get credit by showing up in the git logs for this project. :slightly_smiling_face:  I may end up pushing some commits to that branch before landing, if that turns out to be the most natural approach.
Roughly, I think the plan will be to get #300 fixed up and landed; then, merge the new main into #297; then, figure out exactly what CMake options we should add and how they should behave.

LMK what you think of this plan, and thanks again for helping make Au more broadly accessible!

I wanted to update my thoughts here, because I ran across this YouTube video:
CppCon 2019: Robert Schumacher “Don't Package Your Libraries, Write Packagable Libraries! (Part 2)”

Above, I argued that modern CMake obviates the need to separate headers, source files, and tests in a project's structure, for purposes of making it easy to install and/or deploy.  After all, defining CMake targets and their options is how we define where the files should go.
I think that's probably still true, if we're using modern CMake.  But what the above talk made me appreciate is that CMake isn't all that's out there --- there may be other, private build systems that I've never even heard of.  If we structure our library according to how it's likely to be installed on any system, then we maximize the number of build systems that people can actually use with our library.
I still think it's better on balance to keep tests integrated with their code, but I wanted to record for posterity this compelling counter-argument that I had encountered for the first time.


Missing MID Bot Rating

TODO: Add MID Bot Ratings

What's your source for the bot ratings normally?

I've use Aether Hub or Justlolaman's list in the past

47ae46317418601cc82c5102465e9b0128187051

I've used Aether Hub or Justlolaman's list in the past

So you have to mix several sources and take whatever is available and comprehensive for each set, that makes sense. 👍
Some other streamers do publish their ratings as well. I think CFB has them behind a paywall nowadays.


Upgrade to Typescript 3.6

[X] I have checked issues with enhancement label and found no duplicates

Problem
I have a project in TS3.6 that uses the new Generator type, which is not compilable under TS 3.5
Suggested Solution
Upgrade dependency to TS3.6

Probably, it will be better to declare it as peerDependency (for package usage) and devDependency (for development).

Almost everyone who uses typedoc has typescript as global/development dependency
You will get tired of updating typescript every time

Also looking forward to the dependency update / or modification that you do not have to update it ;).
Thanks for the amazing project,
Simon

PR welcome, it should be a quick fix - TypeScript isn't a peer dependency for us because we use internal APIs that could break on a minor version update.


twilio send_custom_json function "from" instead of "from_"

Rasa version: 1.4.3
Python version: 3.7
Operating system (windows, osx, ...): Ubuntu 19.10
Issue: twilio channel throws an error when trying to create the message from a custom template. keyword "from" undefined.

Hi there, when reporting a bug, please fill out as much of the template as possible. In this case that would include the template you are trying to send as well as the error traceback.


policy: Simplify L7PolicyMap creation.

Initially the map is empty, so there is no point in appending the rules.
Signed-off-by: Jarno Rajahalme<EMAIL_ADDRESS>

test-me-please

@manalibhutiyani CreateL4Filter always creates an empty map, so it does not matter where it is called from. mergeL4Port picks up the rules from the map created by CreateL4Filter and merges them to an existing entry, this part has not been changed at all.


feat: add argument for relationsType to MembersListCard

Add argument for relationsType to MembersListCard
The intention is to add the same functionality as was added to OwnershipCard in https://github.com/backstage/backstage/commit/cb592bfce7fe67cfc885b11252d2a8747f22faf0 . These are usually displayed on the same page and we want to use the same functionality for both cards.
This can be used in two ways:

Always displaying an aggregated list of users in MembersListCard
Displaying a toggle for direct/aggregated view with a default value to display aggregated users

This uses the same ts type as in the OwnershipCard.
Sorry, made an earlier PR I closed due to me opening it from master by mistake.
:heavy_check_mark: Checklist

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

Fixed the failing checks 🙂


Refactor null dependency template to es6

What kind of change does this PR introduce?
refactor
Did you add tests for your changes?
current tests should pass
If relevant, link to documentation update:
N/A
Summary
upgrade NullDependencyTemplate to es6
Does this PR introduce a breaking change?
No
Other Information
optimistically based on #3736 and its sub dependencies

uh good question but still more than expected :D


OCPBUGS-4516: fix: oc-mirror does not work as expected relative path …

…for OCI format copy
Description
Fixes issue: oc-mirror does not work as expected relative path for OCI format copy
Fixes # OCPBUGS-4516
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Copy the operator image with OCI format to localhost with relative path my-oci-catalog;
cat imageset-copy.yaml
kind: ImageSetConfiguration
apiVersion: mirror.openshift.io/v1alpha2
mirror:
operators:
    catalog: registry.redhat.io/redhat/redhat-operator-index:v4.12
    packages:
    name: aws-load-balancer-operator

$ ./bin/oc-mirror --config imageset-copy.yaml --use-oci-feature --oci-feature-action=copy oci://my-oci-catalog

Checklist:

[ ] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

/jira refresh

/jira refresh

/assign @deejross

/lgtm

/assign @soltysh

/cherrypick release-4.12