Toolbar overflow menu icon does not always render

Describe the bug
The overflow menu icon for toolbars that overflow does not render for certain widths.
Also, perhaps I should also make it a separate issue, but the overflow menu also doesn't show when the toolbar width is limited via a Styler.
How to reproduce

Go to the documentation page for toolbars: https://www.cogentcore.org/core/widgets/containers/toolbars
Switch to responsive design mode in the browser (ctrl+shift+m for Firefox or ctrl+shift+i for Chrome)
Scroll to the example toolbar with 30 items that demonstrates the overflow menu
Set the browser's responsive design screen size width to 1450
Start increasing the pixel width 1 at a time by hitting the up arrow until you observe there are certain widths which there is no overflow menu icon shown [^1]

[^1]: For me, on a 1440p display, this happens on Firefox at 1456 through 1463 and on Chrome at 1482 through 1487.  It appears to happen when the width is just wide enough to show another button, but not also the overflow menu icon itself.  The code probably needs to account with the width of both as well as the spacing when determining when to display the overflow menu.
Example code
tb := core.NewToolbar(b)
tb.Maker(func(p *tree.Plan) {
	for i := range 30 {
		tree.AddAt(p, strconv.Itoa(i), func(w *core.Button) {
			w.SetText("Button "+strconv.Itoa(i))
		})
	}
})

tb2 := core.NewToolbar(b)
tb2.Styler(func(s *styles.Style) {
	s.Max.X.Em(10)
})
tb2.Maker(func(p *tree.Plan) {
	for i := range 30 {
		tree.AddAt(p, strconv.Itoa(i), func(w *core.Button) {
			w.SetText("Button "+strconv.Itoa(i))
		})
	}
})

Relevant output
No response
Platform
Web

Thank you for reporting this! We will work on fixing this now.


Latex Syntax > Customizing the LaTeX Dictionary

Hi, I attempted to use the code from your website, but it seems to have some issues. Here's what I observed:

Also I think your code is wrong as it says "PlusMinus", but I think it is PlusMn.

I can't type code from a screenshot, so I'm not going to be able to debug this, but making a guess: this code is in TypeScript (it has the : Parser type). Perhaps you're using JavaScript?
I have no idea why you would think the name of the PlusMinus function is PlusMn. It is PlusMinus

I just copy / pasted it from that page into my app.

I understand, but since I don't have the rest of your code, I can't tell you why it's not working. It's working fine for me 😀
Again, the code in the page is using TypeScript. Is your project using TypeScript or JavaScript? If you are using JavaScript, the TypeScript syntax is probably the issue (specifically, the : Expression type)

When I go to the MathLive demo page and type \Plusmn then it gives me the plus minus symbol.

Ah, I see. The \plusmn LaTeX command is a synonym for \pm (which is the more common command).  That said, when filtering as in the example, the name property is a MathJSON identifier, not a LaTeX command. The MathJSON identifier for plus or minus is PlusMinus.

The getLatexDictionary function is a static member, so it's on ComputeEngine. getLatexDictionary. Make sure you are importing the ComputeEngine symbol in your code, i.e. import {ComputeEngine} from "..."


xcode 10 beta showing errors during compilation

We were trying out the new xcode 10 beta before the upcoming iOS 12 release, however we have run into compiler issues with the CDTDatastore cocoapod.
1. Steps to reproduce and the simplest code sample possible to demonstrate the issue
a) Download xcode 10 beta
b) Integrate CDTDatastore pod into a sample project
c) Run the project
2. What you expected to happen
Not to give compile errors
3. What actually happened
It gave compile errors
Environment details

Xcode Version

10 beta

iOS version

11

These might just be deprecated symbols. Have you tried configuring the project to use the legacy build system (in File > Project/Workspace Settings)?

@smithsz  Yes already tried, same errors


Suggestion for Container

➕ Container

container

🟡 cntr { web }

Pros

Cons

Center
Control
Counter

Hi @edulourenzo.
It seems fair to me also searching it online pops up.
I think there are no cons as center doesn't have an abbr, control -> ctrl and counter I think could be count.

Added Commit.
Thank you!


computeshader example missing texture

I did what is written in the message but this texture is still missing.

Can you check if the file exists? I just tested this with the python script, and the texture is present.

Closing due to inactivity.


I cannot get files from the server

I am unable to see files I just committed from the server
could it be that because there are no changes in the files, i cannot see the Push had done anything?

well, guess that is really the reason

well - need to take a second look


[Docs]feat: Add spotlight search

Feat: Add spotlight / cmd+k search in docs
Example in vueuse docs:

Came across this PR ytd! Maybe we can use it when released
https://github.com/nuxt-themes/docus/pull/930

Since we moved to Vitepress, can check this out https://vitepress.dev/reference/default-theme-search#search

solved


Syntactic sugar for pattern matching

Currently all Values have (here: exemplary for List):
Solution 1) (obsolete)
interface Value<T> {
    API.Match<? extends Value<T>> match();
}

interface List<T> extends Seq<T> /* extends Value<T> */ {
    /*
     * list.match().of(
     *     Case(...),
     *     Case(...)
     * )
     */
    default API.Match<List<T>> match() {
        return API.Match(this);
    }
}

The additional fluent call of .of is distracting (see above). The API we want looks more like this:
Solution 2): Match with cases
interface List<T> extends Seq<T> {
    /*
     * list.match(
     *     Case(...),
     *     Case(...),
     *     ...
     * )
     */
    default <R> R match(Case<? super List<T>, ? extends R>... cases) {
        return API.Match(this).of(cases);
    }
}

Because the cases declaration has the concrete type List<T> as argument, Java does not allow us to override this signature in a type hierarchy. This issue is solved by removing Value.match() and declare match() at our terminal types (List, Stream, HashMap, HashSet, ..., Option, Try, Future, ...) instead of declaring it at inner types (Value, Traversable, Seq, Set, Map, ...).
This implies that match() is very specific to the underlying type. When the type is known, why not use an exhaustive match instead? This could be accomplished by using the visitor pattern:
Solution 3) Match using visitor
interface List<T> extends Seq<T> {
    /*
     * list.match(
     *     (x, xs) -> ...,
     *     () -> ...
     * )
     */
    <R> R match(BiFunction<? super T, ? super List<? super T>, ? extends R> consVisitor,
            Supplier<? extends R> nilVisitor);
}

However, API.Match allows us to perform pattern matching of arbitrary depth, so having solution 2) in addition to 3) might also come handy.

We can't solve this question before 2.0.0 final, so I will remove the existing match() methods from all Values and defer this issue until 2.1.0.

We will not bake pattern matching into our types. Pattern matching is a feature on its own (-> separation of concerns).


Fixed czech translation of settings dialog

Fixed czech translation of the settings dialog based on an issue.
Issue link

It should be fine, unless I should have kept the changes to .resw files after compiling app.


Design responsive Freya download page

First step. :)

@danrabbit says he's going to basically play this by ear and tackle it issue-by-issue.


Prep release

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

Comparison is base (2f0356e) 26.75% compared to head (baf2340) 26.77%.

Files
Patch %
Lines

src/django_devicectl/models/tasks.py
50.00%
1 Missing :warning:

src/django_devicectl/rest/serializers/__init__.py
0.00%
1 Missing :warning:

src/django_devicectl/rest/serializers/devicectl.py
0.00%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #78      +/-   ##
==========================================
+ Coverage   26.75%   26.77%   +0.01%
==========================================
  Files          57       57
  Lines        2586     2588       +2
==========================================
+ Hits          692      693       +1
- Misses       1894     1895       +1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Update reference docs associated with Bulk Data Export Api

May 21, 2021
The below links currently provides documentation for Bulk Data Export Api:

https://1up.health/docs/api/fhir/bulk-data-export
https://1up.health/docs/api/fhir/fhir#bulk-data-export

The response of the Bulk Data Export Api includes below content:

"url": "https://analytics.1up.health/bulk-data/dstu2/$export/AllergyIntolerance/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdGFydCI6ImU0NiIsInRvdGFsIjo0LCJ1c2VySWQiOiIxMjM2NzUwNDkifQ.aOqtYWB9Xaup4R80pGjjl4gyaQV9SXRmZaqmnBHp2oI.ndjson"

AND

"url": "https://analytics.1up.health/bulk-data/dstu2/$export/Condition/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdGFydCI6ImU0NiIsInRvdGFsIjoxMjAxLCJ1c2VySWQiOiIxMjM2NzUwNDkifQ.LcsXvPEnC0vNr1OwIUi4j98qjRxbT-99dr739r7mjrE.ndjson"

In above examples, each .ndjson file contains information about a specific fhir resource. Our reference documentation should include brief notes for accessing the contents in these .ndjson files. The above specified reference documentation should specify that
(1) a valid access token is required to access the contents of this file,
and since an access token is required (2) reference doc should also mention that a browser cannot be used for invoking this api.
If a browser is used to access the contents, a 403 status code is output with the error message shown in attachment below.

For making the customer experience easier and smooth, notes for accessing these file's contents should be added to our reference documents.

updated : https://app.gitbook.com/@1uphealth-1/s/1uphealth/api/fhir/bulk-data-export


End to end test for service invocation

Description
Add e2e test for service invocation
#389
We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.
Please reference the issue this PR will close: #[issue number]
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[ ] Code compiles correctly
[ ] Created/updated tests
[ ] Extended the documentation

This is a good start. Have you looked in how the CI runs this? This seems to rely on a Dapr on the path and already initialized. I'd expect to see the logic as well to acquire a specific build of Dapr (can copy from Java).

Java tests have some workflow actions setup to install dapr cli and dapr with a specific version. We can reuse tha


Any way to add active reload of headers, formData etc.

Hello,
Currently I have a text box to go along with the uploader. When a user types in that textbox it should take that value and append it to the headers or formData options. Anyway guidance on to implement that?
Cheers!

Hi vgogov,
just put it to the formData options. Like:
this.uploader = new FileUploader({
    url: 'https://example.com',
    {
        formData: [
            FildName: FieldValue
        ]
    }
});

I will continue with my wiki the next days :D


Add cross map warps to features which can enable parent map chain filtration

https://discord.com/channels/463917049782075395/559837167430664203/1045457297469616138

Thanksgiving report


Differentiate between Publisher and Subscriber TransportChannelProvider

Ensures that the correct client library defaults are applied for maxInboundMessageSize.
Fixes: #2511.

Also need to document the potentially breaking change -- if someone defined a transport channel without annotations, it will no longer be used.

We never documented that customization. So, I think it's fair to break it. I will add it to release notes though.


Use different date format than angular material

I'm trying to display a different format for my date range pickers like so:
export const MOMENTJS_DATE_FORMAT = {
  parse: {
    dateInput: 'DD.MM.YYYY',
  },
  display: {
    dateInput: 'dddd, DD.MM.YYYY',
    monthYearLabel: 'MMM YYYY',
    dateA11yLabel: 'DD.MM.YYYY',
    monthYearA11yLabel: 'MMMM YYYY',
  },
};

export const MOMENTJS_RANGE_DATE_FORMAT = {
  parse: {
    dateInput: 'DD.MM.YYYY',
  },
  display: {
    dateInput: 'DD.MM.YYYY',
    monthYearLabel: 'MMM YYYY',
    dateA11yLabel: 'DD.MM.YYYY',
    monthYearA11yLabel: 'MMMM YYYY',
  },
};

@NgModule
...
  {provide: RangeDateAdapter, useClass: MomentDateAdapter, deps: [RANGE_MAT_DATE_LOCALE]},
    {provide: RANGE_MAT_DATE_FORMATS, useValue: MOMENTJS_RANGE_DATE_FORMAT},
    {provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE]},
    {provide: MAT_DATE_FORMATS, useValue: MOMENTJS_DATE_FORMAT},

Unfortunately only the MAT_DATE_FORMAT is detected by Sat RangePicker. I tried to switch the order which doesn't help in any way. Also overriding the injection token on the component level does not work for me.
How can use different formats for angular material, saturn-datepicker?

They are correct. I guess both datepickers uses the same injection token, regardless of package. Sorry, but I think th e only solution is to wrap my datepicker in component and inject required format to it.

So what I tried using it like so:
@Component({
  selector: 'app-some-component',
  templateUrl: './some-component.component.html',
  styleUrls: ['./some-component.component.scss'],
  providers: [
    {provide: MAT_DATE_FORMATS, useValue: MOMENTJS_RANGE_DATE_FORMAT}
  ]
})

This doesn't work for me. Do you have any idea on how to handle this?

Try to provide a MatMomentDateAdapter as DateAdapter in this component.
When I have similar task, I just provide a format via moment.js API (according its documentation) instead of angular way

Hi @SaturnTeam ,
Is there an estimate when this bug will be resolved?
Or a workaround to solve it...
Regards!

No any estimation.On Jun 12, 2019 3:34 PM, Alonkum<EMAIL_ADDRESS>wrote:Hi @SaturnTeam ,
Is there an estimate when this bug will be resolved?
Or a workaround to solve it...
Regards!
—You are receiving this because you were mentioned.Reply to this email directly, view it on GitHub, or mute the thread.

Hi,
Is there a chance for a short explanation on how you took the Material
source code and refactored it?
While trying to do so, I've encountered many errors on dependencies...
On Wed, Jun 12, 2019 at 3:47 PM SaturnTeam<EMAIL_ADDRESS>wrote:

No any estimation.On Jun 12, 2019 3:34 PM, Alonkum <
<EMAIL_ADDRESS>wrote:Hi @SaturnTeam ,
Is there an estimate when this bug will be resolved?
Or a workaround to solve it...
Regards!
—You are receiving this because you were mentioned.Reply to this email
directly, view it on GitHub, or mute the thread.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/SaturnTeam/saturn-datepicker/issues/53?email_source=notifications&email_token=AFS2SEDYCILQFIKLK7WFTIDP2DV67A5CNFSM4GJ2VJS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXQJJSQ#issuecomment-501257418,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFS2SEECDW2XR6QP53Q56VLP2DV67ANCNFSM4GJ2VJSQ
.

I've copypasted the code.
use rename.php to change Mat* to Sat*
manually merge code file by file using 'compare with clipboard' in phpstorm

Thank you for your prompt response!
I was wondering though, how did you separate from the rest of the material
project?
with all the dependencies...
THANK YOU!
On Mon, Jun 17, 2019 at 4:03 PM SaturnTeam<EMAIL_ADDRESS>wrote:

I've copypasted the code.
use rename.php to change Mat* to Sat*
manually merge code file by file using 'compare with clipboard' in
phpstorm

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/SaturnTeam/saturn-datepicker/issues/53?email_source=notifications&email_token=AFS2SEFT7BUIV2KVJKBOASDP26DT5A5CNFSM4GJ2VJS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODX3DCNI#issuecomment-502673717,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFS2SEBKTO5L7YKBA27EFCLP26DT5ANCNFSM4GJ2VJSQ
.

I didn't. @angular/material package is in dependencies


Bug 2095248: Report max. nr. of attachable volumes per node

"59" comes from https://github.com/kubernetes-sigs/vsphere-csi-driver/blob/532a1ccb538621261c69abec0043284fb54177b8/pkg/csi/service/node.go#L40
Presence of the the env. variable ensures that the driver reports attach limits in NodeGetInfo() CSI call.
cc @openshift/storage

/cherry-pick release-3.10


repartitionAndSortWithinPartitions not doing repartition at all

In the source code, I'm not seeing anywhere the partitionFunc was used to repartition the rdd. The current code merely does sorting within partitions.
///
/// Repartition the RDD according to the given partitioner and, within each resulting partition,
/// sort records by their keys.
///
/// This is more efficient than calling repartition and then sorting within each partition
/// because it can push the sorting down into the shuffle machinery.
///
///
///
///
///
///
///
///
public static RDD<Tuple<K, V>> repartitionAndSortWithinPartitions<K, V>(
this RDD<Tuple<K, V>> self,
int? numPartitions = null,
Func<K, int> partitionFunc = null,
bool ascending = true)
{
return self.MapPartitionsWithIndex<Tuple<K, V>>((pid, iter) => ascending ? iter.OrderBy(kv => kv.Item1) : iter.OrderByDescending(kv => kv.Item1));
}
pyspark function, which I assume this function is model upon, does do repartition correly.
python code:
def repartitionAndSortWithinPartitions(self, numPartitions=None, partitionFunc=portable_hash,
ascending=True, keyfunc=lambda x: x):
"""
Repartition the RDD according to the given partitioner and, within each resulting partition,
sort records by their keys.
>>> rdd = sc.parallelize([(0, 5), (3, 8), (2, 6), (0, 8), (3, 8), (1, 3)])
>>> rdd2 = rdd.repartitionAndSortWithinPartitions(2, lambda x: x % 2, 2)
>>> rdd2.glom().collect()
[[(0, 5), (0, 8), (2, 6)], [(1, 3), (3, 8), (3, 8)]]
"""
if numPartitions is None:
numPartitions = self._defaultReducePartitions()
    memory = _parse_memory(self.ctx._conf.get("spark.python.worker.memory", "512m"))
    serializer = self._jrdd_deserializer

    def sortPartition(iterator):
        sort = ExternalSorter(memory * 0.9, serializer).sorted
        return iter(sort(iterator, key=lambda k_v: keyfunc(k_v[0]), reverse=(not ascending)))

    return self.partitionBy(numPartitions, partitionFunc).mapPartitions(sortPartition, True)

@alexdeng - thanks for reporting the issue
@xiongrenyi - is this the issue you fixed this week?

any update?

@xiongrenyi can you comment?


Defaults installation in /root/.local/bin

The default installation path is not $HOME/.local/bin rather /root/.local/bin

Probably you ran sudo make install. Run make install. If you want to change the installation location, see the first line in the Makefile.


fixes row ordering of outer joins

nulled rows must be emitted to the user as they
appear to comply with the wanted ordering
new TODO will be solved in a different PR

@dobe pls review

ack


Double quotes?

You are right. I am sorry. For the JSON file, double quotes should be used. You can find the updated README in main. Thanks for pointing it out.


Why is OAuth removed for iOS?

Is there a reason for this change?

https://github.com/tumblr/TMTumblrSDK#oauth-os-x-only

Thanks @irace. Sorry I missed the readme, I thought I looked.


Typo in docs

What version of the library are you using?

there is a typo in the docs

Fixed via #2666
Thanks @figueroaRicardo


Mitra/Refactor 404 page to TS

Changes:

...

Type of change

[ ] Bug fix
[ ] New feature
[ ] Update feature
[x] Refactor code
[ ] Translation to code
[ ] Translation to crowdin
[ ] Script configuration
[ ] Improve performance
[ ] Style only
[ ] Dependency update
[ ] Documentation update
[ ] Release

@mitra-fs probably need to add an explicit return type on the 404 page. ReactNode or ReactElement


Travis CI cannot find module './plugins/images/ImageBase64Plugin'

I've had my projects building on Travis CI for some time now, and my configurations hardly ever get changed between repositories. Recently, however, one of my projects has been persistently failing with the same error:
Error: Cannot find module './plugins/images/ImageBase64Plugin'
    at Function.Module._resolveFilename (module.js:513:15)
    at Function.Module._load (module.js:463:25)
    at Module.require (module.js:556:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/home/travis/build/TheGrimSilence/ebongarde.com/node_modules/fuse-box/src/index.ts:19:1)
    at Module._compile (module.js:612:30)
    at Object.Module._extensions..js (module.js:623:10)
    at Module.load (module.js:531:32)
    at tryModuleLoad (module.js:494:12)
    at Function.Module._load (module.js:486:3)
error Command failed with exit code 1.

The Travis CI repository page is: https://travis-ci.com/TheGrimSilence/ebongarde.com, but I'm unsure if you'll be able to see it. I've deleted every cache possible, I've run through the my source code, and there's no call from my code to this plugin, so I think it may come from Travis itself.
For installations I use Yarn, and anything globally needed is added as such via a before_script config. It's a very recent error, and it ran fine for a week or so before it started.

@TheGrimSilence
We couldn't find the repository
TheGrimSilence/ebongarde.com

We really need some here understanding the issue here

Besides the raw log, The repository is private sadly.

Faced same issue here. The folder plugins/images is missing from node_modules/fuse-box/dist/commonjs/ when installing fuse-box with yarn but not with npm.
Truncated some installation output for brevity:
$ yarn --version
1.2.1

$ yarn

$ ls node_modules/fuse-box/dist/commonjs/plugins/
BannerPlugin.js               HTMLplugin.js.map             RawPlugin.js                  UglifyJSPlugin.js.map
BannerPlugin.js.map           HotReloadPlugin.js            RawPlugin.js.map              VuePlugin.js
ConcatPlugin.js               HotReloadPlugin.js.map        ReplacePlugin.js              VuePlugin.js.map
ConcatPlugin.js.map           JSONplugin.js                 ReplacePlugin.js.map          WebIndexPlugin.js
ConsolidatePlugin.js          JSONplugin.js.map             SourceMapPlainJsPlugin.js     WebIndexPlugin.js.map
ConsolidatePlugin.js.map      Markdownplugin.js             SourceMapPlainJsPlugin.js.map js-transpilers
CopyPlugin.js                 Markdownplugin.js.map         TypeScriptHelpers.js          stylesheet
CopyPlugin.js.map             OptimizeJSPlugin.js           TypeScriptHelpers.js.map      vue
EnvPlugin.js                  OptimizeJSPlugin.js.map       UglifyESPlugin.js
EnvPlugin.js.map              PlainJSPlugin.js              UglifyESPlugin.js.map
HTMLplugin.js                 PlainJSPlugin.js.map          UglifyJSPlugin.js

$ rm -rf node_modules

$ npm --version
5.4.2

$ npm install

$ ls node_modules/fuse-box/dist/commonjs/plugins/
BannerPlugin.js               HTMLplugin.js.map             RawPlugin.js                  UglifyJSPlugin.js.map
BannerPlugin.js.map           HotReloadPlugin.js            RawPlugin.js.map              VuePlugin.js
ConcatPlugin.js               HotReloadPlugin.js.map        ReplacePlugin.js              VuePlugin.js.map
ConcatPlugin.js.map           JSONplugin.js                 ReplacePlugin.js.map          WebIndexPlugin.js
ConsolidatePlugin.js          JSONplugin.js.map             SourceMapPlainJsPlugin.js     WebIndexPlugin.js.map
ConsolidatePlugin.js.map      Markdownplugin.js             SourceMapPlainJsPlugin.js.map images
CopyPlugin.js                 Markdownplugin.js.map         TypeScriptHelpers.js          js-transpilers
CopyPlugin.js.map             OptimizeJSPlugin.js           TypeScriptHelpers.js.map      stylesheet
EnvPlugin.js                  OptimizeJSPlugin.js.map       UglifyESPlugin.js             vue
EnvPlugin.js.map              PlainJSPlugin.js              UglifyESPlugin.js.map
HTMLplugin.js                 PlainJSPlugin.js.map          UglifyJSPlugin.js

I seem to have gotten it to work finally even with yarn. The following .travis.yml configuration works.
sudo: required

matrix:
  include:
    - os: linux
      dist: trusty
      sudo: required
      env: CC=clang CXX=clang++ npm_config_clang=1
      compiler: clang

addons:
  apt:
    packages:
      # Gotta stay updated
      - git-all

branches:
  only:
    - master
    - /^[0-9].[0-9].[0-9].*/

language: node_js
node_js:
  - "8"

cache:
  timeout: 600
  directories:
    - node_modules

install:
  - npm install -g<EMAIL_ADDRESS>  - yarn install --force

before_script:
  - yarn global add cross-env typescript ts-node rimraf

script:
  - yarn build:prod
  - ls -a

after_failure:
  - echo No post-failure script exists

After a new build ran all tests passed with alteration to my Fuse configuration

I already got that issue some time ago. It's a yarn clean issue IIRC.

@guillaume86 @TheGrimSilence if this is a yarn issue are we ok to close?

Good to close as far as I'm concerned

Fine for me as well.
Le dim. 5 nov. 2017 15:45, Adrian (Grim) Roach<EMAIL_ADDRESS>a
écrit :

Good to close as far as I'm concerned
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fuse-box/fuse-box/issues/899#issuecomment-341978367,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAa9-oWfc3BEFWJ5-q2-YNf-ZPvGb6Ohks5szcoYgaJpZM4QGzmc
.


dart2js - flag to output un-optimizable runtimeType usage

As an alternative to https://github.com/dart-lang/linter/issues/1475, @davidmorgan suggests a flag in dart2js (e.g. --output-unrestricted-runtime-type-call-sites) that produces an extra output file, e.g. unrestricted_runtime_type_call_sites.txt, which lists locations of runtimeType that may result in poorer performance / code size.
This has some benefits over a lint rule:

dart2js knows best which call sites cannot be optimized. If it changes that definition, that change can be made atomically with changes to this flag.
A bazel build rule can include a check that the call sites match only a short list (to avoid fragility, a check might just be file name, without line number, including code which is not under the control of the owners of the app.
Enforcing a lint rule across an entire bazel workspace would involve either:

complete enforcement, minus a possibly giant set of individually // ignore:'d calls, or
complete enforcement, minus a permanent whitelist of hard-to-fix / no-interest-in-fixing files.

One downside is that unrestricted runtimeType usage would not show in IDEs or earlier build steps.
If we want to let the great be the enemy of the good, we could engineer a fancier flag, like --output-cringey-code-locations, which might indicate usage of runtimeType, noSuchMethod, etc.
CC @sigmundch @davidmorgan

In case anyone is not aware or had forgotten, analyzer does already have a couple of hints related to dart2js. If there's interest in letting dart2js handle the runtimeType issues we should ask whether it makes sense to handle the dart2js hints in the same way.


Use TypeScript index file

This reexports types from other packages (vis-util and vis-data).
We have no types here so local files point nowhere.
We just need to create d.ts files for this project and it will work :smile:.
I looked at the DefinitelyTyped but they're really incomplete. Most of the stuff is missing. Migrating that will make this only partially working.
Addresses #13.
Progress

[ ] DOMutil
[x] DataSet
[x] DataView
[ ] Hammer
[ ] Network
[x] Queue
[ ] keycharm
[ ] moment
[ ] network.Images
[ ] network.allOptions
[ ] network.convertDot
[x] network.convertGephi
[ ] network.dotparser
[x] network.gephiParser
[x] util

@Thomaash Thanks! I'm really looking forward to this!

@Thomaash I would prefer it to start really only with the index.ts und than move more and more components over to TS in separated (reviewable) pull-requests. This thing here is becoming a reals monster :-)

@mojoaxel Okay, so if I understand correctly:

PR with index.ts (disfunctional types, but we don't care since we don't have functional anyway).
PR with DefinitelyTyped stuff (making the types at least somewhat usable).
PR with TypeScript Gephi parser.

Seems reasonable to me.

PR with index.ts (disfunctional types, but we don't care since we don't have functional anyway).

Yes, I would say just the TS dependencies, builds and maybe one proove-of-concept test file (Oh wait we already have this :smile: )

PR with DefinitelyTyped stuff (making the types at least somewhat usable).

I'm also looking into this. I'm trying to move the existing files from DefinitelyTyped over without loosing the git history.

PR with TypeScript Gephi parser.

That could be a good start! It's important, that the pull-request stay small enough to be able to review them. I also want to attract other maintainer and small and well structured PRs are a good way to do that :+1:
Sounds good!

@mojoaxel This is now only about index.js to index.ts transition and adjusting the build process to this change.


Notifications 2.x

Problem
#895.
Solution
This implements the major part of #895, only lacking filters and missed events.

3a858bcfa24f46190896ae409f71ff8463b121fa contains unrelated changes, I'll fix that.

Fixed and updated, extended with one commit.


serviceworke.rs site is offline

ERR_NAME_NOT_RESOLVED message in the browser when I navigate to https://serviceworke.rs/

Domain expired on 2019-11-16 19:06:36

Please fix this.

CC @digitarald

Looks like I missed the reminder on this due to travel. Just renewed the domain (will take a bit), good to see that the service is still being used – pardon the interruption!


Django 1.9 support

Django 1.9 is officially released. We need to add support for it.

Currently blocked by:

[ ] django-model-utils (see carljm/django-model-utils#197)
[ ] django-mptt (see django-mptt/django-mptt#415)


DNS queries of pi.hole return previous IP address

Problem/Motivation
I have migrated from a standalone pi-hole installation, to pi-hole in Home Assistant. My pi-hole is located at <IP_ADDRESS> (also happens to be Raspberry Pi 1, but that is not really relevant). My second raspberry pi I used to configure and setup Home Assistant including this add-on. After migration (transplanting SD cards) to my Raspberry Pi which used to run pi-hole (and therefore gets static IP <IP_ADDRESS> from DHCP), queries about pi.hole resolve to the previous IP of Home Assistant (which is now running on <IP_ADDRESS>).
Expected behavior
nslookup of pi.hole should return current host IP
Actual behavior
nslookup returned previous host IP (of previous boot)
Steps to reproduce

Have two raspberry pi (lets call it "A" and "B")
Have "A" to be a static IP from DHCP
Have "B" to be a dynamic IP from DHCP
Install Home assistant and Pi-hole in B
Change SD card to A or otherwise ensure that B gets a different IP from DHCP
Do an nslookup to the IP assigned originally in step 2, you will find that nslookup of pi.hole points to the previous IP assigned in step 3.

Proposed changes
It seems something is cached, perhaps on add-on install.

Can you post the output of your nslookup, the addon itself only adds loopback to the pi-hole name https://github.com/hassio-addons/addon-pi-hole/blob/2048cdb06fb047973de6564128033df67cd5dbfe/pi-hole/rootfs/etc/cont-init.d/pihole.sh#L184
I am guessing it is likely something pi-hole itself is doing in its config


Add Tauri to Node/Electron section

While still in Late Alpha, Tauri is in a usable state, providing a high-level and secure web view.

What an exciting project! Thanks!


Fixing the icons on the homepage

Please attach a screenshot? And if the CSS is not needed then rather remove it, we always have the history in git.

Landing for review tomorrow...

erhm.


In SCXA main page under Tools section the t-SNE plot widget point to a deprecated URL

In SCXA main page under Tools section the t-SNE plot widget point to a deprecated URL: https://github.com/ebi-gene-expression-group/scxa-tsne-widget.
The URL should be: https://github.com/ebi-gene-expression-group/atlas-components/tree/master/packages/scxa-tsne-widget.
It is an easy fix in scxa.
In the app/src/main/webapp/WEB-INF/jsp/tiles/views/home/tools.jsp you just have to replace the URL in line 23:

to

In SCXA main page under Tools section the t-SNE plot widget point to a deprecated URL: https://github.com/ebi-gene-expression-group/scxa-tsne-widget.
The URL should be: https://github.com/ebi-gene-expression-group/atlas-components/tree/master/packages/scxa-tsne-widget.
It is an easy fix in scxa.
In the app/src/main/webapp/WEB-INF/jsp/tiles/views/home/tools.jsp you just have to replace the URL in line 23:

to

Pull request: https://github.com/ebi-gene-expression-group/atlas-web-single-cell/pull/344


initial implementation

implements a publisher that watches a directory for dazaar cards,
puts them into a hyperbee db and publishes them on the dazaar
network.
after startup the dazaar card / id of the publisher is printed to
the console

Looks good other than my comment :+1:


add comma in cache-control header

fix issue #169

thanks for the PR/fix....will be merged and released asap.

merged into latest version - publish will be this week.


Add an "Active Waiting" behavior

Currently the fleet adapter behavior when a robot goes idle is to remove it from the traffic schedule and stop participating in any traffic negotiations. This is problematic for cases where a task or operator wants a robot to wait at a location which may create traffic conflicts, because the robot will become an invisible obstacle, blocking any traffic from passing through.
To deal with this use case, we can implement an "Active Waiting" behavior that the fleet adapter can use instead of letting robots go idle. While "Actively Waiting" a robot would make a best effort to remain on the designated waypoint while still giving way for other traffic that wants to pass through.

Implemented by #308


Change default branch to main

Updated directly in the application.

Don't forget, you'll have to run
git branch -m master main
git fetch origin
git branch -u origin/main main
git remote set-head origin -a


BUTTON custom identifiers

Dear Team,
I have tried the nice and recent BUTTON click feature in the convo txt file.
I'm using last botium-cli and webdriverio container mode.
From what I've seen, the button are identified bt "title" html property. Is it true?
My question: is it possible simulate BUTTON click by using, instead of the exact title, some string patterns about the title (i.e. startsWith, endsWith, contains ecc..)
Thanks

hello, this is the selector, it means that there is substring matching on the title attribute done:
const qrSelector = button[title*='${msg.buttons[0].text}']:not(:disabled)

Ok, thanks. And use alternative properties than "title"

you can just add your own function snippet if the existing predefined functionality doesnt match your bot .... i added this question to our backlog, good one.

In this stackoverflow-article you can see how a rather smart guy did exactly this: https://stackoverflow.com/questions/54645876/overriding-actions-for-botium-webdriverio-connector/54685047

Ok, looking into it. Thanks

I have also encountered this problem with finding buttons to be clicked by just title. Maybe I am missing something but wouldn't it be better to search for buttons by elementIdText, same as it is asserting them in bot's responses? It seem to be overkill to rewrite functions. Sorry for reopening.

yes, that's a good point. it is already in our backlog to make the selectors more flexible. cannot tell for now when it will make it into a sprint planning. contributions are welcome, if you are good with selenium/webdriver ...

Looking into documentation (http://v4.webdriver.io/v3.4/guide/usage/selectors.html - Element with certain text) looks like:
const qrSelector = `button*=${msg.buttons[0].text}`
would do?

both are fine, and there should be an option to configure them as needed. Botium has some reasonable defaults included, but they clearly don't match any possible situations.


Deploying with ingress (nginx), missing 'path: /'

Deploying with ingress enabled and using self-signed nginx tls.

hostname "lakehouse.<IP_ADDRESS>.nip.io" see here if not familiar.
I get 404, but if I put path: "/" in the helm values it complains

Error: UPGRADE FAILED: execution error at (lakekeeper/templates/config/secret-config-envs.yaml:7:5): The `catalog.ingress.path` should NOT include a trailing '/'!

I have tried with and without the the annotation "nginx.ingress.kubernetes.io/rewrite-target: /"
If I deploy, and then manually edit the ingress adding the "path: /", I can then access the site.

You are right, I haven't tested with a dedicated subdomain before.
Here is the fix: https://github.com/lakekeeper/lakekeeper-charts/pull/41
Thanks for the hint to nip.io - this is an awesome project!
Release should come tomorrow or so.

Thanks for the quick response.


Upgrade from 4.7.0-0..... to 4.8.0-0... updates k8s to v1.22.1 (and not v1.21) ?

I'm confused after having updated OKD from 4.7.0-0.okd-2021-09-19-013247 to 4.8.0-0.okd-2021-10-01-221835
We were expecting k8s to be upgraded from v1.20 to v1.21 but k8s is now v1.22.1 !
oc get clusterversion
NAME      VERSION                         AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.8.0-0.okd-2021-10-01-221835   True        False         19h     Cluster version is 4.8.0-0.okd-2021-10-01-221835

oc get nodes
NAME              STATUS   ROLES          AGE    VERSION
oc4-master1.<x>   Ready    master         257d   v1.22.1+8719299-1678
oc4-master2.<x>   Ready    master         257d   v1.22.1+8719299-1678
oc4-master3.<x>   Ready    master         257d   v1.22.1+8719299-1678
oc4-worker1.<x>   Ready    infra,worker   257d   v1.22.1+8719299-1678
oc4-worker2.<x>   Ready    infra,worker   257d   v1.22.1+8719299-1678
oc4-worker3.<x>   Ready    worker         257d   v1.22.1+8719299-1678

oc describe node oc4-worker3.<x>
System Info:
  Kernel Version:                         5.13.14-200.fc34.x86_64
  OS Image:                               Fedora CoreOS 34
  Operating System:                       linux
  Architecture:                           amd64
  Container Runtime Version:              cri-o://1.22.0
  Kubelet Version:                        v1.22.1+8719299-1678
  Kube-Proxy Version:                     v1.22.1+8719299-1678

oc version
Client Version: 4.8.0-0.okd-2021-10-01-221835
Server Version: 4.8.0-0.okd-2021-10-01-221835
Kubernetes Version: v1.21.2-1503+a620f506e95653-dirty <------ different from OKD!

It seems the upgrade is a mix of v4.8 and v4.9...
Amongst many other signs of the mix, the CatalogSourceopenshift-marketplace/redhat-operatorshas been updated to point to
 registry.redhat.io/redhat/redhat-operator-index:v4.9

Also the OKD documentation (https://docs.okd.io/latest) is also a mix of v4.8 and v4.9. Just enter "4.9" into the search box to find many pages referencing v4.9
As for the update channel, in the v4.7 console there was a drop-down list to choose the channels (stable-4.7..) now it is a free text.
Q:

is k8s v1.22.1 for OKD v4.8...the correct version for k8s?
what about the mix of versions in the documentation?
where to find the list of available update channels for v4.8?

OKD is installed on "baremetal" (Proxmox VMs) in UPI mode. The cluster has been installed with v4.6, upgraded to 4.7 and now v4.8

Yup, we messed up machine-os-content and 4.9 version got promoted.
It should be safe to revert back to 1.21

It can't be done manually at this point.
We'll need to remove automated promotion jobs (which caused the issue) - and update okd-machine-os, stay tuned.

Resolved in 4.8 nightlies.

Also related to this issue is that the community-operators CatalogSource is using the 4.9 endpoint

https://github.com/openshift/release/pull/22390 would fix that

Upgrading to4.8.0-0.okd-2021-10-10-030117 seems to have solved all the problems
k8s version is fine now and the index for the CatalogSource for redhat operators is ok now.
oc get clusterversion
NAME      VERSION                         AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.8.0-0.okd-2021-10-10-030117   True        False         6m28s   Cluster version is 4.8.0-0.okd-2021-10-10-030117

oc describe node oc4-worker3.<x>

System Info:
  Kernel Version:                         5.13.13-200.fc34.x86_64
  OS Image:                               Fedora CoreOS 34
  Operating System:                       linux
  Architecture:                           amd64
  Container Runtime Version:              cri-o://1.21.3
  Kubelet Version:                        v1.21.2+a620f50-1503
  Kube-Proxy Version:                     v1.21.2+a620f50-1503

That's great to hear, closing the bug


G5/feature/search bar filter materials

Creation of the search bar with the filters

front-end/src/components/AddArticles 2.vue
Duplicated Lines (%) on New Code 19.8%


Clean created directories when building

When I try to do Pkg.build("Xtensor") I get the following error:
INFO: Attempting to Create directory /Users/sglyon/.julia/v0.6/Xtensor/builds/xtensor
INFO: Directory /Users/sglyon/.julia/v0.6/Xtensor/builds/xtensor already created
INFO: Changing Directory to /Users/sglyon/.julia/v0.6/Xtensor/builds/xtensor
fatal: destination path '/Users/sglyon/.julia/v0.6/Xtensor/deos/xtensor' already exists and is not an empty directory.
=============================================================================================================[ ERROR: Xtensor ]==============================================================================================================

LoadError: failed process: Process(`git clone -b 0.9.0 --single-branch https://github.com/QuantStack/xtensor /Users/sglyon/.julia/v0.6/Xtensor/deos/xtensor`, ProcessExited(128)) [128]
while loading /Users/sglyon/.julia/v0.6/Xtensor/deps/build.jl, in expression starting on line 84

=============================================================================================================================================================================================================================================

I think this indicates that we should just delete that directory (if it exists) before starting to build

Thanks, it seems that you have artefacts from the previous build. Indeed we should delete the directory in the build tests.

I think that this should be ok now.


Support Map Fragment is null if setContentView is not called

Thanks for this library. I just integrated it into an activity with a map.
private val binding: GoogleMapSettingActivityBinding by viewBinding(GoogleMapSettingActivityBinding::inflate)

and then in onCreate, I did not called setContentView as was mentioned in the documentation.
override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        val mapFragment: SupportMapFragment? =
                supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment
        mapFragment?.getMapAsync(this)
        ...

The problem here is that mapFragment is null. However, if I call setContentView(binding.root) before calling findFragmentById then mapFragment is not null, like this -
override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(v.root)
        ...

What could be the issue?

On looking further into this, I released this is happening because the createBinding() {} which is annotated with @OnLifecycleEvent(Lifecycle.Event.ON_CREATE) in ActivityViewBindingDelegate is called after onCreate() in the activity is done executing.
So everything in onCreate() which expects the views to be already on the screen and rendered are not present at all. Seems like this is how lifecycle observer is supposed to work. So this way of view-binding wont work for me. setContentView needs to be called after super.onCreate and not somewhere after or in the middle of onCreate() execution.
Is there someway this can be done?

just use onPostCreate

On looking further into this, I released this is happening because the createBinding() {} which is annotated with @OnLifecycleEvent(Lifecycle.Event.ON_CREATE) in ActivityViewBindingDelegate is called after onCreate() in the activity is done executing.
So everything in onCreate() which expects the views to be already on the screen and rendered are not present at all. Seems like this is how lifecycle observer is supposed to work. So this way of view-binding wont work for me. setContentView needs to be called after super.onCreate and not somewhere after or in the middle of onCreate() execution.
Is there someway this can be done?

Yeah I noticed the behavior, would implement another lambda method into the delegate that'll happen after setContentView
You can use by viewBinder meanwhile or onPostCreate

There are few options you can use here.

Move your logic in onPostCreate (i think you didn't read the updated article i made an issue the first time i published it, instead of onCreate i was supposed to use onPostCreate)
use by viewBinder() and manually set the setContentView like you do

Take a look in the updated README

Option 1 is good. I'd forgotten about onPostCreate. But I'm gonna go with option 2 for now as it'll need minimum changes. Thanks.


Use cibuildwheel to make sure Linux wheels are properly named

k this is looking not too bad. I think the last thing to figure out is to have clang run

Ok WDYT of this @hugsy? I haven't looked yet at how to integrate your #33 PR yet, but I will do that this week


ResolveHostname fixes

What this PR does / why we need it:
now uses FQDN if set.  one of destination.name or destination.service must be specified for rules.  Resolves rule matching for egress route rules and consul route rules.  destination.service has precedence over destination.name
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
resolves #1179
Special notes for your reviewer:
Release note:

@GregHanson: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/pilot-presubmit.sh
29d832937106109575d1bab269eb5b97714c045f
link
/test pilot-presubmit

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. I understand the commands that are listed here.

works locally for me:
=================== Tearing down infrastructure =====================
(default infra)

I0908 15:37:24.434241    9792 kubernetes.go:55] Deleted namespace istio-test-tl0s4
I0908 15:37:24.479721    9792 kubernetes.go:55] Deleted namespace istio-test-f9tmq
I0908 15:37:24.479777    9792 driver.go:169]

=================== Passed all tests! =====================
tests: [http-reachability http2-reachability tcp-reachability ingress egress routing-rules zipkin], count: 1

.....

=================== Tearing down infrastructure =====================
(auth infra)

I0908 15:39:47.434049    9792 kubernetes.go:55] Deleted namespace istio-test-tqcwk
I0908 15:39:47.481898    9792 kubernetes.go:55] Deleted namespace istio-test-w38lr
I0908 15:39:47.481938    9792 driver.go:169]

=================== Passed all tests! =====================
tests: [http-reachability http2-reachability tcp-reachability ingress egress routing-rules zipkin], count: 1

I0908 15:39:47.482176    9792 driver.go:169]

=================== Passed infrastructure tests! =====================
([]main.infra) (len=2 cap=2) {
 (main.infra) {
  Name: (string) (len=15) "(default infra)",
  Hub: (string) (len=8) "gihanson",
  Tag: (string) (len=17) "dev_170908_153443",
  MixerImage: (string) (len=67) "gcr.io/istio-testing/mixer:986c6e1eb9c7dcff42e3df5aefa9ce858ece885e",
  CaImage: (string) (len=70) "gcr.io/istio-testing/istio-ca:2baec6baacecbd516ea0880573b6fc3cd5736739",
  Namespace: (string) "",
  IstioNamespace: (string) "",
  Verbosity: (int) 2,
  apps: (map[string][]string) <nil>,
  Auth: (istio_proxy_v1_config.ProxyMeshConfig_AuthPolicy) NONE,
  Mixer: (bool) true,
  Ingress: (bool) true,
  Egress: (bool) true,
  Zipkin: (bool) true,
  DebugPort: (int) 0,
  checkLogs: (bool) true,
  namespaceCreated: (bool) false,
  istioNamespaceCreated: (bool) false,
  debugImagesAndMode: (bool) true,
  UseInitializer: (bool) false,
  InjectConfig: (*inject.Config)(<nil>),
  UseAdmissionWebhook: (bool) false,
  AdmissionServiceName: (string) (len=20) "istio-pilot-external",
  config: (model.IstioConfigStore) <nil>
 },
 (main.infra) {
  Name: (string) (len=12) "(auth infra)",
  Hub: (string) (len=8) "gihanson",
  Tag: (string) (len=17) "dev_170908_153443",
  MixerImage: (string) (len=67) "gcr.io/istio-testing/mixer:986c6e1eb9c7dcff42e3df5aefa9ce858ece885e",
  CaImage: (string) (len=70) "gcr.io/istio-testing/istio-ca:2baec6baacecbd516ea0880573b6fc3cd5736739",
  Namespace: (string) "",
  IstioNamespace: (string) "",
  Verbosity: (int) 2,
  apps: (map[string][]string) <nil>,
  Auth: (istio_proxy_v1_config.ProxyMeshConfig_AuthPolicy) MUTUAL_TLS,
  Mixer: (bool) true,
  Ingress: (bool) true,
  Egress: (bool) true,
  Zipkin: (bool) true,
  DebugPort: (int) 0,
  checkLogs: (bool) true,
  namespaceCreated: (bool) false,
  istioNamespaceCreated: (bool) false,
  debugImagesAndMode: (bool) true,
  UseInitializer: (bool) false,
  InjectConfig: (*inject.Config)(<nil>),
  UseAdmissionWebhook: (bool) false,
  AdmissionServiceName: (string) (len=20) "istio-pilot-external",
  config: (model.IstioConfigStore) <nil>
 }
}

/retest

@GregHanson: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/pilot-presubmit.sh
29d832937106109575d1bab269eb5b97714c045f
link
/test pilot-presubmit

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. I understand the commands that are listed here.

Filed bug to add validation. Greg has left for the day. @vadimeisenbergibm will pick up more of the egress routing issue on Sunday.


Use already existing routine andCardinality() to avoid code duplication

SUMMARY
Parts of code replaced by call to method andCardinality(), thus duplicated code is removed.
Automated Checks

[ ] I have run ./gradlew test and made sure that my PR does not break any unit test.
[ ] I have run ./gradlew checkstyleMain or the equivalent and corrected the formatting warnings reported.

This will be part of the next release.


How to integrate Springboot 2.x with Zuul 2

Hi,
We have a springboot application which is currently having gateway as Zuul 1. Our application is running in Springboot 2.0.0.M2. We are trying to upgrade our Zuul gateway to Zuul 2. We created a springboot application with Zuul 2 dependency and added webflux dependency to get Netty server.
The server starts fine, but we are still unclear that how the springboot application will understand that this is a gateway and filters needs to be executed. Although we have created Routes filter, but the same is not getting invoked.
Thanks in advance,
Ron

Hey guys, I am using Spring Boot Zuul + Eureka etc (Netflix OSS stack) for our microservices, recently a developer created a new service and is using the PATCH verb.
Accessing the service directly works, however, when we access the  PATCH endpoint via Zuul API Gateway, it's not working, no errors. It's just returning the data unchanged, basically behaving as a GET request.
Any thought's on this would be much appreciated. I update to spring boot 2.2.1 and Hoxton.M3
Thanks

I suspect you are using Zuul 1.x, which is no longer supported.

Hey Carl, thanks for the quick response!
Does upgrading my pom to use spring boot 2.2.1 automatically upgrade Zuul
to 2 or do I need to explicitly do something different?
Thanks
Paul
On Mon, Nov 18, 2019 at 2:01 PM Carl Mastrangelo<EMAIL_ADDRESS>wrote:

I suspect you are using Zuul 1.x, which is no longer supported.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Netflix/zuul/issues/568?email_source=notifications&email_token=ACHPTOPJ4XR3RXE7BOGRGULQULRB7A5CNFSM4HE44HAKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEELRFDQ#issuecomment-555160206,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACHPTOPHL5BNL67SPKDNOMLQULRB7ANCNFSM4HE44HAA
.

--
--Thank You
Paul Gobin

I'm afraid not.   Spring is tied to 1.x IIUC.   It's unfortunate, but whoever added the Spring support for Zuul didn't upgrade to Zuul 2, and Netflix has decided to stop supporting Zuul 1.

Thanks Carl, much appreciated
On Mon, Nov 18, 2019 at 2:38 PM Carl Mastrangelo<EMAIL_ADDRESS>wrote:

I'm afraid not. Spring is tied to 1.x IIUC. It's unfortunate, but whoever
added the Spring support for Zuul didn't upgrade to Zuul 2, and Netflix has
decided to stop supporting Zuul 1.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Netflix/zuul/issues/568?email_source=notifications&email_token=ACHPTOPP6TJBXGGHIBXP73LQULVNDA5CNFSM4HE44HAKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEELU3PI#issuecomment-555175357,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACHPTOIPZD32R2UBS6RFSL3QULVNDANCNFSM4HE44HAA
.

--
--Thank You
Paul Gobin


Remove Cypress dependency

Cypress tests were moved to the opensearch-dashboards-functional-test repo.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Related issue https://github.com/opensearch-project/dashboards-search-relevance/issues/266

Can we remove everything in .cypress?

@msfroh Needs manual backport.
https://github.com/opensearch-project/dashboards-search-relevance/actions/runs/6101854880/job/16559074799

  /usr/bin/git cherry-pick -x -n aa9b0630d527690e16f99da6320072a32bfef574
  Auto-merging package.json
  Auto-merging yarn.lock
  CONFLICT (content): Merge conflict in yarn.lock
  error: could not apply aa9b063... Remove Cypress dependency (#274)
  hint: after resolving the conflicts, mark the corrected paths
  hint: with 'git add <paths>' or 'git rm <paths>'
  Error: Possibly a conflict error. Trying to skip possible conflict files.

Manual backport: https://github.com/opensearch-project/dashboards-search-relevance/pull/277


chore: update repo by service bot

update repo by Service Bot

CHANGELOG
FILE NAME - CHANGED BY - COMMIT MESSAGE
sonar-project.properties - plugin_sonarqube - chore: update sonar-project.properties to reconfigure sonarqube scanning.


Add ability to set APPLESEED_SEARCHPATH in user preferences

If we set something, we should append to the APPLESEED_SEARCHPATH env var, never overwrite the value.

That’s the idea. Any paths added will be appended to the env variable and the directory will be immediately scrubbed for any OSL shaders. I’ve got a branch for this one in progress.

#430


How to access prorected method from QML

Hi, when I reading this book, in chapter 16.5.2, declare a protected method
    protected:
        virtual QHash<int, QByteArray> roleNames() const override;

It's overide from QAbstractListModel, in there are declare as a public method, why do this change? and how QML call a protected method in C++ class.

QAbstractListModel can call into protected methods. then QML talks to QAbstractListModel through a private API, which is may, as they are a part of the same Qt release.


Add seeds::program constraint for PDAs.

This addresses #1131
@paul-schaaf I should have double-checked about the desired name for the attribute—happy to change from program_id to something else, just wanted to hurry up and get a PR started.

Build failing due to clippy warnings.

program_seed would be more user-friendly.
pls also add a line to the changelog

took over with alan's permission

closes https://github.com/project-serum/anchor/issues/1131


Feature/pseudo header

I'm good, with the scheme part, but I'd prefer to avoid noadd. Varnishtest can decode the index and check if it's a pseudo header.
Thoughts?

I'll try to implement to check encoded header.
But, I think noadd can also use the other.

missing required pseudo header.(abnormal pattern)

True, that makes sense. Merging.
Don't worry then, there are more pressing issue :-)

I was changed two.

pseudo header sort order
check the pseudo header at -hdr, -idxHdr, litIdxHdr, -litHdr

Oh, wait a minute, the check isn't right anyway, because the state can change (we have no mutex here). Don't care about checking the header, "-noadd" will do for the moment.

Ok,
Sorry for the confusion.

No problem, I forgot about why I didn't do it in the first place.
But thanks anyway, the rest of the branch is merged!


Engine becomes unstable when renaming or moving files while using external editors.

Tested versions
Reproducible in 4.3.rc2
System information
Godot v4.3.rc2 - Windows 10.0.22631 - GLES3 (Compatibility) - NVIDIA GeForce RTX 4060 Ti (NVIDIA; <IP_ADDRESS>13) - 13th Gen Intel(R) Core(TM) i7-13700K (24 Threads)
Issue description
While working with the latest RC I noticed renaming an item or moving a file causes the engine to behave strangely. The most notorious issue is external editors stop recognizing renamed classes (they used to do just fine before RC2).
I haven't managed to encounter this issue when using the in-engine text editor so far and I'm currently using VSCode as an external editor using the godot-tools extension.
When renaming a file, VSCode highlights an error on usages of the renamed file's class, and it displays this error:
Parser bug: Could not find external parser. (Trying to resolve class inheritance of "{ClassName}")
Attempting to reload the editor in this state causes the editor to close instead of reloading properly.
This stops happening if you revert the name or location change.
Steps to reproduce

Open a project in Godot
Set VSCode as an external editor using the godot-tools  extension.
From the Godot editor (not VSCode) rename or move a file that contains a class_name
Open in VSCode a file that references or inherits that file's class
Attempt to reload the project via Project > Reload Current Project

Minimal reproduction project (MRP)
mrp.zip

I think this is a consequence of recent GDScriptCache fixes, but it's probably a minor issue at this point, given that a similar bug exists in 4.2.
CC @rune-scape @Hilderin

When renaming a file, VSCode highlights an error on usages of the renamed file's class, and it displays this error:
Parser bug: Could not find external parser. (Trying to resolve class inheritance of "{ClassName}")

I can confirm this in the current master (03afb92ef).

Attempting to reload the editor in this state causes the editor to close instead of reloading properly.

Can't reproduce it, after restarting the editor it looks correct.

I'm not able to reproduce it with Godot 4.3 rc2
Maybe I did not follow correctly the steps??
https://github.com/user-attachments/assets/b8fa34d7-aad6-4a42-b4fb-f8cd2e198a73

Ok, I'm able to reproduce it but effectively, reloading the editor fixes the problem.


[Bug]: "..*"The path recognition rules are abnormal when scanning desensitized columns

ODC version
4.2.1
OB version
any schema
What happened?
when the path recognition rule is: *.*.*, scan a database，submit
report errror：{
"code": "DataAccessError",
"durationMillis": 524,
"error": {
"code": "DataAccessError",
"details": [],
"message": "访问元数据库错误，请联系管理员"
},
"httpStatus": "INTERNAL_SERVER_ERROR",
"message": "访问元数据库错误，请联系管理员",
"requestId": "IG04KXONDBNU83NKK8KW3",
"server": "sqaappecsv62s2011162217057.sa128",
"successful": false,
"timestamp":<PHONE_NUMBER>.016000000,
"traceId": "286262410fb74e6f"
}
What did you expect to happen?
no error
How can we reproduce it (as minimally and precisely as possible)?

Anything else we need to know?

Cloud

RootCause: The unique key constraint dose not distinguish case. If there are columns with case insensitive column name and table name, then the insert SQL executing will failed.

test passed


Add because to allowUrl

Nice to have a comment in allowUrl too, symmetry to allowDependency.

Seems like it should just be on everything


[Diagnostics][NFC] Add support for using the %select format specifier…

… with StringRef args
Get rid of some redundant availability diagnostics as a result.
Resolves SR-10588

cc @brentdax (original reporter)

I’m on vacation for a few days, so I’ll tag myself for a review when I get back, but if someone else wants to do it before me, feel free!

@swift-ci please smoke test


[Bug][Frontend][PyTorch] Scale and zero point access for FX-quantized graphs

When running unit tests from tests/python/frontend/pytorch/test_fx_quant.py with Torch 1.12.0 and Torchvision 0.13.0 environment, test_ssd_vgg test fails.
Expected behavior
Unit test to run successfully.
 However, it's not happening because in the implementation of inline_input_quant_params_for_fx function only parameters that have "_input_scale" or "_input_zero_point" inside their names are canonicalized:
https://github.com/apache/tvm/blob/b44f1343a10ccc908de5e65b864012c72d564a7b/python/tvm/relay/frontend/qnn_torch.py#L567-L584
which is not the case for the parameters with names model_backbone_scale_0 and model_backbone_zero_point_0.
The following problem can be solved by simply changing keywords from "_input_scale", "_input_zero_point" to "_scale",  "_zero_point" inside inline_input_quant_params_for_fx function. I have tried this solution and the test started to pass successfully.
Environment

TVM version: v0.10.0rc0 (https://github.com/apache/tvm/commit/b44f1343a10ccc908de5e65b864012c72d564a7b)
Ubuntu 20.04.1, x86_64, GNU/Linux 5.15.0-1021-aws
torch 1.12.0+cpu
torchvision    0.13.0+cpu

Steps to reproduce
With Torch 1.12 and Torchvision 0.13.0 environment, run:
python -m pytest tests/python/frontend/pytorch/test_fx_quant.py
Triage

frontend:pytorch

cc @yelite

@masahi I would be grateful for your comments

@tvm-bot rerun


It would be great if esbuild-sass-plugin would be compatible with esbuild 0.19.0

npm WARN Found<EMAIL_ADDRESS>npm WARN node_modules/esbuild
npm WARN   dev<EMAIL_ADDRESS>from the root project
npm WARN   2 more (bundle-require, esbuild-sass-plugin)
npm WARN
npm WARN Could not resolve dependency:
npm WARN peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm WARN node_modules/esbuild-sass-plugin
npm WARN   dev<EMAIL_ADDRESS>from the root project

v2.11.0 should freshen things up a bit!

v2.11.0 still depends on esbuild ^0.18.0, so I'm not sure how this SR is fixed?

doh!
I made a typo... thank you

v2.12.0 is the charm


Last resort: non-reproducable style.Seal() exception

Ok, so here's the deal.
I've been Googling for two weeks , to no avail. This post is kind of against all regulations, since i see everyone asking for code samples that make the issue reproducible.
Well that is impossible for my case...
In our company we're remodelling our application from winforms to WPF, and to have a neat layout we're using MaterialdesignInXAML toolkit ([https://github.com/MaterialDesignInXAML/]) , and MahApps ([https://mahapps.com/]).
In one solution of our application, a weird thing happens. The solution builds fine. Two weeks ago, it ran perfectly too.
So , nothing changed since then, and i mean literally NOTHING. We use source control, so i actually made sure i had the EXACT same source code as two weeks ago. But, alas, the solution no longer runs...
But only on my computer that is. All my colleagues have tried and could run perfectly, not a single issue...
My stacktrace:
Unhandled Exception: System.Windows.Markup.XamlParseException: Initialization of 'MahApps.Metro.Controls.MetroThumbContentControl' threw an exception. ---> System.InvalidOperationException: Can only base on a Style with target type that is base type 'MetroThumbContentControl'.
   at System.Windows.Style.Seal()
   at System.Windows.StyleHelper.SealIfSealable(Object value)
   at System.Windows.ResourceDictionary.SealValue(Object value)
   at System.Windows.ResourceDictionary.OnGettingValue(Object key, Object& value, Boolean& canCache)
   at System.Windows.ResourceDictionary.OnGettingValuePrivate(Object key, Object& value, Boolean& canCache)
   at System.Windows.ResourceDictionary.GetValueWithoutLock(Object key, Boolean& canCache)
   at System.Windows.ResourceDictionary.GetValue(Object key, Boolean& canCache)
   at System.Windows.SystemResources.LookupResourceInDictionary(ResourceDictionary dictionary, Object key, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference, Boolean& canCache)
   at System.Windows.SystemResources.FindDictionaryResource(Object key, Type typeKey, ResourceKey resourceKey, Boolean isTraceEnabled, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference, Boolean& canCache)
   at System.Windows.SystemResources.FindResourceInternal(Object key, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference)
   at System.Windows.StyleHelper.GetThemeStyle(FrameworkElement fe, FrameworkContentElement fce)
   at System.Windows.FrameworkElement.UpdateThemeStyleProperty()
   at System.Windows.FrameworkElement.OnInitialized(EventArgs e)
   at System.Windows.FrameworkElement.TryFireInitialized()
   at MS.Internal.Xaml.Runtime.ClrObjectRuntime.InitializationGuard(XamlType xamlType, Object obj, Boolean begin)
   --- End of inner exception stack trace ---
   at System.Windows.Markup.XamlReader.RewrapException(Exception e, IXamlLineInfo lineInfo, Uri baseUri)
   at System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlReader templateReader, XamlObjectWriter currentWriter)
   at System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlObjectWriter objectWriter)
   at System.Windows.FrameworkTemplate.LoadOptimizedTemplateContent(DependencyObject container, IComponentConnector componentConnector, IStyleConnector styleConnector, List`1 affectedChildren, UncommonField`1 templatedNonFeChildrenField)
   at System.Windows.FrameworkTemplate.LoadContent(DependencyObject container, List`1 affectedChildren)
   at System.Windows.StyleHelper.ApplyTemplateContent(UncommonField`1 dataField, DependencyObject container, FrameworkElementFactory templateRoot, Int32 lastChildIndex, HybridDictionary childIndexFromChildID, FrameworkTemplate frameworkTemplate)
   at System.Windows.FrameworkTemplate.ApplyTemplateContent(UncommonField`1 templateDataField, FrameworkElement container)
   at System.Windows.FrameworkElement.ApplyTemplate()
   at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   at System.Windows.UIElement.Measure(Size availableSize)
   at System.Windows.Interop.HwndSource.SetLayoutSize()
   at System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value)
   at System.Windows.Window.SetRootVisual()
   at System.Windows.Window.SetRootVisualAndUpdateSTC()
   at System.Windows.Window.SetupInitialState(Double requestedTop, Double requestedLeft, Double requestedWidth, Double requestedHeight)
   at System.Windows.Window.CreateSourceWindow(Boolean duringShow)
   at System.Windows.Window.ShowHelper(Object booleanBox)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at <ApplicationName>.<SolutionName>.WPF.TestApp.App.Main()

What i have tried (in order):
Make sure windows updates were correctly installed.
Remove any unnecessary extensions/plugins from vs.
Make sure VS versions of my colleages are the same as mine.
Make sure VS installation is identical to my colleages'.
Clear the source control cache , and perform a pull of the code.
Delete the working folder on my computer , clear the source control cache, and pull.
Clear the visual studio cache, reset user preferences/settings, delete working folder, clear source control cache, and pull.
Reinstall Visual Studio.
So basically, i've done almost anything within my knowledge, except the following two:
Reinstall .NET Framework (and libraries and so on , the whole bunch)
Reinstall Windows (Which i would prefer not to).
Also, googling the exact error, gives (for me) one exact match in stacktrace , but with no extra info included.
Please, please help me fix this , because i'm almost getting depressed about this thing.
(slightly modified code files can be supplied, but since my colleages can run perfectly, and the code is "confidential" i will not include them right away.)
Original post: https://social.msdn.microsoft.com/Forums/en-US/caea4832-2f50-47d3-a4f7-0a66499b05bf/nonreproducible-styleseal-issue-last-resort?forum=wpf
Thx!
Anton

@AntonVandeghinste But what version of MahApps are you using? Which VS? Which target framework (of your App)?

Woops I'm sorry @punker76 :
MahApps version: 1.6.5
VS version: 2017 Professional (v15.9.12)
Target framework: .Net Framework 4.6.2

@AntonVandeghinste How/Where have you added the MahApps resources? Can you provide this code? Do you have some extra custom styles or something else?

@punker76
The MahApps resources are referenced through nuget, so pretty standard.
I use the MetroWindow base class for my MainWindow.
<metro:MetroWindow x:Class="LnxJeuDax.DIAM.UI.WPF.MainWindow"                    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"                    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"                    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"                    xmlns:local="clr-namespace:LnxJeuDax.DIAM.UI.WPF"                    xmlns:metro="http://metro.mahapps.com/winfx/xaml/controls"                    xmlns:vm="clr-namespace:LnxJeuDax.DIAM.UI.WPF.ViewModels"                    xmlns:sys="clr-namespace:System;assembly=System"                    xmlns:bc="clr-namespace:LnxJeuDax.DIAM.UI.WPF.BaseControls"                    mc:Ignorable="d"                    xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"                    UseNoneWindowStyle="True"                    TextElement.Foreground="{DynamicResource MaterialDesignBody}"                    TextElement.FontWeight="Regular"                    TextElement.FontSize="13"                    TextOptions.TextFormattingMode="Ideal"                    TextOptions.TextRenderingMode="Auto"                    Background="{DynamicResource MaterialDesignPaper}"                    FontFamily="{DynamicResource MaterialDesignFont}"                    WindowState="Maximized"                    ResizeMode="NoResize"                    FocusManager.FocusedElement="{Binding ElementName=MenuItemsListBox}">   <Window.Resources>     <ResourceDictionary>       <ResourceDictionary.MergedDictionaries>         <ResourceDictionary Source="./Resources/GlobalResources.xaml"/>       </ResourceDictionary.MergedDictionaries>     </ResourceDictionary>   </Window.Resources>   <materialDesign:DialogHost>     <materialDesign:DrawerHost         IsLeftDrawerOpen="{Binding ElementName=Menu, Path=IsChecked}">       <materialDesign:DrawerHost.LeftDrawerContent>        </materialDesign:DrawerHost.LeftDrawerContent>     </materialDesign:DrawerHost>   </materialDesign:DialogHost> </metro:MetroWindow>
And as I Just noticed , everything renders just fine in the VS Designer, which makes this issue even more weird than it already was...
Apart from MaterialDesign, Mahapps , ControlzEx, Dragablz i have next to no custom styles.
Maybe a few basedon, but these are mostly related to Material...
Please let me know if you need anything else.
Although I don't think it's got anything to do with MahApps, i just feel helpless, and about to give up :)

@AntonVandeghinste So you added also this stuff https://github.com/MahApps/MahApps.Metro/wiki/Quick-Start#add-the-resources-in-appxaml-v165-and-older

@punker76
I did not, but have just now, resulting in the exact same exception...

@AntonVandeghinste I had a similar exception in the past. It was caused by the Style BasedOn="Sone invalid Basecontrol here". Could you try to comment out your custom styles?
Happy coding
Tim

@timunie
I can, and I will, although i doubt the impact it will have, since it can run perfectly with my colleages...
Gimme a sec, i'll get back to you

@timunie
Alas , still no changes after commenting my own styles.... :(

@AntonVandeghinste The last ideas i have is to reinstall all nuget packeges or try the latest prerelease of MahApps.
Happy coding
Tim

@AntonVandeghinste What contains your GlobalResources?

GlobalResources.txt
@punker76  Sorry it's in TXT Github won't allow anything else.
@timunie i've tried with the latest prerelease, to no avail. I'll get to reinstalling all nugets today

@AntonVandeghinste you can just type the following into the Package Manager:
Update-Package  –reinstall
see: https://docs.microsoft.com/de-de/nuget/consume-packages/reinstalling-and-updating-packages#when-to-reinstall-a-package
Happy coding
Tim

Hi
I have resolved the issue. Well, I have eliminated the issue that is.
Turns out if I call InitializeComponent() myself in the ctor of my window, the thing crashes, but only on my computer. (and probably a few others too).
I must say, you both have helped significantly by pointing out different options and things i could try, for which i thank you.
Concerning the issue itself, i've got no clue why this is an issue on my computer and isn't on my colleagues' computers, but remove the call to InitializeComponent() (PresentationFramework will do this itself) and there isn't an issue on any computer.
Thx Guys
@punker76
@timunie

save issus here

Hi @DancingDolphins ,
If this is an unsolved issue please open a new issue here as well.
Thank you in advance
Happy coding
Tim


Add tests suite

I thought it would be good to have this draft PR open so that we can discuss bugs that the tests reveal as I find them.
First one is a bug I've been trying to nail dain for a while: @Neurrone what is the reason that the path of the items were used to sort instead of the name? There's a comment that specifies that it needs to be that way but not why. I've made a bunch of test cases to check sorting under different naming schemes and the paths mess up, while the names do not (so far).
If you remember the use cases that necessitate using the path, could you please tell them so I can add them to the tests? It's possible that a more complex sorting algorithm will be required but it needs tests before I can start working on a test.

Also, question: this plugin seems to have a different mechanism of matching tracks than the normal beets algorithm, like the methods for importing them are different. Is this intentional? It's very likely that I'm not understanding the whole process but there are issues that this impacts.
Consider the ordering issue; if beets can normally order the tracks according to the returned album when searching (either on MB or Audible), then that might be the solution to the ordering issue for the tracks, but that doesn't happen, and instead there is the natsort that fails in a lot of cases.

Apologies for the delayed response.
I am trying to remember the reason for this.
I believe it was because I found it unreliable to rely on the track titles and it was usually far more accurate to rely on the file names to natsort them to get the correct order of the tracks. Otherwise, I would have stuck to using the track titles, per default Beets behaviour.
If the ordering of the files on disks that Beets detects doesn't match the data source from Audible, then Beets would try to assign the wrong files to the wrong chapter titles from Audible.

So I did some more testing and reimporting a bunch of books into my library to find those edge cases. Natural sorting works well for a lot of cases but not when bytes are used and not when there are different naming schemes (e.g. Chapter 1-10 and then a chapter named Prologue; the prologue will be placed at the end because P comes after C).
I'm not sure if there's any good way to sort this with a one-size fits all approach given the sheer breadth of possible track namings. I would like to try playing around with the track matching and distance algorithms, with your permission, to try and get that working correctly instead of this system with natsorting. There are a couple reasons for this:

I have had issues where the track sorting still fails and it renames chapters inappropriately, so this will have to be addressed anyway at some point
The Audible response is the master record of the chapters, and known to be correct. If we can match to that then we should; if we can't then natural sorting or a more complex algorithm can be a fallback.
This is somewhat at odds with the rest of beets and their methodology so intrinsically this method will not benefit from any further improvements that beets makes to their core functions.

It's up to you if you'd like to take this approach but right now, the tests I've got don't seem to have an immediate answer to get them working. They fail with the old method and they fail with a natural sort on the titles too.

I'd be happy to use a better solution.
I used the Natsort method on paths because it seemed to be the easiest way for it to work for most cases. Part of the trade-off was accepting it would never work all the time.

Ignore all the commits here, I need to upload them to github to test them on my system, I'm working out the kinks with a matching method, with some promising results! See how it goes.

It is finally complete! I have created a series of algorithms that allow for most books to be matched and which also allows for extension in the future. It is completely configurable and comes with tests that cover the entire chapter matching process along with a couple of other tests that cover the things that are likely to fail.
What do you think @Neurrone?

Thanks for working on this. Given this is a large change, I'll probably only be able to take a look at this in a week or two.

Sure no rush.

I've finished looking at the implementation but haven't gone through the tests in detail yet.
Really appreciate the concept of a list of strategies that you introduced, since it does simplify the overall logic and allows customization.
My main concern is the complexity of some of the algorithms relative to how the matching was done previously. The previous implementation used the file input if the number of tracks didn't match the album info from Audible. I suspect that trying to perform matches in these cases (e.g, chapter_levenshtein) is hard to debug and may not work properly.
What do you think of restoring that logic?

Complexity is required for complex cases. The simple fact is that the old method for doing this didn't cope well with the varied track titles that I found and used personally. Simple methods don't work when the data input isn't simple.

The previous implementation used the file input if the number of tracks didn't match the album info from Audible.

To address your point, using the file input doesn't always work. It doesn't work when you don't have source numbering, which is a lot of audiobooks in my experience. Even if the number of tracks do match, that's not actually a guarantee that the actual tracks match. Consider the difference between a book with 20 chapters on audible, and a the actual audiobook which has been split into 20 tracks of the same size. There are 20 tracks in both cases, but using the audible method is objectively wrong and won't match the actual book.
The goal of the many different measures is that each person can change the ordering based on what audiobooks they're importing at the time. If you're importing a book that you know Levenshtein will work well at, you can make it the primary method that the plugin uses.

Instead of having a special case for matching on a single file, replace it with a strategy that replaces the info from Audible with the input list if the number of chapters don't match

This is the Levenshtein function, but it is very bad at doing this. Consider that you don't know which chapters match up, because there might not be any ordering. Any numbers in the title are ignored (they're considered in the natural sort) but you don't know which matches to what track from Audible. You don't know if any of them match at all. What the program does is calculate all of the distances from every track in the files to every track from Audible. Then, it matches the closest match with the file and overwrites the title. This isn't actually guaranteed to be a close match. If there's a single letter in common, then the closest match will be that, but it's not guaranteed to be accurate or even relevant.

I suspect that trying to perform matches in these cases (e.g, chapter_levenshtein) is hard to debug and may not work properly.

Your concern over the Levenshtein is a little strange to me. This is the method that was used before. The Levenshtein function is what was used before when you called the track distance function. I just made it explicit so that we could improve on it. It's the last in the list because it's the least effective and most prone to errors. That is the old method.

the old method for doing this didn't cope well with the varied track titles that I found and used personally. Simple methods don't work when the data input isn't simple.

I understand, I'm just trying to get a feel for what examples in the wild would work better with these algorithms. I'll admit the inputs that I have are generally quite simple - either they match on a chapter to chapter basis, or they don't.

Even if the number of tracks do match, that's not actually a guarantee that the actual tracks match. Consider the difference between a book with 20 chapters on audible, and a the actual audiobook which has been split into 20 tracks of the same size. There are 20 tracks in both cases, but using the audible method is objectively wrong and won't match the actual book.

This should already be handled currently. If the number of tracks matches, the previous method wouldn't override the match from Audible and it falls back to the default matching, so you'd see that the matches fail if the lengths are off for example.

This is the Levenshtein function, but it is very bad at doing this. Consider that you don't know which chapters match up, because there might not be any ordering. Any numbers in the title are ignored

What I think is missing here is the old behaviour where if the folder has 2 files while Audible returns 20 chapters, I want to have the ability to completely ignore the contents from Audible, since I know its not split by chapter. It is meant to prevent the poor results from falling back to the default Levenshtein function.

Your concern over the Levenshtein is a little strange to me. This is the method that was used before. The Levenshtein function is what was used before when you called the track distance function.

I didn't realize that, I'll take a look at the Beets source to understand this better.

The tests that I've included are real world examples. I got a bunch of different audiobooks (hundreds) and started importing them. When I ran into issues, I added a test for the condition and worked to make sure that they passed correctly. That's why the tests try the correct ordering, then reversing, then randomisation, to make sure that they come up with the correct answer every time.

This should already be handled currently. If the number of tracks matches, the previous method wouldn't override the match from Audible and it falls back to the default matching, so you'd see that the matches fail if the lengths are off for example.

I don't think it did this? The old method was to match if the number of tracks were the same, regardless of length. That wasn't part of the calculation.

What I think is missing here is the old behaviour where if the folder has 2 files while Audible returns 20 chapters, I want to have the ability to completely ignore the contents from Audible, since I know its not split by chapter. It is meant to prevent the poor results from falling back to the default Levenshtein function.

You can! This would be the natural sort, source numbering, or chapter numbering algorithm. The order in which the algorithms are listed in the configuration is the order in which they're tried. If you have two files that are numbered Part 1 Part 2 then the natsort function will work, as will the 'starting number'. Actually, my code mostly takes only the metadata for the album as a whole i.e. the data taken from Audible is rarely, if ever, the track data, because that's really hard to match. Instead it's all the album level data, like author, ID, narrator, etc.
The levenshtein algorithm is only called, with the default configuration I've provided if the following conditions are met:

All of the chapter titles are very different (have a Levenshtein difference more than 4)
There is no contiguous source matching
There are no common affixes to the titles that, when removed, result in a number e.g. 'Chapter 1', 'Chapter 2', etc

The Levenshtein option, which is basically the track distance, is the last option that is called because it is the most prone to errors. But again, that is the method that the beets library itself uses when you call the track_distance function.
The reason I made it explicit is because, when using the Levenshtein, there are certain replacements that lead to greater errors, particularly numbers. If the Levenshtein function is replacing a 2 with a 4 for example, that's almost certainly a bigger error than a space to a dash or whatever. My idea was to create a custom Levenshtein function that penalises number replacements more, which would make it more accurate imo, but I haven't actually done that yet because it's already a method of last resort.

I do apologise, I'm quite busy in my semester and it's hard finding the spare time to come back to this. I'm trying to knock some things off.
With regards to the source_weight option, which you mentioned earlier, do you know what it's for? Because looking through the code, I get the impression that there's no reason to have this exposed to the user at all, based on how I think you intend for this plugin to be used.
By that, I mean that the option is meant to rank different sources compared to Musicbrainz. Having it be zero means that it is compared equally to Musicbrainz. But the thing is, there will NEVER be an audiobook match from Musicbrainz; for audiobooks, it should always be zero.
If this plugin is used for a separate library (meaning that a beets instance with this plugin will never be used for music), then there's never a reason for this to be anything other than zero. In that case, I think it should be removed from the configuration and we should permanently set it to zero in the code.
Do you have a reason for it to be exposed to the user through the configuration? And do you expect for this to be used in the same library as music?

Np.
Agree that source weight shouldn't be exposed, since the goal is to ignore Musicbrainz-

Great, I removed that from the example config in the README. Do you have any other concerns about the new code?


decide on color-schema

proposal:
orange/reddish = analyze, find issues
yellow = evaluate
blue/green = improve

aim Colours shootout.pdf

Have you checked these colors with someone who suffers on a dyschromatopsia (red-green visual weakness)?
Btw. I like this color schema.

no, didn't... (no expert on these topics around the project).

btw - updated version:

I'm not a expert too.
Maybe it would help to check the color scheme with:
http://www.color-blindness.com/coblis1-color-blindness-simulator/

oops - it does not work well - at least for some of the CB-categories.
I found a color-set which should work:
http://mkweb.bcgsc.ca/colorblind/img/colorblindness.palettes.trivial.pdf
I'll give that one a try

This color-scheme passed the CB-test

The difference between the colors of analyze and improve is not big enough for the Monochromacy.
But the most CB-views are pretty well, I think.
Thanks for supporting this awareness.

Well, thanx for pointing this issue out to me.
In case you have additional ideas for contributions… I’ll most happily make you a committer here :-)
best regards, Gernot

Am 13.05.2017 um 16:57 schrieb barthel<EMAIL_ADDRESS><EMAIL_ADDRESS>The difference between the colors of analyze and improve is not big enough for the Monochromacy.
But the most CB-views are pretty well, I think.
Thanks for supporting this awareness.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub https://github.com/aim42/aim42/issues/211#issuecomment-301253401, or mute the thread https://github.com/notifications/unsubscribe-auth/ABLURlmtp_yciyC9ur6jGFHPjrAgDmHbks5r5cTrgaJpZM4NaA-U.
https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png https://github.com/aim42/aim42 https://github.com/aim42/aim42/issues/211#issuecomment-301253401

I'm currently looking to find a good starting point for contribution. ;-)
My english language skills are far away to write articles in english and I'm not an artist to re-paint drawings or diagrams.

reviews, opinion, proposals…
we’re currently working on „accessibility“ - making the whole stuff easier to understand, hopefully creating simpler access
and better overview.
provide experience reports of all kinds concerning system improvement, modernization, evolution. Horror stories welcome.
ok?

Am 13.05.2017 um 17:11 schrieb barthel<EMAIL_ADDRESS><EMAIL_ADDRESS>I'm currently looking to find a good starting point for contribution. ;-)
My english language skills are far away to write articles in english and I'm not an artist to re-paint drawings or diagrams.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub https://github.com/aim42/aim42/issues/211#issuecomment-301254245, or mute the thread https://github.com/notifications/unsubscribe-auth/ABLURkGB8nZT6uPxT1HwMrDTUzcsrjHVks5r5cgVgaJpZM4NaA-U.
https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png https://github.com/aim42/aim42 https://github.com/aim42/aim42/issues/211#issuecomment-301254245

Conclusion: We'll go for the color-blind-aware scheme here.
It's available online at:
https://coolors.co/d55e00-f0e442-0072b2-009e73-50514f

I absolutely favor considering color-blindness, but does that really exclude bright colors? The above palette looks like a rainy day in March. :-/
If we want to go for new colors, I'd rather have something warm, bright, welcoming. I will ask Mona or Sonja for some advice, if you don't veto.

do we talk about the same colors? "rainy day in March"... sounds devastating to  me...
No, I don't veto - but: reddish and greenish is a must - yellowish and blueish might be replaced by something else.
Originally I had https://coolors.co/f6511d-ffb400-2c9cc0-7fb800-50514f in mind, but that does not work for CB people...

another proposal by a UX guy... wh

I like the colors of "rainy day in march" and does not associating these with a rainy day.
What do you think about a bit 'stronger' colors like:

Maybe a bit brighter?

I asked several of the aim42 committers and some (IT-aware) friends of mine for their opinion on our color proposals...
Most were (intensely) in favor of the schema contributed by Falk (see above).
I decided to take that one for now - as we should concentrate mainly on content...
@barthel: thanx for your contributions!


Invalid integer: quipCount

Error: Invalid integer: quipCount
    at Cu (https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/index.ad30a98e.js:1:24087)
    at ce (https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/index.ad30a98e.js:1:24488)
    at u (https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/index.ad30a98e.js:1:3435)
    at https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/index.ad30a98e.js:36:81758
    at Array.map (<anonymous>)
    at zh (https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/index.ad30a98e.js:36:81739)
    at $7 (https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/index.ad30a98e.js:48:229163)
    at Kl (https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/react-beautiful-dnd.fde4d763.js:19:52884)
    at mf (https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/react-beautiful-dnd.fde4d763.js:23:8723)
    at pf (https://sarlev-sarsen.rooftopdao.io/apps/groups/assets/react-beautiful-dnd.fde4d763.js:23:947)

tried to add a notebook post in a newly created notebook hosted by ~minder-folden. Was able to successfully |hi ~minder-folden. Notebook post save would give a perpetual spinner. shut down, melded, rebooted and then in trying to access the notebook I got this error.

@thelifeandtimes Can you try again? This was fixed in the latest release.

TL;DR: It's working as of two or three days ago (before the big "pals in groups update")
Longer Update: I have been able to make updates to this notebook post as of ~3 days ago. There was some trouble where joining a newly created channel (group host being different from channel host) where I could not see any messages but I could successfully post messages to the chat. Similarly, apparently the notebook post I was trying to put up was actually visible to others (even though I was stuck on the saving spinner). I tried leaving the channel and rejoining with no success; left the group and was reinvited, again with no success, and then re-left the channel and rejoined the channel and that seemed to work it out. Probably can consider this specific issue closed but if it is something you are seeing replicated elsewhere give a shout and I'm happy to further explore with you guys.

I suspect his cache wasn't properly busted for some reason.

I did do hard refreshes, but don't think I rebooted Brave. I also have been using the Groups and Talk PWAs via brave and think there are some odd behaviors that happen between the two as well. I.e. the recent data collection notification read/unread state is stored via cookies which are separate between the originating browser and the PWA, so I experienced it twice: once in the groups PWA, and againafter opening a groups link from the talk PWA which opened in the originating browser.